当前位置首页 > 计算机 > 嵌入式开发
搜柄,搜必应! 快速导航 | 使用教程

嵌入式系统的存储器系统

文档格式:PPT| 48 页|大小 1.42MB|2024-11-28 发布|举报 | 版权申诉
第1页
第2页
第3页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 48
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • 第二级,第三级,第四级,第五级,第4章 嵌入式系统的存储器系统,嵌入式系统设计,嵌入式系统设计,基于ARM9微处理器S3C2410A,第4章 嵌入式系统的存储器系统,南阳师范学院张帅,4.1 存储器系统概述,4.1.1 存储器系统的层次结构,计算机系统的存储器被组织成一个6个层次的金字塔形的层次结构,如图所示:,S0,层为,CPU,内部寄存器,S1,层为芯片内部的高速缓存(,cache,),S2,层为芯片外的高速缓存(,SRAM,、,DRAM,、,DDRAM,),S3,层为主存储器(,Flash,、,PROM,、,EPROM,、,EEPROM,),S4,层为外部存储器(磁盘、光盘、,CF,、,SD,卡),S5,层为远程二级存储(分布式文件系统、,Web,服务器),图4.1.1 存储器系统层次结构,在这种存储器分层结构中,上面一层的存储器作为下一层存储器的高速缓存CPU,寄存器就是,cache,的高速缓存,寄存器保存来自,cache,的字;,cache,又是内存层的高速缓存,从内存中提取数据送给,CPU,进行处理,并将,CPU,的处理结果返回到内存中;,内存又是主存储器的高速缓存,它将经常用到的数据从,Flash,等主存储器中提取出来,放到内存中,从而加快了,CPU,的运行效率。

    嵌入式系统的主存储器容量是有限的,磁盘、光盘或,CF,、,SD,卡等外部存储器用来保存大信息量的数据在某些带有分布式文件系统的嵌入式网络系统中,外部存储器就作为其他系统中被存储数据的高速缓存4.2.1 常见的嵌入式系统存储设备,1RAM(随机存储器),RAM可以被读和写,地址可以以任意次序被读常见RAM的种类有,SRAM,(Static RAM,静态随机存储器)、,DRAM,(Dynamic RAM,动态随机存储器)、,DDRAM,(Double Data Rate SDRAM,双倍速率随机存储器)其中,SRAM比DRAM运行速度快,SRAM比DRAM耗电多,DRAM需要周期性刷新2ROM(只读存储器),ROM在烧入数据后,无需外加电源来保存数据,断电后数据不丢失,但速度较慢,适合存储需长期保留的不变数据在嵌入式系统中,ROM用固定数据和程序4.2 嵌入式系统存储设备分类,3Flash Memory,Flash memory(闪速存储器)是嵌入式系统中重要的组成部分,用来存储程序和数据,掉电后数据不会丢失但在使用Flash Memory时,必须根据其自身特性,对存储系统进行特殊设计,以保证系统的性能达到最优。

    Flash Memory是一种非易失性存储器,根据结构的不同可以将其分成NOR Flash和NAND Flash两种Flash Memory在物理结构上分成若干个区块,区块之间相互独立NOR Flash把整个存储区分成若干个扇区(Sector),而NAND Flash把整个存储区分成若干个块(Block),可以对以块或扇区为单位的内存单元进行擦写和再编程NAND和NOR性能比较,NOR,和,NAND,是现在市场上两种主要的非易失闪存技术,NOR,的读速度比,NAND,稍快一些,NAND,的写入速度比,NOR,快很多,NAND,的擦除速度远比,NOR,的快,大多数写入操作需要先进行擦除操作,NAND,的擦除单元更小,相应的擦除电路更少,NAND和NOR,接口差别,NOR flash,带有,SRAM,接口,线性寻址,,可以很容易地存取其内部的每一个字节,NAND flash,使用,复用接口和控制,I/O,多次寻址存取数据,NAND,读和写操作采用,512,字节的块,这一点有点像硬盘管理,此类操作易于取代硬盘等类似的块设备,NAND和NOR,容量和成本,NAND flash,生产过程更为简单,成本低,常见的,NOR flash,为,128KB,16MB,,而,NAND flash,通常有,512MB,2GB,NOR,主要应用在代码存储介质中,,NAND,适合于数据存储,NAND,在,CompactFlash,、,Secure Digital,、,PC Cards,和,MMC,存储卡市场上所占份额最大,NAND和NOR,可靠性和耐用性,在,NAND,中每块的最大擦写次数是,100,万次,而,NOR,的擦写次数是,10,万次,位交换的问题,NAND flash,中更突出,需要,ECC,纠错,NAND flash,中坏块随机分布,需要通过软件标定,产品量产的问题,应用程序可以直接在,NOR Flash,内运行,,不需要再把代码读到系统,RAM,中运行。

    NOR Flash,的传输效率很高,在,1,4MB,的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能NAND Flash,结构可以达到高存储密度,并且写入和擦除的速度也很快,应用,NAND Flash,的困难在于需要特殊的系统接口在,NOR Flash,上运行代码不需要任何的软件支持在,NAND Flash,上进行同样操作时,通常需要驱动程序,也就是内存技术驱动程序(,MTD,)NAND Flash,和,NOR Flash,在进行写入和擦除操作时都需要,MTD,在,NAND Flash,中每个块的最大擦写次数是一百万次,而,NOR Flash,的擦写次数是十万次NAND Flash,除了具有,10:1,的块擦除周期优势,典型的,NAND Flash,块尺寸要比,NOR,型闪存小,8,倍,每个,NAND Flash,的内存块在给定的时间内删除次数要少一些NAND和NOR,软件支持,4标准存储卡(Compact Flash,CF卡),5安全数据卡(Secure Digital Card,SD卡),6硬盘存储器,最常见的硬盘接口是IDE(ATA)和SCSI两种,一些移动硬盘采用PCMCIA或USB接口。

    4.4 NAND Flash接口电路,4.4.1 S3C2410A NAND Flash控制器,1S3C2410A NAND Flash控制器特性,目前,Nor Flash价格较高,而SDRAM和 Nand Flash存储器相对经济,这样促使一些用户,在NAND Flash上执行启动代码,在 SDRAM 上执行主程序S3C2410A可以在一个外部NAND Flash存储器上执行启动代码,用来实现这一想法为了支持NAND Flash的启动装载(boot loader),S3C2410A配置了一个叫做“,Steppingstone,”的内部SRAM缓冲器当系统启动时,,NAND Flash存储器的前4KB将被自动加载到Steppingstone中,,然后系统自动执行这些载入的启动代码在一般情况下,启动代码将复制NAND Flash的内容到SDRAM中使用S3C2410A内部硬件ECC功能可以对NAND Flash的数据的有效性进行检查在复制完成后,将在SDRAM中执行主程序NAND Flash控制器具有以下特性:,NAND Flash,模式:支持读擦除编程,NAND Flash,存储器自动启动模式:复位后,启动代码被传送到,Steppingstone,中。

    传送完毕后,启动代码在,Steppingstone,中执行具有硬件,ECC,产生模块(硬件生成校验码和通过软件校验)在,NAND Flash,启动后,,Steppingstone 4KB,内部,SRAM,缓冲器可以作为其他用途使用NAND Flash,控制器不能通过,DMA,访问,可以使用,LDM/STM,指令来代替,DMA,操作2,S3C2410A NAND Flash,控制器结构,NAND Flash,控制器的内部结构方框图如图,所示NAND Flash,的工作模式如图,所示图4.4.1 NAND Flash控制器内部结构方框图,图4.4.2 NAND Flash的操作模式,自动启动模式的时序如下:,(1)完成复位;,(2)当自动启动模式使能时,首先将NAND Flash存储器的前4 KB内容自动复制到Steppingstone 4 KB内部缓冲器中;,(3)Steppingstone映射到,nGCSO,;,(4)CPU开始执行在Steppingstone 4 KB内部缓冲器中的启动代码注意:在自动启动模式,不进行ECC检测因此,,应确保NAND Flash的前4 KB不能有位错误。

    NAND Flash模式配置:,利用,NFCONF,寄存器设置,NAND Flash,配置;,写,NAND Flash,命令到,NFCMD,寄存器;,写,NAND Flash,地址到,NFADDR,寄存器;,在检查,NAND Flash,状态时,利用,NFSTAT,寄存器读写数据在读操作之前或者编程操作之后应该检查,R/,nB,信号在复制NAND FLASH的前4KB到Steppingstone的过程中,ECC不会被检查,这就必须保证所用NAND的前4KB没有坏位如果使用三星的NAND FLASH,这一点是完全可以保证的,三星NAND FLASH的,Block0,是没有坏位的,访问时不用进行错误校验使用其他品牌的NAND FLASH要看数据手册,确认其Block0在出厂时保证无错,方可与S3C2410配合使用,进行NAND方式的启动2410的手册上明白写着2410的NAND控制器可以自动LOAD 4K CODE到RAM,只是必须保证这4K FLASH 没坏块nand FLASH手册,block0是保证出厂不是坏的,其他块就不保证了,在NAND FLASH用户手册中,三星NAND FLASH对于坏块已经做了很详细的说明:,The 1st block,which is placed on 00h block address,is fully guaranteed to be a valid block,does not require Error Correction.,NAND Flash控制器的引脚配置如表所列。

    表4.4.1 NAND Flash控制器的引脚配置,引脚,配置,D7:0,数据/命令/地址输入/输出端口(与数据总线共享),CLE,命令锁存使能(输出),ALE,地址锁存使能(输出),nFCE,NAND Flash芯片使能(输出),nFRE,NAND Flash读使能(输出),nFWE,NAND Flash写使能(输出),R/nB,NAND Flash准备就绪/忙使能(输出),BOOT(启动)和NAND Flash配置如下:,(1)OM1:0=00b:使能NAND Flash控制器为自动启动模式;,(2)NAND Flash存储器的页面大小应该为512字节;,(3)NCON:NAND Flash存储器寻址步选择0为3步寻址;1为4步寻址,相关寄存器:,NAND Flash,配置寄存器,NFCONF,地址,0 x4E000000,NAND,Flash,命令设置寄存器,NFCMD,地址,0 x4E000004,NAND,Flash,地址设置寄存器,NFADDR,地址,0 x4E000008,NAND,Flash,数据寄存器,NFDATA,地址,0 x4E00000C,NAND,Flash,操作状态寄存器,NFSTAT,地址,0 x4E000010,NAND,Flash ECC,寄存器,NFECC,地址,0 x4E000014,4.4.2 NAND Flash的物理组成,正如硬盘的盘片被分为磁道,每个磁道又分为若干扇区,一块Nand flash也分为若干block,每个block分为如干page。

    一般而言,block、page之间的关系随着芯片的不同而不同,典型的分配是这样的:,1block=32page,1page=512bytes(datafield)+16bytes(oob),NandFlash以页为单位读写数据,而以块为单位擦除数据按照k9f1208的组织方式可以分四类地址:,Column 。

    点击阅读更多内容
    卖家[上传人]:tiantiande
    资质:实名认证
    相关文档
    正为您匹配相似的精品文档