异步FIFO的设计与实现

上传人:大米 文档编号:508472085 上传时间:2023-07-15 格式:DOC 页数:51 大小:832.50KB
返回 下载 相关 举报
异步FIFO的设计与实现_第1页
第1页 / 共51页
异步FIFO的设计与实现_第2页
第2页 / 共51页
异步FIFO的设计与实现_第3页
第3页 / 共51页
异步FIFO的设计与实现_第4页
第4页 / 共51页
异步FIFO的设计与实现_第5页
第5页 / 共51页
点击查看更多>>
资源描述

《异步FIFO的设计与实现》由会员分享,可在线阅读,更多相关《异步FIFO的设计与实现(51页珍藏版)》请在金锄头文库上搜索。

1、摘要随着数字系统规模的不断增大,单时钟域设计会极大地限制数字系统 性能,现代数字系统为了提升性能,常采用多时钟域的设计。跨时钟域的 信号在传输时会遇到亚稳态现象,如何保持系统稳定地传输数据是多时钟 域系统设计者重点关注的问题,在跨时钟域传递数据的系统中,常采用异 步 FIF0 ( First In First 0ut ,先进先出队列)口来缓冲传输的数据,以克 服亚稳态产生的错误,保证数据的正确传输。常规的异步 FIF0 设计采用 先同步读写指针后比较产生空满标志和用先比较读写指针产生空满标 志,再同步到相应时钟域的方法, 但由于常规异步 FIF0 模块中的 RAM 存 储器读写寻址指针常采用格

2、雷码计数器以与“空满”控制逻辑的存在,工 作频率低,面积大,将使通过这两个模块的信号通路延时对整个模块的工 作频率造成制约。本文提出了一种新型异步 FIF0 的设计方法,该方法省 略“了满”信号产生模块和多余的存储器位深来简化常规的 FIF0 模块, 而只保留“空”信号产生模块,避免使用大量的同步寄存器,减少了面积 空间。FPGA验证的结果表明,改进后的异步FIFO性能有了显著的提高。关键词:现场可编程门阵列 (FPGA ) 亚稳态 空/满标志产 高速 FIF0ABSTRACTWith the increasing of digital system size, a single clock

3、domain design will greatly limit the digital system performance. To enhance the performance of modern digital systems, multiple clock domain design is conventionally adopted. While being transmitted, Cross-clock domain signals will come across the phenomenon of metastability, hence it will be a majo

4、r concern for the multi -clock domain system designers to probe how to maintain the system stability and to have data transmission conducted smoothly. As to the bus system data transmission in the system where the two data interface clocks don t match, one of super and effective solutions is to use

5、asynchronous FIF0 buffer memory. How To solve the key and difficult issue that metastability and how to generate empty and full flag correctly in asynchronous FIF0 design. Traditional FIF0 design often synchronizes write/read address first, then compares them to generate empty/full signals or empty

6、/ full flag first compare the read and write pointer, and then synchronized to the clock domain, This design takes on too much area and can only work at a low frequency , this will allow the signaling pathways of these two modules delay caused by constraints of theoperating frequency of the entire m

7、odule.A new method ofasynchronous FIF0 is proposed to overcomethese problems ,omit the full signal generator module and redundant memory bit depth to simplify the conventional FIF0 module, leaving only the empty signal generation module,avoid the use of a large numberof synchronization registers, re

8、ducing the area of space. FPGA verification results show that the asynchronous FIF0 improved performance has been significantly improved.Keywords: Field Programmable Gate Array (FPGA); Metastable;Mmpty / Full Flag production; High-speed FIF0目录摘 要 IABSTRACT II第一章 绪 论 11.1 研究背景和意义 1.1.2 研究现状 21.3 本文的主

9、要工作 4.1.4 论文结构 5第二章 跨时钟域设计的挑战与实现方法 52.1 跨时钟域设计的挑战 6.2.1.1 亚稳态问题 6.2.1.2 亚稳态产生的原因 8.2.1.3 亚稳态的危害 8.2.2 跨时钟域的实现方法 8.2.2.1 同步器 92.2.2 握手机制 1.4.第三章 开发环境 163.1 硬件平台 1.6.3.2 软件平台 1.6.第四章 异步 FIF0 的设计与实现 184.1 异步 FIF0 1.8.4.1.1 异步 FIF0 工作原理 1.94.1.2 异步 FIF0 设计的难点 2.14.2 常见异步 FIF0 的设计 2.44.2.1 读写地址产生逻辑 2.64.

10、2.2 空/ 满标志的产生与代码的实现 2.84.3.3 改进的异步 FIF0 设计方法分析 3. 34.4 高速异步 FIF0 的设计与实现 3.44.4.1 常见 FIF0 模块分析 3.54.4.2 高速异步 FIF0 设计 3.8第五章结 论 42第六章参考文献 43致 谢 45附 录高速异步FIF0 设计仿真分析 46附 1. 设计工作流程 4.6.附 .1.1设计输入 4.6.附 .1.2设计编译 5.2.附 .1.3设计仿真 5.3.第一章 绪 论1.1 研究背景和意义作为 21 世纪最重要的科学领域之一,超级计算机是体现科技竞争力 和综合国力的重要标志。 各大国均把它作为国家科

11、技创新的重要基础设施, 投入了巨资进行研制和开发。随着科学技术的进步,我国的超级计算机取 得了高速的发展, 2010 年 11 月 14 日,国际 T0P500 组织在网站上公 布了最新全球超级计算机前 500 强排行榜,中国首台千万亿次超级计算机 系统“天河一号”高居榜首。高性能微处理器是超级计算机的核心,高性 能微处理器目前都采用多核的结构,多核处理器是指在一个芯片内集成多 个处理核心而构成的处理器,所谓“核心” ,通常指包含指令部件、算术、 逻辑部件、寄存器堆和一级或者二级缓存的处理单元。现代数字系统的设 计多采用全局异步,局部同步的设计方式,核心部件采用高频设计为了提 升性能,为了尽快

12、地上市常常采用 SoC的设计,集成成熟的IP,在同一 芯片有多个时钟域。在数字系统设计中,数据在不同模块或系统间传输,而现代数字系统 内部采用多时钟域设计,导致数据进行跨时钟域传输。由于各系统数据总 线上的传输速度不同而造成系统接口界面处出现数据输入和输出速度不同, 就会发生数据传输速率不匹配的问题,这会让传输的数据产生错误或者丢 失,降低数据传输的可靠性,同时也会因为对数据的复写、丢弃而降低数 据传输速率,因此需要在各系统接口界面处设计专用的电路来实现数据的 高速高效传输。为了提高电路整体性能,设计者对数据传输率、数据吞吐 量以与系统各部分接口之间不同数据传输速率以与带宽的匹配有越来越高 的

13、要求,所以研究数据如何在异步时钟域稳定和快速地传输,具有非常重 要的现实意义。1.2 研究现状随着数字系统规模的不断扩大,跨时钟域信号的同步器设计以与相应 的验证技术,越来越被关注。目前的 VLSI 设计进入到 SoC 时代,一个 SoC 系统中一般含有多个时钟域,如何在这些不同时钟域之间进行稳定、 可靠地传输成为设计人员所面临的一个挑战性的问题。国内外研究人员提 出了异步握手、异步包装以与异步 FIF0 等多种解决方案。实践证明,采 用异步 FIF0 进行跨时钟域传输是非常有效、可靠的方法,在实际芯片设 计中得到了广泛的应用。Clifford E.Cummings 在文献 1 中提出了一种基

14、于 Gray 码的异步 FIF0 接口技术。同步多个异步输入信号出现亚稳态的概率远远大于同步 一个异步信号的概率,解决这一问题的有效方法是采用格雷码。格雷码是 一种在相邻计数数值之间只有一位发生变化的编码方式,读写指针采用格 雷码的编码方式,就可以尽可能地消除触发器产生亚稳态问题。William J Dally 和 John W Poulton 在文献 2 中提出一个表示关于 任意两次故障出现的间隔时间期望的平均无故障时间MTBF ,一个系统亚稳态的 MTBF 是与系统频率、 器件速度之间的指数函数。 同步器去采样输 入的异步数据,当在第一级的时序器件出现亚稳态的问题时,其输出会出 现一种不稳

15、定的中间值,并且这个时间受多种因素影响。当第二个时序器 件的采样窗口到来的时候,在第二级输入端口上的电平仍然处在可以使第 二级出现亚稳态的电平范围内的概率会变得很小,由计算公式表明,对于 大多数的应用问题,两级锁存器同步失效的概率很小足以消除可能出现的 亚稳态情况。 Vijay A. Nebhrajani 在文献 3 中提出关于异步 FIF0 的五 种结构,分别从单时钟结构,双时钟三种结构和脉冲模式的 FIF0 的结构 进行了阐述。着重介绍了怎样设计异步 FIFO,主要讨论了异步FIF0空满 标志的产生方法。美国研究人员 Tiberiu Chelcea , Steven M. Nowick , Xin Wang , Tapani Ahonen ,Jari Numi 在文献 4,5 中用写 / 读令牌环代替写 / 读指针, 简化了“满” / “空”状态的检测,节省了编码转换逻辑以与同步器的延迟 和面积开销,但是为了防止写 / 读溢出与死锁,又引入了额外的控制逻辑, 并且仍然存在可用空间的浪费。日本研究人员 Jeong-Gun Lee ,Suk-Jin Kim , Kiseon Kim 在文献 6 结合握手协议和行波流水技术实现了一种异 步 FIF0 ,降低了延迟和功耗, 但其纯异步电路实现方式增大了设计的复杂

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 活动策划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号