vivado 增量实施

增量实施

增量实现是指增量编译的实现阶段设计流程:

•通过重用参考设计中的先前布局和布线,保持QoR的可预测性。

•加快地点和路线的编制时间或尝试最后一英里的计时关闭。

下图提供了增量实现设计流程图。该图还说明了增量合成流程。有关增量的更多详细信息合成流程,请参阅Vivado Design Suite用户指南中的“增量合成”部分:合成(UG901)。

增量实施术语

增量流使用以前运行的变体以及当前设计变体。在里面为了保持清晰的理解,使用了以下术语:

参考设计

参考设计优选地是来自相同的最近迭代的完全路由检查点设计要使用不同的设计变体,重要的是参考设计与增量设计相匹配。虽然可以将放置的检查点用作作为参考,与路由检查点相比,效益会降低;计时将不那么一致,编译时间会更高。参考设计必须与设备相匹配,建议与工具版本相匹配但不是一个严格的要求。

增量设计

增量设计是要通过实现工具运行的更新设计。它可以包括RTL更改、网表更改或两者兼而有之,但这些更改通常应小于5%。在发出read_checkpoint-incremental命令之前,不知道正在使用增量实现流。因此,重要的是不要引入当与参考设计进行了比较。允许更改约束条件,但约束条件的普遍收紧将产生重大影响放置和路由,并且通常最好添加到增量流之外。运行增量地点和路线将增量设计加载到内存中后,通过加载使用read_checkpoint-incredential<dcp>命令参考设计检查点。Vivado读取参考检查点后,将采取以下操作:

•与参考运行中的物理优化相匹配的物理优化是在自动增量设计。

•将增量设计中的网表与参考设计进行比较,以确定匹配细胞和网。

•重复使用参考设计检查点的放置,将匹配单元格放置在增量设计。

•路由被重新用于在每个负载引脚的基础上路由匹配网络。如果负载销由于如果网表发生更改,则其路由将被丢弃,否则将被重用。有可能部分重复使用的路由。如果它提高了性能或有助于可路由性。参考设计和当前设计之间不匹配的设计对象为在增量放置完成后放置,并在布线完成后布线。

增量模式

当用户选择增量模式时,该工具可能仍然无法运行完整的增量流,如果它确定设计更改过多。增量实施通常运行如果细胞重复使用率高于80%。所选流量为:

•使用增量优化算法的完整位置和路线。放置和布线尽可能多地重复使用。目标WNS由以下两者的组合确定引用检查点和指令。根据提供的指令选择指令到read_checkpoint-incremental-directional<directional>开关。

•使用默认算法的完整位置和路线。放置和布管不会重复使用。目标WNS始终为0.000。指令取自提供给以下任意一个的指令开关place_design-指令<directive>或route_design-指令<指令>命令。

这一决定是在设计修改和小区匹配过程之后做出的read_checkpoint-增量命令。由于此评估是在更改后进行的设计是为了改进匹配,因此它与运行纯默认流不同这些变化是持久的。当进入增量模式时,可以看到以下消息:

INFO: [Place 46-42] Incremental Compile tool flow is being used. Default
place and route algorithms are bypassed.

自动增量

自动增量实现旨在利用的更快编译时间增量实施,同时不影响WNS等结果的质量。它是的子集具有更严格控制的完整增量流量,以确保性能不会降低。它有效符合以下标准:

1.仅当WNS>=-0.250 ns时才更新参考检查点。这只是主动的以项目模式管理。在非项目流中,用户必须遵循下面提供的脚本。

2.在read_checkpoint-incremental期间为WNS和重用设置更高的目标阶段

•94%的细胞匹配

•90%的净匹配

•WNS>=-0.250 ns

使用以下命令激活流:

read_checkpoint -incremental -auto_incremental <reference>.dcp

更新检查点时,以下脚本将确保WNS没有降级超出可接受的限度:

if {[get_property SLACK [get_timing_path]] > -0.250} {
file copy -force <postroute>.dcp <reference>.dcp
}

增量指令

有三个指令可以控制增量流的行为。增量指令使用命令设置:

read_checkpoint -incremental -directive <directiveName> <reference>.dcp

运行时间优化

RuntimeOptimized指令试图重复使用来自参考运行尽可能。计时目标将与参考运行相同。如果参考运行的WNS为-0.050,则增量运行不会尝试关闭此时间设计,而且也以-0.050为目标。这只会影响设置时间。这是默认行为当没有指定指令时。

计时结束

TimingClosure指令将重用引用中的放置和布线,但它会撕毁不符合时间安排的路径,并尝试关闭它们。运行一些运行时密集型算法以获得尽可能多的时间改进,但由于位置很大程度上被提前放弃收益有限。该技术在参考WNS>-0.250 ns的设计中是有效的。

注意:为了获得更多的关闭时间,请运行report_qor_advances以生成自动设计增强。

快的

快速是一种特殊模式,在放置和路线期间不调用计时器,而是使用相关逻辑的放置作为指导。这是最快的模式,但不适用于大多数设计。设计需要WNS>1.000 ns才能有效。这些通常是ASIC仿真或原型设计。

注意:在2019.1及之前的版本中,通过的指令映射实现了相同的行为place_design和route_design。Explore指令已映射到TimingClosure,Quick映射到映射到RuntimeOptimized的Quick和其他指令。

小心!从2019.1及更早版本升级的用户,他们正在为指定Explore或Quick指令place_design将需要指定增量指令以实现中的等效功能2020.1.

其他选项

使用read_checkpoint-incremental时,以下选项可用命令

-auto_incremental选项

这将启用自动增量中所述的自动增量流。

-fix_objects Option
-fix_objects <cell objects>

-fix_objects选项可用于锁定单元格的子集。这些细胞不会被增量放置和布线工具。-fix_objects选项仅适用于匹配并且被识别用于小区重用。

示例

以下是-fix_objects用法的示例:

•要重用所有对象并仅修复块内存位置,请执行以下操作:

read_checkpoint -incremental routed.dcp -fix_objects [all_rams]
• To reuse all objects and fix only DSP placement:
read_checkpoint -incremental routed.dcp -fix_objects [all_dsps]

-force_incr选项

-force_incr选项可用于强制增量实现流而与递增标准检查无关。如果未指定增量实现流可能退出并以非增量流或默认流继续。可以使用此选项,而不是修改增量实现配置更新中的小区匹配、网络匹配和WNS的最小阈值的值自动递增流量。

注意:-force_incr仅与-increative开关一起使用。

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

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

相关文章

SLAM 求解IPC算法

基础知识&#xff1a;方差&#xff0c;协方差&#xff0c;协方差矩阵 方差&#xff1a;描述了一组随机变量的离散程度 方差 每个样本值 与 全部样本的平均值 相差的平方和 再求平均数&#xff0c;记作&#xff1a; 例如&#xff1a;计算数字1-5的方差&#xff0c;如下 去中心化…

关系型数据库mysql(3)索引

目录 一.索引的概念 二.索引的作用 三.创建索引的原则依据 四.索引的分类 五.索引的创建 5.1 普通索引 5.1.1 直接创建索引 5.1.2 修改表方式创建 5.1.3 创建表的时候指定索引 5.2 唯一索引 5.2.1 直接创建唯一索引 5.2.2 修改表方式创建 5.2.3 创建表的时候指…

ThreaTrace复现记录

1. 环境配置 服务器环境 需要10.2的cuda版本 conda环境 包的版本&#xff1a; python 3.6.13 pytorch 1.9.1 torch-cluster 1.5.9 torch-scatter 2.0.9 torch-sparse 0.6.12 torch-spline-conv 1.2.1 torch-geometric 1.4.3 环境bug 这里环境搭建好以后&#xff0c;就可以正…

osgEarth学习笔记2-第一个Osg QT程序

原文链接 上个帖子介绍了osgEarth开发环境的安装。本帖介绍我的第一个Osg QT程序。 下载 https://github.com/openscenegraph/osgQt 解压&#xff0c;建立build目录。 使用Cmake-GUI Configure 根据需要选择win32或者x64&#xff0c;这里我使用win32. 可以看到include和lib路…

jQuery 基础

文章目录 1. jQuery 概述1.1 JavaScript 库1.2 jQuery 概念1.3 jQuery 优点 2. jQuery 基本使用2.1 下载2.2 使用步骤2.3 jQuery 的入口函数2.4 jQuery 的顶级对象 $2.5 DOM 对象和 jQuery 对象DOM 对象和 jQuery 对象相互转换方法 1. jQuery 概述 1.1 JavaScript 库 1.2 jQue…

Cesium:按行列绘制3DTiles的等分线

作者:CSDN @ _乐多_ 本文将介绍如何使用 Cesium 引擎根据模型的中心坐标,半轴信息,绘制 3DTiles 对象的外包盒等分线。 外包盒是一个定向包围盒(Oriented Bounding Box),它由一个中心点(center)和一个包含半轴(halfAxes)组成。半轴由一个3x3的矩阵表示,这个矩阵是…

【毕设级项目】基于ESP8266的家庭灯光与火情智能监测系统——文末源码及PPT

目录 系统介绍 硬件配置 硬件连接图 系统分析与总体设计 系统硬件设计 ESP8266 WIFI开发板 人体红外传感器模块 光敏电阻传感器模块 火焰传感器模块 可燃气体传感器模块 温湿度传感器模块 OLED显示屏模块 系统软件设计 温湿度检测模块 报警模块 OLED显示模块 …

DashVector - 阿里云向量检索服务

DashVector 文章目录 DashVector一、关于 DashVector二、使用 DashVector 前提准备1、创建Cluster&#xff1a;2、获得API-KEY3、安装最新版SDK 三、快速使用 DashVector1. 创建Client2. 创建Collection3、插入Doc4、相似性检索5、删除Doc6. 查看Collection统计信息7. 删除Coll…

hcia datacom课程学习(3):http与https、FTP

1.超文本传输协议&#xff1a;http与https &#xff08;1&#xff09;用来访问www万维网。 wwwhttp&#xff0b;html&#xff0b;URLweb &#xff08;2&#xff09;它们提供了一种发布和接受html界面的方法&#xff1a;当在网页输入URL后&#xff0c;从服务器获取html文件来…

供应链投毒预警 | 恶意Py组件tohoku-tus-iot-automation开展窃密木马投毒攻击

概述 上周&#xff08;2024年3月6号&#xff09;&#xff0c;悬镜供应链安全情报中心在Pypi官方仓库&#xff08;https://pypi.org/&#xff09;中捕获1起新的Py包投毒事件&#xff0c;Python组件tohoku-tus-iot-automation 从3月6号开始连续发布6个不同版本恶意包&#xff0c…

【nfs报错】rpc mount export: RPC: Unable to receive; errno = No route to host

NFS错误 问题现象解决方法 写在前面 这两天搭建几台服务器&#xff0c;需要使用nfs服务&#xff0c;于是六台选其一做服务端&#xff0c;其余做客户端&#xff0c;搭建过程写在centos7离线搭建NFS共享文件&#xff0c;但是访问共享时出现报错&#xff1a;rpc mount export: RPC…

嵌入式-4种经典继电器驱动电路-单片机IO端口/三极管/达林顿管/嵌套连接

文章目录 一&#xff1a;继电器原理二&#xff1a;单片机驱动电路三&#xff1a;经典继电器驱动电路方案3.1 继电器驱动电路方案一&#xff1a;I/O端口灌电流方式的直接连接3.1.1 方案一的继电器特性要求3.1.2 方案一可能会损坏I/O口 3.2 继电器驱动电路方案二&#xff1a;三极…

el-table树形数据序号排序处理

1&#xff0c;用下面这个代码可以实现基本表格的序号排序 <el-table-column label"序号" width"50px" align"center"><template slot-scope"scope">{{ scope.$index 1 }}</template></el-table-column>2&…

5G安全技术新突破!亚信安全5G安全迅龙引擎正式发布

5G专网应用飞速增长&#xff1a;2020年5G专网数量800个&#xff0c;2021年2300个&#xff0c;2022年5325个&#xff0c;2023年已经超过16000个&#xff0c;5G与垂直行业的融合快速加深&#xff0c;5G带来的变革正加速渗透至各行各业。 5G网络出现安全问题&#xff0c;将是异常严…

idea2023 运行多 springboot 实例

概要 1、修改idea运行多实例&#xff08;本地测试负载&#xff09; 你可能用到其他 1、改造项目缓存token 至redis 支持负载均衡部署 SpringSecurity6.0RedisJWTMP基于token认证功能开发&#xff08;源码级剖析可用于实际生产项目&#xff09;_springsecurity redis管理token…

Odoo17免费开源ERP开发技巧:如何在表单视图中调用JS类

文/Odoo亚太金牌服务开源智造 老杨 在Odoo最新V17新版中&#xff0c;其突出功能之一是能够构建个性化视图&#xff0c;允许用户以独特的方式与数据互动。本文深入探讨了如何使用 JavaScript 类来呈现表单视图来创建自定义视图。通过学习本教程&#xff0c;你将获得关于开发Odo…

雷池 WAF 社区版:下一代 Web 应用防火墙的革新

黑客的挑战 智能语义分析算法&#xff1a; 黑客们常利用复杂技术进行攻击&#xff0c;但雷池社区版的智能语义分析算法能深入解析攻击本质&#xff0c;即使是最复杂的攻击手法也难以逃脱。 0day攻击防御&#xff1a; 传统防火墙难以防御未知攻击&#xff0c;但雷池社区版能有效…

创建一个electron-vite项目

前置条件&#xff1a;非常重要&#xff01;&#xff01;&#xff01; npm: npm create quick-start/electronlatest yarn: yarn create quick-start/electron 然后进入目录&#xff0c;下载包文件&#xff0c;运行项目 到以上步骤&#xff0c;你已经成功运行起来一个 electr…

迷茫了!去大厂还是创业?

大家好&#xff0c;我是麦叔&#xff0c;最近我创建了一个 学习圈子 有球友在 星球 里提问。 大厂的layout岗位和小厂的硬件工程师岗位&#xff0c;该如何选择&#xff1f; 这个问题我曾经也纠结过&#xff0c;不过现在的我&#xff0c;I am awake&#xff01; 肯定是有大点大。…

【研发日记】Matlab/Simulink技能解锁(四)——在Simulink Debugger窗口调试

文章目录 前言 Block断点 分解Block步进 Watch Data Value 分析和应用 总结 前言 见《【研发日记】Matlab/Simulink技能解锁(一)——在Simulink编辑窗口Debug》 见《【研发日记】Matlab/Simulink技能解锁(二)——在Function编辑窗口Debug》 见《【研发日记】Matlab/Simul…