🧠 卷积神经网络硬件加速设计
30章 · 从入门到流片
🎒 友好色系 · 紧凑目录
01
CNN基础与硬件加速概述
CNN发展历程、硬件加速的必要性、主流加速方案对比(GPU/FPGA/ASIC)。
02
卷积运算原理
2D卷积数学定义、步长与填充、多通道卷积、计算复杂度分析。
03
硬件设计基础回顾
数字电路基础、流水线设计、并行计算概念、片上存储层次。
04
CNN网络结构解析
LeNet、AlexNet、VGGNet、ResNet核心结构及计算特征。
05
数据复用与带宽优化
输入特征图复用、权重复用、输出部分和复用、DMA设计策略。
06
脉动阵列架构
经典脉动阵列原理、数据流方式(权重固定/输入固定/输出固定)、阵列规模设计。
07
行静态数据流
行静态数据流原理、与脉动阵列的对比、适用场景分析。
08
Winograd卷积加速
Winograd算法原理、F(2x2,3x3)实现、硬件映射与资源权衡。
09
快速傅里叶变换(FFT)加速
FFT卷积原理、硬件实现要点、与Winograd的对比。
10
稀疏卷积加速
权重剪枝原理、非零值编码、稀疏矩阵乘法硬件设计。
11
量化技术基础
定点数表示、INT8量化原理、量化感知训练、硬件量化单元设计。
12
二值化神经网络加速
BNN原理、XNOR运算、位运算加速器设计。
13
可重构计算架构
粗粒度可重构阵列(CGRA)原理、PE阵列配置、动态重构技术。
14
存算一体架构
SRAM存算一体原理、模拟计算与数字计算、精度与功耗权衡。
15
片上网络(NoC)设计
NoC拓扑结构、路由算法、拥塞控制、在CNN加速器中的应用。
16
存储层次与带宽优化
多级缓存设计、数据预取、乒乓缓冲、DDR控制器接口。
17
卷积加速器微架构
MAC阵列设计、累加器树、激活函数硬件实现、池化单元。
18
控制通路设计
状态机设计、指令集架构(ISA)、微码控制、动态调度策略。
19
RTL设计与仿真
SystemVerilog基础、卷积模块RTL实现、仿真验证方法、波形调试。
20
高层次综合(HLS)方法
HLS基础、C/C++描述卷积、优化指令(pipeline/unroll)、RTL生成。
21
FPGA原型验证
FPGA开发流程、资源利用率优化、时序约束、板上调试。
22
ASIC后端设计
逻辑综合、布局布线、时钟树综合、功耗分析、物理验证。
23
性能评估方法
吞吐量、延迟、功耗、能效比(TOPS/W)、Roofline模型分析。
24
基准测试与数据集
ImageNet、CIFAR-10、ResNet-50基准测试、性能对比方法。
25
编译器与软件栈
TVM框架、算子调度、代码生成、硬件抽象层设计。
26
动态神经网络加速
早期退出、条件计算、动态通道剪枝、硬件支持策略。
27
3D CNN加速
3D卷积原理、时空特征提取、硬件设计挑战、视频分析应用。
28
Transformer硬件加速
自注意力机制、多头注意力硬件设计、与CNN加速的异同。
29
前沿技术趋势
存算一体进展、光子计算、模拟计算、量子计算与CNN。
30
综合项目实践
从算法到芯片的完整流程、项目规划、团队协作、流片经验分享。