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

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

3天内不再提示

降低布线延迟的另一流程

电子工程师 来源:未知 作者:李倩 2018-11-07 11:11 次阅读

布线延迟过大除了拥塞导致之外,还可能是其他因素。下图显示了降低布线延迟的另一流程(因其他因素导致布线延迟过大的处理流程)。

图片来源: page 7, ug1292

首先,通过report_desigan_analysis分析路径特征。有时还需要结合report_utilization和report_failfast两个命令。

第1步:分析路径的Hold Fix Detour是否大于0ps?

HoldFix Detour是工具为了修复保持时间违例而产生的绕线(该数值在design analysis报告中显示,如果没有显示,可在报告标题栏内点击右键,选择HoldFix Detour)。如果该数值大于0,就有可能造成建立时间违例。这时其实应关注的是该路径对应的保持时间报告,诊断为什么工具会通过绕线修复保持时间违例。

第2步:违例路径的各个逻辑单元是否存在位置约束?

通常,设计中不可避免地会有一些物理约束,如管脚分配。除此之外,还可能会有其他位置约束,如通过create_macro或Pblock创建的位置约束。如果设计发生改变,就需要关注这些位置约束是否仍然合理,尤其是那些穿越多个Pblock的路径。

第3步:违例路径是否穿越SLR?

如果目标芯片为多die芯片,那么在设计初期就要考虑到以下几个因素,以改善设计性能。

在设计的关键层次边界上以及跨die路径上插入流水寄存器,尤其是跨die路径,这些寄存器是必需的;

检查每个SLR的资源利用率是否合理,这可通过report_failfast –by_slr实现。-by_slr选项只能在place_design或route_design生成的dcp中使用,这也不难理解,毕竟在布局阶段工具才会把设计单元向相应的SLR内放置;

每个die的设计可以看作一个顶层,因此,要对每个顶层指定一个die,以确保相应的设计单元被正确放置在目标die内。这可通过属性USER_SLR_ASSIGNMENT实现(Vivado 2018.2开始支持);

如果上述属性未能正确工作,可直接画Pblock进行约束;

在布局或布线之后如果仍有时序违例,可尝试使用phys_opt_design -slr_crossing_opt。

第4步:唯一控制集百分比是否大于7.5%?

唯一控制集个数可通过report_failfast查看。如果控制集百分比超过7.5%,可通过如下方法降低控制集。

关注MAX_FANOUT属性:

移除时钟使能、置位或复位信号的MAX_FANOUT属性。这是因为该属性会复制寄存器以降低扇出,但同时也增加了控制集;

在Synthesis阶段:

-提高–control_set_opt_threshold的数值,可使工具将更多同步控制信号搬移到数据路径,从而降低控制集;

-也可采用Block Level Synthesis技术,对指定模块设置该数值;

在opt_design阶段:

-control_set_merge

-merge_equivalent_drivers

这两个选项可帮助降低控制集。但这两个选项不能与-directive同时使用,所以如果是工程模式下,可将其放置在Hook文件中(Tcl.pre或Tcl.post)。非工程模式下,可在执行完-directive之后,再次执行这两个选项;

关注低扇出信号:

对于低扇出的控制信号(同步使能、同步置位/同步复位),可对其连接的寄存器设置CONTROL_SET_REMAP属性,将控制信号搬移到数据路径上,从而降低控制集。

第5步:尝试其他实现策略

Vivado提供了多种实现策略。因此,尝试不同实现策略是达到时序收敛的一个手段。

尝试多种place_design和phys_opt_design,这可通过设置不同的-directive实现;

尝试使用过约束(过约最大0.5ns),这可通过设置Clock Uncertainty实现。需要用到set_clock_uncertainty;

对关键时钟域下的路径设置更高的优先级,使工具对其优先布局布线,这可通过命令group_path实现;

尝试使用增量布局布线,继承之前好的布局布线结果,并缩短编译时间。

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

    关注

    30

    文章

    5042

    浏览量

    117807
  • 布线
    +关注

    关注

    9

    文章

    731

    浏览量

    84034

原文标题:深度解析ug1292(7)

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    IC设计流程简介

    是SetupTime 和 HoldTime),与激励无关。在深亚微米工艺中,因为电路连线延迟大于单元延迟,通常预布局布线反复较多,要多次调整布局方案,对布局布线有指导意义。
    发表于 12-19 16:20

    用PROTEL99SE布线的基本流程

    用PROTEL99SE布线的基本流程
    发表于 08-20 19:42

    PROTEL99SE布线的基本流程

    PROTEL99SE布线的基本流程
    发表于 08-20 20:38

    最完善的protel99se布线流程

    很完善的protel99se布线流程
    发表于 12-21 13:32

    用PROTEL99SE布线的基本流程

    用PROTEL99SE布线的基本流程
    发表于 03-17 22:41

    protel布线基本流程

    protel布线基本流程PCB打样找华强 http://www.hqpcb.com 样板2天出货
    发表于 04-05 10:09

    protel布线基本流程

    protel布线基本流程PCB打样找华强 http://www.hqpcb.com 样板2天出货
    发表于 04-05 10:11

    PCB布局布线抄板流程

    )带来延迟时间的增加,可使系统速度大为降低。象移位寄存器,同步计数器这种同步工作部件最好放在同块插件板上,因为到不同插件板上的时钟信号的传输延迟时间不相等,可能使移位寄存器产主错误,
    发表于 09-11 16:05

    怎么降低延迟

    你好。我是PC游戏玩家,我想调整我的英特尔i219-v网卡驱动程序,因为我可以获得更低的延迟..有些设置我可以改变以降低延迟?以上来自于谷歌翻译以下为原文Hi. I am a PC
    发表于 10-29 14:21

    高速PCB布线降低电感的具体措施

    可能摆放得离芯片电源引脚近些,以达到最佳的旁路效果。  高速PCB布线中对电容处理的要求,简单地说就是要降低电感。实际在布局中的具体措施主要有以下6点。  1、减小电容引线/引脚的长度。  2、使用宽
    发表于 12-16 16:55

    用PROTEL99SE布线的基本流程

    用PROTEL99SE布线的基本流程
    发表于 03-12 01:13 0次下载

    Protel 布线流程

    Protel 布线流程
    发表于 05-28 01:18 0次下载

    用PROTEL99SE布线的基本流程

    用PROTEL99SE布线的基本流程
    发表于 12-25 10:43 0次下载

    pcb布线心得(流程详解、元件布局布线与EMC)

    pcb布线技巧,轻松搞定布线、布局,主要包括:一、元件布局基本规则;二、元件布线规则;为增加系统的抗电磁干扰能力采取措施;3、降低噪声与电磁干扰的一些经验等.
    发表于 11-03 17:02 3762次阅读

    PCB电路设计的基本流程以及布线技巧解析

    一般PCB基本设计流程如下:前期准备-》PCB结构设计-》PCB布局-》布线-》布线优化和丝印-》网络和DRC检查和结构检查-》制版。
    发表于 12-06 15:16 2299次阅读