关于NAND、NOR启动程序的具体走向

    看完《TQ2440学习之硬件篇》,相信大家应该清楚NAND FLASH和NOR FLASH还有SDRAM的地址空间分配了吧。这里我还是贴上图片,方便后面对启动过程进行分析:

TQ2440中内存分配及各存储器特性:

NOR FLASH:0x0000 0000 开始的 2Mb空间,NOR FLASH可以存储程序也可以运行程序,介质很稳定,所以造价昂贵;

NAND FLASH:没有地址线,大小256Mb,NAND FLASH可以存储程序不能运行程序,所以造价便宜;

SDRAM:0x3000 0000开始的128Mb,SDRAM掉电数据丢失,用来运行程序。


图1 S3C2440启动方式说明

由上图可知,S3C2440支持两种启动模式:NAND和非NAND(这里是Nor Flash),具体采用的方式取决于OM0、OM1两个引脚的状态。

OM[1:0所决定的启动方式

OM[1:0]=00时,处理器从NAND Flash启动            (NAND FLASH启动)

OM[1:0]=01时,处理器从16位宽度的ROM启动

OM[1:0]=10时,处理器从32位宽度的ROM启动。(NOR FLASH启动)

OM[1:0]=11时,处理器从Test Mode启动。


NOR FLASH启动流程:

    上电,程序从NOR FLASH的0x0000 0000开始运行,由于NOR FLASH空间只有2MB,通常只能装下bootloader,操作系统内核代码和文件系统装在NAND FLASH;bootloader在NOR FLASH里面运行,其中有一段代码完成NAND FLASH内容搬移到SDRAM上,然后通过跳转到一个标号完成程序从NOR FLASH到SDRAM的操作。


NAND FLASH启动流程:

    上电,程序从cpu自带的4KB SRAM(CPU专门用于配合NAND FLASH启动方式的存储器)的0x0000 0000开始运行,由于SRAM空间只有4kB,通常只能装下bootloader或者一部分bootloader,操作系统内核代码和文件系统装在NAND FLASH;bootloader在SRAM FLASH里面运行,在前4kb代码完成NAND FLASH内容搬移到SDRAM上,然后通过跳转到一个标号完成程序从SRAM 到SDRAM的操作。虽然叫做NAND启动,但是程序至始至终没有在NAND flash上面运行。

   要想了解启动之后bootloader、系统内核、文件系统具体存放位置,可以仔细阅读bootloader的代码(可以查看内存分配文件)。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值