FPGA零基础到独立开发 · 完整指南

📚 共计 30 章节
01
数字电路基础回顾
从晶体管到逻辑门,组合逻辑与时序逻辑的核心区别,为什么我们需要可编程逻辑?
基础逻辑门
02
FPGA的诞生与演进
从PAL/GAL到CPLD再到现代FPGA,Xilinx与Altera(Intel)的江湖往事,FPGA芯片内部到底长什么样?
历史架构
03
开发环境全家桶
Vivado/Quartus安装避坑指南,License获取与配置,第一个工程创建流程。
工具安装
04
硬件描述语言选型
Verilog vs VHDL vs SystemVerilog,我为什么推荐Verilog入门,语言基础语法速览。
Verilog选型
05
Verilog模块化设计
module/endmodule结构,端口定义(input/output/inout),例化与层次化设计。
模块层次化
06
Verilog数据类型与运算符
wire与reg的相爱相杀,向量与标量,阻塞赋值与非阻塞赋值的本质区别。
数据类型赋值
07
组合逻辑建模
assign连续赋值,always@(*)用法,case/z/casex语句,三态门设计。
组合逻辑case
08
时序逻辑建模
always@(posedge clk)的奥秘,同步复位与异步复位,寄存器与锁存器的生成条件。
时序复位
09
有限状态机(FSM)
Moore与Mealy状态机,三段式写法详解,状态编码(二进制/格雷码/独热码)。
FSM状态机
10
仿真与测试平台
Testbench结构,initial与always块,$display/$monitor系统函数,波形查看技巧。
仿真Testbench
11
Modelsim/Vivado Simulator仿真实战
仿真库编译,do文件编写,断点调试与波形对比。
仿真器调试
12
组合逻辑经典电路
加法器(全加器/超前进位加法器),比较器,编码器,译码器,多路选择器。
电路加法器
13
时序逻辑经典电路
计数器(二进制/BCD/可逆),分频器(偶数/奇数/半整数),移位寄存器。
计数器分频
14
存储器设计
单口RAM、双口RAM、FIFO(同步/异步),ROM实现,IP核使用与定制。
存储器FIFO
15
时钟与复位设计
时钟域的概念,全局时钟网络,异步复位同步释放,时钟抖动与偏移。
时钟复位
16
跨时钟域同步(CDC)
单比特同步(双级触发器),多比特同步(异步FIFO/握手协议),亚稳态的本质。
CDC亚稳态
17
时序约束入门
create_clock/set_input_delay/set_output_delay,时序路径分析,建立时间与保持时间。
约束时序
18
静态时序分析(STA)
时序报告解读,关键路径分析,时序违例修复策略(流水线/寄存器平衡)。
STA优化
19
综合与实现
综合(Synthesis)概念,RTL到网表的映射,布局布线(P&R)流程,资源利用率分析。
综合布局布线
20
I/O接口设计
GPIO配置,按键消抖,LED驱动,数码管动态扫描,UART协议实现。
I/OUART
21
SPI与I2C总线设计
SPI主从模式实现,I2C总线仲裁,EEPROM读写实战。
SPII2C
22
PWM与电机控制
PWM生成原理,呼吸灯实现,直流电机/步进电机控制基础。
PWM电机
23
VGA/HDMI显示驱动
VGA时序标准,色彩空间,字符与图像显示,HDMI接口简介。
显示VGA
24
数字信号处理基础(DSP)
乘累加器(MAC),FIR滤波器设计,CORDIC算法实现。
DSPFIR
25
高速串行接口入门
SerDes原理,LVDS与差分信号,GTP/GTX收发器基础。
高速SerDes
26
片上系统(SOPC)设计
MicroBlaze/Nios II软核处理器,AXI总线协议,软硬件协同设计。
SOPC软核
27
HLS(高层次综合)入门
C/C++转RTL,HLS优化指令(pipeline/unroll/array_partition),性能评估。
HLSC转RTL
28
调试与验证方法论
ChipScope/SignalTap逻辑分析仪使用,ILA与VIO核,在线调试技巧。
调试逻辑分析仪
29
项目实战一:简易数字时钟
含闹钟功能,需求分析,模块划分,仿真验证,板级调试。
项目时钟
30
项目实战二:简易逻辑分析仪
8通道/100MHz采样,ADC接口,FIFO缓存,USB/UART上传上位机。
项目逻辑分析仪