第1章:FPGA开发环境搭建
大家好,我是你们的讲师。做FPGA这行十几年了,从Altera的Quartus II 9.0用到现在的Vivado 2024,踩过的坑比走过的路还多。今天咱们聊聊开发环境搭建——别小看这一步,我见过太多新手卡在安装配置上,一卡就是半天。
1.1 Vivado安装:Xilinx用户的必修课
Vivado是Xilinx(现在叫AMD)的官方工具。说实话,这玩意儿越来越臃肿了。我记得2012年刚出Vivado时,安装包才几个G,现在?动辄几十G。但没办法,功能确实强大。
安装前准备:
- 硬盘空间:至少留80GB,我建议100GB以上
- 内存:16GB起步,32GB更稳
- 操作系统:Windows 10/11 64位,或者Ubuntu 18.04+
- 网络:下载时别断,否则重下很痛苦
安装步骤:
- 去官网下载Vivado HLx安装包(约30-40GB)
- 双击运行,选择"Vivado HL Design Edition"(够用了)
- 勾选器件支持:7系列、UltraScale、Versal等,按需选
- 安装路径:我习惯用
C:\Xilinx\Vivado\2024.1 - 等...大概1-2小时,取决于你的电脑
1.2 Quartus安装:Intel FPGA的标配
Quartus Prime是Intel(原Altera)的工具。如果你用Cyclone系列或Arria系列,那必须装它。我个人觉得Quartus比Vivado轻量一些,但功能一点不差。
版本选择:
| 版本 | 适用场景 | 特点 |
|---|---|---|
| Quartus Prime Pro | 高端器件(Stratix 10、Agilex) | 功能最全,但收费 |
| Quartus Prime Standard | 主流器件(Cyclone V、Arria 10) | 免费版够用 |
| Quartus Prime Lite | 低端器件(Cyclone IV、MAX 10) | 完全免费,功能受限 |
我建议初学者用Lite版,免费且够用。等做复杂项目了再升级。
安装要点:
- 下载地址:Intel官网,需要注册账号
- 安装时选"单独安装Quartus",别装ModelSim(后面单独配)
- 器件支持包:只勾选你需要的,全选的话...硬盘会哭
我的经验:Quartus的License管理比较麻烦。如果你用Lite版,不需要License。但Standard版需要申请免费License,记得用网卡MAC地址绑定。
1.3 ModelSim/VCS配置:仿真工具的选择
仿真,说白了就是让你的代码在电脑上先跑一遍。我刚开始做FPGA时,觉得仿真浪费时间,直接上板调。结果?烧坏了两块板子才老实了。
ModelSim:
- 适合小规模设计,编译速度快
- Intel版免费,Xilinx版需要单独装
- 命令行操作:
vsim -c -do run.tcl
VCS:
- Synopsys家的,适合大规模设计
- 速度快,但配置复杂
- 需要License,一般公司才用
配置步骤(以ModelSim为例):
- 安装ModelSim(约2GB)
- 设置环境变量:
MODELSIM_HOME指向安装目录 - 编译库文件:
vlib work - 写个简单的testbench测试一下
// 简单的testbench示例
module tb_counter;
reg clk;
reg rst_n;
wire [3:0] count;
counter uut (
.clk(clk),
.rst_n(rst_n),
.count(count)
);
initial begin
clk = 0;
forever #5 clk = ~clk; // 100MHz时钟
end
initial begin
rst_n = 0;
#20 rst_n = 1;
#200 $finish;
end
endmodule
1.4 Git基础:版本管理的救命稻草
做FPGA项目,代码版本管理太重要了。我见过有人用"final.v"、"final_v2.v"、"真的最终版.v"这种命名方式...结果呢?改出bug了都不知道从哪回退。
Git基本操作:
git init:初始化仓库git add .:添加所有文件git commit -m "描述":提交版本git log:查看历史git checkout:回退版本
FPGA项目的.gitignore示例:
# 忽略生成文件
*.jou
*.log
*.str
*.bit
*.rpt
*.dcp
*.xdc.bak
# 忽略缓存
.ip_cache/
.runs/
.sdk/
常用Git工作流:
- 克隆项目:
git clone url - 创建分支:
git checkout -b feature/xxx - 开发、测试、提交
- 合并到主分支:
git merge - 推送远程:
git push
总结一下:环境搭建看似基础,但直接影响后续开发效率。Vivado和Quartus选一个就行,别贪多。仿真工具必须配好,这是调试的利器。Git一定要用,别等到代码丢了才后悔。
好了,这一章就到这里。下一章我们聊聊Verilog基础语法——别觉得简单,很多老手都会在语法上翻车。咱们下章见!