VIP20
本课程属于:019-Vitis开发 芯片设计与FPGA · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

卷积加速器流水线设计指南

📚 共计 30 章节
01
卷积加速器概述
从软件算法到硬件加速的演进,为什么需要专用加速器。
演进动机
02
流水线设计基础
流水线的概念、深度与吞吐率的关系、经典5级流水线模型。
吞吐率5级模型
03
卷积计算核心
im2col算法、Winograd算法、FFT在卷积中的应用对比。
im2colWinogradFFT
04
数据流架构
权值固定流、输出固定流、输入固定流三种主流数据流分析。
权值固定输出固定输入固定
05
脉动阵列设计
一维脉动阵列、二维脉动阵列、数据复用策略。
一维二维数据复用
06
片上存储层次
全局Buffer、局部寄存器、双缓冲机制设计。
Buffer双缓冲
07
控制通路设计
有限状态机(FSM) vs 可编程控制器,微码设计思路。
FSM微码
08
乘加单元(MAC)设计
定点数 vs 浮点数,低精度量化(INT8/INT4)实现。
定点INT8INT4
09
池化与激活单元
ReLU、MaxPool、AveragePool的流水线集成。
ReLUMaxPool
10
数据加载与DMA
DMA控制器设计、地址生成逻辑、突发传输优化。
DMA突发传输
11
流水线平衡
各阶段延迟匹配、气泡消除、寄存器插入策略。
延迟匹配气泡消除
12
冲突与冒险
结构冒险、数据冒险、控制冒险的检测与解决。
结构冒险数据冒险
13
前馈与旁路
数据前递技术、写后读(RAW)冒险的旁路处理。
前递旁路
14
多通道并行
输入通道并行、输出通道并行、混合并行策略。
输入并行输出并行
15
卷积核分解
大核分解为小核、深度可分离卷积的硬件映射。
大核分解深度可分离
16
稀疏性利用
剪枝后的稀疏矩阵加速、零值跳过逻辑设计。
剪枝零值跳过
17
动态精度缩放
自适应定点数、块浮点数的流水线实现。
自适应块浮点
18
批处理(Batching)支持
多张图片并行处理、批归一化融合。
Batching批归一化
19
残差连接(ResNet)支持
跳跃连接的流水线处理、加法树设计。
跳跃连接加法树
20
多尺度特征融合
FPN(特征金字塔)的硬件加速方案。
FPN特征金字塔
21
可配置性设计
支持不同卷积参数(Kernel Size, Stride, Padding)的通用架构。
可配置通用架构
22
时钟域与功耗
多时钟域设计、时钟门控、数据使能信号管理。
时钟门控多时钟域
23
验证与仿真
RTL仿真、形式化验证、覆盖率驱动的验证方法。
RTL形式化覆盖率
24
综合与时序优化
逻辑综合策略、关键路径分析、流水线重定时。
综合重定时
25
物理设计考量
布局布线对流水线性能的影响、时钟树综合。
布局布线时钟树
26
性能建模与分析
Roofline模型、吞吐率与延迟的数学建模。
Roofline吞吐率
27
典型架构分析
Google TPU、NVIDIA Tensor Core、华为达芬奇架构对比。
TPUTensor Core达芬奇
28
高级综合(HLS)实现
使用HLS设计流水线加速器、C/RTL协同仿真。
HLSC/RTL
29
片上网络(NoC)集成
将加速器集成到SoC中、AXI总线接口设计。
NoCAXI
30
未来趋势
存算一体、光计算、模拟计算对流水线架构的挑战。
存算一体光计算模拟计算