ZYNQ嵌入式SDK(一)开发流程
在安装软件的时候应该直接安装Vitis,它会包含Vivado,而不是单独安装Vivado。
1.1 ZYNQ嵌入式开发简介
开发流程
- 创建Vivado工程;
- 使用IP Integrator创建Processor System;
- 生成顶层HDL;
- (生成Bitstream)导出到SDK;
- 在SDK中创建应用工程;
- 板级验证。
最小系统:ARM Cortex-A9、DDR3、UART。
1.2 硬件设计
Vivado中,点击左边Create Block Design,添加ZYNQ芯片,双击打开配置窗口。

1.2.1 DDR配置
在DDR Configuration中进行如下配置,其中Memory Part根据手册来选,位宽32bit(2个16bit的芯片拼起来)。


1.2.2 UART配置
在Peripheral I/O Pins中进行如下配置,选择的UART端口号要参考原理图。


在PS-PL Configuration中配置UART的波特率。

也可以在MIO Configuration中配置端口,注意上面的电压要参考原理图。


1.2.3 移除多余的端口
M_AXI_GP0和左边的时钟在下图位置取消勾选:

FCLK_CKL0是PS提供给PL的时钟,在如下位置配置和移除。上面的Input Frequency需要参考原理图配置。


FCLK_RESET0_N是PS提供给PL的时钟复位接口,在下图位置取消勾选:

1.2.4 生成端口与检查
- 点击上面的
Run Block Automation,自动生成端口。 - 点击上面的勾号图标(
Validate Design)检查是否有错误。
1.2.5 生成输出文件
按下图操作,生成输出文件(包括综合、实现的约束文件)。

1.2.6 生成顶层文件
按下图操作,生成顶层wrapper,选择由Vivado自动更新。

1.2.7 导出硬件
按下图操作导出硬件,因为本次实验不包含PL,所以无需生成bitstream,默认在项目目录下生成.xsa文件。

1.3 软件设计
Vitis Unified IDE的使用可以参考:Vitis2024.1入门与基本使用指南(实现hello_world输出)
1.3.1 Vitis启动与项目创建
在Vivado的菜单栏
Tools中点击Launch Vitis打开Vitis。先创建
Platform,选择之前生成的.xsa文件,其余选项保持默认。

然后创建
Application,选择之前创建的Platform。也可以直接从examples创建Application。


1.3.2 编写代码与运行
在应用中的
Sources/src目录下创建main.c,然后编写代码。
连接好开发板,需要连接JTAG和UART,然后按下图打开串口工具
Serial Monitor,根据设备管理器选择UART设备的COM端口和波特率(之前设置的115200)。
构建、运行。在串口工具中就能看到输出。
