Module ip_async_fifo_g
Overview
Name |
Default value |
Description |
---|---|---|
MEM_WIDTH |
32 |
Data width |
Name |
Direction |
Type |
Description |
---|---|---|---|
pi_reset_wr |
input |
wire logic |
Write synchronous reset |
pi_reset_rd |
input |
wire logic |
Read synchronous reset |
pi_clock_wr |
input |
wire logic |
Write clock |
pi_clock_rd |
input |
wire logic |
Read clock |
pi_enable_wr |
input |
wire logic |
Write enable |
pi_enable_rd |
input |
wire logic |
Read enable |
po_full_wr |
output |
var reg |
FIFO full indication |
po_empty_rd |
output |
var reg |
FIFO empty indication |
po_last_wr |
output |
var reg |
FIFO last location for write (almoast full) |
po_last_rd |
output |
var reg |
FIFO last location for read (almoast empty) |
pi_data_wr |
input |
wire logic[MEM_WIDTH-1:0] |
FIFO data input |
po_data_rd |
output |
wire logic[MEM_WIDTH-1:0] |
FIFO data output |
Instances
- ip_emac_topip_emac_top
- mac_topip_mac_top_g
- mac_rx_topip_mac_rx_top_g
rx_async : ip_async_fifo_g#(.MEM_WIDTH(37))
- mac_tx_topip_mac_tx_top_g
tx_data_async : ip_async_fifo_g#(.MEM_WIDTH(39))
tx_stat_async : ip_async_fifo_g#(.MEM_WIDTH(10))
Submodules
- ip_async_fifo_g#(.MEM_WIDTH(37))
cell_0 : ip_sync_cell
cell_1 : ip_sync_cell
cell_2 : ip_sync_cell
cell_3 : ip_sync_cell
cell_4 : ip_sync_cell
cell_5 : ip_sync_cell
cell_6 : ip_sync_cell
cell_7 : ip_sync_cell
- ip_async_fifo_g#(.MEM_WIDTH(39))
cell_0 : ip_sync_cell
cell_1 : ip_sync_cell
cell_2 : ip_sync_cell
cell_3 : ip_sync_cell
cell_4 : ip_sync_cell
cell_5 : ip_sync_cell
cell_6 : ip_sync_cell
cell_7 : ip_sync_cell
- ip_async_fifo_g#(.MEM_WIDTH(10))
cell_0 : ip_sync_cell
cell_1 : ip_sync_cell
cell_2 : ip_sync_cell
cell_3 : ip_sync_cell
cell_4 : ip_sync_cell
cell_5 : ip_sync_cell
cell_6 : ip_sync_cell
cell_7 : ip_sync_cell
Asynchronous FIFOs are used in designs to safely pass multi-bit data words from one clock domain to another.
Data words are placed into a FIFO buffer memory array by: