FPGA加速直连接入方案实战

📚 共计 30 章节
01
直连接入概述
FPGA加速卡发展背景 · 直连接入定义与优势 · 与传统PCIe对比
概念背景
02
硬件平台选型
主流加速卡(Xilinx Alveo/Intel PAC) · 资源评估 · 功耗散热
硬件选型
03
开发环境搭建
Vivado/Vitis工具链 · 板卡驱动配置 · 首次上电验证
环境工具
04
PCIe基础回顾
拓扑结构 · TLP格式 · 配置空间与BAR空间
PCIe协议
05
DMA引擎原理
Scatter-Gather/Block模式 · 描述符链 · 中断机制
DMA引擎
06
QDMA架构解析
QDMA IP核 · 队列管理 · C2H与H2C通道
QDMA架构
07
XDMA架构解析
XDMA IP配置 · AXI桥接 · 多通道设计
XDMA桥接
08
直连驱动开发(Linux)
字符设备框架 · mmap · ioctl控制接口
Linux驱动
09
直连驱动开发(Windows)
WDF框架 · DMA传输 · 用户态API封装
WindowsWDF
10
用户态库封装
libqdma/libxdma API · 零拷贝 · 内存注册
API零拷贝
11
FPGA端逻辑设计(一)
AXI4-Stream时序 · 数据包格式 · 时钟域同步
逻辑AXI
12
FPGA端逻辑设计(二)
描述符解析 · 地址生成 · 完成状态回写
描述符状态
13
FPGA端逻辑设计(三)
多通道仲裁器 · 优先级调度 · 带宽分配
仲裁调度
14
性能测试方法论
带宽测试(iperf-like) · 延迟(Ping-pong) · 吞吐量模型
测试性能
15
性能调优实战
Gen3/Gen4链路优化 · Max Payload Size · 中断合并
调优PCIe
16
多卡协同方案
多FPGA同步 · 全局时钟 · 数据分发策略
多卡协同
17
存储直连场景
NVMe over PCIe直通 · FPGA与SSD交互 · SPDK集成
存储NVMe
18
网络直连场景
100G/400G MAC · TCP/IP卸载 · RDMA over PCIe
网络TOE
19
AI推理加速场景
模型分区 · 张量直传 · 算子流水线
AI推理
20
视频处理场景
视频流捕获 · 帧缓冲管理 · 显示输出直连
视频帧缓冲
21
安全与隔离
SR-IOV虚拟化 · PF/VF划分 · DMA重映射(IOMMU)
安全虚拟化
22
调试与验证
ILA/VIO调试 · PCIe Analyzer · 驱动日志分析
调试验证
23
常见问题排查
链路训练失败 · DMA超时 · 内存泄漏 · 中断风暴
排查故障
24
功耗优化
动态时钟门控 · 电源域管理 · 负载感知调度
功耗优化
25
可靠性设计
ECC保护 · 链路重传 · 看门狗定时器
可靠性ECC
26
自动化测试框架
Python脚本驱动 · 回归测试 · 性能基线管理
自动化测试
27
容器化部署
Docker镜像 · Kubernetes设备插件 · 资源隔离
容器K8s
28
云原生集成
OpenStack Cyborg · K8s DRA · FPGA资源池化
云原生池化
29
案例实战(一):金融行情加速
UDP接收到订单生成 · 全链路FPGA直连
金融行情
30
案例实战(二):基因测序加速
Smith-Waterman算法 · FPGA直连实现
基因测序