|
前言 STM32N6作为意法半导体推出的首款集成自研神经处理单元的STM32产品以“MCU+NPU”的异构架构重新定义了边缘AI的算力边界,是意法半导体的MCU最前沿技术栈,不过由于其高难度技术应用以及需要的极其深厚的STM32使用经验以及神经网络基础概念,因此上手难度非常的高。
自从STM32N6发布以来,博主有幸获得一块STM32N657-DK开发板,闲暇之余陆陆续续折腾如何开发。因此将会陆陆续续发表一些使用STM32N6的使用笔记,以供将来的使用者参考。 回顾学习历程,主要是使用人群不多,导致踩了很多很多的坑,在后续使用STM32N6的文章中也会像大家陆续介绍这些点。 本文为简单的介绍一下STM32N6为后续的STM32N6文章提供基础。 1 STM32N6的存储分布
首先相较于常规STM32系列,STM32N657没有内置Flash,而是配备了高达4.2MB的SRAM,这代表着STM32N657想要长久的存储代码,必须借助于外部Flash存放代码应用程序代码。 为此必须要了解STM32N6的多种启动模式,需要了解Flash启动模式下的FSBL(First Stage Boot Loader)对应的三种模式:直接FSBL则是由STM32N6的BootRom程序将外部Flash存放的FSBL代码拷贝到内部后直接运行;FSBL_Load&Run则是在BootRom将FSBL拷贝到内部SRAM后,FSBL中的程序进一步的将外部Flash中的拷贝到芯片SRAM中进而运行;
FSBL_XIP则是省去了外部Flash拷贝到SRAM中的过程,直接在外部Flash就地进行; 相较于传统的STM32MCU,STM32N6的内存管理更加的高级和复杂,但是也为N6带来了更多可能。 2 RIF内存安全管理 STM32N6是STM32MCU中首款引入RIF资源隔离框架的微控制器,旨在通过硬件级隔离与细粒度权限控制,实现系统资源(内存、外设、总线主设备等)的安全分区,降低软件漏洞被利用的风险。 image.png RIF由RIMC(主设备管理)、RISAF(从设备地址过滤)、RIFSC(安全控制器)三大核心组件构成,协同实现资源隔离,因此在使用STM32N6中,一定要格外注意RIF权限设置(博主在这里踩了不少坑)。 3 Neural-ART Accelerator(NPU) 作为意法半导体推出的首款集成自研神经处理单元的STM32产品,其命名为Neural-ART Accelerator的NPU是专为边缘AI应用设计的核心组件,针对神经网络计算(如卷积、矩阵乘法、激活函数)进行了硬件优化,最高可达600 GOPS,能效比:平均能效达3 TOPS/W,在低功耗场景下(如电池供电设备)表现突出,无需额外散热装置。
采用近300个可配置乘法累加单元(MAC),支持灵活的算子映射(如卷积、全连接层),适配多种神经网络模型。
ST的流处理技术以流交换机为核心,通过运行时编程构建任意虚拟处理链,实现比硬件数据路径更灵活、比片上内存总线更高效的边缘AI数据处理。其支持多链并行、单向数据流与背压控制,可动态分叉或合并数据流,减少内存访问次数以降低功耗,同时通过流引擎与外部系统通信
4个卷积加速器(CONV_ACC)执行核心计算,2个池化加速器(POOL_ACC)和2个激活加速器(ACTIV_ACC)分别处理池化与激活函数,4个算术加速器(ARITH_ACC)负责逐元素运算,流引擎(STREAM_ENG)高效调度数据流。此外,它还包含用于权重解压(DEC_UNIT)和指令解码(EPOCH_CTRL)的辅助单元,支持8/16/24位整数格式(无硬件浮点单元)。
其实可以看出STM32N6的NPU专注于卷积、池化等图象处理神经网络结构,并不是通用型神经网络加速单元,在循环神经网络 (RNN)、长短期记忆网络 (LSTM)等加速有限。 因此在STM32中部署神经网络模型时,可以通过ST Edge AI Core或者STM32Cube.AI来查看神经网络模型中哪些结构获得了硬件加速、哪些结构则是由CPU来执行运算。 总结 STM32N6以“无内置Flash+大容量SRAM”的创新架构,重新定义了MCU的存储范式。后续也会分享一些关于自己在探索这块芯片上的遇到的技术问题和解决办法。 文章出处:实在太懒于是不想取名 |
STM32N6的开发日记(3):如何利用CubeMX快速部署我们的神经网络模型
STM32N6的开发日记(2):配置、签名、烧录,配置外部Flash实现LED灯闪烁
【经验分享】LAT1491 STM32N6 的 FSBL 基本流程介绍
【经验分享】LAT1494 STM32N6 平台如何使用 MCO2 输出 Clock
STM32N6 PSRAM 代码调试实操:Attach模式实现外部存储器调试
实战经验 | STM32N6x勘误手册解读:开发避坑核心指南
STM32 开发者指南:ST.com 全新 MCU 产品阵容视觉布局深度解析
STM32N6 Helium 指令集:MVE 向量运算性能翻倍秘籍(基于 FIR 测试)
STM32N6 调试利器:SWV-ITM printf 重定向全流程拆解
实战经验 | 如何在STM32N6上验证AI模型
微信公众号
手机版