IC学习笔记6——单比特信号的跨时钟域处理方法之“打两拍”

一、打两拍

对于单比特信号的跨时钟域处理问题,通常使用两级的寄存器来同步源寄存器的信号,这样的方法简称打两拍。

1.1 电路波形图

在这里插入图片描述

如上图所示从源寄存器传递过来的信号adata没有满足目的寄存器的建立和保持时间,发生亚稳态,但是绝大多数的时候,第一级寄存器的q会最终稳定下来的,而且在绝大多数时候,可以在一个bclk周期内稳定下来,这样第二级寄存器的d输入就是一个稳定的值,进而第二级寄存器的q是满足clk-to-q,没有亚稳态的产生。
但是也会有一个问题就是第二级寄存器的d输入不是稳定一个值,无法满足第二级寄存器建立时间和保持时间,会导致第二级寄存器产生亚稳态。
所以归根到底打两怕不能完全消除亚稳态,只能使亚稳态产生的概率显著降低。

1.2 打两拍的局限

打两拍并不是适用所有的单比特信号的跨时钟域处理,接下来的一个场景就是不合适使用打两拍处理。
在这里插入图片描述

如上图所示adata的信号在bclk时钟上升沿到来之前又变化了,所以导致目的寄存器更本看不到adata的信号变化。
因此使用“打两拍”来处理单比特信号的跨时钟域处理问题是有限制的,就是源寄存器发过来的信号必须保证稳定不变至少碰见目的域时钟3个连续的沿,这个沿可以是上升沿,也可以是下降沿。持续3个沿之后才能变,否则就有可能在目的时钟域寄存器无法捕捉到这个信号的变化。正是因为这个局限,所以“打两拍”一般适用于单比特信号从慢时钟域传递快时钟域的场景

二、参考文献

你真的懂2-flop synchronizer吗-- CDC的那些事(2)

  • 11
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值