- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
?
?
EDA设计中时钟的可靠性探讨
?
?
论文导读:在逻辑电路设计中时钟可分为:全局时钟、门控时钟、多级逻辑时钟、行波时钟和多时钟系统。图2是可靠的门控时钟的实例。
关键词:全局时钟,门控时钟,多级逻辑时钟,行波动式时钟
?
无论是在离散逻辑、可编程逻辑,还是用专用集成芯片实现的数字电路设计,可靠的时钟是非常关键的。在逻辑电路设计中时钟可分为:全局时钟、门控时钟、多级逻辑时钟、行波时钟和多时钟系统。其中多时钟系统能够包括四种时钟类型的任意组合。本文就几种常见时钟类型优化设计进行探讨。
1.全局时钟
对于一个设计项目来说,全局时钟(或同步时钟)是最简单和最可预测的时钟。在CPLD/FPGA设计中最佳的时钟方案是:由专用的全局时钟输入引脚驱动的单个主时钟去控制设计项目中的每一个触发器。只要可能就应尽量在设计项目中采用全局时钟。CPLD/FPGA都具有专门的全局时钟引脚,例如EP1C6Q240C8中的28脚就是全局时钟输入端。论文格式。它直接连到器件中的每一个寄存器。这种全局时钟为器件提供延时最短,响应速度最快,且不会出现竞争冒险现象的时钟脉冲。
图1所示出全局时钟的实例。定时波形示出触发器的数据输入D[1..3]应遵守建立时间和保持时间的约束条件。建立和保持时间的数值在CPLD/FPGA数据手册中给出,也可用软件的定时分析器计算出来。
图1全局时钟
2.门控时钟
在实际应用中,整个设计项目都采用外部的全局时钟是较为困难。CPLD/FPGA具有乘积项逻辑阵列时钟,允许任意函数单独的时钟控制各个触发器。然而,当你用阵列时钟时,应仔细地分析时钟函数,以避免毛刺,产生竞争冒险现象。论文格式。
通常用阵列时钟构成门控时钟。门控时钟常常同微处理器接口有关,用地址总线去控制写脉冲。然而,每当用组合函数时钟控制触发器时,通常都存在着门控时钟。如果满足下面的两个条件,门控时钟可以象全局时钟一样可靠地工作:
(1)驱动时钟的逻辑必须只包含一个“与”门或一个“或”门。在某些工作状态下如果采用再附加逻辑电路,会出现竞争冒险产生的毛刺。
(2)逻辑门的一个输入作为实际的时钟,而该逻辑门的所有其它输入必须当成地址或控制线,它们应遵守时钟的约束。
图2是可靠的门控时钟的实例。在图2中,用一个“与”门产生门控时钟,引脚nWR为时钟引脚,引脚ADD[0...3]是地址引脚,两个触发器的数据是信号D[1..n]经随机逻辑产生的。
图2“与”门门控时钟
图2波形图显示出有关的建立时间和保持时间的要求。这个设计项目的地址线必须在时钟保持有效的整个期间内保持稳定。如果地址线在规定的时间内未保持稳定,则在时钟上会出现毛刺,造成触发器发生错误的状态变化。
3.多级逻辑时钟
当产生门控时钟的组合逻辑超过一级(即超过单个的“与”门或“或”门)时,设计项目的可靠性变差。即使样机或仿真结果没有显示出静态险象,但实际上仍然可能存在竞争冒险。通常,所以不应该用多级组合逻辑去控制CPLD/FPGA设计中的触发器。
图3给出一个含有竞争冒险的多级时钟的例子。时钟是由SEL引脚控制的多路选择器输出的。多路选择器的输入是时钟(CLK)和该时钟的2分频(DIV2)。由图3的定时波形图看出,在两个时钟均为逻辑1的情况下,当SEL线的状态改变时,存在静态险象。竞争冒险的程度取决于工作的条件。多级逻辑的竞争冒险是可以去除的。例如,你可以插入“冗余逻辑”到设计项目中。但在CPLD/FPGA编译器在逻辑综合时会去掉这些冗余逻辑,使得验证险象是否真正被去除变得困难了。
图3有静态险象的多级时钟
图4给出图3电路的一种单级时钟的替代方案。图中SEL引脚和DIV2信号用于使能D触发器的使能输入端,而不是用于该触发器的时钟引脚。采用这个电路并不需要附加CPLD/FPGA的逻辑单元,工作却可靠多了。
图4无静态险象的多级时钟
4.行波时钟
一个触发器的输出用作另一个触发器的时钟输入。行波时钟可以象全局时钟一样的可靠工作。然而,行波时钟使得与电路有关的定时计算变得很复杂。行波时钟在行波链上各触发器的时钟之间产生较大的时间偏移,建立时间、保持时间和电路中时钟到输出的延时增加,使系统的实际速度下降。
用计数翻转型触发器构成异步计数器时常采用行波时钟,一个触发器的输出时钟控制下一个触发器的输入,参看图5同步计数器通常是代替异步计数器的更好方案,这是因为两者需要同样多的宏单元而同步计数器有较快的时钟到输出的时间。
图5行波时钟
5.多时钟系统
多时钟系统能够包括四种时钟类型的任意组合。论文格式。图6给出一个多时钟系统的实例。CLK_A用于控制REG_A,CLK_B用于控制REG_B,由于REG_A驱动着进入REG_B的组合逻辑,故CLK_A的上升沿相对于CLK_B的上升沿有建立时间和保持时间的要求。由
文档评论(0)