Verilog基础知识(亚稳态和跨时钟域的同步电路)

本文详细介绍了Verilog中亚稳态的概念及其在同步电路中的影响,包括触发器出现亚稳态的原因及处理方法。针对跨时钟域的数据传输,文章讲解了两级DFF、FIFO和握手信号等解决方案,并对比了不同情况下的应用。此外,还阐述了电平同步器和边沿检测同步器的工作原理和时序图,以及如何防止和减少亚稳态带来的风险。
摘要由CSDN通过智能技术生成

亚稳态

锁存器出现亚稳态
(1)在其中一个输入端输入的脉冲太短。
(2)两个端口输入同时有效,或两输入有效相差足够短。
(3)在使能输入的边缘处,输入信号不稳定。

触发器出现亚稳态
(1)建立/保持时间内输入信号不稳定。
(2)时钟脉冲太窄。
(3)异步信号对时钟有效沿是随机的,易产生亚稳态。异步信号包括:不被时钟控制的信号;或被不同时钟域的时钟同步的信号。

触发器进入亚稳态的时间可以用参数MTBF(Mean Time Between Failures)来描述,MTBF即触发器采样失败的时间间隔,表示为:

其中fclock表示系统时钟频率,fdata代表异步输入信号的频率,tmet代表不会引起故障的最长亚稳态时间,C1和C2分别为与器件特性相关的常数。如果MTBF很大,就认为这个设计在实际工作中是能够正常运行的,不会因为亚稳态导致整个系统的失效。

亚稳态的处理方法
(1)亚稳态不能避免。
(2)尽可能降低亚稳态的影响。
(3)高速数字电路依赖于同步器产生的从亚稳态事件中恢复的缓冲时间。

常见的同步电路解决方案
(1)两级DFF(传单信号)
(2)FIFO(传有一定位宽的信号bus)
(3)握手信号(对于FIFO的深度要求比较大,需要引入握手信号)

总结一下

1、有关系的时钟之间传单bit数据,理论上只需要源数据保持足够长的时间(clk2的两个周期)即可;
2、无关系的时钟之间传单bit数据,必须要使用同步器;
3、不管有无关系的时钟进行单bit传输,脉冲同步器都可以解决这个问题;
4、多bit传输只能使用握手机制或者异步fifo;
5、低频采高频

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值