计算机组成原理答案-白中英 下载本文

第五章答案

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

(1) 保存当前正在执行的指令的寄存器是(指令寄存器IR); (2) 保存当前正要执行的指令地址的寄存器是(程序计数器PC);

(3) 算术逻辑运算结果通常放在(通用寄存器 )和(数据缓冲寄存器DR )。 2.参见下图(课本P166图5.15)的数据通路。画出存数指令\,(R2)\的指令周期

流程图,其含义是将寄存器R1的内容传送至(R2)为地址的主存单元中。标出各微操作信

号序列。

解:\R1 ,(R2)\指令是一条存数指令,其指令周期流程图如下图所示:

3.参见课本P166图5.15的数据通路,画出取数指令\(R3),RO\的指令周期流程图,

其含义是将(R3)为地址的主存单元的内容取至寄存器R0中,标出各微操作控制信号序列。5.如果在一个CPU周期中要产生3个脉冲 T1 = 200ns ,T2 = 400ns ,T3 = 200ns,试画出

时序产生器逻辑图。

解:节拍脉冲T1 ,T2 ,T3 的宽度实际等于时钟脉冲的周期或是它的倍数,此时T1 = T3 =200ns ,

T2 = 400 ns ,所以主脉冲源的频率应为 f = 1 / T1 =5MHZ 。为了消除节拍脉冲上的毛刺,环

型脉冲发生器可采用移位寄存器形式。下图画出了题目要求的逻辑电路图和时序信号关系。根据关

系,节拍脉冲T1 ,T2 ,T3 的逻辑表达式如下: T1 = C1· , T2 = , T3 =

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

令公用的。已知微指令长度为32位,请估算控制存储器容量。 解:微指令条数为:(4-1)×80+1=241条 取控存容量为:256×32位=1KB

7. 某ALU器件使用模式控制码M,S3,S2,S1,C来控制执行不同的算术运算和逻辑操作。

下表列出各条指令所要求的模式控制码,其中y为二进制变量,F为0或1任选。

试以指令码(A,B,H,D,E,F,G)为输入变量,写出控制参数M,S3,S2,S1,C的逻

辑表达式。 解: M=G S3=H+D+F S2=1

C=H+D+(E+F)y

8.某机有8条微指令I1-I8,每条微指令所包含的微命令控制信号如下表所示。

a-j分别对应10种不同性质的微命令信号。假设一条微指令的控制字段为8位,请安排微指 令的控制字段格式。

解:经分析,(e ,f ,h)和(b, i, j)可分别组成两个小组或两个字段,然后进行译码,可得六个

微命令信号,剩下的a, c, d, g 四个微命令信号可进行直接控制,其整个控制字段组成如

下:

11.已知某机采用微程序控制方式,其控制存储器容量为 512×48(位)。微程序可在整个控

制存储器中实现转移,可控制微程序转移的条件共4个,微指令采用水平型格式,后继微

指令地址采用断定方式。请问:

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

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

(l)假设判别测试字段中每一位作为一个判别标志,那么由于有4个转移条件,故该字段为4位;

又因为控存容量为512单元,所以下地址字段为9位,。微命令字段则是:

(48-4-9)= 35位。

(2)对应上述微指令格式的微程序控制器逻辑框图如下图所示。其中微地址寄存器对应下地址

字,P字段即为判别测试字段,控制字段即为微命令字段,后两部分组成微指令寄存器。地 址转移逻辑的输入是指令寄存器的OP码、各种状态条件以及判别测试字段所给的判别标志

(某一位为1),其输出用于控制修改微地址寄存器的适当位数,从而实现微程序的分支转移 (此例微指令的后继地址采用断定方式)。

12.今有4级流水线分别完成取值、指令译码并取数、运算、送结果四步操作,

今假设完成各步操作的时间依次为100ns,100ns,80ns,50ns。 请问:(1)流水线的操作周期应设计为多少?

(2)若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么第二条指令要

推迟多少时间进行。

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

(1) 流水线的操作时钟周期 t应按四步操作中最长时间来考虑, 所以t=100ns;

(2) 两条指令发生数据相关冲突情况:: ADD R1,R2,R3 ; R2+R3→R1 SUB R4,R1,R5 ; R1-R5→R4 两条指令在流水线中执行情况如下表所示:

ADD指令在时钟4时才将结果写入寄存器R1中, 但SUB指令在时钟3时就需读寄存器R1了,显然发生

数据相关,不能读到所需数据,只能等待。如果硬件上不采取措施,第2条指令SUB至少应推迟2个

操作时钟周期,即t=2×100ns=200ns;

(3)如果硬件上加以改进(采取旁路技术),这样只需推迟1个操作时钟周期就能得到所需数据,

即t=100ns。

15.用定量描述法证明流水计算机比非流水计算机具有更高的吞吐率。 解:衡量并行处理器性能的一个有效参数是数据带宽(最大吞吐量),它定义为单位时间内可以产生

的最大运算结果个数。

设P1是有总延时T1的非流水处理器,故其带宽为1/T1。又设Pm是相当于P1 m 段流水处理器延迟时 间Tr,故Pm的带宽为1/(Tc+Tr)。如果Pm是将P1划分成相同延迟的若干段形成的,则T1≈mTc 因

此P1的带宽接近于1/mTc,由此可见,当mTc>Tc+Tr满足时,Pm比P1具有更大的带宽。