端侧 NPU 推理
本分类整理在端侧 NPU 上运行模型相关的系统与内核知识,目前覆盖两家厂商:
- Qualcomm Hexagon / Snapdragon:算子如何映射到 HVX(向量单元)与 HMX(矩阵单元)、异步流水怎样消除 bubble、以及 kernel fusion 的可行边界;
- Rockchip RKNPU(RK3588 等):NVDLA 派生的 CNA→CORE→DPU 卷积流水线、 寄存器命令(regcmd)任务模型,以及"矩阵乘 = 1×1 卷积"的编程方式。
收录条目
| 页面 | 主题 |
|---|---|
| NPU 上的 Kernel Fusion | 独立任务的资源互补横向融合、多引擎调度、相关工作与实验设计 |
| RKNPU:架构与编程模型 | Rockchip RKNPU 专题入口 |
| ↳ RKNPU 硬件架构 | CNA→CORE→DPU 流水线、CBUF、累加器、数据类型、三核 |
| ↳ RKNPU 块内部结构 | cube 布局、CNA/DCOMP、CORE MAC/CACC、DPU SDP/LUT、PPU、DMA |
| ↳ RKNPU 编程架构 | PC/regcmd 任务模型、ping-pong、rocket uAPI、matmul-as-1×1-conv |
| ↳ RKNPU 软件栈与仓库定位 | FOSS/BSP 软件栈与 rockchip-npu-notes 的角色 |
参考坐标
Qualcomm Hexagon
- HVX:Hexagon Vector eXtensions,负责反量化、softmax、elementwise、 layout/pack 等通用向量计算;
- HMX:Hexagon Matrix eXtensions,负责 GEMM / 卷积等矩阵计算;
- VTCM:与 NPU 紧耦合的片上内存,HMX 操作数必须按特定布局驻留其中;
- DMA:权重/激活在 DDR/UFS 与 VTCM 之间的搬运。
Rockchip RKNPU
- CNA / CORE / DPU / PPU:卷积流水线的四个块,寄存器页分别为
0x1/0x3/0x4/0x6;CNA 是 Convolution Neural Network Accelerator; - CBUF:每核 12 banks × 32 KB = 384 KB 的片上暂存;
- PC / regcmd:Rockchip 自研的命令取指块,硬件层 = 内存里的一段
NPUOP(op, value, reg)命令流; rocket:mainline DRM accel 驱动,通用寄存器命令提交器。
说明:新增页面前请先阅读仓库根目录的
AGENTS.md与 写作规范,并在SUMMARY.md中登记。
© 2026 Yang Huan · yanghuan9812@qq.com