🧠 NPU指令集设计 · 入门到精通
📘 30章 完整目录
01
NPU与AI芯片概述
从CPU、GPU到NPU的演进,AI芯片市场格局与未来趋势。
01.html
02
神经网络基础回顾
卷积、池化、全连接、激活函数,理解计算模式对指令集的需求。
02.html
03
指令集设计哲学
RISC vs CISC,SIMD vs SIMT,VLIW与脉动阵列架构的选择。
03.html
04
NPU微架构入门
计算单元(MAC阵列)、控制单元、存储单元(SRAM/Scratchpad)基本概念。
04.html
05
数据流与存储层次
数据复用、DMA传输、片上缓存与片外存储交互。
05.html
06
标量指令设计
控制流指令(跳转、循环)、地址计算、立即数操作。
06.html
07
向量指令设计 (上)
向量加载/存储(连续、步长、聚集/分散),向量算术指令。
07.html
08
向量指令设计 (下)
向量比较、选择、归约,Masked向量操作。
08.html
09
矩阵指令设计
矩阵乘累加(MMA),矩阵加载/存储与数据排布格式。
09.html
10
张量指令设计
高维张量操作,转置、变形、广播指令。
10.html
11
卷积专用指令
im2col+GEMM,Winograd卷积,直接卷积指令。
11.html
12
池化与归一化指令
MaxPooling、AveragePooling、BatchNorm、LayerNorm指令实现。
12.html
13
激活函数指令
ReLU、Sigmoid、Tanh、GELU、Softmax硬件加速指令。
13.html
14
量化指令设计
INT8/INT4量化,对称/非对称,量化-反量化指令。
14.html
15
稀疏计算指令
稀疏矩阵存储(CSR/CSC),稀疏卷积与稀疏全连接指令。
15.html
16
注意力机制指令
Self-Attention QKV计算、Softmax、矩阵乘法指令优化。
16.html
17
Transformer专用指令
LayerNorm、残差连接、位置编码的指令级支持。
17.html
18
数据搬运指令
DMA配置,多级存储数据移动,同步与屏障指令。
18.html
19
指令编码与格式
操作码、寄存器地址、立即数、功能码二进制编码设计。
19.html
20
指令流水线设计
取指、译码、发射、执行、写回,流水线冲突与解决。
20.html
21
指令集模拟器开发
用Python/C++搭建指令集模拟器,验证指令功能正确性。
21.html
22
编译器后端适配
从TVM/MLIR到NPU指令的Lowering,指令选择与调度。
22.html
23
汇编器与链接器设计
汇编代码转换为机器码,符号解析与重定位。
23.html
24
指令集性能建模
指令延迟、吞吐量模型,评估计算效率与带宽瓶颈。
24.html
25
指令集测试与验证
编写测试用例,随机指令生成,覆盖率分析。
25.html
26
RISC-V向量扩展对比
RVV优缺点,如何借鉴与改进NPU指令集。
26.html
27
自定义NPU指令集 (上)
定义指令集规格书,确定寄存器文件与指令分类。
27.html
28
自定义NPU指令集 (中)
实现矩阵乘指令与卷积指令的微架构映射。
28.html
29
自定义NPU指令集 (下)
编写汇编测试程序,在RTL仿真中运行验证。
29.html
30
前沿趋势与未来方向
存内计算指令、光计算指令、可重构指令集架构。
30.html