vivado 使用Vitis HLS源、使用模型生成器源、使用系统生成器源

使用Vitis HLS源

AMD Vitis™ 高级综合(HLS)工具将C规范转换为寄存器传输级(RTL)实现,您可以将其合成到AMD设备中。你可以写CC、C++或SystemC中的规范,AMD设备提供了大规模并行与传统处理器相比,该体系结构在性能、成本和功耗方面都有优势。Vitis HLS的输出包括硬件描述语言中的RTL实现文件(HDL)格式,可以在Vivado合成中合成或打包为IP块以供使用来自IP目录。有关更多信息,请参阅《Vitis高级合成用户指南》(UG1399)。

使用模型生成器源

Model Composer是一种基于模型的设计工具,可实现快速的设计探索和通过自动代码生成加速AMD设备的生产。模型Composer是作为AMD工具箱构建的,适用于MathWorks Simulink®软件MATLAB®软件的附加产品,提供交互式图形环境用于建模、模拟、分析和验证系统级设计。可以使用模型生成器中的块在模型生成器中表达算法库以及用户导入的自定义块。Model Composer转换您的算法使用自动优化并利用高级Vitis HLS的合成工艺。使用Vivado Design将这些打包的IP添加到设计中套件或使用IP集成商将IP集成到平台中(例如,具有AMD Zynq™ 设备、DDR3 DRAM和运行o的软件堆栈

使用系统生成器源

AMD DSP系统生成器是一个结合RTL源文件、Simulink和MATLAB软件模型,并将DSP系统的C/C++组件集成到单个仿真和实施环境。有关使用System Generator的更多信息,请参阅Vitis Model Composer用户指南(UG1483)。系统生成器设计通常是包含在更大的HDL设计中的子设计。推荐的流程是将DSP模块封装为Vivado Design Suite中的IP核心,添加到AMD IP目录中,并作为子模块集成到设计层次结构的任何级别,如“使用IP源”中所述,或导入到设计的顶层。这让Vivado IDE管理FPGA设计的项目,同时将DSP模块处理为在System Generator中开发和管理的IP源。有关更多信息,请参阅《Vitis Model Composer用户指南》(UG1483)中的IP目录汇编。

编辑源文件

Vivado IDE提供了一个文本编辑器,用于创建或修改RTL、XDC、Tcl和其他文本来源。编辑Verilog、VHDL、XDC和Tcl文件时,文本编辑器是上下文敏感的,并且使用颜色编码来区分关键字和结构。它是一个可配置的集成文本编辑器,支持语法高亮显示和动态检查,帮助处理错误和警告、代码折叠、代码完成和文件比较。请参见中的使用文本编辑器Vivado Design Suite用户指南:使用Vivado IDE(UG893)获取特定信息文本编辑器中的命令。您可以同时打开多个文件,并单击每个打开文件的选项卡以在文件夹。在打开文件的选项卡中,Vivado IDE在的文件名后面附加一个星号(*)需要保存的已修改文件。要保存文件,请使用以下方法之一:

•选择“文件”>“文本编辑器”>“保存文件”。

•在Vivado IDE文本编辑器中,从右键菜单中选择“保存文件”。

•在Vivado IDE文本编辑器中,使用“保存文件”工具栏按钮。

注意:如果您试图关闭包含未保存更改的文件,Vivado IDE会提示您保存变化。

提示:使用“另存为”命令将源文件保存到新位置。使用“在文件中查找/替换”命令编辑设计源文件时,可能需要查找特定的对象或对象实例。您可以使用“查找”或“在文件中查找”在开源文件或选定的源文件集,或在文件中替换以查找和替换文本字符串。你可以执行以下操作:

•输入任何文本字符串,包括通配符(*、?、#、+)或正则表达式作为搜索条件。

•使用筛选选项搜索源文件、约束文件和报告文件。

使用HDL语言模板

Vivado IDE为包括AMD在内的许多Verilog、VHDL和XDC结构提供模板参数化宏(XPM)和库基元。要查看模板,请执行以下操作:

1.在Vivado IDE文本编辑器中,选择“语言模板”工具栏按钮。

2.选择工具 → 语言模板。出现语言模板窗口,其中包含Verilog、VHDL、SystemVerilog、,

XDC和调试。

选择模板后,可以使用中弹出菜单中的“插入模板”命令文本编辑器。选择此命令会将当前选定的模板文本复制到文件中在光标的当前位置。或者,您可以高亮显示,然后复制并从“语言模板”窗口粘贴所需的文本。有关支持的命令,请参阅Vivado Design Suite用户指南中的此链接:使用Vivado IDE(UG893)。

使用Xilinx参数化宏

XPM是针对HDL流中常见用例(如RAM或ROM、时钟域交叉和FIFO。XPM是与一起交付的SystemVerilog HDL代码Vivado Design Suite,可以在中找到/软件的data/ip/xpm文件夹安装它们可以被认为是参数化的IP,参数的默认值为可以更改以满足设计要求。

XPM的类型包括:

•具有各种RAM和ROM存储结构的XPM_MEMORY

•具有各种安全时钟域交叉(CDC)逻辑实现的XPM_CDC

•用于同步和异步FIFO结构的XPM_FIFO启用Xilinx参数化宏使用项目模式时,Vivado工具将解析添加到项目中的文件,并将自动识别XPM。但是,当在非项目模式下使用XPM时在读取或导入源文件之前,必须发出auto_detect_xmm命令。

使用XPM

您可以在设计中使用任何XPM语言模板。特定的可用参数XPM在语言模板窗口中显示的实例化模板中进行了解释。选择并复制实例化模板的内容,并将其粘贴到您自己的源文件中,或者使用文本编辑器弹出菜单中的“插入模板”命令。你不需要将实例化模板的注释复制到设计源文件中。

您可以根据需要更改实例名称和接线端口,以将XPM实例适合您的根据作为注释提供的文档设计和修改参数/泛型在语言模板中。

重要!确保阅读并遵守XPM语言模板中的所有代码注释正确使用XPM。下图显示了XPM_CDC实例的示例。

一些XPM提供的约束是在中的Tcl文件中定义的/数据/ip/xpm/特定xpm的<xpm>/tcl文件夹。约束在合成过程中应用,并出现在合成日志文件以及所处理的其他约束。约束可以具有依赖于存在于连接到XPM的网络上的时钟对象。这是因为一些XPM查询时钟的周期属性以设置约束。如果时钟对象是如果不存在,则生成严重警告。重要!使用report_compile_order命令时,中XPM的Tcl约束文件除非您打开了详细的、综合的或实现的设计,否则设计不会显示出来。有关各种XPM及其参数化选项的详细信息,请参阅UltraScale中的此链接体系结构库指南(UG974),或Vivado Design Suite 7系列FPGA和Zynq-7000 SoC图书馆指南(UG953)。

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

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

相关文章

04.SpringCloud网关-gateway

1.Gateway服务网关 Spring Cloud Gateway 是 Spring Cloud 的一个全新项目&#xff0c;该项目是基于 Spring 5.0&#xff0c;Spring Boot 2.0 和 Project Reactor 等响应式编程和事件流技术开发的网关&#xff0c;它旨在为微服务架构提供一种简单有效的统一的 API 路由管理方式…

LeetCode 0082.删除排序链表中的重复元素 II:模拟

【LetMeFly】82.删除排序链表中的重复元素 II&#xff1a;模拟 力扣题目链接&#xff1a;https://leetcode.cn/problems/remove-duplicates-from-sorted-list-ii/ 给定一个已排序的链表的头 head &#xff0c; 删除原始链表中所有重复数字的节点&#xff0c;只留下不同的数字…

如何正确使用数据库读写分离

背景 在应用系统发展的初期&#xff0c;我们并不知道以后会发展成什么样的规模&#xff0c;所以一开始不会考虑复杂的系统架构&#xff0c;复杂的系统架构费时费力&#xff0c;开发周期长&#xff0c;与系统发展初期这样的一个定位是不吻合的。所以&#xff0c;我们都会采用简…

Day6 Qt

思维导图 1.数据库增删改查 头文件widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QSqlDatabase> //数据库管理类 #include <QSqlQuery> // 执行sql语句类 #include <QSqlRecord> //数据库记录类 #include <QSqlErro…

什么软件可以做报表?

数据报表&#xff0c;是商业领域中不可或缺的一部分&#xff0c;它通过表格、图表等形式&#xff0c;将复杂的数据进行整理、分析并呈现出来&#xff0c;帮助用户更好地理解数据的趋势和关系。数据报表不仅展示了业务现状和趋势&#xff0c;还支持多种数据分析和挖掘功能&#…

智慧康养项目:智能技术与产品提升老年人生活品质

智慧康养项目需要集成的一些独特的技术和产品&#xff0c;其中包括&#xff1a; 智能健康监测设备&#xff1a;我们开发了一款能够实时监测老年人身体状况的智能健康监测设备&#xff0c;包括血压、血糖、心率等指标。该设备通过数据分析处理&#xff0c;能够提供个性化的健康…

Java SE入门及基础(14)

二重循环 1. 什么是二重循环 二重循环就是一个循环结构中又包含另外一个循环结构 while ( 外层循环条件 ){ //外层循环操作 while ( 内层循环条件 ){ //内层循环操作 } //外层循环操作 } while ( 外层循环条件 ){ //外层循环操作 for ( 循环变量初始化 ; 内层循环条…

案例131:基于微信小程序的家庭事务管理系统

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

如何正确使用数据库的读写分离

本文已收录至我的个人网站&#xff1a;程序员波特&#xff0c;主要记录Java相关技术系列教程&#xff0c;共享电子书、Java学习路线、视频教程、简历模板和面试题等学习资源&#xff0c;让想要学习的你&#xff0c;不再迷茫。 背景 在应用系统发展的初期&#xff0c;我们并不知…

考古学家 - 华为OD统一考试

OD统一考试 分值: 200分 题解: Java / Python / C++ 题目描述 有一个考古学家发现一个石碑,但是很可惜发现时其已经断成多段。 原地发现N个断口整齐的石碑碎片,为了破解石碑内容,考古学家希望有程序能帮忙计算复原后的石碑文字组合数,你能帮忙吗? 备注: 如果存在石碑…

uniapp开发安卓应用微信开放平台创建应用如何获取签名

微信开放平台创建应用时需要应用的签名 比如我们开发了一个应用叫 “滴滴拉屎” 包名&#xff1a;uni.DIDILASHI #mermaid-svg-BUKbltDr30J93dUs {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-BUKbltDr30J93dUs .…

代码随想录算法训练营Day21| 93.复原IP地址、78.子集、90.子集||

LeetCode 93 复原 IP 地址 本题思路&#xff1a;最重要的是想到一个收集结果的条件&#xff0c;也就是终止条件。 当 . 的个数达到三个时候&#xff0c;并且&#xff0c;判断最后剩余的是否符合要求&#xff0c;如果符合&#xff0c;说明整个ip地址可以&#xff0c;就加入到结…

鸿蒙生态,对开发者来说有什么机遇?

在之前的文章中&#xff0c;我们探讨了鸿蒙应用开发中ArkTS的重要性。作为TypeScript的超集&#xff0c;ArkTS不仅继承了TypeScript的优秀特性&#xff0c;还具备自身独特的优势。 随着鸿蒙原生应用的全面开启&#xff0c;开发者们将迎来无数的机遇和挑战。本文将深入剖析鸿蒙…

模型\视图一般步骤:为什么经常要用“选择模型”QItemSelectionModel?

一、“使用视图”一般的步骤&#xff1a; //1.创建 模型(这里是数据模型&#xff01;) tabModelnew QSqlTableModel(this,DB);//数据表 //2.设置 视图的模型(这里是数据模型&#xff01;) ui->tableView->setModel(tabModel); 模型种类&#xff1a; QStringListModel…

aigc修复美颜学习笔记

目录 GFPGAN进行图像人脸修复 美颜 修复畸形手势 GFPGAN进行图像人脸修复 原文&#xff1a;本地使用GFPGAN进行图像人脸修复_人相修复处理网页 csdn-CSDN博客 人脸修复 1.下载项目和权重文件 2.部署环境 3.下载权重文件 4.运行代码 5.网页端体验 首先来看一下效果图 1.下…

面试宝典进阶之redis缓存面试题

R1、【初级】Redis常用的数据类型有哪些&#xff1f; &#xff08;1&#xff09;String&#xff08;字符串&#xff09; &#xff08;2&#xff09;Hash&#xff08;哈希&#xff09; &#xff08;3&#xff09;List&#xff08;列表&#xff09; &#xff08;4&#xff09;Se…

使用scipy处理图片——任意比例缩放

大纲 缩小放大代码地址 在《使用numpy处理图片——缩放图片》一文中&#xff0c;我们每2个取1个像素来达到图像缩小的效果。这就要求缩小的比例只能是整数倍&#xff0c;而不能支持缩小到0.3倍或者放大到1.5倍这样的效果。 为了支持任意倍数的缩放功能&#xff0c;我们需要使用…

Xcode15一个xcworkspace管理多个xcodeproj从零开始,一个主程序,多个子程序,一个主程序引用多个静态库

创建主程序&#xff1a;MainProject 目录结构&#xff1a; sandbox设置成NO&#xff1a;否则Xcode15不能运行 创建子程序 创建Framework 创建多个子程序后的目录结构 在主程序的Podfile中添加代码 # Uncomment the next line to define a global platform for your project pla…

Laravel 框架中队列的使用

概述 Laravel 框架内置了强大的队列系统&#xff0c;用于处理异步任务、提高系统性能等。队列可以让任务异步执行&#xff0c;而不会阻塞当前进程&#xff0c;可以提高系统的处理能力。 Laravel 的队列系统支持多种驱动&#xff0c;如 Redis、Beanstalkd、SQS 等&#xff0c;…