2440 nand flash和nor flash上启动
来源:互联网 发布:ps软件破解版下载 编辑:程序博客网 时间:2024/06/05 06:59
S3C2440的启动时分为成nand flash和nor flash上启动。
nand flash:适合大容量数据存储,类似硬盘;(不能片上运行代码)。
nor flash:适合小容量的程序或数据存储,类似小硬盘;
sdram:主要用于程序执行时的程序存储、执行或计算,类似内存。
Nor flash的有自己的地址线和数据线,可以采用类似于memory的随机访问方式,在nor flash上可以直接运行程序,所以nor flash可以直接用来做boot,采用nor flash启动的时候会把地址映射到0x00上。
Nand flash是IO设备,数据、地址、控制线都是共用的,需要软件区控制读取时序,所以不能像nor flash、内存一样随机访问,不能EIP(片上运行),因此不能直接作为boot。(cpu会自动从NAND flash中读取前4KB的数据放置在片内SRAM里(s3c2440是soc),同时把这段片内SRAM映射到nGCS0片选的空间(即0x00000000)。cpu是从0x00000000开始执行,也就是NAND flash里的前4KB内容。因为NAND FLASH连地址线都没有,不能直接把NAND映射到0x00000000,只好使用片内SRAM做一个载体。通过这个载体把nandflash中大代码复制到RAM(一般是SDRAM)中去执行)。
程序员要完成的工作是把最核心的代码放在nandflash的前4K中。4K代码要完成S3C2440的核心配置以及启动代码(U-boot)的剩余部分拷贝到SDRAM中。
这4K的启动代码需要将NANDFlash中的内容复制到SDRAM中执行。NANDFlash的前4K空间放启动代码,SDRAM速度较快,用来执行主程序的代码。
NORflash启动:支持XIP即代码直接在NOR Flash上执行,无需复制到内存中。这是由于NORFlash的接口与RAM完全相同,可随机访问任意地址数据。NORflash速度快,数据不易失,可作为存储并执行起到代码和应用程序的存储器,nor flash被映射到0x00000000地址(就是nGCS0,这里就不需要片内SRAM来辅助了,所以片内SRAM的起始地址还是0x40000000). 然后cpu从0x00000000开始执行(也就是在Norfalsh中执行)。
nandflash中执行启动代码: NORflash速度快,数据不易失,可作为存储并执行起到代码和应用程序的存储器,norflash可像内存一样读操作,但擦初和写操作效率很低,价格很昂贵。SDRAM和nandflash的价格比较适中。根据这些特点,一些人产生了这样一种想法:外部nandflash中执行启动代码,SDRAM中执行主程序。NANDFlash控制器自动把nandflash存储器的前4K载到Steppingstone(内部SRAM缓冲器),并把0x00000000S设置为内部SRAM的起始地址,cpu从内部SRAM的0x00000000开始启动,这个过程不需要程序干涉。这4K的启动代码需要将NANDFlash(包括内核代码,应用程序代码)中的内容复制到SDRAM中执行。NANDFlash的前4K空间放启动代码,SDRAM速度较快,用来执行主程序的代码。
- 2440 nand flash和nor flash上启动
- 2440 nand flash和nor flash上启动
- nand flash启动和nor flash启动
- Nand Flash和Nor Flash 启动区别
- NAND FLASH 和 NOR FLASH开机启动
- Nand Flash和Nor Flash 启动区别
- SRAM、SDRAM、nor flash、nand flash理解以及uboot在nor flash和nand flash启动
- NAND FLASH 和 NOR FLASH
- nor flash和nand flash
- NOR Flash 和 NAND Flash
- NAND FLASH和NOR FLASH
- Nand Flash和Nor Flash
- nor flash 和nand flash
- Nand flash 和 NOR flash
- NOR Flash和Nand Flash
- nand flash和nor flash
- NOR flash 和 NAND flash
- NOR flash和nand flash
- Traceview的使用
- Android Hierarchy Viewer
- SD卡启动U-Boot原理分析
- HDU 2888 Check Corners (二维RMQ,3级)
- 详解clientHeight、offsetHeight、scrollHeight
- 2440 nand flash和nor flash上启动
- android 提升性能总结
- CRF学习
- 不会的题
- java基础--简单银行业务调度系统
- Android实战技巧:多线程AsyncTask
- (读书笔记).NET大局观—.NET引介
- ubuntu 与 win共享
- LINUX下GDB调试