国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护

1、分区保护实现机制

通常MCU片内的闪存(FLASH)挂接在内存总线上,CPU可以无限制的访问FLASH内的任何区域。要实现对 单颗MCU内片FLASH进行多个用户区域划分并保护,避免在片内不同用户通过CPU指令直接读取或修改其它
用户区的FLASH内容。我们可以使用国民技术MCU内置的MMU,将FLASH主存储区的区域进行划分和设置
访问权限,同时可保护各个应用存储区域内的代码与数据不被非法访问及篡改,并指示出存储器及受保护的寄
存器的非法访问错误,所有越权操作都将触发MMU异常报警,从而实现多用户下的FLASH分区保护功能。
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第1张图片

2、MMU功能说明

MMU可实现FLASH主存储区的区域划分和访问权限管理,可为MCU的不同应用划分独立的存储空间,并对访问权限进行管理。
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第2张图片

2.1 用户区域划分

FLASH主存储区至多可划分为USER1(默认)、USER2和USER3三个区域。在实际使用中,用户区域划分有
以下几种情况,各种情况的设置说明
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第3张图片
当FLASH主存储区划分为3个区域时,如图 2-2所示,分别为USER1(默认)、USER2和USER3,分区的颗粒
度为16KB。
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第4张图片
FLASH主存储区的用户分区设置说明详见表 2-2。通过设置各用户分区的大小实现区域划分。分区设置属于静
态设置,一旦设置,MCU每次上电会自动加载配置。特别指出,分区设置只能操作一次,且操作不可逆。
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第5张图片
**

3、操作步骤

**
FLASH主存储区用户区域划分流程如图,以下详细介绍分区设置操作步骤
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第6张图片
设备进入Bootloader
N32G457VEL7 BOOT0引脚接VDD, PB2引脚接GND,芯片上电进入Bootloader。
注意:对于开发板N32G4XR-STB V1.0,使用USART接口,则连接USB Debug Port接口供电。
设备连接工具
双击Nations MCU Download Tool.exe,打开下载工具,界面所示。此处,将重点关注“选择设备”区
域。下载工具暂只支持USART接口,接口默认选择“USART1”。选择匹配的端口号,作为设备。“COM端
口号”可通过PC的“设备管理器”查看,连接MCU的串口被识别为“COM30”。同时,设置USART的
波特率(可使用默认配置“115200”),单击 “打开串口”按键,左边显示界面会提示“打开串口成功!”
此时,设备与工具已正常连接。
注意:N32G457REL7中 Bootloader中USART1使用PA9与PA10分别作为TX与RX,请确保PA9与PA10与串口的
TX与RX已正确连接
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第7张图片
**

配置分区

**
单击“其他操作”区域中的“配置分区”按键,弹出配置分区对话框,依次选择分区用户ID(USER1、
USER2或USER3),并输入分区的FLASH大小(数值以分区颗粒度16KB为单位设置)。如图 3-3所示,假设
需为USER3划分128KB区域,则分区选择“USER3”,大小输入0x08。点击“配置分区”, 确认配置分区,完 成当前用户ID的区域划分
国民技术N32G45X系列应用笔记——使用MMU进行多用户场景下的FLASH分区保护_第8张图片
注意: (1) 分区配置操作不可逆,请慎重操作; (2) 如需设置多个分区,各用户可分别进入Bootloader配置,配置的大小、顺序等注意事项,操作不当可能导致配置失败。
分区设置生效后,无法使用调试接口访问用户区域。因此,下载用户应用程序有以下两种方式:
(1) 分区设置前,通过调试接口或Bootloader下载程序。 (2) 分区设置后,通过内置的Bootloader下载程序(推荐);

你可能感兴趣的:(32位MCU,单片机,国产单片机,嵌入式,mcu,单片机,stm32,芯片)