计算机组成原理-第二版-唐朔飞著-课后习题详解 下载本文

37

中断源 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执行程序的轨迹图如下:

38

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

第9章 控制单元的功能

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

39

结论:主频的提高有利于机器执行速度的提高。

6. 设某机主频为8MHz,每个机器周期平均含2个时钟周期,每条指令平均有4个机器周期,试问该机的平均指令执行速度为多少MIPS?若机器主频不变,但每个机器周期平均含4个时钟周期,每条指令平均有4个机器周期,则该机的平均指令执行速度又是多少MIPS?由此可得出什么结论?

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

时钟周期=1/8MHz=0.125×10-6s 机器周期=0.125×10-6s×2=0.25×10-6s 平均指令周期=0.25×10-6s×4=10-6s 平均指令执行速度=1/10-6s=1MIPS

当参数改变后:机器周期= 0.125×10-6s×4=0.5×10-6s 平均指令周期=0.5×10-6s×4=2×10-6s 平均指令执行速度=1/(2×10-6s) =0.5MIPS 结论:两个主频相同的机器,执行速度不一定一样。

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

40

解:先通过主频求出时钟周期时间,再进一步求出机器周期和平均指令周期。 时钟周期=1/10MHz=0.1×10-6s 机器周期=0.1×10-6s×4=0.4×10-6s 平均指令周期=1/1MIPS=10-6s

每个指令周期所含机器周期个数=10-6s /0.4×10-6s =2.5个 当芯片改变后:机器周期=0.4μs×4=1.6μs 平均指令周期=1.6μs×2.5=4μs 平均指令执行速度=1/4μs=0.25MIPS

若要得到平均每秒80万次的指令执行速度,则: 平均指令周期=1/0.8MIPS=1.25×10-6=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,则该机的速度又为多少?

指令类别 存取 加、减、比较、转移 平均指令执行时间 使用频度 35% 45% 0.6μs 0.8μs 乘除 10μs 1.4μs 其它 5% 15%