01
FPGA交易系统概述
高频交易简介 · FPGA为何适合交易系统 · 架构概览 · 项目目标与学习路径
入门架构
02
开发环境搭建
Vivado/Quartus安装 · 仿真工具配置 · Git设置 · 项目目录结构规划
环境工具
03
Verilog基础回顾(上)
模块与端口 · 数据类型(reg/wire) · 组合逻辑 · 阻塞与非阻塞赋值
Verilog基础
04
Verilog基础回顾(下)
时序逻辑 · 状态机FSM · 同步与异步 · Testbench编写
Verilog进阶
05
网络协议基础(上)
OSI七层模型 · 以太网帧结构 · MAC/IP地址 · UDP协议详解
网络协议
06
网络协议基础(下)
TCP简介 · ARP实现 · ICMP协议 · 网络校验和计算
网络实现
07
UDP/IP协议栈实现(上)
MAC层设计 · CRC校验 · MII/GMII/RGMII接口
协议栈MAC
08
UDP/IP协议栈实现(下)
IP层组包/解包 · UDP层设计 · ARP缓存 · 仿真验证
协议栈验证
09
交易数据解析
行情数据Level1/2 · 订单簿数据结构 · 字节序处理 · 解析器状态机
数据解析
10
低延迟设计原则(上)
流水线设计 · 并行处理 · 关键路径优化 · 寄存器平衡
低延迟优化
11
低延迟设计原则(下)
时钟域同步CDC · FIFO设计 · 乒乓操作 · 资源与速度权衡
低延迟CDC
12
交易引擎核心设计(上)
订单管理 · 价格比较器 · 撮合状态机 · 风险控制模块
核心引擎
13
交易引擎核心设计(下)
资金计算 · 交易记录FIFO · 错误处理 · 性能指标
核心性能
14
PCIe接口基础
PCIe协议概述 · DMA传输 · XDMA IP核 · BAR空间配置
PCIe接口
15
主机与FPGA通信(上)
AXI4-Stream · AXI4-Lite · 寄存器映射 · 中断机制
通信AXI
16
主机与FPGA通信(下)
DMA驱动(Linux) · 用户态驱动库 · 零拷贝 · 性能测试
驱动DMA
17
精确时间同步
PTP(IEEE 1588)原理 · 硬件时间戳 · 时钟同步 · 纳秒校准
时间同步
18
系统时钟架构
多时钟域管理 · MMCM/PLL配置 · 抖动分析 · 全局时钟网络
时钟架构
19
仿真与验证策略(上)
仿真环境搭建 · 自动化测试脚本 · 覆盖率分析 · 随机测试
验证仿真
20
仿真与验证策略(下)
形式化验证 · 时序/门级仿真 · 硬件加速仿真 · 调试技巧
验证调试
21
时序约束与收敛
时序分析SDC · I/O延迟约束 · 多周期路径 · 收敛技巧
时序约束
22
资源优化与综合
面积优化 · 功耗优化 · 综合策略 · 网表分析
优化综合
23
板级调试
ChipScope/SignalTap · ILA/VIO核 · JTAG调试 · 硬件断点
调试硬件
24
系统集成测试
端到端测试 · 延迟测量 · 吞吐量测试 · 压力测试
测试集成
25
性能优化实战
流水线深度调整 · LUT优化 · BRAM优化 · DSP48应用
性能优化
26
安全与可靠性
CRC/ECC校验 · 看门狗 · 三模冗余TMR · 安全启动
安全可靠性
27
项目文档与版本管理
设计文档规范 · 代码风格 · Git分支策略 · CI/CD集成
文档管理
28
部署与运维
FPGA配置文件管理 · 远程更新 · 监控告警 · 日志系统
部署运维
29
案例分析(上)
纳斯达克PHLX · Xilinx Alveo加速卡 · 开源项目fpgasys-trading
案例实战
30
案例分析(下)
延迟对比(FPGA vs CPU vs GPU) · 成本分析 · 未来趋势(智能网卡/DPU)
趋势对比