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

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

3天内不再提示

XILINX使用方法论设计无法连贯布线

XILINX开发者社区 来源:XILINX开发者社区 作者:赛灵思开发者 2021-09-28 10:41 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本篇博文中的分析是根据真实客户问题撰写的,该客户的 DFX 设计无法连贯布线,存在布线重叠。本篇博文旨在演示用于缩小根本原因范围以及修复此问题的部分调试技巧。

这是“使用方法论报告”系列博文的第 6 部分。

如需阅读整个系列中的所有博文,请点击下方标题查看。

第1部分:时序以满足,但硬件功能出现错误

第2部分:方法违例对于QoR的影响

第3部分:时序已满足,但硬件中存在 DDR4 校准失败

第4部分:罕见的比特翻转

第5部分:DDR4 IP 校准后硬件故障,指示存在时序问题,但时序报告中无任何违例

问题说明:

在此示例中,用户的 DFX 设计遇到 1 个奇怪的问题,它无法连贯布线,部分信号线保持处于未布线状态。

运行 Tcl 命令 report_route_status 显示如下结果,有 165 条信号线未布线:

根本原因分析:

通过观察设计发现,时钟间路径存在超大保持时间违例,约 - 4.6 ns,如下所示。

但在已布线的检查点上未出现这些违例。route_design 开始处的日志中可以看到这些违例。

注: 要详细分析含估算的布线延迟的时序,请在 Vivado GUI 的“时序汇总 (Timing Summary)”报告中针对互连 (interconnect) 使用“估算 (estimated)”选项。

您可使用以下选项来检查自己的设计的“Timing Summary”:

在 Vivado GUI 中,转至“报告 (Reports)”选项卡 -》“时序 (Timing)”-》“时序汇总报告 (Report Timing Summary)”

运行以下 Tcl 命令:

report_timing_summary -file/timingreport.txt

互连设置用于控制信号线延迟计算方式:根据估算的叶节点单元管脚间布线距离来计算,或者根据实际布线的信号线来计算,或者从时序分析中排除信号线延迟。请扫码参阅 (UG906) 以获取更多信息。

或者,也可以使用以下 Tcl 命令来分析含估算的布线延迟的时序。

set_delay_mode -interconnect estimated

借助时钟交互报告 (Report Clock Interaction),即可在所有特定时钟域中发现这些时钟间路径违例,如下所示。

如需在 Vivado GUI 中查看时钟交互报告,请依次选择“报告 (Reports)”-》“时序 (Timing)”-》“时钟交互报告 (Report Clock Interaction)”。

通过观察这些严重的保持时间违例,可以得出如下结论:时钟拓扑结构存在问题,或者设计未正确约束。

而这两种可能性都需要加以详细分析。

通过观察发现,此时钟间路径存在保持时间违例,且其时钟路径偏差非常高,看上去很可疑。

默认情况下,Vivado 将所有时钟都视作为同步时钟来处理。因此,这些 CDC 异步时钟路径同样被视为同步,因此导致在路径中此处添加错误的时钟偏差。在此示例中,偏差约为 4 ns。

那么我们是如何发现这些异步 CDC 未正确约束的呢?

我们是从时钟对分类 (Clock Pair Classification) 和时钟间约束 (Inter clock Constraints) 列中得到此信息的(如下所示)。

请参阅以下“如何正确地约束时钟交互”博客,以便获取详细信息。

这导致出现严重的保持时间违例,因而导致布线器执行大量保持时间修复,从而导致布线拥塞。

布线器始终优先修复保持时间违例,而后才是修复建立时间违例,因为存在保持时间违例的设计无法正常运行,而存在建立时间违例的设计则仍能按较低频率运行。

由于布线绕行导致的布线拥塞可能导致时序违例,也可能导致无法布线。

拥塞严重会导致布线器无法找到任何资源用于布线。此处示例的问题正来自于此。

您可以观察到由于欠约束 CDC 路径,会导致布线器花费大量的布线资源用于修复保持时间违例。

最终,它导致了在此例中所发生的信号线拥塞/未布线问题。

以下截屏显示的保持时间违例中,时钟偏差为 4 ns。

下图显示了发生保持时间违例的非安全 CDC 路径中所使用的布线资源总量。

并且,分析还发现利用率在可控范围内,并未超出阈值。而根本原因同样源于约束不正确。

要在 Vivado GUI 中查看资源利用率,请转至“报告 (Reports)”选项卡 -》“报告利用率 (Report Utilization)”。

或者,您可在 Tcl 控制台内运行 report_utilization 命令。

那么在此情况下,方法论报告又如何发挥作用呢?

通过观察此报告可以发现,在设计中存在大量方法警告。

以下列出了影响设计 QoR 且需要优先解决的主要警告。

要在 Vivado GUI 中打开方法论报告,请转至“报告 (Report)”选项卡 -》“方法论报告 (Report Methodology)”,或者在 Tcl 控制台中,使用 report_methodology。

以下截屏显示的方法论报告包含有关 TIMING-6、7、8、15 和 35 的警告消息。

根据 TIMING-6、TIMING-7、TIMING-8 和 TIMING-35 警告,可以得出结论,即设计未正确约束,并且必须对其加以正确约束。

因此,用户需参阅时钟交互报告以了解时钟间路径的时序是否安全。如需获取有关“时钟交互报告 (Clock Interaction Report)”的更多信息,请参阅 (UG906)。

TIMING-15 警告显示在时钟间路径上存在严重的保持时间违例,必须先加以解决,然后才能生成比特流。

由于布线器始终会尝试解决保持时间违例,并且这也会影响布线,因此建议正确约束设计,并清除上述警告消息中提及的时钟间路径中的错误。

通过检查时序汇总可以发现,时钟间路径的保持时间违例非常高,达到约 -3 ns。

结论:

通过观察分析可以发现,如果在调试初始阶段,客户遵循方法论报告中的警告将其逐一解决,那么即可大幅缩短调试此信号线未布线问题的时间。

添加如下约束后,即可解决这些幽灵时序违例:

set_max_delay -datapath_only -from [] -to []

如需获取有关添加正确的时序例外的更多信息,可参阅 (UG903) 和“如何正确地约束时钟交互”博文,其中均提供了诸多实用信息。

最后,完成上述修改后,用户得以成功将可重配置模块的利用率提升到 55% FF 利用率。

责任编辑:haq

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

    关注

    11

    文章

    760

    浏览量

    69529
  • Xilinx
    +关注

    关注

    73

    文章

    2205

    浏览量

    131819

原文标题:开发者分享 | 使用方法论报告6: 设计无法连贯布线

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

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    技术资讯 I 电路布线方法大全

    本文要点集成电路布线要点概述复杂集成电路的布线技巧助力顺利完成布线的各种工具早期的布线工作相对简单,设计人员依赖基础自动布线器或通过手动方式
    的头像 发表于 04-10 17:46 95次阅读
    技术资讯 I 电路<b class='flag-5'>布线</b><b class='flag-5'>方法</b>大全

    一文浅谈嵌入式设计

    本文深入探讨嵌入式系统设计的完整流程与关键要点,从芯片选型、硬件架构到软件开发,助您掌握打造稳定高效智能设备的实战方法论
    的头像 发表于 03-13 10:32 204次阅读

    RTL9301管理型交换机DHCP Server使用方法

    RTL9301管理型交换机DHCP Server使用方法
    的头像 发表于 02-01 10:52 1475次阅读
    RTL9301管理型交换机DHCP Server<b class='flag-5'>使用方法</b>

    Pioneer车载音频的长期方法论

    从产品调校思路来看,Pioneer 的声音取向往往偏向均衡而克制。低频强调控制力而非单纯量感,高频追求清晰度但避免锐利刺耳,中频则尽量保证人声与主要信息的自然呈现。这种取向,在日常驾驶中更容易被接受,也更不容易造成听觉疲劳。
    的头像 发表于 01-29 10:24 677次阅读

    国产SiC模块BMF540R12MZA3全面取代进口IGBT模块2MBI800XNE-120的工程方法论

    国产SiC模块BMF540R12MZA3全面取代进口IGBT模块2MBI800XNE-120的工程方法论 倾佳电子(Changer Tech)是一家专注于功率半导体和新能源汽车连接器的分销商。主要
    的头像 发表于 01-11 11:46 400次阅读
    国产SiC模块BMF540R12MZA3全面取代进口IGBT模块2MBI800XNE-120的工程<b class='flag-5'>方法论</b>

    SAP 拆分合并实施商选型指南:方法论 + 工具 + 案例核心参考

    针对SAP系统拆分与合并这类高复杂度项目,选择实施商需重点考察其方法论成熟度(如SNP的“拆分工厂”模式)、专业工具(如CrystalBridge平台)及行业案例经验。德勤等大型服务商擅长大规模整合,区域型伙伴则精于本地化合规,三者组合可形成完整解决方案闭环。
    的头像 发表于 01-05 17:21 655次阅读

    芯源IR调制器都有哪些具体使用?使用方法是怎样的?

    芯源IR调制器都有哪些具体使用?以及使用方法是怎样的?
    发表于 12-02 06:33

    堆栈的定义,堆栈的使用方法

    和使用; 对于8086CPU,进出堆栈的只能是2字节的数据。 2 堆栈的使用方法 常用的堆栈相关指令包括PUSH POP PUSHF和POPF,语法如下: PUSH 源操作数;将指定操作数入栈保护 POP
    发表于 11-21 06:49

    储能战略规划:企业级储能技术路线图的制定方法与实践指南

    在 “双碳” 目标与能源转型加速推进的背景下,储能已从 “可选配置” 转变为企业优化能源成本、保障供电安全、提升绿色竞争力的 “核心基础设施”。企业如何制定科学合理的储能技术路线图?本文提供一个系统化的框架和方法论
    的头像 发表于 10-25 09:36 1389次阅读
    储能战略规划:企业级储能技术路线图的制定<b class='flag-5'>方法</b>与实践指南

    掌握数字设计基础:迈向芯片设计的第一步

    的行为。FSM 广泛应用于通信协议、控制器、指令调度等场景,是数字电路设计的核心模型之一。 5、RTL设计方法论:从抽象到落地 现代芯片设计常用 寄存器传输级(RTL) 方法,将系统的行为抽象为寄存器之间
    发表于 10-09 21:11

    PREEvision 10.20全面支持RFLP方法论

    从需求(R)到功能(F)、逻辑(L)视图,再到软件和硬件的物理(P)视图,PREEvision在单一工具中覆盖了信息物理系统开发的所有方面。简洁的用户界面可逐步引导用户完成整个流程。
    的头像 发表于 08-29 14:17 1055次阅读

    车机DAB功能验证方法论及测试三神器简介

    本文不拘泥于某个具体的功能点进行讨论,譬如Linking、Announcement、Reconfiguration、SLS、SPI、EPG或是DLS等,而是从更高一维度来分析DAB功能验证的方法论
    的头像 发表于 08-10 15:29 4754次阅读
    车机DAB功能验证<b class='flag-5'>方法论</b>及测试三神器简介

    锡膏的储存及使用方法详解

    锡膏是一种常用的焊接辅助材料,广泛应用于电子、电器、通讯、仪表等行业的焊接工艺中。正确的储存和使用方法对于保证锡膏的品质和焊接效果至关重要。本文将就锡膏的储存和使用方法进行详细介绍,希望能对广大焊接工作者有所帮助。
    的头像 发表于 07-18 17:36 1634次阅读
    锡膏的储存及<b class='flag-5'>使用方法</b>详解

    如何解决Air780EPM开发中的调试难题?深度解析高效调试方法

    在Air780EPM项目开发中,调试效率往往直接影响进度。面对代码报错、逻辑漏洞等常见痛点,开发者亟需一套系统化的方法论。本文将揭秘实战中验证的调试技巧,助您快速定位问题并优化代码流程。
    的头像 发表于 05-17 10:46 868次阅读
    如何解决Air780EPM开发中的调试难题?深度解析高效调试<b class='flag-5'>方法</b>

    LCR测试仪的使用方法与注意事项

    LCR测试仪的使用方法、操作注意事项及常见故障处理,帮助读者高效、安全地掌握这一仪器的使用技巧。   二、LCR测试仪的基本使用方法 1. 准备阶段 (1)设备检查:确保测试仪电源线、连接线完好,电源开关关闭。检查测试夹具或探针
    的头像 发表于 04-29 10:36 2w次阅读
    LCR测试仪的<b class='flag-5'>使用方法</b>与注意事项