上一期,我们重点学习了ZYNQ的PL开发,本期我们侧重于进行PS开发的学习。我们将在 VIVADO 开发环境下搭建 ARM+FPGA 的系统架构,并在 SDK 中编译软件实现软硬件联合开发。
本部分的学习,我们依旧借助得力的助手与伙伴——PYNQ_z2来完成。
一. 实验目的
1. 点亮开发板右下角三个灯
2. 输出“Hello,World!”
二. 实验要求
1. 在 VIVADO 中编译 bit 文件;
2. 在 SDK 中编译 elf 文件并将 FPGA 的 bit 文件和 ARM 处理器 的 elf 文件下载到开发板中
三. 实验步骤
1. 启动 VIVADO
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
2. 在 File 菜单中选择 New Project 选项启动项目向导。填写所要新建的工程名,然后点击 Next
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
3. 在 File 选择项目类型
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
4. 此处默认没有可以添加的源文件,并且设置编程语言和仿真语言均设置为 Verilog。点击 Next
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
5. 没有可以添加的 IP,所以不添加 IP,直接点击 Next
6. 没有可以添加的约束文件,所以不添加,直接点击 Next
7. 器件的选择是和实验平台的硬件相关的,根据我们的实验开发板,它使用的是 Pynq 的器件,找到相应的器件
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
8. 创建 Block Design
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
9. 输入 name,然后 OK
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
10. 选择 add IP,输入 zynq
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
11. 再次添加 IP,输入 GPIO
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt=""></center>
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
12. 双击 Zynq 模块,勾选上 UART0
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
13. 双击 GPIO
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
14. 分别点击Run Block Automation 和 Run Connection Automation
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
15. 勾选所有候选,然后点 ok
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
16. 右击 design_1.bd,create HDL Wrapper
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
17. 选择默认第二项,点击 OK
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt="" width="670"></center>
18. 添加引脚约束文件
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
19. 然后直接点击 Generat Bitstream,等待几分钟,编译完成之后,点击工具 栏的 File→Export->Export Hardware
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
20. 勾选 Include bitstream,点击 OK
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center></center>
21. 点击工具栏的 File→lauch SDK,等待 SDK 启动完成之后,新建工程。
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt=""></center>
22. 点击 NEXT,选择工程类型
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt=""></center>
23. 点开 HelloWorld.c,输入如下代码:
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
24. 将开发板连接到电脑,点击 program FPGA
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
25. 连接串口,com 号在个人电脑的设备管理器中可以查看
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; width="670"></center>
26. 右击工程目录,烧写 C 程序
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt=""></center>
27. 开发板右下角三个灯点亮,输出如下:
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/article/201811/13933-409…; alt=""></center>
文章转载自:<a href="https://mp.weixin.qq.com/s?__biz=MzU0Mzk1MzMyNQ==&mid=2247483837&am…;