首页 理论教育 VIVADO环境下FIFOIP核应用研究小结

VIVADO环境下FIFOIP核应用研究小结

时间:2023-10-26 理论教育 版权反馈
【摘要】:对于V5的block RAM和built-in FIFO可以使用内嵌的寄存器。使用这个寄存器可以提高FIFO的性能,但是会增加延迟。FIFO常用于跨时钟域操作和数据位宽转换。例如,两个独立的时钟域与独立的数据位宽,可以利用一个FIFO进行连接,FIFO可以自动完成数据位宽的转换。当需要用到大块的FIFO时,可以使用V5 built-in FIFO。③ FROG_FULL:当FIFO的数据大于或者等于设定的门限时,该信号有效;当FIFO的数据小于这个设定的门限时,该信号无效。

VIVADO环境下FIFOIP核应用研究小结

(1)almost full 和 almost empty flags用来指示只剩一个字了。

(2)Programmable full and empty status flags可以由用户自定义内容设定,或者用专用的输入口进行设定。

(3)对于V5的block RAM和built-in FIFO可以使用内嵌的寄存器。使用这个寄存器可以提高FIFO的性能,但是会增加延迟。

(4)FIFO常用于跨时钟域操作和数据位宽转换。例如,两个独立的时钟域与独立的数据位宽,可以利用一个FIFO进行连接,FIFO可以自动完成数据位宽的转换。

(5)当需要用到大块的FIFO时,可以使用V5 built-in FIFO。

(6)First-Word Fall-Through(FWFT)特性是指,在没有进行读操作的时候,就可以提前知道下一个数据是什么,并且自动将这个数据放到输出数据线(DOUT)上。FWFT在要求低访问延迟时很有作用。

(7)写操作时,注意以下几个信号

① FULL:当FULL有效时,所有的写操作都将被忽略,并且这时对FIFO的写操作不会对FIFO造成损坏。

② ALMOST_FULL:当这个信号有效时,说明还可以再进行一次写操作。(www.xing528.com)

③ FROG_FULL:当FIFO的数据大于或者等于设定的门限时,该信号有效;当FIFO的数据小于这个设定的门限时,该信号无效。

④ OVERFLOW:该信号用来指示前一个时钟周期的写请求(WR_EN)被拒绝,因为FIFO已经满了。

⑤ PROG_FULL_THRESH:用来设定PROG_FULL有效时和无效时的数据数目。

(8)读操作时,注意以下几个信号:

① FROG_EMPTY:当FIFO的数据量小于等于设定的门限时,该信号有效。

② RD_DATA_COUNT[C:0]:该值表明FIFO中可以读取的数据的数目。在读操作的时候,通过对这个数据进行判断,可以保证当FIFO中没有数据的时候,停止读操作。当发生一次读操作时,会在下一个时钟的上升沿对RD_DATA_COUNT进行改变。即写入一个数据的时候RD_DATA_COUNT+1,当读出一个数据的时候,RD_DATA_COUNT-1。

③ UNDERFLOW:表明前一次读操作被拒绝了,因为FIFO已经空了。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈