论文部分内容阅读
FIFO经常应用于从一个时钟域传输数据到另一个异步时钟域。为解决异步FIFO设计过程中空满标志判断难以及FPGA亚稳态的问题,提出一种新颖的设计方案,即利用格雷码计数器(每次时钟到来仅有1位发生改变)表示读/写指针,设计二级同步链为跨越不同时钟域的读/写指针,以提供充足的稳定时间,并通过对比格雷码指针产生空满标志位。该设计采用VHDL语言进行设计,利用ALTERA公司的FPGA得以实现。经验证进一步表明,模块化的设计不仅避免了亚稳态的产生,增大平均无故障工作时间(MBTF),也使工作效率大为提升。