计算机系统结构复习题答案
第1章:
1.1
1、从计算机语言的角度,计算机系统的多级层次结构(第8屏的图)
2、翻译与解释的区别
翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。
解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。
解释执行比编译后再执行所花的时间多,但占用的存储空间较少。
3、计算机系统结构的定义理解,系统结构与组成和实现的区别
1)计算机系统结构的经典定义
传统机器程序员所看到的计算机属性,即概念性结构与功能特性。
广义的系统结构定义:指令系统结构、组成、硬件
2)计算机系统结构:计算机系统的软、硬件的界面。 即机器语言程序员所看到的传统机器级所具有的属性。
计算机组成:计算机系统结构的逻辑实现
计算机实现:计算机组成的物理实现
4、计算机系统结构分类:
1)Flynn分类法(4类名称即可)
单指令流单数据流SISD
单指令流多数据流SIMD
多指令流单数据流MISD
多指令流多数据流MIMD
2)冯氏分类法(4类名称即可)
字串位串、字串位并、字并位串、字并位并
3)Handler分类法
1.2
1、Amdahl定律
加快某部件执行速度所能获得的系统性能加速比,受限于该部件的执行时间占系统中总执行时间的百分比。
例1.1 将计算机系统中某一功能的处理速度加快15倍,但该功能的处理时间仅占整个系统运行时间的40%,则采用此增强功能方法后,能使整个系统的性能提高多少?
解 由题可知: Fe = 40% = 0.4
Se = 15
根据Amdahl定律可知:
采用此增强功能方法后,能使整个系统的性能提高到原来的1.6倍。
例1.2 某计算机系统采用浮点运算部件后,使浮点运算速度提高到原来的25倍,而系统运行某一程序的整体性能提高到原来的4倍,试计算该程序中浮点操作所占的比例。
解 由题可知: Se = 25 Sn = 4
根据Amdahl定律可知:
由此可得:Fe = 78.1%
即程序中浮点操作所占的比例为78.1%。
CPU性能公式
1)执行一个程序所需的CPU时间
CPU时间 = 执行程序所需的时钟周期数×时钟周期时间
其中:时钟周期时间是系统时钟频率的倒数。
每条指令执行的平均时钟周期数CPI
(Cycles Per Instruction)
CPI = 执行程序所需的时钟周期数/IC
IC:所执行的指令条数
3)程序执行的CPU时间可以写成
CPU时间 = IC ×CPI ×时钟周期时间
例1.3 假设FP指令的比例为25%,其中,FPSQR占全部指令的
比例为2%,FP操作的CPI为4,FPSQR操作的CPI为20 ,其他指令
的平均CPI为1.33。现有两种改进方案,第一种是把FPSQR操作的
CPI减至2,第二种是把所有的FP操作的CPI减至2,试比较两种方案
对系统性能的提高程度。
解 没有改进之前,每条指令的平均时钟周期CPI为:
(1)采用第一种方案
FPSQR操作的CPI由CPIFPSQR=20减至CPI’FPSQR=2,则整个系统的指令平均时钟周期数为:
CPI1=CPI―(CPIFPSQR―CPI’FPSQR)×2%
=2―(20―2) ×2%=1.64
(2)采用第二种方案
所有FP操作的CPI由CPIFP=4减至CPI’FP=2,则整个系统的指令平均时钟周期数为:
CPI2=CPI―(CPIFP―CPI’FP)×25%
=2―(4―2) ×25%=1.5
从降低整个系统的指令平均时钟周期数的程度来看,第二种方案优于第一种方案。
例1.4 考虑条件分支指令的两种不同设计方法:
(1)CPU1:通过比较指令设置条件码,然后测试条件码进行分支。
(2)CPU2:在分支指令中包括比较过程。
在这两种CPU中,条件分支指令都占用2个时钟周期,而所有其它指令占用1个时钟周期。对于CPU1,执行的指令中分支指令占30%;由于每条分支指令之前都需要有比较指令,因此比