FPGA Xilinx Zynq 系列(六)Zynq 设计指南( 如何使用?) 之 入门

2020-12-30 10:40:06 浏览数 (1)

大侠好,欢迎来到FPGA技术江湖,江湖偌大,相见即是缘分。大侠可以关注FPGA技术江湖,在“闯荡江湖”、"行侠仗义"栏里获取其他感兴趣的资源,或者一起煮酒言欢。

今天给大侠带来FPGA Xilinx Zynq 系列第六篇,本篇内容目录简介如下:

3. Zynq 设计指南(“ 如何使用它?”)

3.1 入门

3.1.1 获取设计工具

3.1.2 开发工具内部版本和证书

3.1.3 设计工具功能

3.1.4 第三方工具

3.1.5 系统安装和需求

本系列分享来源于《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 系统开发的一般方法和流程,并概述其软件设计工具和硬件资源需求十分重要。本章节将会从概述小节“入门”开始,说明如何获取和配置所需的设计工具, 并配合开发板进行基本安装配置。该节中将会提到的 Vivado 是一款 Xilinx 为 FPGA和 Zynq 设计的包含多的功能部件的开发工具套件。同时,Xilinx 软件证书的配置过程和三方软件在设计流程中扮演的角色也将会被提及。

在接下来的设计流程讨论过程中,本系列涵盖了理论概念和实践层次使用开发工具进行Zynq系统开发的方法。其中重要的一个方面是本章提出的面向系统的设计理念和使用开发工具的设计 流程。在本章末尾,讨论重点将会集中于这个新的开发工具 (Vivado,译者注)相对与前一代开发套件 ISE 的优势。另外,有个专门的小节将会为那些熟悉 ISE 而非Vivado 的人讲述这两者之间的联系。本章正文介绍后,会提供一个当前已有 Zynq 开发板的概述,并有目前可用支持和文档资料的小结。

3.1. 入门

如果你是 Zynq 新手,你可能会对如何开始你的第一个设计,以及如何获取支持感到困惑。本系列中将会提供一个简明概述,而更详尽的信息将在后续章节中被提及。

3.1.1. 获取设计工具

在开始 Zynq 设计前,你需要从 Xilinx 获取合适的设计工具。

你可以从 DVD 中 得到它,或者通过以下链接从 Xilinx 的官网下载:http://www.xilinx.com/support/download/index.htm(另外,从 Xilinx 官方主页的下载链接也可以进入下载页面)。

页面上将会有多种可选工具,但你只需要选择如下这款:

  • Vivado Design Suite ( 版本 2014.1 或更高 ) 值得注意的是 Vivado 既可以下载完整版,也可以由用户自定义下载部分工具和 目标开发板版本。同时,你也许会注意到 ISE 开发套件也出现在了备选列表中,然而并不需要下载它 (在类似 Zynq 的新设备上,Vivado 已经完全取代了 ISE)。在3.5 小节中将会为那些使用较旧工具的读者就 Vivado 和 ISE 之间的不同点做出更详细的解释。无论如何,请注意新设计不推荐使用ISE开发套件,而应该采用Vivado。除去这些工具本身以外,Documentation Navigator (文档导航器,译者注) 也是一个在安装时需要注意的可选项。它会提供简便的方法来帮助用户得到所有的相关用户指南和其他支持文档。最后,在使用网络配置软件证书时,还需要在证书服务器上下载安装如下工具:
  • License Management Tools ( 版本 2014.1 或更高 ) 对于独立授权的配置来说,不需要下载该工具。

更多的有关下载和安装设计工具的指南可以在 [27]中找到(在你需要的 Vivado 开发套件相关版本中也可以找到相应的文档版本)。

3.1.2. 开发工具内部版本和证书

Vivado 开发工具提供了不同的内部版本,这些内部版本都可以通过同一个文件 (例如在 3.1.1 节中举例的)安装,区别在于不同的证书类型。证书在 Xilinx 用户帐号中集中管理。Vivado 有三个不同的证书可供选择:WebPACK,Design Edition 和 System Edition,其主要特征汇总于表格 3.1。

WebPACK 版本是一个免费版本,足以完成Zynq 的第一个设计,其包含了以下一些核心软件:用于硬件设计的 Vivado 集成开发环境 (Vivado Itegrated Development, IDE),SDK,和用于软件开发的 GNU 编译链接编译器 (GNU Compiler Connection, GCC),以及用于验证的 Vivado 仿真器。

当然,用户也可以获取一个有时间限制的 System Edition 测试版本。证书可以被配置为服务器 / 浮动证书类型(也就是一堆许可证托管于一个网络许可证服务器)或者为特定电脑配置的个人证书(“ 节点锁定 ”)。WebPACK 版本可以免费获取,并且只能配置证书为 “ 节点锁定 ”。

表 3.1: Vivado Design Suite 的版本

3.1.3. 设计工具功能

对于表 3.1 所列举的这些工具的功能的说明会贯穿于本系列余下部分,从本系列的 3.2 小节中将开始详细讨论设计流程。在后续讨论中会说明 Vivado IDE 和 SDK 分 别提供了基本的硬件设计和软件设计功能,因此,会被认为是整个套件中最为重要的两个工具 [4]。Vivado IDE 是用于创建 SoC 设计中硬件系统部分的一个集成开发环境,例如可 创建处理器,存储器,外设,扩展接口和总线。

Vivado IDE 和设计套件中的其他工具有交互,并且包含集成和打包 IP 的工具,这种设计为工程的可重用性提供了可能。

SDK 是基于广受欢迎的 Eclipse 平台开发的软件设计工具,他 Xilinx IP 的所 有驱动,使用 C 和 C 语言且支持 ARM 和 NEON 扩展的 GCC 库,以及调试和程序概要分析工具 [2],[29]。

作为验证和调试工具,Vivado Simulator 为系统内硬件组件测试提供了硬件描 述语言(HDL)仿真环境。Vivado Logic Analyser 提供了系统内验证的工具:例如 一些包含在硬件设计中的特殊的核心,部署在 Zynq 芯片上后可以在运行时探测芯片行为,捕捉到的数据会被传送回主机,然后在逻辑分析器上显示 [26]。如其名所示,Vivado Serial I/O Analyser 是一个针对特定高速通信接口的仿真工具。

Vivado High-Level Synthesis (Vivado HLS) 和 System Generator for DSP 是专门用于创建、测试和管理硬件系统中的 IP 的工具。System Generator 是一个 基于模块的工具,用于 DSP 设计的创建和仿真,它会在第 13 章和其他 IP 创建方法一起着重讲述。Vivado HLS 是一个从 C 语言来描述综合硬件的设计工具,它是本系列后面一个特殊章节 (第 15 章)的主题。这是一种开始创建设计的方法,它使得子系统能在被高层次抽象描述,在如今力求快速上市的电子工业中有着不断增长的重要作用。

3.1.4. 第三方工具

Vivado 开发套件支持一些第三方工具,具体的内容可以在 [27] 中找到(或者 查询 Xilinx 官方网站的最新版本)。

这些第三方工具主要用于替换 Vivado 开发套件中可替换的工具:比如,需要一 个特殊的 HDL 仿真器 (例如 Aldec Active HDL 或者 Mentor Graphics ModelSim 或者 Questa)来替换 Vivado 中原有的仿真器。同样的,也有一些潜在可用的第三 方综合工具比如 Synopsys Synplify 或者 Synplify Pro。

一个值得注意的例外和 System Generator工具有关。它需要依托于 MathWorks® MATLAB®/Simulink® 环境,也因此它可以依靠 MATLAB 和 Simulink 第三方软件去实现功能 [6]。另外,对于大部分 DPS 设计来说,还额外需要两个 MathWorks 的相关组件,Signal Processing Toolbox 和 DSP System Toolbox。就 Sysetm Generator 开发环境来说,其特殊优势就在于开发者可利用 MATLAB 和 Simulink 中例如脚本、仿真、虚拟化和设备读写等所有功能,以及任何可用附加工具箱内的特殊功能(比如,图像处理,通信等)。

通常还要重点注意的是在一些特定版本的第三方软件需要与已经安装的 Vivado 开发套件的版本兼容,集体参照 [27]。因此,推荐在安装前请首先检查这些情况。

3.1.5. 系统安装和需求

读者需要再次查看 [27] 或者自己安装程序版本的用户指南,去获取所支持操作 系统的详细信息。一般来说,近期版本的 Windows 以及一些指定版本的 Linux 是支持的。在使用 Vivado 的时候,操作系统给予用户针对包含所有设计文件的目录的写入权限是至关重要的。

寻常来说,用于研发的电脑的硬件配置也很重要,因为它会在运行设计工具的 时候影响其执行时间。Xilinx 没有公布的推荐系统需求,但对于不同目标设备提供了所需内存的指导 [21]。尤其要注意的是 32 位的操作系统已经不适合最大的两款Zynq 芯片。其他三款小些的芯片则至少需要 4GB 的内存,而最大的芯片则需要高达12GB 的内存。一般来说,推荐使用双核处理器,同时一些设计工具是支持多核的,也就是说,他们可以通过多核特性来开发处理器。

电脑硬件配置上同样需要一个 USB 接口以通过 JTAG 烧写 FPGA,同时最好有另 一个 USB 接口通过串口和终端程序用于 PC-Zynq 之间的通信(这是一个在测试设计时普通以及有用的方法)。

最后,如上文所说,用户需要一个 Zynq 开发板以部署和测试设计。开发板一般 搭载一个 Zynq 芯片,以及多种其他的资源,比如电源、扩展存储器、烧写和通信的接口、简单的用户 I/O (比如按钮)、LED、开关以及其他一系列外设接口和插口。在调试阶段,通过 Vivado 设计套件,电脑可以使用 JTAG 或者以太网连接将硬件设计下载到开发板上,然后在硬件上使用所需的外设和扩展接口进行测试。通常调试包含:使用调试器连接处理器来监控它自身行为;通过 USB 转 UART 连接电脑终端,实现板上正使用设计和用户的交互;借助以太网执行硬件回路仿真。

开发板的话题将在 3.6 小节中再次被提及,彼时会提出一个关于当前可用开发 板的论述 (注意这部分内容可能会随着时间而扩展)。

综合考虑本章节至今讨论的所有因素,图 3.1 提供了一个使用 Zynq 入门的典型设置。

图 3.1: Zynq 开发设置

第六篇到此结束,明日将会带来第七篇,介绍Zynq 设计指南(“ 如何使用它?”)之设计流程概述相关内容。欢迎各位大侠一起交流学习,共同进步。

END

后续会持续更新,带来Vivado、 ISE、Quartus II 、candence等安装相关设计教程,学习资源、项目资源、好文推荐等,希望大侠持续关注。

大侠们,江湖偌大,继续闯荡,愿一切安好,有缘再见!

0 人点赞