历史上的今天
返回首页

历史上的今天

今天是:2024年09月18日(星期三)

正在发生

2021年09月18日 | ARM9_S3C2440学习(五)norflash启动,nandflash启动,SDRAM总结

2021-09-18 来源:eefocus

S3C2440的启动时读取的第一条指令是在0x00上,分为成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。

 NANDFlash启动: NANDFlash控制器自动把nandflash存储器的前4K载到Steppingstone(内部SRAM缓冲器),并把0x00000000S设置为内部SRAM的起始地址,cpu从内部SRAM的0x00000000开始启动,这个过程不需要程序干涉。


(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速度较快,用来执行主程序的代码。ARM一般从ROM或Flash启动完成初始化,然后将应用程序拷贝到RAM,然后跳到RAM执行。

 

NORflash启动:支持XIP即代码直接在NOR Flash上执行,无需复制到内存中。这是由于NORFlash的接口与RAM完全相同,可随机访问任意地址数据。NORflash速度快,数据不易失,可作为存储并执行起到代码和应用程序的存储器,norflash可像内存一样读操作,但擦初和写操作效率很低,远不及内存,一般先在代码的开始部分使用汇编指令初始化外接的的内存部件(外存SDRAM),最后跳到外存中继续执行。对于小程序一般把它烧到NANDflash中,借助cpu内部RAM(SRAM)直接云行。


nor flash被映射到0x00000000地址(就是nGCS0,这里就不需要片内SRAM来辅助了,所以片内SRAM的起始地址还是0x40000000). 然后cpu从0x00000000开始执行(也就是在Norfalsh中执行)。


。NORflash速度快,数据不易失,可作为存储并执行起到代码和应用程序的存储器,norflash可像内存一样读操作,但擦初和写操作效率很低,价格很昂贵。SDRAM和nandflash的价格比较适中。根据这些特点,一些人产生了这样一种想法:外部nandflash中执行启动代码,SDRAM中执行主程序。NANDFlash控制器自动把nandflash存储器的前4K载到Steppingstone(内部SRAM缓冲器),并把0x00000000S设置为内部SRAM的起始地址,cpu从内部SRAM的0x00000000开始启动,这个过程不需要程序干涉。这4K的启动代码需要将NANDFlash中的内容复制到SDRAM中执行。NANDFlash的前4K空间放启动代码,SDRAM速度较快,用来执行主程序的代码。ARM一般从ROM或Flash启动完成初始化,然后将应用程序拷贝到RAM,然后跳到RAM执行。

推荐阅读

史海拾趣

DCCOM [ DC COMPONENTS ]公司的发展小趣事

在快速发展的过程中,DCCOM公司始终坚持品质至上的原则。公司建立了一套严格的质量控制体系,从原材料采购到产品生产的每一个环节都严格把关。这种对品质的执着追求,使得DCCOM的产品在市场上赢得了良好的口碑,客户回头率逐年攀升。

ASPEED Technology公司的发展小趣事

2016年,ASPEED Technology宣布并购博通旗下的Emulex Pilot™远程服务器管理芯片业务。这一举措标志着ASPEED在服务器管理芯片领域取得了重要突破,为公司带来了先进的远程服务器管理技术和市场份额。通过并购,ASPEED不仅获得了强大的技术支持,还进一步巩固了其在全球服务器管理芯片市场的地位。

Aptos Technology公司的发展小趣事

Aptos Technology成立于2006年,正值电子科技行业蓬勃发展的时期。初创时期的Aptos面临着资金短缺、技术积累不足以及市场竞争激烈等多重挑战。然而,凭借其独特的SiP-System in Package技术,公司成功在微电子封装领域获得了一席之地。通过不断的研发和创新,Aptos逐渐在行业内崭露头角。

FUJI公司的发展小趣事

近年来,Aptos将业务重心逐渐转向区块链领域。在经过长时间的研发后,公司成功推出了主网测试环境。在测试中,Aptos实现了惊人的3万TPS峰值以及超20亿笔日交易的处理能力,这一性能突破在行业内引起了广泛关注。

CAMDENBOSS公司的发展小趣事

随着环保意识的日益增强,CAMDENBOSS公司积极响应全球绿色生产的号召。公司投入大量资源研发环保型电子连接器产品,采用环保材料和工艺,降低生产过程中的能耗和排放。同时,公司还加强了废弃物的回收和处理工作,实现了资源的循环利用和减少对环境的影响。

Ark-Les Connectors公司的发展小趣事

随着公司规模的扩大和产品线的丰富,Ark-Les Connectors公司开始积极寻求市场拓展。公司制定了针对不同区域和行业的市场拓展策略,通过参加国际电子展会、建立销售网络、开展合作伙伴计划等方式,不断扩大品牌影响力。同时,公司还根据市场需求调整产品策略,推出定制化解决方案,满足不同客户的个性化需求。这些举措使得Ark-Les的市场占有率稳步提升,公司业绩也实现了稳步增长。

问答坊 | AI 解惑

为人师的喜悦

来[url=http://www.beidaqingniao.org/]北大青鸟[/url]工作已经四年有余了,四年中,经历了很多学员的来来往往,看着一批有一批的学员从懵懂走向了职场,一种自豪的喜悦不禁油然而生,也感到了这份工作的可贵。 昨天中午休息的时候,一位去年毕业 ...…

查看全部问答>

数控电源

数控电源数控电源数控电源数控电源数控电源…

查看全部问答>

新手须知:带你走进高清视频监控的世界

  近两年,是安防行业高速发展的时期,城市的现代化建设和经济的快速发展,以及构建和谐社会的要求,对城市各行业系统的安防监控工作提出了许多新的要求和课题。同时,平安城市的建设、奥运会的承办,都为安防行业的发展提供了广阔的平台,促进了 ...…

查看全部问答>

求K7M-DR60的编程软件。

我现有一台K7M-DR60U PLC的设备,程序动作不正常,需要编程软件打开调试程序希望各位大虾帮忙!…

查看全部问答>

菜鸟请教串口问题

1 为什么串口还有根地线,地线没有接地,地线是干什么的那? 2 串口中的停止位的问题   停止位:用于表示单个包的最后一位。典型的值为1,1.5和2位。由于数据是在传输线上定时的,并且每一个设备有其自己的时钟,很可能在通信中两台设备 ...…

查看全部问答>

wince下的开源软件在哪里找呢

想找个wince下的开源软件,可以进行http或者ftp网络下载,请问上哪找呢,谢谢…

查看全部问答>

如何测试USB Camera的驱动是否支持相关的接口API?

BOSS要我测试一下某个USB摄像头的drvier是否支持某个属性,比如 KSPROPERTY_VIDEOPROCAMP_BRIGHTNESS 控制亮度 我要用什么工具或者写怎样的测试程序才能测试? 在网上查了查发现DDK里面的KsStudio可以用来测试,但是不知道怎么用,里面的帮助也不是很 ...…

查看全部问答>

从nandflash拷贝kernel需要40s

我的开发板是bios引导wince系统,系统编译后nk.nb0大概35M左右,调试发现从nandflash拷贝系统到SDRAM需要40S时间啊,实在太慢、、把拷贝代码贴出来,还请大侠指点: static void LoadRunWince(void) {         U32 i, ram_a ...…

查看全部问答>

WinCE 5.0键盘的问题

什么办法可以关闭系统给定的软键盘(VB/C# .net) 这个不是自己添加的…

查看全部问答>