所需E币: 3
时间: 2020-1-15 12:12
大小: 34.5KB
在FPGA中基于信元的FIFO设计方法在FPGA中基于信元的FIFO设计方法设计工程师通常在FPGA上实现FIFO(先进先出寄存器)的时候,都会使用由芯片提供商所提供的FIFO。但是,由于其通用性使得其针对性变差,某些情况下会变得不方便或者将增加硬件成本。此时,需要进行自行FIFO设计。本文提供了一种基于信元的FIFO设计方法以供设计者在适当的时候选用。这种方法也适合于不定长包的处理。FIFO在数字通讯芯片领域中有两个主要的作用,缓冲数据和隔离时钟。对于FIFO的设计,最关键的问题是如何实现RAM的读写双方的信息交换。一般情况下,设计者都直接调用厂商为自己的FPGA专门打造的FIFO核。基本单元是FIFO所使用的RAM的一次读写操作的最小单元,如一个字节,一个字或者是一个双字。所谓操作粒度,即FIFO的读写双方的信息交换是基于这些基本单元。ATM应用中的FIFO设计以ATM的设计为例,在ATM的相关设计中,设计者则更多希望一个FIFO对外给出的信息是“现在FIFO中还剩下几个信元”。要实现这一功能通常有两种方法:1.调用厂商提供的以操作粒度为基本单元的通用FIFO,然后在这个FIFO的外面再加上一个“套子”。这个套子里面设计一些计数器,根据计数内容对外提供相应的信息。2.设计操作粒度为信元的定制FIFO。这样对外直接提供设计者最希望得到的信息,即FIFO中还有多少个信元。设定FIFO最多可以存放4个信元。基本单元为字节,因此……