S5PV210启动过程分析

来源:互联网 发布:神话特效软件 编辑:程序博客网 时间:2024/05/21 20:23

S5PV210启动过程分析

(以S5PV210_iROM_ApplicationNote为参考文档)


首先:irom是出厂前事先已经固化了一些代码,这些代码负责了初始化soc内部的一些东西,比如系统时钟,关看门 狗,i cache的初始化,栈的初始化,选择哪种方式启动等。然后去外部存储器去读第一部分启动代码(BL1), 大小为16k,小于16k也能启动,读到内部的SRAM。

其次:BL1被读到SRAM后就开始执行,都干了什么?负责初始化NandFlash,然后将BL2读取到SRAM运行。

最后:执行BL2,BL2初始化DRAM,然后将OS读取到DRAM中,然后启动OS。


?为什么要分两段BL1、BL2启动?合成一次不可以吗?手册里在说明irom启动时,也没有提到irom是否已经对外部的flash初始化了,再说在设置irom时,也不知道用户将来是以什么样的方式来起动,所以并未对外部Flash进行完全初始化,那irom是怎么从外部flash读取BL1的?  这个可能就是irom只能从外部Flash读取一小部分的代码,就是16k 的BL1,利用BL1进行初始化外部Flash,然后在读取BL2。