2、开发环境准备:硬件需求与软件清单
做FPGA开发,第一步不是写代码,而是把环境搭好。我见过太多新手,上来就装Vitis,结果发现板子不兼容、驱动装不上,折腾半天还没开始就放弃了。今天咱们就把这事一次性说清楚。
2.1 硬件需求:选对板子,事半功倍
说白了,你得先确定目标平台。Xilinx(现在叫AMD)的产品线很清晰,我按场景给你分个类:
| 应用场景 | 推荐开发板/加速卡 | 核心芯片 | 适合人群 |
|---|---|---|---|
| 入门学习 | Nexys A7 / Basys 3 | Artix-7 | 学生、初学者 |
| 嵌入式开发 | Zynq-7000系列(如ZedBoard) | Zynq-7020 | SoC开发者 |
| 高性能计算 | Alveo U200 / U250 | Virtex UltraScale+ | 数据中心、AI加速 |
| 视频处理 | Kria KV260 | Kria K26 | 边缘计算、视觉应用 |
我的建议:如果你刚开始学,别一上来就买几千块的加速卡。一块Nexys A7或者ZedBoard足够跑通Vitis的绝大多数例程。我在项目中用过Alveo卡,说实话,入门阶段用那个有点杀鸡用牛刀。
嗯,这里要注意一个坑:Vitis 2023.1及以上版本已经不再支持7系列器件。如果你手里是Basys 3或者Nexys A7,记得用Vitis 2022.2或更早版本。我曾经帮一个学生调试,他装了最新版Vitis,结果死活找不到Artix-7的器件支持,折腾了两天才发现是版本问题。
2.2 操作系统支持:Ubuntu还是Windows?
这个问题我经常被问到。我的回答是:能用Linux就用Linux。为什么?
- Ubuntu 20.04 / 22.04 LTS:官方首选,驱动兼容性最好,命令行工具链完整。我个人习惯用Ubuntu 20.04,因为很多第三方库对22.04的支持还在路上。
- Windows 10/11:也能用,但要注意:Vitis在Windows上不支持某些调试功能(比如System Debugger的某些高级特性)。而且,Windows的路径长度限制偶尔会给你添乱。
避坑指南:我曾经在Windows上跑Vitis,编译一个稍微大点的工程,结果报了个莫名其妙的“路径太长”错误。后来发现是Windows的MAX_PATH限制(260个字符)。解决办法:要么把工程放在C盘根目录,要么启用Windows的LongPathsEnabled注册表项。
你想想看,如果只是做简单的嵌入式开发,Windows也够用。但一旦涉及到硬件加速、自定义IP核、或者需要频繁用命令行,Linux的优势就出来了。说白了,Vitis本身就是从Linux生态长出来的工具。
2.3 必备软件清单:一个都不能少
好,现在咱们列一下要装哪些东西。我按安装顺序来,这样最不容易出问题。
- Vitis Unified Software Platform(核心工具)
- 包含Vitis IDE、编译器、调试器
- 建议下载“Vitis Unified Software Platform”完整安装包,大概30-40GB
- 安装时记得勾选你需要的器件支持包
- Xilinx Runtime (XRT)(运行时库)
- 用于管理FPGA加速卡(如Alveo)的驱动和API
- Linux下安装命令:
sudo apt install xrt - Windows下需要单独下载安装包
- JTAG驱动(Cable Drivers)
- 用于连接开发板和PC
- Linux下需要安装
fxload和libusb - Windows下安装Vivado时会自动安装
- Git(版本控制)
- 不是必须,但我强烈建议装。你不想某天改崩了代码回不去吧?
- 串口终端工具
- Linux:
minicom或screen - Windows:Putty或MobaXterm
- Linux:
小技巧:安装Vitis时,可以只选你需要的器件系列,别全选。全选的话安装包接近100GB,而且很多你用不上。我一般只选Zynq-7000和Kintex UltraScale+,够用了。
2.4 知识体系总览
为了让你对整个环境搭建有个全局认识,我画了张图。这张图展示了硬件、操作系统、软件三者之间的关系,以及你最终要达成的目标——一个能跑通Hello World的Vitis工程。
2.5 安装顺序与注意事项
安装顺序其实有讲究。我建议你按这个顺序来:
- 先装Vitis:因为安装包会同时安装Vivado和Vitis,以及对应的器件库
- 再装XRT:如果你用的是加速卡,XRT必须装。注意XRT版本要和Vitis版本匹配
- 最后装驱动:JTAG驱动和USB驱动
重要提醒:Linux下安装Vitis时,千万别用root用户直接装。我曾经图省事用sudo装,结果后面普通用户权限不够,JTAG连不上板子。正确的做法是:用普通用户安装,安装路径选在用户目录下(比如/home/yourname/Xilinx)。
还有一个细节:环境变量。装完Vitis后,记得source一下设置脚本:
# 在~/.bashrc中添加
source /tools/Xilinx/Vitis/2023.1/settings64.sh
source /opt/xilinx/xrt/setup.sh
嗯,这样每次打开终端就不用手动source了。我刚开始做项目时经常忘记source,然后编译报错说找不到vitis命令,后来养成习惯写在.bashrc里,再也没出过问题。
2.6 验证环境是否装好
装完别急着写代码,先验证一下:
# 检查Vitis版本
vitis -version
# 检查XRT版本
xbutil examine
# 检查JTAG连接
vivado -mode batch -source check_jtag.tcl
如果这些命令都能正常输出,恭喜你,环境搭好了。如果报错,别慌,多半是环境变量没设对,或者驱动没装好。回头检查一下上面的步骤。
好了,环境准备就说到这。下一节咱们开始创建第一个Vitis工程,到时候我会手把手带你走一遍流程。