码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-03-31 18:18:48      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:

    看完《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的代码(可以查看内存分配文件)。



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

标签:

原文地址:http://blog.csdn.net/xiao_ping_ping/article/details/44780463

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!