文档库 最新最全的文档下载
当前位置:文档库 › 第5章习题参考答案.doc

第5章习题参考答案.doc

第5章习题参考答案.doc
第5章习题参考答案.doc

精品资料

第 5 章习题参考答案

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

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

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

(3)算术逻辑运算结果通常放在(DR)和(通用寄存器)。

2.参见图 5.15 的数据通路。画出存数指令“STO Rl ,(R2) ”的指令周期流程图,其含义是将寄存器Rl 的内容传送至 (R2) 为地址的主存单元中。标出各微

操作信号序列。

解:

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

STO R1, (R2)

(PC) → AR PC O, G, AR i

(M) → DR R/W=R

(DR) → IR DR O, G, IR i

(R2) →AR R2O, G, AR i

(R1) →DR R1O, G, DR i

(DR) → M R/W=W

~

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

解:

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

LAD (R3), R0

(PC) → AR

PC+1PC O, G, AR i

(M) → DR R/W=R

(DR) → IR DR O, G, IR i

(R3) →AR R3O, G, AR i

(M) → DR R/W=R

(DR) →R0DR O, G, R0i

~

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

解:

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

解:取节拍脉冲T l、 T2、T3的宽度为时钟周期或者是时钟周期的倍数即可。所

以取时钟源提供的时钟周期为200ns ,即,其频率为 5MHz. ;由于要输出 3 个

节拍脉冲信号,而T3的宽度为 2 个时钟周期,也就是一个节拍电位的时间是 4

个时钟周期,所以除了 C 4外,还需要 3 个触发器—— C l、C 2、 C 3;并令

T1C1 C 2;T1C2C3; T3C1 C3,由此可画出逻辑电路图如下:

6.假设某机器有80 条指令,平均每条指令由 4 条微指令组成,其中有一条取

指微指令是所有指令公用的。已知微指令长度为32 位,请估算控制存储器容量。

解:80 条指令,平均每条指令由 4 条微指令组成,其中有一条公用微指令,所

以总微指令条数为80(4-1)+1=241条微指令,每条微指令32 位,所以控存容量为: 241 32 位

7.某 ALU 器件是用模式控制码M S 3 S 2 S1 C 来控制执行不同的算术运算和逻

辑操作。下表列出各条指令所要求的模式控制码,其中y 为二进制变量,φ为 0

或 l 任选。

试以指令码 (A,B ,H,D ,E,F,G)为输入变量,写出控制参数M ,S3,S2,S l, 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

S3 =H+D+F

S2 =A+B+D+H+E+F+G

S1 =A+B+F+G

C=H+D+Ey+Fy

8.某机有 8 条微指令 I 1— 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 = P 1· IR 6·T 4

μA7 = P 1· IR 5·T 4

μA6 = P 2· C·T4

其中μA8—μA 6为微地址寄存器相应位, P1和 P2为判别标志,C 为进位标志, IR 5

和 IR 6为指令寄存器的相应位, T4为时钟周期信号。说明上述逻辑表达式的含

义,画出微地址转移逻辑图。

解:

μA8 = P 1·IR 6·T 4表示微地址的第8 位在 P1有效时,用 IR 6设置

μA7 = P 1·IR 5·T 4表示微地址的第7 位在 P1有效时,用 IR 5设置

μA6 = P 2·C·T4表示微地址的第 6 位在 P2有效时,用进位标志 C 设置,

地址转移逻辑图如下:

T4 P1

IR 6

μ AR8SET

D

T2

CLR

IR 5

μ AR7SET

Q

D

Q

CLR

μA8

Q

Q

P2

C

μ AR6SET

D Q

CLR Q

μ A7μ A6

10 .某计算机有如下部件,ALU ,移位器,主存M ,主存数据寄存器MDR ,

主存地址寄存器 MAR ,指令寄存器 IR ,通用寄存器 R0R3,暂存器 C 和 D 。

(1)请将各逻辑部件组成一个数据通路,并标明数据流动方向。

(2)画出“ ADD R1 ,R2 ”指令的指令周期流程图。

解:

(1)设该系统为单总线结构,暂存器 C 和 D 用于 ALU 的输入端数据暂存,移位

器作为 ALU 输出端的缓冲器,可对 ALU 的运算结果进行附加操作,则数据通路可

设计如下:

+

C

IR PC MAR M MDR R 0R1R2R3

ALU

移位器D

(2) 根据上面的数据通路,可画出“ADD R1 , R2 ” (设 R1 为目的寄存器 )的指

令周期流程图如下:

ADD R1, R2

(PC) → MAR

(M) → MDR

(MDR) → IR

PC+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

指令寄存器 IR

OP

状态条件

地址转移

微地址寄存器逻辑

地址译码微命令信

号控制存储器

微命令寄存

控制字段

P字段

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 I 1 I 2 I 15 I 16 I 17 I 18 I 19 I 20

WB I1 I2 I15 I16 I 17 I18 I 19 I20

MEM I1 I2 I3 I16 I17 I 18 I19 I 20 EX I1 I2 I3 I4 I17 I18 I 19 I20

ID I1 I2 I3 I4 I5 I18 I19 I 20

IF I1 I2 I3 I4 I5 I6 I19 I20

1 2 3 4 5 6 19 20 21 22 23 24 时间 T

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

2400ns ,所以实际吞吐率为:

20

8.333百万条指令 / 秒

2400 10 9

(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 I1I2I3I4I5

WB I 1 I 2 I 3 I 4 I 5

EX I 1 I 2 I 3 I 4 I 5 I 6

ID I 1 I 2 I 3 I 4 I 5 I 6 I 7

IF I 1 I 2 I 3 I 4 I 5 I 6 I 7 I 8

1 2 3 4 5 6 7 8 时间 T

非流水计算机的时空图:

空间 S I 1 I2

WB I 1 I 2

EX I 1 I 2

ID I 1 I 2

IFI1 I 2

1 2 3 4 5 678时间T

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

具有更高的吞吐率。

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

证明:

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

吞吐率为: H 1

n

k n 1

而非流水计算机,执行 n 条指令的时间为: T n k ;

吞吐率为: H 2

n n k

H 1 n k n k

H 2 k n 1 k n 1

当 n=1 时, H1 H 2;

当 n>1 时, H1 H 2,即:流水计算机具有更高的吞吐率。

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

(1)I1 LAD R1 ,A ;M(A) → R1 , M(A) 是存储器单元

I 2 ADD R2 , Rl ;(R2)+(R1) → R2

(2)I1 ADD R3,R4 ;(R3)+(R4) →R3

I 2 MUL R4,R5 ;(R4) (R5) →R4

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

I 2 MUL R6,R7 ;(R6) (R7) →R6

解:

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

(2)WAR

(3)RAW 和 WAW 两种相关

17 .参考图 5.39 所示的超标量流水线结构模型,现有如下 6 条指令序列:

I 1 LAD R1 ,B ;M(B) →R1 ,M(B) 是存储器单元

I 2 SUB R2 , Rl ;(R2)-(R1) →R2

I 3 MUL R3,R4 ;(R3)*(R4) →R3

I 4 ADD R4 ,R5 ;(R4)+(R5) →R4

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

I 6 ADD R6 ,R7 ;(R6)+(R7) →R6

请画出: (1) 按序发射按序完成各段推进情况图。

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

解:

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

W 段只需 1 个周期;加需要 2 个周期;乘需要 3 个周期;存 / 取数需要 1

个周期;执行部件内部有定向传送,结果生成即可使用 ):

取指段

I1 I2

I 1 I 2

I2

I 3 I 4

I3 I4

I 5 I 6 I5 I6

译码段执行段

I6

I 1 I6 I 4

I 1

I 2 I 5

取/ 存加法器乘法器

I 2 I4 I 3 I 2 I 6

I 5 I 4 I 3 写回段

I 3

I6 I 3

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

1 2 3 4 5 6 7 8 9 10 11 时钟

I 1 F D E W

I 2 F D E E W

I 3 F D E E E W

I 4 F D E E W

I5 F D E W

I6 F D E E W

超标量流水线的时空图

相关文档