关于Vivado的实施过程、SDC和XDC约束支持、Vivado实施子流程、Tcl API支持脚本

news2024/11/18 4:41:01

关于Vivado的实施过程

AMD Vivado™设计套件可实现以下AMD设备体系结构:AMD Versal™自适应计算加速平台(自适应SoC),AMDUltraScale™、AMD UltraScale+™和AMD 7系列FPGA。各种设计来源如下支持,包括:

•RTL设计

•网表设计

•以IP为中心的设计流程

图1:Vivado Design Suite高级设计流程显示了Vivado工具的流程。

Vivado实现包括将网表放置并路由到设备上所需的所有步骤资源,在设计的逻辑、物理和时间限制内。有关Vivado工具支持的设计流程的更多信息,请参阅Vivado设计套件用户指南:设计流程概述(UG892)。

SDC和XDC约束支持

Vivado设计套件的实现是一个定时驱动的流程。它支持行业标准Synopsys设计约束(SDC)命令,用于指定设计要求和限制,像以及Xilinx设计约束格式(XDC)的附加命令。

Vivado实施子流程

Vivado设计套件的实现过程将逻辑网表和约束转换为放置和路由的设计,为比特流生成做好准备。实施过程步行通过以下子过程:

1.Opt设计:优化逻辑设计,使其更容易安装到目标AMD设备上。

2.功率选择设计(可选):优化设计元素以降低的功率需求目标AMD设备。

3.放置设计:将设计放置到目标AMD设备上并执行扇出复制以改进时机。

4.放置后功率选择设计(可选):额外优化,以降低放置后的功率安置

5.放置后Phys Opt设计(可选):使用估计的时间优化逻辑和放置基于位置。包括复制高扇出驱动程序。

6.路由设计:将设计路由到目标AMD设备上。

7.路由后物理选择设计(可选):使用实际路由优化逻辑、布局和路由路由延迟。

8.写入比特流:为AMD设备配置生成比特流。通常,比特流生成遵循实现。

有关写入比特流的更多信息,请参阅生成比特流一节或Vivado Design Suite用户指南中的设备映像:编程和调试(UG908)。

注:Vivado设计套件支持模块分析,这是设计的一部分的实现以评估性能。跳过此流的I/O缓冲区插入,以防止I/O的过度利用。对于更多信息,请在Vivado Design Suite用户指南:分层设计中搜索“模块分析”(UG905)。

使用Vivado Tools的多线程

在多处理器系统上,Vivado工具使用多线程来加快某些进程,包括DRC报告、静态时序分析、布局和路由。的最大数量同时执行的线程会有所不同,这取决于处理器和任务的数量。最大值按任务划分的线程数为:

•DRC报告:8

•静态时序分析:8

•位置:8

•路由:8

•物理优化:8

默认的最大同时线程数取决于操作系统。对于Windows系统,极限为2;对于Linux系统,默认值为8。可以使用更改限制名为general.maxThreads的参数。要更改限制,请使用以下Tcl命令:

Vivado% set_param general.maxThreads <new limit>

其中,新的限制必须是从1到8(包括1到8)的整数。

Tcl在Windows系统上的示例:

Vivado% set_param general.maxThreads 2

这意味着所有任务都被限制为两个线程,而不考虑处理器数量或任务正在执行。如果系统至少有八个处理器,则可以将限制设置为8并允许每个任务使用最大线程数。

Vivado% set_param general.maxThreads 8

总之,同时执行的线程数是以下值中最小的一个:

•处理器的最大数量

•任务的线程数限制

•螺纹的一般限制

平行管路

Vivado通过提供launch_runs-jobs选项来支持并行启动设计运行指定同时运行的次数。每个同时运行是一个独立的过程,需要其自己的CPU和存储器资源。分配足够的资源来处理总的峰值计算需求是很重要的。例如,考虑一个设计运行,它通常报告20 GB RAM的峰值使用general.maxThreads设置为8。并行启动4次类似的运行需要32个处理器核心和大约80 GB的RAM,以避免由于竞争而导致的性能下降4个进程的计算资源。

Tcl API支持脚本

Vivado设计套件包括一个工具命令语言(Tcl)应用程序编程接口(API)。Tcl API支持所有设计流的脚本编写,允许您自定义设计流程以满足您的特定要求。

注意:有关Tcl命令的更多信息,请参阅Vivado Design Suite Tcl命令参考指南(UG835)或键入<command>-help。

按设计过程导航内容

AMD自适应计算文档是围绕一组标准设计组织的流程,帮助您找到当前开发任务的相关内容。所有AMD Versal™自适应SoC设计过程可以找到设计中心和设计流助手材料在Xilinx.com网站上。本文件涵盖以下设计过程:

•硬件、IP和平台开发:为硬件创建PL IP块平台,创建PL内核,功能模拟,并评估AMD Vivado™时序,资源使用和电源关闭。还包括开发系统的硬件平台整合。本文档中适用于此设计过程的主题包括:

•Vivado ECO Flow

•配置、实施和验证IP

•自动流水线

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

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

相关文章

WebGPU vs. 像素流

在构建 Bzar 之前&#xff0c;我们讨论过我们的技术栈是基于在云上渲染内容的像素流&#xff0c;还是基于使用设备自身计算能力的本地渲染技术。 由于这种选择会极大地影响项目的成本、可扩展性和用户体验&#xff0c;因此在开始编写一行代码之前&#xff0c;从一开始就采取正确…

typeorm-入门

简述 typeorm是一个数据库orm框架&#xff0c;在nestjs官网中有提到&#xff0c;可以充分发挥利用typescript的特性&#xff0c;当然也支持js其中涉及的概念包括 DataSource 数据源&#xff0c;Connection 连接数据库Entity 实体&#xff0c;实体类映射数据库表Relation 关系…

30个炫酷光效视频转场PR模板剪辑素材下载

视频转场Premiere模板&#xff0c;包含30个炫酷光效视频转场过渡效果PR项目模板下载。 适用软件&#xff1a;Premiere Pro 2023 | 分辨率&#xff1a;3840x2160 (4K) | 无需插件 | 文件大小&#xff1a;56.33MB 来自PR转场&#xff0c;下载地址&#xff1a;https://prmuban.com…

Windows下Node.js安装保姆级教程

一、Node.js 下载 访问Node.js官网&#xff0c;点击下载Node.js 下载完成后即可在下载文件中查看安装包 二、安装 一&#xff09;点击安装包开始安装&#xff0c;进入Weclcome界面点击Next 二&#xff09;勾选同意协议&#xff0c;点击Next 三&#xff09;根据需要选择安装路…

Neo4j安装 Linux:CentOS、openEuler 适配langchain应用RAG+知识图谱开发 适配昇腾910B

目录 Neo4j下载上传至服务器后进行解压运行安装JAVA再次运行在windows端打开网页导入数据 Neo4j下载 进入Neo4j官网下载页面 向下滑动找到 Graph Database Self-Managed 选择 社区版&#xff08;COMMUNITY&#xff09; 选择 Linux / Mac Executable Neo4j 5.17.0 (tar) 单机下…

Linux第72步_使用“新字符设备的一般模板”编写LED驱动

使用“新字符设备的一般模板”编写LED驱动&#xff0c;使用寄存器直接开关灯。 1、创建LED目录 输入“cd /home/zgq/linux/Linux_Drivers/回车” 切换到“/home/zgq/linux/Linux_Drivers/” 输入“ls回车”&#xff0c;查看“/home/zgq/linux/Linux_Drivers/” 输入“mkdi…

egg如何写单元测试

优秀的代码需要有单元测试进行质量保证&#xff0c;每个测试用例都给应用的稳定性提供了一层保障。 测试目录结构 我们约定 test 目录为存放所有测试脚本的目录&#xff0c;测试所使用到的 fixtures 和相关辅助脚本都应该放在此目录下。 测试文件的目录和我们需要测试的文件目…

unicloud where 使用

where介绍 在uniCloud中&#xff0c;WHERE是一个用于指定查询条件的关键字。它允许用户根据特定的条件来筛选和查询云数据库中的数据。WHERE语句的基本语法格式是WHERE condition&#xff0c;其中condition表示查询条件&#xff0c;可以是一个或多个逻辑表达式组成的条件。 在…

深入了解304缓存原理:提升网站性能与加载速度

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

探索HTTP协议:网络通信的基石

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

消息队列-kafka-消息发送流程(源码跟踪) 与消息可靠性

官方网址 源码&#xff1a;https://kafka.apache.org/downloads 快速开始&#xff1a;https://kafka.apache.org/documentation/#gettingStarted springcloud整合 发送消息流程 主线程&#xff1a;主线程只负责组织消息&#xff0c;如果是同步发送会阻塞&#xff0c;如果是异…

web基础04-flex布局

1.概述 Flexbox​ 是 ​flexible box​ 的简称&#xff08;注&#xff1a;意思是“​灵活的盒子容器​”&#xff09;&#xff0c;是 CSS3 引入的新的布局模式。 它决定了元素如何在页面上排列&#xff0c;使它们能在不同的屏幕尺寸和设备下可预测地展现出来。 它之所以被称…

C++错误总结(1)

1.定义函数类型时&#xff0c;如果没有返回值&#xff0c;用void void swap(int &x, int &y){ int tem x; x y; y tem; } 2.输入时&#xff0c;不加换行符 cin >> a >> b >> c >> endl ;(红色标记的是错误的部分) 3.【逆序出入…

【LeetCode】升级打怪之路 Day 16:二叉树题型 —— 二叉树的构造

今日题目&#xff1a; 654. 最大二叉树105. 从前序与中序遍历序列构造二叉树106. 从中序与后序遍历序列构造二叉树889. 根据前序和后序遍历构造二叉树 目录 LC 654. 最大二叉树 【easy】 Problem&#xff1a;根据遍历序列来还原二叉树 【classic】 ⭐⭐⭐⭐⭐LC 105. 从前序与中…

华为设备小型园区网方案(有线+无线+防火墙)

&#xff08;一&#xff09;配置有线部分 1.配置LSW2 &#xff08;1&#xff09;创建相关vlan [LSW2]vlan batch 10 3000 &#xff08;2&#xff09;配置连接LSW1的Eth-Trunk1&#xff0c;透传VLAN 10 3000 [LSW2]int Eth-Trunk 1 [LSW2-Eth-Trunk1]port link-type trunk [LSW2…

微信小程序(五十四)腾讯位置服务示范(2024/3/8更新)

教程如下&#xff1a; 上一篇 1.先在官网注册一下账号&#xff08;该绑定的都绑定一下&#xff09; 腾讯位置服务官网 2.进入控制台 3.创建应用 3. 额度分配 4.下载微信小程序SDK 微信小程序SDK下载渠道 5.解压将俩js文件放在项目合适的地方 6.加入安全域名or设置不验证合…

自动化工程师涨薪难,原因出在这里

大家好&#xff0c;今天说说真实的工控行业&#xff0c;摒弃虚无的鸡汤&#xff0c;聊点实在的。 举个例子&#xff0c;某工做销售&#xff0c;卖电控器件&#xff0c;眼见PLC收入可观&#xff0c;开始感到压力。于是&#xff0c;他下定决心学PLC&#xff0c;报了培训班。毕业后…

Flink并行度

1、Task flink中每个算子就是一个Task&#xff0c;比如flatMap、map、sum是一个Task。 2、SubTask 算子有几个并行度SubTask的数量就是几&#xff0c;比如 3、算子并行度 算子并行度指的是每个算子的并行度&#xff0c;可用env.setParallelism(1);设置所有算子的并行度&am…

防御保护--IPSEC VPPN实验

实验拓扑图 实验背景&#xff1a;FW1和FW2是双机热备的状态。 实验要求&#xff1a;在FW5和FW3之间建立一条IPSEC通道&#xff0c;保证10.0.2.0/24网段可以正常访问到192.168.1.0/24 IPSEC VPPN实验配置&#xff08;由于是双机热备状态&#xff0c;所以FW1和FW2只需要配置FW1…