1.32k likes | 1.52k Views
计 算 机 组 成 原 理. computer organization principle. 主讲教师 丁纪凯. 存储系统和结构. 第 4 章. 本章要点 存储系统是以程序存储和程序控制的电子数字计 算机的重要的不可或缺的主要组成部分,本章论述 了存储系统的组成、主存的组织与操作、存储系统 的层次结构和高速缓冲存储器和虚拟存储器。. 第 4 章 — 存储系统和结构. 4.1 存储系统的组成 4.2 主存的组织与操作 4.3 存储系统的层次结构
E N D
计 算 机 组 成 原 理 computer organization principle 主讲教师 丁纪凯
存储系统和结构 第4章
本章要点 存储系统是以程序存储和程序控制的电子数字计 算机的重要的不可或缺的主要组成部分,本章论述 了存储系统的组成、主存的组织与操作、存储系统 的层次结构和高速缓冲存储器和虚拟存储器。 第4章—存储系统和结构
4.1存储系统的组成 4.2主存的组织与操作 4.3存储系统的层次结构 4.4高速缓冲存储器 4.5虚拟存储器 第4章 存储系统和结构
4.1 存储系统的组成 4.1.1 存储器的分类 存储器是计算机系统中必不可少的组成部分,用来存放计算机系统工 作时所使用的信息——程序和数据。 计算机系统中常用的存储器分类 如图所示。
1、 半导体存储器的特点是: ① 速度快、存取时间可为ns级; ② 集成化,存储单元所占的空间小,用来寻找存储单元地址的译 码电路和数据、地址缓冲寄存器以及存储单元都制作在同一芯片中, 体积特别小; ③ 非破坏性读出,特别是半导体静态存储器,读操作不破坏原来 的信息,而且不需要再生,既缩短了读写周期,又简化了控制操作。 4.1.2 主存 在现代计算机系统中主存都是由半导体存储器组成。 2、器件组成角度分类
采用金属氧化物半导体(MOS )电路 ,集成度高、功耗低,价格便宜 单极型存储器 采用TTL(晶体管-晶体管逻辑)电路, 速度快、功耗不大,但集成度较低; 双极型存储器 3、器件组成角度分类 从工作特点、作用等角度分类有: 掩膜ROM (1) 随机存取存储器RAM RAM的特点是存储器中信息能读能写,对存储器中任一存储 单元进行读写操作所需时间基本上一样的,写入的信息在掉电后 立即消失。 紫外线可擦除的PROM(EPROM) 电可擦除的PROM(EEPROM) 快擦写存储器(Flash Memory) RAM又可分为静态RAM(SRAM)和动态RAM(DRAM)。
●SRAM的基本电路是利用半导体触发器的两个稳定状态表示“1”●SRAM的基本电路是利用半导体触发器的两个稳定状态表示“1” 和“0”,最简单的TTL电路组成的SRAM是由两个双发射极晶体管和 两个电阻构成的触发器电路; 典型的单极型SRAM是由6个 MOS管组成的双稳态触发电路。 ① 静态RAM ( SRAM) 1 0 ◎ T1和T2组成一个双稳态触发器,用 于保存数据。T3和T4为负载管。 如A点为数据D,则B点为数据/D。
◎ 读操作: 行选择线(X地址线)有效(高电 平) 时,A 、 B处的数据信息通过门控管T5和T6送至T7和T8 。 列选择线(Y地址线)有效(高电 平)时, T7和T8导通,D0、/D0的数据信息通过输入输出电路I/O输出; ◎ 写操作: 写入信号自I/O以及/I/O线输入,当写“1”时 ,I/O线为“1”,而/ I/O线为“0”。I/O线上的高 电平通过T7管、D线、T5管送到A点,而/ I/O线 上的低电平经T8管、/ D线、T6管送到B点,使 T2管导通、T1管截止,保持A点为1、B点为0。
只要电源不撤除,写入SRAM的信息将不会消失;只要电源不撤除,写入SRAM的信息将不会消失; 不需要刷新电路; 一经写入可多次读出,读出时不破坏原存信息; 功耗较大,容量较小,但存取速度较快。 ●SRAM的特点 ② 动态RAM(DRAM) ◆DRAM是利用MOS管的栅极对其衬底间的分布电容来保存信息,以 储存电荷的多少(即电容端电压的高低)来表示“1”和“0”。 典型的单管存储电路原理图如图所示。 电容C上有电荷表示存储的二进制 信息是“1”,无电荷表示“0”。
读操作:字选线为高电平,T1管导通, 若存储单元为1,导通时C上电荷转 移到D上,所以D为1; 若存储单元为0,C上原无电荷,则 D为0; 每个数据读出后,C上的电荷释放, 信息被破坏,必须重新恢复C上的电 荷量,称为刷新。 写操作:字选线X为“1”,T1管导通,写入的信息通过数据线D存入电 容C中。
◆DRAM的特点 DRAM的每个存储单元所需的MOS管较少,DRAM的集成度较高; 功耗低; DRAM中的信息一般信息保存时间为2ms左右,保存DRAM中的信 息,每隔1~2ms要对DRAM中所有的存储单元刷新一次,即对 其中存放的信息进行再生,采用DRAM的计算机必须配置刷新电路。 DRAM的DRAM一般微机系统中的内存都采用DRAM。 (2)DRAM
(2)只读存储器ROM ① 掩膜ROM 存储单元中的信息由ROM制造厂在生产时一次性写入的。 ROM的特点是用户在使用时只能读出其中信息,不能修改和写 入新的信息,但写入的信息在掉电后不会丢失。 ROM有如下几种类型:
② PROM(可编程ROM) PROM中的程序和数据是由用户自行写入的,但一经写入,就 无法更改,是一次性写入多次读出的ROM。 ③ EPROM(可擦除可编程ROM) 这种由紫外线擦除的EPROM称为UVEPROM ; EPROM可由用户自行写入程序和数据,写入后 的内容可由紫外线灯照射擦除,然后可重新写入 新的内容, EPROM可多次擦除,多次改写。
ED S 浮空多晶硅栅D T3 字线 P+ N基片 P+ EPROM T2 位线 ④ E2PROM(电可擦除可编程ROM) E2PROM是可用电信号进行擦除和改写的存储器; 其特点是使用方便,芯片不离开插件板便可擦除或改写其中的 信息。 E2PROM的存取速度较慢,价格较贵。 ⑤ 闪速存储器(Flash Memory,简称闪存) 又称快擦型存储器,是一种非挥发性存储器。
Flash Memory芯片借用了EPROM结构简单的特点,又吸收了 E2PROM电擦除的特点。 具有整块芯片电擦除和部分电擦除的特点、耗电低、集成度高 、体积小、可靠性高、无需后备电池、可重新改写、重复使用性 好(至少可反复使用百万次以上)等优点。 Flash Memory的访问时间可低至70ns,比硬盘驱动器快50~200倍 ,平均写入时间低于0.1秒。由于没有机械运动部件,所以抗震能 力比硬盘驱动器强10倍 。 3. 闪速存储器 广泛应用于便携式计算机的PC卡存储器(固态硬盘),代替 EPROM和E2PROM存储BIOS程序。 采用Flash Memory制成的“闪盘”(又称“U盘”或优盘) 广泛应用 用以替代软盘,成为大容量、高速度的移动式存储器。
必须指出:采用闪存的闪盘属于辅助存储器。 4.1.3 辅存 计算机系统中的辅助存储器用来存放CPU运行时暂时不用的各种程 序和文件。辅存设在主机外部,CPU不能直接访问它。 当CPU在运行中,要用到辅存中的程序和文件时,必须通过专门的程 序将其调入主存, CPU才能使用。 常用的辅助存储器有:磁盘存储器、磁带存储器和光盘存储器。
4.2.1半导体存储器的基本结构 4.2 主存的组织与操作 ◆ 计算机系统中用作内存储器的半导体存储器的基本结构如图所示。
虚线框内为内存储器,由半导体存储器组成。 MB: 存储体,是存储单元的集合体。 M位地址线:用来指出所需访问的存储单元的地址(2M), N位数据线:用来在CPU与内存之间传送数据信息, 控制线:用来协调和控制CPU与内存之间的读写操作。 内存储器通过M位地址线、N位数据线和一些有关的控制线同CPU 交换信息。 ◆ 存储器读过程 CPU 先将地址码通过地址线送入存储地址寄存器MAR ; 然后CPU 使控制线中的读信号线READ线有效,MAR中地址码经过地 址译码后选中该地址对应的存储单元; 通过读写驱动电路,将选中单元的数据送入存储数据寄存器MDR; 通过数据总线读入CPU;
4.2.2存储器中的数据组织 ● 存储字:作为一个整体一次存放或取出内存储器的数据 ● 字节编址:一个存储地址对应一个8位存储单元,在现代计算机 系统中,特别是在微机系统中,内存储器一般都以字节编址。 一个8位二进制数存一个存储单元、16位存储字就占了两个连续 的8位存储单元。 ● 小端存放格式 16位存储字或32位存储字的地址是2个或4个存储单元中最低端 的存储单元的地址,而此最低端存储单元中存放的是32位字中最 低8位。Intel 80X86系统采用这种格式。 例如,32位存储字12345678H存放在内存中的情况如图所示。
12345678H存放在内存中,占有24300H ~ 24303H 四个地址的存储单元,其中最低字节78H存放在24300H中 。
最高8位信息存放在最低地址24300H,16位或32位存储字的地址最高8位信息存放在最低地址24300H,16位或32位存储字的地址 指向最高8位数据的存储单元。在Motorola680X0系统采用这种格式。 例如,32位存储字12345678H 存放在内存中的情况如图所示。 ● 大端存放格式
4.2.3 半导体存储器的主要技术指标 1. 存储容量 ◎半导体存储器芯片的存储容量是指存储器可以容纳的二进制信息量。 以存储器中存储地址寄存器MAR的编址数与存储字位数的乘积表示 。 例:某存储器芯片的MAR为16位,存储字长为8位,则其存储容量 为216×8位=64K×8位=64KB。 例:内存储器的基本结构图中有M地址线和N 数据线的存储器芯片 的存储容量为2M×N位。 • ◎内存最大容量:由系统地址总线决定 ; • 内存的实际装机容量:由实际需要配置的; • 例:一个以Pentium 4为CPU的PC机,其地址总线为36位,则内存 • 允许的最大容量为236=64GB; 而实际装机容量可能只有128MB、 • 256MB或1GB。
◎ 常用基本单位是字节(Byte),还可用 KB、MB(兆) 、GB(吉) 、TB (太) 、PB(皮) 等单位来衡量。 1 kilobyte (kB) = 210B≈1000 (103) byte 1 megabyte (MB ) =220 B≈ 1 000 000 (106) byte 1 gigabyte ( GB ) = 230 B≈ 1 000 000 000 (109) byte 1 terabyte ( TB ) = 240B ≈ 1 000 000 000 000 (1012) byte 1 petabyte ( PB ) = 250B ≈ 1 000 000 000 000 000 (1015) byte
存储器的存储速度可以用两个时间参数表征: 存取时间TA:定义为从启动一次存储器操作,到完成该操作所经 历的时间。 存储周期TMC:定义为启动两次独立的存储器操作之间所需的最小 时间间隔。 通常存储周期TMC略大于存取时间TA。存储速度取决于内存储器的 具体结构及其工作机制。 2. 存储速度 3. 可靠性 用MTBF(平均故障间隔时间)来衡量,MTBF越长,可靠性越高, 内存储器常采用纠错编码技术来延长MTBF以提高可靠性。
性能主要包括上述三项指标——存储容量、存储速度和可靠性。性能主要包括上述三项指标——存储容量、存储速度和可靠性。 对不同用途的存储器可强调不同的要求。例如,有的存储器要求存储容量大,则就以存储容量为主;有的存储器如高速缓冲存储器,则要求以存储速度为主。 4. 性能/价格比
内存条所用的芯片都是DRAM芯片; 特点:集成度高、容量大、价格低、存取速度也低; 随着CPU芯片的飞速发展,其工作频率越来越高,为了满足计算机 系统对访存速度的要求,用于内存条的DRAM芯片也在不断地开发新 型品种,以适应CPU频率高速发展的需求。 DRAM芯片技术发展: FPM DRAM EDO DRAM SDRAM DDR SDRAM 4.2.4 半导体存储器芯片的发展 1. FPM DRAM(快页式DRAM) CPU访问内存单元时,在存取数据时,只要保持行地址不变而只改 变列地址,就可以快速地访问给定行的连续数据。 存取时间达80-100ns 。
2. EDO DRAM(扩展数据输出DRAM) 在 FPM DRAM基础上加以改进的存储器控制技术。当前的读写周期完 成即可启动下一个页面的单元读写周期,即可以在输出一个数据的过程 中准备下一个数据的输出。 存取时间达50-70ns 。 3. SDRAM(同步DRAM) 一种与CPU外频同步工作的DRAM,在一个CPU时钟周期内可完成数据 的访问和刷新。SDRAM在同步脉冲的控制下工作,CPU不必等待。 采用双存储体结构,可自动切换。 4. DDR SDRAM(双倍数据速率SDRAM) 与SDRAM的主要区别是:DDR SDRAM能在时钟脉冲的上升沿和下降沿 分别读出数据,不需要提高时钟频率就能加倍提高SDRAM的速度。
5. DDR2 SDRAM 内部采用4bank的结构,在DDR基础上增加4位数据预取特性,可达到DDR带宽的2倍。 6. DDR3 SDRAM 具有频率高、工作电压低、带宽高、数据传送速率高的特性。
1. 静态RAM的功能和特性 HM6116是一种2048×8位的高速静态CMOS随机存取存储器 。 4.2.5 主存储器的组织 HM6116芯片引脚排列如图所示。 HM6116芯片的存储容量为2K×8b,片内有 16384(214)个存储单元电路,排列成128×128 的矩阵,构成2K个字,字长8位; HM6116芯片的内部结构功能框图如图所示。 HM6116芯片有: 11条地址线,其中7条作行地址线,4条作 列地址线,11位地址码选中一个存储单元即 一个8位存储字; 8条数据线,数据读出和写入;
3条控制线:片选信号、写允许信号和输出允许信号。这3个控制3条控制线:片选信号、写允许信号和输出允许信号。这3个控制 信号的组合控制HM6116芯片的工作方式,如表所示。
2.DRAM芯片Intel 2164 Intel 2164是64K×1b的DRAM芯片。 Intel 2164A的引脚排列如图所示。 Intel 2164A片内有64K(65536)个内存单元,有64K个存储地址, 每个存储单元存储一位数据。 Intel 2164A芯片的内部结构功能框图如图所示。
片外地址线分为——行地址RA和列地址CA; 芯片的地址引脚只有8条,片内有地址锁存器,可利用外接多路开 关,由行地址选通信号将先送入的8位行地址送到片内行地址锁存器, 然后由列地址选通信号将后送入的8位列地址送到片内列地址锁存器。 16位地址信号选中64K个存储单元中的一个单元。 芯片中的64K存储体由4个128×128的存储矩阵组成,每个128× 128的存储矩阵,由7条行地址和7条列地址进行选择。 7位行地址经过译码分别选择128行中的一行; 7位列地址经过译码分别选择128列中的一列。 选中的一行和一列可同时选中4个存储矩阵中各一个存储单元,然 后由RA7与CA7(即地址总线中的A7和A15)经1:4的 I/O门电路选中 1个单元进行读写。
刷新时,在送入7位行地址时选中4个存储矩阵的同一行,即对刷新时,在送入7位行地址时选中4个存储矩阵的同一行,即对 4×128=512个存储单元进行刷新。 Intel 2164A有:8条地址线、1条数据输出线、1条数据输入线、 写允许信号、行地址选通信号RAS、列地址选通信号CAS 。
3. 芯片的互联 用多片存储器芯片互联可以扩大存储容量,构成系统所需的存储器。 根据存储系统的容量要求和存储器芯片的容量大小,可以计算出需 要的总的芯片数,即 总片数= 采用多片RAM芯片构成计算机存储系统的方法有: (1)位扩展法 主存的字数与单个存储芯片的字数相同(两者存储单元数相同)而位 数不同时, 要用位扩展的方式来组织多个存储芯片构成存储器。扩展 芯片时,字数不变, 位数增加。
位扩展的方式时,各芯片和CPU总线连接应: ◆各芯片的片选端CS、地址线Ao—Ai、读/写控制信号都应分别 并接在一起,连接到CPU相应的控制线、地址线上; ◆各芯片的数据线单独列出作I/O0、I/O1 …… I/Om分别和CPU 的数据线D0 …… Dm相连接。 例:用64K×1b的存储器芯片组成64K×8b(64KB)的存储器。 采用位扩展方式,需要芯片数为: = 8片 每片芯片应有16根地址线:A0 – A15, 8片芯片的地址线A15~A0分别连在一起同CPU的地址线A15~ A0相连;每片只有一位数据线,8片芯片的8位数据线分别和CPU的 数据线D7~D0相连。
当CPU访问该存储器时,其发出的16位地址同时传给8个芯片,选当CPU访问该存储器时,其发出的16位地址同时传给8个芯片,选 中每个芯片的同一单元;CPU发出的 读/写控制信号同时传给8个芯片。 该存储器连接如图所示。
(2) 字扩展法 指存储单元的扩展,主存的位数与采用存储芯片的位数相同,但 字数不同(存储单元数不同), 要采用字扩展的方式来组织多个存储 芯片扩展存储单元构成主存储器。 字扩展的方式时,各芯片和CPU总线连接应:◆各芯片的地址线、数据线、读写控制线并联后, 再与CPU 或系统总线的地址线、数据线、读写控制线相连接。 ◆各芯片地址范围不同, 即片选信号CS应连接不同的片选控 制信号, 片选信号用CPU地址总线的高位地址经片选译码器 译码得到。 例: 用64K×8b的存储器芯片组成512K×8b(512KB)的存储器。
采用字扩展方式,所需芯片数为: = 8 片 每片芯片应有16根地址线:A0 - A15;计算机系统有20根地址线: A0-A19, 8片芯片的地址线A15~A0分别连在一起同CPU的20位地址线中 A15~ A0相连; 采用全译码方式时,高4位地址线 A16 ~A19通过译码器译码产生 16个片选信号,其中8个分别同8片芯片的片选信号连接;每片只有8位 数据线,8片芯片的8位数据线并联分别和CPU的数据线D7~D0相连。 采用字扩展法的存储器连接如图所示。
(3) 字位扩展法 存储器芯片的字数和字长均不能满足主存储器要求时,需要在字 数和位数上同时扩展,以构成主存储器。 若主存储器容量为M×N位,采用容量为L×K的存储器芯片,则需 要M/L × N/K片芯片,其中用N/K片 L×K的存储器芯片组成一组 ,实现位扩展构成L×N位的存储器,再采用M/L组的L×N位的存储器组 进行字扩展构成M× N位的存储器。 字位扩展方式时,各芯片和CPU总线连接应: ◆各芯片的地址线、读写控制线并联后, 再与CPU或系统总线 的地址线、读写控制线相连接。 ◆ 同一组中各芯片(共N/K片 )的片选信号CS并接一起接同一 个片选控制信号,不同组CS应接不同的片选控制信号。
◆一组中各芯片(共N/K片)存储器的数据线单独列出分别和◆一组中各芯片(共N/K片)存储器的数据线单独列出分别和 CPU的数据线D0-Dn-1相连,但每组中对应的芯片应并联接同样 数据线。 例: 用256K×1b的存储器芯片组成2M×32b(8MB)的存储器。 解: 位扩展:32 片256 K×1位的芯片组成一组,构成256 K×32位存 储器组; 字扩展:8组256 K×32位存储器组构成 2M×32位的存储器; 总共需要256片256 K×1位的芯片。 每片芯片应有18根地址线:A2 - A19,分别和同CPU的地址线A2 ~A19相连;计算机系统有21根地址线:A2-A22,采用全译码方式 时,高4位地址线 A20 ~ A22通过译码器译码产生8个片选信号, 分别同8组芯片的片选信号连接;每组中32片芯片的一位数据线分别 和CPU的数据线D0-D31连接 。
多体交叉存储技术是一种提高访存速度的结构技术;多体交叉存储技术是一种提高访存速度的结构技术; 多体交叉访问存储器是一个多体系统: 由多个容量相同的存储体存储模块组成; 各存储体各自具有相互独立的数据寄存器、地址寄存器和读写电路, 各存储体能并行工作,也能交叉工作; 4.2.6 多体交叉存储技术 一种多体访问存储器的结构原理图如图所示 ◆ 组成 有:n个容量相同的存储体M0,M1,···,Mn-1; n个 地址寄存器MAR、 n个数据寄存器MDR和n个读写电路; 各存储体都是一个独立操作的单位,
存储器地址寄存器MAR中的高位地址(块内地址)指向存储体中存储器地址寄存器MAR中的高位地址(块内地址)指向存储体中 的存储字,低位地址(模块号)经地址译码器选择不同的存储体。 ◆ 工作原理 CPU可以对多个存储体进行读写操作,可以交替地访问这些存储 体,即在对一个存储体的访问刚开始时,可立即开始对另一个存储 体的访问。 多体交叉访问存储器的交叉访问不要求访问的地址是连续的, 只要连续访问的存储单元位于不同的存储体中。 CPU采用的是在一个存储周期内分时访问各个存储体。 多体交叉访问存储器采用分时启动的方法,可以在不改变每个 存储体存取周期的条件下,提高主存的访问速度,
设存储器由n个存储体组成,各存储体可按一定的顺序分时地轮流设存储器由n个存储体组成,各存储体可按一定的顺序分时地轮流 启动,两个相邻存储体启动访问的间隔时间可以等于单个存储体访问 周期的1/n,即每隔1/n访问周期启动一个存储体的操作,从而存储器 的带宽可以增加到原来的n倍。整个存储器的访存速率可得到提高。 实际应用中,当出现数据相关和程序转移时,将破坏并行性,主 存的访问速度的提高达不到n倍。 多体交叉访问存储器结构中要求存储体的个数必须是2的整数冪 — 2、4、8、16···个。 构成多体交叉访问存储器的n个存储体中,任一个存储体发生故 障都会影响整个地址空间区域 。
■在计算机应用中对存储系统的要求是大容量、高速度和低成本。■在计算机应用中对存储系统的要求是大容量、高速度和低成本。 但三者是相互制约的; 在同一存储器(即用相同器件构成的存储器)中要同时达到上述 要求是困难的,必须从结构上采用专门技术来实现存储系统的要求。 4.3 存储系统的层次结构 ■ 访存局部性规律: 程序对其存储空间的访问并不是均匀分布 的,在一个较短的时间间隔内,程序对存储空间的90%的访问局限 在存储空间的10%的区域中,而其余的10%的访问则分布在存储空间 的其余90%区域中。 下一次执行的指令和上一次执行的指令在存储空间的位置是相 邻的或相近的。程序中所使用的数据而言,经常使用数组和变量的 数据结构,它们在内存中的分布也相对集中。 因此,程序和数据的存放都符合一定访存的局部性规律。