东南大学soc课件8-存储子系统(3学时)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1SoC存储子系统2目录•1、存储子系统简介•2、常用的存储器•3、外部存储器控制器EMI•4、SD/MMC控制器•5、存储子系统性能优化3•核心是解决容量、速度、价格间的矛盾,建立起多层存储结构。•一个金字塔结构的多层存储体系充分体现出容量和速度关系•Cache—主存层次:解决CPU与主存的速度上的差距;•主存—辅存层次:解决存储的大容量要求和低成本之间的矛盾。多层存储结构概念4SoC中存储系统层次性结构芯片级板级嵌入式处理器核(寄存器)紧密耦合存储器TCM片上SRAM片外SDRAM、SRAMFLASH及其他非易失存储器Cache每bit价格降低容量增大存取时间增大访问频度降低存取能耗增大5目录•1、存储子系统简介•2、常用的存储器•3、外部存储器控制器EMI•4、SD/MMC控制器•5、存储子系统性能优化6•随机存取存储器RAMa.静态RAM•同步SRAM在统一时钟的控制下同步操作,一般支持突发操作•FIFO先进先出•Multi-SRAM具有多数据端口•非挥发SRAM(NVSRAM)静态加后备电源•类SRAM用动态RAM,内部加刷新电路b.动态RAM•SDRAM•DDRIISDRAM•DDRIIISDRAM•只读存储器ROMa.掩膜式ROMb.可编程的PROMc.可用紫外线擦除、可编程的EPROMd.可用电擦除、可编程的E2PROM等e.在线编程擦除的FLASH半导体存储器的分类7•按构成存储器的器件和存储介质分类半导体存储器磁盘和磁带等磁表面存储器光电存储器•按存取方式分类随机存储器RAM(RandomAccessMemory)只读存储器ROM(Read-OnlyMemory)串行访问存储器(SerialAccessStorage)•按在计算机中的作用分类主存储器(内存)辅助存储器(外存)高速缓冲存储器存储器的分类8RAM•SRAM–面积大–速度快•DRAM–需要隔一定的周期进行刷新–面积小(1-3个晶体管)–速度慢•SDRAM–SynchronousDynamicRandomAccessMemory(同步动态随机存储器)–数据的读写需要时钟来同步•DDRSDRAM–DoubleDataRateSynchronousDynamicRandomAccessMemory(双数据率同步动态随机存储器)–允许在时钟脉冲的上升沿和下降沿传输数据,这样不需要提高时钟的频率就能加倍提高SDRAM的速度9FLASH•NORFLASH–容量小–价格贵–可以按位读写•NANDFLASH–容量大–价格便宜–不能按位读写,需要按block进行读写10NORFLASH•NOR技术(亦称为Linear技术)闪速存储器是最早出现的FlashMemory,目前仍是多数供应商支持的技术架构。它源于传统的EPROM器件•在擦除和编程操作较少而直接执行代码的场合,尤其是纯代码存储的应用中广泛使用,如PC的BIOS固件、移动电话、硬盘驱动器的控制存储器等。•NOR技术FlashMemory具有以下特点:–程序和数据可存放在同一芯片上,拥有独立的数据总线和地址总线,能快速随机读取,允许系统直接从Flash中读取代码执行,而无需先将代码下载至RAM中再执行;–可以单字节或单字编程,但不能单字节擦除,必须以块为单位或对整片执行擦除操作,在对存储器进行重新编程之前需要对块或整片进行预编程和擦除操作。•由于NOR技术FlashMemory的擦除和编程速度较慢,而块尺寸又较大,因此擦除和编程操作所花费的时间很长,在纯数据存储和文件存储的应用中,NOR技术显得力不从心。11NANDFLASH技术•NAND技术FlashMemory具有以下特点:–以页为单位进行读和编程操作,1页为256或512B(字节);以块为单位进行擦除操作,1块为4K、8K或16KB。具有快编程和快擦除的功能,其块擦除时间是2ms;而NOR技术的块擦除时间达到几百ms。–数据、地址采用同一总线,实现串行读取。随机读取速度慢且不能按字节随机编程。–芯片尺寸小,引脚少,是位成本(bitcost)最低的固态存储器,将很快突破每兆字节1美元的价格限制。–芯片包含有失效块,其数目最大可达到3~35块(取决于存储器密度)。失效块不会影响有效块的性能,但设计者需要将失效块在地址映射表中屏蔽起来。•Samsung公司在1999年底开发出世界上第一颗1GbNAND技术闪速存储器•基于NAND的存储器可以取代硬盘或其他块设备。12NOR与NANDFLASH的比较NORNAND性能比较读取速度稍快擦除和写入速度远远大于NORflash擦除Nor器件时是以64~128KB的块进行的,执行一个写入/擦除操作的时间为1~5s;擦除Nand器件是以8~32KB的块进行的,执行相同的操作最多只需要4ms。接口差别NorFlash带有SRAM接口,有足够的地址引脚来寻址,可以很容易地存取其内容的每一字节。用作程序存储器Nand器件使用复杂的I/O口来串行地存取数据,各个产品或厂商的方法可能各不相同。Nand的读和写操作采用固定大小的块,这一点有点像硬盘管理此类操作。容量和成本小,1~16MB,成本高,存储代码非常大,NandFlash的单元尺寸几乎是Nor器件的一半。由于生产过程更为简单,Nand结构可以在给定的尺寸内提供更高的容量。16MB~512B以上,存储数据可靠性和耐用性可擦写10万次可擦写100万次存在位反转和坏区的问题,需要进行EDC/ECC算法校验和坏区标识管理易用性可以非常直接地使用基于Nor的闪存,像SRAM存储器那样连接,并可以在上面直接运行代码。由于需要I/O接口,Nand要复杂得多。各种Nand器件的存取方法因厂家而异。在使用Nand器件时,必须先写入驱动程序,才能继续执行其它操作。13SEP3203的片外存储器14Flash存储器接口•Flash设计实例–NorFlashNandFlash15主存储器的主要技术指标•存储容量存储器可以容纳的二进制信息量称为存储容量(寻址空间,由CPU的地址线决定)实际存储容量:在计算机系统中具体配置了多少内存。•存取速度:存取时间是指从启动一次存储器操作到完成该操作所经历的时间,又称为读写周期。•可靠性:可靠性是用平均故障间隔时间来衡量(MTBF,MeanTimeBetweenFailures)•功耗:通常是指每个存储元消耗功率的大小166管SRAMWLBLVDDM5M6M4M1M2M3BLQQP485178x8SRAM阵列18单管DRAMWrite:CsischargedordischargedbyassertingWLandBL.Read:ChargeredistributiontakesplacesbetweenbitlineandstoragecapacitanceVoltageswingissmall;typicallyaround250mV.19ROMWLBLWLBL1WLBLWLBLWLBL0VDDWLBLGND二极管ROMMOSROM1MOSROM220读写时序读出时间:从存储器中读出数据所需要的时间,等于从提出读请求到数据在输出端上有效之间的延时。写入时间:从提出写请求到最终把输入数据写入存储器之间所经过的时间。读/写周期时间:在前后两次读或写操作之间所要求的最小时间间隔。这一时间通常大于存取时间。21DRAM和SRAM时序比较DRAMTimingSRAMTiming地址变化启动存储器操作22SRAM接口时序(SRAM,FLASH)SRAM和NorFlash的读时序tCS_WAIT:地址有效后片选保持为高电平(无效)的时间tCS_HOLD:片选从低电平变为高电平之后保持高电平的时间tOE_WAIT:片选有效后OE保持高电平所需要的时间tOE_HOLD:OE信号从低电平到高电平后保持高电平所需要的时间tOE_EN:OE信号保持低电平(有效)需要的时间SRAM和NorFlash的写时序tCS_WAIT:地址有效后片选保持为高电平(无效)的时间tCS_HOLD:片选从低电平变为高电平之后保持高电平的时间tWE_WAIT:片选有效后WE保持高电平需要的时间tWE_HOLD:WE信号从低电平到高电平后保持高电平所需要的时间tWE_EN:WE信号保持低电平(有效)需要的时间SDRAM芯片内部组织结构•芯片内部分为四个Bank•每个Bank又分为4096页•每页包含256个单元,•每个单元为16位•即4Banks×4096行×256单元×16Bits•每个Bank为2M字节,整个芯片为8M字节。•因为每个单元是16位,所以需要两个芯片才能构成32位系统。•SDRAM是多bank结构,其中一个bank在进行预充电期间,另一个bank马上可以被读取,这样当进行一次读取后,又马上去读取已经预充电bank的数据时,就无需等待,而是可以直接读取了。这就大大提高了存储器的访问速度。为了实现这个功能,SDRAM需要增加对多个bank的管理,实现控制其中的bank进行预充电。在一个具有两个以上bank的SDRAM中,一般会有实现bank选择的引脚,用来实现在多个bank之间的选择。•对SDRAM数据读取要在敏感放大器中进行,将要读取的页(Page)内容存放在敏感放大器的过程称为激活(Active)。每个Bank只有一个敏感放大器,也就是只能有一页数据处于被激活状态。对其他页数据读取时,需要进页预充电(Precharge),将敏感放大器的内容写回到SDRAM的存储体中,再激活(Active)需要读取的页数据。因此,SDRAM芯片进页访问时,必须根据当前操作地址对应Bank的状态来发出不同的命令。SDRAM的这种页组织特性使得访问不同页的存储单元时,由于需要进页预充电(Precharge)和激活(Activation)的换页操作,造成了存储单元访问时间不同,这个过程带来的延时可能是读取时间的几倍至几十倍。CONTROLLOGICROWDECODERCOLUMNDECODERCELLARRAYBANK#0SENSEAMPLIFIERROWDECODERCOLUMNDECODERCELLARRAYBANK#1SENSEAMPLIFIERROWDECODERCOLUMNDECODERCELLARRAYBANK#2SENSEAMPLIFIERROWDECODERCOLUMNDECODERCELLARRAYBANK#3SENSEAMPLIFIERSDRAM典型参数结构参数Bank数目4每个Bank中行数目1024每个行中列数目256单元大小16位总大小8M字节时序参数Bank预充电延迟(Precharge)2个时钟周期行激活延迟(Active)4个时钟周期CAS延迟2个时钟周期行刷新参数每次刷新的行的数目1行每两次刷新的间隔390个时钟周期刷新一个行的延迟8个时钟周期每次退出刷新状态的延迟1个时钟周期27SDRAM存储器引脚信号及接口时序•SDRAM是随机存储器中价格最低的一种,在大多数计算机系统中用做主存储器;•数据以电荷形式储存在电容上,并会在几ms内泄漏掉。为了长期保存,SDRAM必须定期刷新;•但动态RAM比静态RAM集成度高、功耗低,从而成本也低,适于作大容量存储器;•工作时序比较复杂–A0-A10:地址输入引脚,当ACTIVE命令和READ/WRITE命令时,来决定使用某个bank内的某个基本存储单元。–CLK:时钟信号输入引脚–CKE:ClockEnable,高电平时有效。当这个引脚处于低电平期间,提供给所有bank预充电和刷新的操作–/CS:芯片选择(ChipSelect,这个引脚就是用于选择进行存取操作的芯片–/RAS:行地址选择(RowAddressSelect)–/CAS:列地址选择(ColumnAddressSelect)–/WE:写入信号(WriteEnable)–DQ0-DQ15:数据输入输出接口–BA:Bank地址输入信号引脚,BA信号决定了激活哪一个bank、进行读写或者预充电操作。28DDRSDRAM•DDRSDRAM是DoubleDataRateSD

1 / 60
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功