(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已经空了。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。