(完整版)计算机组成原理答案(第二版) 联系客服

发布时间 : 星期五 文章(完整版)计算机组成原理答案(第二版)更新完毕开始阅读f44d82247dd5360cba1aa8114431b90d6d858913

程序D服务A服务B服务C服务B服务C服务0 10 20 30 40 50 60 70 80 90 100 110 120 130 140 t/usB与C请求D请求B服务D服务A服务B服务B请求A请求

25. 某机有五个中断源L0、L1、L2、 L3、L4,按中断响应的优先次序由高向低排序为L0? L1?L2?L3?L4,根据下示格式,现要求中断处理次序改为L1?L4?L2?L0?L3,根据下面的格式,写出各中断源的屏蔽字。 解:各中断源屏蔽状态见下表:

中断源 0 I0 I1 I2 I3 I4 1 1 1 0 1 1 0 1 0 0 0 屏蔽字 2 0 1 1 0 1 3 1 1 1 1 1 4 0 1 0 0 1 表中:设屏蔽位=1,表示屏蔽;屏蔽位=0,表示中断开放。

26. 设某机配有A、B、C三台设备,其优先顺序按A?B?C降序排列,为改变中断处理次序,它们的中断屏蔽字设置如下:

设备 A B C 屏蔽字 111 010 011 请按下图所示时间轴给出的设备请求中断的时刻,画出CPU执行程序的轨迹。设A、B、C中断服务程序的执行时间均为20? s。

解:A、B、C设备的响应优先级为A最高、B次之、C最低,处理优先级为A最高、C次之、B最低。CPU执行程序的轨迹图如下:

程序A服务B服务C服务0 10 20 30 40 50 60 70 80 90 t/usA请求B请求C请求

21

第九章

2. 控制单元的功能是什么?其输入受什么控制?

答:控制单元的主要功能是发出各种不同的控制信号。其输入受时钟信号、指令寄存器的操作码字段、标志和来自系统总线的控制信号的控制。

3. 什么是指令周期、机器周期和时钟周期?三者有何关系? 答:CPU每取出并执行一条指令所需的全部时间叫指令周期;

机器周期是在同步控制的机器中,执行指令周期中一步相对完整的操作(指令步)所需时间,通常安排机器周期长度等于主存周期;

时钟周期是指计算机主时钟的周期时间,它是计算机运行时最基本的时序单位,对应完成一个微操作所需时间,通常时钟周期等于计算机主频的倒数。 4. 能不能说机器的主频越快,机器的速度就越快,为什么?

解:不能说机器的主频越快,机器的速度就越快。因为机器的速度不仅与主频有关,还与数据通路结构、时序分配方案、ALU运算能力、指令功能强弱等多种因素有关,要看综合效果。 5. 设机器A的主频为8MHz,机器周期含4个时钟周期,且该机的平均指令执行速度是0.4MIPS,试求该机的平均指令周期和机器周期,每个指令周期中含几个机器周期?如果机器B的主频为12MHz,且机器周期也含4个时钟周期,试问B机的平均指令执行速度为多少MIPS?

解:先通过A机的平均指令执行速度求出其平均指令周期,再通过主频求出时钟周期,然后进一步求出机器周期。B机参数的算法与A机类似。计算如下:

A机平均指令周期=1/0.4MIPS=2.5μs A机时钟周期=1/8MHz=125ns

A机机器周期=125ns×4=500ns=0.5μs

A机每个指令周期中含机器周期个数=2.5μs÷0.5μs=5个 B机时钟周期 =1/12MHz?83ns B机机器周期 =83ns×4=332ns

设B机每个指令周期也含5个机器周期,则: B机平均指令周期=332ns×5=1.66μs

B机平均指令执行速度=1/1.66μs=0.6MIPS 结论:主频的提高有利于机器执行速度的提高。 6. 设某机主频为8MHz,每个机器周期平均含2个时钟周期,每条指令平均有4个机器周期,试问该机的平均指令执行速度为多少MIPS?若机器主频不变,但每个机器周期平均含4个时钟周期,每条指令平均有4个机器周期,则该机的平均指令执行速度又是多少MIPS?由此可得出什么结论?

解:先通过主频求出时钟周期,再求出机器周期和平均指令周期,最后通过平均指令周期的倒数求出平均指令执行速度。计算如下:

-6

时钟周期=1/8MHz=0.125×10s

-6-6

机器周期=0.125×10s×2=0.25×10s

-6-6

平均指令周期=0.25×10s×4=10s

-6

平均指令执行速度=1/10s=1MIPS

-6-6

当参数改变后:机器周期= 0.125×10s×4=0.5×10s

-6-6

平均指令周期=0.5×10s×4=2×10s

-6

平均指令执行速度=1/(2×10s) =0.5MIPS

22

结论:两个主频相同的机器,执行速度不一定一样。

7. 某CPU的主频为10MHz,若已知每个机器周期平均包含4个时钟周期,该机的平均指令执行速度为1MIPS,试求该机的平均指令周期及每个指令周期含几个机器周期?若改用时钟周期为0.4μs的CPU芯片,则计算机的平均指令执行速度为多少MIPS?若要得到平均每秒80万次的指令执行速度,则应采用主频为多少的CPU芯片?

解:先通过主频求出时钟周期时间,再进一步求出机器周期和平均指令周期。

-6

时钟周期=1/10MHz=0.1×10s

-6-6

机器周期=0.1×10s×4=0.4×10s

-6

平均指令周期=1/1MIPS=10s

-6-6

每个指令周期所含机器周期个数=10s /0.4×10s =2.5个 当芯片改变后:机器周期=0.4μs×4=1.6μs 平均指令周期=1.6μs×2.5=4μs

平均指令执行速度=1/4μs=0.25MIPS

若要得到平均每秒80万次的指令执行速度,则:

-6

平均指令周期=1/0.8MIPS=1.25×10=1.25μs 机器周期=1.25μs÷2.5=0.5μs 时钟周期= 0.5μs÷4=0.125μs CPU主频=1/0.125μs=8MHz

8. 某计算机的主频为6MHz,各类指令的平均执行时间和使用频度如下表所示,试计算该机的速度(单位用MIPS表示),若上述CPU芯片升级为10MHz,则该机的速度又为多少?

指令类别 平均指令执行时间 使用频度 存取 0.6μs 35% 加、减、比较、转移 乘除 其它 0.8μs 45% 10μs 1.4μs 5% 15% 解: (1)指令平均运行时间 =(0.6×0.35+0.8×0.45+10×0.05+1.4×0.15)μs= 1.28μs 机器平均运行速度 = 1/1.28μs≈0.78MIPS

(2)时钟周期 = 1/6MHz≈0.167μs

指令平均运行周期数 = 1.28μs ÷0.167μs≈7.66CPI 若CPU芯片升级为10MHz,时钟周期 = 1/10MHz=0.1μs 指令平均运行时间 = 0.1μs×7.66=0.766μs 机器平均运行速度 = 1/0.766μs≈1.3MIPS

10. 试比较同步控制、异步控制和联合控制的区别。 答:同步控制是指任何一条指令或指令中任何一个微操作的执行都是事先确定的,并且都受同一基准时标的时序信号所控制的方式。异步控制无基准时标信号,微操作的时序是由专门的应答线路控制,即控制单元发出执行某一微操作的控制信号后,等待执行部件完成了该操作后发回“回答”或“结束”信号,再开始新的微操作。联合控制是同步控制和异步控制相结合的方式,即大多数操作(如CPU内部各操作)在同步时序信号的控制下进行,少数时间难以确定的微操作(如涉及I/O操作)采用异步控制。

11. 设CPU内部结构如图9.4所示,此外还设有B、C、D、E、H、L六个寄存器,它们各自的输入和输出端都与内部总线相通,并分别受控制信号控制(如Bi为寄存器B的输入控制;Bo为B的输出控制)。要求从取指令开始,写出完成下列指令所需的全部微操作和控制信号。 (1)ADD B,C ((B)+(C) ?B) (2)SUB A,H ((AC)-(H) ?AC)

解:先画出相应指令的流程图,然后将图中每一步数据通路操作分解成相应的微操作,再写出同名的微命令即可。

23

?(1) ADD B,C指令流程及微命令序列如下:

PC→BUS→MAR取指周期PCo,MARiMARo,MDRiMDRo,IRi+1Bo,YiCo,ALUiYo, + ,ZiZo,Bi

M(MAR)→MDRMDR→BUS→IRPC+1→PCB→BUS→YC→BUS→ALUY-BUS→ZZ→BUS→AC执行周期 (2) SUB A,H指令流程及微命令序列如下:

PC→BUS→MAR取指周期PCo,MARiMARo,MDRiMDRo,IRi+1ACo,YiHo,ALUiACo, - ,ZiZo,ACi

M(MAR)→MDRMDR→BUS→IRPC+1→PCAC→BUS→YH→BUS→ALUAC-BUS→ZZ→BUS→AC执行周期13. 设CPU内部结构如图9.4所示,此外还设有R1~R4四个寄存器,它们各自的输入和输出端都与内部总线相通,并分别受控制信号控制(如R2i为寄存器R2的输入控制;R2o为R2的输出控制)。要求从取指令开始,写出完成下列指令所需的全部微操作和控制信号。 (1)ADD R2,@R4 ; ((R2)+((R4)) ?R2,寄存器间接寻址) (2)SUB R1,@mem ; ((R1)-((mem)) ?R1,存储器间接寻址) 解:(1)ADD R2,@R4的指令周期信息流程图及微操作控制信号如下:

24