在project模式下自定义Implementation Strategies

Implementation Settings定义了默认选项,当要定义新的implementation runs时会使用这些选项,选项的值可以在Vivado IDE中进行配置。
图1展示了“Settings”对话框中的“implementation runs”对话框。要从Vivado IDE打开此对话框,请从主菜单中选择“Tools > Settings”。
图1 Implementation Settings
在Vivado中,自定义Implementation Strategies对于优化设计和提高性能至关重要。通过修改Implementation Settings,可以调整各种参数,如优化级别、并行度、目标硬件等,以满足特定项目的需求。

一、通过Flow Navigator访问Active Run的Implementation Settings

还可以通过在Flow Navigator的顶部选择“Settings”,然后单击“Implementation”类别,来访问active implementation run的Implementation Settings。
如图1所示的Settings 对话框包含以下字段:
• Default Constraint Set
选择implementation run时默认使用的约束集。
• Report Settings
使用此菜单选择报告策略。可以从预设的报告策略中选择,或者定义自己的策略来选择在每个设计步骤中运行哪些报告。
• Incremental Compile
如果需要,指定增量编译检查点。
• Strategy
选择用于实现运行的策略。Vivado Design Suite包含一组预定义的策略。也可以创建自己的实现策略,并将更改保存为新策略以供将来使用。
• Description
描述所选的Implementation Strategies。用户定义的策略的描述可以通过输入新的描述进行更改。Vivado工具标准实现策略的描述无法更改。
通过Flow Navigator访问Implementation Settings,可以方便地查看和修改当前活动运行的配置选项。这对于调整设计流程、优化性能或解决特定问题非常有用。

二、定义Implementation Strategies

run strategy是解决设计中synthesis 或 implementation 挑战的预定义方法。
• 策略是在Vivado implementation特性中为预配置选项集定义的。
• 策略是针对特定工具和版本的。
• Vivado Design Suite的每个主要版本都包含特定于版本的策略。Vivado实现包括几个常用的策略,这些策略都经过了内部基准测试的验证。
提示:不能保存对预定义implementation strategies的更改。但是,可以复制、修改和保存预定义策略以创建自己的策略。
在Vivado中,定义implementation strategies是优化设计和提高性能的关键步骤。通过选择或创建适合项目需求的策略,可以更好地控制设计流程,并解决特定的implementation挑战。Vivado提供了多种预定义的策略,这些策略基于广泛的测试和验证,适用于各种常见的设计场景。如果需要更精细的控制或针对特定项目的优化,可以复制和修改这些预定义策略,以创建自定义策略,并保存以供将来使用。
图2 Default Implementation Strategies

三、访问当前定义的策略

要访问当前定义的运行策略,请在Vivado IDE主菜单中选择“Tools > Settings”。
要查看、复制和修改运行策略,请按照以下步骤操作:
1、从主菜单中选择“Tools > Settings”。
2、在左侧面板中选择“Strategies ”。
3、选择“Run Strategies”以查看、复制或修改运行策略**。**
run Strategies页面(如上图2所示)包含各种工具和发行版本的预定义运行策略列表。
4、在“Flow”下拉菜单中,为可用策略选择适当的Vivado Implementation版本。

将显示包含的策略列表。
5、创建新策略或复制现有策略。
要创建新策略,请单击工具栏上的“Create Strategy”按钮或从右键菜单中选择它。
要复制现有策略,请选择工具栏或弹出菜单中的“Copy Strategy”。
Vivado设计工具将执行以下操作:
a. 复制当前所选策略。
b. 将其添加到“User Defined Strategies”列表中。
c. 在对话框的右侧显示策略选项,以便进行修改。
6、为新策略提供名称和描述
Name:输入要分配给运行的策略名称。
Type:指定综合或实现。
Tool Version:指定工具版本。
Description:输入在设计运行结果表中显示的策略描述。
7、编辑各个实现步骤的Options
设计初始化(init_design)
优化设计(opt_design)
电源优化设计(power_opt_design)(可选)
放置设计(place_design)
放置后电源优化设计(power_opt_design)(可选)
放置后物理优化设计(phys_opt_design)(可选)
布线设计(route_design)
布线后物理优化设计(post_route_phys_opt_design)(可选)
写入比特流(write_bitstream)(除Versal之外的所有设备)
写入设备映像(write_device_image)(Versal设备)
提示:选择一个选项以在设计运行设置对话框的底部查看该选项的简要说明。
8、点击特定选项的右侧列以修改命令选项。
请参见下面的图3作为示例。
图3 Edit Implementation Steps
修改命令选项的步骤为:

  • 从下拉菜单中选择预定义选项。
  • 使用复选框启用或禁用某些选项。
  • 为带有文本输入字段的选项键入用户定义的值。
  • 使用文件浏览器为接受文件名和路径的选项指定文件。
  • 在implementation过程的每个步骤之前和之后插入自定义Tcl脚本(称为钩子脚本)(tcl.pre和tcl.post)。这允许您在每个implementation步骤之前或之后执行特定任务(例如,在Place Design之前和之后生成时序报告以比较时序结果)。
    注意:tcl.pre和tcl.post脚本中的相对路径是相对于它们应用的项目的适当运行目录的:
    /<project.runs>/<run_name>
    可以使用当前项目或当前运行的DIRECTORY属性在脚本中定义相对路径:
get_property DIRECTORY [current_project]
get_property DIRECTORY [current_run]

9、点击“OK”以保存新策略。
新策略将列在“User Defined Strategy”下。Vivado工具将用户定义的策略保存到以下位置:
Linux操作系统
$HOME/.Xilinx/Vivado/strategies
Windows
C:\Users\AppData\Roaming\Xilinx\Vivado\strategies
这样,就可以创建、编辑和保存自定义策略,以满足特定设计项目的需求。通过仔细调整这些策略,可以优化实现过程,从而改进设计的性能、功耗和面积等方面。

四、共享运行策略

设计团队如果希望创建和共享策略,可以将任何用户定义的策略从用户目录复制到 /Vivado//strategies 目录。其中, 是Xilinx软件的安装目录, 是发行版本号。
通过这样做,其他团队成员可以在他们自己的Vivado环境中访问和使用这些共享的策略,而无需每个用户都重新创建它们。这有助于确保团队内的设计流程一致性和可重复性。
以下是复制和共享策略的步骤:
1、找到用户定义的策略文件。这些文件通常位于用户目录下的Vivado策略文件夹中,例如在Linux系统中是 $HOME/.Xilinx/Vivado/strategies,在Windows系统中是 C:\Users<username>\AppData\Roaming\Xilinx\Vivado\strategies。
2、复制这些策略文件。可以使用文件浏览器或命令行工具来复制这些文件。
3、将策略文件粘贴到Vivado安装目录下的策略文件夹中。路径应类似于 /Vivado//strategies,其中 是Xilinx软件安装所在的目录, 是你正在使用的Vivado版本。
4、确保其他团队成员在他们的Vivado环境中也能访问到这个共享的策略目录。这通常意味着他们需要拥有读取这些文件的权限。
5、在Vivado IDE中,团队成员可以通过“Tools > Settings >Strategy”来访问这些共享的策略,并像使用其他策略一样选择和应用它们。

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

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

相关文章

Pygame基础8-碰撞

Collisions 在Pygame中&#xff0c;我们使用矩形来移动物体&#xff0c;并且用矩形检测碰撞。 colliderect检测两个矩形是否碰撞&#xff0c;但是没法确定碰撞的方向。 Rect1.colliderect(Rect2) # collision -> return Ture # else -> return Falsecollidepoint可以…

el-upload上传图片图片、el-load默认图片重新上传、el-upload初始化图片、el-upload编辑时回显图片

问题 我用el-upload上传图片&#xff0c;再上一篇文章已经解决了&#xff0c;el-upload上传图片给SpringBoot后端,但是又发现了新的问题&#xff0c;果然bug是一个个的冒出来的。新的问题是el-upload编辑时回显图片的保存。 问题描述&#xff1a;回显图片需要将默认的 file-lis…

目标检测——车牌数据集

一、重要性及意义 交通安全与管理&#xff1a;车牌检测和识别技术有助于交通管理部门快速、准确地获取车辆信息&#xff0c;从而更有效地进行交通监控和执法。例如&#xff0c;在违规停车、超速行驶等交通违法行为中&#xff0c;该技术可以帮助交警迅速锁定违规车辆&#xff0…

ABAP SHIFT-字符串移位 和 CONDENSE去除空格

文章目录 SHIFT-字符串移位 和 CONDENSE去除空格SHIFT BY n PLACES RIGHT/LEFT运行结果 SHIFT ... UP TO ...运行结果 其他的-变量后面加括号和数字SHIFT c LEFT/RIGHT DELETING运行结果 SHIFT 去除0示例程序1运行结果示例程序2运行结果 CONDENSE示例程序运行结果 SHIFT-字符串…

DHCP实验

要求&#xff1a;全网IP范围为192.168.1.0/24&#xff0c;实现全网可达&#xff0c;HTTP服务器的域名为www.baidu.com&#xff0c;实现可以通过域名访问http 第一步、规划IP地址 按如图分别给路由器、http服务器、dns服务器、客户端配置IP地址&#xff0c;并且给pc设置为DHCP。…

BCLinux-for-Euler配置本地yum源

稍微吐槽一句…… 在这片土地上&#xff0c;国产化软件的大潮正在滚滚而来&#xff0c;虽然都不是真正意义上的国产化&#xff0c;但是至少壳是国产的~~~ 之前使用的Centos7的系统&#xff0c;现在都要求统一换成BCLinux-for-Euler。说实话换了之后不太适应&#xff0c;好多用习…

【测试篇】测试用例

文章目录 前言具体设计测试用例等价类边界值场景设计法判定表&#xff08;因果图&#xff09;正交排列&#xff08;用的非常少&#xff09;错误猜测法 前言 什么是测试用例&#xff1f;&#xff1f; 测试用例是针对软件系统或应用程序的特定功能或场景编写的一组步骤&#xf…

动态规划基础

动态规划 1、动态规划的概念 简称DP,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。常常适用于有重叠子问题和最优子结构性质的问题。 简单来说,就是给定一个问题,把它拆成一个个子问题,查到子问题可以直接解决。然后把子问题答案保存起来,以减少重复计算…

spring boot后端controller中接收表单参数校验

校验分为两部分&#xff0c;一部分是前端的输入时就校验&#xff0c;一部分时后端接收参数时的校验。本文提到的是后端接收参数时的校验。这个后端校验的存在有什么意义呢&#xff1f; 比如我们设置前端在输入参数时限制输入不能为空&#xff0c;应该为3-20位非空字符&#xf…

Selenium的简单防反爬和浏览器配置

# Selenium的简单使用&#xff1a;https://zhuanlan.zhihu.com/p/557463669 # 防反爬参考&#xff1a;https://blog.csdn.net/weixin_51368459/article/details/125462178 from selenium import webdriver from selenium.webdriver.edge.options import Options# 设置浏览器驱动…

2024.04.04 健身打卡第 45 天

别让别人告诉你&#xff0c;你成不了才&#xff0c;如果你有梦想的话就要去捍卫它&#xff0c;那些一事无成的人&#xff0c;想告诉你你也成不了大器&#xff0c;如果你有理想的话&#xff0c;就要去努力实现。 2024.04.04 健身打卡第 45 天

ubuntu更换国内镜像源,下载增速

方法一&#xff1a;通过脚本更换源 1.备份原来的源 sudo cp /etc/apt/sources.list /etc/apt/sources_init.list 将原来的源保留一下&#xff0c;以后想用还可以继续用 2.更换源 sudo gedit /etc/apt/sources.list 使用gedit打开文档&#xff0c;将下面的阿里源复制进去&am…

Prometheus+grafana环境搭建rabbitmq(docker+二进制两种方式安装)(二)

搭建完Prometheusgrafana基础环境后参见&#xff1a;Prometheusgrafana环境搭建方法及流程两种方式(docker和源码包)(一)-CSDN博客&#xff0c;对我本地的一些常用法人服务进行一个监控。基本都可以根据官方文档完成搭建&#xff0c;因为docker和二进制方式安装各有优缺点。 d…

item_search-按关键字搜索淘宝商品:如何通过获取以下关键字、搜索类型、排序方式参数提升用户体验、优化营销策略、提高转化率

在淘宝购物的过程中&#xff0c;搜索功能无疑是用户与商品之间的重要桥梁。通过输入关键字&#xff0c;用户可以迅速找到所需的商品&#xff0c;而搜索结果的准确性和相关性则直接关系到用户的购物体验和满意度。因此&#xff0c;如何通过优化关键字、搜索类型和排序方式参数&a…

mbti,ESTP型人格的心理问题分析

什么是ESTP型人格 ESTP分别代表外向&#xff0c;实感&#xff0c;理智&#xff0c;依赖&#xff0c;而ESTP型人格则是一种性格上十分激进&#xff0c;喜欢冒险&#xff0c;并且总是因为情绪起伏过大&#xff0c;而一下子做出应激行为的相对冒险的人格。具有ESTP型人格的人一般…

『python爬虫』巨量http代理使用 每天白嫖1000ip(保姆级图文)

目录 注册 实名得到API链接和账密 Python3requests调用Scpay总结 欢迎关注 『python爬虫』 专栏&#xff0c;持续更新中 欢迎关注 『python爬虫』 专栏&#xff0c;持续更新中 注册 实名 注册巨量http 用户概览中领取1000ip,在动态代理中使用.用来测试一下还是不错的 得到AP…

MySQL - 基础二

6、表的增删改查 CRUD : Create(创建), Retrieve(读取)&#xff0c;Update(更新)&#xff0c;Delete&#xff08;删除&#xff09; 6.1、Create 语法&#xff1a; INSERT [INTO] table_name[(column [, column] ...)]VALUES (value_list) [, (value_list)] ...value_list: v…

PAC性能开销权衡及优化措施

PAC性能开销&#xff1f;如何进行优化&#xff1f;本博客探讨这些问题。

「精细化管理」某物业集团精细化管理咨询项目纪实

实现工作例行化、定时化、程序化与可视化企业重视绩效考核&#xff0c;却总感觉考核不到点上&#xff1b;企业重视规划职责&#xff0c;却总感觉部门间职责不清&#xff1b;企业重视激励&#xff0c;却总感觉难以真正激励员工。到底是哪里出了问题&#xff1f;华恒智信指出&…

KIl5:Stm32L071下载出现flash download faild “cortex-m0+“的解决方法

首先看看有没有芯片&#xff0c;没有芯片下载一下 下载并在device选择对应的芯片 选择调试器 选择flash