今天给大侠带来FPGA Xilinx Zynq 系列第十八篇,本篇是第一部分 PART A的最后一篇,下一篇将开启PART B,Zynq SoC & 硬件设计。本篇内容目录简介如下:
8. Zynq 的第一个工程
8.1 软件安装指导
8.2 目标和结果
8.3 练习 1A 概述
8.4 练习 1B 概述
8.5 练习 1C 概述
8.6 可能的扩展
8.7 接下来是什么?
8.8 参考文献
本系列分享来源于《The Zynq Book》,Louise H. Crockett, Ross A. Elliot,Martin A. Enderwitz, Robert W. Stewart. L. H. Crockett, R. A. Elliot, M. A. Enderwitz and R. W. Stewart, The Zynq Book: Embedded Processing with the ARM Cortex-A9 on the Xilinx Zynq-7000 All Programmable SoC, First Edition, Strathclyde Academic Media, 2016。
Zynq 的第一个工程
这是本书中有关实践的第一个章节,因此在它的第一页使用的是绿色的数字和竖条来表示。在这些以绿色标识的章节被编排在书中合适的位置,为那些在相应网站上会介绍的教程和实用的练习提供一个简单的概述。
由于设计工具和设计流程的不断变化,在网络上提供详细的介绍会比在书中提供实际练习显得更好。由于是第一个实践章节,相应的练习将会相当简短,主要目的是让熟悉读者所 需的软件工具和相应的 Zynq 设计流程。
虽然不是设计教程,网上将会提供一个关于必要工具和 ZedBoard 设备驱动程序 的循序渐进的操作步骤。建议你即使安装了软件工具,你也需要阅读下本指南,以确保所有的所需工具都已经配置为后续联系的设置,且所需的工作目录结构都已经配置在你的主机中的正确位置。
第一个实践教程侧重于介绍 Zynq 设计流程,指导读者在导出软件应用程序的设 计前,通过创建一个新的设计工程时来创建硬件设计。
在开始前,阅读 Zynq Book 网站的概述十分有用。
8.1 软件安装指导
在 Xilinx给出的《Vivado Design Suite User Guide: Release Notes Installation and Licensing》[1] 中提供了关于 Vivado 设计套件的综合安装指南。与此相关的两章是:
第三章:详细介绍了如何下载安装 Vivado 设计套件;
FPGA Xilinx Zynq 系列(八)Zynq 设计指南( 如何使用?) 之 ISE 和 Vivado 设计套件
第五章:详细介绍了如何获取和管理产品证书。
FPGA Xilinx Zynq 系列(十二)应用和机会 之 应用概述
8.2 目标和结果
这个最初的实践练习的总体目标是介绍设计流程和相关工具。在这个过程中, 一个针对 ZedBoard 的简单设计会被构建。
本教程完成后 , 你将能够:
- 建立一个 Zynq 硬件设计新工程;
- 针对 ZedBoard 配置 Zynq PS 部分;
- 创建和连接 Zynq PS 和 PL 的内部互联;
- 在 Zynq PL 中实现一个 IP 模块;
- 为 Zynq 硬件设计生成 HDL 文件,并创建一个为 Zynq PL 做硬件描述的比特流文件;
- 创建一个在 Zynq PL 上执行,且实现 IP 通信的简单应用软件程序。
本教程的主要目标是提供一个介绍 Zynq 设计流程,其最重要的结果是,你熟悉开发基于 Zynq 的系统所需的软件工具。
8.3 练习 1A 概述
第一个针对 ZedBoard 的实践练习将会涉及在 Vivado IDE 上如何逐步创建一个硬件工程。必要步骤如下:
1. 首先打开 Vivado IDE ;
2. 调用新工程向导;
3. 设计工作目录;
4. 指定 ZedBoard 为工程默认使用的开发板。
此练习十分简单,其唯一目的是使你正确配置第一个 Vivado 工程,从而帮助你更好的完成进一步的练习。练习 1A 可以在如下网站上找到:www.zynqbook.com。
8.4 练习 1B 概述
在联系 1A 的基础上,下一步是了解 Vivado IDE 的环境,关注其默认布局,在 PL 部分实现 GPIO 控制器,配置 ZedBoard 的 Zynq PS 部分后创建简单 Zynq 嵌入式系统。Vivado IP Integrator 工具可用于创建系统使用的图形环境,预置的 Designer Assistance 工具将会使用 AXI 总线连接器自动配置连接 Zynq PS 和 PL 端 的 IP 模块。GPIO 控制器将会连接的 ZedBoard 上可用的 LED 上。
练习将会涉及以下步骤:
1. 介绍 Vivado IP 的工作环境和特性;
2. 创建一个新的 IP Integrator 设计;
3. 添加和配置一个针对 ZedBoard 的 Zynq PS 模块;
4. 添加一个连接 ZedBoard 上 LED 的 GPIO 控制器;
5. 使用 IP Integrator Designer Assistance 工具建立和配置 Zynq PS 和 GPIO控制器间的连接;
6. 生成 HDL 文件,并创建做硬件描述的比特流文件;
7. 导出最终的硬件设计到 SDK。
图 8.1 中提供了一个硬件设计的概要。
图 8.1: 练习 1A 的 Zynq 硬件设计
练习 1B 可以在如下网站上找到 www.zynqbook.com。
8.5 练习 1C 概述
在这第一个教程中的最后一个练习介绍了 Zynq 软件设计过程,它将基于已经创建了的硬件设计练习 1B 完成。软件工程将会控制 ZedBoard 上的 LED。这个应用程序将会在 Zynq PS 上运行且与 PL 上的 GPIO 控制器进行通信。在 ZedBoard 上建立和 执行软件应用前,软件和 PL 上实现的硬件模块通信的软件驱动被 IP integrator 创 建。
练习将会涉及以下步骤:
1. 创建一个新的应用程序;
2. 添加源代码并构建应用程序;
3. 探索生成的软件驱动程序和相应的功能,实现软硬件通信;
4. 使用练习 1B 中生成的比特流文件烧写 Zynq PL ;
5. 在硬件上执行软件应用程序,并确认 ZedBoard 上的 LED 是否如预期控制。
练习 1C 可以在如下网站上找到 www.zynqbook.com。
8.6 可能的扩展
完成了练习 1C 后,可以针对开发的系统进行个性化的变化。例如,你可以:
• 改变 LED 闪烁频率;
• 为 LED 闪烁定制模式;
• 添加一个更多的连接到 ZedBoard 的拨码开关的 GPIO 控制器。
使用 GPIO 驱动函数完成通过拨码开关控制 LED 输出。提示:这个扩展需要改变硬件,系统需要在 SDK 中添加额外的软件更新前,从Vivado IDE 中重新导出硬件。
8.7 接下来是什么?
这组实际练习总结了本书 A 部分:“ 了解 Zynq”。接下来,我们将进入 B 部分,它将更详细的讲述创建 Zynq SoC 硬件组件。接下 来将会有更多的实践练习来说明这些理念。
8.8 参考文献
说明:所有的 URL 最后在 2014 年 6 月访问过。
[1] Xilinx, Inc, “Vivado Design Suite User Guide: Release Notes, Installation and Licensing”, UG973, June 2014.位于 : http://www.xilinx.com/support/documentation/sw_manuals/xilinx2014_2/ug973-vivado-release-notesinstall-license.pdf
第十八篇到此结束,下一篇将带来第十九篇,开启第二部分,也就是PART B,Zynq SoC & 硬件设计等相关内容。欢迎各位大侠一起交流学习,共同进步。
END
后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。
大侠们,江湖偌大,继续闯荡,愿一切安好,有缘再见!