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

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

3天内不再提示

总线半握手跨时钟域处理

FPGA自习室 来源:FPGA自习室 作者:FPGA自习室 2021-04-04 12:32 次阅读

总线半握手跨时钟域处理

简要概述:

在上一篇讲了单bit脉冲同步器跨时钟处理,本文讲述控制信号基于脉冲同步机制的总线单向握手跨时钟域处理。由于是单向握手,所以比全握手同步效率高一些。

总线半握手同步器应用场景:

适用有脉冲控制信号的总线跨时钟域处理,不适用电平控制信号。慢到快,快到慢均可,大多数应用于快到慢的场景,尤其是频率比较大时,同步时间不仅要满足单bit脉冲同步器的同步时间,还要保证脉冲同步后采集是更新前总线数据。

总线半握手同步器原理框图:

总线半握手同步器跨时钟域原理图如下所示,内部使用了脉冲同步器跨时钟处理机制来处理总线对应的控制信号。因为总线数据没有参与同步过程,所以需要输入的总线数据在控制信号变化时才更新,其他时间锁存原来的值。这样使得同步后的控制信号信号能采集到对应的总线数据。

ffa2d5bc-8e7c-11eb-8b86-12bb97331649.png

总线半握手总线同步器仿真测试 :

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

005e52f6-8e7d-11eb-8b86-12bb97331649.png

从上图中可以看出,源总线对应的控制信号src_vld_d1间隔是有要求的,同步之后的脉冲src_vld_sync 必须在前后两个脉冲之间,否则会导致前级同步后的脉冲采集到下级锁存的数据,如图红色箭头,本应采集数据是8’h10而实际误采集了8’h1e。

总线半握手与总线全握手对比:

1.效率:全握手不管快到慢还是慢到快其同步时间为6个慢速时钟。

半握手快到慢其同步时间为4个慢速时钟。(100Mhz->25Mhz)

2.接口:全握手没有对应的控制信号,握手信号上电解复位后即可工作起来,

半握手信号有对应有脉冲控制信号,内部通过脉冲同步器握手。

3.应用:全握手适用总线没有对应控制信号的场景,比如一些静态配置信号。

半握手适用总线有对应控制信号的场景,比如慢速的数据流信号。

易错点:把控制信号(脉冲)和总线拼接后,错误使用全握手同步器处理,而没有使用内有脉冲采样机制的半握手同步器处理。

原文标题:CDC(三)总线半握手跨时钟域处理

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

责任编辑:haq

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

    关注

    1

    文章

    78

    浏览量

    14492

原文标题:CDC(三)总线半握手跨时钟域处理

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

收藏 人收藏

    评论

    相关推荐

    时钟源到底有多重要?微控制器中的时钟频率是什么?

    微控制器依赖于其时钟源。处理器、总线和外围设备都使用时钟来同步它们的操作。
    的头像 发表于 04-15 14:17 177次阅读

    说说TCP三次握手的过程?为什么是三次而不是两次、四次?

    说说TCP三次握手的过程?为什么是三次而不是两次、四次? TCP三次握手是建立TCP连接的过程,确保数据的可靠传输。它是由发送端和接收端完成的。本文将详细讲解TCP三次握手的过程,并解释为什么需要
    的头像 发表于 02-04 11:03 228次阅读

    异步电路中的时钟同步处理方法

    异步电路中的时钟同步处理方法  时钟同步在异步电路中是至关重要的,它确保了电路中的各个部件在正确的时间进行操作,从而使系统能够正常工作。在本文中,我将介绍一些常见的时钟同步
    的头像 发表于 01-16 14:42 330次阅读

    【芯片设计】握手协议的介绍与时序说明

    最早接触到握手协议是在校期间学习PCIe的AXI总线时,至今日虽然PCIe的结构已经忘得一干二净,但握手协议经过不断的使用还算掌握的不错。
    的头像 发表于 12-11 14:11 863次阅读
    【芯片设计】<b class='flag-5'>握手</b>协议的介绍与时序说明

    握手型接口的同步FIFO实现

    按照正常的思路,在前文完成前向时序优化和后向时序优化后,后面紧跟的应该是双向时序优化策略了,不过不急,需要先实现一下握手型同步FIFO。
    的头像 发表于 12-04 14:03 300次阅读
    <b class='flag-5'>握手</b>型接口的同步FIFO实现

    Valid-Ready握手协议的介绍与时序说明

    "Valid-Ready" 握手协议是一种常用于数字电路中的接口协议,用于控制数据的传输和处理
    的头像 发表于 12-04 10:37 554次阅读
    Valid-Ready<b class='flag-5'>握手</b>协议的介绍与时序说明

    valid-ready握手协议和enable-xoff协议对比

    这一篇主要对比下valid-ready握手协议和enable-xoff协议,当然这个对比仅限于同时钟域下的信号传输。
    的头像 发表于 12-04 10:32 305次阅读
    valid-ready<b class='flag-5'>握手</b>协议和enable-xoff协议对比

    [ElfBoard] USB接口及握手协议介绍

    USB接口 USB作为目前功能最为强大的接口,除了支持很多外设,如键盘、鼠标等。还可以进行多种总线的转换如USB转网口、USB转CAN等,这篇文章我们就来学习一下USB接口的相关知识。 USB
    发表于 11-22 13:36

    AMBA低功率接口规格参考手册

    Q-Channel是AXI低功耗接口的发展,在大多数情况下都是向后兼容的。了解更多信息 有关信息,请参阅第2-37页的Q信道向后兼容性。 Q通道通过使握手机制独立于设备来简化时钟交叉活动指示。
    发表于 08-02 09:31

    握手协议中的Valid及data打拍技巧

    AXI 协议使用的是valid-ready握手的方式去传输数据。
    发表于 06-27 16:12 856次阅读
    在<b class='flag-5'>握手</b>协议中的Valid及data打拍技巧

    处理单bit跨时钟域信号同步问题来入手

    在数字电路中,跨时钟处理是个很庞大的问题,因此将会作为一个专题来陆续分享。今天先来从处理单bit跨时钟域信号同步问题来入手。
    发表于 06-27 11:25 949次阅读
    从<b class='flag-5'>处理</b>单bit跨<b class='flag-5'>时钟</b>域信号同步问题来入手

    bq25792握手协议

    Android项目,在没开机前,充电,bq25792 走默认的5v1.5A充电。 在开机后,主控通过i2c与bq芯片通信后,有中断触发,status状态改变,但D+/D- 没有产生握手。适配器不充电
    发表于 06-11 16:20

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

    提高设计的组织架构 l处理ASIC验证原型里的门控时钟 n建立一个单时钟模块 n自动门控移除 图2:通过门控时钟创建的时钟
    发表于 06-02 14:26

    FPGA跨时钟处理方法(二)

    上一篇文章已经讲过了单bit跨时钟域的处理方法,这次解说一下多bit的跨时钟域方法。
    的头像 发表于 05-25 15:07 633次阅读
    FPGA跨<b class='flag-5'>时钟</b>域<b class='flag-5'>处理</b>方法(二)

    多位宽数据通过握手方式跨时钟

    对于多位宽数据,我们可以采用握手方式实现跨时钟域操作。该方式可直接使用xpm_cdc_handshake实现,如下图所示。
    的头像 发表于 05-06 09:22 822次阅读
    多位宽数据通过<b class='flag-5'>握手</b>方式跨<b class='flag-5'>时钟</b>域