初始Vitis——ZYNQ学习笔记1

一、Vitis是什么

        Vitis 统一软件平台的前身为 Xilinx SDK,从 Vivado 2019.2 版本开始, Xilinx SDK 开发环境已统一整合到全功能一体化的 Vitis 中。 Vitis 开发平台除了启动方式、软件界面、使用方法与 SDK 开发平台略有区别,其他操作几乎一模一样。 Vitis 可以采用 C、 C++或 Python 开发以嵌入式处理器为核心的嵌入式系统, 可实现在 Xilinx 异构平台(包括 FPGA、 SoC 和 Versal ACAP)上开发嵌入式软件和加速应用。 它可为边缘、云和混合计算应用加速提供统一编程模型。 Vitis 可以利用与高层次框架的集成,通过加速库采用 C、 C++或Python 进行开发,或者使用基于 RTL 的加速器和低层次运行时 API 对实现方案进行粒度更精确的控制。 Vitis是应用 IDE( 集成开发环境), 可实现真正的同构及异构多处理器设计、调试和性能分析。

        Vitis 统一软件平台是一种新增工具,用于将赛灵思软件开发的方方面面全部组合到统一的环境内。Vitis 软件平台支持 Vitis 嵌入式软件开发流程以满足希望迁移至下一代技术的赛灵思软件开发套件(SDK) 用户的使用需求,也支持 Vitis 应用加速开发流程,以满足希望使用基于赛灵思 FPGA 的最新软件加速功能的软件开发者的需求。

二、Vitis开发流程

        使用 Vitis 进行嵌入式设计开发包括两部分,分别是硬件设计和软件设计。硬件设计使用到的工具是Xilinx 提供的 Vivado 套件,软件设计使用 Xilinx 提供的 Vitis 统一软件平台。

        在 Vivado 中我们可以在 Block Design 中搭建嵌入式处理系统,然后生成包含硬件信息的 XSA( Xilinx Shell Archive)文件。利用 XSA 文件在 Vitis 软件中搭建硬件平台,进行软件设计和调试。

下图是 Vitis 统一平台的嵌入式系统开发流程图:

第一步: 创建 Vivado 工程, 创建方法和《ZYNQ 之 FPGA 开发指南》中描述的步骤一致。

第二步:使用 IP 集成器创建嵌入式处理系统,包括配置 Processing System IP、其他需要的 IP 核以及外围设备。

第三步:对已经验证好

03-24
### Vitis 平台概述 Vitis 是 Xilinx 提供的一体化开发环境,旨在支持硬件开发者和软件开发者共同协作完成嵌入式系统的开发工作。通过安装 Vitis Core Development Kit,在桌面环境中可以直接启动 Vitis 软件[^2]。 该工具不仅提供了图形化的用户界面用于简化设计流程,还集成了多种功能模块来加速 FPGA 和 ACAP(Adaptive Compute Acceleration Platform)的应用程序开发过程。对于初学者而言,可以通过 Vivado 工具链中的菜单选项 `Tools -> Launch Vitis IDE` 来尝试启动 Vitis 开发环境[^3]。然而需要注意的是,这种方式可能因系统资源占用或其他原因而无法成功开启 Vitis;如果遇到这种情况,则需确认本地已正确安装独立版本的 Vitis 应用程序[^1]。 ### 创建 HelloWorld 项目实例 以下是基于最新版 Vitis (假设为 vivado2023.2) 构建简单 Hello World 示例项目的具体实现方式: #### 准备阶段 确保已经按照官方文档指引完成了必要的软硬件配置,并验证能够正常访问目标板卡设备。 #### 实现步骤描述 下面给出一段 Python 风格伪代码表示如何初始化并运行这样一个基础测试工程: ```python from vitis_project import ProjectManager, TargetPlatform def create_hello_world(): manager = ProjectManager() # 设置目标平台参数 platform = TargetPlatform("zcu102") # 假设使用 ZCU102 开发套件作为演示对象 # 新建空白解决方案框架 project_name = "helloworld" solution_path = "/path/to/save/solution/" manager.create_new(project_name, solution_path, platform) # 添加源文件到当前会话当中 source_code_file = """ void hello() { printf("Hello from Vitis!\\n"); } """ main_entry_point = "main.c" manager.add_source(main_entry_point, content=source_code_file) # 编译链接生成最终可执行二进制镜像 output_binary = f"{solution_path}/build/hello.xclbin" build_options = {"optimize": True} result_status = manager.build(output_binary, **build_options) return result_status if __name__ == "__main__": status = create_hello_world() if not status.error_occurred: print("Project creation succeeded!") ``` 上述脚本片段仅作示意用途,请依据实际情况调整路径名及其他细节设置。 --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值