设计工程师通常在FPGA上实现FIFO(先进先出寄存器)的时候,都会使用由芯片提供商所提供的FIFO。但是,由于其通用性使得其针对性变差,某些情况下会变得不方便或者将增加硬件成本。
此时,需要进行自行FIFO设计。本文提供了一种基于信元的FIFO设计方法以供设计者在适当的时候选用。这种方法也适合于不定长包的处理。
FIFO在数字通讯芯片领域中有两个主要的作用,缓冲数据和隔离时钟。对于FIFO的设计,最关键的问题是如何实现RAM的读写双方的信息交换。一般情况下,设计者都直接调用厂商为自己的FPGA专门打造的FIFO核。基本单元是FIFO所使用的RAM的一次读写操作的最小单元,如一个字节,一个字或者是一个双字。所谓操作粒度,即FIFO的读写双方的信息交换是基于这些基本单元。 |