LAT1491
Local Application Tips
LAT1491 Rev 1.0 Jan. 2025
STM32N6 FSBL 基本流程介绍
关键字:STM32N6FSBLBoot
1. 简介
STM32N6 ST 第一颗带 NPU MCU 芯片,内部只有一小ROM 用于第一阶段的 Boot
必须使用外部 Flash 存储用户代码或通过 USB/U(S)ART 串口启动。另外,STM32N6 的工程
入了一些新的术语比如 FSBL 等。本文记STM32N6 使用的一些基本启动步骤,重点介绍
FSBL
2. 启动模式
下图是 STM32N6 DK 板,其中 BOOT1 引脚决定了两种不同的启动模式dev boot
Flash boot/Serial boot 模式:
1. STM32N6 DK
Flash boot(Boot1 = 0, Boot0 = 0)意味着上电后BootROM 程序(固化在片内 ROM 的一
小段启动程序)会尝试从外部 Flash 启动,应用程序需要下载到外部 Flash,如果没有应用则无
法启动。Dev boot 意味着上电后BootROM 序尝试从内部 Ram 中启动。
LAT1491
LAT1491 - Rev 1.0 page 2/15
3. 启动流程和工程框架
3.1. FSBL
FSBL 的全称为 First Stage Boot Loader, 在上电后,先执行片内 ROM 区域的
BootROM,然后根据 Boot 选项和地址,执行相应地址的 FSBL,参考下图实例为外部
Flash 的启动流程。
2. FSBL 工程
如上图,系统启动流程如下:
1. BootROM 启动后,会验 FSBL 的头,如上图深黄色部分 1024Bytes Header 信息
可以使用 ST 提供的脚本对 FSBL 进行签名,FSBL 程序必须完成签名,不然无法正常启动
验证成功后,BootROM FSBL 程序搬运至内部 SRAM20x34180000 的位置,然后
PC 指针跳转过去开始执FSBL
2. FSBL 开始执行。
3.2. FSBL+Load&Run
APP 的开发可以在内部 SRAM 中调试完成,开发完成后通External loader 下载到外部
Flash