FPGA毛刺的产生及消除.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VerilogHDL语言的FPGA设计 课程作业 学院:电子工程学院 专业班级:集电11级3班 姓名:朱潮勇学号作业题目:FPGA毛刺的产生与消除 完成日期:2013年11月25日 一、设计要求 1 二、规范说明 1 三、顶层设计结构图 1 四、模块详细设计 2 1 功能说明 2 2 端口定义 2 3 设计代码 2 4 激励代码 2 5 仿真结果 3 五、结论和问题: 3 前言:在FPGA的设计中,毛刺现象是长期困扰电子设计工程师的设计问题之一,是影响工程师设计效率和数字系统设计有效性和可靠性的主要因素。由于信号在 FPGA的内部走线和通过逻辑单元时造成的延迟,在多路信号变化的瞬间,组合逻辑的输出常常产生一些小的尖峰,即毛刺信号,这是由FPGA内部结构特性决定的。毛刺现象在FPGA的设计中是不可避免的,有时任何一点毛刺就可以导致系统出错,尤其是对尖峰脉冲或脉冲边沿敏感的电路更是如此。 任何组合电路、反馈电路和计数器都可能是潜在的毛刺信号发生器,但毛刺并不是对所有输入都有危害,如触发器的D输入端,只要毛刺不出现在时钟的上升沿并满足 数据的建立保持时间,就不会对系统造成危害。而当毛刺信号成为系统的启动信号、控制信号、握手信号,触发器的清零信号(CLEAR)、预置信号 (PRESET)、时钟输入信号(CLK)或锁存器的输入信号时就会产生逻辑错误。在实际设计过程中,应尽量避免将带有毛刺的信号直接接入对毛刺敏感的输入端上,对于产生的毛刺,应仔细分析毛刺的来源和性质,针对不同的信号,采取不同的解决方法加以消除。 因此,克服和解决毛刺问题对现代数字系统设计尤为重要。本文从FPGA的原理结构的角度探讨了产生毛刺的原因及产生的条件,在此基础上,总结了多种不同的消除方法,在最后结合具体的应用对解决方案进行深入的分析。 将通过本次实验演示FPGA中出现的典型毛刺现象,并通过一些方法对电路改进从而来消除毛刺现象。本次实验将搭建一个简单的异或门电路。 二、规范说明 本次实验,在quartus2下建立工程,选择的平台是Cyclone? II 系列2C70 型FPGA 芯片, 全称是:EP2C70F896C6。虽然其中的器件布线,器件延迟主要针对这款芯片。但各种FPGA都大同小异,所以本次实验还是具有普遍说明性。 原理图设计 用该原理图实现异或功能 改进后的原理图,在输入端增加D触发器 综合后的RTL布线图 改进前的原理图综合后RTL布线图 改进后的原理图综合后的RTL布线图 仿真结果 改进前原理图时序仿真结果 改进后原理图时序仿真结果 实验分析 通过前面异或门原理图的设计与改进。看到FPGA中确实会出现意想不到的毛刺现象,但毛刺现象并不是都无法避免。 毛刺现象产生的原因:由于信号在 FPGA的内部走线和通过逻辑单元时造成的延迟,在多路信号变化的瞬间,组合逻辑的输出常常产生一些小的尖峰iSW[1]状态变化到输出oLEDG[0]状态发生相应的变化之间有9.44-9.45ns 的延时,而从输入iSW[0]状态变化到输出oLEDG[0]状态发生相应的变化之间约有9.84ns 的延时。 再仔细查看RTL图,就可以轻易看出布线的长短影响了延迟,当然延迟除了布线长短的原因之外,更多的是器件的延迟,由于本次实验的原理图比较简单,看不出,但是事实上,每个不同元器件,有不同的延迟,以及每一路信号元器件的数量不同更是形成了不同的延迟。该延时为FPGA 布线所决定,不同开发板均不同。 结论和问题: 在实验中看到了毛刺现象的出现是由于延迟引起,知道了毛刺产生的条件,就可以通过改变设计,破坏其条件来减少毛刺的发生。下面对各种方法做分别介绍 1利用冗余项法 利用冗余项消除毛刺有2种方法:代数法和卡诺图法,两者都是通过增加冗余项来消除险象,只是前者针对于函数表达式而后者针对于真值表。以卡诺图为例,若两个卡诺圆相切,其对应的电路就可能产生险象。因此,修改卡诺图,在卡诺图的两圆相切处增加一个圆,以增 加多余项来消除逻辑冒险。但该法对于计数器型产生的毛刺是无法消除的。 如图所示逻辑函数 ,在B=C=1时,F= 将产生偏“1”冒险。 增加多余项BC,则当B=C=1 时,F恒为1, 所以消除了冒险。即卡诺图化简时多圈了一个卡诺圈, 如图3.4.5(b) 所示。相切处增加了一个BC圈,消除了相切部分的影响。 2采样法 由于冒险多出现在信号发生电平跳变的时刻,即在输出信号的建立时间内会产生毛刺,而在保持时间内不会出现,因此,在输出信号的保持时间内对其进行采样,就可以消除毛刺信号的影响,常用的采样方法有2种:一种使用一定宽度的高电平脉冲与输出相与,从而避开了毛刺信号,取得输出信号的电平值。这种方法必须保证采样信号在合适的时间产生,并

文档评论(0)

189****6140 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档