01
课程导论与背景
为什么需要FPGA加速大单拆解?量化交易、高频行情中的核心痛点。
导论痛点
02
FPGA基础回顾
FPGA架构、LUT、DSP、BRAM、SerDes,与传统CPU/GPU对比。
架构资源
03
大单拆解算法原理
TWAP、VWAP、POV等经典算法,为什么需要硬件加速。
算法TWAP
04
硬件描述语言选型
Verilog vs VHDL vs SystemVerilog vs HLS,推荐HLS做原型验证。
HDLHLS
05
开发环境搭建
Vivado/Vitis安装、License配置、仿真器、Git版本管理。
环境Vivado
06
第一个FPGA加速模块
从加法器开始,理解流水线、并行度与吞吐量。
入门流水线
07
AXI-Stream总线详解
握手协议、数据包格式、Backpressure处理,FPGA通信命脉。
总线AXI
08
DDR4控制器与数据缓存
MIG IP核配置、读写时序、多端口访问与仲裁。
DDR4MIG
09
UDP协议栈实现
MAC层、IP层、UDP层,为什么不用TCP?硬件协议栈取舍。
UDP协议栈
10
行情数据解析
从网络包到Order Book,解析Level2行情数据的硬件实现。
行情Level2
11
Order Book硬件设计
哈希表 vs 内容寻址存储器(CAM),O(1)订单查找。
OrderBookCAM
12
大单拆解核心引擎
将大单拆成多个子单,控制时间间隔与价格偏移。
拆单引擎
13
随机化与噪声注入
为什么需要随机化?LFSR(线性反馈移位寄存器)实现。
随机化LFSR
14
定时器与调度器
高精度定时器设计,微秒级调度,避免时间漂移。
定时器调度
15
FIFO与跨时钟域同步
异步FIFO设计、格雷码、CDC(Clock Domain Crossing)处理。
FIFOCDC
16
状态机设计
Mealy vs Moore,FSM控制拆单流程,状态编码技巧。
FSM状态机
17
性能优化
流水线深度、寄存器平衡、关键路径分析,优化技巧。
优化时序
18
仿真与验证
UVM框架简介、定向测试与随机测试、覆盖率驱动验证。
UVM验证
19
硬件调试
ChipScope/ILA、Vivado逻辑分析仪、Signal Tap实战。
调试ILA
20
时序约束
主时钟约束、生成时钟、输入输出延迟、虚假路径。
时序约束
21
上板测试
从仿真到上板,JTAG加载、Flash配置、板级调试流程。
上板JTAG
22
性能评估
延迟、吞吐量、资源利用率,量化加速效果。
性能评估
23
与CPU协同
PCIe通信基础、DMA传输、中断处理,FPGA作为协处理器。
PCIeDMA
24
多FPGA系统
多卡协同、数据分发、同步问题,踩过的坑。
多卡同步
25
安全与风控
价格校验、订单检查、熔断机制,硬件级别风控。
风控安全
26
功耗优化
时钟门控、数据使能、动态电压频率调整,低功耗实践。
功耗低功耗
27
版本迭代与维护
IP核封装、参数化设计、文档管理,让代码活得更久。
维护IP
28
案例实战:VWAP拆单加速器
基于Xilinx Alveo U250的VWAP拆单加速器,完整流程演示。
实战U250
29
常见问题与排错
时序违例、数据错乱、死锁,排错心法。
排错时序
30
课程总结与展望
FPGA加速未来,RISC-V与FPGA融合,给新手的建议。
总结RISC-V