学习的方法:要将s3c2440/s3c6410/s5pv210三款芯片比较学习,先掌握芯片支持的启动方式,其次查找芯片内部的地址布局(不同区域的对应 的地址是厂商固化好的),最后查看其启动流程(启动顺序(程序运行顺序))
s3c2440:
支持启动方式:非nandflash(这里是指norflash)/nandflash启动
norflash:2MB nandflash:256MB,所以2440一般从NandFlash开始启动
Bank Seven fixed memory bank start address:SROM/SDRAM(2440内存地址)
地址布局:
启动流程:
In order to support NAND flash boot
loader, the S3C2440A is equipped with an internal SRAM buffer called ‘Steppingstone’. When booting, the first 4
KBytes of the NAND flash memory will be loaded into Steppingstone and the boot code loaded into Steppingstone
will be executed.
Generally, the boot code will copy NAND flash content to SDRAM.
the main program will be executed on the SDRAM.
这篇文章关于2440的启动方式写的非常好!
nandflash启动流程:上电以后,在0地址处安排4KB的stepping stone,其中steping stone一个最重要的作用就是引导启动bootloader,并自动将剩下的要运行的bootloader复制到SDRAM中,接着运行剩下的bootloader,2440的SDRAM的首地址是0x30000000
s3c6410启动方式:
http://blog.csdn.net/nanjianhui/article/details/4230565
1SROM:norflash启动
2OneNAND:是一种在norflash和nandflash之间的启动方式,具体再去细究。
3MODEN:
IROM:包括了4SD卡启动、5Nandflash启动
Note 1) Only 6410X PoP D type doesn’t support OneNAND booting.
Note 2) 6410X PoP A type doesn’t support IROM booting based on NAND Flash. 6410X PoP D type doesn’t
support IROM booting based on OneNAND Flash.
The operating mode is mainly classified into six categories according to the boot device. The boot device can be
among
SROM, NOR, OneNAND, MODEM and Internal ROM. When NAND Flash device is used, XSELNAND pin
must be 1, even if it is used as boot device or storage device. When OneNAND Flash device is used, XSELNAND
must be 0, even if it is used as boot device or storage device. When NAND/OneNAND device is not used,
XSELNAND can be 0 or 1.
地址布局:
DRAM(内存)是的起始地址是0x5000-0000,Stepping Stone(Boot Loader)起始地址为0x0c00-0000,,Internal Ram的起始地址为0x0800-0000,
起始地址0x00000000~0x07ffffff共128MB,为镜像区域(Booting Device Region by XOM Setting)
通过引脚XOM设置不同的启动方式:NorFlash、OneNand、Moden和Irom启动,它们的地址都不是0x00000000,要想从它们启动,需要映像区域将它们的地址映像到0地址处,相当于从0地址处的相应区域启动。
选择从NandFlash启动的启动流程:
Irom启动当中的一种
irom的地址被映射到0地址处,这部分被称为Bootloader0(BL0),irom中通常存放的是厂商固化好的一些软件,硬件初始化,把放在NandFlash中的BL1(8K)放到Stepping Stone中运行,把剩余的Bootloader放到SDRam中运行。(此部分代码是固定的)
对比:2440的NandFlash启动时先启动Stepping Stone(SRAM),进行准备工作
6410的NandFlash启动时先启动固化的Irom
,进行准备工作
S5pv210:
启动方式:IROM、USB
启动流程:
:
阅读(2703) | 评论(0) | 转发(0) |