计算机组成原理A复习资料.doc
计算机组成原理复习资料 “计算机组成原理”是计算机科学与技术专业的一门主干课程,必修。从课程的地位来说,它在先导课程“数字逻辑”、“数字电路”和后续课程“操作系统”、“系统结构”等之间起着承上启下和继往开来的作用。一. 本课程的学习目的:1.通过本课程的学习,掌握计算机硬件系统各部分的组成及工作原理。2.掌握由各部件组成整机的工作原理,从而较好地建立起计算机的整机概念。所谓整机概念,简单地说,就是在脑子里有一台运转起来的计算机。它包括运转起来的计算机各部分组成整机的方法及执行指令过程各部件的相互联系空间概念和各部件在时间上的密切配合,协调工作时间概念。3.掌握计算机系统硬件分析,设计和调试的技能。这主要是通过原理课的实验和课程设计达到这一学习目的,建议尽可能安排实验环节及课程设计。二. 本课程的学习内容:1.中央处理器的组成原理。主要的内容是运算方法和运算器、控制器、指令系统和系统总线。2.存储器的组织及输入输出组织。主要的内容是高速缓冲存储器Cache、主存储器、外存储器和由它们组成的多级存储系统;常用的输入/输出设备和输入/输出系统。三.本课程的特点:1.具有要求的基础较高,知识面广和承上启下的特点。2.具有概念多、难度大的特点。根据以上的特点,要求在学习计算机组成原理课前必须要有较扎实的数字逻辑和数字电路的知识,学习本课程必须弄清原理,按质完成一定量的习题,要在理解的基础上记住有关的原理、概念和术语。通过不断的学习、复习,有意识有目的地围绕“整机概念”这一最大的难点主动地学习,有条件者可结合计算机系统的监控程序分析、学习,效果会更好,只要努力,我们学习计算机组成原理课程的目的就一定能达到。四. 主要参考文献:1.黄钦胜 朱娟,计算机组成原理,电子工业出版社,2003年。2.黄钦胜等编著,计算机组成原理习题与题解,电子工业出版社,2004年。第1章 计算机系统概论本章的学习目的:初步了解计算机系统的组成和计算机的工作过程,掌握常用的概念、名词术语,为以后各章的学习打下基础。本章要掌握的主要内容:1.电子计算机的分类,电子数字计算机的特点。2.计算机与人们的生活息息相关,了解计算机有哪些主要的应用。3.计算机系统是由硬件和软件两大部分组成的,硬件是物资基础,软件是解题的灵魂。弄清硬件和软件的概念。4.计算机硬件系统所包含的主要部分,各部分的功能及其组成框图。5.计算机的工作过程,主要是执行指令的过程。而指令周期包括取出指令、解释指令和执行指令两个阶段。6.计算机发展所经历的五代,前四代分代的主要标志是以所使用的主要逻辑元件来划分的,第五代计算机以知识推理,人工智能为主要标志。7.当前计算机组织结构发展的趋势。8.冯·努依曼计算机的设计思想是采用二进制表示各种信息以及存储程序和程序控制。存储程序的概念是将解题程序(连同必须的原始数据)预先存入存储器;程序控制是指控制器依据所存储的程序控制全机自动、协调地完成解题任务。存储程序和程序控制统称为存储程序控制。9.控制器和运算器合称为中央处理器CPU,当前CPU芯片还集成有存储管理部件、Cache等;CPU和内存储器合称为计算机主机。10.指令字和数据均以二进制代码的形式存入存储器,计算机是如何区分出指令和数据的。11.计算机系统的主要性能指标包括哪些?12.计算机的运算速度是指它每秒钟执行指令的条数。单位是MIPS(百万条指令每秒)式中,n指令的种类fi 第i种指令在程序中出现的频度(%)ti 第i种指令的指令周期13.计算机系统按功能划分,通常为五级的层次结构,每一级都可进行程序设计。14.机器功能的软硬件划分取决于价格、速度、可靠性、存储容量和变更周期等。15.软件和硬件在逻辑功能上是等效的。合理分配软硬件的功能是计算机总体结构的重要内容。16.固件是具有软件功能的硬件,它是介于传统软硬件之间的实体。从功能上说类似于软件,就其形态说类似硬件。17.本章主要的术语及概念:运算器、控制器、中央处理器CPU、主机、存储器、I/O接口(适配器)、I/O设备、总线、存储程序、程序控制、硬件、软件、固件、运算速度、存储容量、单元地址、存储单元、程序、指令。第2章 运算方法和运算器本章的学习目的:弄清数据与文字在计算机中的表示法,定点加、减、乘、除运算的算法,浮点数的表示法及运算方法,逻辑运算的实现,定点、浮点运算器的组成及工作原理。本章要掌握的主要内容:1.进位计数制及不同计数制(十、二、八、十六)之间数的转换方法。进位计数制有两个要素,一是基数R,二是位权Ri。R是指计数制中所用到的数码个数,如十进制为09共十个数字符号;Ri是指R进制数中数位的固定倍数。不同数制之间数的转换依据:若两个有理数相等,则这两个数的整数部分与小数部分一定分别相等。2.计算机广泛使用二进制的原因是由于其只有二个数字符号,便于物理的实现,运算规则最简单,节省元件,可作为逻辑设计的便利工具,可靠性高。3.计算机中表示的二进制位数B和人们习惯的十进制数D之间的位数关系:B = 3.32 D可见,一位十进制数要用3.32位二进制数表示,这应与二进制编码的十进制数(BCD码)区分开来。4.数值数据在计算机中有定点表示和浮点表示两种数据格式。5.定点表示法的表数范围、精度及其特点。6.浮点表示这一部分的内容是一个难点,应真正弄懂。(1).浮点数的构成:N=RE×M上式R是基数,通常R=2(也有R=8或R=16),对于同一台计算机,R是固定不变的,因此,计算机表示浮点数时只需表示指数(称为阶)E和尾数M。E包括阶符(指明指数的正负)和阶码(整数),用于指明小数点的实际位置。M为尾数,包括数符和尾数,M表示了数的精度和正负。它在机器中的表示如下:ESE1 E2 EmMSM1 M2 Mn |阶符 | 阶码 |数符| 尾数 |形式小数点所表示的浮点数,其形式小数点的位置在Ms之后。由于整个数的小数点位置还应由阶来决定,即当E为正阶时,表明实际小数点的实际位置应右移;当E为负阶时,表明实际小数点的位置应左移。由于所表示的尾数部分,其最大的绝对值约等于1,因此,所能表示的最大数是由阶码的位数来确定,而表示数的精度应由尾数的位数n决定。(2).规格化浮点数是尾数的最高位为非零数值的浮点数。表示为 0.5|M|<1 (R=2)规格化数可使一个浮点数的表示是惟一的,而且能保留最多的有效数字,避免丢失运算精度。例:某运算结果:N=20001×0.01110,限定的尾数为8位,可得N1=20001×0. 或 N2=2-0111×0.,这二个数的精度不同,N2有8位数的精度,而N1 只有1位数的精度。N1 是由N舍去尾数的低8位得到的,N2 则是由N 规格化后得到的。(3).如何实现规格化?当|M|1时,将尾数右移,每右移一位,阶码加1,称为向右规格化,简称右规;当|M|<0.5时,将尾数左移,每左移一位,阶码减1,称为向左规格化,简称左规。可见,规格化过程,就是自动调节比例因子的过程。应注意的是,尾数为零的浮点数不能规格化。(4).规格化浮点数的表数范围:设阶码为m位,尾数为n位(不包括阶符和尾符),则规格化浮点数的表数范围为:× 上式中(2m-1)和-(2m-1)是m位阶码能表示的最大和最小的阶码,而和则是规格化尾数绝对值最小和最大的值。在阶和尾数均用补码表示的机器中,由于补码可多表示一个最小的负数和为便于判别规格化,则其表数范围为:正数:×负数:× 上式中,-2m为m位补码表示的阶码所能表示的最小负数,-1为补码表示的最小的尾数值。当M = -2-1时, M补=1.1000,而当M=(-2-1-2 -n)时,M补=1.0111, M= -1时,M补=1.0000,除去 M= -2-1这一数值后,要判别是否为规格化尾数,只需判Ms和M1这两位的状态不相同时,则为规格化尾数。设想把M= -2-1作为规格化尾数,其判断规格化的逻辑表达式在尾数的位数很多时的复杂程度。(5).浮点表示的优缺点。7.IEEE754标准中单精度和双精度两种浮点数的表示数的范围及其机器数的表示形式。8.十进制数串的表示方法:(1)字符串形式:每个十进制数位或符号位占用一个字节。字符串形式应用于非数值处理的领域。(2)压缩的十进制数串形式:一个字节存放两个十进制数位。9.计算机中表示数的大小和正负的方法称为码制。机器数的表示有原码、补码、反码和移码四种形式。10.原码、补码、反码和移码的性质归纳:(1) 补码、反码和移码的符号位作为数值的一部分看待,参加运算,而原码则不能。(2) 原码和反码的表数范围相对于0来说是对称的,整数: -(2n-1) 0 +(2n -1)小数:-(1-2-n) 0 +(1-2-n)而补码和移码则可多表示一个最小负数:整数:-2n、-(2n-1) 0 +(2n-1)小数:-1、-(1-2-n) 0 +(1-2-n)(3) 零的原码和反码(定点小数)各有二种表示形式: +0原=0.000,-0 原=1.000 +0反=0.000,-0 反=1.111而零的补码和移码(定点整数)各只有一种表示形式: +0补=-0补=0 000 +0移=-0移=1 000(4)反码和补码右移时,移空位(数的最高位)补上和符号相同的代码,而原码左右移时,移空位均补上0;补码左移,移空位(数的最低位)补0;正数的反码左移时,移空位补0,负数的反码左移时,移空位补1。(5)原码表示法便于输入输出,有利于实现乘除运算,不利于加减运算;补码表示法便于加减运算,乘除运算也有较好算法,故多被采用;反码表示法最易于形成代码,但运算复杂且速度慢,很少采用;移码主要用于表示浮点数的阶。11.字符的ASCII码与字符串的表示方法。12.汉字的表示方法包括汉字的输入编码,汉字内码和汉字字模码。13.由于噪音干扰而造成计算机的突发性错误可通过数据校验码加以发现或给出错误特征而对错误加以纠正。奇偶校验码校验位的生成,查错过程及查错的功能。14.若待编码信息为n位(二进制),则纠正一位错所需的校验位数r 应满足:2 rn+r+1 模2 四则运算,循环冗余码(CRC)的纠错原理。15.补码加法的规则是任意两个数的补码之和等于该两数和之补码,即 X补 +Y补 = X+Y补 (mod 2)对于定点小数来说,上式的先决条件是:-1x<1, -1y<1, -1x+y<1。16.补码减法的运算公式: X-Y补 =X补+-Y补 (mod 2)在用补码表示的机器中,存储的是x补 和y补的机器数,而减法运算则是指令的要求,上式表明要做减法,必须从y补 求出-y补(称为对y求补),再把减法变为加法进行运算。 -Y补 = ¬Y补 +2 -n(各位变反,末位加1)17.溢出的检测与处理。溢出是指当运算结果大于机器所能表示的最大正数(上溢)或小于机器所能表示的最小负数(下溢)。机器设有溢出标志位OF,溢出时将OF置成1,转溢出中断处理或停机。对溢出标志位OF产生影响的指令是算术运算类指令。溢出的检测有单符号位和双符号的判溢出。以补码加法为例,单符号位判溢出的基本逻辑表达式为:OF= 第一乘积项表示两个操作数均为正数(An=Bn= 0)和数的符号Sn=1(负数)的情况(属于上溢);第二乘积项则表示两个操作数均为负数(An=Bn=1),和数的符号为Sn=0的情况(属于下溢)。双符号位的判溢出是用模4补码扩大表数范围,使运算结果-1A+B<1时,小数点左边两位的状态总是相同的(这是变形补码、双符号位补码的含义)。当运算结果A+B<-1或A+B1时,小数点左边两位的状态为S'nSn=10或01,此时为溢出的情况。故双符号位的判溢出表达式为: 值得指出的是,机器存储的是正常范围表示的数,因此只需存储单符号位的补码,只是在运算时,将单符号位的补码扩充为双符号位的补码。18.由逻辑门电路组成的全加器的逻辑方程式: 19.行波进位n位字长加减法器结果的形成时间,以P48图2.3为例:上式说明,行波进位加减法器结果的形成时间随n的增加而增加;尽管n位操作数同时送到,但高位的和数要等到相邻低位的进位形成后再经一定时间后才能形成,由于进位是“行波”式(串行)进行的,故这种加减法线路无法达到真正的并行,就是说,其速度较慢。因此,加快进位的传送,是提高运算速度的关键。20.计算机中实现十进制加法的两种方法。十进制加法器的组成及其设计的关键。21.计算机实现乘除运算的方法:(1)用乘除运算子程序实现;(2)在加法器和寄存器中增添控制线路实现;(3)用阵列乘除法器实现。22.原码一位乘法的算法:(1)符号位单独处理,ZSXSYS(2)从乘数的最低位开始,逐位与被乘数相乘,若该乘数位Yn-i+1 = 1,则部分积Pi-1 +|x|,若Yn-i+1 = 0,则Pi-1+0,相加后右移一位,得新的部分积Pi ,重复n次可得乘积的绝对值|P|。(可见,原码乘法过程变为+|x|或+0 以及右移操作)(3)给|P|置乘积的符号位Zs,可得x×y原23.原码一位乘法的逻辑结构原理图及乘法操作的总时间。24.确立补码乘法算法的重要公式:(1)补码与真值的转换公式:已知y补=y0.y1y2yn,则真值 (2)补码的右移已知:x 补 =x0.x1x2xn ,则 补 =x0.x0x1x2xn25.阵列乘法器的组成原理及其与常规乘法器的比较。 (1) m×n位的阵列乘法器,被加数产生部件由m×n个与门组成; 被加数求和部件由 (m-1)×n位全加器组成。(2)阵列乘法器一次乘法所需时间。(3)运算的过程。26.原码除法的运算规则。(1)商的符号位单独处理,即 qSXSYS (2)商的尾数 商的原码q原=qs.q1q2qn(3)被除数X、除数Y、商q和余数rn之间的关系应满足:X=q×Y+rn 0|rn|2 n×Y27.原码加减交替法(不恢复余数法)除法算法:(1)商符qSXSYS (2)余数ri为正数时,商上1,余数左移一位减除数,即2ri-|y|(-|y|用加-|y|补);余数为负数时,商上0,余数左移一位加除数,即2ri+|y|,如此循环,直至取得所需的n位商为止。(3)给商置入商符得q原。28. 原码加减交替法除法的逻辑结构原理图及操作步骤、操作的总时间。29. 阵列除法器的组成原理及其与常规除法器的比较。 (1)实现阵列除法的关键电路是可控加法减法单元(CAS)。 (2)n位除n位所需CAS单元为n2个。 (3)阵列除法器执行一次除法所需时间为 n2T,T为一个CAS单元电路的延迟时间,可采用先行进位的方法缩短阵列除法器的操作时间。30. 计算机中的基本逻辑运算、逻辑运算的特点及其应用。31. 多功能算术逻辑运算单元设计的基本思想。由控制参数 S0 S1 S2 S3 将操作数Ai和Bi组合成函数xi和yi再送全加器相加,由于S0 S1 S2 S3不同的组合和在算逻运算控制端M的共同控制下,便可实现多种算术逻辑运算。32.多功能算逻运算单元的组成(参见P79 图2.19)(1)函数发生器,输出 xi 和 yi(2)具有先行进位链的加法器由于xi+yi =xi , xi·yi=yi ,这就使得进位逻辑式得到简化。Cn+i+1 = xi·yi + (xi +yi)Cn+i = yi + xiCn+i上式说明了xi 既是一个操作数,又是进位传递函数;yi 既是一个操作数,又是进位产生函数。这就大大简化了先行进位链的线路。先行进位链进位的表达式(递推式)如下:Cn+1 = y0 + x0CnCn+2 = y1+x1y0+x1x0CnCn+3 = y2+x2y1+x2x1y0+x2x1x0Cn片(小组)进位产生函数片(小组)进位传递函数Cn+4 =G+PCn从以上进位的递推公式可见,Cn+1、Cn+2 和Cn+3 是同时形成的,这是由于以上三个进位表达式都是“与或”表达式,用“与或”门实现,而“与或”门的输入变量是 xi,yi 和Cn,xi和yi又是由同时送来的Ai、Bi经函数发生器产生,故以上3个进位信号同时产生。由此可见,并行进位是解决行波进位并行加法器速度慢的行之有效的方法。由多片74181组成的ALU,实现片(小组)内并行进位,片(小组)间串行进位。33. 由74181和74182组成的两级先行进位的ALU。先行进位部件(CLA)74182的进位逻辑式:Cn+x=G0+P0CnCn+y=G1+P1G0+P1P0CnCn+z=G2+P2G1+P2P1G0+P2P1P0Cn 例:32位两级先行进位的ALU(参见P82图2.22)34.实现总线连接的三态缓冲器。三态逻辑电路是指输出电平可具有逻辑“1”,逻辑“0”和“浮空”三种状态的逻辑电路,是实现总线连接的理想器件。35.运算器的三种基本结构及其特点,运算器的实例。36.浮点运算的算法:浮点算术运算由阶和尾数两部分的运算组成,它们的运算可采用任何一种相应的定点运算的方法进行。设两浮点数:,,则(1)浮点加减法运算: Ex < Ey 或 = (Mx±My×)× Ex Ey(2)浮点乘法运算:(3)浮点除法运算:37.浮点加减法运算的步骤:(1)首先是对阶,就是使两个浮点数的阶码取得一致的过程。通常用加法线路求阶差: 若 >0,即Ex >Ey,应将My 右移,每右移一位, -1,直至=0为止;若<0,即Ex <Ey ,应将Mx 右移,每右移一位,+1,直至=0为止。(2)取大阶Max (Ex ,Ey) 暂作结果的阶,将对阶后的尾数按指令要求相加或相减。(3)将运算结果规格化(以双符号补码为例)A.右规条件:运算结果两个尾符S0'S0状态不同,即: 右规的操作是尾数右移,阶码加1;B.左规条件:结果非零(即R0)而且为正数,尾数最高位M1 =0;或结果为负数,尾数最高位M1=1,即: 左规的操作是尾数每左移一位,阶码减1。(4)舍入处理当尾数右移时,为减少误差,需进行舍入处理。常用的舍入法有“0舍1入法”和“恒置1法”。(5)最后检测结果是否溢出。浮点数的溢出是指运算结果的阶大于机器所能表示的最大正阶。若溢出,转中断处理或停机。38.浮点乘法运算的步骤(1)阶码相加,尾数相乘;(2)结果规格化;(3)通常对乘积低位部分进行舍入处理,取尾数乘积的高位部分;(4)判溢出。39.浮点除法运算的步骤:(1)阶码相减,尾数相除;(2)结果规格化;(3)判溢出;40.浮点运算器的结构及浮点四则运算的实现。41.浮点运算流水线: (1)线性流水线时钟周期的确定: = Max (i) +l =m +l (2)K级线性流水线的加速比: Ck = = (3)实例见P102【例2.37】42.本章主要的术语、概念。 进位计数制、码制、规格化浮点数、左规、右规、舍入、溢出、机器数、真值、原码、反码、补码、移码、求补、ASCII码、汉字内码、数据校验码、变形补码、数据通路、先行进位、浮点运算流水线、加速比。第3章 存储系统本章的学习目的:弄清半导体存储元件的存储机理,由半导体存储器芯片组成主存的工作原理,高速缓冲存储器、多模块交叉并行存储系统和虚拟存储器的工作原理,存储系统的层次结构。本章要掌握的基本内容:1.存储器的分类,主要掌握按存取方式分类和按在计算机系统中的作用分类。2.存储系统的设计目标:在一定的成本下,获得尽可能大的存储容量,尽可能高的存取速度以及可靠性等。3存储系统的分级结构(P109 图3.1)(1)高速缓冲存储器在计算机系统中用于存放最活跃的程序和数据的高速小容量存储器。(2)主存储器用于存放计算机运行期间的大量程序和数据的半导体存储器。内存储器(简称内存)包括主存储器和高速缓冲存储器,是CPU 能直接访问的存储器。(3)外存储器(辅助存储器)存放当前暂不参与运行的程序和数据,需要时再与主存成批交换信息的存储器。例如磁表面存储器(磁盘、磁带)、光盘存储器。4.主存储器的技术指标(1)存储容量主存存储单元的总数,通常用字数或字节数表示。按字节编址的主存,存储容量的单位可用KB、MB、GB、TB等单位表示:1KB=210 B, 1MB=220 B,1GB=230B, 1TB=240B(2)存储周期Tmc两次读/写操作之间所需的最短间隔时间。Tmc 的单位是ns(纳秒),1ns=10-9 s。当前半导体存储器的Tmc 已小于10ns。值得指出的是存取时间TA ,是指存储器从接收到读出或写入的命令起到完成读数或写数操作所需的时间。通常TA <Tmc5.MOS静态存储元的组成及其存储二进制数的机理用双稳态触发器的两个稳定状态表示1和0。6.存储器芯片内部电路由存储体及相应的外围电路组成。存储体是由存储元件按行列排列而成,外围电路则是存储体的地址译码驱动,读写电路和内部时序电路等。7.冯努依曼计算机的工作方式基本特点之一是按给定的地址访问存储器。地址译码通常用双译码的结构(参见P119 图3.9)。即由x地址译码选中的行和由y地址译码选中的列之交点的存储元即为被选存储元。8.主存储器与CPU的连接,包括地址线、数据线和控制线的连接。根据存储器容量的要求,可将若干存储器芯片按位、字、或字位进行扩展,如课本P136图3.25和图3.26所示。所需某种规格存储器芯片数N的计算如下: 存储器组成实例详见P137的【例3.1】,例中给出 4 种规格的RAM芯片供选择,选片的原则是能用容量大的芯片尽量用大的,这样的好处是可减少芯片数量并使片选的译码线路简单;另外,存储空间的地址范围最好写成十六进制数,以易于从高位地址的译码确定片选信号的连接。例子中的8KB ROM 的地址空间是十六进制数的0000H 3FFFH,该地址的特征是高2位地址A15A14=00,其余13位地址为0或1(任意),可用3 8译码器的输出y0和y1作为两个8KB EPROM 的片选信号,EPROM 只需片选信号有效即可读出,不需读写控制信号。地址空间低端的4KB RAM 的片选信号可作如下考虑:由于4KB容量的芯片需要12位地址作为片内地址,即A11 A0,此4KB是低端的存储空间,即A15 A120100 ,用y2和A120 ,将y2和A12经反相作为“与非门”的输入,“与非门”的输出可得此4KB RAM 的片选信号。y3 和y4作为两个8KB SRAM 的片选信号。9.弄清存储器的读周期、写周期与存取时间的区别,参见P135图3.23。10.四管、单管动态存储元的存储机理用电容存储电荷的多少表示1和0。特别应注意到四管动态存储元的读出过程就是刷新(补充电荷)的过程;单管动态存储元读1后,该存储元的状态变为0,称为破坏性读出,需要读后重写。11.动态存储器的刷新、刷新周期以及三种基本的刷新方式及其特点。12.双极型存储元的工作机理及其特点。13.半导体只读存储器的分类:(1)掩膜式只读存储器(MROM)是由制造厂家把信息“写入”,用户不能修改的存储器片。(2)(一次性)可编程的只读存储器(PROM)信息由用户编程写入,但不能“擦除”再写的存储器片。(3)光可擦可编程的只读存储器(EPROM)写入信息后可用紫外光擦除,再编程写入的只读存储器。(4)闪速存储器(Flash Memory)的工作原理及其工作模式闪速存储器是一种快速电擦除、可改写型的存储器。14.解决主存与CPU速度不匹配的主要途径:(1)在CPU内部设置多个通用寄存器或加长存储器的字长;(2)采用并行操作的存储器;例如双端口、相联存储器和多模块交叉存储器。(3)在CPU和主存之间插入高速缓冲存储器(Cache);15.双端口存储器是指同一个存储器具有两组相互独立的读写控制电路。当对两个不同地址的存储单元进行读/写,则可同时进行,这就提高了存储器的工作速度;当两个端口同时要对同一存储单元读/写时发生冲突,此时可由判断逻辑决定对一优先端口读/写,而延迟对另一端口的读/写。双端口存储器是用硬件的冗余取得高带宽。在奔腾机中用作数据Cache。16.多模块交叉存储器多模块交叉存储器的基本原理是:把M=2n 个容量为L个存储单元的存储器模块进行交叉编址,使通常按地址自然递增访问存储器的操作依次发生在不同的存储模块中,由于每个存储模块都有自己的读/写电路和地址寄存器、数据缓冲寄存器,就能对不同存储模块同时访问,达到提高存储器工作速度的目的。多模块交叉存储器的并行操作关键在于各存储模块的交叉编址。设有M个存储器模块,存储模块编号为J(J = 0,1,2,(M-1)),每个存储模块容量为L个存储单元,单个模块的单元顺 序 号 为i(i = 0,1,2,(L-1))。则Mj 模块的编址模式为: 例如M=4,则用模4交叉编址 模块号 地址编址序列 最末二位地址状态 M0 0,4,8,(4i+0), 4(L-1)+0 00 M1 1,5,9,(4i+1), 4(L-1)+1 01 M2 2,6,10,(4i+2), 4(L-1)+2 10 M3 3,7,11,(4i+3), 4(L-1)+3 11在理想的情况下,每 (Tmc 存储周期)可读/写一次。影响多模块交叉主存系统实际效率的因素其一是工程实现方面的问题,即并行交叉程度越高,会增加延迟时间;其二是系统的效率问题,即程序转移的非顺序性和数据的顺序性差,都造成多模块主存系统效率的下降。例CDC 6600机,M=32,实际效率为10字/Tmc ,是理想效率的1/3 还不够。多模块交叉主存系统是以硬件的冗余和交叉编址技术换取高带宽。17.相联存储器是按内容寻址的存储器,即用某项内容(关键字)作为地址来存取的存储器。相联存储器的组成框图见P144图3.33。相联存储器主要用于存放Cache 的行标志,虚拟存储器的分段表、页表和快表。18.高速缓冲存储器(Cache)Cache是介于CPU与主存之间,用于存放当前最活跃的程序块和数据的高速小容量存储器。Cache实现的理论基础是CPU运行程序的局部性原理,即指CPU执行的程序所使用的存储单元是相对集中或小批簇聚于相邻单元中。Cache的命中率H是指CPU在Cache中访问到的次数n1与总的访问次数n之比。不命中率(脱耙率):(1- H)在有Cache 的主存系统中,CPU访问存储器的平均周期:T A =H×Tcc +(1-H)×T mc上式中:Tcc Cache 的存储周期Tmc 主存的存储周期访问效率:e = CPU与Cache、主存的存储层次见P145 图3.34。19.主存与Cache 的地址映射方式有三种:全相联映射、直接映射和组相联映射;这三种映射方式Cache 的检索过程;Cache 常采用的替换策略是近期最少使用(LRU)算法;Cache的写操作策略:写回法、全写法。20. 虚拟存储器用户想象中的具有机器地址字所限定的存储空间的内存储器,是指“主存-辅存”的存储层次,它使计算机系统具有外存的容量,接近于主存的速度和外存的位成本。通常,虚存空间大于实存空间是虚拟存储系统的基本特征,虚存空间是由辅存(如磁盘)支持的。21.磁表面存储器的特点22.磁性材料的记忆原理是利用磁表面不同的剩磁状态记录二进制信息。23.磁表面存储器的写、读操作(1)写操作磁头写入线圈加入写脉冲电流I,产生磁通,通过磁头缝隙将高速运动的磁层磁化,磁层的剩磁记录了写入的二进制信息。(2)读操作记录有信息的磁层高速通过磁头缝隙,与铁芯耦合形成闭合磁路,磁通的变化则在读出线圈感应出电势,经放大输出读出信号。由于读、写操作的互斥性,因此,写入线圈和读出线圈可以合二为一,分时使用。24.磁表面存储器记录二进制信息的写电流的编码方式称为磁记录方式。常用的记录方式有不归零1制(NRZ1)、调相制(PM或PE)、调频制(FM)和改进型调频制(MFM)等。应熟悉以上记录方式写入二进制代码的写电流波形。25.磁盘存储器的主要技术指标(1)存储密度磁盘记录区单位面积所能存储的二进制位的数量。例如希捷公司的磁盘,存储密度达16Gb/英寸 2。预计到2007年达到1Tb/英寸 2存储密度通常用道密度Dt和位密度Db来衡量。Dt是指磁盘在记录区内径向单位长度所记录的磁道数。单位是TPI(道/英寸)或TPM(道/毫米)。Db通常指最内圈磁道单位长度所能记录的二进制位数。单位是bPI(位/英寸)或bPM(位/毫米)。(2)存储容量C磁盘装置所能存储的二进制数据的总量(格式化容量)。 C = n×K×L×S式中:n 数据盘记录面数 K 每个记录面的磁道数L 每一磁道记录的扇区数S 每一扇区的字节数例如当前3.5英寸的硬盘容量已达120GB。(3)平均存取(定位)时间指发出读/写命令后,磁头由某一位置移动到所指定的记录位置并开始进行读/写操作所需的时间。平均存取时间通常用平均找道时间Ts和平均等待时间TL之和来衡量。TA =Ts +TL式中,式中:Tc 盘片旋转一圈所需的时间, n转/秒Tsmax 最大的找道时间, Tsmin最小的找道时间(4)数据传输率Dtr磁盘存储器在单位时间里读/写的二进制信息量,单位是KB/S(千字节/秒)Dtr= p×s 或 Dtr =Db ×V式中:p 每秒转数s 每道容量Db 位密度V 最内圈磁道线速度例:设盘转速为p转/秒,每道容量为s个字,则读写一块字数为W的数据所需时间T约为: 26.硬磁盘存储器的基本组成及工作原理。27.硬磁盘存储器的记录格式参见P166 图3.52,编址方案为: 记录面号,磁道号,扇区号,(台号)28.软磁盘存储器的组成及工作原理。29.磁带存储器的主要性能及磁带机的分类。30.光盘存储器的分类及工作原理。31.本章主要的术语、概念 存储元、随机存储器、顺序存储器、半顺序存储器、ROM、RAM、Cache、主存、内存、外存(辅存)、存储周期、静态存储器、动态存储器、刷新、破坏性读出、写操作、读 操作、多模块交叉存储器、双端口存储器、Cache 的命中率、相联存储器、虚拟存储器、地址映射、地址变换、记录方式、道密度、位密度、平均定位时间、平均等待时间、记录格式、数据传输速率。第4章 指令系统本章的学习目的:弄清计算机指令系统按功能划分的指令种类;两种指令系统计算机: CISC(复杂指令系统计算机)和RISC(精简指令系统计算机)指令的特点;指令和数据的寻址方式;堆栈及其应用。本章要掌握的基本内容:1.指令系统与软件、硬件之间的关系按指令系统的功能构造硬件组织;硬件支持指令系统功能的实现;在指令系统的基础上构造系统软件。2.指令的基本格式 操作码字段 OP地址码字段 AOP指示指令的操作性质,用二进制代码表示,OP通过指令译码器进行解释。A通常用于指示操作数的地址或指令地址。决定指令格式的主要因素有三个:一是操作的种类,二是地址的数目,三是寻址方式。3. 操作码OP的结构(1)操作码的位数n取决于操作的种类N2n N , 即nlog2 N(2)操作码的结构可分为二种:a.固定长度(规整型)的OP结构是指操作码的位数和位置固定不变。其特点是有利于简化硬件的译码逻辑,但指令码各位的利用率较低。b.可变长度(非规整型)的OP结构是指操作码的位数不固定。其特点是指令码各位的利用率高,但硬件的实现较难。4. 地址码结构根据一条指令中所包含的地址个数,分为三地址、二地址、一地址和零地址四种指令。参见课本P181。应当指出的是,一地址指令由指令的地址字段可获得一个操作数,在涉及到双操作数的指令时,另一操作数被指定在累加器AC中(称为隐含寻址)。另外,零地址指令是指在指令中不包含操作数的地址,这对于不需有操作数的指令如停机指令等是可理解的,而对于要涉及操作数的零地址指令,操作数存放在堆栈中,可由堆栈指针指定。5. 指令操作码的扩展方法这种操作码的扩展技术是一种根据需要确定不同类型指令的操作码位数,属可变长度的OP结构。另外,不管如何不规整,由于是用不同的二进制编码表示不同的指令,故设计出的每一条基本指令,应有且仅有一种编码与之对应。扩展技术的主要优点是指令码中的各位利用率高,即