0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何处理跨时钟域信号?

8ECz_icstudy 来源:未知 作者:胡薇 2018-09-25 09:39 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

最近是IC相关专业学生找工作的高峰期,大家可以在文章末尾或者知识星球留言讨论笔试或者面试题哦。跨时钟域的处理在面试中常常被问到,今天IC君就来聊一聊这个话题。

1

跨时钟域是如何产生的呢?现在的芯片(比如SOC,片上系统)集成度和复杂度越来越高,通常一颗芯片上会有许多不同的信号工作在不同的时钟频率下。比如SOC芯片中的CPU通常会工作在一个频率上,总线信号(比如DRAM BUS)会工作在另一个时钟频率下,而普通的信号又会工作在另外的时钟频率下。这3个不同时钟频率下工作的信号往往需要相互沟通和传递信号。

不同时钟域下的信号传递就涉及到跨时钟域信号处理,因为相互之间的频率、相位不一样,如果不做处理或者处理不当,如下图所示的时钟域CLK_A的数据信号A可能无法满足时钟域CLK_B的setup/hold时间,可能导致:

1.数据丢失,无法采到预期中的信号;

2.亚稳态的产生。

从而导致某个电路模块或者整颗IC无法工作。

2

那么,常见的跨时钟域信号处理方法都有哪些呢?有如下的三种:

两级DFF同步器

握手协议

异步FIFO

最简单的单比特信号处理通常采用两级DFF串联进行同步,如下图所示:

从时钟域A(CLKA)传过来的信号a_in, 直接用时钟域B CLKB采用很容易产生亚稳态,用两级DFF 敲过后再使用就可以把亚稳态概率降到一个合理的值。

很多人可能会问,为什么是两级DFF呢?一级或者三级DFF行不行呢?这里有一个平均失效间隔时间MTBF(Mean Time Between Failure)的考虑。MTBF时间越长,出现亚稳态的概率就越小,但是也不能完全避免亚稳态。注意采样时钟频率越高,MTBF可能会迅速减小。

有文献给出的数据:对于一个采样频率为200Mhz的系统,如果不做同步MTBF是2.5us,一级DFF同步的MTBF大概是23年,两级DFF同步的大约MTBF大概是640年,MTBF越长出错的概率越小。所以一级看上去不太稳,二级差不多够用了,至于三级可能会影响到系统的性能,而且增加面积,所以看上去没什么必要。

两级DFF同步器听起来够简单的吧?这个方法虽然很简单,但是很多人用起来还是常常会犯错。

3

错误1 :时钟域A的组合逻辑信号直接敲两级DFF同步到时钟域B

如下图(1)所示虽然时钟域A的逻辑信号c0 传输到时钟域B的时候,也用了两级DFF 同步器,但我们知道组合逻辑电路各个输入信号的不一致性以及组合逻辑内部路径的延时时间不一样,运算后的信号存在毛刺如图(2),而我们又无法预先知道CLKB 的上升沿何时会到来,CLKB 采样到的信号就无法预知,这显然不是我们想要的结果。

因此,要想CLKB 能采到稳定的信号,时钟域A的信号必须是经过CLKA 敲过,在一个时钟周期内是稳定的信号,如图(3)所示:

4

错误2 :Clock-gating enable 信号没有经过异步处理

在下图中a_in 信号经过CLKA的DFF敲过,再送到两级DFF 同步器处理,完全没毛病。但是F2的使能信号EN是从时钟域A来的,当EN信号变化的时候,由于时钟域不一样,无法保证使能之后的CLKB信号采样数据时满足setup/hold time 要求,这时F2输出信号也就变得无法预测了。

两级同步器处理单比特信号虽然比较简单,但还是要注意它的使用方法,不要犯上面的错误哦。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • IC
    IC
    +关注

    关注

    36

    文章

    6465

    浏览量

    186296
  • 时钟域
    +关注

    关注

    0

    文章

    53

    浏览量

    10063

原文标题:IC面试中常被问到——跨时钟域信号如何处理?

文章出处:【微信号:icstudy,微信公众号:跟IC君一起学习集成电路】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    英诺达ECDC上线RDC复位检查新功能

    英诺达自主研发的静态验证系列产品EnAltius昂屹CDC(ECDC),近日正式上线了复位(Reset Domain Crossing, RDC)检查新功能,其静态验证EDA工具链得以进一步完善,为芯片设计团队提供更严谨、更高效的RTL签核整体解决方案。
    的头像 发表于 04-21 09:34 50次阅读

    SAF sCheck 关机测试如何处理

    to read from the NvM during the next cycle? 预计如何处理? Br, 哈里什 R
    发表于 04-15 09:31

    为何复位问题是危险的“芯片杀手”

    在追求更高性能、更低功耗的当今芯片设计中,工程师们除了要应对复杂的时钟网络,还面临着一个同样关键却常被忽视的挑战——复位信号的管理,这就是复位(Reset Domain Cross
    的头像 发表于 04-13 15:35 131次阅读
    为何<b class='flag-5'>跨</b>复位<b class='flag-5'>域</b>问题是危险的“芯片杀手”

    请问没有用到的I/0如何处理

    没有用到的I/0如何处理
    发表于 01-12 06:29

    什么是位

    有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。 例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种
    发表于 12-15 08:07

    航盛电子搭载QNX技术的墨子融合平台正式量产

    近日,航盛创新引领行业的单芯片级舱驾融合解决方案--墨子融合平台实现全球量产首发,并将配套国内某头部合资车企。该平台搭载QNX Hypervisor for Safety技术,具备更强的稳定性、灵活性和安全性,实现车规级设计与功能安全、网络信息安全要求,为消费者带来舱
    的头像 发表于 12-04 15:19 601次阅读

    黑芝麻智能武当C1200家族作为计算芯片的核心突破

    本文围绕汽车电子电气架构(EEA)向中央计算演进的技术需求,分析分布式、集中架构的碎片化、间壁垒等痛点,重点阐述武当 C1200 家族作为计算芯片的核心突破:7nm 异构融合架
    的头像 发表于 11-20 16:38 1699次阅读

    Stduio使用wifi模块出错如何处理

    外设为潘多拉IOT开发板,使用Stduio配置了wifi框架,但是代码里在配置wifi模式时,没有找到wlan0这个设备,wifi整个功能也用不了,请问应该如何处理。使用正点原子资料包里的rtthread测试demo,wifi工作正常,wifi模块硬件没有问题。
    发表于 10-10 08:18

    手机板 layout 走线分割问题

    的layout,比如手机、笔记本。信号分割处理已经不在是不能分割了。 在这类产品中成本是很重要的,所以层数都是能少就少。 这种情况下,如何分辨那些
    发表于 09-16 14:56

    阻运放:微弱电流信号的转换

    在光通信领域,常常需要处理微弱的电流信号,而阻运放正是实现电流到电压精准转换的关键电路。它能将 pA 到 mA 级的微弱电流信号线性转换为易于处理
    的头像 发表于 08-20 13:39 959次阅读

    如何在嵌入式RF测试中实施多信号分析

    射频(RF)测试是嵌入式系统开发与验证中的关键环节,尤其是在电信、航空航天、汽车以及物联网等行业。随着嵌入式系统的日益复杂,传统RF测试方法往往难以捕捉多个(时间、频率、数字信号之间的复杂相互作用。多
    的头像 发表于 08-15 16:32 3009次阅读
    如何在嵌入式RF测试中实施多<b class='flag-5'>域</b><b class='flag-5'>信号</b>分析

    静力水准仪在测量过程中遇到误差如何处理?

    静力水准仪在测量过程中遇到误差如何处理?静力水准仪在工程沉降监测中出现数据偏差时,需采取系统性处理措施。根据实际工况,误差主要源于环境干扰、设备状态、安装缺陷及操作不当四类因素,需针对性解决。静力
    的头像 发表于 08-14 13:01 1042次阅读
    静力水准仪在测量过程中遇到误差如<b class='flag-5'>何处理</b>?

    黑芝麻智能时间同步技术:消除多计算单元的时钟信任鸿沟

    上海2025年7月21日 /美通社/ -- 本文围绕时间同步技术展开,作为智能汽车 "感知-决策-执行 -交互" 全链路的时间基准,文章介绍了 PTP、gPTP、CAN 等主流同步技术及特点
    的头像 发表于 07-22 09:17 668次阅读
    黑芝麻智能<b class='flag-5'>跨</b><b class='flag-5'>域</b>时间同步技术:消除多<b class='flag-5'>域</b>计算单元的<b class='flag-5'>时钟</b>信任鸿沟

    高速信号线沟对眼图抖动的影响分析

    今天讲一下高速信号线沟对眼图抖动的影响。Chrent高速信号沟及信号回流的基本概念下图所示为一个信号
    的头像 发表于 06-04 17:32 965次阅读
    高速<b class='flag-5'>信号</b>线<b class='flag-5'>跨</b>沟对眼图抖动的影响分析

    异步时钟处理方法大全

    该方法只用于慢到快时钟的1bit信号传递。在Xilinx器件中,可以使用(* ASYNC_REG = "TRUE" *)标记,将两个寄存器尽量靠近综合,降低 亚稳态因导线延迟太大而传播到第二个寄存器的可能性。
    的头像 发表于 05-14 15:33 1685次阅读
    <b class='flag-5'>跨</b>异步<b class='flag-5'>时钟</b><b class='flag-5'>域</b><b class='flag-5'>处理</b>方法大全