在fifo例化是通常勾选1使用标准的fifo,但是什么时候勾选2呢?
勾选2首字漏出(FWFT)特性提供了在不发出读操作的情况下从FIFO中提前查看下一个可用字的能力。当数据在FIFO中可用时,第一个字通过FIFO并自动出现在输出总线上(dout)。一旦第一个单词出现在dout上,empty被取消断言,表示FIFO中有一个或多个可读单词,VALID被断言,表示dout上存在一个有效单词。
通俗来讲如下图所示代码:
当qsfp_s_axi_tx_tready(如axi总线或aurora接口的ready信号)突然拉低的时候,选用FWFT模式的FIFO,当前数据会保持在发送端口而不被发送出去(此时qsfp_s_axi_tx_tvalid = 0),等qsfp_s_axi_tx_tready信号再次拉高的时候才会将数据送出去,防止丢数。