logo资料库

ALINX黑金Zynq7000开发平台配套教程V2.pdf

第1页 / 共347页
第2页 / 共347页
第3页 / 共347页
第4页 / 共347页
第5页 / 共347页
第6页 / 共347页
第7页 / 共347页
第8页 / 共347页
资料共347页,剩余部分请下载后查看
目录
第一部分 基础篇
第1章AX7010/AX7020开发板开箱检测
1.1 准备工作
1.1.1 硬件配置
1.1.2 USB转UART驱动安装
1.1.3 终端登录工具SecureCRT安装
1.2 外设连接
1.3 实验操作
第2章ZYNQ7000芯片的简介
2.1 PS内部资源介绍
2.1 PL内部资源介绍
第3章Vivado软件安装
3.1 VIVADO软件介绍
3.2 VIVADO软件版本
3.3 VIVADO软件安装
第4章Linux系统虚拟机的安装
4.1 虚拟机的安装
4.2 安装ubuntu
第5章PS和PL接口技术详解
5.1 AXI接口标准介绍
5.2 ZYNQ的AXI资源
5.3 PL端的AXI接口设计
5.4 AXI Interconnect
第6章ZYNQ芯片开发流程的简介
6.1 开发工具介绍
6.2 开发流程说明
第二部分 逻辑篇
第7章FPGA LED控制实验
7.1 硬件介绍
7.2 创建工程
7.3 编写流水灯的verilog代码
7.4 添加XDC管脚约束文件
7.5 编译
7.6下载和调试
第8章HDMI输出实验
8.1 HDMI及TMDS原理
8.2 硬件介绍
8.3程序设计
8.4 添加XDC管脚约束文件
8.5 编译和下载
第三部分 SDK篇
第9章Hello World实验
9.1 Vivado工程创建
9.2 ZYNQ系统的配置
9.3 硬件导入SDK
9.4 SDK软件编程
9.5 下载和调试
第10章PL端和PS端的协同设计流水灯实验
10.1 Vivado工程创建
10.2 ZYNQ系统的配置
10.3 添加XDC管脚约束文件
10.4 编译生成比特流文件
10.5 硬件导入SDK
10.6 SDK软件编程
10.7 下载和调试
第11章 定时器中断实验
11.1中断控制器和计数器
11.2 ZYNQ系统的配置
11.3 硬件导入SDK
11.3 SDK软件编程
11.4 下载和调试
第12章 按键实验
12.1 PS和PL共享中断
12.2 Vivado工程创建
12.3 添加按键IP
12.4 添加按键管脚约束
12.5 编译生成比特流文件
12.6 硬件导入SDK
12.7 SDK软件编程
12.8 下载和调试
第13章 自定义IP实验
13.1 RTC时钟DS1302
13.2 Vivado工程创建
13.3 创建自定义IP
13.4 添加RTC管脚约束
13.5 编译生成比特流文件
13.5 硬件导入SDK
13.6 SDK软件编程
13.7 下载和调试
第14章 VDMA实验硬件系统搭建
14.1 硬件构架
14.2 搭建硬件工程
14.3 添加HDMI管脚约束
14.4 编译生成比特流文件
14.5 硬件导入SDK
第15章 VDMA实验SDK软件
15.1 SDK软件编程
15.2 程序说明
15.3 图像数据生成方法
15.4 下载和调试
第16章 程序固化和启动
16.1 开发板启动流程
16.2 Vivado工程修改
16.3生成FSBL可执行文件
16.4 BOOT.BIN 文件的生成
16.5 烧写FLASH并启动
16.6 SD卡启动
第17章Linux 开发环境的搭建
17.1 安装Linux版本的SDK
17.2 安装32位支持工具包
17.3 安装OpenSSL库
18.1 U-Boot原理及实现
18.2 U-Boot的编译
18.3 生成BOOT.BIN文件
18.4 Uboot启动实验
第19章内核的编译
19.1 Linux内核介绍
19.2 Linux内核源码编译
19.3设备树Device tree的编译
19.4 文件系统
第20章SD卡的制作
20.1 SD卡分区
20.2 复制BOOT.BIN文件
20.3 复制编译后的内核文件
20.4 复制编译后的设备树文件
20.5 复制文件系统
20.6 Linux SD卡启动
第21章 Linux系统下的hello world实验
21.1 nfs server安装和配置
21.2 编写helloworld程序
21.3 编译helloworld程序
21.4 运行
第22章Linux系统下的GPIO应用实践
22.1 sysfs方式控制GPIO
22.2 编写GPIO应用程序
22.3 编译GPIO程序
22.4 运行和实验
ALINX 黑金 Zynq7000 开发平台 配套教程 AX7010/AX7020
ALINX 黑金 Zynq7000 开发平台配套教程 我们承诺本教程并非一劳永逸,固守不变的文档。我们会根据论坛上大家的反馈意见,以 及实际的开发实践经验积累不断的修正和优化教程 文档修订记录: 时间 2016-09-18 2016-11-07 2017-02-03 描述 创建文档 格式整理 错误整理 版本 Rev1.0 V1.01 V1.02 ALINX 黑金 Zynq7000 系列开发宝典 http://www.heijin.org 2
ALINX 黑金 Zynq7000 开发平台配套教程 序 首先感谢大家购买黑金动力社区出品的 ZYNQ7000 的开发板 AX7010 和 AX7020! 您对我 们和我们产品的支持和信任,给我们增添了永往直前的信心和勇气。 赛灵思公司(Xilinx) 于 2012 年推出 Zynq7000 SOC 芯片解决方案,该方案将双核 ARM Cortex-A9 和 FPGA Fabric 集成在一颗芯片上,通过内部总线连接,ARM 和 FPGA 之间的通 信速度大大提高,从而提高芯片整体性能。但同时,ARM 和 FPGA 两门之前独立的软硬件学科 在一颗芯片上应用,大大提高了芯片入门门槛。黑金这两年一直在筹划推出 Zynq7000 SOC 系 列硬件开发平台,同时编著一套教程,循序渐进,由浅入深,旨在让学员很轻松的入门,体验 最前沿的 ARM+FPGA SOC 技术。 本教程根据不同的侧重点分 4 部分:第一部分是基础篇,分别介绍开发板的上电捡测,硬 件电路的介绍,ZYNQ 芯片的介绍,软件 Vivado 的安装,Linux 系统虚拟机的安装,PS 和 PL 接口技术的介绍和 ZYNQ 开发流程的介绍。通过基础篇让大家对黑金开发板 AX7010/AX7020 及 ZYNQ 芯片和开发有一个总体认识,为后面几部分的学习打好基础。第二部分是逻辑篇,在 逻辑篇里我们把 ZYNQ 芯片当做普通的 FPGA 来使用,结合开发板和 ZYNQ 芯片的资源实现 纯逻辑的开发。我们会通过大量的应用实例让大家了解和掌握 FPGA 的 Verilog 程序的设计及 实现。 AX7010/AX7020 开发平台的硬件资源。 “播下一粒种子,收获一片森林”,更是黑金 ALINX 硬件开发的美好愿望,同时我们会在 黑金动力社区 http://www.heijin.org和大家一起讨论,一起学习,一起进步,一起成长。 ALINX 黑金 Zynq7000 系列开发宝典 http://www.heijin.org 3
ALINX 黑金 Zynq7000 开发平台配套教程 目录 序 ............................................................................................................................................................. 3 目录 ......................................................................................................................................................... 4 第一部分 基础篇 ................................................................................................................................... 8 第 1 章 AX7010/AX7020 开发板开箱检测 ........................................................................................ 8 1.1 准备工作.................................................................................................................................. 8 1.1.1 硬件配置 ...................................................................................................................... 8 1.1.2 USB 转 UART 驱动安装 ............................................................................................ 10 1.1.3 终端登录工具 SecureCRT 安装 .............................................................................. 10 1.2 外设连接................................................................................................................................ 14 1.3 实验操作................................................................................................................................ 14 第 2 章 ZYNQ7000 芯片的简介 ........................................................................................................ 17 2.1 PS 内部资源介绍 ................................................................................................................... 18 2.1 PL 内部资源介绍 ................................................................................................................... 19 第 3 章 Vivado 软件安装 .................................................................................................................... 20 3.1 VIVADO 软件介绍 ................................................................................................................ 20 3.2 VIVADO 软件版本 ................................................................................................................ 20 3.3 VIVADO 软件安装 ................................................................................................................ 21 第 4 章 Linux 系统虚拟机的安装 ....................................................................................................... 29 4.1 虚拟机的安装 ........................................................................................................................ 29 4.2 安装 ubuntu ......................................................................................................................... 30 第 5 章 PS 和 PL 接口技术详解 .......................................................................................................... 41 5.1 AXI 接口标准介绍 ................................................................................................................. 41 5.2 ZYNQ 的 AXI 资源 ............................................................................................................... 44 5.3 PL 端的 AXI 接口设计 .......................................................................................................... 45 5.4 AXI Interconnect ................................................................................................................. 46 第 6 章 ZYNQ 芯片开发流程的简介 .................................................................................................. 49 6.1 开发工具介绍 ........................................................................................................................ 49 6.2 开发流程说明 ........................................................................................................................ 50 第二部分 逻辑篇 ................................................................................................................................. 52 第 7 章 FPGA LED 控制实验 .............................................................................................................. 52 7.1 硬件介绍................................................................................................................................ 52 7.2 创建工程................................................................................................................................ 53 7.3 编写流水灯的 verilog 代码 ................................................................................................. 58 ALINX 黑金 Zynq7000 系列开发宝典 http://www.heijin.org 4
ALINX 黑金 Zynq7000 开发平台配套教程 7.4 添加 XDC 管脚约束文件 ..................................................................................................... 62 7.5 编译 ....................................................................................................................................... 66 7.6 下载和调试............................................................................................................................. 69 第 8 章 HDMI 输出实验 ...................................................................................................................... 73 8.1 HDMI 及 TMDS 原理 ........................................................................................................... 73 8.2 硬件介绍................................................................................................................................ 75 8.3 程序设计 ................................................................................................................................ 76 8.4 添加 XDC 管脚约束文件 ..................................................................................................... 79 8.5 编译和下载............................................................................................................................ 80 第三部分 SDK 篇 ................................................................................................................................ 81 第 9 章 Hello World 实验 .................................................................................................................. 81 9.1 Vivado 工程创建 .................................................................................................................. 81 9.2 ZYNQ 系统的配置 ................................................................................................................ 88 9.3 硬件导入 SDK ....................................................................................................................... 99 9.4 SDK 软件编程 ..................................................................................................................... 102 9.5 下载和调试.......................................................................................................................... 105 第 10 章 PL 端和 PS 端的协同设计流水灯实验 ............................................................................. 110 10.1 Vivado 工程创建 .............................................................................................................. 110 10.2 ZYNQ 系统的配置 ............................................................................................................ 111 10.3 添加 XDC 管脚约束文件 ................................................................................................. 121 10.4 编译生成比特流文件 ....................................................................................................... 122 10.5 硬件导入 SDK .................................................................................................................. 123 10.6 SDK 软件编程 ................................................................................................................... 125 10.7 下载和调试 ....................................................................................................................... 127 第 11 章 定时器中断实验................................................................................................................. 136 11.1 中断控制器和计数器 ........................................................................................................ 136 11.2 ZYNQ 系统的配置 ............................................................................................................ 137 11.3 硬件导入 SDK .................................................................................................................. 140 11.3 SDK 软件编程 ................................................................................................................... 142 11.4 下载和调试 ....................................................................................................................... 145 第 12 章 按键实验 ............................................................................................................................ 147 12.1 PS 和 PL 共享中断 ............................................................................................................ 147 12.2 Vivado 工程创建 .............................................................................................................. 148 12.3 添加按键 IP ....................................................................................................................... 150 12.4 添加按键管脚约束 ........................................................................................................... 157 12.5 编译生成比特流文件 ....................................................................................................... 158 12.6 硬件导入 SDK .................................................................................................................. 158 12.7 SDK 软件编程 ................................................................................................................... 160 ALINX 黑金 Zynq7000 系列开发宝典 http://www.heijin.org 5
ALINX 黑金 Zynq7000 开发平台配套教程 12.8 下载和调试 ....................................................................................................................... 166 第 13 章 自定义 IP 实验 ................................................................................................................... 171 13.1 RTC 时钟 DS1302 ............................................................................................................ 171 13.2 Vivado 工程创建 .............................................................................................................. 173 13.3 创建自定义 IP ................................................................................................................... 175 13.4 添加 RTC 管脚约束 .......................................................................................................... 190 13.5 编译生成比特流文件 ....................................................................................................... 190 13.5 硬件导入 SDK .................................................................................................................. 191 13.6 SDK 软件编程 ................................................................................................................... 191 13.7 下载和调试 ....................................................................................................................... 194 第 14 章 VDMA 实验硬件系统搭建 ............................................................................................... 198 14.1 硬件构架 ........................................................................................................................... 198 14.2 搭建硬件工程 ................................................................................................................... 199 14.3 添加 HDMI 管脚约束 ...................................................................................................... 228 14.4 编译生成比特流文件 ....................................................................................................... 229 14.5 硬件导入 SDK .................................................................................................................. 229 第 15 章 VDMA 实验 SDK 软件 ..................................................................................................... 230 15.1 SDK 软件编程 ................................................................................................................... 230 15.2 程序说明 ........................................................................................................................... 231 15.3 图像数据生成方法 ........................................................................................................... 238 15.4 下载和调试 ....................................................................................................................... 240 第 16 章 程序固化和启动................................................................................................................. 244 16.1 开发板启动流程 ............................................................................................................... 244 16.2 Vivado 工程修改 .............................................................................................................. 245 16.3 生成 FSBL 可执行文件 ..................................................................................................... 250 16.4 BOOT.BIN 文件的生成 ................................................................................................... 253 16.5 烧写 FLASH 并启动 ......................................................................................................... 259 16.6 SD 卡启动 .......................................................................................................................... 262 第 17 章 Linux 开发环境的搭建...................................................................................................... 264 17.1 安装 Linux 版本的 SDK .................................................................................................. 264 17.2 安装 32 位支持工具包 ..................................................................................................... 275 17.3 安装 OpenSSL 库 ............................................................................................................ 277 18.1 U-Boot 原理及实现 ......................................................................................................... 278 18.2 U-Boot 的编译 ................................................................................................................. 284 18.3 生成 BOOT.BIN 文件 ....................................................................................................... 288 18.4 Uboot 启动实验 ............................................................................................................... 300 第 19 章内核的编译 .......................................................................................................................... 304 19.1 Linux 内核介绍 ................................................................................................................. 304 ALINX 黑金 Zynq7000 系列开发宝典 http://www.heijin.org 6
ALINX 黑金 Zynq7000 开发平台配套教程 19.2 Linux 内核源码编译 ......................................................................................................... 306 19.3 设备树 Device tree 的编译 ............................................................................................. 311 19.4 文件系统 ........................................................................................................................... 313 第 20 章 SD 卡的制作 ....................................................................................................................... 315 20.1 SD 卡分区 .......................................................................................................................... 315 20.2 复制 BOOT.BIN 文件 ....................................................................................................... 319 20.3 复制编译后的内核文件 ................................................................................................... 320 20.4 复制编译后的设备树文件 ............................................................................................... 320 20.5 复制文件系统 ................................................................................................................... 321 20.6 Linux SD 卡启动 .............................................................................................................. 325 第 21 章 Linux 系统下的 hello world 实验 .................................................................................. 327 21.1 nfs server 安装和配置..................................................................................................... 327 21.2 编写 helloworld 程序 ..................................................................................................... 333 21.3 编译 helloworld 程序 ..................................................................................................... 335 21.4 运行 ................................................................................................................................... 335 第 22 章 Linux 系统下的 GPIO 应用实践 ....................................................................................... 337 22.1 sysfs 方式控制 GPIO ....................................................................................................... 337 22.2 编写 GPIO 应用程序 ....................................................................................................... 341 22.3 编译 GPIO 程序 ............................................................................................................... 345 22.4 运行和实验 ....................................................................................................................... 346 ALINX 黑金 Zynq7000 系列开发宝典 http://www.heijin.org 7
ALINX 黑金 Zynq7000 开发平台配套教程 第一部分 基础篇 第 1 章 AX7010/AX7020 开发板开箱检测 当我们拿到开发板是否应该测试一下收到的开发板是否功能正常,以及各个接口工作是否 工作正常。在出厂前我们已经在 SD 卡里存储了启动程序和操作系统,所以开发板上电就能启 动并可以用来测试各个部分接口和电路的工作是否正常。通过测试也使大家对我们开发板的功 能有一个大致的认识。 1.1 准备工作 1.1.1 硬件配置 开发板的上电检测需要以下的设备。其中 SD 卡里我们已经为用户存储了 ARM 的 Boot 启 动程序和系统的镜像文件 uImage。红色 USB 线用于开发板和 PC 之间的串口通信。HDMI 线 和 HDMI 显示器用于显示 AX7010/AX7020 开发板输出的 Ubuntu 界面,网线用于开发板连 接 Internet 网络,USB 鼠标和键盘用于人机交互操作。因为开发板上只有一个 USB 口,这里 需要连接一个 USB Hub 设备来扩展多个 USB 口连接 USB 键盘和鼠标。  AX7010 开发板或 AX7020 开发板  5V 直流电源适配器(开发板自带)  Micro SD 卡(开发板自带)  mini USB 数据线 2 根(开发板自带)  网线  HDMI 线和 HDMI 显示器  USB 鼠标和键盘  USB Hub  PC 机 ALINX 黑金 Zynq7000 系列开发宝典 http://www.heijin.org 8
分享到:
收藏