NORFLASH NANDFLASH 启动分析

NORFLASH / NANDFLASH 启动分析

以下均以S3C2440为例

三星S3C2440处理器的数据手册中的芯片的存储器映射表,如下图所示:

NORFLASH NANDFLASH 启动分析

NORFLASH 启动

​ 直接从norflash的0x00000000地址开始取指令,并将ARM处理器的SP(堆栈指针寄存器设置到0x40000FFF处)。在norflash和BootSRAM搭建的程序运行环境中完成对时钟和DDR等的初始化。

NANDFLASH 启动

​ S3C2440内置的SRAM缓冲器会将nandflash中前4KB大小的程序自动拷贝到BootSRAM中,之后再从0x00000000处开始执行程序。(arm处理器的SP(堆栈指针寄存器)指向0x00000FFF)初始化结束后,再将uboot镜像从nandflash搬运到DDR中。

​ 因为nandflash根本没有地址总线与arm相连,arm根本无法去通过地址访问,只能通过nandflash控制器去访问,所以nandflash启动的时候要先将前4KB搬到BootSRAM中,之后将uboot从nandflash中搬运到DDR中。