FLASH分配¶
1. 不同芯片PSRAM + Flash的典型配置¶
型号 |
SIP 配置 |
外置存储 |
|---|---|---|
SF32LB551 |
4MB PSRAM + 4MB NOR Flash |
16MB 或 32MB NOR Flash |
SF32LB561 |
4MB PSRAM + 512KB NOR Flash(用于 LCPU) |
16MB 或 16MB + 16MB 或 32MB NOR Flash |
SF32LB563 |
8MB PSRAM + 512KB NOR Flash(用于 LCPU) |
Nand Flash |
SF32LB567 |
16MB PSRAM + 512KB 或 1MB NOR Flash(用于 LCPU) |
Nand / eMMC Flash |
SF32LB523 |
4MB PSRAM |
16MB 或 16MB + 16MB 或 32MB NOR Flash |
SF32LB525 |
8MB PSRAM |
Nand Flash |
SF32LB527 |
16MB PSRAM |
Nand Flash |
SF32LB52J |
16MB PSRAM |
Nand / eMMC Flash |
SF32LB58x |
参照相应介绍 |
参照相应介绍 |
SiFli芯片相关介绍和配置参数,请参见思澈开源文档
2. Flash分配方式¶
提供excel表的可视化分配方式(可选的flash配置位于
solution\framework\__template__\config\hcpu\flash_map)编辑exel表,实现增删分区、修改分区size,表格具有自动计算、自动对齐的功能
编译时,butterfli会解析该excel表并生产flash_map.h文件,参与HCPU的编译
具体可参见:
3. Excel表的编辑说明¶
Solution提供各种产品形态的excel表格的模板,用户可以直接使用或者基于此模板进行修改
第一个页签
FLASH_Config,用于配置选用芯片内置和外置flash的起始地址、空间大小以及分区对齐IMAGE size。注意,这里分区对齐用于擦写块的大小第二个页签
FLASH_Map,用于配置每个Flash的分区(分区名、偏移地址、size、类型)。
对于NAND方案,如果使用kvdb,由于kvdb是放在文件系统中,因此,需要在下面的表格定义kvdb(size、所属分区)。第三个页签
FS_RES_PATH,用于定义文件系统目录对应的宏。其中RES_NAME中不可修改,butterfli会使用这些名字去对应相应的资源,然后放在指定的分区和路径下
4. Flash选型¶
Solution支持NOR、NAND、eMMC,具体可参见方案选型 -> 选型原则。
5. 双NOR-Flash方案¶
Solution支持双NOR Flash的方案,如1. 不同芯片PSRAM + Flash的典型配置中的SF32LB523。 采用双NOR Flash,需要注意:
硬件设计上,如果是52x参照SF32LB52-DevKit-LCD开发板使用指南
软件部分,A区可XIP、直接访问,B区必须通过驱动才能访问,需要遵循以下原则:
主代码(code)、内置的图片必须放在A区
字体、NVM、铃声、打点信息、debug信息、OTA缓存以及死机dump可以放在B区。