S5PV210之内外存学习
RAM,内部存储器,用来运行程序(DRAM,SRAM,DDR)
ROM,外部存储器,存储数据、程序(硬盘,FLASH等)
内存:SRAM,静态内存,容量下,价格高,不需要初始化,上电后直接使用
DRAM,动态内存,容量大,价格低,上电不能直接使用,需要初始化
外存:NorFlash容量小,价格高,可直接和CPU地址总线直接相连接,上电后直接读取,一般用于作为启动介质
NandFlash(硬盘)容量大,价格低,不能直接和CPU地址总线相互连接,需要初始化
S5PV210:外接大容量外存Nand+外接大容量内存DRAM+内置内存SRAM
实际启动:内资96KB大小SRAM(IRAM)+内置64kb大小的NorFlash(IROM)
启动过程:先从内部IROM中都预先设置的代码(BL0),执行;
然后根据这段代码,并通过OMPIN硬件配置选择启动模式;
再然后从相应外部存储器读取启动程序BL1到SRAM中(16KB);
从SRAM中启动,执行从上一步读取的启动代码(BL1),负责初始化NandFLASH和将BL2读取到IRAM中(剩余的80KB),执行;
然后从SRAM中运行BL2,BL2初始化DRAM,然后读取OS到DRAM中,启动OS;
启动结束;
BL0:关看门狗;初始化CACHE;初始化堆,栈;
复制BL1至IRAM中(16KB);
检查BL1校验;
跳转至BL1执行;
BL1:初始化NAND
复制BL2至IRAM中(16KB);
检查BL2校验;
跳转至BL2执行;
BL2:初始化DRAM;
将OS读取到DRAM中,然后启动OS;
S5PV210所有启动:
先1ST启动,通过OMPIN配置;
再2nd启动,SD2;
再UART启动;
再USB启动;