MCU片上Flash是微控制器内部集成的非易失性存储器,主要用来存储程序代码、常量数据和系统配置信息。它的主要特点包括:
基本特性
采用浮栅晶体管技术
支持断电数据保存
可多次擦写
是MCU程序存储的主要介质
主要类型
NOR Flash:支持随机访问,代码可直接运行,适合实时性要求高的场合
NAND Flash:需要通过RAM加载代码,集成度较高但访问较慢,多用于复杂SoC系统
分区架构:部分MCU如GD32F系列会将Flash分为Code区(0等待周期)和Data区(高延迟)来优化性能
技术特点
访问速度:NOR Flash读取快但写入慢,高频MCU(如300MHz)需要配置等待周期
存储布局:一般包含启动扇区、主程序区和配置区,支持中断向量表映射和OTA升级
代码执行:MCU启动时从Flash起始地址加载代码,完成初始化后跳转到主程序
数据管理:常量数据可直接存Flash,变量需要加载到SRAM
典型应用
实时控制系统:如工业自动化和电机控制
车载电子:汽车MCU常用PFlash存程序,DFlash存数据
优化方法
分散加载:按实时性要求分配代码到不同区域
缓存机制:使用Prefetch或Cache来降低访问延迟