跨时钟域电路设计方法

本文详细介绍了数字电路设计中跨时钟域(CDC)处理的重要性和挑战,特别是亚稳态的影响。通过示例阐述了如何使用同步器来降低亚稳态风险,并探讨了单bit信号与多bit信号的CDC方法,包括异步FIFO的应用。此外,还讨论了异步复位的同步化处理技巧。
摘要由CSDN通过智能技术生成

        在数字电路设计过程中 ,难免会遇到某个信号需要跨越不同时钟域的情况。 如果对跨时钟域的信号不做妥善的处理,跨越时钟域后,信号可能发生亚稳态,传播亚稳态,导致电路工作异常。并且,由跨时钟域处理不当引发的问题可能是偶现的,通常很难复现和定位问题。综上,CDC(Clock Domain Crossing,跨时钟域)处理,是数字设计中基本而又重要的一个课题。

亚稳态

        信号输入触发器时,如果在时钟的触发沿(Tsetup+Thold)时间窗口内发现了变化,会导致触发器采集到逻辑0与1之间的中间电平,采集到的值处于不确定状态,触发器的输出也会处于振荡状态,电路无法正常工作,如下图所示。 

图 1 亚稳态电路时序图

2.单bit信号CDC

2.1长信号

        对于图1中的情况,单bit长信号CDC的基本方法是,采用 2 位同步器(俗称打拍),降低亚稳态发生的概率,如果电路时序允许,可以做多位同步器, 通常情况下采用 2 位同步器(保险起见,可多打一拍).图2中,F2的输出B有较大概率发送振荡,经过一个时钟周期后,在下一个时钟的上升沿,F3采集B时,B 仍然振荡的概率已经大为降低,有较大可能性已经处于一个稳定的状态(0或者1)。 如果再多打一拍,则F4采集到F3输出C振荡的概率已经微乎其微了。

图 2 采用2位同步器电路

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值