计算机体系结构课后习题(共51页)_第1页
计算机体系结构课后习题(共51页)_第2页
计算机体系结构课后习题(共51页)_第3页
计算机体系结构课后习题(共51页)_第4页
计算机体系结构课后习题(共51页)_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.5 课后习题(xt)1.1 概述电子计算机的发展经过(jnggu)了哪几代?各代的基本特征是什么?1.2 计算机软件包括(boku)哪几类?各部件的作用是什么?1.3 简述冯诺依曼计算机的特点。1.4 计算机硬件有哪些部件,各部件的作用是什么?1.5 计算机系统从功能上可划分为哪些层次?各层次在计算机系统中起什么作用?1.6 简述存储程序计算机在体系结构上的主要特点并对其特点进行简要的分析。1.7 解释下列英文缩写的含义:CPU、M.M、PC、 CU、 ALU、 ACC、 MQ、 MAR、 MDR、 I/O、ISA、 MIPS、CPI、 FLOPS1.8 什么是CPU?什么是存储容量?什么

2、是机器字长?1.9 指令和数据均存放内存中,CPU如何从时间和空间区分它们是指令还是数据?课后习题答案1.1 (1)第一代电子管计算机采用十进制运算,电路结构十分复杂,体积庞大,占了相当大的空间,耗电量也很大。而且需用手工搬动开关和拔、插电缆来编制程序,使用极不方便。 (2)第二代晶体管计算机具有体积小、低耗电以及载流子高速运行的特点,使真空管望尘莫及。(3)第三代集成电路计算机利用光刻技术把晶体管、电阻、电容等构成的单个电路制作在一块极小的硅片上。进一步发展,实现了将成百上千这样的门电路全部制作在一块极小(如几个平方毫米)的硅片上,并引出与外部连接的引线,这样,一次便能制作成成百上千相同的门

3、电路,又一次大大地缩小了计算机的体积,大幅度下降了耗电量,极大地提高了机器的可靠性。1.2 计算机的软件通常又可以分为两大类:系统软件和应用软件。 系统软件又称为系统程序,主要用来管理整个计算机系统,监视服务,使系统资源得到合理调度,确保高效运行。应用软件又称为应用程序,它是用户根据任务需要所编制的各种程序。1.3 冯诺依曼计算机的特点是:计算机由运算器、存储器、控制器和输入设备、输出设备五大部件组成。指令和数据以同等地位存放于存储器内,并可按地址寻访。指令和数据均用二进制码表示。指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数所在存储器中的位置。指令在存储器内按顺序存

4、放。通常,指令是顺序执行的,在特定条件(tiojin)下,可根据运算结果或根据设定的条件改变执行顺序。机器以运算器为中心。输入输出设备与存储器的数据传送(chun sn)通过运算器。1.4 ALU (Arithmetic Logic Unit)叫做算术(sunsh)逻辑运算单元(简称算术逻辑部件),用来完成算术逻辑运算。CU (Control Unit)叫做控制单元,用来解释存储器中的指令,并发出各种操作命令来执行指令。ALU和CU是CPU的核心部件。 I/O设备也受CU控制,用来完成相应的输入、输出操作。1.5 第1级是微程序机器级,其机器语言是微指令集,工作于该级的程序员实际上是计算机系统

5、的设计人员,他们使用微程序解释机器指令系统、实际上是实现计算机指令集中每一条指令的功能。第2级是传统机器级。它所提供的是那些计算机硬件可以读懂并可直接操纵计算机硬件工作的二进制信息。第3级是操作系统虚拟机。从操作系统的基本功能来看,一方面它要直接管理传统机器中的软、硬件资源,另一方面它又是传统机器的引申。第4级是汇编语言虚拟机。这一级的机器语言是汇编语言,用汇编语言编写的程序,首先要翻译成第3级和第2级语言,然后再由相应的机器执行。第5级是高级语言虚拟机。这一级的机器语言就是各种高级语言。第6级是应用语言虚拟机。这一级是为使计算机满足某种特殊用途而专门设计的,因此这一级语言就是各种面向问题的应

6、用语言。1.6 存储程序计算机在体系结构上的主要特点是: 机器以运算器为中心。 采用存储程序原理。 存储器是按地址访问的、线性编址的空间。 控制流由指令流产生。 指令由操作码和地址码组成。 数据以二进制编码表示,采用二进制方式运算。对其特点的分析:(1)分布的输入输出处理能力存储程序计算机以运算器为中心,所有部件的操作都由控制器集中控制,这一特点带来了慢速输入/出操作占用快速运算器的矛盾。(2)保护的存储器空间虽然传统存储程序计算机的存储程序原理现在仍为大多数计算机所采用,但对于是否把指令和数据放在同一存储器中这一点,不同的计算机却有不同的考虑。(3)存储器组织结构的发展按地址访问的存储器具有

7、结构简单、价格便宜、存取速度快等优点。但是在数据处理时,往往要求查找在内容上具有某种特点的信息。(4)并行处理技术传统的存储程序计算机解题算法是顺序型的,即使问题本身可以并行处理,由于程序的执行受程序计数器控制,故只能是串行、顺序地执行。(5)指令集的发展指令集是传统机器程序员所看到机器的主要属性。指令仍由操作码和地址(dzh)码两部分组成,它会在两个方面对计算机体系结构设计产生重大影响,一是指令集的功能,二是指令的地址空间和寻址方式。1.7 解:全面的回答(hud)应分英文全称、中文名、中文解释三部分。CPUCentralProcessingUnit,中央(zhngyng)处理机(器)。M.

8、M Main Memory ,主存储器。PCProgramCounter,程序计数器,存放当前欲执行指令的地址,并可自动计数形成下一条指令地址的计数器。CUControlUnit,控制单元(部件),控制器中产生微操作命令序列的部件,为控制器的核心部件。ALUArithmeticLogicUnit,算术逻辑运算单元,运算器中完成算术逻辑运算的逻辑部。ACCAccumulator,累加器,运算器中运算前存放操作数、运算后存放运算结果的寄存器。MQMultiplier-QuotientRegister,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。MARMemoryAddressRegist

9、er,存储器地址寄存器,内存中用来存放想要访问存储单元地址的寄存器。MDRMemoryDataRegister,存储器数据缓冲寄存器,主存中用来存放从某单元读出、或写入某存储单元数据的寄存器。I/OInput/outputequipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送。ISAinstruction set architecture,ISA,指令集结构。MIPSMillionInstructionPerSecond,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位。CPI Cycle Per Instruction,执行一条指令所需的

10、时钟周期(主频的倒数)数。FLOPSFloating Point Operation Per Second,每秒浮点运算次数来衡量运算速度。1.8 CPU中央处理器(机),是计算机硬件的核心部件,由运算器+控制器组成;(早期的运、控不在同一芯片上)。存储容量存储器中可存二进制代码的总量;(通常主、辅助存储容量分开描述)。机器字长CPU能同时处理的数据位数。1.9 解:计算机区分(qfn)指令和数据有以下2种方法(fngf):通过不同(b tn)的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。 通过地址来源区分,由PC提供存储单

11、元地址的取出的是指令,由指令地址码这部分提供存储单元地址的取出的是操作数。2.7 课后习题2.1 已知:a=+2,b=2,根据定义求a和b的反码、。设n=8。2.2 已知:a=+2,b=2,根据定义求a和b的反码、。设n=8。2.3 已知:a=+2,b=2,根据定义求a和b的补码、。设n=8。2.4 已知:,求。2.5 已知:,求。2.6 将下列二进制数转换为八进制和十六进制 (1)10011100 (2)111010012.7 将下列二进制数转换为三十二进制 (1)1111010101 (2)11101111112.8 将下列十进制小数转换为二进制小数(1)0.375 (2)0.81252.

12、9 以下列形式表示(5382)10(1)8421 码 ; (2)余3 码 ;(3)2421 码 ; (4)二进制数。2.10 对下列 ASCII码进行译码 :1001001, 0100001,1100001,11101111000101, 1010000,1010111,0100100课后习题答案2.1 根据公式有: = a= (0000 0010)2; = 2n-1b = 28-1(2) = 27+2 = 1000 0000 + 10 =(1000 0010)2。2.2 根据(gnj)公式有:a反 = a= (0000 0010)2; b反= 2n | b | 1= 28|2| 1=283=

13、 1 0000 0000 11=(1111 1101)2。2.3 根据(gnj)公式有:a补 = a= (0000 0010)2; b补= 2n | b | = 28|2| = 28 2 =1 0000 0000 10= (1111 1110)22.4即,所以(suy)2.5即,所以2.6 (1)(234)8 (9C)16 (2)(351)8 (E9)162.7 (1)(XM)32 (2)(WY)322.8 (1)(0.011)2 (2)(0.1101)2 2.9 (1)0101 0011 1000 0010。(2)1000 0110 1011 0101。(3)1011 0011 1110 0

14、010。(4)1010100000110 。2.10 ASCII 码译码分别为 I,!,a,w,E,P,W,。3.12 课后习题3.1下列函数当变量(A,B,C,)取哪些值时,F的值为1。(1) (2)(3)(4) (5)3.2用卡诺图法(t f)将下列函数化为最简“与或”表达式:(1)(2)(3)(4)3.3求下列(xili)函数的最简“或与”式:(1)(2)3.4已知的全部(qunb)质蕴涵为。求F的最简与或式。要求:列质蕴涵表,找必要质蕴涵,列简化的质蕴涵表,找最小质蕴涵覆盖。3.5用卡诺图化简如下函数,并列出它们的质蕴涵项和必要质蕴涵项:(1)(2)3.6分别用与非门、或非门设计如下逻

15、辑电路:(1)三变量的非一致电路;(2)三变量的偶数电路;(3)全减器。3.7自选门电路设计一个比较两个三位二进制数A及B的电路,要求当A=B时,输出F=1。3.8设输入ABCD是按余3码编码的二进制数码,其相应的十进制数为x,即 要求用与非门设计当或时,输出的逻辑电路。3.9用与非门设计一个将余3码转换成8421BCD码的转换电路。3.10用与非门设计一个将2421码转换成8421BCD码的转换电路。3.11用与非门设计一个将余3码转换成七段数字显示器代码的转换电路。3.12构成一个D触发器需要多少个晶体管?3.13如图3.105所示,Ben在一个D锁存器和一个D触发器上给定D和CLK输入。

16、帮助Ben确定每一种设计下Q的输出值。 Q(锁存器) Q(触发器)图3.105图3.1063.14 如图3.107所示哪些(nxi)电路是同步时序电路?图3.1073.15 Ben设计(shj)了如图3.108所示的电路。根据组件的数据(shj)手册,触发器的时钟到Q最小延迟和传输延迟分别为30ps和80ps。它们的建立时间和保持时间分别为50ps和60ps。每一个逻辑门的传输延迟和最小延迟分别为40ps和25ps。帮助Ben确定最大的时钟周期,是否能满足保持时间约束。这个过程被称为时序分析。图3.1083.16 试分析(fnx)如下图3.109所示的电平(din pn)异步时序电路。(1)写

17、出激励函数及输出(shch)函数(2)列出流程表(3)画出时间图图3.109 电平异步时序电路3.17 分析下图3.110所示的异步时序电路。图3.110 异步时序电路(1)写出激励函数及输出函数(2)列出流程表(3)画出时间图3.18 分析下图3.111所示的脉冲异步时序电路。图3.111 脉冲(michng)异步时序电路求: (1)激励函数和输出(shch)函数(2)激励矩阵(j zhn)和输出矩阵(3)求Y-Z矩阵(4)画状态图(5)文字说明课后习题答案3.1解:(1)A=B=1或A=0,C=1(2)A=1,B=0,或A=0,B=1(3)A=1(4)A=0,B=1或C=0或D=0(5)A

18、=0,B=0或B=0,C=13.2解:(1)(2)(3)(4)3.3解:(1)(2)3.4解:3.5解:(1),均为必要质蕴涵。(2),除外,均为必要质蕴涵。3.6解:逻辑表达式为:(1)(2)(3)3.7解:电路(dinl)的逻辑表达式为:3.8解:,电路(dinl)略3.9解:,电路(dinl)略。3.10解: 3.11解:,电路略3.12 解: 构成一个与非门或者一个或非门需要4个晶体管。一个非门需要用两个晶体管。一个与非门可以由一个与非门和一个非门组成,所以,需要6个晶体管。一个SR锁存器需要用2个或非门,或8个晶体管。一个D锁存器由一个SR锁存器、2个与门和一个非门组成,即22个晶体

19、管。D触发器由2个D锁存器和一个非门组成。3.13 解: 图3.106给出了输出波形。假设在相应输入值变化时,输出Q上有一个小的延迟。箭头表示导致输出改变的原因。Q的起始值未知,可能是0或者1,用一对水平线表示。首先考虑S锁存器。在第一个CLK的上升沿,D = 0,所以Q肯定变成0。当CLK = 1,每一次D的改变都会导致Q的改变。当CLK = 0,D改变,而Q不变。接着考虑D触发器。在每一个CLK时钟上升沿到来时,D被复制到Q。在其他时间,Q保持原来的状态不变。3.14 解:电路图3.107(a)是组合逻辑电路,不是时序逻辑电路,因为它没有一个寄存器。电路图3.107(b)是一个不带反馈回路

20、的简单时序电路。电路图3.107(c)既不是组合电路也不是时序电路,因为它有一个锁存器,这个锁存器既不是寄存器也不是组合逻辑电路。电路图3.107(d)和电路图3.107(e)是同步时序逻辑电路;它们是有限状态机的两种形式,电路图3.107(f)既不是组合电路也不是时序电路,因为它有一个从组合电路的输出端电路反馈到同一逻辑电路输入端的回路,但是在回路上没有寄存器。电路图3.107(g)是同步时序逻辑电路的流水线形式。电路图3.107(h)严格的说不是一个同步时序电路,因为两个寄存器的时钟信号不同,它们之间有两个反相器的延迟。3.15 解:如图3.112(a)所示,当信号(xnho)变化时的波形

21、图。输入A到D被寄存(jcn),所以它们只在CLK上升后立刻(lk)改变。关键路径发生在B = 0,C = 0,D = 0,且A从0上升为1,触发n1上升,X上升,Y下降,如图3.112(b)所示。这条路径含有2个门的延迟。对于关键路径,我们假定对于每一个门都需要它全部的传输延迟。Y必须在下一个时钟上升沿到来之前建立。所以最小的周期是最大的时钟频率是fc = 1/Tc = 4Ghz在最短路径上,当A = 0,C上升,导致X上升,如图3.112(c)所示。对于最短路径,我们假定每个逻辑门仅在最小延迟之后反转。这条路径只包含一个门店延迟,所以它将在tccq + tcd = 30 + 25 = 55

22、ps之后发生。但是这个触发器需要60ps的保持时间,意味着X必须在时钟上升沿到来之后的60ps内保持稳定,X触发器才能可靠地对它的值进行采样。在这种情况下,在第一个时钟上升沿的时候,X= 0,所以我们希望触发器捕获X = 0。因为X不能保持稳定的状态足够长的时间,所以X的实际值不可预测。这个电路违反了保持时间约束,在任何时钟频率下其他动作都可能不正确。图3.112 波形图3.16 答:(1)该电路的延时反馈结构于图3.109中(b),其激励函数和输出函数为:(2)由于这里激励函数就是Y矩阵,故由激励函数和输出函数可以直接列出Y-Z矩阵,即得二进制流程表,如下图所示。其中次态与现态相同的状态为稳

23、态,加上圈。x1x2 y000111100 EQ oac(,0) EQ oac(,0) EQ oac(,0)110 EQ oac(,1) EQ oac(,1) EQ oac(,1)(3)根据(gnj)流程图和给定的输入x1和x2的波形(b xn),可画出t0t1时刻(shk)的现态y、次态Y和输出Z的波形,如图3.113所示。图中,次态Y是没有延时的,而现态y延时了t。由图可见,由于反馈环节延时t的存在,Y与y不一致时为不稳定总态,Y与y相同时为稳定总态。图3.113 t0t1时刻的现态y、次态Y和输出Z的波形图3.17 答:(1)该电路没有单独的输出变量,Y1Y2可以作为电路的输出。其激励函

24、数为:(2)分别画出Y1和Y2的卡诺图,再合并而得流程表,如下图所示。流程表中每行现态与次态的总态为稳态,画上圈。x1x2y1y20001101100111010110111 EQ oac(,01) EQ oac(,01)1111 EQ oac(,11)0110 EQ oac(,11)1011 EQ oac(,10) EQ oac(,10)11(3)根据输入输入x1和x2的波形,可画出t0t6时刻的时间图和总态图,如图3.114所示。图3.114 时间(shjin)图和总态图3.18 答:(1)激励函数和输出(shch)函数 (2)激励矩阵(j zhn)和输出矩阵分别画出CP2,D2,CP1,

25、D1的卡诺图,并且合并后画在一个图上,即得激励矩阵,如图3.115所示。xy2y1010001011101010000100011000010101001011111(a)激励矩阵CP2,D2,CP1,D1xy2y1010000010011011000(b)输出矩阵Z图3.115 激励和输出矩阵(3)求Y-Z矩阵由现态y2和输入激励CP2,D2可确定触发器的次态Y2;由现态y1和输入激励CP1,D1可确定触发器的次态Y1。如图3.116所示。xy2y1010000,010,00101,001,01111,000,11010,011,0图3.116 Y2Y1Z矩阵(4)画状态图实际上,Y-Z矩阵

26、就是二进制状态表,据此可画出状态图,如图3.117所示。图3.117 状态图(5)文字说明从状态图可看出(kn ch),这是一个模3计数器。当x=1时,按00-10-11的序列(xli)计数。当x=0时,不计数(j sh)。4.8 课后习题4.1设浮点数格式为:阶码5位(含1位阶符),尾数11位(含1位数符),当阶码基值分别取2和16时: (1)说明2和16在浮点数中如何表示。 (2)基值不同对浮点数什么有影响?4.2 x=0.1011,y=0.0101 求x + y=?4.3 =0.001 0010,=1.100 1100,求=?4.4 =1 010 1001,=0 011 0101,=1

27、100 1011,求=?有无溢出?4.5反码加法运算,令X=1000,Y=1001,求。4.6补码减法运算,令X=0111,Y=1011求。4.7 X=1011,Y=1001,求。4.8 X=0.0001,Y=0.1001,求 =?4.9 已知:X=0.1011,Y=0.1101,求 = (用加减交替法解) ?4.10 两浮点数X=2+0100.110100,Y=2+100(-0.101010),求X+Y?课后习题答案4.1解:(1)阶码基值不论取何值,在浮点数中均为隐含表示,即:2和16不出现(chxin)在浮点格式中,仅为人为的约定。(2)当基值不同时,对数的表示范围和精度都有影响。即:在

28、浮点格式(g shi)不变的情况下,基越大,可表示的浮点数范围越大,但浮点数精度越低。4.2解:,所以(suy)x + y=+0.11104.3 解:= 0.0010010 + 1.1001100 = 1.1011110 无溢出4.4 解:= 1 0101001 + 1 1001011 = 0 1110100 溢出4.5 解:=1000+1001反=0111+0110=11014.6 解:=1011-0111补=0100补=11004.7 解:=1011-1001补=(0010)补=11104.8 解:1.1110, 1.0110,所以 =(0.1000)反=1.01114.9 解:X=0.1

29、011,Y=0.1101,-Y=1.0011 被除数(余数)商说明 0.1011+ 1.00110.0000+-Y补(减除数) 1.1110 1.1100 +0.1101 0 0余数为负,上商01位+Y补(加除数) 0.1001 1.0010+1.00110101余数为正,上商11位+-Y补(减除数) 0.01010.1010+ 1.0011 011 011 余数为正,上商11位+-Y补(减除数)1.11011.1010+0.110101100110余数为负,上商01位+(加除数)0.011101101余数为正,上商1=0.1101,余数为:0.01112-44.10 解:阶码取三位,尾数(w

30、ish)取6位(均不包括(boku)符号位),机器表示的形式分别为 =0010 0110100 =0100 1010110 1.对阶:先求阶差(两阶(lin ji)码的补码相减) 00 100 +11 100 11 110 的阶码增大成0100,尾数右移两位,即=0100 00011012.尾数相加00.001101+11.0101110 11.100011 相加结果为0100 1 1000113.规格化最高有效位与符号位相同,需要左移,所以结果应为:=0011 1 000110X+Y=2+011(-0.111010)5.12 课后习题5.1 解释下列术语操作数RISI 、CISI零地址指令、

31、指令集的并行处理、有效地址、指令集结构的正交特性。5.2 简述操作数的类型及其相应的表示方法。5.3 简述CISC指令集结构功能设计的主要目标。从当前的计算机技术观点来看,CISC指令集结构的计算机有什么缺点?5.4 计算机指令格式有哪几种类型请一一列举出来并简述其特点。5.5 指令集结构设计所涉及的内容有哪些?5.6 计算机寻址方式有哪几种?并简述每种寻址方式的特点。5.7 写出把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令。要求使用以下几种寻址方式:(1)寄存器间接寻址(2)寄存器相对寻址(3)基址(j zh)变址寻址5.8 什么(shn me)是指令周期? 什么(shn me

32、)是CPU 周期? 它们之间有什么关系?5.9 指令集应满足那几个基本要求?5.10 根据CPU性能公式,简述RISC和CISC的性能特点。5.11 某机CPU 芯片的主振频率为8MHz ,其时钟周期是多少s? 若已知每个机器周期平均包含4个时钟周期,该机的平均指令执行速度为0.8MIPS ,试问:(1)平均指令周期是多少s ?(2)平均每个指令周期含有多少个机器周期?(3)若改用时钟周期为0.4s 的CPU 芯片,则计算机的平均指令执行速度又是多少MIPS ?(4)若要得到40 万次s 的指令执行速度,则应采用主振频率为多少MHz 的CPU芯片?5.12 现有如下C语言源代码:For(i=0

33、;i=100;i+) Ai=Bi+C;其中,A和B是两个32位整数的数组;C和i均是32位整数。假设所有数据的值及其地址均保存在存储器中,A和B的起始地址分別是1 500和2 000。在循环的两次迭代之间不将任何数保存在寄存器中。(1)请写出该C语言源程序的DLX实现代码。(2)该程序段共执行了多少条指令?(3)程序对存储器中的数据访问了多少次? (4)代码的大小是多少?课后习题答案5.1解: 操作数: 是 HYPERLINK /view/786118.htm t _blank 计算机指令中的一个组成部分,它规定了指令中进行数字运算的量。 RISC:精简指令集计算机 CISC:复杂指令集计算机

34、 零地址指令 :指令系统中的一种不设地址字段的指令指令集的并行处理:同时执行多个任务或多条指令或同时对多个 HYPERLINK /view/178581.htm t _blank 数据项进行处理的计算机系统有效地址:有效地址EA是一16位无符号数,表示 HYPERLINK /view/420846.htm t _blank 操作数所在单元到段首的距离即 HYPERLINK /view/893778.htm t _blank 逻辑地址的 HYPERLINK /view/883224.htm t _blank 偏移地址指令集结构的正交特性:任何指令可以访问整个寄存器文件的任意寄存器。它也允许每一个

35、指令,使用任何可用的寻址方式访问数据存储器。5.2解:操作数的类型主要有:整数(定点)、浮点、十进制、字符、字符串、向量、堆栈等。对这些操作数类型的表示主要有如下两种方法:1.操作数的类型可以由操作码的编码指定,这也是最常见的一种方法;2.数据可以附上由硬件解释的标记,由这些标记指定操作数的类型,从而选择适当的运算。然而有标记数据的机器却非常少见。5.3解:CISC结构追求的目标是强化指令功能,减少(jinsho)程序的指令条数,以达到提高性能的目的。从目前的计算机技术观点来看,CISC结构存在(cnzi)以下几个缺点:(1)在CISC结构的指令(zhlng)系统中,各种指令的使用频率相差悬殊

36、。(2)CISC结构的指令系统的复杂性带来了计算机体系结构的复杂性,这不仅增加了研制时间和成本,而且还容易造成设计错误。(3)CISC结构的指令系统的复杂性给VLSI设计带来了很大负担,不利于单片集成。(4)CISC结构的指令系统中,许多复杂指令需要很复杂的操作,因而运行速度慢。(5)在结构的指令系统中,由于各条指令的功能不均衡性,不利于采用先进的计算5.4解:指令格式一般有Pentium指令系统(教科书上的),一般包括5种三地址指令:一般地址域中A1、A2分别确定第一、第二操作数地址,A3确定结果地址。下一条指令的地址通常由程序计数器按顺序给出。二地址指令:地址域中A1确定第一操作数地址,A

37、2同时确定第二操作数地址和结果地址。单地址指令:地址域中A 确定第一操作数地址。固定使用某个寄存器存放第二操作数和操作结果。因而在指令中隐含了它们的地址。零地址指令:在堆栈型计算机中,操作数一般存放在下推堆栈顶的两个单元中,结果又放入栈顶,地址均被隐含,因而大多数指令只有操作码而没有地址域。可变地址数指令:地址域所涉及的地址的数量随操作定义而改变。如有的计算机的指令中的地址数可少至 0个,多至6个。5.5解:1) 指令集功能设计: 主要有RISC和CISC两种技术发展方向;2) 寻址方式的设计: 设置寻址方式可以通过对基准程序进行测试统计,查看各种寻址方式的使用频度,根据使用频度设置相应必要的

38、寻址方式;3) 操作数表示和操作数类型:主要的操作数类型和操作数表示的选择有浮点数据类型(可以采用IEEE754标准)、整形数据类型(8位、16位、32位的表示方法)、字符类型(8位)、十进制数据类型(压缩十进制和非压缩十进制数据表示)等等;4) 寻址方式的表示:可以将寻址方式编码于操作码中,也可将寻址方式用一个单独的域来表示;5) 指令集格式的设计:有固定长度编码方式、可变长编码方式和混合编码方式三种(sn zhn)选择。5.6解:立即寻址:指令的地址(dzh)字段指出的不是操作数的地址,而是操作数本身,这种寻址方式称为立即寻址。立即寻址方式的特点是指令执行时间很短,因为它不需要访问内存取数

39、,从而节省了访问内存的时间。直接寻址:直接寻址是一种基本的寻址方法,其特点是:在指令格式的地址的字段中直接指出(zh ch)操作数在内存的地址。由于操作数的地址直接给出而不需要经过某种变换,所以称这种寻址方式为直接寻址方式。间接寻址:间接寻址是相对直接寻址而言的,在间接寻址的情况下,指令地址字段中的形式地址不是操作数的真正地址,而是操作数地址的指示器,或者说此形式地址单元的内容才是操作数的有效地址。寄存器寻址方式和寄存器间接寻址方式:当操作数不放在内存中,而是放在CPU的通用寄存器中时,可采用寄存器寻址方式。显然,此时指令中给出的操作数地址不是内存的地址单元号,而是通用寄存器的编号(可以是8位

40、也可以是16位(AX,BX,CX,DX)。指令结构中的RR型指令,就是采用寄存器寻址方式的例子。寄存器间接寻址方式与寄存器寻址方式的区别在于:指令格式中的寄存器内容不是操作数,而是操作数的地址,该地址指明的操作数在内存中。相对寻址方式:相对寻址是把程序计数器PC的内容加上指令格式中的形式地址D而形成操作数的有效地址。程序计数器的内容就是当前指令的地址。“相对”寻址,就是相对于当前的指令地址而言。采用相对寻址方式的好处是程序员无须用指令的绝对地址编程,因而所编程序可以放在内存的任何地方。基址寻址方式:在基址寻址方式中将CPU中的基址寄存器的内容,加上指令格式中的形式地址而形成操作数的有效地址。基

41、址寻址的优点是可以扩大寻址能力,因为与形式地址相比,基址寄存器的位数可以设置得很长,从而可以在较大的存储空间中寻址。变址寻址方式:变址寻址方式与基址寻址方式计算有效地址的方法很相似,它把CPU中某个变址寄存器的内容与偏移量D相加来形成操作数有效地址。5.7 解:(1)使用寄存器间接寻址,把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令为: MOV BX,BLOCK ADD BX,12 MOV DX,BX(2)使用寄存器相对寻址,把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令为: MOV BX,BLOCK MOV DX,BX+12(3)使用基址(j zh)变址寻址,把首地址

42、为BLOCK的字数组的第6个字送到DX寄存器的指令(zhlng)为: MOV BX,BLOCK MOV SI,12 MOV DX,BX+SI5.8解:指令周期是指取指令、分析取数到执行指令所需的全部(qunb)时间。CPU 周期(机器周期)是完成一个基本操作的时间。一个指令周期划分为若干个CPU 周期。5.9 对指令集的基本要求是:完整性、规整性、高效率和兼容性。完整性: 指在一个有限可用的存储空间内,对于任何可解的问题,编制计算程序时,指令集所提供的指令够用。完整性要求指令集功能齐全、使用方便。规整性:主要包括对称性和均匀性。对称性是指所有与指令集有关的存储单元的使用、操作码的设置等都是对称

43、的。均匀性是指对于各种不同的操作数类型、字长、操作种类和数据存储单元,指令的设置都要同等对待。高效率:指令的执行速度快、使用频率高。在RISC机体系结构中,大多数指令都能在一个节拍内完成,而且只设置使用频率高的指令。兼容性:系列机各机种之间具有相同的基本结构和共同的基本指令集,因而,指令系统是兼容的,即各机种上基本软件可以通用。5.10解:CPU性能公式: CPU时间ICCPI时钟周期时间,即CPU的性能取决于IC、CPI和时钟周期。(IC:所执行的指令条数;CPI=执行程序所需的时钟周期数/IC)对于RISC 机器,由于它实现的指令较少,并且都比较简单,CPI 比较小,而且硬件电路设计简单,

44、有利于提高时钟频率,从CPI 和时钟频率上都降低了CPU 时间,提高了性能。而CISC 处理器提供了很多复杂的指令,有效的减少了IC,从而提高CPU 性能,但复杂指令CPI都较大,而且硬件实现复杂,不利于CPU 时钟频率的提高。5.11解:时钟周期=18MHz=0.125s(1) 平均指令周期=10.8MIPS=1.25s(2) 机器周期=0.125s4=0.5s平均每个指令周期的机器周期数=1.25s0.5s4=2.5(3) 平均指令执行速度=10.442.5=0.25MIPS(4) 主振频率4MHz5.12解:(1)ADDIR1,R0,#1; 初始化iSW2000(R0),R1; 存储iL

45、oop :LWR1,2000(R0); 得到i的值MULTR2,R1,#4; R2 = B的字偏移ADDIR3,R2,#5000; 对R2加上基址LWR4,0(R3); LD Bi的值LWR5,1500(R0); LD C的值ADDR6, R4, R5; Bi + CLWR1,2000(R0); 得到(d do)i的值MULTR2,R1,#4; R2 = A的字偏移(pin y)ADDIR7,R2,#0; 对R2加上基址(j zh)SW0(R7), R6; Ai 1时,n+32n+2,可见四级流水线耗时比二级流水线耗时短,因此更能提高处理器速度。6.9答: INTR中断请求触发器,用来登记中断

46、源发出的随机性中断请求信号,以便为CPU查询中断及中断排队判优线路提供稳定的中断请求信号。EINT中断允许触发器,CPU中的中断总开关。当EINT=1时,表示允许中断(开中断),当EINT=0时,表示禁止中断(关中断)。其状态可由开、关中断等指令设置。INT中断标记触发器,控制器时序系统中周期状态分配电路的一部分,表示中断周期标记。当INT=1时,进入中断周期,执行中断隐指令的操作。6.10答:A、B、C、D的响优先级即处理(chl)优先级。CPU执行程序的轨迹(guj)图如下:7.13 课后习题(xt)7.1 简述“cache-主存”层次与“主存-辅存”层次的区别?7.2 地址映像方法有哪几

47、种? 它们各自有什么优缺点?7.3 简述采用二级cache的基本思想。7.4 通过编译器对程序优化来改进cache性能的方法有哪几种?简述其基本思想。7.5 在设计cache是并非都采用虚拟cache,为什么?7.6 VAX-11/780在cache 命中的指令平均执行时间是9.5时钟周期,cache不命中时间是5个时钟周期。假设不命中率是12%,每条指令平均访存2.5次。试计算考虑了cache不命中的指令平均执行时间。它比cache命中时的指令平均执行时间延长了百分之几?7.7 我们考虑某一个机器。假设cache读不命中开销为25个时钟周期,写不命中开销为70个时钟周期,当不考虑存储器停顿时

48、,所有指令的执行时间都是2.0个时钟周期,cache的读不命中率均为4%,平均每条指令读存储器0.8次,写存储器0.5次。是分析考虑cache的不命中后,cache对性能的影响。7.8 假定存储系统在延迟30个时钟周期后,每2个时钟周期能送出16字节。即:经过32个时钟周期,它提供16字节;经过34个时钟周期,可提供32字节;依次类推。命中时间与块的大小无关,为一个时钟周期,分别计算下列各种容量的cache的平均访存时间。 (1)块大小(dxio)为32字节(z ji),cache容量(rngling)为1KB,不命中率为13.34%; (2)块大小为32字节,cache容量为4KB,不命中率

49、为7.24%; (3)块大小为64字节,cache容量为16KB,不命中率为2.26%; (4)块大小为128字节,cache容量为16KB,不命中率为2.77%;7.9 假设在3000次访存中,第一级cache不命中110次,第二级cache不命中55次。试问:在这种情况下,该cache系统的局部不命中率和全局不命中率各是多少?7.10 在三级cache中,第一级cache、第二级cache和第三极cache的局部不命中率分别为4%、30%和50%。它们的全局不命中率各是多少?7.11 假设一台计算机具有以下特性:(1)95%的访存在cache中命中;(2)块大小为两个字,且不命中是整个块被

50、调入; (3)CPU发出访存请求的速率为109字/秒;(4)25%的访存为写访问;(5)存储器的最大流量为109字/秒(包括读与写);(6)主存每次只能读或写一个字;(7)在任何时候,cache中有30%的块被修改过;(8)在失效时,cache采用写分配法;现欲给该计算机增添一台外设,为此首先想知道主存的频带已用了多少。试对于一下两种情况计算主存频带的平均使用比例。(1)写直达cache;(1)写回法cache;课后习题(xt)答案7.1 答: 存储层次比较项目“cache-主存”层次“主存-辅存”层次目的为了弥补主存速度的不足为了弥补主存容量的不足存储管理的实现全部由专用硬件实现主要有软件实

51、现访问速度的比值(第一级比第二级)几比一几万比一典型的块(页)大小十几个字节几百到几千个字节CPU对第二级的访问方式可直接访问均通过第一级不命中时CPU是否切换不切换切换到其他进程7.2 答:(1)全相联映像。实现(shxin)查找的机制复杂,代价高,速度慢。Cache空间(kngjin)的利用率较高,块冲突概率较低,因而cache的不命中率也低。(2)直接映像。实现查找的机制简单,速度快。Cache空间的利用率较低,块冲突概率较高,因而cache的不命中率也高。(3)组相联映像。组相联是直接映像和全相联的一种折中。7.3 答:通过在原有cache和存储器之间增加另一级cache,构成两级ca

52、che,可以把第一级cache做得足够小,使其速度和快速CPU的时钟周期相匹配,而把第二级cache做得足够大,使它能捕获更多本来需要到主存去的访问,从而降低实际不命中开销。7.4 答:(1)数组合并。通过提高空间局部性来减少不命中次数。有些程序同时用相同的索引来访问若干个数组的同一维,这些访问可能会相互干扰,导致冲突不命中,可以将这些相互独立的数组合并成一个复合数组,使得一个cache块中能包含全部所需元素。(2)内外循环交换。循环嵌套时,程序没有按数据在存储器中的顺序访问。只要简单地交换内外循环,就能使程序按数据在存储器中的存储顺序进行访问。(3)循环融合。有些程序含有几部分独立的程序段,

53、它们用相同的循环访问同样的数组,对相同的数据作不同(b tn)的运算。通过将它们融合成一个单一循环,能使读入cache的数据被替换出去(ch q)之前得到反复的使用。(4)分块。通过改进时间局部性来减少不命中。分块不是对数组的整行货整列进行访问,而是对子矩阵(j zhn)或块进行操作。7.5 原因:(1)每当进行进程切换时,由于新进程的虚拟地址(有可能与原进程的相同)所指向的物理空间与原进程的不同,故需要清空cache(2)操作系统和用户程序对于同一个物理地址可能采用两种以上不同形式的虚拟地址访问。它们可能会导致同一个数据在虚拟cache中存在两个副本。7.6 解:cache不命中是,512%

54、2.5=1.5。(1)考虑了cache不命中是的指令平均执行时间:9.5+1.5=11(时钟周期)(2)(11-9.5)/9.5=15.79%它比cache命中时的指令平均执行时间延长了15.79%。7.7 解:(1)平均每条指令存储器停顿时钟周期数=“读”的次数读不命中率读不命中开销+“写”的次数写不命中率写不命中开销=0.84%25+0.54%70=2.2(2)CPU时间=ICCPI+(存储停顿周期数/指令数)时钟周期时间(3)考虑cache的不命中后,性能为: CPU时间=IC(2.0+2.2)时钟周期时间 = IC4.2时钟周期时间当考虑了cache的不命中影响后,CPI从理想计算机的

55、2.0增加到4.2,是原来的2.1倍。7.8 解:平均访存时间 = 命中时间+不命中率不命中开销(1)平均访存时间 = 1 +(13.34%34)= 5.54个时钟周期(2)平均访存时间 = 1 + (7.24%34) = 3.462个时钟周期(3)不命中开销 = 30 + 64 /162 = 38 平均访存时间 = 1 +(2.64%38)= 2.003个时钟周期(4)不命中开销 = 30 + 128 /162 = 46 平均访存时间 = 1 +(2.77%46)= 2.274个时钟周期 7.9 解:第一级cache的不命中率(全局和局部)是110/3000,即3.67%;第二级cache的

56、局部不命中率是55/110,即50%,第二级cache的全局不命中率是55/3000,即1.83%。7.10 解:第一级cache的全局命中率 = 它的局部不命中率 = 4%第二级cache的全局不命中率 = 第一级cache的全局不命中率第二级cache局部不命中率 = 4%30%=1.2%第三级cache的全局不命中率 = 第一级cache的全局不命中率第二级cache局部不命中率第三级cache局部不命中率 = 4%30%50%=0.6%7.11 解:采用按写分配(1)写直达cache 访问命中,有两种情况: = 1 * GB3 读命中,不访问主存; = 2 * GB3 写命中,更新ca

57、che和主存,访问主存一次。访问不命中(mngzhng),有两种情况: = 1 * GB3 读不命中(mngzhng),将主存中的块调入cache中,访问(fngwn)主存两次; = 2 * GB3 写不命中,将要写的块调入cache,访问主存两次,再将修改的数据写入cache和主存,访问主存一次,共三次。上述分析如下所示:访问命中访问类型频率访问次数Y读95%75%=71.3%0Y写95%25%=23.8%1N读5%75%=3.8%2N写5%25%=1.3%3一次访存请求最后真正的平均访存次数 = (71.3%0)+(23.8%1)+(3.8%2)+(1.3%3)= 0.35已用带宽 = 0

58、.35109/109 =35.5%(2)写回法cache访问命中,有两种情况: = 1 * GB3 读命中,不访问主存; = 2 * GB3 写命中,不访问主存。采用写回法,只有当修改的cache块被换出时,才写入主存。访问不命中,有一个块将被换出,这也有两种情况: = 1 * GB3 如果被替换的块没有修改过,将主存中的块调入cache中,访问主存两次; = 2 * GB3 如果被替换的块修改过,则首先将修改的块写入主存,需要访问主存两次;然后将主存中的块调入cache块中,需要访问主存两次,共4次访问主存。访问命中块为脏频率访问次数YN95%70%=66.5%0YY95%30%=28.5%

59、0NN5%70%=3.5%2NY5%30%=1.5%4所以: 一次访存请求最后真正的平均访存次数 = 66.5%0 + 28.5%0 + 3.5%2 + 1.5%4 = 0.13 已用带宽(di kun) = 0.13109/109 = 13% 8.7 课后习题(xt)8.1 假设(jish)一台计算机的I/O处理时间(shjin)占响应时间的10%,当I/O性能保持不变,而对CPU的性能分别提高10倍和100倍时,计算机的系统总体性能会出现什么样的变化?8.2 假设磁盘子系统的组成部件和它们的MTTF如下:(1) 磁盘子系统由10 个磁盘构成,每个磁盘的MTTF 为1 000 000小时。(

60、2)个SCSI 控制器,其MTTF 为500 000小时。(3)个不间断电源,其MTTF 为200 00小时。(4) 个风扇,其MTTF 为200 000小时。(5)根SCSI 连线,其MTTF 为1 000 000小时。假定每个部件的正常工作时间服从指数分布,即部件的工作时间与故障出现的概率无关,同时假定各部件的故障是相互独立的,试计算整个系统的MTTF 。8.3 若某磁盘共有200个柱面,其编号为0199,假设已完成68号柱面的访问请求,正在为访问96号柱面的请求者服务,还有若干个请求者在等待服务,它们依次需要访问的柱面编号为:175,52,157,36,159、106,l 08,72,请

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论