vivado 物理优化约束、交互式物理优化

物理优化约束

Vivado Design Suite在物理优化过程中尊重DONT_TOUCH特性。它不在具有这些属性的网络或小区上执行物理优化。要加快网络选择过程中,具有DONT_TOUCH属性的网络经过预过滤,不被考虑用于物理优化。此外,还遵守Pblock分配,以便复制逻辑继承原始逻辑的Pblock赋值。定时异常也从复制从原始细胞到复制细胞。有关更多信息,请参阅《Vivado Design Suite用户指南》中的“合成属性”一节:合成(UG901)。DONT_TOUCH属性通常放置在叶细胞上,以防止它们优化。分层单元格上的DONT_TOUCH保留了单元格边界,但进行了优化仍然可以发生在细胞内。

工具会自动将值为TRUE的DONT_TOUCH属性添加到具有值为TRUE的MARK_DEBUG属性。这样做是为了在整个实现流程,以便可以在任何设计阶段对其进行探索。这是推荐的MARK_DEBUG的使用。但是,DONT_TOUCH限制性太强,阻止了复制和重定时等优化,导致关闭时机困难。在这些情况下,DONT_TOUCH可以设置为FALSE值,而保持MARK_DEBUG为真。删除DONT_TOUCH属性的结果是DEBUG的网络可以被优化掉并且不再被探测。如果MARK_DEBUGnet被复制,只有原始的net保留MARK_DEBUG,而不是被复制的net。

物理优化报告

Tcl报告命令report_phys_opt提供了执行的每个优化的详细信息通过phys_opt_design在非常精细的细节级别上实现。它必须在与相同的Vivado会话中运行phys_opt_design,而优化历史存在于存储器中。因此,如果需要报告,建议包括report_phys_opt命令在最后一个phys_ opt_design命令之后的Tcl脚本中。这些报告仅可用于放置后的phys_opt_design优化。这个报告不是累积的。每个phys_pt运行都有一个不同的phys_pt报告,仅说明在phys_opt_design的特定运行期间所做的更改。以下报告示例显示了涉及寄存器的扇出优化的第一个条目命名为pipeline_en。报告中显示了以下详细信息:

1.原始驱动器pipeline_en驱动816负载和包含该高扇出网络的路径WNS为-1.057 ns的故障定时。

2.复制驱动程序pipeline_en以创建一个新的单元pipeline_en_replica。

3.816个负载在pipeline_en_replica和原始负载之间分配,前者占用386个负载驱动程序pipeline_en,它承担剩余的430个负载。

4.在复制和放置pipeline_en_replica之后,pipeline_en _replica路径的WNS是+0.464ns,并且pipeline_en路径的WNS减少到零。

5.改变了原始驱动程序pipeline_en的位置,以改进基于其减少的一组负载的位置。

交互式物理优化

从2015.3版本开始,物理优化具有“回放”功能使用交互式Tcl命令iphys_opt_design进行优化。iphys_opt_design命令描述特定的优化事件,例如关键单元的复制或者从块RAM中提取一组寄存器。该命令包括所有信息重新创建网表和优化所需的位置更改所必需的发生交互式物理优化可以通过两种方式使用:

•将放置后物理优化应用于放置前网表,以改进整体布局结果并提高设计性能。

•将物理优化保存在Tcl脚本中,以便根据需要重复修改phys_opt_design网表更改涉及改造的设计流程如下图所示。

涉及两个运行,即“原始运行”,其中phys_opt_design在之后运行place_design和“重播运行”,其中执行phys_opt_design网表更改放置之前。在原始运行之后,phys_opt_design优化将使用保存到Tcl脚本文件中Tcl命令write_ iphys_。该脚本包含一系列iphys_opt_design Tcl命令以精确地重新创建由执行的设计更改原始运行中的phys_opt_design。您可以保存当前设计中的优化在内存中或打开实现的设计或检查点之后,其中phys_opt_design已经进行了优化。

重播运行使用相同的设计和约束。在place_design运行之前read_iphys_opt_tcl命令处理iphys_opt_design命令脚本应用原始运行中的网表更改。由于网表的更改,中的设计重播运行可能比原始运行更适合放置。现在的设计在放置之前结合了phys_opt_design优化的好处,例如复制后更少的高扇出网络和来自块RAM输出的更少的长距离路径。与phys_opt_design命令类似,read_iphys_opt_tcl命令具有将重播的设计步骤限制为某些类型的选项,如扇出优化、块RAM寄存器优化和重新布线。

重复phys_opt_design设计更改

重复phys_opt_design设计更改的设计流程如下所示图形

该流程与改造流程在两个方面不同:

•iphys_opt_design更改包含在place_design之后,而不是预先

•布局更改和网表更改都会在iphys_opt_design中捕获Tcl脚本。

通常,您会使用此流来获得对放置后phys_opt_design的更多控制步自定义“配方”是由重播的优化和新的组合创建的优化为探索设计闭包带来了许多可能性。write_iphys_opt_tcl和read_iphys_pt_tcl命令有一个-place选项以回放phys_opt_design中的位置更改。此选项应用于流以在放置之后重复phys_opt_design步骤。

交互式物理优化命令参考

交互式物理优化命令以及相应的选项包括如下所述。

write_iphys_opt_tcl

此命令写入一个文件,其中包含与当前设计中执行的物理优化。

语法:

write_iphys_opt_tcl [-place] [-quiet] [-verbose] <output file>

-place选项指示命令将放置信息包括在iphys_opt_tcl命令。当您打算使用网表应用放置时,请使用此选项iphys_opt_design命令重播期间的更改。write_iphys_opt_tcl命令可以在phys_opt_design已运行。read_iphys_opt_tcl此命令读取一个文件,该文件包含与上次运行中执行的物理优化。

语法:

read_iphys_opt_tcl [-fanout_opt] [-critical_cell_opt] [-replicate_cell]
[-placement_opt] [ -restruct_opt] [-forward_retime]
[-backward_retime] [-dsp_register_opt]
[-bram_register_opt]
[-uram_register_opt] [-shift_register_opt]
[-shift_register_to_pipeline] [-auto_pipeline]
[-pipeline_to_shift_register] [-critical_pin_opt]
[-restruct_opt] [-equ_drivers_opt]
[-include_skipped_optimizations] [-create_bufg]
[-insert_negative_edge_ffs] [-hold_fix]
[-slr_crossing_opt] [-quiet]
[-verbose] [<input>]

read_iphys_opt_tcl命令具有许多与phys_opt_design相同的选项将重播优化的范围限制为仅指定的优化。这些选项包括:

-fanout_opt
-critical_cell_opt
-placement_opt
-restruct_opt
-dsp_register_opt
-bram_register_opt
-uram_register_opt
-shift_register_opt
-insert_negative_edge_ffs
-slr_crossing_opt
-critical_pin_opt
-replicate_cell
-forward_retime
-backward_retime
-shift_register_to_pipeline
-auto_pipeline
-pipeline_to_shift_register
-restruct_opt-equ_drivers_opt
-create_bufg

应用输入Tcl脚本中定义的跳过的优化,以及标准优化。这些是由跳过的phys_opt_design标识的优化因为无法找到用于优化逻辑的合适位置。当指定此选项时iphys_opt_design命令将尝试在预放置网表。

iphys_opt_design

iphys_opt_design命令是一个低级别的Tcl命令,用于执行物理优化。所有默认的phys_opt_design优化都可以使用iphys_opt_design。尽管可以修改iphys_opt_design命令,并且即使是从头开始创建它们,通常也会将它们写入脚本并在单独运行。

建议:避免使用Tcl source命令执行iphys_opt_design的脚本命令。为了获得最高效的命令处理和最快的运行时间,请使用改为read_iphys_opt_tcl命令。

语法

iphys_opt_design [-fanout_opt] [-critical_cell_opt] [-replicate_cell]
[-reconnect] [-placement_opt] [-forward_retime]
[-backward_retime] [-net <arg>] -cluster <args>
-place_cell <args> [-dsp_register_opt] [-
bram_register_opt]
[-uram_register_opt] [-shift_register_opt] [-cell <arg>]
[-packing] [-unpacking] [-port <arg>] [-critical_pin_opt]
[-restruct_opt] [-equ_drivers_opt] [-skipped_optimization]
[-create_bufg] [-insert_negative_edge_ffs] [-hold_fix]
[-slr_crossing_opt] [-shift_register_to_pipeline]
[-auto_pipeline] [-pipeline_to_shift_register] [-quiet]
[-verbose]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/756533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

母亲的奶牛(bfs)

农夫约翰有三个容量分别为 A , B , C A,B,C A,B,C 升的挤奶桶。 最开始桶 A A A 和桶 B B B 都是空的&#xff0c;而桶 C C C 里装满了牛奶。 有时&#xff0c;约翰会将牛奶从一个桶倒到另一个桶中&#xff0c;直到被倒入牛奶的桶满了或者倒出牛奶的桶空了为止。 这一过…

Linux常用命令之搜索查找类

1.1find查找文件或目录 1&#xff09;基本语法 find [搜索范围] [ 选项] find -name&#xff1a;按照名字查找 find -user&#xff1a;按用户相关查找 find -size&#xff1a;按照文件大小查找 1.2locate快速定位文件路径 经验技巧&#xff1a;由于locate指令基于数据库进行…

HP Pavilion Laptop 15-eg2xxx原厂Win11系统预装oem系统包

惠普星15青春版笔记本原装出厂Windows11系统镜像下载&#xff0c;恢复出厂开箱状态 链接&#xff1a;https://pan.baidu.com/s/1f4hjwWX0CMDykb_8YXSf-w?pwd0aja 提取码&#xff1a;0aja 适用型号&#xff1a; 15-eg0010TU、15-eg0011TU、15-eg0008TX、15-eg0009TX 15-eg…

金属表面缺陷检测设备通常采用计算机视觉技术和机器学习算法

金属表面缺陷检测是在金属制造过程中非常重要的质量控制步骤。它涉及检测金属表面可能存在的各种缺陷&#xff0c;如裂纹、气泡、凹坑、氧化、斑点等。这些缺陷可能会影响金属制品的性能和质量&#xff0c;因此需要及早发现并进行处理。 目前&#xff0c;金属表面缺陷检测通常采…

从零开始写 Docker(六)---实现 mydocker run -v 支持数据卷挂载

本文为从零开始写 Docker 系列第六篇&#xff0c;实现类似 docker -v 的功能&#xff0c;通过挂载数据卷将容器中部分数据持久化到宿主机。 完整代码见&#xff1a;https://github.com/lixd/mydocker 欢迎 Star 推荐阅读以下文章对 docker 基本实现有一个大致认识&#xff1a; …

PriorityQueue集合源码分析

PriorityQueue集合源码分析 文章目录 PriorityQueue集合源码分析前置知识一、字段分析二、构造函数分析三、方法分析四、总结 PriorityQueue 优先级队列&#xff0c;是基于堆的结构来构建的。而堆是基于完全二叉树来实现的&#xff0c;而二叉树除了可以用节点来实现也可以用数组…

elementary OS7 (Ubuntu 22.04)中word文档转化成pdf格式文档

elementary OS7 Ubuntu 22.04中word文档转化成pdf格式 背景目标操作 背景 收到一个word文档&#xff0c;让调整一下排版后转换一下格式&#xff0c;转换成pdf格式&#xff0c;这要是在windows系统下&#xff0c;office可以直接另存为pdf文档&#xff0c;在linux系统下没有offi…

基于Springboot的船运物流管理系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的船运物流管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构…

简单对已有云服务器进行linux环境搭建以及共享服务器

前言&#xff1a; 外壳程序&#xff1a;Xshell7 云服务器&#xff1a;华为云 服务器操作系统&#xff1a;centos7 1.云服务的设置&#xff08;这里购买的华为云&#xff0c;阿里腾讯都可以&#xff09; 区域尽量选择距离所处地距离自己最近的区域。镜像这里选择的为centos7.…

考研失败, 学点Java打小工_Day3_卫语句_循环

1 编码规范——卫语句 表达异常分支时&#xff0c;少用if-else方式。   比如成绩判断中对于非法输入的处理&#xff1a; /*>90 <100 优秀>80 <90 良好>70 <80 一般>60 <70 及格<60 不及格*/Testpu…

企业培训考试系统数字化解决方案优势有哪些?

企业员工内部培训考试系统&#xff0c;用数字技术和互联网平台&#xff0c;为企业提供高效、便捷、个性化的员工培训服务的解决方案。 企业员工培训考试数字化解决方案不仅能够提供更加高效、灵活和互动的学习体验&#xff0c;还能够帮助企业实现长期的人才发展战略&#xff0…

Windows 基本操作快捷键

Windows 基本操作快捷键 1. Windows 7 专业版2. Keyboard shortcuts in WindowsReferences 1. Windows 7 专业版 2. Keyboard shortcuts in Windows Win 键是键盘上图标像窗户键。 快速切换窗口 Alt Tab 快速移到网页末 Ctrl End 快速移到网页首 Ctrl Home 锁屏 Wi…

蓝牙耳机连上电脑后播放音频一卡一卡的还有声音变形,电脑连接后总是容易断开蓝牙

蓝牙耳机连上电脑后播放音频一卡一卡的还有声音变形&#xff0c;电脑连接后总是容易断开蓝牙 问题描述问题排查可能6可能7电脑蓝牙驱动问题 结语&#xff1a; 问题描述 蓝牙耳机连上电脑后播放音频一卡一卡的还有声音变形&#xff0c;电脑连接后总是容易断开蓝牙。 关键之前我…

大数据面试题 —— Kafka

目录 消息队列 / Kafka 的好处消息队列的两种模式什么是 KafkaKafka 优缺点你在哪些场景下会选择 Kafka讲下 Kafka 的整体结构Kafka 工作原理 / 流程Kafka为什么那么快/高效读写的原因 / 实现高吞吐的原理生产者如何提高吞吐量&#xff08;调优&#xff09;kafka 消息数据积压&…

什么是组态软件?Web组态软件又是什么?

从事相关工作的对“组态软件”应该都不陌生&#xff0c;那Web组态软件又是什么呢?本文将对Web组态可视化软件&#xff08;下称“Web组态软件”&#xff09;做简单介绍&#xff0c;可视化编辑器是Web组态软件中的一个重要功能模块。除了编辑器&#xff0c;还有哪些功能模块?又…

15届蓝桥杯第二期模拟赛所有题目解析

文章目录 &#x1f9e1;&#x1f9e1;t1_求余&#x1f9e1;&#x1f9e1;思路代码 &#x1f9e1;&#x1f9e1;t2_灌水&#x1f9e1;&#x1f9e1;思路代码 &#x1f9e1;&#x1f9e1;t3_字符显示&#x1f9e1;&#x1f9e1;思路代码 &#x1f9e1;&#x1f9e1;t4_区间最大和…

yum安装mysql、数据库tab自动补全

一 centos7上面没有mysql&#xff0c;它的数据库名字叫做mariadb &#xff08;自带 5.7版本&#xff09; 一 centos7 安装mariadb [rootlocalhost ~]#yum install mariadb-server -y [rootlocalhost ~]#systemctl start mariadb.service [rootlocalhost ~]#systemctl stop f…

linux之权限管理和组

一&#xff0c;ACL权限 1.1&#xff0c;什么是acl权限&#xff1f; ACL是Access Control List的缩写&#xff0c;即访问控制列表。可以通过下列的实例来理解ACL的作用&#xff1a; 思考如何实现如下的权限控制&#xff1a; 每个项目成员在有一个自己的项目目录&#xff0c;…

SMART PLC升降温速率计算

1、单自由度增量式PID温度控制系统框图(数字量PWM输出) https://rxxw-control.blog.csdn.net/article/details/136732932https://rxxw-control.blog.csdn.net/article/details/136732932 1、温度监测1 2、温度监测2 待续...

Windows Terminal配置 美化

Windows 终端自定义提示符设置 | Microsoft Learn 安装PowerShell7 在 Windows 上安装 PowerShell - PowerShell | Microsoft Learn 设置默认为 PowerShell7 安装 在powerShell 开启远程权限 Set-ExecutionPolicy RemoteSigned -scope CurrentUserscoop 执行 iwr -useb ht…