论文部分内容阅读
FIFO(First-in First-out)是一种广泛运用于数字系统的存储元件。它能够按顺序存储连续的数据流,并且以同样的顺序输出。输入和输出可以使用不同的速率。因此,它们经常被用在VLSI系统里面,通过平滑数据产生速率的波动来达到传输通道的最大利用效率。作为单独的芯片来说,它在远程通信,图像处理,大容量存储系统,数字信号处理等领域都有广泛的应用。本文首先介绍了FIFO的发展概况和分类,按数据流动方式将异步FIFO划分为了两种基本类型。接着讨论了异步FIFO设计中的值得注意的一些关键问题。然后给出了两种异步FIFO的设计:计数器控制的基于SRAM的异步FIFO设计以及令牌控制的公用数据总线异步FIFO。前者使用全定制设计流程,后者采用半定制设计流程。最后在得到两者的电路图和版图之后,将两款的FIFO的各种参数进行了对比。在对比过程中我们发现,令牌控制的异步FIFO在深度小于192的时候,在延时方面对比基于SRAM的异步FIFO都有一定优势,深度越小优势越明显,当深度大于192的时候,基于SRAM的异步FIFO在延时方面逐渐显露出优势,这时令牌控制的异步FIFO在延时方面增加比较迅速。就功耗来说,深度小于473的时候令牌控制的异步FIFO有一定优势。就面积来说,不管任何深度,全定制的基于SRAM的异步FIFO相对半定制的令牌控制的异步FIFO来说优势较为明显。本文设计的基于SRAM的异步FIFO为实验室科研项目,设计要求深度为4K,存取时间为12ns,峰值功耗1W以内,工作频率为50Mhz。我们采用0.5um CMOS工艺实现,芯片流片成功,测试后得到存取时间为9ns,电路工作可以稳定工作在50Mhz的频率,峰值功率小于800mW,完全满足项目要求。令牌控制的异步FIFO采用0.35um COMS工艺库完成版图设计和仿真,深度为64,通过后仿真的到存取时间为0.94ns(不包含PAD)。