计算机组成原理总复习.ppt

上传人:文库蛋蛋多 文档编号:2227432 上传时间:2023-02-03 格式:PPT 页数:145 大小:751.50KB
返回 下载 相关 举报
计算机组成原理总复习.ppt_第1页
第1页 / 共145页
计算机组成原理总复习.ppt_第2页
第2页 / 共145页
计算机组成原理总复习.ppt_第3页
第3页 / 共145页
计算机组成原理总复习.ppt_第4页
第4页 / 共145页
计算机组成原理总复习.ppt_第5页
第5页 / 共145页
点击查看更多>>
资源描述

《计算机组成原理总复习.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理总复习.ppt(145页珍藏版)》请在三一办公上搜索。

1、计算机组成原理总复习复习提示:重点掌握、理解与计算机组成有关的原理性知识和带有一定指导意义的技术思路方面的内容。注意不要把精力放在教材中的某些实例或太多地具体技术细节。,第2章 数据表示、运算和运算部件一、掌握数制与进位计数法,基r数制用r个基本符号(0,1,2,r-1)通过排列起来的符号串表示数值。r该数制的基 例:N=Dm-1Dm-2D1D0D-1D-2D-k式中,Di(-kim-1)数制采用的基本符号(0,1,,r-1)Dm-1Dm-2D1D0 整数部分 D-1D-2D-k 小数部分 若 Di单位值有固定的值Wi,则Wi为该位的权。所以,N可写成,若该数编码还符合“逢r进位”的原则,则每

2、位的权为 Wi=ri 其中r是数制的基,i为位序号。则N可写为 式中 r数值的基 i位序号 Dii位上的符号 ri 第i位的位权 Di*ri 第i位的实际值,常见的几种进位数制:进制 r 基本符号 二进制 2 0,1八进制 8 0,1,2,3,4,5,6,7十六进制 16 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F十进制 10 0,1,2,3,4,5,6,7,8,9,3.在一个二进制编码的系统中,如果每一个数据同一位上的符号“1”都代表确定的值,则该编码系统属于,该值被称为为个数位的,计算一个数据表示的十进制的值量,可以通过把该数据的所有取值为1的 累加求和来完成。答案:有

3、权码 位权 数位的位权,二、掌握数制转换(二、八、十六进制和十进制的转换)(1)二、八、十六进制与十进制数据转换十进制到二、(八、十六)进制的转换 整数部分:除2(8、16)取余倒排 小数部分:乘2(8、16)取整顺排例:125.9375=(7D.F)16=(175.74)8=(1111101.1111)2,二、(八、十六)进制到十进制的转换套用公式例:(101101111.101)=(367.625),1162+6161+15160+1016-1256+96+15+0.625=367.625,(2)二进制与八进制及与十六进制的转换二进制转换为八进制,从小数点分别向左向右每3位二进制数分为一组

4、(不够3位需补0),每组对应一位八进制数。例(1 100 111.101 011 01)2=(147.532)8 二进制转换为十六进制,从小数点分别向左向右每4位二进制数分为一组(不够4位需补0),每组对应一位十六进制数。例(110 0111.1010 1101)2=(67.AD)16,三、掌握检错、纠错的概念,即主要是海明码的基本概念检错与纠错的概念:用带有某些特征能力的编码方法,通过少量的附加电路,使之能发现某些错误,甚至能准确地确定出错位置,进而提供自动纠正错误的能力。数据校验码的实现原理:在合法的数据编码之间,加进不允许出现的(非法的)编码,使合法数据出现某些错误时,就成为非法编码。这

5、样,就可以通过检查编码的合法性达到发现错误的目的。,码距(最小码距)的概念:任何两个合法编码之间,至少有几个二进制位不同。若仅有一位不同,则称其码距位1。例:用4位二进制数表示16种状态:0000,0001,0010,1101,1110,111116位编码都用到,码距为1。码距为1时,任何一位编码出错,都会变成合法码,所以没有检错能力。,1.检错纠错的有关概念和实现思路 若用4位二进制数表示8种状态:0000 1001 1010 0011 1100 0101 0110 1111(进行了偶检验)0 1 2 3 4 5 6 7 只用了16种个编码中的8个编码,另8个编码为非法编码,合法码距为2。任

6、何一个编码有一位出错,就变成了非法码。常用的数据校验码:奇偶校验码 海明校验码 循环冗余校验码,(2)海明(Richard Hamming)校验码功能:能检测出一位出错并纠正,也能检测出二位同时出错。实现原理:在k个数据之外加上r 个校验位,形成 r+k个的新的码字,使新的码字的码距比较均匀的拉大。把数据的每一个二进制位分配在几个不同的偶校验组合中,当一位出错后,会引起相关的几个校验位的值发生变化,不但能发现出错,还能指出哪一位出错,为自动纠错提供依据。,设k位数据,r 位校验码。要指明 k+r 位错在哪一位,再用一个状态指明“无错”,则应满足:2 r k+r+1若还需发现两位错,则应满足:2

7、 r-1 k+r 校验位与数据位的对应关系:k值 最小的 r 值 34 4 510 5 1125 6 2656 7 57119 8,5说明海明码能实现检错纠错的基本原理?为什么能发现并改正一位错、也能发现二位错,校验位和数据位在位数上应满足什么条件?答:基本原理:k个数据之外加上r个校验位,从而形成k+r位的新的码字,使新的码字的码距均匀的拉大。把数据的每一个二进制位分配到几个不同的偶校验位的组合中,当一位出错,会引起相关的几个校验位的值发生变化,从而可能发现出错,还能指出是哪一位错,进而进行纠错。校验位和数据位应满足条件:2 r-1 k+r在此条件下,不但能发现并改进一位错,并能同时发现二位

8、错。,例:在完成检错纠错功能的海明码的编码方案中,对8位的数据位,要求它能检查出并改正1位错误,也能发现2位错误,则要使用 位校验码,此时的最小码距为。最小码距是指从一个合法码变为另一个合法码时 要改变几个二进制位的状态,最小码距又可简称为。答案:5 4 最少 码距,四、定点小数和整数的原、反、补码表示定点小数的表示方法 设有m+1位,最高位为符号位(0表示正号,1表示负号)用m位表示小数的数值。小数点默认在符号位与最高数值之间。定点小数的表示方法 设有m+1位,最高位为符号位(0表示正号,1表示负号)用m位表示整数的数值。小数点默认在最低数值之后。,(1)原码表示法正数的符号位为0,负数的符

9、号位为1,数值部分与原数的绝对值相同。(2)反码表示法正数的反码与原码相同,负数的反码等于原码数值部分按位求反(符号位不变)。(3)补码表示法正数的补码与原码相同,负数的补码等于原码数值部分按位求反,末位加1(符号位不变),9将十进制数+107/128 和52化成二进制数,再写出各自的原码、反码、补码表示(符号位和数值位共8位)。答案:(+107/128)10=(0.1101011)2,(52)10=(110100)2(+107/128)10(52)10 原码表示 01101011 10110100 反码表示 01101011 11001011 补码表示 01101011 11001100,1

10、0.X=-0.1001,X原=,X补=,X反=Y=0.0101,Y原=,Y补=,Y反=解:,十进制数的编码用基2码对每个十进制数进行编码(1)十进制有权码指一个十进制数位的4位基2码的每一位有确定的权例:8421码(BCD码,二 十进制码)(2)十进制无权码指表示一个十进制数位的4 位基2码没有确定的位权。例:余3码,8判断下面的二元码的编码是有权码还是无权码,写出判断的推导过程。十进制数 二元码的编码0 0 00001 1 01112 2 01103 3 01014 4 01005 5 10116 6 10107 7 10018 8 10009 9 1111,答:(1)推导过程:判断是有权码

11、还是无权码:设4位二元码每位分别为A、B、C、D,且假定其为有权码,则从数值4的编码0100可求得B的位权为4;从数值8的编码可求得A是位权位8;再从数值7的编码1001可求得D的位权为1;从数值6的编码1010可求得C的位权为2。再用ABCD的位权分别为8、4、2、1来验证数值0、1、2、3、5、9的编码值,结果都正确。(2)判断是有权码还是无权码:结论:该编码系统是有权码。,五、补码加、减运算 X+Y补=X补+Y补 X-Y补=X补+-Y补 其中-Y补等于Y补连同符号位求反加 1。溢出的判断(采用双符号位法,即变形补码法):两数相加,若结果符号为00或11,则无溢出;若结果的符号位为01,则

12、为上溢出;若结果符号为10,则为下溢出。,12写出下面2组数的原码、反码、补码表示,并用补码计算每组数的和、差。双符号位的作用是什么?它只出现在什么电路之处?(1)X=0.1101,Y=0.0111(2)X=10111101,Y=00101011,(1)X=0.1101,Y=0.0111解:X原=00 1101,X补=00 1101,X反=00 1101;Y原=11 0111,Y反=11 1000,Y补=11 1001,-Y补=00 0111;,X+Y补=X补+Y补=00 1101+11 1001=00 0110符号位为00,结果正确,X-Y补=X补+-Y补=00 1101+00 0111=0

13、1 0100符号位为01,结果上溢,(2)X=10111101,Y=00101011 X原=00 10111101,X补=00 10111101,X反=00 10111101;Y原=11 00101011,Y反=11 11010100,Y补=11 11010101,-Y补=00 00101011;,3、浮点数的表示方法浮点数小数点在数据中的位置可以左右浮动 N=M*REM尾数(用定点小数表示)R阶码的基数(二进制R为2,不表示出来)E阶的阶码M决定精度,E决定表示范围。表示格式 1位 m位 n位例:1 0101 1011011 表示-0.101101125,规格化浮点数:尾数不为0时,尾数的绝

14、对值应大于或等于0.5(或尾数的最高位必须为1)浮点数的规格化处理:化浮点数为规格化浮点数的过程。例:1 0101 01011011 表示-0.0101101125 规格化以后为 1 0100 10110110 表示 0.1011011024 浮点数的隐藏位技术 浮点数的最高位必为1,写入存储器时可以省去(隐藏起来)。这样可以提高1位二进制尾数的表示精度。从存储器取回浮点数到运算器执行运算时,再恢复隐藏位的值。,阶码用移码表示的浮点数:移码的定义:X补=2 n+X-2 n X2 n 由X补得出移码的方法:变X补的符号位为其反码。例:若X=+1011,X补=01011,X移=11011 若X=-

15、1011,X补=10101,X移=00101,移码的性质:最高位为符号位,1表示正号,0代表负号;移码只用于表示浮点数的阶码,只用于整数;对移码只执行加减运算;0的移码有唯一的编码:+0移=-0移=100000;最小的移码为:00000(即-2 n)当浮点数的阶码小于-2 n 时,不管尾数值大小如何,都为浮点数下溢,认为其值为0(称为机器零);此时该浮点数的所有位(包括阶码位和尾数)都清为0值(IEEE标准)。这样有利于简化机器中的判0线路。,20回答如下问题:(1)浮点数阶码选用移码表示有何优点?(2)浮点数表示中的隐藏位技术的作用是什么?在什么时刻完成对隐藏位的处理?(3)浮点数表示中,当

16、尾数选用补码表示时,如何表示十进制数的0.5,才能满足规格化的要求?答:(1)浮点数的阶码用移码表示有利于表示和处理浮点数的机器零(或答有利于简化机器中的判0线路)。,(2)浮点数表示中的隐藏位,是指可以把规格化浮点数的尾数最高位的值(原码时为1,补码时与符号位相反)省去,以便提高一位二进制尾数的表示精度。这一处理应出现在保存浮点数到寄存器之前(隐藏起来),或从存储器浮点数到运算器中(恢复过来)的时刻进行。(3)十进制数的0.5应表示为121的形式。,例:给出浮点数在计算机内的表示格式。应该按什么原则来分配浮点数的位数和尾数的位数才比较合理?按IEEE的标准,机器零的编码是什么?答:(1)浮点

17、数在计算机内地表示格式:1位尾数符号,后跟m位阶码,再跟n位尾数数值。(2)其位数分配原则,既要保证足够大的表示范围(由阶码位数决定),又要有足够的数据精度(由尾数位数决定)。(3)按IEEE的标准,机器零的编码是浮点数的所有位是全零。,浮点加减法的运算规则设 X=MX*2Ex,Y=MY*2Ey,实现XY的运算。步骤:(1)对阶操作:求阶差,将阶码小的数的尾数右移E位,阶码加上E。对原码,符号位不变,尾数高位补0。对补码,符号位参加移位并保持不变。保留移位丢失的若干位供以后舍入操作使用。,(2)实现尾数的加(减)运算(3)对结果进行规格化处理 补码的规格化形式为:001 或 110 规格化处理

18、原则:若结果的符号位不同,则尾数结果溢出,应使尾数右移一位,阶码加1右规 尾数结果不溢出,但最高数值位与符号同值,则不满足规格化原则,应使尾数左移1一位,价码减1,直至最高数值位与符号位不同。,(4)舍入操作 常用办法,0舍1入(5)判断结果的正确性检查阶码是否溢出 若阶码正常,运算正常结束 若阶码下溢,置机器0 若阶码上溢,置溢出标志,19设 A=0.1011012-3,B=0.1010012-2,首先将A、B表示为规格化的浮点数,要求阶码用4位(含阶码符号)移码表示,尾数用8位(含浮点数的符号)原码表示;再写出A+B的计算步骤和每一步的运算结果。答案:0.1011012-3的浮点数的格式:

19、1 0101 1011010(阶码的补码为1101)0.1010012-2的浮点数的格式:1 0110 1010010(阶码的补码为1110),计算A+B:(1)求阶差:E补=A阶码补B阶码补=A阶码补+-B阶码补=1101+0010=1111,E的真值为1,即A的阶码比B的阶码小1。(2)对阶:A变为 1 0110 01011010 0(3)尾数相加 用双符号位补码相加,(4)规格化:左规,尾数为 0 1001010,阶码为0101(5)无舍入操作,亦不溢出,故最的终浮点数格式的结果为:0 0101 1001010,即+0.1001010*2-3。,七、掌握原码一位乘法的算法以及具体运算原码

20、两数相乘,乘积符号为两数符号的异或值,数值为两数绝对值之积。原码一位乘法步骤:设置部分积寄存器(初值为0)和乘数寄存器 将同时求各相加数之和改为将部分积(起始时部分积为0)逐次右移与累加;,用乘数寄存器低位的值(1,0)来判断与部分积相加的数是被乘数还是0;乘数寄存器逐次右移(原来的乘数在右移的过程中丢失),部分积寄存器最低位逐次右移至乘数寄存器的高位,完成运算后部分积寄存器存放乘积高位,乘数寄存器存放乘积低位。将乘数与被乘数的符号异或的积的符号。,例:X=0.1101 Y=0.1011,求X*Y 高位部分积 低位部分积/乘数 说明 0 0 0 0 0 0 1 0 1 1 起始情况+)0 0

21、1 1 0 1 乘数最低位为1,加乘数 0 0 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1(丢失)右移部分积和乘数+)0 0 1 1 0 1 乘数最低位为1,加乘数 0 1 0 0 1 1 0 0 1 0 0 1 1 1 1 0 1(丢失)右移部分积和乘数+)0 0 0 0 0 0 乘数最低位为0,加0 0 0 1 0 0 1 0 0 0 1 0 0 1 1 1 1 0(丢失)右移部分积和乘数+)0 0 1 1 0 1 乘数最低位为1,加乘数 0 1 0 0 0 1 0 0 1 0 0 0 1 1 1 1 1(丢失)右移部分积和乘数 结果符号位为正,X*Y=0.10001111

22、,八、掌握补码一位除法的实现算法运算规则:(1)如果被除数与除数同号,则Y(用加Y补实现),若被除数与除数异号,则+Y(用加Y补实现);(2)若余数与除数同号,商1,左移一位,再减Y(用加Y补实现)求商;若余数与除数异号,商0,左移一位,再加Y(用加Y补实现)求商;(3)商的符号,第一次求商时不溢出,则为正确的符号位;(4)商的修正:精度要求不高时,商最低位恒置1;若精度要求较高,则求商 n+1 次,按得到的结果对商进行修正。(5)严格地说,此办法求得的商是反码。对正的商,即为补码表示;对负的商,应在最低位加1。,14计算定点小数补码一位除时,是用被除数和除数的补码表示直接计算商的补码表示的结

23、果。求得每位商的依据,是比较被除数和中间步骤的差与除数的绝对值的大小,其规则是:(1)开始时,当除数与被除数同号,则用减运算求第一位商,当被除数与除数异号,用加运算求第一位商。(2)当计算的结果与除数同号时,该位商为1,求下一位商时要用减运算完成;结果与除数异号时,该位商为0,求下一位商时要用加法计算完成。(3)对运算的结果左移一位时写回开始时存放被除数的累加器,对存放商的寄存器的内容也同时左移一位。接下来开始求下一位商。(4)用此方法计算,如果结果不溢出,商的符号和数值位是用相同的办法计算出的,严格地说,此时求出的商是反码表示的结果,对正的商,也就是补码表示,对负数的商,应该再在最低位加1后

24、才是真正的补码商;为了简单,也可以不去区分商的符号,商的最低位不再经过计算得到,面是恒置为1。,例:X补=1 0111 Y补=0 1101 Y补=1 0011 求X/Y补 被除数 商 操作说明 1 1 0 1 1 1 0 0 0 0 0 开始情形+)0 0 1 1 0 1 两数异号,+Y 0 0 0 1 0 0 0 0 0 0 1 余数与除数同号,商1 0 0 1 0 0 0 0 0 0 1 0 余数、商左移一位+)1 1 0 0 1 1 余数与除数同号,Y 1 1 1 0 1 1 0 0 0 1 0 余数与除数异号,商0 1 1 0 1 1 0 0 0 1 0 0 余数、商左移一位+)0 0

25、 1 1 0 1 余数与除数异号,+Y 0 0 0 0 1 1 0 0 1 0 1 余数与除数同号,商1 0 0 0 1 1 0 0 1 0 1 0 余数、商左移一位+)1 1 0 0 1 1 余数与除数同号,Y 1 1 1 0 0 1 0 1 0 1 0 余数与除数异号,商0 1 1 0 0 1 0 1 0 1 0 0 余数、商左移一位+)0 0 1 1 0 1 余数与除数异号,+Y 1 1 1 1 1 1 1 0 1 0 0 余数与除数异号,商0 因为商为负值,最低位加1,得X/Y补=10101,真值为0.1011,九、了解教学实验计算机运算器部分的结构框图,掌握实际机器运算器部分各开关、

26、显示灯的作用。ALU进行算术运算与逻辑运算 寄存器组暂存数据与中间结果 乘商寄存器完成乘除指令运算 多路选择器实现各部件的相互连 接和数据传送 输入输出逻辑电路,运算器,Am2901内部组成,Am2901的控制与操作 控制信号(1)I5、I4、I3实现运算功能选择,(2)I2、I1、I0选择ALU两个操作数据的组合关系,8 种结果处理,I8I7I6 通用寄存器 Q寄存器 Y输出 000 QF F 001 F 010 BF A 011 BF F 100 BF/2 QF/2 F 101 BF/2 F 110 B2F Q2F F 111 B2F F,21举例说明运算器中的ALU通常可以提供的至少5种

27、运算功能?运算器中使用多累加器的好处是什么?乘商寄存器的基本功能是什么?(5分)答:运算器中的ALU通常至少可以提供算术加运算、算术减运算、逻辑或运算、逻辑与运算、逻辑异或运算5种功能。乘商寄存器的功能是用硬件完成乘除指令运算。运算器采用多累加器可以简化指令的执行步骤。,16按你的理解,画出一个相对完整的定点运算器的示意组成框图,包括入出数据和基本的控制信号。,ALU,通用 寄存器组,乘商寄存器,多路选通门,多路选通门,多路选通门,多路选通门,结果输出,状态输出,数据输入,最低位进位输入,Cin,Q0,VccR,3.16位教学机运算器部件主体部分的设计与实现,8 位运算器脱机实验,Y7Y0,D

28、7D0,RAM7,Q7,RAM0,Q0,Cin,CyF=0OverF15,运 算 器 部 件,A30,B30,I86,(用8个开关提供输入数据),CZVS,SSH,SST,SCi,I53,I20,A口 B口 SCi SSH,I86 I53 I20 SST,通过24位微型开关提供控制信号,用四个指示灯显示状态,(用8个指示灯显示结果),17在做脱机运算器实验时,送到运算器芯片的控制信号是通过()提供的,外部送到运算芯片的数据信号是通过()提供的,并通过()查看运算器的运算结果(运算的值和特征标志位状态)A.计算机的控制器 B.发光二极管指示灯亮灭状态 C.显示器屏幕上的内容 D.手拨数据开关 E

29、.运算器累加器中的内容 F.微型开关答案:F D B,18以教学计算机为例,说明应如何控制与操作运算器完成指定的数据运算、传送功能,为什么必须在Am2901之外解决向运算器提供最低位的进位信号,最低、最高位的移位输入信号,以及状态位的接收与记忆问题。答:在教学计算机中,为控制运算器完成指定的数据运算、传送功能,必须给出要用的数据组合,ALU要完成的运算功能,和对运算结果的保存及送出办法;选择送到ALU最低位的进位信号的状态,如何处理最高、最低位的移位信号的状态,是否保存运算结果的特征位信号等问题,都要依据指令执行的实际需求来处理,不是运算器内部功能所能包含的,故只能到Am2901芯片之外来解决

30、。,第3章 指令、指令系统和控制器部件一、掌握指令的基本格式及各部分的功能指令格式操作码:指明本条指令的操作功能。例如:算术加运算,算术减运算,逻辑与运算,逻辑或运算,读内存,写内存,程序转移,子程序调用和返回。地址码:指明被操作的信息(指令数据)的地址。包括:操作数的地址,运算结果的保存地址,程序的转移地址,子程序的入口地址,设计与评价指令系统应考虑的方面:(1)指令系统的完备性,常用指令齐全,编程方便;(2)指令系统的高效性,指令占用内存空间少,运行速度快;(3)指令系统的规整性,指令和数据使用规则统一简单,易学易记;(4)指令系统的兼容性,同一系列低档计算机的程序能在高档机上直接运行。,

31、3在设计指令系统时,通常应从哪几个方面入手:答:(1)指令系统的完备性,常用指令齐全,编程方便;(2)指令系统的高效性,程序占用内存空间少,运行速度快。(3)指令系统的规整性,指令和数据使用规则统一简化,易学易记;(4)指令系统的兼容性,同一系列的低档计算机的程序能放到新的高档机上直接运行。,二、了解基本的寻址方式,掌握形式地址和有效地址的概念寻址方式是指如何在指令中表示一个操作数的地址,如何用这种表示得到操作数或怎样计算出操作数的地址。形成地址表示在指令中的操作数地址;物理(有效)地址操作数在存储器中的存储单元地址。,基本的寻址方式(1)立即数寻址操作数直接给出在指令字中,即指令字中直接给出

32、的不是操作数地址,而是操作数本身。(2)直接寻址 在指令的操作码地址字段直接给出操作数在存储器中的地址。(3)寄存器寻址,形式地址为寄存器名(或编号),寄存器中的内容为操作数。,(4)寄存器间接寻址,形式地址为寄存器名(或编号),寄存器中的内容为操作数的地址,再读一次内存得到操作数。(5)变址寻址,形式地址为变址寄存器名(或编号)和变址偏移值,把变址寄存器中的内容与变址偏移值相加得到操作数的地址,再读一次内存得到操作数。(6)相对寻址 形式地址为相对寻址偏移量,该数值与程序计数器PC的内容相加,得到操作数的地址转移指令的转移地址。,(7)基地址寻址 把程序中所用的地址与一个特定的寄存器(称为基

33、地址寄存器)的内容相加作为操作数的地址或指令的地址。(8)间接寻址 形式地址是操作数(或指令)地址的地址。读写数据需两次访问存储器。(9)堆栈寻址通常形式地址为将写入堆栈的、或接收堆栈读出内容的寄存器名(或编号),指令中不直接给出内存地址,而是选用默认的堆栈指针寄存器中的内容为内存地址,读写堆栈总伴有修改堆栈指针的操作。,2什么是形式地址?什么是物理(有效)地址?举例说明计算机中常用的四种寻址方式(寄存器寻址,寄存器间接寻址,变址寻址,堆栈寻址),从形式地址到得到操作数的寻址处理过程。答案:表示在指令中的操作数地址通常称为形式地址;用这种形式地址并结合某些规则计算出操作数在存储器中的存储单元地

34、址称为物理(有效)地址。(其余部分答案见作业),三、控制器的功能与组成 组合逻辑控制器 微程序控制器控制器的功能:依据当前正在执行的指令和它所处的执行步骤,形成并提供在这一时刻整机各部件要用到的控制信号。,控制器,组合逻辑控制器的组成:(1)序计数器PC,用于保存一条指令在内存中的地址;(2)指令寄存器IR,用于保存从内存读出的指令内容;(3)脉冲源和启停控制逻辑、节拍发生器,前者向计算机各部件提供连续(单个)的主振脉冲,后者用于标记每个指令的执行步骤的相对次序关系。(4)时序控制信号产生部件,用于形成并提供计算机各部件当前时刻要用到的控制信号。,数据总线,7.简要说明组合逻辑控制器应由哪几个

35、功能部件组成?答:组合逻辑控制器应由4 个功能部件组成:(1)程序计数器PC,用于保存一条指令在内存中的地址;(2)指令寄存器IR,用于保存从内存读出的指令内容;(3)脉冲源和启停控制逻辑、节拍发生器,前者向计算机各部件提供连续(单个)的主振脉冲,后者用于标记每个指令的执行步骤的相对次序关系。(4)时序控制信号产生部件,用于形成并提供计算机各部件当前时刻要用到的控制信号。,指令的执行过程,读取指令,分析指令,执行指令,检查有无中断请求,指令地址(在PC中)送到地址寄存器读主存,读出内容(指令代码)送入指令寄存器,用一到几个执行步骤,完成指令的运算、操作功能,不同指令用到步骤数和要求的运算、操作

36、功能均不相同,无中断请求,进入下一条指令的执行过程,形成下一条指令的地址并放到PC中,4简要说明减法指令SUB R3,R2和子程序调用指令的执行步骤。答:(1)减法指令执行流程:ARPC 读内存,IR读出的内容,PCPC+1 R3R3R2,保存状态信息结束,检查中断请求,无中断请求,进入下一条指令的执行过程。,(2)子程序调用指令执行流程;ARPC 读内存,IR读出的内容,PCPC+1 ARSP1 写内存,PC内容进栈保存 PC子程序入口地址结束,检查中断请求,无中断请求,进入下一条指令的执行过程,5.按你自己的理解和想象的计算机的硬件(应有中断功能)组成,写出完成下面给定指令格式的指令的执行

37、流程。(1)累加器内容完成“异或”运算。“异或”指令格式:操作码 DR SR指令流程:程序计数器的内容地址寄存器 读内存,读出的指令指令寄存器,PCPC+1 DR的内容异或SR的内容,结果DR 检查有无中断请求,有,则进行相应处理;无,则转入下一条指令的执行过程。,(2)把一个内存单元中的的内容读到所选择的一个累加器中。“读内存”指令格式:操作码 DR SR指令流程:程序计数器的内容地址寄存器 读内存,读出的指令指令寄存器,PCPC+1 SR的内容地址寄存器(寄存器间接寻址方式)读内存,读出的数据DR 检查有无中断请求,有,则进行相应处理;无,则转入下一条指令的执行过程。,6.原理性地说明AD

38、D R0,R1指令、条件相对转移指令的指令格式和执行步骤。答:ADD R0,R1,指令中给出操作码和R0、R1的编号,指令执行步骤:(1)程序计数器(PC)的内容送地址寄存器(2)读内存,读出内容送指令寄存器(IR);PC内容+1(增量);(3)R0、R1送ALU,ALU执行加运算,运算结果存回R0寄存器;保存运算结果的特征状态。(4)检查有无中断请求,有,则响应中断,无则转入下一条指令的执行过程。,条件相对转移指令,指令中给出操作码和相对转移偏移值,条件转移要依据的转移判断条件;指令的执行步骤:(1)程序计数器(PC)的内容送地址寄存器(2)读内存,读出内容送指令寄存器(IR);PC内容+1

39、(增量)(3)执行条件转移指令时,要判别指定的条件,若为真,才执行:尚未修改的PC内容送ALU,相对转移偏移值送ALU,ALU执行加操作,结果送入PC;否则顺序地进入下一条指令的执行过程;(4)检查有无中断请求,有,则响应中断,无则转入下一条指令的执行过程,9简要说明条件转移指令和无条件转移指令的相同点和不同点?子程序调用指令与转移指令的区别是什么?答:(1)条件转移指令和无条件转移指令的相同点是必须在指令中给出转移地址,不同点在于条件转移指令还必须在指令中给出判断是否执行转移所依据的条件。(2)子程序调用指令与转移指令的区别在于子程序调用指令转移之后还有一个对应的返回过程,而一般的转移指令并

40、不涉及转移走后是否如何再次转移回来。,合理为节拍分配编码,遵循两个原则:原则一:从一个状态变到下一个状态时,状态发生变化的触发器应尽量少。最好4个二进制位中只变化一个,以简化节拍发生器的逻辑线路,也有利于改善节拍发生器输出信号的译码波形。原则二:安排的线路编码,应有利于简化时序控制信号的逻辑表达式,简化时序控制信号形成部件的设计。,10简要说明组合逻辑控制器中的节拍发生器的作用是什么?简述它的运行原理。答:(1)提供执行每一条指令的步骤(时序)的标记信号和时序脉冲信号。(2)它是用时序逻辑方式运行的,依据当前的时序状态信息,指令的操作码信息,可能还看指令执行状态的有关信息等,确定出下一个时序状

41、态的值。,11.在组合逻辑有控制器中,节拍发生器TIMING的作用在于指明指令的执行(),它是一个典型的()逻辑电路,从一个节拍状态变至下一个节拍状态时,同时翻转的触发器数目以尽可能的()为好。A.快 B.时序 C.多 D.组合 E.数据 F.控制 G.类型 H.少 I.次序 J.状态 K.过程 L.步骤答案:L B H,8位教学机应选用的控制信号:一共有33位控制信号:24位用于运算器 3位用于内存和I/O接口 3位用于内部总线 3位用于几个特定寄存器,典型指令各节拍设计结果说明加法指令 ADD R0,R1;双操作数指令,R0R0+R1 节拍状态0100(参见教材P129表中第6行)指令格式

42、:0000 DR,SRI2I0 001 数据组合为A、B,ALU的R=A,S=BI5I3 000 运算功能为R+SI8I6 011 选择ALU的运算结果F送到B地址指定 的寄存器R0中去,SST 001 运算指令的特征标志送状态寄存器SSH 000 无移位操作SCi 00 ALU最低位进位为0A口 0001 选择R1寄存器(来自IR1、IR0)B口 0000 选择R0寄存器(来自IR3、IR2)/MIO REQ/WE 100 无内存和 I/O操作,学习指令流程表的基本方法:比较透彻的学懂设计一条节拍中所使用的控制信号取指的过程;剩下来的事情,重点是看清通类指令与这条指令在操作功能上的区别,以及

43、由此引发而来的所使用的控制信号取值的变化情况。例如:减法指令 SUB R0,R1,减法指令 SUB R0,R1;双操作数指令,节拍状态0100,R0R0R1指令格式:0001 DR,SRI2I0 001 数据组合为A、B,ALU的R=A,S=BI5I3 001 运算功能为SRI8I6 011 选择ALU的运算结果F送到B地址指定的寄存器R0中去SST 001 运算指令的特征标志送状态寄存器SSH 000 无移位操作SCi 00 ALU最低位进位为0A口 0001 选择R1寄存器(来自IR1、IR0)B口 0000 选择R0寄存器(来自IR3、IR2)/MIO REQ/WE 100 无内存和 I

44、/O操作只需将I5I3改为001,其它控制信号不变。,实验时如何正确处理扩展指令与已有指令的关系:(1)在指令格式、指令分组等安排上,新设计的指令应该和已有的指令基本相同,至少不能相互冲突;(2)对新设计的指令,只实现其流程中具体执行步骤的控制信号,读取指令、检查中断请求等共同操作部分使用已有指令中提供的控制信号;(3)节拍发生器可能需要变化和修改,例如增加一个节拍状态,但不能破坏原有指令的执行;(4)新老指令应该在同一个程序中正常执行。,微程序控制器基本运行原理:通过微指令地址的衔接区分执行步骤,应提供的控制信号是从控制存储器读出来的,并通过一个微指令寄存器送到被控制器件。缺点:运行速度慢优

45、点:设计与实现简单,易于用于实现系列计算机产品的控制器,理论上可实现动态微程序设计。,微程序控制器的组成:(1)序计数器PC,用于保存一条指令在内存中的地址;(2)指令寄存器IR,用于保存从内存读出的指令内容;(3)脉冲源和启停控制逻辑、节拍发生器,前者向计算机各部件提供连续(单个)的主振脉冲,后者用于标记每个指令的执行步骤的相对次序关系。(4)控制存储器,存储按一定规则组织好的全部控制信号。,得到下一条微指令地址的核心技术:通常有以下5种得到下一条微指令地址的方式:(1)微程序顺序执行时,下地址为本条微地址加1。(2)在微程序必定转向某一微地址时,可以在微指令中的相关字段中给出该地址值。(3

46、)按微指令(上一条或本条)的某一执行结果的状态,选择顺序执行或转向某一地址。(4)从微堆栈中取出从微子程序返回到微主程序断点的返回地址,用于微子程序返回处理。(5)依条件判断转向多条微指令地址中的某一地址控制。,8简述计算机的控制器的功能和基本组成。说明计算机的组合逻辑控制器和微程序控制器在组成和运行原理两个方面的同异之处,比较它们的优缺点。答案:计算机的控制器的基本功能是提供计算机各个部件协同运行所需要的控制信号,组成部分都有程序计数器PC,指令寄存器IR,脉冲源和启停控制逻辑,时序控制信号产生部件。共同点:组合逻辑的控制器和微程序的控制器是计算机中两种不同类型的控制器,其共同点是:基本功能

47、都是提供计算机各个部件协同运行所需要的答案:控制信号,组成部分都有程序计数器PC,指令寄存器IR,都分成几个执行步骤完成每一条指令的具体功能;,不同点主要表现在:处理指令执行步骤的办法,提供控制信号的方案不一样,组合逻辑控制器是用节拍发生器指明指令执行步骤,用组合逻辑电路直接给出应提供的控制信号,其优点是运行速度明显地快,缺点是设计与实现复杂些,但随着大规模现场可编程集成电路的出现,该缺点已得到很大缓解;微程序的控制器是通过微指令地址的衔接区分指令执行步骤,应提供的控制信号是从控制存储器中读出来的,并经过一个微指令寄存器送到被控制部件的,其缺点是运行速度要慢一些,优点是设计与实现简单些,易于用

48、于实现系列计算机产品的控制器,理论上可实现动态微程序设计。,第4章 多级结构的存储器系统一、了解多级存储器系统的基本组成,第四章 多级结构的存储系统,4.1 多级结构存储系统概述,主存储器,三级结构的存储系统,采用多级结构存储系统的目的 通过把读写速度高,但容量小、存储的单位成本最高的高速缓冲存储器(Cache)与读写速度略慢、但容量可以更大、价格适中的主存储器,和读写速度最慢、但容量可以极大、存储价格最低的高速磁盘空间(虚拟存储器),组合成统一管理与调度的一体化的存储器系统,以便达到高速度、大容量、低价格的目的,即得到具有更高的运行性能/价格比的存储器系统。,三级结构的存储系统的运行原理 三

49、级结构的存储系统的运行原理是建立在程序运行的局部性原理之上的。程序运行的局部性原理主要体现在以下三个方面:(1)时间方面:在一小段时间内,最近被访问过的程序和数据很可能再次被访问。(2)空间方面:这些最近被访问过的程序和数据,往往集中在一小片存储区中。(3)指令执行顺序方面:指令顺序执行比转移执行的可能性要大(大约5:1)。,多级结构存储系统的一致性原则和包含性原则 一致性原则:同一个信息会同时存放在几个级别的存储器中,此时,这一信息在几个级别的存储器中必须保持相同的值。包含性原则:处于内层(更靠近CPU)存储器中的信息一定被包含在各外层的存储器中,即内层存储器的全部信息一定是各外层存储器中所

50、存信息中一小部分的副本。例如,高速缓冲存储器中的信息,肯定也存放在主存中,还存放在虚拟存储器中,但主存储器中的非常多的信息不会同时在高速缓冲存储器中,虚拟存储器中的更多的信息也不会同时出现在主存储器中。,每一层存储器所用的存储器介质:高速缓冲存储器静态存储芯片主存储器动态存储器芯片虚拟存储器快速磁盘设备,1说明采用多级结构的存储器系统的目的是什么?它应用是建立在程序的什么特性之上?说明每一层存储器所用的存储介质的种类。答:通过把读写速度高,但容量小、存储的单位成本最高的高速缓冲存储器(Cache)与读写速度略慢、但容量可以更大、价格适中的主存储器,和读写速度最慢、但容量可以极大、存储价格最低的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号