关于毛刺问题的探讨

本文深入探讨了PLD/FPGA设计中毛刺问题的产生原因,包括建立时间、保持时间、竞争和冒险现象,并提出了处理毛刺的策略,如采用同步电路、采样方法以及对时钟、清除、置位信号的特殊处理,以确保系统的稳定性和可靠性。
摘要由CSDN通过智能技术生成
毛刺问题是我们在PLD/FPGA设计中面临的最重要的挑战,只有深刻理解毛刺问题,才有可能真正掌握PLD/FPGA设计的精髓。

<一>. 和可靠性有关的几个概念

1.建立时间和保持时间
      建立时间(setup time)是指在触发器的时钟信号上升沿到来以前,数据稳定不变的时间,如果建立时间不够,数据将不能在这个时钟上升沿被打入触发器;保持时间(hold time)是指在触发器的时钟信号上升沿到来以后,数据稳定不变的时间, 如果保持时间不够,数据同样不能被打入触发器。  如图1 。 数据稳定传输必须满足建立和保持时间的要求,当然在一些情况下,建立时间和保持时间的值可以为零。

图1

2.竞争和冒险

     几乎所有关于数字电路的教材,都会提到数字电路中的竞争和冒险问题,但是这个问题往往被我们忽略。

3.PLD内部毛刺产生的原因

     我们在使用分立元件设计数字系统时,由于PCB走线时,存在分布电感和电容,所以几纳秒的毛刺将被自然滤除,而在PLD内部决无分布电感和电容,所以在PLD/FPGA设计中,竞争和冒险问题将变的较为突出。

4.FPGA中的冒险现象
     信号在FPGA器件内部通过连线和逻辑单元时,都有一定的延时。延时的大小与连线的长短和逻辑单元的数目有关,同时还受器件的制造工艺、工作电压、温度等条件的影响。信号的高低电平转换也需要一定的过渡时间。由于存在这两方面因素,多路信号的电平值发生变化时,在信号变化的瞬间,组合逻辑的输出有先后顺序,并不是同时变化,往往会出现一些不正确的尖峰信号,这些尖峰信号称为"毛刺"。如果一个组合逻辑电路中有"毛刺"出现,就说明该电路存在"冒险"。(与分立元件不同,由于PLD内部不存在寄生电容电感,这些毛刺将被完整的保留并向下一级传递,因此毛刺现象在PLD、FPGA设计中尤为突出)

    图2给出了一个逻辑冒险的例子,从图3的仿真波形可以看出,"A、B、C、D
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值