第三章半导体存储器要点本章概述存储器的层次结构、半导体存储器的分类,以及高速缓冲存储器Cache和虚拟存储器;对PC机存储器的组织与管理作了概括。第三章半导体存储器3.1存储器概述3.2存储器组织与管理3.1存储器概述3.1.1存储系统的分层结构3.1.2半导体存储器分类3.1.3半导体存储器组成3.1.4RAM和ROM3.1.5高速缓冲存储器Cache3.1.1存储系统的分层结构微机大都采用分级结构来组织存储器系统,如图所示。存储器从内到外分为四级:内部寄存器组、高速缓冲存储器、内存储器和外存储器。它们在存取速度上逐级递减,在存储容量上逐级递增。分级存储器系统对其读写速度最快,可减少微处理器访问外部的次数,但数量不可能很多。用于装载当前程序和数据,使微处理器能以最高的速度工作运行的程序和数据都放在其中。如软盘、硬盘、光盘等,其存取速度比内存要慢得多。3.1.1存储系统的分层结构主存-辅存层次:具有主存的较快存取速度又具有辅存的大容量和低价格解决存储器的容量问题。高速缓存-主存层次:速度接近于Cache,而容量则是主存的容量解决存储器的存取速度问题微型计算机中存储子系统的分层结构如图所示3.1.2半导体存储器分类存储器分类:按存储介质分——磁表面存储器(硬磁盘、软磁盘、磁带等)、光盘存储器和半导体存储器。半导体存储器分类:按制造工艺分——MOS型和双极型两大类。最新相变存储器(PCM)兼具速度快、耐用、非挥发性和高密度性等多种优势于一身,其读写数据和恢复数据的速度是现在应用最广泛的非挥发性存储技术闪存的100倍;断电时,其仍拥有高超的存储能力,也不会造成数据丢失;而且,PCM能耐受1亿次写循环,而目前企业级闪存能耐受3万次写循环,消费级闪存仅为3000次。①用来制作多种半导体存储器件,如静态RAM、动态RAM、EPROM、E2PROM、FlashMemory等。②集成度高、功耗低、价格便宜;③速度较双极型器件慢。①由TTL(Transistor-TransistorLogic)晶体管逻辑电路构成;②存储器工作速度快,与CPU处在同一量级;③集成度低、功耗大、价格偏高。2.按存取方式分类半导体存储器随机存取存储器(RAM)只读存储器(ROM)静态RAM(SRAM)动态RAM(DRAM)掩膜式ROM可编程ROM(PROM)可擦除PROM(EPROM)电可擦除PROM(E2PROM)①信息可以随时写入或读出;②关闭电源后所存信息将全部丢失;③静态RAM采用双稳电路存储信息,而动态RAM是以电容上的电荷存储信息。④静态RAM速度更快,而动态RAM的集成度更高、功耗和价格更低,动态RAM必须定时刷新①ROM是一种在工作过程中只能读不能写的非易失性存储器;②掉电后所存信息不会丢失3.1.2半导体存储器分类(续)ROM存储器的发展过程就是不断方便用户使用的过程:掩模ROM→PROM→EPROM→E2PROM→FLASH。静态随机访问存储器SRAM主要发展方向:●提高速度——早期约300ns→现在只有几个甚至不到一个ns;●功能多样化——支持突发操作的同步SRAM即SBSRAM作为二级高速缓存L2Cache使用,实现了与快速处理器的匹配。支持缓冲操作的先进先出存储器FIFO支持数据共享的多端口SRAM(即Multi-SRAM),掉电时信息不丢失的非挥发随机存取存储器NVSRAM高集成度类静态随机存取存储器PSRAM(PseudoSRAM)3.1.2半导体存储器分类(续)动态随机存取存储器DRAM发展方向:●存储容量——早期几十Kb(bit:二进位)→现在512Mb至几Gb●访问速度——从几百ns→SDRAM的10ns→DDR、RDRAM最快1ns左右ECCRAM(错误校验与纠正RAM)对每个一定长度的二进制数都产生并存储一组附加的数据位,称为校验和,即ECC码。3.1.3半导体存储芯片的组成–存储体–地址译码器–控制逻辑电路–数据缓冲器半导体存储芯片的组成1.存储体存储芯片的主体,它由若干个存储单元组成。一个存储单元为一个字节,存放8位二进制信息。每个存储单元有一个地址(称为存储单元地址)存储体总是按照二维矩阵的形式来排列存储元电路。体内基本存储元的排列结构通常有两种。寄存器的个数(字数)与寄存器中存储单元个数(位数)的乘积,叫做RAM的容量。按照RAM中寄存器位数的不同,RAM有多字1位和多字多位两种结构形式。在多字1位结构中(简称位结构),每个寄存器都只有1位,例如一个容量为1024×1位的RAM,就是一个有1024个1位寄存器的RAM。多字多位(简称字结构),结构中,每个寄存器都有多位,例如一个容量为256×4位的RAM,就是一个有256个4位寄存器的RAM2.地址译码器接收来自CPU的N位地址,经译码后产生2n个地址选择信号3.控制逻辑电路接收片选信号及来自CPU的读/写控制信号,形成芯片内部控制信号4.数据缓冲器用于暂时存放来自CPU的写入数据或从存储体内读出的数据。半导体存储芯片的组成R/WCSm102n-110n位地址地址译码器存储矩阵控制逻辑数据缓冲器m位数据存储芯片组成示意图用以决定访问哪个字单元由大量寄存器构成的矩阵用以决定对被选中的单元是读还是写X0X1X2X318根列选择线Y0Y1 … Y732根行选择线…容量为256×4RAM的存储矩阵存储单元1024个存储单元排成32行×32列的矩阵每根行选择线选择一行每根列选择线选择一个字列Y1=1,X2=1,位于X2和Y1交叉处的字单元可以进行读出或写入操作,而其余任何字单元都不会被选中。地址的选择通过地址译码器来实现。地址译码器由行译码器和列译码器组成。行、列译码器的输出即为行、列选择线,由它们共同确定欲选择的地址单元。A0A1A2A3A4X0X1X2X31…A5A6A7Y0Y1…Y7行译码器列译码器256×4RAM存储矩阵中,256个字需要8位地址码A7~A0。其中高3位A7~A5用于列译码输入,低5位A4~A0用于行译码输入。A7~A0=00100010时,Y1=1、X2=1,选中X2和Y1交叉的字单元。010001003.1.4RAM•动态RAM•PC机内存条1.DRAM的特点(1)DRAM芯片的结构特点DRAM与SRAM一样,都是由许多基本存储元电路按行、列排列组成二维存储矩阵DRAM芯片都设计成位结构形式,即每个存储单元只有一位数据位,一个芯片上含有若干字。如4K×1位,8K×1位,16K×1位,64K×1位或256K×1位等DRAM芯片集成度高,存储容量大,因而要求地址线引脚数量多DRAM芯片常将地址输入信号分成两组,采用两路复用锁存方式,即分两次把地址送入芯片内部锁存起来,以减少引脚数量。(2)DRAM的刷新刷新就是不断地每隔一定时间(一般每隔2ms)对DRAM的所有单元进行读出,经读出放大器放大后再重新写入原电路中,以维持电容上的电荷,进而使所存信息保持不变对DRAM的刷新是按行进行的,每刷新一次的时间称为刷新周期。从上一次对整个存储器刷新结束到下一次对整个存储器全部刷新一遍所用的时间间隔称为最大的刷新时间间隔,一般为2ms。1.DRAM的特点–FPMDRAM–EDODRAM–SDRAM–DDR–DRDRAM3.1.4RAM和ROM-PC机内存条PC机内存条1.FPMDRAM(FastPageModeDRAM,快速页面模式内存)把连续的内存块以页的形式来处理。即CPU所要读取的数据是在相同的页面内时,CPU只要送出一个行地址信号。2.EDODRAM(ExtendedDataOutDRAM,扩展数据输出内存)和FPM的基本制造技术相同,在缓冲电路上有所差别,在本周期的数据传送尚未完成时,可进行下一周期的传送。3.SDRAM(SynchronousBurstDRAM,同步突发内存)采用了多体存储器结构和突发模式,为双存储体结构,也就是有两个存储阵列,一个被CPU读取数据时,另一个已经做好被读取的准备,两者相互自动切换。4.DDR(DoubleDataRate,双倍数据速率)SDRAM传统的SDRAM内存只在时钟周期的上升沿传输指令、地址和数据,而DDRSDRAM内存的数据线有特殊的电路,可以让它在时钟的上下沿都传输数据。5.DRDRAMDRDRAM的接口工作频率为400MHz,由于它能在时钟信号的上升沿和下降沿各传输一次数据,因此数据传输的频率实际上为800MHz,其峰值传输速率可以达到1.6GB/s。3.1.4RAM和ROM-只读存储器•(1)EPROM•(2)快速擦写存储器1.编程和擦除过程EPROM是一种可由用户进行编程并可用紫外光擦除的只读存储器。EPROM的编程过程实际上就是对某些单元写入“0”的过程。采用的办法是:在管子的漏极加一个高电压,使漏区附近的PN结雪崩击穿,在短时间内形成一个大电流,一部分热电子获得能量后将穿过绝缘层,注入浮置栅。擦除的原理与编程相反,通过向浮置栅上的电子注入能量,使得它们逃逸。2.快速擦写存储器–闪存的特点–闪存的应用快速擦写存储器(FlashMemory)也称为闪速存储器从原理上看,FLASHMemory属于ROM型存储器,但是它可以随时改写信息;从功能上看,它又相当于RAM。1.闪存的特点(1)按区块(Sector)或页面(Page)组织可进行整个芯片的擦除和编程操作外,还可以进行字节、区块或页面的擦除和编程操作(2)可进行快速页面写入CPU可以将页数据按芯片存取速度(一般为几十到200ns)写入页缓存,再在内部逻辑的控制下,将整页数据写入相应页面,大大加快了编程速度。(3)内部编程控制逻辑当编程写入时,由内部逻辑控制操作,CPU可做其他工作。CPU可以通过读出验证或状态查询获知编程是否结束,从而提高了CPU的效率。(4)在线系统编程能力擦除和写入都无需把芯片取下(5)软件和硬件保护能力可以防止有用数据被破坏2.闪存的应用目前闪存主要用来构成存储卡,以代替软磁盘。已大量用于便携式计算机、数码相机、MP3播放器等设备中。U盘往往内部包括了处理芯片和Flashmemory,之所以可以在比较低的单电源条件下工作,因为芯片内部往往有电荷泵(chargepump)用于提升电压,以满足在擦除和写入时对高电压的要求。3.1.5高速缓冲存储器Cache1.Cache工作原理现在微机中均设置有一级高速缓存(L1Cache)和二级高速缓存(L2Cache)Cache内容只是主存中部分存储数据块的副本,它们以块为单位一一对应Cache使CPU访问内存的速度大大加快。二级缓存存储系统的基本结构如图所示。3.1.5高速缓冲存储器Cache(续)1.Cache工作原理(续)判断:访问存储器时,CPU输出访问主存的地址,经地址总线送到Cache的主存地址寄存器MA,主存-Cache地址转换机构从MA获得地址并判断该单元的内容是否已经在Cache中存储?命中:如在则称为“命中”,立即把访问地址转换成其在Cache中的地址,随即访问Cache存储器。未命中:如果被访问的单元内容不在Cache中,称为“未命中”,CPU直接访问主存,并将包含该单元的一个存储块的内容及该块的地址信息装入Cache中;否则置换——若Cache已满,则在替换控制部件控制下,按某种置换算法,将从主存中读取的信息块替换Cache中原来的某块信息。3.1.5高速缓冲存储器Cache(续)2.Cache基本操作高速缓存操作的具体实现途径:CPU←→Cache←→主存。◆CPU←→Cache之间按行传输,一般一行为连续的256bit,即32个字节;◆Cache←→主存之间按页(又称块)传输,页的大小与Cache←→主存之间地址映射方式相关,通常为256个字节的整数倍。(1)读操作◆命中Cache:则从Cache中读出数据送上数据总线,并立即进行下一次访问操作;◆未命中Cache:CPU就从主存中读出数据,同时Cache替换部件把被读单元所在的存储块从