计算机组成原理教材:白中英,计算机组成原理(第四版),科学出版社2☼第一章计算机系统概论☼第二章运算方法和运算器☼第三章内部存储器☼第四章指令系统☼第五章中央处理器☼第六章总线系统☼第七章外围设备☼第八章输入输出系统☼第九章操作系统支持☼第十章安腾高性能处理机体系结构目录3.1内部存储器概述3.2静态读写存储器(SRAM)3.3动态读写存储器(DRAM)3.4只读存储器和闪速存储器高速存储器3.5并行存储器(双端口存储器和多体交叉存储器)3.6cache存储器第3章内部存储器3.1.1存储器分类半导体存储器:用半导体器件组成的存储器磁表面存储器:用磁性材料做成的存储器★按存储介质分★按存储方式分随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关★按存储器的读写功能分:ROM,RAM★按信息的可保存性分:非永久记忆,永久记忆★按在计算机系统中的作用分:主存、辅存、高速缓存、控制存储器3.1.2存储器的分级结构各级存储器的作用寄存器•微处理器内部的存储单元高速缓存(Cache)•完全用硬件实现主存储器的速度提高主存储器•存放当前运行程序和数据,采用半导体存储器构成辅助存储器•磁记录或光记录方式•磁盘或光盘形式存放可读可写或只读内容•以外设方式连接和访问存储访问的局部性原理分级结构解决存储器件的容量、速度和价格矛盾出色效率来源于存储器访问的局部性原理:处理器访问存储器时,所访问的存储单元在一段时间内都趋向于一个较小的连续区域中空间局部:紧邻被访问单元的地方也将被访问时间局部:刚被访问的单元很快将再次被访问程序运行过程中,绝大多数情况都能够直接从快速的存储器中获取指令和读写数据;当需要从慢速的下层存储器获取指令或数据时,每次都将一个程序段或一个较大数据块读入上层存储器,后续操作就可以直接访问快速的上层存储器3.1.3主存储器的技术指标存储容量•主存存储容量:以字节B(Byte)为基本单位•半导体存储器芯片:以位b(Bit)为基本单位•存储容量以210=1024规律表达KB,MB,GB和TB•厂商常以103=1000规律表达KB,MB,GB和TB存取时间(访问时间)•发出读/写命令到数据传输操作完成所经历的时间存取周期•两次存储器访问所允许的最小时间间隔•存取周期大于等于存取时间存储器带宽(数据传输速率)•单位时间里存储器所存取的信息量3.2随机读写存储器SRAM(静态RAM:StaticRAM)•以触发器为基本存储单元•不需要额外的刷新电路•速度快,但集成度低,功耗和价格较高DRAM(动态RAM:DynamicRAM)•以单个MOS管为基本存储单元•要不断进行刷新(Refresh)操作•集成度高、价格低、功耗小,但速度较SRAM慢NVRAM(非易失RAM:Non-VolatileRAM)•带有后备电池的SRAM芯片•断电后由电池维持供电3.2.1SRAM存储器6个开关管组成一个存储元,存储一位信息N(=1/4/8/16/32)个存储元组成一个存储单元存储器芯片的大量存储单元构成存储体存储器芯片结构:存储单元数×每个存储单元的数据位数=2M×N=芯片的存储容量M=芯片地址线的个数N=数据线的个数举例存储结构2K×816K位存储容量11个地址引脚8个数据引脚6264SRAM芯片28脚双列直插(DIP)芯片容量:64K位存储结构:8K×813个地址线A12~A08个数据线D7~D0控制引脚•片选:CS1*,CS2•读控制:OE*•写控制:WE*无连接NCSRAM的控制信号片选(CS*或CE*)•片选有效,才可以对芯片进行读/写操作•无效时,数据引脚呈现高阻状态,并可降低功耗读控制(OE*)•芯片被选中有效,数据输出到数据引脚•对应存储器读MEMR*写控制(WE*)•芯片被选中的前提下,若有效,将数据写入•对应存储器写MEMW*SRAM2114静态MOS存储器基本存储元—6管静态MOS存储元A、电路图:由两个MOS反相器交叉耦合而成的双稳态触发器。BAT2T5T4T0T1T3BS0VBS1读/写“0”读/写“1”位/读出线位/读出线字线6管MOS存储电路静态MOS存储器基本存储元—6管静态MOS存储元B、存储元的工作原理①写操作。在字线上加一个正电压的字脉冲,使T2、T3管导通。若要写“0”,无论该位存储元电路原存何种状态,只需使写“0”的位线BS0电压降为地电位(加负电压的位脉冲),经导通的T2管,迫使节点A的电位等于地电位,就能使T1管截止而T0管导通。写入1,只需使写1的位线BS1降为地电位,经导通的T3管传给节点B,迫使T0管截止而T1管导通。写入过程是字线上的字脉冲和位线上的位脉冲相重合的操作过程。静态MOS存储器基本存储元—6管静态MOS存储元B、存储元的工作原理②读操作。只需字线上加高电位的字脉冲,使T2、T3管导通,把节点A、B分别连到位线。若该位存储电路原存“0”,节点A是低电位,经一外加负载而接在位线BS0上的外加电源,就会产生一个流入BS0线的小电流(流向节点A经T0导通管入地)。“0”位线上BS0就从平时的高电位V下降一个很小的电压,经差动放大器检测出“0”信号。若该位原存“1”,就会在“1”位线BS1中流入电流,在BS1位线上产生电压降,经差动放大器检测出读“1”信号。读出过程中,位线变成了读出线。读取信息不影响触发器原来状态,故读出是非破坏性的读出。③若字线不加正脉冲,说明此存储元没有选中,T2,T3管截止,A、B结点与位/读出线隔离,存储元存储并保存原存信息。静态MOS存储器基本存储元—8管静态MOS存储元A、目的:地址的双重译码选择,字线分为X选择线与Y选择线B、实现:需要在6管MOS存储元的A、B节点与位线上再加一对地址选择控制管T7、T8,形成了8管MOS存储元。基本存储元—6管双向选择MOS存储元8管MOS存储元改进:在纵向一列上的6管存储元共用一对Y选择控制管T6、T7,这样存储体管子增加不多,但仍是双向地址译码选择,因为对Y选择线选中的一列只是一对控制管接通,只有X选择线也被选中,该位才被重合选中。静态MOS存储器T5T7T3T2T0T1T8T6BS0VBS1读/写“0”读/写“1”位/读出线位/读出线Y选择线X选择线8管MOS存储电路读/写“0”BAT2T5T4T0T1I/OI/OT7T6T3BS0VBS1读/写“1”位/读出线位/读出线Y选择线X选择线6管双向选择MOS存储电路静态MOS存储器RAM结构与地址译码—字结构或单译码方式(1)结构:(A)存储容量M=W行×b列;(B)阵列的每一行对应一个字,有一根公用的字选择线W;(C)每一列对应字线中的一位,有两根公用的位线BS0与BS1。(D)存储器的地址不分组,只用一组地址译码器。(2)字结构是2度存储器:只需使用具有两个功能端的基本存储电路:字线和位线(3)优点:结构简单,速度快:适用于小容量M(4)缺点:外围电路多、成本昂贵,结构不合理结构。静态MOS存储器地址写选通b7读出写入读选通A3A2A1A0字线W15W1W0BS1BS0字结构或单译码方式的RAM16选1地址译码器FFFFFFFFFFFFFFFFFF读写电路读写电路读写电路……::b1读出写入b0读出写入静态MOS存储器RAM结构与地址译码—位结构或双译码方式(1)结构:(A)容量:N(字)×b(位)的RAM,把每个字的同一位组织在一个存储片上,每片是N×1;再把b片并列连接,组成一个N×b的存储体,就构成一个位结构的存储器。(B)在每一个N×1存储片中,字数N被当作基本存储电路的个数。若把N=2n个基本存储电路排列成Nx行与Ny列的存储阵列,把CPU送来的n位选择地址按行和列两个方向划分成nx和ny两组,经行和列方向译码器,分别选择驱动行线X与列线Y。(C)采用双译码结构,可以减少选择线的数目。(2)三度存储器:三个功能端(3)优:驱动电路节省,结构合理,适用于大容量存储器。静态MOS存储器Y1Y64X64X1A5A4A3A2A1A0位结构双译码方式的RAMX地址译码64,164,641,641,1I/OY地址译码A6A7A8A9A10A11静态MOS存储器RAM结构与地址译码—字段结构(1)结构:(A)存储容量W(字)×B(位),Wb:分段Wp(=W/S)×Sb(B)字线分为两维结构:(C)位线有Sb对(D)双地址译码器(2)三度结构(3)优:对字结构存储器的改进与提高,结构合理,适用于大容量存储器。静态MOS存储器Sb对位/读出线An-1An1An1-1A1A0字段结构RAM段译码器,从2n2=S段中取1(共n2位〕行译码器共n1位列I/O电路存储阵列Wp×Sbb位b位……段1段2段Sb根数据线读/写控制线静态MOS存储器用静态MOS存储片组成RAM位扩展法:例如:用8K×1的RAM存储芯片,组成8K×8位的存储器,按8位=m×1的关系来确定位扩展所需要的芯片数。共需8片,每一芯片的数据线分别接到数据总线的相应位。字扩展法:字扩展:字向扩展而位数不变,将芯片的地址线、数据线、读写控制线并联,而由片选信号来区分各片地址。例如:用16k×8位的芯片采用字扩展法组成64k×8位的存储器:4个芯片。地址分配:地址总线低位地址A0-A13与各芯片的14位地址端相连,而高两位的地址A14、A15经2:4译码器和4个芯片的片选端CE相连。静态MOS存储器用静态MOS存储片组成RAM字位同时扩展法:一个存储器的容量假定为M×N位,若使用l×k位的芯片(l<M,k<N)需要在字向和位向同时进行扩展。此时共需要(M/l)×(N/k)个存储器芯片。其中,M/l表示把M×N的空间分成(M/l)个部分(称为页或区),每页(N/k)个芯片。地址分配:(A)用log2l位表示低位地址:用来选择访问页内的l个字(B)用log2(M/l)位表示高位地址:用来经片选译码器产生片选信号。CPU对存储器进行读/写操作,首先由地址总线给出地址信号,然后要对存储器发出读操作或写操作的控制信号,最后在数据总线上进行信息交流。所以,存储器与CPU之间,要完成:①地址线的连接;②数据线的连接;③控制线的连接。存储器芯片的容量是有限的,为了满足实际存储器的容量要求,需要对存储器进行扩展。存储器与CPU连接8K×1位扩展组成的8K×8RAM87654328k×1中央处理器CPUA0A12D0::D7…位扩展法:只加长每个存储单元的字长,而不增加存储单元的数量演示A15A14CPUA0A13WED0~D72:4译码器CE16K×8WECE16K×8WECE16K×8WECE16K×8WE16K×8字扩展法组成64K×8RAM…11100100字扩展法:仅增加存储单元的数量,而各单元的位数不变演示字位同时扩展:2114存储芯片1K×4扩展成2K×8存储器D4--D7D3--D0A0A1…A9WECPUA102114CSR/W2114CSR/W2114CSR/W2114CSR/W字位同时扩展法:既增加存储单元的数量,也加长各单元的位数存储器系统的存储容量:M×N位使用芯片的存储容量:L×K位(L≤M,K≤N)需要存储器芯片个数:(M×N)/(L×K)[例]:利用2K×4位的存储芯片,组成16K×8位的存储器,共需要多少块芯片?[解]:(16K×8)/(2K×4)=8×2=16即:共需16块芯片。(既需要位扩展,又需要字扩展)[又例]:利用1K×4位的存储芯片,组成2K×8位的存储器,共需要芯片数:(2K×8)/(1K×4)=2×2=4字、位同时扩展法:计算机是一个有严格时序控制要求的机器。与CPU连接时,CPU的控制信号与存储器的读、写周期之间的配合问题是非常重要的。注意:读出时间与读周期是两个不同的概念。读出时间:是指从CPU给出有效地址开始,到外部数据总线上稳定地出现所读出的数据信息所经历的时间。读周期时间:则是指对存储片进行