esp8266的flash映射(仅为个人笔记)

本人初学者,以下仅为个人理解

iram,irom和dram

iram : 指令存放处,有64kb
irom : flash映射的rom,限制在了8Mbit(二级bootloader可以变相的解除限制)
dram : 变量存放处,有96kb

物理地址分段(部分用链接脚本语法表示)

iram1_0_seg : org = 0x40100000, len = 0x8000 : 因为iram后32kb用cache来映射flash,所以这里只用前32kb
dram0_0_seg : org = 0x3FFE8000, len = 0x18000 : dram,有96kb,一般用链接脚本时这里不放满0x18000(暂时还没搞清楚原因,我看的几个里面放的是0x14000,不知道是不是为了预留动态申请的空间)
0x40200000~0x402FFFFF : falsh映射在cache而形成的物理地址空间
0x40000000~0x400FFFFF : 放置sdk的相关函数,如:

PROVIDE ( SPI_read_status = 0x400043c8 );
PROVIDE ( SPI_write_status = 0x40004400 );
PROVIDE ( SPI_write_enable = 0x4000443c );
...

你可能感兴趣的:(esp8266的flash映射(仅为个人笔记))