加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

MTK-6235型号以上手机FLASH的划分

发布时间:2020-12-15 07:11:10 所属栏目:百科 来源:网络整理
导读:以某项目为例,系统为NAND FLASH。 此项目的FLASH大小为1Gb,即128MB。 custom_memorydevice.h文件中定义了FLASH的分布, #define NAND_BOOTING_NAND_FS_BASE_ADDRESS???????? 0x03400000??????????????//52M的代码和CONST 数据 #define NAND_BOOTING_NAND_FS

以某项目为例,系统为NAND FLASH。

此项目的FLASH大小为1Gb,即128MB。

custom_memorydevice.h文件中定义了FLASH的分布,

#define NAND_BOOTING_NAND_FS_BASE_ADDRESS???????? 0x03400000??????????????//52M的代码和CONST 数据

#define NAND_BOOTING_NAND_FS_SIZE???????????????? 0x04C00000??????????????//系统区和用户区的和:79691776BYTE == 76M?

#define NAND_BOOTING_NAND_FS_FIRST_DRIVE_SECTORS? 125000????????????????//用户文件区大小:125000*512 ===?64000000BYTE,大概61MB

??|----------------------------------------------------FLASH的大小,总共128M---------------------------------------------------->|

划分|---------(code,CONST数据区)-----------|---------------(系统文件区)------------------|-----------(用户文件区)-------------|

大小|----------------52M-------------------|------(76M-64000000/1024/1024=大概15M)-------|--------(64000000=大概61M)----------|

范围|--------(0——0x03400000)-------------|-----(0x03400000——0x42F7000)-----------------|-------(0x42F7000——0x8000000)-------|

0x42F7000是由0x03400000+((16进制)(79691776-64000000))换算得到的,即CODE区边界值加上系统区的大小。

?

1、CODE区一般是在编译报错的情况下会往大的调整,减少用户文件区的方式可以达到。这个区的大小应该对应生成的几个.bin文件大小的和;

2、系统文件区一般会在某些应用不能使用的情况下进行调整,例如有些JAVA应用无法安装,系统区需要加大,也可以通过调整用户区的方式达到;

只能通过调整NAND_BOOTING_NAND_FS_BASE_ADDRESS的大小来调整此区域。

此区域扩展常用的有两种方法,一是增大NAND_BOOTING_NAND_FS_SIZE的值,向左压缩,减少CODE区实现;二是减小NAND_BOOTING_NAND_FS_FIRST_DRIVE_SECTORS的值,即减小

用户文件区的大小来增加系统区;或者两种方法结合使用。

3、用户文件区指的是从MYDATA中可以看到的那部分的大小,一般大点或小点都无所谓。通过调整NAND_BOOTING_NAND_FS_FIRST_DRIVE_SECTORS的大小来调整此区域。

?

系统文件区的大小为79691776 - 64000000 = 大概14.96484375

用户文件区的大小为64000000=大概61M

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读