您的位置:首页 > 其它

二十.ARM处理器的启动流程

2014-12-04 00:37 253 查看
1.启动方式
(1)norflash:2MB,从norflash的0地址处开始运行第一条代码,所以代码一定要放在norflash的最前端
(2)nandflash:128MB,但是nandflash没有参与同一编址,不能直接访问,需要访问特殊寄存器才可以访问,所以要从片内的4KB的boot SRAM开始执行,即0地址是排放boot sram(stepping stone),上电之后处理器自动将nandflash前4KB的内容复制到boot sram开始执行,通过bootsram来初始化相关硬件和寄存器从而访问nandflash,接下来把剩余的bootloader复制到内存(SDRAM/DRAM)中,当stepping
stone 里面的4KB执行完以后跳转到内存继续执行,再接下来将内核复制到内存,从而启动操作系统。而内存要求从0x30000000开始band6开始(2440)

2.地址布局
关键词:mapping
3.具体流程

关键词:booting

4.SROM也就是norflash
oneNAND既有nor的特性也有nand的特性

5.6410还支持MODEM启动

6.SD卡和nand都划归为IROM:处理器内部的固件/存储器,但不是stepping stone

7.6410地址布局





8.6410的0地址处开始是镜像区,不放置任何设备,是通过映射关系将其他设备映射到镜像区域。根据启动方式不同可以映射到不同设备。

9.6410的nandflash启动属于irom的一种,而irom里面存放的是厂商给用户写好的一些软件,如bootloader0,上电后就是取irom里面的程序来执行。通过BL0(bootloader0)将nand的前8KB拷贝到stepping stone运行,然后和2440类似。





10. 210和6410类似,都支持从irom启动,nand启动是其中的一种。但是在210中stepping stone叫做IRAM,有96KB,由于垫脚石的增大,会拷贝bootloader 2 到垫脚石,而不是直接到内存。一般情况BL1最大是16KB,BL2最大尺寸是80KB。若BL2大于80KB,则要求BL1将BL2直接拷贝到内存,而不能拷贝到垫脚石。0地址也是镜像区域,通过映射关系取代码。

11.210的启动流程(BL0是厂商写好的)





12.210的地址布局



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: