ZYNQ 开发平台基础教程
AX7015
19.1.7 16:15:37
ZYNQ 开发平台基础教程
版权声明
Copyright © 2012-2018 芯驿电子科技(上海)有限公司
公司网址:
Http://www.alinx.com.cn
技术论坛:
http://www.heijin.org
官方旗舰店:
http://alinx.jd.com
邮箱:
avic@alinx.com.cn
电话:
021-67676997
传真:
021-37737073
ALINX 微信公众号:
http://www.alinx.com.cn
2 / 385
版本
1.01
1.02
1.03
1.04
1.05
1.06
1.07
ZYNQ 开发平台基础教程
文档修订记录:
描述
初始版本
添加 qspi 启动 linux;修改 PL 以太网设备树
添加交叉编译器的一些信息
添加 GPIO 例程,EMMC 使用,修改部分措辞
修改文档格式
添加 Linux 下 PCIe 应用
时间
2018/3/21
2018/3/28
2018/4/9
2018/5/16
2018/8/14
2018/8/27
2018/10/19
修改部分描述错误
我们承诺本教程并非一劳永逸,固守不变的文档。我们会根据论坛上大家的反馈意见,以
及实际的开发实践经验积累不断的修正和优化教程
http://www.alinx.com.cn
3 / 385
ZYNQ 开发平台基础教程
序
首先感谢大家购买芯驿电子科技(上海)有限公司出品的 ZYNQ 的开发板 AX7015! 您
对我们和我们产品的支持和信任,给我们增添了永往直前的信心和勇气。
“播下一粒种子,收获一片森林”,更是芯驿电子科技(上海)有限公司的美好愿望,同
时我们会在黑金动力社区 http://www.heijin.org和大家一起讨论,一起学习,一起进步,一起
成长。
http://www.alinx.com.cn
4 / 385
目录
ZYNQ 开发平台基础教程
版权声明 ......................................................................................................................................... 2
序 ..................................................................................................................................................... 4
目录 ................................................................................................................................................. 5
第一章 软件包说明和开发板检测 ............................................................................................. 11
1.1 软件包说明 .................................................................................................................... 11
1.2 开发板检测 .................................................................................................................... 11
1.2.1 检测需要自备的工具 ......................................................................................... 11
1.2.2 开发板线缆连接 ................................................................................................. 15
1.2.3 开始测试 ............................................................................................................. 17
第二章 ZYNQ 简介 ....................................................................................................................... 22
2.1 PS 和 PL 互联技术 ........................................................................................................... 22
2.2 ZYNQ 芯片开发流程的简介 ........................................................................................... 28
2.3 学习 ZYNQ 要具备哪些技能 ......................................................................................... 29
2.3.1 软件开发人员 ..................................................................................................... 29
2.3.2 逻辑开发人员 ..................................................................................................... 29
第三章 Vivado 开发环境 ............................................................................................................. 31
3.1 Vivado 软件介绍 ............................................................................................................. 31
3.2 Vivado 软件版本 ............................................................................................................. 31
3.3 Vivado 软件 Windows 下安装 ........................................................................................ 32
第四章 PL 的“Hello World”LED 实验 ......................................................................................... 39
4.1 LED 硬件介绍 .................................................................................................................. 39
4.2 创建 Vivado 工程 ........................................................................................................... 39
4.3 创建 Verilog HDL 文件点亮 LED .................................................................................... 46
4.4 添加管脚约束 ................................................................................................................ 50
4.5 添加时序约束 ................................................................................................................ 54
4.6 生成 BIT 文件 ................................................................................................................. 60
4.7 下载调试 ........................................................................................................................ 61
第五章 HDMI 输出实验 ............................................................................................................... 65
5.1 硬件介绍 ........................................................................................................................ 65
5.2 程序设计 ........................................................................................................................ 65
5.3 添加 XDC 约束文件 ........................................................................................................ 67
5.4 下载调试 ........................................................................................................................ 68
5.5 实验总结 ........................................................................................................................ 69
第六章 HDMI 直通 ILA 调试实验 ............................................................................................... 70
http://www.alinx.com.cn
5 / 385
ZYNQ 开发平台基础教程
6.1 硬件介绍 ........................................................................................................................ 70
6.2 程序设计 ........................................................................................................................ 70
6.3 使用 Vivado 调试 ........................................................................................................... 70
6.4 下载调试 ........................................................................................................................ 75
6.5 实验总结 ........................................................................................................................ 78
6.6 常见问题 ........................................................................................................................ 78
6.6.1 网络被综合以后找不到 ..................................................................................... 78
6.6.2 找不到 Debug 内核 ............................................................................................. 78
第七章 GTX 收发器误码率测试 IBERT 实验 ............................................................................... 79
7.1 硬件介绍 ........................................................................................................................ 79
7.2 Vivado 工程建立 ............................................................................................................. 79
7.3 编译下载调试 ................................................................................................................ 83
7.4 实验总结 ........................................................................................................................ 85
第八章 体验 ARM,裸机输出“Hello World” ............................................................................ 86
8.1 硬件介绍 ........................................................................................................................ 86
8.2 Vivado 工程建立 ............................................................................................................. 86
8.3 SDK 调试 .......................................................................................................................... 97
8.4 实验总结 ...................................................................................................................... 111
8.5 常见问题 ...................................................................................................................... 111
8.5.1 通过 vivado 启动 SDK 后没有窗口弹出 .......................................................... 111
第九章 PS 点亮 PL 的 LED 灯 ..................................................................................................... 113
9.1 Vivado 工程建立 ........................................................................................................... 113
9.2 XDC 文件约束 PL 管脚 .................................................................................................. 121
9.3 SDK 程序编写 ................................................................................................................ 123
9.4 下载调试 ...................................................................................................................... 126
9.5 实验总结 ...................................................................................................................... 128
第十章 PS 定时器中断实验 ...................................................................................................... 129
10.1 Vivado 工程建立 ......................................................................................................... 129
10.2 SDK 程序编写 .............................................................................................................. 130
10.3 下载调试 .................................................................................................................... 134
10.4 实验总结 .................................................................................................................... 135
第十一章 PL 按键中断实验 ....................................................................................................... 136
11.1 Vivado 工程建立 ......................................................................................................... 136
11.2 下载调试 .................................................................................................................... 140
11.3 实验总结 .................................................................................................................... 146
第十二章 以太网实验(LWIP) ............................................................................................... 147
12.1 Vivado 工程建立 ......................................................................................................... 147
12.1.1 PS 端的以太网配置 ......................................................................................... 148
http://www.alinx.com.cn
6 / 385
ZYNQ 开发平台基础教程
12.1.2 PL 端 AXI 以太网配置 ...................................................................................... 150
12.1.3 添加约束文件 ................................................................................................. 159
12.2 SDK 程序 ...................................................................................................................... 160
12.2.1 LWIP 库修改 ..................................................................................................... 160
12.2.2 创建基于 LWIP 模板的 APP ............................................................................ 166
12.3 下载调试 .................................................................................................................... 167
12.3.1 PL 端以太网测试 .............................................................................................. 167
12.3.2 PS 端以太网测试 ............................................................................................. 169
12.4 实验总结 .................................................................................................................... 171
第十三章 自定义 IP 实验 .......................................................................................................... 172
13.1 PWM 介绍 ................................................................................................................... 172
13.2 Vivado 工程建立 ......................................................................................................... 173
13.2.1 创建一个 vivado 工程 ..................................................................................... 173
13.2.2 创建自定义 IP ................................................................................................. 174
13.2.3 添加自定义 IP 到工程 .................................................................................... 183
13.3 SDK 软件编写调试 ...................................................................................................... 186
13.4 实验总结 .................................................................................................................... 194
13.5 常见问题 .................................................................................................................... 194
13.5.1 如何知道 AXI IP 的基地址 .............................................................................. 194
第十四章 使用 VDMA 驱动 HDMI 显示 .................................................................................... 196
14.1 Vivado 工程建立 ......................................................................................................... 196
14.2 SDK 软件编写调试 ...................................................................................................... 218
第十五章 固化程序 ................................................................................................................... 223
15.1 Vivado 工程建立 ......................................................................................................... 223
15.2 生成 FSBL .................................................................................................................... 226
15.3 创建 BOOT 文件 ......................................................................................................... 230
15.4 SD 卡启动测试 ............................................................................................................ 234
15.5 QSPI 启动测试 ............................................................................................................. 236
15.6 Vivado 下烧写 QSPI ..................................................................................................... 237
15.7 使用批处理文件快速烧写 QSPI ................................................................................ 240
第十六章 PCIe 测试 ................................................................................................................... 242
16.1 Vivado 工程建立 ......................................................................................................... 242
16.2 生成烧写 BOOT .......................................................................................................... 256
16.3 设置电脑进入测试模式 ............................................................................................ 258
16.4 安装 PCIe 驱动 ........................................................................................................... 259
16.5 测试 PCIe .................................................................................................................... 263
16.6 实验总结 .................................................................................................................... 265
第十七章 PCIe 传输视频到 HDMI 显示 .................................................................................... 266
http://www.alinx.com.cn
7 / 385
ZYNQ 开发平台基础教程
17.1 Vivado 工程 ................................................................................................................. 266
17.2 SDK 软件 ...................................................................................................................... 266
17.3 下载调试 .................................................................................................................... 267
第十八章 HDMI 视频输入到 PCIe 捕捉显示 ............................................................................ 269
18.1 Vivado 硬件功能 ......................................................................................................... 269
18.2 SDK 软件 ...................................................................................................................... 269
18.3 下载调试 .................................................................................................................... 270
第十九章 Linux 下开发 PCIe ...................................................................................................... 272
19.1 电脑主板配置 ............................................................................................................ 272
19.1.1 配置说明 ......................................................................................................... 272
19.1.2 配置方法 ......................................................................................................... 272
19.2 Linux 系统安装 ............................................................................................................ 277
19.3 文件准备 .................................................................................................................... 277
19.4 打开虚拟终端 ............................................................................................................ 278
19.5 驱动安装 .................................................................................................................... 279
19.5.1 驱动编译 ......................................................................................................... 279
19.5.2 驱动加载 ......................................................................................................... 280
19.6 Qt 软件安装 ................................................................................................................ 281
19.6.1 库安装 ............................................................................................................. 281
19.6.2 Qt 软件安装 ..................................................................................................... 281
19.7 应用程序运行 ............................................................................................................ 281
19.8 测速软件 .................................................................................................................... 281
19.9 读应用 ........................................................................................................................ 282
19.10 写应用 ...................................................................................................................... 282
第二十章 安装虚拟机和 Ubuntu 系统 ..................................................................................... 284
20.1 虚拟机软件安装 ........................................................................................................ 284
20.2 Ubuntu 安装 ................................................................................................................ 285
20.2.1 安装系统 ......................................................................................................... 285
20.2.2 修改软件源服务器 ......................................................................................... 292
20.2.3 设置 bash 为默认 sh ....................................................................................... 294
20.2.4 设置屏幕锁定时间 ......................................................................................... 294
20.3 常见问题 .................................................................................................................... 295
20.3.1 虚拟机要求虚拟化支持 ................................................................................. 295
第二十一章 Ubuntu 安装 Linux 版 Vivado 软件 ....................................................................... 297
21.1 安装 Linux 版 Vivado .................................................................................................. 297
21.2 权限设置 .................................................................................................................... 302
21.3 安装下载器驱动 ........................................................................................................ 302
21.4 测试 Vivado ................................................................................................................ 302
http://www.alinx.com.cn
8 / 385