story · 1 天前

为什么使用双触发器同步器可以防止亚稳态传播

跨时钟域(CDC)的主要问题是,当目标时钟域采样时,跨时钟域信号可能出现的 setup 和 hold violation 然后出现亚稳态,其中亚稳态可以在整个设计中传播,导致数据丢失,甚至芯片故障。

亚稳态是无法预防的,但可以使用同步器来避免亚稳态的传播;因此,防止系统故障。

image.png

双触发器同步器如何防止亚稳态传播?

Image

如上图所示,当第一个触发器(FF)数据输入违反 setup 或 hold 时间要求时,输出 A/B 将变为亚稳态。然而,在不可预测的延迟(Tco)后,FF 输出将稳定在某个逻辑 0/1。

然后这个输出进入第二个 FF,防止亚稳态在整个设计中传播。由于亚稳态将在 Tco 后稳定到稳定状态,当在时钟的下一个上升沿被第二个触发器采样时,Q1 输出可能已经稳定,也就是第二个触发器没有 setup 或 hold violation。因此,FF2 可以成功存储 Q1/D1 的稳定数据,没有亚稳态。换句话说,FF2 的输出可以由下一个逻辑块安全使用,而不会传播亚稳态。

Image

目标时钟的时钟周期越高,亚稳态传播到下一个逻辑块的概率就越小,因为这为亚稳态在被第二个 FF 采样之前稳定下来提供了更多时间。

双触发器同步器是 CDC 设计中最常用的同步器。尽管如此,如下图所示,在同步链中添加额外的 FF 将进一步提高防止亚稳定性传播的概率。

Image

三触发器同步器

由平均故障间隔时间(MTBF)参数对亚稳态导致的设计失败概率进行建模。

END

作者:learn vlsi
来源:数字芯片实验室

推荐阅读

更多数字 IC 设计技术干货等请关注数字芯片实验室专栏。添加极术小姐姐(微信:aijishu20)微信可申请加入IC设计交流群。
推荐阅读
关注数
12320
内容数
222
前瞻性的眼光,和持之以恒的学习~
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息