计算机组成原理(白中英)本科生试题库整理附答案 下载本文

9 图2所示为双总线结构机器的数据通路,IR为指令寄存器,PC为程序计数器(具有自增功能),M为主存(受R/W#信号控制),AR为地址寄存器,DR为数据缓冲寄存器,ALU由加、减控制信号决定完成何种操作,控制信号G控制的是一个门电路。另外,线上标注有小圈表示有控制信号,例中yi表示y寄存器的输入控制信号,R1o为寄存器R1的输出控制信号,未标字符的线为直通线,不受控制。

① “ADD R2,R0”指令完成(R0)+(R2)→R0的功能操作,画出其指令周期流程图,假设该指令的地址已放入PC中。并在流程图每一个CPU周期右边列出相应的微操作控制信号序列。

② 若将(取指周期)缩短为一个CPU周期,请先画出修改数据通路,然后画出指令周期流程图。

解:(1)“ADD R2,R0”指令是一条加法指令,参与运算的两个数放在寄存器R2和R0中,指令周期流程图包括取指令阶段和执行指令阶段两部分(为简单起见,省去了“→”号左边各寄存器代码上应加的括号)。根据给定的数据通路图,“ADD R2,R0”指令的详细指令周期流程图下如图a所示,图的右边部分标注了每一个机器周期中用到的微操作控制信号序列。(2)SUB减法指令周期流程图见下图b所示。

14 某机的指令格式如下所示

X为寻址特征位:X=00:直接寻址;X=01:用变址寄存器RX1寻址;X=10:用变址寄存器RX2寻址;X=11:相对寻址 设(PC)=1234H,(RX1)=0037H,(RX2)=1122H(H代表十六进制数),请确定下列指令中的有效地址: ①4420H ②2244H ③1322H ④3521H

解: 1)X=00 , D=20H ,有效地址E=20H 2) X=10 , D=44H ,有效地址E=1122H+44H=1166H 3) X=11 , D=22H ,有效地址E=1234H+22H=1256H 4) X=01 , D=21H ,有效地址E=0037H+21H=0058H 5)X=11 , D=23H ,有效地址 E=1234H+23H=1257H

15 图1为某机运算器框图,BUS1~BUS3为3条总线,期于信号如a、h、LDR0~LDR3、S0~S3等均为电位或脉冲控制信号。

① 分析图中哪些是相容微操作信号?哪些是相斥微操作信号?

② 采用微程序控制方式,请设计微指令格式,并列出各控制字段的编码表。

解:1)相容微操作信号LRSN 相斥微操作信号 a,b,c,d

2)当24个控制信号全部用微指令产生时,可采用字

段译码法进行编码控制,采用的微指令格式如下(其中目地操作数字段与打入信号段可结合并公用,后者加上节拍脉冲控制即可)。

3位 3位 5位 4位 3位 2位 ××× ××× ××××× ×××× ××× ×× X 目的操作数 源操作数 运算操作 移动操作 直接控制 判别 下址字段 编码表如下:

目的操作数字段 001 LDR0 010 LDR1 011 LDR2 100 LDR3 a, b, c, d, 源操作数字段 001 e 010 f 011 g 100 h 运算操作字段 MS0S1S2S3 移位门字段 L, R, S, N 直接控制字段 i, j, +1 19 CPU执行一段程序时,cache完成存取的次数为2420次,主存完成的次数为80次,已知cache存储周期为40ns,主存存储周期为200ns,求cache/主存系统的效率和平均访问时间。P94例6

20 某机器单字长指令为32位,共有40条指令,通用寄存器有128个,主存最大寻址空间为64M。寻址方式有立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、基值寻址、相对寻址六种。请设计指令格式,并做必要说明。

21 一条机器指令的指令周期包括取指(IF)、译码(ID)、执行(EX)、写回(WB)四个过程段,每个过程段1个时钟周期T完成。

先段定机器指令采用以下三种方式执行:①非流水线(顺序)方式,②标量流水线方式,③超标量流水线方式。 请画出三种方式的时空图,证明流水计算机比非流水计算机具有更高的吞吐率。P163

22 CPU的数据通路如

图1所示。运算器中R0~R3为通用寄存器,DR为数据缓冲寄存器,PSW为状态字寄存器。D-cache为数据存储器,I-cache为指令存储器,PC为程序计数器(具有加1功能),IR为指令寄存器。单线箭头信号均为微操作控制

信号(电位或脉冲),如LR0表示读出R0寄存器,SR0表示写入R0寄存器。

机器指令“STO R1,(R2)”实现的功能是:将寄存器R1中的数据写入到以(R2)为地址的数存单元中。

请画出该存数指令周期流程图,并在CPU周期框外写出所需的微操作控制信号。(一个CPU周期含T1~T4四个时钟信号,寄存器打入信号必须注明时钟序号)

27 某计算机的存储系统由cache、主存和磁盘构成。cache的访问时间为15ns;如果被访问的单元在主存中但不在cache中,需要用60ns的时间将其装入cache,然后再进行访问;如果被访问的单元不在主存中,则需要10ms的时间将其从磁盘中读入主存,然后再装入cache中并开始访问。若cache的命中率为90%,主存的命中率为60%,求该系统中访问一个字的平均时间。

解:ta=90%tc+10%*60%(tm+tc)+10%*40%(tk+tm+tc)(m表示未命中时的主存访问时间;c表示命中时的cache访问时间;k表示访问外存时间)