01
Vivado与HLS协同开发概述
什么是HLS · 为什么需要协同开发 · 交互流程 · 典型应用场景
概念流程
02
Vivado开发环境搭建
安装与配置 · 许可证管理 · 第一个Vivado工程 · 工程结构解析
环境入门
03
HLS开发环境搭建
Vitis HLS安装 · 第一个HLS工程 · 工程结构 · 版本匹配
环境Vitis
04
C/C++代码规范与HLS约束
可综合子集 · ap_int/ap_fixed · 循环与数组约束 · 函数内联与流水线
语法约束
05
HLS接口综合
block-level协议 · port-level协议 · AXI4-Stream/Lite/Full
接口AXI4
06
HLS优化指令 (上)
PIPELINE · UNROLL · ARRAY_PARTITION · ARRAY_RESHAPE
优化指令
07
HLS优化指令 (下)
DATAFLOW · DEPENDENCE · LATENCY · LOOP_MERGE · FUNCTION_INSTANTIATE
优化高级
08
HLS仿真与调试
C仿真 · C/RTL协同仿真 · 波形分析 · 性能报告 · 错误排查
仿真调试
09
HLS导出IP核
导出RTL IP · Vivado IP Catalog · System Generator · 版本管理
IP导出
10
Vivado IP集成器基础
IP Integrator · 添加HLS IP · 配置与连接 · 地址映射
集成IPI
11
Vivado Block Design设计
创建BD · 外部接口(DDR/ETH) · 自动/手动连接 · 验证设计
Block Design连接
12
Vivado综合与实现
综合策略 · 实现策略 · 时序约束 · 资源利用率 · 功耗分析
综合实现
13
Vivado仿真与调试
行为仿真 · 后综合/后实现仿真 · ILA · VIO调试核
仿真调试
14
实战1:LED闪烁控制
HLS编写PWM控制器 · Vivado最小系统 · 上板验证
实战LED
15
实战2:图像边缘检测
HLS Sobel算子 · Vivado集成VDMA+HDMI · 上板验证
实战图像
16
实战3:FIR滤波器设计
HLS可配置FIR · Vivado集成DDS+DAC · 上板验证
实战DSP
17
实战4:FFT加速器设计
HLS基2-FFT · Vivado集成DDR+PCIe · 上板验证
实战FFT
18
实战5:神经网络推理加速器
HLS卷积+全连接 · Vivado集成AXI-DMA+DDR · 上板验证
实战AI
19
AXI4总线协议详解
Full/Lite/Stream区别 · 握手信号 · 突发传输 · 地址数据通道
总线协议
20
HLS中的AXI4接口实现
AXI4-Lite从设备 · AXI4-Stream主设备 · AXI4-Full主设备
HLSAXI4
21
Vivado AXI4互联与桥接
AXI Interconnect · SmartConnect · Crossbar · AXI-to-AHB
互联桥接
22
DDR内存控制器与HLS数据搬运
MIG配置 · HLS DDR访问 · 数据对齐 · 性能优化
DDRMIG
23
DMA与数据流传输
AXI-DMA · AXI-Datamover · 流式传输 · Scatter-Gather
DMA数据流
24
时序收敛技巧
关键路径 · 流水线深度 · 寄存器插入 · 逻辑复制 · 重定时
时序收敛
25
资源优化技巧
资源共享 · DSP48 · BRAM · 逻辑复用 · 面积速度权衡
资源优化
26
功耗优化技巧
时钟门控 · 数据门控 · 操作数隔离 · 电压缩放 · HLS功耗估计
功耗低功耗
27
版本控制与团队协作
Git在FPGA项目 · HLS代码版本 · Vivado工程版本 · CI/CD
Git协作
28
HLS与Vivado脚本化开发
Tcl脚本基础 · HLS Tcl · Vivado Tcl · 自动化构建
脚本Tcl
29
协同开发常见问题与调试技巧
C/RTL不匹配 · 时序违例 · 资源超限 · 接口协议不匹配
调试FAQ
30
综合项目实战:智能摄像头系统
HLS图像预处理+目标检测 · Vivado集成MIPI/DDR/HDMI/以太网 · 上板验证
综合实战摄像头