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

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

3天内不再提示

同步和异步时钟之间是如何联系_如何正确的约束时钟

电子工程师 作者:工程师a 2018-05-12 10:15 次阅读

现在的硬件设计中,大量的时钟之间彼此相互连接是很典型的现象。为了保证Vivado优化到关键路径,我们必须要理解时钟之间是如何相互作用,也就是同步和异步时钟之间是如何联系。

同步时钟是彼此联系的时钟。例如,由MMCM或PLL生成的两个相同周期的时钟是典型的同步时钟。如果MMCM或PLL生成了不同周期的时钟,那么我们最好把他们当作异步时钟处理,需要用到相应的同步技术。你可以通过运行report_clock_interaction生成报告,然后看报告中的“Path Req (WNS)”列、“Clock Pair Classification”列和 “Clock Pair Classification”列可以容易的辨别出同步时钟。下面是3个场景,你需要使用合适的时钟约束处理异步时钟之间的关系。

1. 如果时钟互联报告有很多(或者一个)红色的"Timed (unsafe)" 或者还有桔色的"Partial False Path (unsafe)"方框,那你应该是没有正确地对异步时钟约束。如果你的设计中有大量的跨时钟域的异步时钟,那么你需要对那些时钟互联约束。

2. 在时钟互联报告中看"Clock Pair Classification" 和 "Inter-Clock Constraints"这两列。如果时钟对类型是"No Common Clock" 或者 "No Common Period"或者Inter-clock约束显示"Timed (unsafe)",就要把这种互联当作异步时钟。

3. 如果“Path Requirement (WNS)”列显示时序非常紧,典型的是小于1ns,或者“Inter-Clock Constraints”列标记为时序“Unsafe”,或者“Partial False Path (unsafe)”,那么你需要把这种时钟互联看作异步时钟。

如果“WNS Path Requirement (ns)”这一列的值是合理的(>1 ns), 并且"Inter-Clock Constraints”是满足的,同时,“Clock Pair Classification”是“干净”的,那么这样的时钟互联可以被看作是同步的,你不需要添加任何时序约束。时序工具会自动的把那些路径当作同步路径处理。

同步和异步时钟之间是如何联系_如何正确的约束时钟

为了正确约束跨时钟域的路径,需要考虑以下4个方面:

1. 如果两个时钟之间没有路径,在两个时钟之间可以简单的使用set_clock_groups 或者set_false_path约束

2. 如果跨时钟域路径都是一位的,那么你可以在两个时钟之间使用set_clock_groups 或者 set_false_path。

3. 如果路径都是多位的路径,你需要考虑延迟和数据位的偏移,然后使用set_max_delay –datapath_only 和set_bus_skew约束。

4. 如果在两个时钟域之间存在单位和多位混合的跨时钟域路径,那么对于单位的跨时钟域路径要明确的对每一条路径设置伪路径来约束,对于多位的跨时钟域路径,使用set_max_delay –datapath_only 和 set_bus_skew约束。

如果时钟是同步的,不需要任何约束。vivado的静态时钟分析工具会自动的设定路径的时序。

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

    关注

    0

    文章

    17

    浏览量

    9399
收藏 人收藏

    评论

    相关推荐

    RobustRIO-E模块 时钟同步&分发,实现声音与振动板卡间及跨机箱时钟同步

    同步时钟发生器 + 同步时钟分发器
    的头像 发表于 09-14 15:00 222次阅读
    RobustRIO-E模块 <b class='flag-5'>时钟</b><b class='flag-5'>同步</b>&分发,实现声音与振动板卡间及跨机箱<b class='flag-5'>时钟</b><b class='flag-5'>同步</b>

    Xilinx FPGA编程技巧之常用时序约束详解

    Register-to-Register Constraint 寄存器到寄存器约束往往指的是周期约束,周期约束的覆盖范围包括: 覆盖了时钟域的时序要求 覆盖了
    发表于 05-06 15:51

    Xilinx FPGA编程技巧之常用时序约束详解

    寄存器到寄存器约束往往指的是周期约束,周期约束的覆盖范围包括: 覆盖了时钟域的时序要求 覆盖了同步数据在内部寄存器
    发表于 04-12 17:39

    请问下位机与上位机如何保持时钟同步呢?

    请问下位机与上位机如何保持时钟同步呢? 下位机与上位机之间时钟同步是确保两者能够按照相同的时间基准进行操作的关键。在许多实时控制和嵌入式系
    的头像 发表于 01-16 17:11 1343次阅读

    网络时钟同步有哪些要求?如何在5G网络中测试时间与时钟同步

    网络时钟同步有哪些要求?要注意哪些问题?如何在5G网络中测试时间与时钟同步? 网络时钟同步是指在
    的头像 发表于 01-16 16:03 1194次阅读

    时钟同步怎样组网?

    时钟同步怎样组网? 时钟同步是计算机网络中的重要问题,主要用于确保在多个节点之间保持时间的一致性。时钟
    的头像 发表于 01-16 15:10 539次阅读

    如何生成关于时钟同步功能的DTC?

    出现问题,可能导致设备之间的通信不准确,任务执行时序不一致,从而影响系统的性能和稳定性。 为了解决时钟同步的问题,诊断故障码(DTC)被设计出来,用来指示系统中存在的问题。生成关于时钟
    的头像 发表于 01-16 15:10 549次阅读

    如何选择GPS时钟同步装置?

    如何选择GPS时钟同步装置? 选择GPS时钟同步装置可能是一个相对复杂的过程,因为这需要考虑到多种因素,包括需求、性能、可靠性和成本。 第一步是确定需要
    的头像 发表于 01-16 14:42 549次阅读

    USB设备之间是怎么同步时钟的?所有USB设备的时钟频率都是一致的吗?

    同步机制来保证设备之间的数据传输能够正确进行。 USB设备的时钟同步主要涉及到两个方面,即主机和设备之间
    的头像 发表于 01-16 14:42 2059次阅读

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

    异步电路中的时钟同步处理方法  时钟同步异步电路中是至关重要的,它确保了电路中的各个部件在
    的头像 发表于 01-16 14:42 1040次阅读

    控制系统之间如何实现时钟同步

    控制系统之间如何实现时钟同步? 控制系统之间时钟同步是确保不同系统
    的头像 发表于 01-16 14:37 911次阅读

    异步电路和同步电路区别在哪?

    部分是独立运行的,没有明确定义的时钟信号来同步它们的操作。相反,每个部分在满足特定的条件下单独启动和运行,通过相互之间的通信来完成所需的协作。异步电路通常采用握手协议来确保数据的
    的头像 发表于 12-07 10:53 3223次阅读

    同步异步通信协议介绍

    同步异步传输归结为时钟是外部的(同步)还是内部的(异步)。异步协议的一些例子包括UART、US
    发表于 11-27 15:39 1556次阅读
    <b class='flag-5'>同步</b>和<b class='flag-5'>异步</b>通信协议介绍

    IC设计:ram的应用-异步时钟域位宽转换

    在进行模块设计时,我们经常需要进行数据位宽的转换,常见的两种转换场景有同步时钟域位宽转换和异步时钟域位宽转换。本文将介绍异步
    的头像 发表于 11-23 16:41 786次阅读
    IC设计:ram的应用-<b class='flag-5'>异步</b><b class='flag-5'>时钟</b>域位宽转换

    什么是同步逻辑和异步逻辑?同步电路与异步电路有何区别?

    统一的时钟信号的驱动下进行操作,而异步逻辑是指电路中的各个组件根据输入信号的条件自主进行操作,不受统一的时钟信号控制。 同步逻辑和异步逻辑的
    的头像 发表于 11-17 14:16 2191次阅读