《第四章 存储器和存储系统.ppt》由会员分享,可在线阅读,更多相关《第四章 存储器和存储系统.ppt(73页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第四章 存储器和存储系统分层的存储系统n基本概念n存储容量 存储器可以容纳的二进制信息量n存储器包含的存储单元的总数 存储容量=存储单元(字节)n存储器所能记忆的全部二进制信息量 例如:某存储器有4096字节的存储单元 则存储器的存储容量为 4KB=32KBitn存储系统的分层结构寄存器组高速缓冲存储器主 存 储 器辅 助 存 储 器CPU内部主机内部外部设备价格高低容量小大CacheCPURAMROM外存主存带 Cache 的结构层次n存储系统中的主存n按存储介质分类n半导体存储器体积小、功耗低、存取时间短、信息容易丢失n磁表面存储器信息不易丢失n磁芯存储器体积庞大、工艺复杂、功耗大n光盘存
2、储器记录密度高、耐用性好、可靠性高、可互换性强n按存取方式分类n只读存储器(ROM)掩膜ROM、PROM、EPROM、EEPROM、FLASH memoryn随机存取存储器(RAM)SRAM、DRAMn串行访问存储器 磁带存储器译码器与驱动地址寄存器读写电路控制电路存储体读写地址总线数据总线控制总线图图 主存的基本组成主存的基本组成n主存的工作过程n主存的技术指标n存储容量主存中能存放二进制代码的总数存储容量=存储单元数*字长n存储速度n存取时间:又叫存储器的访问时间,是指启动一次存储器操作(读或写)到完成该操作所需要的全部时间n存取周期:存储器进行连续两次独立的存储器操作所需要的最小时间间隔
3、 MOS的存取周期100ns,TTL的存取周期10nsn存储器的带宽n每秒从存储器中进出信息的最大数量。单位为字节字节/秒秒或字字/秒秒例如:存取周期为500ns,则1秒周内能进行1/(500*10-9)=200万次操作,假设每个存储周期能够 访问16位的二进制数,则它的带宽为 200万*2*8=200万*2 字节/秒 =4M字节/秒提高存储器的带宽:缩短存取周期、增加存储字长、增加存储体n几种半导体存储器存储体地址译码读写电路地址总线A0An数据总线D0Dm片选线读控制线写控制线图图 存储器芯片的基本结构存储器芯片的基本结构n地址线n编号方式:A0,A1,Ann存储器芯片引脚的数目决定的存储
4、器的容量。一个存储器芯片引脚的数目为10则地址范围为00 0000 0000 11 1111 1111存储容量为 210=1024 个存储单元,即 1KB。假设CPU有16位的地址总线,那么它可以访问的存储空间范围为 0000H FFFFH,即 216=64KB8086,8088地址总线为20位,可以访问的存储空间的范围为:00000H FFFFFH,即 220=1MB80286地址总线为24位,可访问的存储空间为16M80386,80486和Pentium地址总线为32位,可访问的存储空间为4GPentium Pro 和 Pentium II 的地址总线为36位,可访问的存储空间为64G16
5、位二进制数表示的地址:0000,0001,0002,000E,000F0000,0001,0002,000E,000FFFE0,FFE1,FFE2,FFEE,FFEFFFF0,FFF1,FFF2,.FFFE,FFFFn数据线n表示方式:D0,D1,Dmn存储器的容量通常为字节*也可以用字(16位)、4位或1位来进行表示1K*8 表示有1K的存储容量,每个存储单元输出8位数据16K*1 表示有16K的存储容量,每个存储单元输出1位 的数据芯片选择线(片选线)存储器芯片上有一个或一个以上允许存储器芯片工作的控制线n表示方式:片选(CS),片允许(CE),或简写为 Sn读写控制线n存储器芯片上传输读
6、、写控制信号,ROM只有读信号,RAM上有一到两个读写控制信号n表示方式nROM 允许输出信号 OE 或简称 GnRAM 读信号 WE 或简称 W 写信号 OE 或简称 Gn只读存储器n掩膜ROMY 列地址译码01231A5 A6 A7 A8 A9选通输出0131X行地址译码A0A1A2A3A4nPROM行线列线VCC熔丝存0,则烧断熔丝;存1,熔丝不断。只能实现一次编程nEPROMn改写方式n紫外线照射n电气的方法(EEPROM)nFLASH memoryP 基片N+N+SDGSiO2n静态RAM(SRAM)VCCT1T3T2T4T5T6AA位线B位线B地址选择n动态RAM字线数据线TCS利
7、用存储器芯片构造存储系统n利用与非门实现译码例:假设某微处理器有20根地址线 A0,A1,A2,A19 8根数据线D0,D1,D2,D7 20根地址线:CPU可以访问1M个存储单元 8根数据线:CPU和存储器之间每次传送的数 据为8位 存储器使用 2K*8 EPROM:11根地址线,8 根数据线2K*8EPROM数据线D0D7地址线A0A10CEOEVPPVCCRD地址线A12A19地址线A11M/IO2K*8 EPROM被译为地址 FF000HFF7FFHn利用译码器实现译码Y0Y1Y2Y3Y4Y5Y6Y7ABC G1G2AG2B译码输入输入使能74LS138译码器G2AG2BG1CBAY0
8、Y1Y2Y3Y4Y5Y6Y71 1XXXXX11111111X1 1XXXX11111111XX0 0XXX111111110010000111111100100110111111001010110111110010111110111100110011110111001101111110110011101111110100111011111110例:假设微处理器系统中从0E0000H开始的64K存储区 无存储器,已知某一类RAM是8K*8的存储芯片,如何进行扩充?8K*8CEW/R数据线D0D7地址线A0A12Y0Y1Y2Y3Y4Y5Y6Y7A0A12D0D7A0A12D0D7数据线数据线地址
9、线地址线RDW/RW/RA13A15A16A17A19ABCG1G2AG2BE0000E1FFFE2000E3FFFE4000E5FFFE6000E7FFFE8000E9FFFEA000EBFFFEC000EDFFFEE000EFFFFCECE存储器的扩展n存储器的位扩展位扩展位扩展是指增加存储器的字长,如1K*4的存 储器,可组成1K*8的存储器21142114A0A9D4D7D0D3CSWEn存储器的字扩展字扩展字扩展是指增加存储器的字的数量,如2片 1K*8的存储器,可组成2K*8的存储器,即存储器的容量增加了一倍D0D71K*8 A1K*8 BWEA0A9A10存储器的容量为2K,即
10、000 0000 0000 100 0000 0000 011 1111 1111 111 1111 11111 K1 KCS0CS1n存储器的字、位扩展字、位扩展字、位扩展是指既增加存储器的字的数量又增 加字长,如4片1K*4的存储器,可 组成2K*8的存储器,即存储器的 容量、字长都增加了一倍。1K*41K*41K*41K*4D0D7WECS0A0A9A10CS1例:假设 8086 系统中从 0E0000H 开始的 64K 存储区无 存储器,2764EPROM 是 8k*8 的只读存储器,如何 对其进行扩充?解:解:第一步:将地址范围写成二进制代码,并确定其总容量 A19 A18 A17
11、A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 164K第二步:根据地址范围的容量及该范围在计算机中的应用,选 择存储芯片 要扩充64K的存储容量,给定了只读存储器2764EPROM,共需要 8 片 2764EPROM 进行扩充。第四步:片选信号的形成第三步:分配地址线 将CPU的低13位地址线A0A12与2764EPROM相连,剩下 的高位地址线用于产生片选信号。1 译码
12、器的输入端A、B、C,决定了Y0Y7那个端口有输出,从而决定选中哪片芯片,将A15、A14、A13分别与C、B、A相 连,从000111变化,从而可以选择8片芯片。A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 为了使译码器进行工作,G1位高电平,G2A、G2B位低电平,可以将A19、A18、A17连接到一个与非门上,与非门的输出和 G2A、G
13、2B输入端相连。A16可以和一个非门电路相连,输 出和G1的输入端相连。Y0Y1Y2Y3Y4Y5Y6Y7A0A12D0D7A0A12D0D7数据线数据线地址线地址线RDW/RW/RA13A15A16A17A19ABCG1G2AG2BE0000E1FFFE2000E3FFFE4000E5FFFE6000E7FFFE8000E9FFFEA000EBFFFEC000EDFFFEE000EFFFFCECE A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
14、 0 0 0 0 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1针对译码器的Y0输出,这时CBA=000,即A15=0,A14=0,A13=0地址范围:1110 0000 0000 0000 0000=E0000H 1110 0001 1111 1111 1111=E1FFFH针对译码器的Y1输出,这时CBA=001,即A15=0,A14=0,A13=1地址范围:1110 0010 0000 0000 0000=E2000H 1110 0011 1111 1111 1111=E3FFFH例:例:假设 CPU 有16根地址线,8根数据线,并用 MREQ作 为访
15、存控制信号(低电平有效),用 WR 做读/写控制信号(高电平为读,低电平为写),现有下列存储芯片:1K*4位RAM,4K*8位RAM,8K*8位RAM,2K*8位ROM,4K*8位ROM,8K*8位ROM及74LS138译码器和各种门电路,画出CPU与存储器的连接图,要求:1.主存地址空间分配 6000H 67FFH 为系统程序区 6800H 6BFFH 为用户程序区 2.合理选用上述存储芯片,说明各选几片?3.详细画出存储器芯片的片选逻辑图。解:解:第一步:将地址范围写成二进制代码,并确定其总容量 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2
16、 A1 A0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1系统程序区2K*8用户程序区1K*8第二步:根据地址范围的容量及该范围在计算机中的应用,选 择存储芯片 由 6000H 67FFH 为系统程序区,为2K*8位,应选择一 片 2K*8 位 ROM 由 6800H 6BFFH 为用户程序区,为1K*8位,应选择两 片 1K*4 位 RAM第三步:分配 CPU 的地址线 将 CPU 的
17、低11位地址线A10 A0与2K*8位的ROM地址线相 连,将 CPU 的低10位地址线A9 A0与1K*4位的RAM地址 线相连,剩下的高位地址与访存控制信号共同产生存储芯 片的片选信号。第四步:由题给出的74LS138译码器的输入逻辑关系可知,必须保 证G1为高电平,G2A、G2B为低电平才能使译码器工作。A15为低,连接到G2A上,A14为高,连接到G1上,MREQ 为低,连接到G2B上。保证了三个控制端的要求 A13、A12、A11连接到C、B、A上。输出Y4有效时,选中 一片ROM;Y5有效时,同时A10有效为低电平,选中两片 RAM。读出时低电平有效,RAM的读/写控制端与CPU的
18、 命令端WR相连 *ROM 的数据线是单向的2K*81K*41K*4MREQD7D6D5D4D3D2D1D0WRA10A9A8A7A6A5A4A3A2A1A0CBAA13A12A11G1G2AG2BA15A14Y7Y6Y5Y4Y3Y2Y1Y0提高访问存储器速度的方法n多存储体方式n单体多字系统W位W位W位W位地址寄存器主存控制部件数据寄存器存储体前提:指令和数据在主存中必须是连续存放的,一旦遇到转前提:指令和数据在主存中必须是连续存放的,一旦遇到转移指令或者操作数不能连续存放,这种方法的效果就不明显移指令或者操作数不能连续存放,这种方法的效果就不明显n多体并行存储系统(地址码被分为体号、体内地
19、址两部分)n高位交叉编址 有利于存储器的扩充体 号体内地址地址译码01n-1nn+12n-12n2n+13n-13n3n+14n-1000000000001000010000011000100000101000110000111001000001001001010001011001100001101001110001111010000010001010010010011010100010101010110010111011000011001011010011011011100011101011110011111100000100001100010100011100100100101100110
20、100111101000101001101010101011101100101101101110101111110000110001110010110011110100110101110110110111111000111001111010111011111100111101111110111111M0M1M2M3n低位交叉编址 有利于解决访存冲突体内地址地址译码044n-4154n-3264n-2374n-1体 号000000000100001000001100010000010100011000011100100000100100101000101100110000110100111000
21、111100M0M1M2M30000010001010010010011010100010101010110010111011000011001011010011011011100011101011110011111010000100001100010100011100100100101100110100111101000101001101010101011101100101101101110101111100000110001110010110011110100110101110110110111111000111001111010111011111100111101111110111111
22、11n高速缓冲存储器-Cachen问题的提出n避免CPU与I/O争抢访存 I/O设备向主存请求的级别高于CPU访存n解决CPU与主存之间速度不匹配的问题 CPU的速度每年增长60%RAM速度每年改进 7%n程序访问的局部性原理使CPU与Cache交换信息成为可能nCache的工作原理012.2m-1字块0字块1字块2字块2m-1主存块号 块内地址M块=2m B个字=2bm位b位n位012.2c-1字块0字块1字块2字块2c-1缓存块号 块内地址C块=2c B个字=2bc 位b位标记n影响Cache命中率的因素n块长 一般块长取4至8个可编址单位(字或字节)IBM370/168的主存是4体交叉,
23、每个体宽为64 位(8个字节),Cache的块长为32个字节。n容量 Cache的容量是成本与命中率的折衷 80386主存的最大容量为4GB,Cache的容量为 16KB或32KB,命中率可达95%以上CPU地址总线数据总线主存Cache存储体Cache数据替换机构主存Cache地址映像变换机构主存地址命中、产生Cache地址直接通路没命中访问主存替换Cachen替换算法n先进先出(FIFO)n优点:实现容易、开销小n缺点:可能把一些常用的程序,如子程序、循环程序块,作为最早进入Cache块,替换出去n近期最少使用法(LRU)n优点:命中率高n缺点:开销大nCache的读/写操作n读操作开始C
24、PU发出访问地址命中?访问Cache,取出信息送CPU访问主存,取出信息送CPU将新的主存块调入Cache中执行替换算法腾出空位结束YNCache满?YNn写操作n写直达法:数据写入Cache的同时,也写入主存的相应的块。能始终保证Cache中的内容和主存中的内容一致。n写回法:数据每次只是暂时写入Cache中,并用标志将该块加以注明,当该块从Cache中替换出去时,才写入主存中。该方法速度快,但因主存中的字块未经随时修改,可能失效。n信息只写入主存,同时将相应的Cache块有效位置“0”,表明此块已失效,需要时从主存中调入。还有一种情况,被修改的单元不在Cache内,这时,写操作只对主存进行
25、。nCache的改进n单一缓存和两级缓存n统一缓存和分开缓存n统一缓存:指令和数据都存放在同一缓存内的Cachen分开缓存:指令和数据分别存放在两个缓存中。外部存储器n主要技术指标n存储密度:单位长度内存储的二进制信息n道密度:磁盘沿半径方向,单位长度的磁道数n位密度:单位长度磁道能纪录的二进制信息的位数磁道磁盘磁带n存储容量n外存储器所能存储的二进制信息的总数量。一般以位或字节为单位。n磁盘存储器容量n盘面数:可以存储数据的盘面个数n扇区:每个磁道分为若干个区域,每个扇区存放512个字节数据n磁盘存储器容量=盘面数*每个盘面的磁道数*扇区数*每个扇区存储字节数n格式化容量和非格式化容量n非格
26、式化容量:磁盘表面可以利用的磁化单元总数n格式化容量:磁盘按某种特定的存储格式所能存储数据的总量n平均存取时间平均找道时间+平均等待时间+控制指令运行时间n数据传输率单位时间内磁表面存储器向主机传送数据的位数或字节数数据传输率=记录密度*记录介质的运行速度n误码率是衡量磁表面存储器出错概率的参数误码率=出错信息的位数/读出的总信息位数n磁记录原理和记录方式n磁记录原理写线圈NS写线圈SN磁芯磁通磁层磁载体局部磁化单元局部磁化单元写入0写入1n记录方式n归零制(RZ)n记录1时通正向脉冲电流,记录0时通负向脉冲电流n两位信息之间的驱动电流归零n记录密度不高,目前很少使用n不归零制(NRZ)n磁头
27、线圈始终有电流n当连续记录 1 或者 0 时,写电流方向不变,只有当两个相邻的代码不同时,写电流才改变方向。n见1就翻的不归零制(NRZ1)n磁头线圈始终有电流n记录 0 时电流不改变方向,记录 1 时电流改变方向n调相制(PM)n记录0时,电流由负编正,记录1时,电流由正变负n每两个相同信息的交界处,电流方向变化一次;相邻信息不同时,电流方向不变n应用于磁带存储器中n调频制(FM)n以驱动电流变化的频率不同来区别记录1或者0n记录0时,在一位信息的记录时间内电流保持不变;记录1时,在一位信息记录时间的中间时刻,电流改变一次方向。相邻信息的交界处,线圈电流均变化一次。n广泛应用于硬磁盘和软磁盘
28、中n改进调频制(MFM)n记录0时,在记录时间内电流不变,在记录1时在记录时间的中间时刻电流发生一次变化。(与调频制相同)n只有当连续记录两个或两个以上的0时,才在每位的起始处电流改变一次。n写入同样的数据序列时,MFM比FM磁翻转次数少,在相同长度的磁层上可记录的信息量将会增加,从而提高了磁记录密度。n倍密度软磁盘采用MFM的记录方式0 1 1 1 0 0 0 1 0归零制RZ不归零制NRZ见1就翻的不归零制NRZ1调相制PM调频制FM改进调频制MFMn评价记录方式的主要指标n编码效率n位密度与磁化翻转密度的比值,可以用记录一位信息的最大磁化翻转次数来表示nFM、PM记录方式中,记录一位信息
29、的最大磁化翻转次数为2,因此编码效率为50%。nMFM、NRZ、NRZ1中,编码效率为100%n自同步能力n从单个磁道读出的脉冲序列中所提取同步时钟脉冲的难易程度。nNRZ1采用外同步nFM、MFM是具有自同步能力的记录方式n软磁盘存储器n概述n软盘存储器的盘片使用类似塑料薄膜唱片的柔性材料制成的,简称软盘n软盘特点n转速低、存取速度低n活动磁头、可换盘片结构n软盘的磁头直接接触盘片进行读写n价格便宜、保存方便、使用灵活n第一台软盘机是IBM公司1972年研制成功的IBM3740数据录入系统,采用的是8英寸单密度软盘,容量为256K。n软磁盘片用户标签允许写缺口中心孔索引孔读写孔中心0道n记录
30、格式数据区地址区索引孔间隙标志间隙扇区1 扇区2 扇区3 扇区26间隙同步地址标志扇区标志间隙数据标志数据CRC校验间隙n软盘驱动器和控制器n软磁盘存储器由软盘驱动器(驱动结构、磁头、定位机构、读写电路)、软盘控制器(解释来自主机的命令并向软盘驱动器发出各种控制信号,同时还要检测驱动器的状态,发送读写数据命令)、软磁盘片三部分组成n具体操作n寻道操作:将磁头定位在目标磁道上n地址检测操作:主机将目标地址送往磁盘控制器,控制器从驱动器上按记录格式读区地址信息,并与目标地址进行比较,找到欲读写信息的磁盘地址n读写数据操作:首先检测数据标志是否正确,然后将数据字段的内容读入内存,最后进行CRC校验n
31、写数据操作:写数据时,不仅要将原始信息经编码后写入磁盘,同时还要写上数据区标志和CRC校验码及间隙n初始化:在盘片上写格式化信息,对每个磁道划分区段n硬盘存储器n硬盘存储器的类型n按磁头的工作方式分类n固定磁头硬盘存储器n移动磁头硬盘存储器固定磁头磁盘存储器移动磁头磁盘存储器n按硬盘是否具有可换性分类n可换盘磁盘存储器n固定盘磁盘存储器磁头移动方向磁头支架旋转的盘主轴移动磁头多盘片磁盘n温彻斯特硬盘n是一种可移动磁头固定盘片的磁盘存储器n1972年首先应用在IBM3340硬盘存储器中n采用密封组合方式,将磁头、盘片、驱动部件以及读写电路等制成一个不能随意拆卸的整体 防尘性能好、可靠性高、对环境要求不高n硬盘存储器的结构n磁盘驱动器 主要包括主轴、定位驱动及数据控制等部分n磁盘控制器:接收主机发送来的命令n盘片n格式化和分区n低级格式化n对盘片上的扇区加上标记,以便驱动器能识别指定的扇区,并规定扇区的交错因子。n容易对硬盘产生损伤,尽量不使用n硬盘的分区n目的:将物理硬盘分为若干个逻辑存储区域,主要是为了使用不同的操作系统n可以系硬盘上建立一个基本分区、一个逻辑分区n高级格式化nFORMAT命令n是硬盘的记录格式能为系统接受。检测出硬盘有缺陷的磁道和扇区,建立目录、文件分配表和装入操作系统文件
限制150内