ARM Cortex · CNN 优化实战
📚 30章 从入门到部署
v1.0
1
Cortex-M & CNN 基础
处理器特点 · 卷积/池化/全连接 · 量化与定点数
2
开发环境搭建
ARM GCC · CMSIS-NN · VS Code/Keil · 矩阵乘法
3
CMSIS-NN 库初探
软件包结构 · arm_convolve_s8 · 官方示例
4
数据表示与内存布局
NHWC/NCHW · 张量排列 · 内存对齐
5
量化原理与实践
对称/非对称量化 · scale/zero_point · 量化工具
6
卷积优化策略
im2col · 查表法加速 · 直接vs优化卷积
7
Winograd 在MCU应用
最小滤波 · F(2,3)变换 · Cortex-M7实现
8
深度可分离卷积
结构优势 · arm_depthwise_conv_s8 · 加速比
9
激活函数优化
ReLU/ReLU6/Sigmoid定点近似 · 查表法
10
池化层优化
最大/平均池化 · SIMD(SADD16) · 窗口性能
11
全连接层优化
矩阵分块 · arm_fully_connected_s8 · 效率
12
内存管理技巧
SRAM布局 · 内存池复用 · 分片加载
13
模型剪枝与稀疏性
权重剪枝 · CSR存储 · 减少计算
14
知识蒸馏在MCU
蒸馏流程 · 小型学生网络 · 部署测试
15
网络结构搜索入门
轻量化设计 · MobileNet/ShuffleNet · 自动搜索
16
SIMD指令集深入
SMLAD/SMLALD · 内联汇编 · 卷积热点
17
循环展开与软件流水
循环展开 · 软件流水 · #pragma unroll
18
缓存优化策略
I/D-Cache · 数据访问模式 · 缓存缺失
19
多核与并行计算
MVE · arm_mve.h · 向量化卷积
20
模型转换与工具链
TFLite Micro · 模型解析 · C数组生成
21
ONNX到CMSIS-NN
ONNX解析器 · 模型转C代码
22
RTOS集成
FreeRTOS · 多任务优先级 · 实时推理
23
功耗优化技术
WFI指令 · 动态调频 · 低功耗模式
24
调试与性能分析
DSTREAM · Cycle Counter · 瓶颈定位
25
常见陷阱与避坑
定点溢出 · 内存对齐 · 量化精度损失
26
案例实战:手势识别
加速度计 · 模型训练 · Cortex-M部署
27
案例实战:关键词唤醒
MFCC · 小型CNN · 实时优化
28
案例实战:异常检测
自编码器 · 工业传感器 · 推理
29
性能基准测试
M4/M7/M55对比 · 标准测试流程
30
未来展望与进阶
NPU融合 · Ethos-U55 · MCU+AI方向