Altera器件时间匹配问题的解决方案
1 引言
Altera的 MAX+PLUSⅡ可编程逻辑开发软件,提供了一种与工作平台、器件结构无关的设计环境,深受广大电子设计人员的喜爱。但设计人员都会遇到Altera器件设计中的时间匹配问题,本文对这个问题展开了讨论,对电路中短时脉冲波形失真的所谓毛刺现象进行了研究,并提出了解决的办法。
2 消除毛刺
某个事件成功的条件不分先后顺序,只要满足成功的组合需求,此事件就算成功,此种逻辑关系就是组合逻辑。我们在使用Altera器件进行组合逻辑的设计时,常遇到短时脉冲波形失真,即毛刺问题(见图1)。在组合电路中,两输入AND门是最简单的电路,从MAX+PLUSⅡ中的 Timing Analyzer的Delay Matrix 中可得知a=11.1ns,b=8. 1ns。假定AND门内部的延时时间为0.2ns,那么 a的延时+ AND内部的延时(0.2ns)=11.1ns,a的延时为10.9ns; b的延时+AND内部的延时(0.2ns)=8.1ns,b的延时为7.9ns。由于 a和b的延时时间不相等,所以当a从1变为0,同时b从0变为1时,输出结果c产生了毛刺。
本文引用地址:http://www.amcfsurvey.com/article/151258.htm |
Altera器件结构有许多特点,使你在设计时具有较大的灵活性,但是,它可能会引入附加的时间延时。另外,复杂可编程逻辑器件中具有称作逻辑阵列块(LAB)的小型、高性能、灵活阵列模块,还有称作可编程连线阵列(PIA)的专用可编程网络,MAX的结构通过PIA来连接LAB,保证其100%的内部连接布通率。每个LAB中的逻辑扩展项都提供附加的逻辑资源给LAB中的任何一个宏单元。但是,所有来自宏单元和扩展项的信号经过PIA时都必然引入时间延时,从而可能在组合逻辑的输出端产生毛刺。对于怎样消除毛刺,我们作了以下探讨。
2.1 软件修改输入端子的延时时间
一些软件(如Xilinx公司)提供的方法是通过修改输入端子的延时时间,来解决毛刺问题的。如图1中,我们用软件把 b输入端子的延时时间改为10.9ns,这样a与 b的延时时间相等,就消除了输出端c的毛刺。它的优点是能快速解决问题,这是设计中最简单实用的方法。
2.2 修改电路
通过修改定义时钟信号的复杂逻辑,将其转换成同步时钟方式就可以避免毛刺出现。同步时钟是采用单一的引脚驱动的系统时钟,而不是异步的(逻辑驱动的)时钟,见图2。只要可能就应尽量采用同步设计,可以避免定时关系发生问题。另外,同步设计也可以改善电路的在线性能,减少调试时间和提高电路的可靠性。在同步时钟方式中 c信号是D触发器输入的一部分,而且时钟是由引脚驱动。这个电路称作寄存器使能电路, MAX+PLUSⅡTTL宏功能库中提供了一种可以实现这种类型电路的D触发器DFFE(见图2)。
评论