首页 基于VerilogHDL的异步FIFO设计与实现(可编辑)

基于VerilogHDL的异步FIFO设计与实现(可编辑)

举报
开通vip

基于VerilogHDL的异步FIFO设计与实现(可编辑)基于VerilogHDL的异步FIFO设计与实现(可编辑) 基于VerilogHDL的异步FIFO设计与实现 维普资讯 ////0>. 基于 的异步设计与实现 魏 芳,刘志军,马克杰 山东大学 信息科学与工程学院,山东 济南摘 要:异步是一种不同时钟域之 间传递数据的常用方法。本文提出一种新颖的异步 设计方案。此方案避免了使用大量的同步寄存器,减小了芯片面积并且提高 了工作频率。 综合的 结果表明,用此方法设计的性能有了显著提高。 关键词:多时钟域 亚稳态 异步 在现代 设计中,特别是在模块与外围芯...

基于VerilogHDL的异步FIFO设计与实现(可编辑)
基于VerilogHDL的异步FIFO设计与实现(可编辑) 基于VerilogHDL的异步FIFO设计与实现 维普资讯 ////0>. 基于 的异步设计与实现 魏 芳,刘志军,马克杰 山东大学 信息科学与工程学院,山东 济南摘 要:异步是一种不同时钟域之 间传递数据的常用方法。本文提出一种新颖的异步 设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 。此方案避免了使用大量的同步寄存器,减小了芯片面积并且提高 了工作频率。 综合的 结果 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 明,用此方法设计的性能有了显著提高。 关键词:多时钟域 亚稳态 异步 在现代 设计中,特别是在模块与外围芯片的通 的触发器,最终导致连锁反应,从而使整个系统功能失 信设计中,多时钟域的情况不可避免。当数据从一个时 常。当一个信号跨越 某个时钟域时,对新时钟域的电路 钟域传递到另一个域,并且目标时钟域与源时钟域不相 来说它就是一个异步信号。由于异步信号之间的时序是 关时,这些域中的动作是不相关的,从而消除了同步操 毫无关系的,因此必然存在 /冲突。 作的可能性,并使系统重复地进入亚稳定状态。在有 为了避免亚稳态问题 ,采用如图 所示的双锁存器法 大量的数据需要进行跨时钟域传输且对数据传输速度 , 即在一个信号进入 另一个时钟域前,将该信号用两 要求比较高的场合,异步是一种简单、快捷的解决 个锁存器连续锁存两次, 最后得到的采样结果就可以消 方案。 除亚稳态。 异步? 用一种时钟写入数据,而用另外一种时 钟读出数据。读写指针的变化动作由不同的时钟产生。 因此,对空或满的判断是跨时钟域的。如何根据异 步的指针信号产生正确的空、满标志,是异步设计 成败的关键。本文提出一种新颖的异步 设计方案, 它通过先比较读写地址并结合象限检测法产生异步的 空/满标志,再把异步的空/满标志同步到相应的时钟 域。通过仿真验证,该方法是稳定有效的。 异步信号传输问题的分析 在一个 或 库中,每种触发器都有时序要 求。对于使用上升沿触发的触发器来说,建立时间 是在时钟上升沿到来之前, 触发器数据保持稳定 图 双锁存器解决亚稳态 的最小时间;而保持时间 是在时钟上升沿到 消除亚稳态只是保证了信号电平的稳定,要在不同 来之后,触发器数据还应该保持的最小时间。如图 时钟域中准确传输数据还需要一个接口电路。异步? 就 所示,在时钟上升沿前后的这个窗口内数据应该保持不 是一种不同时钟域之间传递多位数据的常用方法。 变,否则会使触发器工作在一个不确定的状态,即亚稳 异步设计 态。当触发器处于亚稳态,且处于亚稳态的时间超过了 异步是一种先进先出电路,用在需要实时数 一 个时钟周期时,这种不确定的状态将会影响到下一级 据接口的部分,用来存储、缓冲在两个异步时钟之间的 数据传输。主要由双口存储器、读地址产生逻辑、写地址 产生逻辑、空/满标志产生逻辑四部分构成。图 是一种 常用的异步 ? 设计方案,其中,读地址 和空标 志 由读时钟产生,而写地址 和满标 志 由写时钟 产生。把写地址与读地址相互比 堕 厂?一 较以产生空/满标志。由于读写地址的变化由不同的时 图 触发器的建立和保持时间 钟产生,所以对 空或满的判断是跨时钟域 的。如何 《电子技术应用》 年第 期 本刊邮箱:.. 维普资讯 ////. 状态。传统的做法是把读、写地址寄存器扩展一位, 最高位设为状态位,其余低位作为地址位。当读写指 针的地址位和状态位全部吻合时,处于空状态; 当读写指针的地址位相同而状态位相反时,处 于满状态。传统的异步工作频率低、面积大。下 面将介绍一种产生空,满标志的新方法。 通过异步比较读写指针 以及读写指针的最 两位进行判断,产生两个异步的空,满标志信号 . / 送入读写模块进行同步,最后向外部输出两个同 图 异 步 结构框图 步的空,满信号 / 。空,满信号的产生过程:如 避免异步传输带来的亚稳态以及正确地产生空,满标志 图 所示,对于深度是 的异步 ,按照其读指针 是设计异步 的难点。 : 】和写指针 : 】最高两位的不同取值,可把 . 读写地址产生逻辑 地址空间分为四个像限【】。当写指针比读指针落后一个 读写地址线一般有多位 ,如果在不同的时钟域内直 像限时,意味着写指针即将从后面追上读指针,处 接同步二进制码的地址指针,则有可能产生亚稳态。例 于“可能将满”状态,在图 所示的空满信号产生逻辑框 如,读指针从变化到时,所有位都要变化,读指 图中声明一个 信号并把它置为 ;当读写指针 针的每一位在读时钟的作用下,跳变不一致,即产生毛 完全相等并且 为 时,则 处于满状态并且 刺。如果写时钟恰好在读指针的变化时刻采样 ,得到的 把满信号 置为低电平有效 ;当读指针比写指针 采样信号可能是?中的任何一个,从而导致空, 落后一个像限时,意味着读指针即将追上写指针,处 满信号判断错误。由实践可知,同步多个异步输入信号 于“可能将空”状态,或者当写操作复位信号有效时, 出现亚稳态的概率远远大于同步一个异步信号的概率 再进行读操作,则也处于“可能将空”状态,此时把 【 】 。 解决这一问题的有效方法是采用格雷码。格雷码的 信号置为 ;当读写指 针完全相等并且 主要特点是相邻的两个编码之间只有一位变化。图 是 为 时,则处于空状态,空标志信号置为 。 格雷码产生的逻辑框图。在读使能或写使能信号有效、 圆圆 并且空,满标志无效的情况下,读写指针开始累加,进行 读或写操作。二进制 码与格雷码的转换是一个“异 或”运算: 。格雷码 经寄存器 圆圆圈 输出格雷码指针 。这种方法采用了两组寄存器,虽然 面积较大,但是有助于提高系统的工作频率。 . 空/满标志产生逻辑 /// 正确地产生空,满标志是设计任何类型的关键 点。空,满标志产生的原则是:写满而不溢出,能读空而 不多读。传统的异步把读写地址信号同步后再进 行同步比较以产生空满标志,由于读写地址的每一位都 图 指针像限检测 需要两级同步电路,大量使用寄存器必然要占用很大的 读写地址异步相 比较产生低电平有效的空,满标 面积。这种方法不适合设计大容量的。当读、写指 针相等也就是指向同一个内存位置时,可能处于 志,其中异步满信号 要同 步到写时钟域,异 步空信号要同步到读时钟域,以消除亚稳 满或空两种状态,必须区分是处于空状态还是满 态的影响,并向外界输出同步的空,满信号。下面 以满信号为例说明同步信号的产生过程:满 信号 是因为写地址追上了读地址并比读地址 多循环一次所产生,此时不能再向中写入数 据,否则会造成写溢出。由于写地址 的 变化产生 满标志 ,即 的下降沿与 同属于写时钟域。当读地址增加时,表 明已经 从 中读走了一个数据, 由有效的低电平 变为无效的高电平,即 的上升沿与 同属 图 格雷码产生的逻辑框图 于读时钟域。可见, 由高变低与写时钟 欢迎网上投稿. . . . . 《电子技术应用》 年第 期维普资讯 ////.由低变高,此时可以进行安全的读操作。信号的失效与写时钟同步。空信号是在读时钟域 中同步信号得到的。由于同步器使用了两个触发 器,因此空信号 的失效要经过至少两个时钟周期 的延迟。所以,空信号的声明是及时的,而空信号的失效 是保守的。也就是说,虽然 已经非空了,但是空信 号要经过几个周期的延迟才能变为无效。满信号 也有类似的情况。 虽然空,满标志的设置是保守的,但这并不影响 ?功能的正确性,经验证保守的空,满标志能够满足 的设计要求。 图 空满信号产生逻辑框图 仿真验证和综合 根据以上分析,以深度为 、数据宽度为 位的异步 同步,而由低变高则与读时钟 同步。由于满标志 为例,用 编写了各个模块 ,并采用? 只影响的写入,故将其同步到写时钟域。如图公司的仿真工具 进行了仿真验证。设写时钟 所示,采用双锁存器法将 过渡到写时钟域,最后 周期为,读时钟 周期为, 得到的满信号 就属于写时钟域。同理可以得到空 写、读时序仿真结果分别如图 、图 所示。当写满 标志信号。用 代码实现如下: 时,满标志马上由 变 ,禁止写数据并且写地址也 】 & 一 】 【 】; 不再增加,只读不写;当读空时,空标志【【 一 】 & 【 一 】 马上由 变 ,禁止读数据并且读地址也不再增加, 【 ; 只写不读。空,满信号的变化情况满足设计要求。 仿真验证通过后,采用 公司的;工具进行综合。把采用异步比较法设计的与 传 , ; : 统的先将地址信号同步再进行比较设计的相比较, 在中芯国际 . 库上 综合结果如表 所示。可见 、&& ;、&& ; 相对于传统的异步 ,改进后的异步电路速度 快、面积小,从而降低了功耗,提高了系统的稳定性。, ; 为了解决数据在不同时钟域间传递所产生的亚稳 , ,; 态问题,本文讨论了一种新颖的异步设计方案。采 用 以及由顶向下的模块设计方法实现了这,; 种方案。经验证该方案能安全地实现数据跨时钟域的传 , ,; 异步比较法的关键是用异步 比较结果的信号的 下降沿作为最终比较结果的复位信号,而其上升沿 则用传统的双锁存器法进行同步】。最终得到的信号 的上升沿与下降沿都属于同一个时钟域。与传统的 先将地址信号同步再进行同步比较的方法相比.异 步比较法避免了使用大量的同步寄存器,而效率则 更高,实现也更简单。 图 写 时序仿真图 . 保守的空,满标志 设计中空,满标志的设置是保守的,即 空,满标志的置位是立即有效的,而其失效则是在一 段时间之后。例如一旦读指针追上写指针,就会立即 声明一个低电平有效的异步空信号 。此信号会 立即把图 所示的 触发器置位,使触发器输出为 ,即向外部输出同步的空信号 ,并且保证了 一旦为空,读指针就不增加,避 免了的读 图 读 口 时序仿真图 下转第页 溢出。当写地址增加时,表明已经非空,空标志 《电子技术应用》 年第 期 本刊邮箱: ..
本文档为【基于VerilogHDL的异步FIFO设计与实现(可编辑)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_977556
暂无简介~
格式:doc
大小:24KB
软件:Word
页数:0
分类:企业经营
上传时间:2018-10-07
浏览量:9