01
Vitis与Vivado集成概述
Vitis统一软件平台介绍 · Vivado设计套件 · 协同工作流程 · 硬件加速核概念
概念流程
02
开发环境搭建
版本匹配 · 安装详解 · License配置 · 环境变量 · 问题排查
环境安装
03
Vivado硬件平台创建
创建工程 · 添加IP · 配置Zynq/MPSoC · 生成XSA
Vivado硬件
04
Vitis加速核开发流程
开发模式 · 加速核步骤 · 软硬件分工 · 典型周期
流程方法论
05
Vitis内核编程模型
OpenCL C/C++ · 数据类型 · 工作项/组 · 内核属性
编程OpenCL
06
Vitis内核优化基础
流水线 · 数据流 · 数组分割/映射 · 循环展开
优化性能
07
Vivado IP集成器基础
IP Integrator界面 · 添加连接IP · AXI总线 · 地址映射
IPIAXI
08
将Vitis内核封装为Vivado IP
内核打包 · 生成RTL · 配置接口 · 生成XCI
封装IP
09
在Vivado中集成Vitis加速IP
导入IP库 · 实例化加速IP · 连接AXI · 时钟复位
集成Vivado
10
系统连接与验证
Block Design检查 · 自动化连接 · 手动排错 · Validation
验证连接
11
Vitis平台工程创建
创建平台 · 导入XSA · 配置运行时 · 平台验证
平台XSA
12
Vitis应用工程开发
创建应用 · 主机代码 · 调用加速核 · 数据搬移
应用主机
13
主机代码编写详解
OpenCL API · 上下文/命令队列 · 缓冲区 · 内核执行
API同步
14
Vitis仿真调试
sw_emu · hw_emu · 调试技巧 · 波形分析
仿真调试
15
Vitis性能分析
Profile报告 · 瓶颈定位 · 资源利用率 · 吞吐/延迟
性能分析
16
Vivado时序收敛基础
时序约束 · 时钟约束 · I/O延迟 · 时序报告
时序约束
17
Vivado布局布线优化
Pblock · 布局规划 · 拥塞处理 · 增量编译
布局布线
18
多加速核系统设计
多核并行 · 内核通信 · 共享内存 · 负载均衡
多核架构
19
DMA与数据搬移优化
AXI DMA · Scatter-Gather · 数据对齐 · 带宽优化
DMA搬移
20
全局存储器与局部存储器
DDR优化 · BRAM/URAM · 存储器层级 · 缓存一致性
存储BRAM
21
Vitis库与中间件
Vision库 · AI库 · HLS库 · 第三方集成
库中间件
22
Vitis加速核调试进阶
断点调试 · 日志 · ILA/VIO · 错误注入
调试ILA
23
Vivado比特流生成与下载
综合实现 · 比特流选项 · 下载开发板 · 配置验证
比特流下载
24
Vitis系统启动与运行
SD卡启动 · JTAG启动 · Linux运行 · 裸机运行
启动部署
25
性能对比与基准测试
软硬件对比 · 基准方法 · 加速比/功耗/面积
基准对比
26
常见问题与解决方案
编译错误 · 链接错误 · 运行时崩溃 · 性能不达预期
FAQ排错
27
案例实战1:图像滤波加速
图像处理算法 · Vitis内核 · Vivado集成 · 性能测试
实战图像
28
案例实战2:矩阵乘法加速
算法优化 · 分块策略 · 流水线 · 与CPU对比
实战矩阵
29
案例实战3:FFT加速
FFT硬件实现 · Vitis内核 · Vivado集成 · 实时信号处理
实战FFT
30
课程总结与进阶方向
要点回顾 · Versal ACAP · AI Engine · 学习资源
总结进阶