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

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

3天内不再提示

CDC单bit脉冲跨时钟域的处理介绍

FPGA自习室 来源:未知 作者:徐起 2021-03-22 09:54 次阅读

单bit 脉冲跨时钟域处理

简要概述:

在上一篇讲了总线全握手跨时钟处理,本文讲述单bit脉冲跨时钟域的处理为下一篇总线单向握手跨时钟域处理做准备。脉冲同步器其实就是带边沿检测的单bit同步器,基本原理就是把脉冲信号进行展宽。

脉冲同步器应用场景:

适用单bit脉冲信号跨时钟域。慢到快,快到慢均可,源脉冲间隔至少要为2个目的时钟周期,否则会被漏采。当然,在慢到快时钟比率大于2倍以上时也是可以实时采样的。

脉冲同步器原理框图:

脉冲同步器跨时钟域原理图如下所示,使用了1个单bit同步器模块,因为脉冲展宽后是电平信号,所以这里采用单bit同步器(寄存器打2拍或者3拍)。这里源脉冲与寄存打拍后的脉冲相或运算得到一定宽度的电平信号,电平宽度可由源时钟和目的时钟比例得到;展宽信号跨时钟域后在目的时钟域下进行边沿检测得到目的脉冲信号。

注意:在设计脉冲同步器电路时有一个易错点,就是少了图中的红色椭圆的D触发器,这会可能导致脉冲同步器同步失败。这是因为脉冲展宽后信号是组合逻辑直接进行了单bit同步器(s2d sync)跨时钟域处理,而组合逻辑输出是有毛刺的,这样单bit同步器可能会采到毛刺导致多采现象。

工具在进行时序分析时,只会分析同步路径,而且完整的时序路径从源D触发器器的CK端到目的D触发器的D端。如果少了中间的D触发器,则会出现3条红色箭头的异步路径(源脉冲寄存器输入),如下图所示。实际加上中间的D触发器只有一条黄色箭头的异步路径才符合预期。

脉冲同步器仿真测试:

场景1:快到慢, 源时钟100Mhz 目的时钟25Mhz,SEL设置为1展宽,RATIO比例设置为4(实际展宽了5倍)。

从上图可以看出,快到慢脉冲同步时,脉冲间隔至少为2个目的时钟,才能被正确采样,否则会被漏采,如图源脉冲的第3个和4个脉冲由于间隔太近被漏采。

场景2:快到慢,源时钟100Mhz 目的时钟12.5Mhz,SEL设置为1展宽,RATIO比例设置为8(实际展宽了9倍)。

从上图可以看出,快到慢脉冲同步时,脉冲间隔至少为2个目的时钟,才能被正确采样,否则会被漏采,如图发现第二个脉冲被漏采样了。细心的朋友可能会发现,最后一个是电平脉冲同步器也是会把它当做一个脉冲输出。

场景3:慢到快,源时钟25Mhz 目的时钟100Mhz,SEL设置为0不需要展宽,

从上图可以看出,慢到快脉冲同步时,该同步器天然也是支持的,只要保证源脉冲能被目的时钟采到即可,可以视为带边沿检测的单bit同步器(寄存器打两拍)。

原文标题:CDC(二) 单bit 脉冲跨时钟域处理

文章出处:【微信公众号:FPGA自习室】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

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

    关注

    20

    文章

    885

    浏览量

    95542
  • 时钟
    +关注

    关注

    10

    文章

    1720

    浏览量

    131365
  • bit
    bit
    +关注

    关注

    0

    文章

    48

    浏览量

    31989

原文标题:CDC(二) 单bit 脉冲跨时钟域处理

文章出处:【微信号:FPGA_Study,微信公众号:FPGA自习室】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一文解析时钟传输

    一、单比特CDC传输1.1 慢到快 快时钟相比慢时钟采样速度更快,也就是说从慢时钟
    的头像 发表于 11-16 11:55 322次阅读
    一文解析<b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b>传输

    CDC318A高性能时钟缓冲器数据表

    电子发烧友网站提供《CDC318A高性能时钟缓冲器数据表.pdf》资料免费下载
    发表于 08-23 11:12 0次下载
    <b class='flag-5'>CDC</b>318A高性能<b class='flag-5'>时钟</b>缓冲器数据表

    CDC2351高性能时钟驱动器电路数据表

    电子发烧友网站提供《CDC2351高性能时钟驱动器电路数据表.pdf》资料免费下载
    发表于 08-23 10:45 0次下载
    <b class='flag-5'>CDC</b>2351高性能<b class='flag-5'>时钟</b>驱动器电路数据表

    CDC2510C锁相环时钟驱动器数据表

    电子发烧友网站提供《CDC2510C锁相环时钟驱动器数据表.pdf》资料免费下载
    发表于 08-23 10:40 0次下载
    <b class='flag-5'>CDC</b>2510C锁相环<b class='flag-5'>时钟</b>驱动器数据表

    CDC341时钟驱动器数据表

    电子发烧友网站提供《CDC341时钟驱动器数据表.pdf》资料免费下载
    发表于 08-22 12:29 0次下载
    <b class='flag-5'>CDC</b>341<b class='flag-5'>时钟</b>驱动器数据表

    具有三态输出的CDC339时钟驱动器数据表

    电子发烧友网站提供《具有三态输出的CDC339时钟驱动器数据表.pdf》资料免费下载
    发表于 08-22 12:28 0次下载
    具有三态输出的<b class='flag-5'>CDC</b>339<b class='flag-5'>时钟</b>驱动器数据表

    CDC2516锁相环路时钟驱动器数据表

    电子发烧友网站提供《CDC2516锁相环路时钟驱动器数据表.pdf》资料免费下载
    发表于 08-22 12:27 0次下载
    <b class='flag-5'>CDC</b>2516锁相环路<b class='flag-5'>时钟</b>驱动器数据表

    CDC2509C时钟驱动器数据表

    电子发烧友网站提供《CDC2509C时钟驱动器数据表.pdf》资料免费下载
    发表于 08-22 12:23 0次下载
    <b class='flag-5'>CDC</b>2509C<b class='flag-5'>时钟</b>驱动器数据表

    介绍一个IC设计错误案例:可读debug寄存器错误时钟

    本文将介绍一个时钟错误的案例如图所示,phy_status作为一个多bit的phy_clk时钟
    的头像 发表于 03-11 15:56 475次阅读
    <b class='flag-5'>介绍</b>一个IC设计错误案例:可读debug寄存器错误<b class='flag-5'>跨</b><b class='flag-5'>时钟</b>

    为什么格雷码可以辅助解决多bit时钟的问题​?求解

    bit通过两级同步打拍可以有效的解决亚稳态问题。
    的头像 发表于 03-08 09:02 1264次阅读
    为什么格雷码可以辅助解决多<b class='flag-5'>bit</b><b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b>的问题​?求解

    时钟脉冲类型和作用介绍

     在数字电路中,时钟脉冲被用作触发器和寄存器的控制信号,用于同步和调度数据的传输和处理。它起到了分时和协调不同部件的作用,确保它们按照特定的时间顺序执行。
    的头像 发表于 01-26 17:27 4778次阅读

    芯片时钟设计案例简析(一)

    最经典的2DFF 1-bit同步器如下,下图结构通常用于bit控制信号的异步处理
    的头像 发表于 01-18 09:24 985次阅读
    芯片<b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b>设计案例简析(一)

    时钟的解决方案

    在很久之前便陆续谈过亚稳态,FIFO,复位的设计。本次亦安做一个简单的总结,从宏观上给大家展示时钟的解决方案。
    的头像 发表于 01-08 09:42 863次阅读
    <b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b>的解决方案

    如何处理时钟这些基础问题

    对于数字设计人员来讲,只要信号从一个时钟跨越到另一个时钟,那么就可能发生亚稳态。我们称为“时钟
    发表于 01-08 09:39 585次阅读
    如何<b class='flag-5'>处理</b><b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b>这些基础问题

    FPGA设计技巧—多时钟和异步信号处理解决方案

    有一个有趣的现象,众多数字设计特别是与FPGA设计相关的教科书都特别强调整个设计最好采用唯一的时钟
    的头像 发表于 12-22 09:04 1443次阅读
    FPGA设计技巧—多<b class='flag-5'>时钟</b><b class='flag-5'>域</b>和异步信号<b class='flag-5'>处理</b>解决方案