Programmable Full and Empty Signals
The FIFO core supports user-defined full and empty signals with customized depths
(prog_full_o and prog_empty_o). To enable these
signals, set the PROGRAMMABLE_FULL or
PROGRAMMABLE_EMPTY parameters as STATIC_SINGLE or
STATIC_DUAL. Refer to Customizing the FIFO for more info on the available values.
Important: For the asynchronous FIFO, these signals are synchronized to their
respective clock domain’s available words.
| Value | Type | Condition |
|---|---|---|
| STATIC_SINGLE | Assert | number of words in FIFO ≥ PROG_FULL_ASSERT |
| Deassert | number of words in FIFO < PROG_FULL_ASSERT | |
| STATIC_DUAL | Assert | number of words in FIFO ≥ PROG_FULL_ASSERT |
| Deassert | number of words in FIFO < PROG_FULL_NEGATE |
| Value | Type | Condition |
|---|---|---|
| STATIC_SINGLE | Assert | number of words in FIFO ≤ PROG_EMPTY_ASSERT |
| Deassert | number of words in FIFO > PROG_EMPTY_ASSERT | |
| STATIC_DUAL | Assert | number of words in FIFO ≤ PROG_EMPTY_ASSERT |
| Deassert | number of words in FIFO > PROG_EMPTY_NEGATE |
To avoid erratic behavior, follow these rules for
STATIC_DUAL modes:PROG_FULL_ASSERT≥PROG_FULL_NEGATEPROG_EMPTY_ASSERT≤PROG_EMPTY_NEGATE