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

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

3天内不再提示

关于跨时钟域信号的处理方法

FPGA通信小白成长之路 来源:FPGA通信小白成长之路 作者:FPGA通信小白成长之 2022-10-09 10:44 次阅读

某年某月某日

我在知乎看到了多bit信号时钟的问题,于是整理了一下自己对于跨时钟域信号的处理方法。

1,fifo

数据的话,直接用fifo

2,使用赛灵思原语XPM(Xilinx Parameterized Macros


打开vivado -- tools -- language_templates,里面直接搜索XPM,相关的原语里会注释相应的用法和参数配置,对于不同场景的跨时钟,有不同的原语。


同步复位,XPM_CDC_SYNC_RESET


异步复位,XPM_CDC_ASYNC_RESET


脉冲信号,XPM_CDC_PULSE


单bit信号(电平信号),XPM_CDC_SINGLE


单bit信号数组,xpm_cdc_array_single

(这个用得较多,官方说数组的每1bit需不相关,即可以把多个不相关的单bit信号拼起来,用一个原语,甚至可以是上百bit位宽。

除了不相关的单bit信号,同一个多bit信号我也经常使用此原语,这种信号一般是跨时钟域的参数,在下发后保持不变,这样有助于时序收敛。)

格雷码同步器,利用了格雷码单次只能跳变1位的特性,要求输入的数据是累加1或者累减1的数据,本质上是单比特跨时钟域处理,xpm_cdc_gray

手机制的跨时钟域总线数据同步,XPM_CDC_HANDSHAKE

3,只要是正确处理了跨时钟域的问题,也可以不用xpm,直接使用set_false,但xpm是赛灵思官方认可的跨时钟处理,处理后不会有时序问题出现在时序报告中。

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

    关注

    8

    文章

    6867

    浏览量

    88800
  • 时钟
    +关注

    关注

    10

    文章

    1720

    浏览量

    131339
  • XPM
    XPM
    +关注

    关注

    0

    文章

    12

    浏览量

    8664
  • 时钟域
    +关注

    关注

    0

    文章

    52

    浏览量

    9528

原文标题:vivado时序-多bit信号跨时钟域

文章出处:【微信号:FPGA通信小白成长之路,微信公众号:FPGA通信小白成长之路】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    三种时钟处理方法

    ,所以意义是不大的。  方法二:异步双口RAM  处理多bit数据的时钟,一般采用异步双口RAM。假设我们现在有一个
    发表于 01-08 16:55

    如何处理好FPGA设计中时钟间的数据

    介绍3种时钟处理方法,这3种方法可以说是FPGA界最常用也最实用的
    发表于 07-29 06:19

    如何处理时钟间的数据呢

    时钟处理是什么意思?如何处理时钟
    发表于 11-01 07:44

    看看Stream信号里是如何做时钟握手的

    一些,适用于追求高吞吐的场景。写在最后逻辑处理里很多总线都是基于Stream这种信号来实现的(如AXI4家族),通过上面的方法,可以很容易根据应用需求,做
    发表于 07-07 17:25

    时钟信号的几种同步方法研究

    时钟信号的同步方法应根据源时钟与目标时钟的相位关
    发表于 05-09 15:21 63次下载
    <b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b><b class='flag-5'>信号</b>的几种同步<b class='flag-5'>方法</b>研究

    FPGA界最常用也最实用的3种时钟处理方法

    介绍3种时钟处理方法,这3种方法可以说是FPGA界最常用也最实用的
    发表于 11-15 20:08 1.4w次阅读

    揭秘FPGA时钟处理的三大方法

    时钟处理方法,这三种方法可以说是 FPGA 界最常用也最实用的
    的头像 发表于 12-05 16:41 1610次阅读

    关于时钟的详细解答

    每一个做数字逻辑的都绕不开时钟处理,谈一谈SpinalHDL里用于时钟
    的头像 发表于 04-27 10:52 4226次阅读
    <b class='flag-5'>关于</b><b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b>的详细解答

    介绍3种方法时钟处理方法

    介绍3种时钟处理方法,这3种方法可以说是FPGA界最常用也最实用的
    的头像 发表于 09-18 11:33 2.2w次阅读
    介绍3种<b class='flag-5'>方法</b><b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b><b class='flag-5'>处理</b><b class='flag-5'>方法</b>

    基于FPGA的时钟信号处理——MCU

    问题,不过请注意,今后的这些关于异步信号处理的文 章里将会重点从工程实践的角度出发,以一些特权同学遇到过的典型案例的设计为依托,从代码的角度来剖析一些特权同学认为经典的
    发表于 11-01 16:24 11次下载
    基于FPGA的<b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b><b class='flag-5'>信号</b><b class='flag-5'>处理</b>——MCU

    SpinalHDL里用于时钟处理的一些手段方法

    每一个做数字逻辑的都绕不开时钟处理,谈一谈SpinalHDL里用于时钟
    的头像 发表于 07-11 10:51 1801次阅读

    三种时钟处理方法

    时钟处理是FPGA设计中经常遇到的问题,而如何处理
    的头像 发表于 10-18 09:12 7540次阅读

    时钟处理方法(二)

    时钟采集从快时钟传输来的信号时,需要根据信号的特点来进行同步
    的头像 发表于 03-28 13:52 857次阅读
    <b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b><b class='flag-5'>处理</b><b class='flag-5'>方法</b>(二)

    FPGA时钟处理方法(一)

    时钟是FPGA设计中最容易出错的设计模块,而且一旦时钟出现问题,定位排查会非常困难,因为
    的头像 发表于 05-25 15:06 1922次阅读
    FPGA<b class='flag-5'>跨</b><b class='flag-5'>时钟</b><b class='flag-5'>域</b><b class='flag-5'>处理</b><b class='flag-5'>方法</b>(一)

    FPGA时钟处理方法(二)

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