2021/3/151计算机组成原理任课教师:赵孟德上海电机学院2☼第一章计算机系统概论☼第二章运算方法和运算器☼第三章存储系统☼第四章指令系统☼第五章中央处理器☼第六章总线系统☼第七章外围设备☼第八章输入输出系统☼第九章并行组织目录3教材白中英,计算机组成原理·网络版,科学出版社,2002参考书石磊,计算机组成原理·第2版,清华大学出版社,2006钱晓捷,微型计算机原理及应用,清华大学出版社,2006王爱英,计算机组成与结构·第3版,清华大学出版社,2001白中英邝坚,计算机组织与结构·网络版,科学出版社,20033.1存储器概述3.2随机读写存储器3.3只读存储器和闪速存储器3.4高速存储器3.5cache存储器3.6虚拟存储器3.7存储保护第3章存储系统3.1存储器概述存储器是计算机系统中的记忆设备,用来存放程序和数据。一个二进制代码位是存储器中最小的存储单位,称为一个存储位或存储元。由若干个存储元组成一个存储单元,由许多存储单位组成一个存储器。3.1.1存储器分类半导体存储器:用半导体器件组成的存储器磁表面存储器:用磁性材料做成的存储器★按存储介质分★按存储方式分随机存储器:任何存储单元的内容都能被随机存取,且存取时间和存储单元的物理位置无关顺序存储器:只能按某种顺序来存取,存取时间和存储单元的物理位置有关★按存储器的读写功能分:ROM,RAM★按信息的可保存性分:非永久记忆,永久记忆★按在计算机系统中的作用分:主存、辅存、高速缓存、控制存储器计算机组成原理73.1.2存储器的分级结构寄存器•微处理器内部的存储单元高速缓存(Cache)•完全用硬件实现主存储器的速度提高主存储器•存放当前运行程序和数据,采用半导体存储器构成辅助存储器•磁记录或光记录方式•磁盘或光盘形式存放可读可写或只读内容•以外设方式连接和访问示意图虚拟存储器计算机组成原理8存储访问的局部性原理分级结构解决存储器件的容量、速度和价格矛盾出色效率来源于存储器访问的局部性原理:处理器访问存储器时,所访问的存储单元在一段时间内都趋向于一个较小的连续区域中空间局部:紧邻被访问单元的地方也将被访问时间局部:刚被访问的单元很快将再次被访问程序运行过程中,绝大多数情况都能够直接从快速的存储器中获取指令和读写数据;当需要从慢速的下层存储器获取指令或数据时,每次都将一个程序段或一个较大数据块读入上层存储器,后续操作就可以直接访问快速的上层存储器计算机组成原理93.1.3主存储器的技术指标存储容量•主存存储容量:以字节B(Byte)为基本单位•半导体存储器芯片:以位b(Bit)为基本单位•存储容量以210=1024规律表达KB,MB,GB和TB•厂商常以103=1000规律表达KB,MB,GB和TB存取时间(访问时间)•发出读/写命令到数据传输操作完成所经历的时间存取周期•两次存储器访问所允许的最小时间间隔(单位ns)•存取周期略大于存取时间存储器带宽(数据传输速率)•单位时间里存储器所存取的信息量(单位位/秒)计算机组成原理103.2随机读写存储器SRAM(静态RAM:StaticRAM)•以触发器为基本存储单元•不需要额外的刷新电路•速度快,但集成度低,功耗和价格较高DRAM(动态RAM:DynamicRAM)•以单个MOS管为基本存储单元•要不断进行刷新(Refresh)操作•集成度高、价格低、功耗小,但速度较SRAM慢NVRAM(非易失RAM:Non-VolatileRAM)•带有后备电池的SRAM芯片•断电后由电池维持供电计算机组成原理113.2.1SRAM存储器6个开关管组成一个存储元,存储一位信息N(=1/4/8/16/32)个存储元组成一个存储单元存储器芯片的大量存储单元构成存储体存储器芯片结构:存储单元数×每个存储单元的数据位数=2M×N=芯片的存储容量M=芯片地址线的个数N=数据线的个数举例存储结构2K×816K位存储容量11个地址引脚8个数据引脚计算机组成原理12SRAM的控制信号片选(CS*或CE*)•片选有效,才可以对芯片进行读/写操作•无效时,数据引脚呈现高阻状态,并可降低功耗读控制(OE*)•芯片被选中有效,数据输出到数据引脚•对应存储器读MEMR*写控制(WE*)•芯片被选中的前提下,若有效,将数据写入•对应存储器写MEMW*SRAM2114计算机组成原理13静态MOS存储器基本存储元—6管静态MOS存储元由两个MOS反相器交叉耦合而成的双稳态触发器。T3、T4管是负载管,T1、T2管是工作管。T5、T6、T7、T8为控制管或开门关。计算机组成原理14六管SRAM存储元电路图计算机组成原理15静态MOS存储器基本存储元—6管静态MOS存储元B、存储元的工作原理①写操作。如果要写入“1”,则在I/O线上输入高电位,而在I/O线上输入低电位,并通过开启T5、T6、T7、T8四个晶体管,把高、低电位分别加在A、B点,从而使T1管截止,使T2管导通。写“0”的情况完全类似。要同时打开T5、T6、T7、T8这四个管子,必须把X地址译码线和Y地址移码线同时输入高电位。计算机组成原理16静态MOS存储器基本存储元—6管静态MOS存储元B、存储元的工作原理②读操作。读操作时,若某个存储元被选中,则该存储元的T5、T6、T7、T8管均导通,于是A、B两点与位线D、D相连,存储元的信息被送到I/O与I/O线上。I/O与I/O线接着一个差动读出放大器,从其电流方向,可以判知所存信息是“1”还是“0”。计算机组成原理17静态MOS存储器RAM结构与地址译码—字结构或单译码方式(1)结构:(A)存储容量M=W行×b列;(B)阵列的每一行对应一个字,有一根公用的字选择线W;(C)每一列对应字线中的一位,有两根公用的位线BS0与BS1。(D)存储器的地址不分组,只用一组地址译码器。(2)字结构是2度存储器:只需使用具有两个功能端的基本存储电路:字线和位线(3)优点:结构简单,速度快:适用于小容量M(4)缺点:外围电路多、成本昂贵,结构不合理结构。计算机组成原理18静态MOS存储器地址写选通b7读出写入读选通A3A2A1A0字线W15W1W0BS1BS0字结构或单译码方式的RAM16选1地址译码器FFFFFFFFFFFFFFFFFF读写电路读写电路读写电路……::b1读出写入b0读出写入计算机组成原理19静态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)优:驱动电路节省,结构合理,适用于大容量存储器。计算机组成原理20静态MOS存储器Y1Y64X64X1A5A4A3A2A1A0位结构双译码方式的RAMX地址译码64,164,641,641,1I/OY地址译码A6A7A8A9A10A11计算机组成原理21静态MOS存储器RAM结构与地址译码—字段结构(1)结构:(A)存储容量W(字)×B(位),Wb:分段Wp(=W/S)×Sb(B)字线分为两维结构:(C)位线有Sb对(D)双地址译码器(2)三度结构(3)优:对字结构存储器的改进与提高,结构合理,适用于大容量存储器。计算机组成原理22静态MOS存储器Sb对位/读出线An-1An1An1-1A1A0字段结构RAM段译码器,从2n2=S段中取1(共n2位〕行译码器共n1位列I/O电路存储阵列Wp×Sbb位b位……段1段2段Sb根数据线读/写控制线计算机组成原理23静态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相连。计算机组成原理24静态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给出有效地址开始,到外部数据总线上稳定地出现所读出的数据信息所经历的时间。读周期时间:则是指对存储片进行两次连续读操作时所必须间隔的时间。显然总有:读周期≥读出时间ACSDOUT地址有效地址失效片选失效数据有效数据稳定高阻静态RAM(2114)读时序tAtCOtOHAtOTDtRC片选有效读周期tRC地址有效下一次地址有效读时间tA地址有效数据稳定tCO片选有效数据稳定tOTD片选失效输出高阻tOHA地址失效后的数据维持时间ACSWEDOUTDIN静态RAM(2114)写时序tWCtWtAWtDWtDHtWR写周期tWC地址有效下一次地址有效写时间tW写命令WE的有效时间tAW地址有效片选有效的滞后时间tWR片选失效下一次地址有效tDW数据稳定WE失效tDHWE失效后的数据维持时间计算机组成原理333.2.2DRAM动态MOS存储器4管动态M0S存储元电路在6管静态存储元电路中,信息是存于T0,T1