当前位置: 首页 > article >正文

vivado产生报告阅读分析27

1、设计 QoR 汇总
命令行选项 -qor_summary 可用于为流程中每个步骤生成 QoR 汇总信息。该选项只能从 Tcl 控制台使用。该选项可按两种格式生成: 基于文本的报告或 JSON 格式。
要生成基于文本的格式 请运行以下命令
report_design_analysis -qor_summary
此汇总报告也可以 JSON 格式生成。采用 JSON 格式时 该表作为单个表格平铺展示 以便于解析。此报告中仅限这部分能按此格式输出, 但它更便于对部分关键设计指标进行解析。要以 JSON 格式生成汇总报告 请运行以下命令
report_design_analysis -qor_summary -json <json filename>
2、使用“ Report Design Analysis
常见 QoR 问题主要分为 2
时序违例
拥塞
时序违例
虽然分析和修复最差时序违例通常有助于提升总体 QoR 但您还必须复查其他关键路径 因为这些路径通常会增加时序收敛困难。您可使用以下命令来报告前 50 条最差的建立时序路径
report_design_analysis -max_paths 50 -setup
在该表中 可明确识别导致每条路径产生时序违例的各项特性
• 逻辑延迟百分比过高 逻辑延迟
逻辑层次是否过多 ?( 逻辑级数
是否存在阻碍逻辑最优化的任何约束或属性 ?( 勿触 标记调试
路径是否包含具有高逻辑延迟的单元 例如 RAMB DSP
当前路径拓扑结构的路径要求是否过于苛刻 ?( 要求
• 高信号线延迟百分比 信号线延迟
在路径中是否有任何高扇出信号线 ?( 高扇出 累积扇出
分配给多个 Pblock 的单元布局能否拉开距离 (Pblocks)
单元布局能否拉开距离 ?( 边界框大小 时钟区域距离
对于 SSI 器件 是否存在跨 SLR 边界的信号线 ?( SLR 交汇
在布局看似正确的情况下 是否有 1 个或多个信号线延迟值远高于预期
RAMB DSP 单元中缺少流水线寄存器 而路径中存在此寄存器
检查路径 确认针对 RAMB DSP 单元是否已启用流水线寄存器
• 高偏差 建立 <-0.5 ns 保持 > 0.5 ns )( 时钟偏差
此路径是时钟域交汇路径吗 ?( 起点时钟 端点时钟
时钟是同步时钟还是异步时钟 ?( 时钟关系
此路径是否跨多个 I/O ?( IO 交汇
为了在 AMD Vivado IDE 中直观显示时序路径及其布局 / 布线的详细信息 您必须使用以下命令 : report_timing -max_paths 50 -setup -input_pins -name worstSetupPaths
这些路径按裕量排序 并按“ Setup Path Characteristics ”表中的相同顺序 如上图所示 显示。
report_design_analysis 还可为最差的 1000 条路径生成“ Logic Level Distribution 逻辑层次分布 以供您用于识别设计中存在的长路径。通常最长的路径首先由布局器加以最优化以满足时序要求, 这可能导致较短的路径的布局质量劣化。您必须不断尝试消除较长的路径, 以提高整体 QoR 。下图显示了仅含 1 个时钟的设计的“ Logic Level Distribution”示例。
根据结果 可通过更改 RTL 或使用不同综合选项来改进网表 或者也可以修改时序约束和物理约束。
拥塞
report_design_analysis 命令用于报告多个拥塞表 其中显示布局器和布线器发现的拥塞区域。您可在运行布局器和布线器的 Vivado 工具会话内使用以下命令来生成这些表
report_design_analysis -congestion
下图显示的拥塞表示例对应于布局器最终拥塞和布线器初始拥塞。
针对“ Module Names 模块名称 所提供的名称对应于每个报告的 tile 拼块 内存在的层级单元。您可使用以下命令来检索完整名称:
get_cells -hier <moduleName>
确认拥塞区域内存在的层级单元后 即可使用拥塞缓解技巧来尝试减少总体设计拥塞。

http://www.kler.cn/news/148295.html

相关文章:

  • 前端相关免查整合-vue、es、工具类等
  • 计算机丢失vcomp140.dll是什么意思,如何解决与修复(附教程)
  • 代码随想录算法训练营 ---第四十二天
  • ubuntu 使用快照启动polygon主网
  • C语言——数组转换
  • 野火霸天虎 STM32F407 学习笔记(六)系统时钟详解
  • 亚信科技AntDB数据库与库瀚存储方案完成兼容性互认证
  • frp内网穿透
  • 4-docker-compose介绍(部署flask案例、yaml文件、启动)、新建flask项目、编写Dockerfile(用于构建flask项目的镜像)、
  • 头发的方向图(2D和3D)与合成
  • 【Mybatis】预编译/即时sql 数据库连接池
  • linux进入telnet和推出telnet
  • 零基础在ubuntu上搭建rtmp服务器-srs
  • 关于Redis底层的两个问题
  • 18、Android 组件化
  • C++中的map和set的使用
  • 【Spark入门】基础入门
  • facebook引流软件需要具备什么功能
  • 相关性分析和作图
  • php高级工程师范文模板
  • 完美解决:Nginx访问PHP出现File not found.
  • 逆向扒cocosjs安卓包教程-破解加密的js源码
  • vue+elementUI的tabs与table表格联动固定与滚动位置
  • 【JUC】十二、CompletableFuture(上)
  • Java 之 lambda 表达式(二)---- Stream 操作 API
  • C语言—什么是数组名
  • 5种主流API网关技术选型,yyds!
  • Python基础语法之学习print()函数
  • JAVA 使用stream流将List中的对象某一属性创建新的List
  • ubuntu中root和普通用户切换方法