1 RQS_CLOCK-12时钟设置建议-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

RQS_CLOCK-12时钟设置建议

XILINX开发者社区 来源:XILINX开发者社区 2023-07-26 09:53 次阅读

在本篇博文中,我们来聊聊“RQS_CLOCK-12”时钟设置建议以及它如何帮助达成时序收敛。

要求:

掌握如何生成和应用 report_qor_suggestions。

基本掌握 CLOCK_LOW_FANOUT 约束。

RQS_CLOCK-12:

RQS_CLOCK-12 建议属于专为 UltraScale 和 UltraScale+ 器件生成的自动增量式友好建议。

它使用“CLOCK_LOW_FANOUT”属性,并将该属性分配给时钟信号线或者一组寄存器,由全局时钟缓冲器根据其负载数目来驱动。

将该属性应用于时钟信号线时,全局时钟缓冲器的负载将被约束并放置到单个时钟区域内。

将该属性应用于一组寄存器时,在 opt_design 期间创建的现有全局时钟缓冲器的基础上,还会并行复制一个全新的全局时钟缓冲器。新全局时钟缓冲器的负载仅适用于该属性应用到的各组寄存器,并约束到单个时钟区域。

现在我们来看看 RQS_CLOCK-12 建议如何应用 CLOCK_LOW_FANOUT 来降低时钟偏差,进而帮助设计达成时序收敛。

假设已布线的设计中存在如下两个场景,其中存在错误的时钟偏差,导致从寄存器到全局缓冲器的控制管脚 (CE/CLR) 的路径上存在时序违例。

场景 1:

2b7d1d9e-2adb-11ee-a368-dac502259ad0.png

在这条时序收敛失败的路径中,时钟缓冲器 BUFGCE1 (clockout3_buf)、寄存器及其驱动程序 BUFGCE2 (bufce_i) 全都布局在同一个时钟区域内。驱动寄存器的 BUFGCE1 存在高扇出 (6419),且负载导致其时钟信号线遍布整个器件,如图高亮所示。

该工具所选的 CLOCK_ROOT 位置远离驱动它的全局时钟缓冲器,导致时钟信号线延迟过高且时钟偏差过高。

场景 1 的解决办法:

对寄存器应用 CLOCK_LOW_FANOUT,这样即可复制 opt_design 期间创建的原始 BUFGCE1 以创建新的 BUFGCE (clkout3_buf_replica),且仅将其用于驱动此关键寄存器。这样将把信号线约束到单个时钟区域内,从而减少时钟信号线延迟。

并且,由于时钟源和负载都位于相同时钟区域内,CLOCK_LOW_FANOUT 会强制将 clock root(时钟根)包含在相同时钟区域内,从而帮助降低时钟偏差。

对关键寄存器应用CLOCK_LOW_FANOUT后的板级原理图:

2ba1921e-2adb-11ee-a368-dac502259ad0.png

在 opt_design 的 BUFG 最优化阶段,在为 CLOCK_LOW_FANOUT 属性创建的全局时钟缓冲器上应该会显示一条消息。


例如:

2bd00c20-2adb-11ee-a368-dac502259ad0.png

语法:

2bf7b022-2adb-11ee-a368-dac502259ad0.png

场景 2:

2c0407d2-2adb-11ee-a368-dac502259ad0.png

在这条时序收敛失败的路径中,时钟缓冲器 BUFGCE1 (clkout1_BUFG_inst)、寄存器及其驱动程序 BUFGCE2 同样全都布局在同一个时钟区域内。BUFGCE1 驱动寄存器的扇出较低 (16),但负载分布于多个时钟区域(以红色标记)。由此导致该工具所选的 CLOCK_ROOT 不同于驱动它的全局时钟缓冲器,进而导致时钟信号线延迟过高且时钟偏差过高。

场景 2 的解决办法:

当BUFGCE1扇出较低 (<2000) 但时钟负载遍布多个时钟区域时,对 BUFGCE1 直接驱动的时钟信号线应用 CLOCK_LOW_FANOUT 即可将其所有负载的布局都约束到单个时钟区域内。这将减少时钟信号线延迟。

现在,时钟源和负载都位于相同时钟区域内,因此CLOCK_LOW_FANOUT会强制将clock root包含在相同时钟区域内,从而帮助降低时钟偏差。

对时钟信号线应用CLOCK_LOW_FANOUT后的板级原理图:

2c33d034-2adb-11ee-a368-dac502259ad0.png

语法:

2c7b5788-2adb-11ee-a368-dac502259ad0.png

总结:

在本篇博文中,我们学习了 2 个设计示例,其中演示了如何生成 RQS_CLOCK-12 建议以将 CLOCK_LOW_FANOUT 属性应用于由全局时钟缓冲器直接驱动的寄存器或时钟信号线。

审核编辑:汤梓红

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

    关注

    31

    文章

    5336

    浏览量

    120224
  • 缓冲器
    +关注

    关注

    6

    文章

    1921

    浏览量

    45473
  • 时钟
    +关注

    关注

    10

    文章

    1733

    浏览量

    131445
  • 信号线
    +关注

    关注

    2

    文章

    171

    浏览量

    21460

原文标题:开发者分享|RQS 设计收敛建议 ID RQS_CLOCK-12

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    如何在实现流程中将RQA与RQS结合使用的设计示例

    体验。 本篇博文将通过一个具体设计示例来演示如何在实现流程中将 RQA 与 RQS 结合使用。 RQA 能为设计提供评估得分,并提供有关后续步骤的指导信息,而 RQS 则可提供适用的改进措施的建议和策略
    的头像 发表于 09-29 11:11 3992次阅读
    如何在实现流程中将RQA与<b class='flag-5'>RQS</b>结合使用的设计示例

    电源管理之clock驱动构架设计解决方案

    Clock 时钟就是 SoC 中的脉搏,由它来控制各个部件按各自的节奏跳动。比如,CPU主频设置,串口的波特率设置,I2S的采样率设置,I2
    发表于 11-29 09:53 919次阅读
    电源管理之<b class='flag-5'>clock</b>驱动构架设计解决方案

    CLOCK_DEDICATED_ROUTE约束应用

    ` Vivado工具在编译时通常会自动识别设计中的时钟网络,并将其分配到专用的时钟布局布线资源中。通过对某些时钟网络设置CLOCK_DEDI
    发表于 09-15 13:30

    msp430如何设置时钟及ad模块学习

     我们在程序里对寄存器的设置,也就是对三个振荡器进行设置时钟振荡器设置好了,还要对时钟模块进行设置
    发表于 11-17 08:52 6174次阅读
    msp430如何<b class='flag-5'>设置</b><b class='flag-5'>时钟</b>及ad模块学习

    三个命令生成的报告中均可显示Clock Skew的具体数值

    如果时钟同时驱动I/O和Slice中的逻辑资源,且负载小于2000时,可通过CLOCK_LOW_FANOUT属性对相应的时钟net进行设置,最终可使工具将该
    的头像 发表于 11-07 11:08 4824次阅读
    三个命令生成的报告中均可显示<b class='flag-5'>Clock</b> Skew的具体数值

    51单片机定时器时钟闪烁设置

    ************************* 平台:Keil U4 + Professional* 名称:时钟闪烁设置 * 日期:2019-6-7* 晶振: 12MHZ* ...
    发表于 11-11 18:21 19次下载
    51单片机定时器<b class='flag-5'>时钟</b>闪烁<b class='flag-5'>设置</b>

    STC12C5A60S2系列单片机PCA时钟设置

    STC12C5A60S2系列单片机PCA时钟设置
    发表于 11-18 11:36 13次下载
    STC<b class='flag-5'>12</b>C5A60S2系列单片机PCA<b class='flag-5'>时钟</b>源<b class='flag-5'>设置</b>

    DIY UTC时钟设置PC时钟的选项

    德赢Vwin官网 网站提供《DIY UTC时钟设置PC时钟的选项.zip》资料免费下载
    发表于 07-27 16:00 4次下载
    DIY UTC<b class='flag-5'>时钟</b>及<b class='flag-5'>设置</b>PC<b class='flag-5'>时钟</b>的选项

    Gowin时钟资源(Clock)用户指南

    德赢Vwin官网 网站提供《Gowin时钟资源(Clock)用户指南.pdf》资料免费下载
    发表于 09-14 14:23 0次下载
    Gowin<b class='flag-5'>时钟</b>资源(<b class='flag-5'>Clock</b>)用户指南

    Logos系列FPGA时钟资源(Clock)用户指南

    德赢Vwin官网 网站提供《Logos系列FPGA时钟资源(Clock)用户指南.pdf》资料免费下载
    发表于 09-26 10:15 7次下载
    Logos系列FPGA<b class='flag-5'>时钟</b>资源(<b class='flag-5'>Clock</b>)用户指南

    Compact系列CPLD时钟资源(Clock/PLL)用户指南

    德赢Vwin官网 网站提供《Compact系列CPLD时钟资源(Clock/PLL)用户指南 .pdf》资料免费下载
    发表于 09-26 10:03 2次下载
    Compact系列CPLD<b class='flag-5'>时钟</b>资源(<b class='flag-5'>Clock</b>/PLL)用户指南

    怎样通过设置clock group来确认各个时钟之间的关系?

    今天我们要介绍的时序分析基本概念是 **clock group,简称时钟组。** 定义完时钟后,我们也需要通过设置clock group来确
    的头像 发表于 07-03 14:37 1570次阅读
    怎样通过<b class='flag-5'>设置</b><b class='flag-5'>clock</b> group来确认各个<b class='flag-5'>时钟</b>之间的关系?

    RQS设计收敛建议ID RQS_CLOCK-12

    本文聊聊“RQS_CLOCK-12时钟设置建议以及它如何帮助达成时序收敛
    的头像 发表于 07-12 15:44 548次阅读
    <b class='flag-5'>RQS</b>设计收敛<b class='flag-5'>建议</b>ID <b class='flag-5'>RQS_CLOCK-12</b>

    时钟子系统中clock驱动实例

    clock驱动实例 clock驱动在时钟子系统中属于provider,provider是时钟的提供者,即具体的clock驱动。
    的头像 发表于 09-27 14:39 797次阅读
    <b class='flag-5'>时钟</b>子系统中<b class='flag-5'>clock</b>驱动实例

    时序约束一主时钟与生成时钟

    的输出,对于Ultrascale和Ultrascale+系列的器件,定时器会自动地接入到GT的输出。 1.2 约束设置格式 主时钟约束使用命令create_clock进行创建,进入Timing
    的头像 发表于 11-29 11:03 290次阅读
    时序约束一主<b class='flag-5'>时钟</b>与生成<b class='flag-5'>时钟</b>