第二章:开发环境搭建——Vivado与Vitis的安装、许可证配置、硬件驱动安装
好,咱们正式开始动手了。
这一章,说白了就是把你电脑武装成一台能干活儿的Zynq开发工作站。我见过太多新手卡在这一步——软件装到一半报错,许可证死活激活不了,驱动装完设备管理器里还是黄色感叹号。别急,我带你一步步走,踩过的坑我都替你填平了。
核心要点:Vivado负责硬件设计(写Verilog、搭Block Design),Vitis负责软件开发(写C代码、调试)。两者必须配合使用,版本必须严格一致。
2.1 软件版本选择——别追新,求稳
我个人习惯用 Vivado 2021.1 或 2022.2。为什么?
- 2021.1 对Zynq-7000系列支持最成熟,我项目里用了两年没出过幺蛾子
- 2022.2 开始支持Vitis统一平台,但有些老IP需要手动更新
- 2023以上版本?嗯,除非你用的是最新芯片,否则别折腾
你想想看,如果装了个2024.1,结果发现某个驱动不兼容,回头再卸载重装,一整天就搭进去了。我在项目中吃过这个亏——当时为了尝鲜装了2023.2,结果JTAG驱动死活认不到板子,最后灰溜溜换回2022.2。
我的建议:去Xilinx官网下载 Vivado ML Edition(以前叫WebPACK),选“Vivado HLx 2022.2: All OS Installer”。单文件大概40GB,准备好网速和硬盘空间。
2.2 安装流程——三步走,别跳步
第一步:下载与解压
下载完是一个 .tar 或 .exe 文件。Windows用户直接双击,Linux用户用命令行解压:
tar -xvf Xilinx_Vivado_2022.2_*.tar.gz
cd Xilinx_Vivado_2022.2_*
./xsetup
这里要注意:路径不要有中文,不要有空格。我曾经见过有人把安装包放在“桌面/新建文件夹”里,结果安装器直接崩溃——它不认识中文路径。
第二步:选择安装组件
安装向导会让你选产品。选 Vivado ML Edition,然后勾选:
- Design Tools(必选,包含Vivado和Vitis)
- Devices(选你用的芯片系列,Zynq-7000必选,Zynq UltraScale+按需)
- Install Cable Drivers(这个必须勾!否则JTAG用不了)
其他什么DocNav、PetaLinux可以后面再装,别贪多。我刚开始时全选了,结果装了整整6个小时,最后发现一半用不上。
第三步:等待与验证
安装过程大概30分钟到1小时,取决于你的电脑配置。装完后打开Vivado,如果能正常启动,恭喜你,第一步完成了。
警告:安装过程中如果弹出防火墙提示,务必选择“允许访问”。否则Vivado的许可证管理工具无法联网验证。
2.3 许可证配置——最容易翻车的一步
许可证配置,说白了就是让软件知道“你有权使用它”。Xilinx的许可证分两种:
| 类型 | 适用场景 | 获取方式 |
|---|---|---|
| Node-Locked(节点锁定) | 个人电脑,固定使用 | 官网申请免费License |
| Floating(浮动) | 公司服务器,多人共享 | 购买或公司IT配置 |
咱们个人学习用,申请 免费Node-Locked License 就够了。步骤:
- 打开Vivado,点击 Help → Obtain a License
- 浏览器会自动跳转到Xilinx官网,登录你的账号(没有就注册一个)
- 选择 Vivado ML Edition (Free),填写你的电脑主机名和MAC地址
- 下载生成的
.lic文件 - 回到Vivado,点击 Help → Manage License → Load License,导入刚才的文件
我曾经遇到过一个问题:导入后提示“Invalid license file”。折腾了半天,发现是电脑的MAC地址填错了——笔记本有无线网卡和有线网卡两个MAC,必须填 有线网卡 的那个。你可以在命令行输入 ipconfig /all(Windows)或 ifconfig(Linux)查看。
小技巧:许可证文件是文本格式,你可以用记事本打开看看。里面会列出允许使用的IP核和器件型号。如果发现缺少某个IP,说明你申请时没勾选对应的选项。
2.4 硬件驱动安装——让电脑认识你的开发板
软件装好了,许可证也配好了,接下来就是让电脑能跟开发板“说话”。Zynq开发板通过 JTAG 接口连接电脑,需要安装 Xilinx Cable Drivers。
Windows用户
安装Vivado时如果勾选了“Install Cable Drivers”,驱动已经自动装好了。但有时候系统会抽风,需要手动安装:
- 打开设备管理器,找到带黄色感叹号的设备(通常是“Xilinx USB Cable”或“Digilent USB Device”)
- 右键 → 更新驱动程序 → 浏览我的电脑查找驱动
- 路径选到Vivado安装目录下的
data\xicom\cable_drivers\nt64\ - 安装完成后,设备管理器里应该出现 Xilinx USB Cable 或 Digilent Adept USB Device
Linux用户
Linux下稍微麻烦点,需要手动设置udev规则:
# 进入驱动目录
cd /tools/Xilinx/Vivado/2022.2/data/xicom/cable_drivers/lin64/install_script/install_drivers/
# 执行安装脚本
sudo ./install_drivers
# 重启udev服务
sudo udevadm control --reload-rules
sudo udevadm trigger
然后插上开发板,运行 lsusb,如果看到 Xilinx, Inc. 或 Digilent 字样,说明驱动装好了。
注意:Linux下如果遇到权限问题,记得把当前用户加入 plugdev 组:sudo usermod -a -G plugdev $USER。然后注销重新登录。
2.5 验证环境——跑个Hello World试试
环境搭没搭好,拉出来遛遛就知道了。打开Vivado,新建一个空工程,随便加个Zynq IP核,生成Bitstream。如果编译通过,说明Vivado没问题。
然后打开Vitis,新建一个Hello World工程,下载到板子上。如果串口打印出“Hello World”,恭喜你——环境搭建成功!
避坑指南:我曾经遇到Vivado编译通过,但Vitis死活连不上板子。最后发现是JTAG线接触不良——换了一根USB线就好了。所以,如果驱动装好了还是连不上,先检查硬件连接,别急着重装软件。
2.6 本章知识体系
下面这张图帮你理清整个环境搭建的逻辑关系:
这张图把整个流程串起来了。你照着这个顺序走,基本不会出大问题。如果卡在某个环节,回头看看对应的章节,或者直接去Xilinx社区搜一下——我当年就是这么过来的。
最后说一句:环境搭建是最枯燥但最重要的一步。别嫌麻烦,一次配好,后面能省你十倍的调试时间。我见过太多人急着写代码,结果环境没配好,折腾两天连LED都点不亮——那才叫欲哭无泪。