2022年广西师范大学数据科学与大数据技术专业《计算机系统结构》科目期末试卷B(有答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2022年广西师范大学数据科学与大数据技术专业《计算机系统结构》
科目期末试卷B(有答案)
一、选择题
1、输入输出系统硬件的功能对()是透明的。

A.操作系统程序员
B.应用程序员
C.系统结构设计人员
D.机器语言程序设计员
2、程序员编写程序时使用的地址是( )。

A.有效地址
B.逻辑地址
C.辅存实地址
D.主存地址
3、除了分布处理、MPP和机群系统外,并行处理计算机按其基本结构特征可分为流水线计算机,阵列处理机,多处理机和()四种不同的结构。

A.计算机网络
B.控制流计算机
C.机群系统
D.数据流计算机
4、开发并行的途径有(),资源重复和资源共享。

A.多计算机系统
B.多道分时
C.分布式处理系统
D.时间重叠
5、若输入流水线的指令既无局部性相关,也不存在全局性相关,则()。

A.可获得高的吞吐率和效率
B.流水线的效率和吞吐率恶化
C.出现瓶颈
D.可靠性提高
6、微指令由()直接执行。

A.微指令程序
B.硬件
C.汇编程序
D.编译程序
7、传统机器语言机器级,是用()来()机器指令。

A.硬件,翻译
B.编译程序,翻译
C.微指令程序,解释
D.微指令程序,翻译
8、费林按指令流和数据流的多倍性把计算机系统分类,这里的多倍性指()。

A.系统瓶颈部件上处于同一执行阶段的指令流是数据流的多少倍。

B.系统瓶颈部件上处于同一执行阶段的数据流是指令流的多少倍。

C.系统瓶颈部件上处于同一执行阶段的指令或数据的最大可能个数。

D.A和B
9、块冲突概率最高的Cache地址映象方式是( )
A.段相联
B.组相联
C.直接
D.全相联
10、组相联映象、LRU替换的Cache存贮器,不影响Cache命中率的是( )
A.增加Cache中的块数
B.增大组的大小
C.增大主存容量
D.增大块的大小
二、填空题
11、一个程序在计算机上运行,花费的CPU时间为CPU的时钟周期乘以该程序所有机器指令使用CPU的时钟周期数,即CPU时间=________×________
12、Cache系统的加速比是命中率H和________与________比值的函数
13、页面替换是发生于页面失效,同时又发生________的时候。

14、Cache存贮器采用组相联的映象规则是组间________映象,组内各块间________映象。

15、衡量向量处理机性能的主要参数是________和________
16、多计算机互连网络中的通信模式有________和________
17、直接网络可分为3类:________和________、超立方体网络。

18、消息寻径方式可以分为两大类:________和________
19、寻径的基本原则是:________或________
20、评价地址码个数不同的4种指令的优缺点的主要标准是________和________
三、判断题
21、在一种机器的系统结构上实现另一种机器的指令系统,采用模拟方法比采用仿真方法更快捷。

()
22、单功能流水线只能完成一种固定功能。

()
23、分布系统以分布为特征,用真实处理机替代虚拟处理机,其并行性是属于并发性。

()
24、软硬功能分配时,提高软件功能的比例会提高系统灵活性,也会提高解题速度。

()
25、系统是否设浮点运算指令,对计算机系统结构是透明的。

()
26、能做为评价其它置换算法标准的置换算法是RAND。

()
27、最近最少使用法是STACK型替换算法。

()
28、指令的重叠解释,既可加快程序的解释,又能加快指令的解释。

()
29、多处理机中,两个程序段之间若同时有先写后读和先读后写2种相关,以交换数据为目的时,则必须并行执行,读写要完全同步,允许顺序串行和交换串行。

()
30、监听协议用来保持 Cache一致性的两种策略分别是写无效(Write-Invalidate)策略
和写更新(Write-Update)策略。

()
31、由于Cache存贮器的地址变换和块替换算法是用软件实现的,因此Cache存贮器对应用程序员是透明的,而且Cache对处理机和主存间的信息交往也是透明的。

()
32、延迟转移技术是RISC关键技术之一。

()
33、在一段时间内相继发射多个任务,体现了并发性概念。

()
34、只要将子过程进一步细分,就可以使流水线吞吐率进一步提高。

()
35、时间是衡量计算机性能的主要标准。

()
四、名词解释
36、CISC:
37、分布式共享多处理机:
38、写回法:
39、分段开采:
40、吞吐率:
41、指令的静态调度:
五、简答题
42、计算机系统结构的Flynn分类法是按什么来分类的?共分为哪几类?
43、通常有哪几种指令格式,请简述其适用范围。

44、可采用哪些方法来提高向量处理机的性能?
45、区别不同指令集结构的主要因素是什么?根据这个主要因素可将指令集结构分为哪3类?
46、试比较可用于动态互连的总线、交叉开关和多级互连网络的硬件复杂度和带宽。

六综合题
47、一个具有32台处理机的系统,对远程存储器访问时间是2000ns。

除了通信以外,假设计算中的访问均命中局部存储器。

当发出一个远程请求时,本地处理机挂起。

处理机的时钟周期时间是10ns,假设指令基本的CPI为1.0(设所有访存均命中Cache)。

对于下述两种情况:
(1)没有远程访问;
(2)0.5%的指令需要远程访问。

试问前者比后者快多少?
48、假设对指令Cache的访问占全部访问的75%;而对数据Cache的访问占全部访问的25%。

Cache的命中时间为1个时钟周期,失效开销为50 个时钟周期,在混合Cache中一次load或store操作访问Cache的命中时间都要增加一个时钟周期,32KB 的指令Cache的失效率为0.39%,32KB的数据Cache的失效率为4.82%,64KB的混合Cache的失效率为1.35%。

又假设采用写直达策略,且有一个写缓冲器,并且忽略写缓冲器引起的等待。

试问指令Cache和数据Cache容量均为32KB的分离Cache和容量
为64KB的混合Cache相比,哪种Cache的失效率更低?两种情况下平均访存时间各是多少?
49、下面的一段MIPS汇编程序是计算高斯消去法中的关键一步,用于完成下面公式的计算:
Y = a X + Y
其浮点指令延迟如表4.3所示,整数指令均为1个时钟周期完成,浮点和整数部件均采用流水。

整数操作之间以及与其它所有浮点操作之间的延迟为0,转移指令的延迟为0。

X 中的最后一个元素存放在存储器中的地址为DONE。

FOO: L.D F2,0(R1)
MUT.D F4,F2,F0
L.D F6,0(R2)
ADD.D F6,F4,F6
S.D F6,0[R2]
DADDIU R1,R1,#8
DADDIU R2,R2,#8
DSUBIU R3,R1,#DONE
BNEZ R3, FOO
(1)对于标准的MIPS单流水线,上述循环计算一个Y值需要多少时间?其中有多少空转
周期?
(2)对于标准的MIPS单流水线,将上述循环顺序展开4次,不进行任何指令调度,计算
一个Y值平均需要多少时间?加速比是多少?其加速是如何获得的?
(3)对于标准的MIPS单流水线,将上述循环顺序展开4次,优化和调度指令,使循环处
理时间达到最优,计算一个Y值平均需要多少时间?加速比是多少?
(4)对于采用如图4.8前瞻执行机制的MIPS处理器(只有一个整数部件)。

当循环第二
次执行到
BNEZ R3,FOO
时,写出前面所有指令的状态,包括指令使用的保留站、指令起始节拍、执行节拍和写结
果节拍,并写出处理器当前的状态。

(5)对于2路超标量的MIPS流水线,设有两个指令流出部件,可以流出任意组合的指令,
系统中的功能部件数量不受限制。

将上述循环展开4次,优化和调度指令,使循环处理时间达到最优。

计算一个Y值平均需要多少时间?加速比是多少?
(6)对于如图4.13结构的超长指令字MIPS处理器,将上述循环展开4次,优化和调度
指令,使循环处理时间达到最优。

计算一个Y值平均需要多少时间?加速比是多少?
50、设一条指令的执行过程分成取指令、分析指令和执行指令三个阶段,每个阶段所需的时间分别为△t、△t和2△t 。

分别求出下列各种情况下,连续执行N条指令所需的时间。

(1)顺序执行方式;
(2)只有“取指令”与“执行指令”重叠;
(3)“取指令”、“分析指令”与“执行指令”重叠。

参考答案
一、选择题
1、【答案】B
2、【答案】B
3、【答案】D
4、【答案】D
5、【答案】A
6、【答案】B
7、【答案】C
8、【答案】C
9、【答案】C
10、【答案】C
二、填空题
11、【答案】CPU时钟周期数,时钟周期
12、【答案】主存周期 Cache周期
13、【答案】页面争用
14、【答案】直接全相联
15、【答案】向量指令的处理时间向量长度为无穷量处理机的最大性能
16、【答案】单播模式选播模式广播模式
17、【答案】网格网络环形网络
18、【答案】线路交换包交换
19、【答案】不应出现死锁循环等待
20、【答案】定长操作码、Huffman编码
三、判断题
21、【答案】错
22、【答案】对
23、【答案】错
24、【答案】错
25、【答案】错
26、【答案】对
27、【答案】对
28、【答案】错
29、【答案】错
30、【答案】对
31、【答案】错
32、【答案】对
33、【答案】对
34、【答案】错
35、【答案】对
四、名词解释
36、答:复杂指令集计算机
37、答:它的共享存储器分布在各台处理机中,每台处理机都带有自己的本地存储器,组成一个“处理机-存储器”单元。

但是这些分布在各台处理机中的实际存储器又合在一起
统一编址,在逻辑上组成一个共享存储器。

这些处理机存储器单元通过互连网络连接在
一起,每台处理机除了能访问本地存储器外,还能通过互连网络直接访问在其他处理机
存储器单元中的“远程存储器”。

38、答:只把信息写入Cache中相应块,该块只有被替换时,才被写回主存。

39、答:当向量的长度大于向量寄存器的长度时,必须把长向量分成长度固定的段,然后循环分段处理,每一次循环只处理一个向量段。

40、答:在单位时间内流水线所完成的任务数量或输出结果的数量。

41、答:指令的静态调度是指依靠编译器对代码进行静态调度,以减少相关和冲突。

它不是在程序执行的过程中、而是在编译期间进行代码调度和优化的。

五、简答题
42、答:Flynn分类法是按照指令流和数据流的多倍性进行分类。

把计算机系统的结构分为:
(1)单指令流单数据流SISD
(2)单指令流多数据流SIMD
(3)多指令流单数据流MISD
(4)多指令流多数据流MIMD
43、答:
(1)变长编码格式。

如果系统结构设计者感兴趣的是程序的目标代码大小,而不是性能,就可以采用变长编码格式。

(2)固定长度编码格式。

如果感兴趣的是性能,而不是程序的目标代码大小,则可以选
择固定长度编码格式。

(3)混合型编码格式。

需要兼顾降低目标代码长度和降低译码复杂度时,可以采用混合型编码格式。

44、答:可采用多种方法:
(1)设置多个功能部件,使它们并行工作;
(2)采用链接技术,加快一串向量指令的执行;
(3)采用循环开采技术,加快循环的处理;
(4)采用多处理机系统,进一步提高性能。

45、答:区别不同指令集结构的主要因素是CPU中用来存储操作数的存储单元。

据此可将指令系统结构分为堆栈结构、累加器结构和通用寄存器结构。

46、答:总线互连的复杂性最低,成本也是最低。

其缺点是每台处理机可用的带宽较窄。

交叉开关是最昂贵的,因为其硬件复杂性以n2上升,所以其成本最高。

但是交叉开关的带宽和寻径性能最好。

当网络的规模较小时,它是一种理想的选择。

多级互连网络的复杂度和带宽介于总线和交叉开关之间,是一种折中方案。

其主要优点是采用模块化结构,可扩展性较好。

不过,其时延随网络级数的增加而上升。

另外,由于其硬件复杂度比总线高很多,其成本也不低。

六综合题
47、解:已知远程访问率 p = 0.5%,远程访问时间 t = 2000ns,时钟周期 T = 10ns
远程访问开销 C = t/T = 2000ns/10ns = 200(时钟周期数)
有 0.5%远程访问的机器的实际 CPI2为:
CPI2 = CPI1 + p×C = 1.0 + 0.5%×200 = 2.0
只有局部访问的机器的基本 CPI1 = 1.0
CPI2/ CPI1 = 2.0/1.0 = 2(倍)
因此,没有远程访问状态下的机器速度是有0.5% 远程访问的机器速度的2 倍。

48、解:(1)根据题意,约75%的访存为取指令。

因此,分离Cache的总体失效率为:(75%×0.15%)+(25%×3.77%)=1.055%;
容量为128KB的混合Cache的失效率略低一些,只有0.95%。

(2)平均访存时间公式可以分为指令访问和数据访问两部分:
平均访存时间=指令所占的百分比×(读命中时间+读失效率×失效开销)+
数据所占的百分比×(数据命中时间+数据失效率×失效开销)
所以,两种结构的平均访存时间分别为:
分离Cache的平均访存时间=75%×(1+0.15%×50)+25%×(1+3.77%×50)=(75%×1.075)+(25%×2.885)=1.5275
混合Cache的平均访存时间=75%×(1+0.95%×50)+25%×(1+1+0.95%×
50)
=(75%×1.475)+(25%×2.475)=1.725
因此,尽管分离Cache的实际失效率比混合Cache的高,但其平均访存时间反而较低。

分离Cache提供了两个端口,消除了结构相关。

49、解:(1)
L.D F2, 0(R1) 1
Stall
MUT.D F4, F2, F0 2
L.D F6, 0(R2) 3
Stall
Stall
ADD.D F6, F4, F6 4
Stall
Stall
S.D F6, 0[R2] 5
DADDIU R1, R1, #8 6
DADDIU R2, R2, #8 7
DSUBIU R3, R1, #DONE 8
BNEZ R3, FOO 9
所以,共有14 个时钟周期,其中有5 个空转周期。

(2)循环顺序展开4 次,不进行任何指令调度,则指令1~5 及其间的stall 都是必要的,只是指令6~9 只需执行一次,因此,共有 10 × 4 + 4 = 44 个时钟周期,计算出4 个
Y 值,所以计算一个Y 值需要11 个时钟周期,加速比为:14/11 = 1.27 。

加速主要是来自减少控制开销,即减少对R1、R2 的整数操作以及比较、分支指令而来的。

(3)循环顺序展开4 次,优化和调度指令,如下:
L.D F2, 0(R1)
L.D F8, 8(R1)
L.D F14, 16(R1)
L.D F20, 24(R1)
MUT.D F4, F2, F0
MUT.D F10, F8, F0
MUT.D F16, F14, F0
MUT.D F22, F20, F0
L.D F6, 0(R2)
L.D F12, 8(R2)
L.D F18, 16(R2)
L.D F24, 24(R2)
ADD.D F6, F4, F6
ADD.D F12, F10, F12
ADD.D F18, F16, F18
ADD.D F24, F22, F24
S.D F6, 0[R2]
S.D F12, 8[R2]
S.D F18, 16[R2]
S.D F24, 24[R2]
DADDIU R1, R1, #32
DADDIU R2, R2, #32
DSUBIU R3, R1, #DONE
BNEZ R3, FOO
共用了24 个时钟周期,则计算一个Y 值平均需要 24/4 = 6 个时钟周期,加速比:14/6 = 2.33
(4)
(5)
计算一个Y值需要 16/4 = 4 个时钟周期,加速比 = 14/4 = 3.5(6)
计算一个Y值需要 11/4 个时钟周期,加速比 = 14/(11/4) = 56/11
50、解:(1)每条指令的执行时间为:△t+△t+2△t=4△t
连续执行N条指令所需的时间为:4N△t
(2)连续执行N条指令所需的时间为:4△t+3(N-1)△t=(3N+1)△t (3)连续执行N条指令所需的时间为:4△t+2(N-1)△t=(2N+2)△t。

相关文档
最新文档