内存配置
3 Mar 2025
Read time: 2 minute(s)
Luban-Lite SDK 支持多个芯片平台,而各个平台的内存种类和内存大小也不同,正确的进行内存配置会使系统运行更高效。
遵照以下流程,配置芯片平台的内存参数:
- 在 menuconfig 界面中,导航到 配置选项,注意在 bootloader 和 rt-thread 配置都要对应修改。
- 根据芯片平台型号、存储类型和内存规格,配置相应内存的参数,包括总大小、CMA 内存大小等。
-
DRAM
Board options > Mem Options > DRAM parameter (0x8000000) DRAM Total Size //DRAM 128M (0x2000000) CMA mem size //CMA 32M
-
SRAM
Board options > Mem Options > SRAM parameter (0x100000) SRAM Total Size //SRAM 1M [ ] Enable TCM (Tightly Coupled Memory) //不设置 SRAM_S1 Size (0K) //G73x UI 展示时设置 (0x0) Software size in SRAM_S1 //G73x UI 展示时设置 (0x40000) Bootloader reserve size //Bootloader 位置,不修改
-
PSRAM
(0x800000) PSRAM size //PSRAM 8M (0x0) Software size in PSRAM //Software 区域大小为 0,CMA 区域大小即为 8M - 0 = 8M
-
- 保存并退出 menuconfig 界面。
- 运行 me 命令以启动 menuconfig 界面,并在 menuconfig
界面中配置下列栈参数:
- 中断栈
Board options > Mem Options > Interrupt stack size
- 主线程栈
Rt-Thread options > RT-Thread Components > Set main thread stack size
- MSH
栈
Rt-Thread options > RT-Thread Components > MSH: command shell > The stack size for thread
- 中断栈
- 保存配置并退出 menuconfig 界面。
内存分类
内存可以按照以下两种方式进行分类:
- 按照存储类型划分:
- DRAM:动态 RAM,又称 DDR
典型代表平台:D21x
- SRAM:静态 RAM,又称高速缓存
典型代表平台:D13x
- PSRAM:伪静态 RAM
典型代表平台:D13x,D12x
- DRAM:动态 RAM,又称 DDR
- 按照应用场景划分
-
Software region:支持堆和栈的动态分配,由操作系统管理
-
CAM region:连续内存区域,预留给 framebuffer,视频,图片等解码使用
-
平台统计
平台型号 |
DRAM |
SRAM |
PSRAM |
CMA |
说明 |
---|---|---|---|---|---|
D21xxBx |
64M |
X |
X |
22M |
CMA 可供系统使用, 配合 mpp heap 一块调大 |
D21xxCx |
128M |
X |
X |
32M |
|
D13xxAx |
X |
512K |
4M |
4M |
Software Region 可以共享 CMA |
D13xxBx |
X |
1M |
8M |
8M |
|
D13xxCx |
X |
1M |
16M |
8M |
|
D12xxAx |
X |
1M |
4M |
2M |
|
D12xxBx |
X |
X |
8M |
4M |
|
D12xxCx |
X |
X |
16M |
8M |
|
G73x |
X |
1M |
X |
756K |