
ProASIC3E Flash Family FPGAs
2- 26
Advanced v0.5
Signal Descriptions for FIFO4K18
The following signals are used to configure the FIFO4K18
memory element:
WW and RW
These signals enable the FIFO to be configured in one of
WBLK and RBLK
These signals are active low and will enable the
respective ports when low. When the RBLK signal is high,
that port’s outputs hold the previous value.
WEN and REN
Read and write enables. WEN is active low and REN is
active high by default. These signals can be configured as
active high or low.
WCLK and RCLK
These are the clock signals for the synchronous read and
write operations. These can be driven independently or
with the same driver.
RPIPE
This signal is used to specify pipelined read on the
output. A low on RPIPE indicates a nonpipelined read,
and the data appears on the output in the same clock
cycle. A high indicates a pipelined read, and data
appears on the output in the next clock cycle.
RESET
This active low signal resets the control logic and forces
the output hold state registers to zero when asserted. It
does not reset the contents of the memory array
While the RESET signal is active, read and write
operations are disabled. As with any asynchronous RESET
signal, care must be taken not to assert it too close to the
edges of active read and write clocks. Refer to the tables
beginning
with
for
the
specifications.
WD
This is the input data bus and is 18 bits wide. Not all 18
bits are valid in all configurations. When a data width
less than 18 is specified, unused higher-order signals
RD
This is the output data bus and is 18 bits wide. Not all 18
bits are valid in all configurations. Like the WD bus, high-
order bits become unusable if the data width is less than
18. The output data on unused pins is undefined
ESTOP, FSTOP
ESTOP is used to stop the FIFO read counter from further
counting once the FIFO is empty (i.e., the Empty flag
goes high). A high on this signal inhibits the counting.
FSTOP is used to stop the FIFO write counter from further
counting once the FIFO is full (i.e., the Full flag goes
high). A high on this signal inhibits the counting.
For more information on these signals, refer to the
FULL, EMPTY
When the FIFO is full and no more data can be written,
the Full flag asserts high. The Full flag is synchronous to
WCLK to inhibit writing immediately upon detection of a
full condition and to prevent overflows. Since the write
address is compared to a resynchronized (and thus time-
delayed) version of the read address, the Full flag will
remain asserted until two WCLK active edges after a read
operation eliminates the full condition.
When the FIFO is empty and no more data can be read,
the Empty flag asserts high. The Empty flag is
synchronous to RCLK to inhibit reading immediately
upon detection of an empty condition and to prevent
underflows. Since the read address is compared to a
resynchronized (and thus time-delayed) version of the
write address, the Empty flag will remain asserted until
two RCLK active edges, after a write operation removes
the empty condition.
For more information on these signals, refer to the
"FIFOAFULL, AEMPTY
These are programmable flags and will be asserted on
the
threshold
specified
by
AFVAL
and
AEVAL,
respectively.
When the number of words stored in the FIFO reaches
the amount specified by AEVAL while reading, the
Table 2-9 Aspect Ratio Settings for WW[2:0]
WW[2:0]
RW[2:0]
DxW
000
4kx1
001
2kx2
010
1kx4
011
512x9
100
256x18
101, 110, 111
Reserved
Table 2-10 Input Data Signal Usage for Different Aspect
Ratios
DxW
WD/RD Unused
4kx1
WD[17:1], RD[17:1]
2kx2
WD[17:2], RD[17:2]
1kx4
WD[17:4], RD[17:4]
512x9
WD[17:9], RD[17:9]
256x18
–