您好,欢迎来到化拓教育网。
搜索
您的当前位置:首页计算机组成原理第五章答案

计算机组成原理第五章答案

来源:化拓教育网
第5章习题参

第5章习题参

1.请在括号内填入适当答案。在CPU中:

(1)保存当前正在执行的指令的寄存器是( IR ); (2)保存当前正在执行的指令地址的寄存器是( AR )

(3)算术逻辑运算结果通常放在( DR )和( 通用寄存器 )。 2.参见图5.15的数据通路。画出存数指令“STO Rl,(R2)”的指令周期流程图,其含义是将寄存器Rl的内容传送至(R2)为地址的主存单元中.标出各微操作信号序列。

解:

STO R1, (R2)的指令流程图及微操作信号序列如下:

1

第5章习题参

STO R1, (R2)(PC)→ARPCO, G, ARiR/W=RDRO, G, IRi(M)→DR(DR)→IR(R2)→AR(R1)→DR(DR)→MR2O, G, ARiR1O, G, DRiR/W=W~

3.参见图5.15的数据通路,画出取数指令“LAD (R3),R0\"的指令周期流程图,其含义是将(R3)为地址主存单元的内容取至寄存器R2中,标出各微操作控制信号序列。 解:

LAD R3, (R0)的指令流程图及为操作信号序列如下:

2

第5章习题参

LAD (R3), R0(PC)→AR(M)→DR(DR)→IRPCO, G, ARiR/W=RDRO, G, IRi(R3)→AR(M)→DR(DR)→R0R3O, G, ARiR/W=RDRO, G, R0i~

4.假设主脉冲源频率为10MHz,要求产生5个等间隔的节拍脉冲,试画出时序产生器的逻辑图. 解:

3

第5章习题参

5.如果在一个CPU周期中要产生3个节拍脉冲;Tl=200ns,T2=400ns,T3=200ns,试画出时序产生器逻辑图。

解:取节拍脉冲Tl、T2、T3的宽度为时钟周期或者是时钟周期的倍数即可。所以取时钟源提供的时钟周期为200ns,即,其频率为5MHz.;由于要输出3个节拍脉冲信号,而T3的宽度为2个时钟周期,也就是一个节拍电位的时间是4个时钟周期,所以除了C4外,还需要3个触发器——Cl、C2、C3;并令

T1C1C2;T1C2C3;T3C1C3,由此可画出逻辑电路图如下:

4

第5章习题参

6.假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令公用的。已知微指令长度为32位,请估算控制存储器容量。

解:80条指令,平均每条指令由4条微指令组成,其中有一条公用微指令,所以总微指令条数为80 (4—1)+1=241条微指令,每条微指令32位,所以控存容量为:24132位 7.某ALU器件是用模式控制码M S3 S2 S1 C来控制执行不同的算术运算和逻辑操作。下表列出各条指令所要求的模式控制码,其中y为二进制变量,φ为0或l任选。

试以指令码(A,B,H,D,E,F,G)为输入变量,写出控制参数M,S3,S2,Sl,C的逻辑表达式。 指令码 M S3 S2 S1 C A, B 0 0 1 1 0 H, D 0 1 1 0 1 E 0 0 1 0 y F 0 1 1 1 y G 1 0 1 1  解:

由表可列如下逻辑方程 M=G

5

第5章习题参

S3=H+D+F

S2=A+B+D+H+E+F+G S1=A+B+F+G C=H+D+Ey+Fy

8.某机有微指令I1—I8,每条微指令所包含的微命令控制信号如下表所示。 a—j分别对应10种不同性质的微命令信号。假设一条微指令的控制字段仅限为8位,请安排微指令的控制字段格式。 微指令 a b c d e f g h i j I1      I2     I3   I4  I5     I6    I7    I8   

解:因为有10种不同性质的微命令信号,如果采用直接表示法则需要10位控制字段,现控制字段仅限于8位,那么,为了压缩控制字段的长度,必须设法把一个微指令周期中的互斥性微命令组合在一个小组中,进行分组译码.

经分析,(e,f,h)和(b,i,j)、或(d,i,j)和(e,f,h)、或(g,b,j)和(i,f,h)均是不可能同时出现的互斥信号,所以可将其通过2:4译码后输出三个微命令信号(00表示该组所有的微命令均无效),而其余四个微命令信号用直接表示方式。因此可用下面的格式安排控制字段。

e f h b i j   a c d g X X X X 或: e f h d i j   a b c g X X X X 或: f h i b g j   a c d e X X X X

9.微地址转移逻辑表达式如下: μA8 = P1·IR6·T4 μA7 = P1·IR5·T4 μA6 = P2·C·T4

6

第5章习题参

其中μA8-μA6为微地址寄存器相应位,P1和P2为判别标志,C为进位标志,IR5和IR6为指令寄存器的相应位,T4为时钟周期信号。说明上述逻辑表达式的含义,画出微地址转移逻辑图. 解:

μA5=P3·IR5·T4 μA4=P3·IR4·T4 μA3=P1·IR3·T4 μA2=P1·IR2·T4 μA1=P1·IR1·T4 μA0=P1·IR0·T4+P2·C·T4

用触发器强置端(低有效)修改,前5个表达式用“与非\"门实现,最后1个用“与或非\"门实现

μA2、μA1、μA0触发器的微地址转移逻辑图如下:(其他略)

10.某计算机有如下部件,ALU,移位器,主存M,主存数据寄存器MDR,主存地址寄存器MAR,指令寄存器IR,通用寄存器R0R3,暂存器C和D。 (1)请将各逻辑部件组成一个数据通路,并标明数据流动方向。

(2)画出“ADD R1,R2\"指令的指令周期流程图。 解:

(1) 设该系统为单总线结构,暂存器C和D用于ALU的输入端数据暂存,移位器作为ALU输出端的缓冲器,可对ALU的运算结果进行附加操作,则数据通路可设计如下:

+ C IR PC MAR M MDR R0 R1 R2 R3 D

ALU 移位器 7

第5章习题参

(2) 根据上面的数据通路,可画出“ADD R1,R2\"(设R1为目的寄存器)的指令周期流程图如下:

ADD R1, R2(PC)→MAR(M)→MDR(MDR)→IRPC+1(R1)→C(R2)→D(C)+(D)→移位器(移位器)→R1

11.已知某机采用微程序控制方式,控存容量为512*48位。微程序可在整个控存中实现转移,控制微程序转移的条件共4个,微指令采用水平型格式,后继微指令地址采用断定方式.请问;

(1)微指令的三个字段分别应为多少位?

(2)画出对应这种微指令格式的微程序控制器逻辑框图。 解:

(1) 因为容量为512*48位,所以下址字段需用9位,控制微程序转移的条件有4个,所以判别测试字段需4位或(3位译码),因此操作控制字段的位数48-9-4=35位(或48-9-3=36位)

(2)微程序控制器逻辑框图参见教材P.147图5.23

~

8

第5章习题参

指令寄存器IR OP 状态条件 微地址寄存器 地址译码 控制存储器 地址转移 逻辑

12.今有4级流水线,分别完成取指、指令译码并取数、运算、送结果四步操作。今假设完成各步 操作的时间依次为100ns,100ns,80ns,50ns。请问; (1)流水线的操作周期应设计为多少?

(2)若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么第2条指令要推迟多少时间进行?

(3)如果在硬件设计上加以改进,至少需推迟多少时间? 答:

(1) 流水操作周期为max(100,100,80,50)=100ns

(2)若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么在第1条指令“送结果\"步骤完成后,第2条指令的“取数”步骤才能开始,也就是说,第2条指令要推迟两个操作周期,即200ns才能进行。

(3) 如果在硬件设计上加以改进,采用定向传送的技术,则只要第1条指令完成“运算”的步骤,第2条指令就可以“取数”了,因此至少需推迟100ns。

13.指令流水线有取指(IF)、译码(ID)、执行(EX)、访存(MEM)、写回寄存器堆(WB)五个过程段,共有20条指令连续输入此流水线。 (1)画出流水处理的时空图,假设时钟周期为100ns。

(2)求流水线的实际吞吐率(单位时间里执行完毕的指令数). (3)求流水线的加速比. 解:

(1) 流水处理的空图如下,其中每个流水操作周期为100ns:

空间S WB MEM

微命令信号 微命令寄存器 P字段 控制字段

I1 I1 I2 I1 I2 I3 I2   I15 I16 I15 I16 I17 I16 I17 I18 I17 I18 I19 I18 I19 I20 I19 I20 I20

9

第5章习题参

EX ID IF

I1 1

I1 I2 2

I1 I2 I3 3

I2 I3 I4 4

I3 I4 I5 5

I4 I5 I6 6

   

I17 I18 I19 19

I18 I19 I20 20

I19 I20 21

I20 22

23

24

时间T

(2) 流水线的实际吞吐量:执行20条指令共用5+119=24个流水周期,共2400ns,所以实际吞吐率为:

208.333百万条指令/秒 9240010(3) 流水线的加速比为 : 设流水线操作周期为τ,

则n指令串行经过k个过程段的时间为n*k*τ ;

而n条指令经过可并行的k段流水线时所需的时间为(k+n—1)*τ; 故20条指令经过5个过程段的加速比为:

2054.17

519

14.用时空图法证明流水计算机比非流水计算机具有更高的吞吐率。 解:

设流水计算机的指令流水线分为4个过程段:IF、ID、EX、WB,则流水计算机的时空图如下:

空间S WB EX ID IF I1 1 I1 I2 2 I1 I2 I3 3 I1 I2 I3 I4 4 I1 I2 I3 I4 I5 5 I2 I3 I4 I5 I6 6 I3 I4 I5 I6 I7 7 I4 I5 I6 I7 I8 8 I5 时间T

非流水计算机的时空图:

空间S WB EX ID IF

I1 1

I1 2

I1 3

I1 4

I1 I2 5

I2 6

I2 7

I2 8

I2

时间T

由图中可以看出,同样的8个操作周期内,流水计算机执行完了5条指令,而非流水计算机只执行完了2条指令;由此,可看出流水计算机比非流水计算机具有更高的吞吐率。

10

第5章习题参

15.用定量描述法证明流水计算机比非流水计算机具有更高的吞吐率。

证明:

设流水计算机具有k级流水线,每个操作周期的时间为,执行n条指令的时间为:

Tkn1;

吞吐率为:H1n

kn1而非流水计算机,执行n条指令的时间为:Tnk;

n吞吐率为:H2

nkH1nknk H2kn1kn1当n=1时,H1H2;

当n〉1时,H1H2,即:流水计算机具有更高的吞吐率.

16.判断以下三组指令中各存在哪种类型的数据相关?

(1) I1 LAD R1,A ; M(A)→R1,M(A)是存储器单元 I2 ADD R2,Rl ; (R2)+(R1)→R2 (2) I1 ADD R3,R4 ; (R3)+(R4)→R3 I2 MUL R4,R5 ; (R4)(R5)→R4

(3) I1 LAD R6,B ; M(B)→R6,M(B)是存储器单元

I2 MUL R6,R7 ; (R6) (R7)→R6 解:

(1) I1的运算结果应该先写入R1,然后再在I2中读取R1的内容作为操作数,所以是发生RAW (“写后读”)相关 (2) WAR

(3) RAW和WAW两种相关

17.参考图5.39所示的超标量流水线结构模型,现有如下6条指令序列: I1 LAD R1,B ; M(B)→R1,M(B)是存储器单元 I2 SUB R2,Rl ; (R2)—(R1)→R2 I3 MUL R3,R4 ; (R3)*(R4)→R3 I4 ADD R4,R5 ; (R4)+(R5)→R4

I5 LAD R6,A ; M(A)→R6,M(A)是存储器单元

11

第5章习题参

I6 ADD R6,R7 ; (R6)+(R7)→R6 请画出:(1)按序发射按序完成各段推进情况图。

(2)按序发射按序完成的流水线时空图。 解:

(1) 按序发射按序完成各段推进情况图如下(仍设F、D段要求成对输入;F、D、

W段只需1个周期;加需要2个周期;乘需要3个周期;存/取数需要1个周期;执行部件内部有定向传送,结果生成即可使用):

取指段 I1 I3 I5

I2 I4 I6 译码段 I1 I3 I5 I2 I2 I4 I6 I6 I1 I5 取/存

执行段 I2 I2 I4 I4 I6 I6 加法器

写回段 I3 I3 I3 乘法器

I1 I3 I5 I2 I4 I6

(2) 按序发射按序完成的流水时空图如下:

I1 I2

1 F F I3 I4 2 D D F F 3 E I5 I6 4 W E D D F F 5 E E E D D 6 W E E E 7 E E 8 W E 9 W 10 W 11 W 时钟 超标量流水线的时空图

12

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo9.cn 版权所有 赣ICP备2023008801号-1

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务