工具
内容摘要:在现代电路设计中,一个系统往往包含了多个时钟,如何在异步时钟间传递数据
成为一个很重要的问题,而使用异步 FIFO 可以有效地解决这个问题。异步 FIFO 是一种在电子系
统中得到广泛应用的器件,文中介绍了一种基于 FPGA 的异步 FIFO 设计方法。使用这种方法可以
设计出高速、高可靠的异步 FIFO。
0 引言
在现场可编程逻辑芯片的设计过程中不同模块之间的数据接口尤其是不同时钟系统的
各个模块之间的数据接口是系统设计的一个关键用异步 FIFO 模块来实现接口,接口双方
都在自己时钟的同步下进行工作它们之间不需要互相握手只需要跟接口 FIFO 模块进行交
互即可即向接口 FIFO 模块中写入数据或从 FIFO 模块中读出数据。用这样一个缓冲 FIFO
模块实现 FPGA 内部不同时钟系统之间的数据接口使设计变得非常简单和容易所用的
FIFO 接口是 XILINX 公司提供的 IP 核。经过充分测试和优化,系统运行稳定占用的 FPGA
内部资源也非常少。
1 FIFO 类型
FIFO 先进先出队列是一种在电子系统得到广泛应用的器件通常用于数据的缓存和用于
容纳异步信号的频率或相位的差异 FIFO 的实现通常是利用双口 RAM 和读写地址产生模块
来实现的图 1 显示出了 FIFO 的内部结构。