Part4.2ARM处理器启动流程

最好把所有的都看一下,对比同时看看其他处理器是怎样工作的,以后也知道其他处理器是怎样工作的,看哪里
1、2440处理器支持从nor flash,nand flash 启动
但是nor flash 只有2MB,
在手册中有nand flash mapping.左边是从nor flash 启动的内存布局图,右边是nand flash 启动的内存布局图

内存是SDRAM,从0x3000_0000开始的
当机器上电时,会从0地址出取第一条指令,0x0000_0000,所以假如要从nor flash启动,那么需要在最前端放nor flash,不然如果是空的无法启动
nand flash不能直接访问,只能通过寄存器访问,所以不能参与处理器统一编址。需要通过bootSRAM(内部SRAM缓冲器,这里也叫垫脚石stepping stone)访问NAND FLASH,从NAND FLASH中最前面的4k空间复制到bootSRAM,可以理解为从0地址开始4k空间就是NAND FLASH前面4k内容。而NAND FLASH中其他BootLoader的内容(4k后面部分)会放到bootSRAM后面的内存中,运行完bootSRAM后继续运行后面的内容。

2、6410启动方式
启动方式种类:

SROM就是nor flash启动
SD/nand flash启动都是划归在IROM下面的,是内部的存储器(internal ROM)
地址空间:

这里的stepping stone和2440处理器的作用不一样
0地址后面的一块区域是镜像区域,根据启动方式不同将后面不同的区域映射到这个区域
2、1 IROM启动方式

IROM中放的是芯片厂商固化好的软件,BootLoader0 这里除了一部分启动工作外还会把BootLoader1放到stepping stone 中。如图所示
右边那块Booting device才是用户自己写的BootLoader,而IROM是厂商给的
3、 210处理器启动流程


从上面两张图可以看出。和6410一样,210处理器支持从IROM启动,启动模式也是0地址处镜像区域
这里内存地址是0x2000_0000,DRAM
启动流程:
我们主要关注从nand flash 启动,也可以说是从IROM启动的流程

上电后同样从IROM启动,区别是210处理器中internal SRAM内存增大,同时放BootLoader1和BootLoader2
规定BootLoader1大小最大是16kb,BootLoader2最大是80kb。如果超过就必须往内存里面拷贝

浙公网安备 33010602011771号