<b>更多内容,详见:</b><br /><b>《培训系列“丛书”》</b><br /><b>www.armecos.com</b><br />-----------------------------------<br /><b>More details, see:</b><br /><b>《"Series Books" of Training》</b><br /><b>www.armecos.com</b><br /><br /> ----------<br /> 毛刺和时钟<br /> ----------<br /> 这是最最重要的内容!!!<br /> <br /> 毛刺在PCB设计中不是很突出的问题,因为PCB存在分布电容和电感,所以几纳秒的毛刺将被自然滤除,而在PLD内部绝无分布电感和电容,所以在PLD/FPGA设计中,竞争和冒险问题将变得较为突出。<br /> <br /> 毛刺的成因是什么呢?<br /> 简单说是因为信号不是理想的,信号走线存在延时(延时的大小与连线的长短和逻辑单元的数目有关,同时还受器件的制造工艺、工作电压、温度等条件的影响。),信号的高低电平转换也需要一定的过渡时间。多路信号的电平值发生变化时,在信号变化的瞬间,组合逻辑的输出有先后顺序,并不是同时变化,往往会出现一些不正确的尖峰信号,这些尖峰信号就是“毛刺”。<br /> 感兴趣的人可以查阅大学教材,了解数字电路中的竞争和冒险、卡诺图或逻辑函数表达式等问题。课上我们将画图分析。<br /> <br /> 毛刺的危害<br /> 毛刺影响数字电路稳定性,触发器的时钟端、清零端和置位端对毛刺信号十分敏感,同时前级的毛刺影响会扩散到后面的逻辑电路上去,危害极大。<br /> 图示讲解毛刺危害<br /> <br /> 毛刺的处理<br /> 略。主要讲述减少毛刺的几种方法。<br /> <br /> 建立/保持时间<br /> 建立时间(setup time)是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器;保持时间(hold time)是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间, 如果保持时间不够,数据同样不能被打入触发器。<br /> 图<br /><br /> 关于时钟的知识点罗列:<br /> <br /> 全局时钟 <br /> 门控时钟 <br /> 多级逻辑时钟 <br /> 行波时钟 <br /> 多时钟系统 <br /><br /> 这里详细讲述很多重要的知识点和注意事项。时钟同步设计是FPGA设计里的关键内容。<br /> <br /> 思考题:一个为3MHz,一个为5MHz,不同的触发器使用不同的时钟。为了系统稳定,假设我们引入一个20MHz时钟,那么这个20MHz的时钟怎么才能将3M和5M时钟同步化呢?<br /> <br /> 亚稳态及其应对措施<br /> 如果输入信号在setup-hold时间内发生了变化,输出结果将是不可知的,即亚稳态 (Metastability)。<br /> 亚稳态应对措施:<br /> 1、双锁存器法 不能完全避免亚稳态,不过还算有效。信号从快时钟域向慢时钟域过渡的时候,此法需要原始信号保持足够长的时间,以便另一个时钟域的锁存器可以正确地对其进行采样。<br /> 2、结绳法 一种安全的跨时钟域的方法。<br /> <br /> FPGA和PCB时钟联合设计,时钟系分析。
|