第二学期"开放本科"期末考试
计科技专业计算机系统结构试题
2001年7月
一、解释下列术语(每个2分,共20分)
1. 1. 互连网络
2. 2. Amdahl定律
3. 3. 共享存储多处理机
4. 4. 虚拟存储器
5. 5. 系列机
6. 6. 透明机
7. 7. LRU算法
8. 8. CISC
9. 9. 超流水线处理机
10.寄存器-寄存器结构
二、填空题(每空1分,共20分)
1. 按照Flynn分类法,根据指令流和数据流的不同组织方式,计算机系统的结构可以分为 、 、
和MIMD(多指令流多数据流)。
2.RISC思想的精华是 。我们通常用
来描述流水线的工作过程。
3.访问的局部性原理分为 的局部性和 的局部性两种。
4. 三种向量处理方式指 、 和
。
5.从不同的角度,我们可以把流水线分成不同的类别。如果根据流水线各功能段是否有反馈信号来划分,可以分为 和 ;多功能流水线可以分为两种,即根据它在同一时间内是否能连成多种方式,可以分为 和 。
6.衡量流水线性能通常有三种主要指标,它们是 、
和 。
7.消息寻径方式包括两种,即线路交换和包交换。其中包交换又包括
, 和 等方式。
三、(15分)
假设一条指令的执行过程分为"取指令"、"分析"和"执行"三段,每一段的时间分别2△t、2△t和3△t。在下列各种情况下,分别写出连续执行n条指令所需要的时间表达式。
1.顺序执行方式。(7分)
2."取指令"、"分析"和"执行"重叠。(8分)
四、(15分)
在下列不同结构的处理机上运行8×8的矩阵乘法C=A×B,计算所需要的最短时间。只计算乘法指令和加法指令的执行时间,不计算取操作数、数据传送和程序控制等指令的执行时间。加法部件延迟时间是3个时钟周期,乘法部件的延尺时间4个时钟周期,另外,加法指令和乘法指令还要经过一个"取指令"和"指令译码"的时钟周期,每个时钟周期为15ns,C的初始值为"0"。各操作部件的输出端有直接数据通路连接到有关操作部件的输入端,在操作部件的输出端设置有足够容量的缓冲寄存器。
〔提示〕:
要完成上面的矩阵乘法,我们可以计算需要完成的各种操作的数量(假定A和B都是8×8的矩阵)。C语言代码如下:
int k:
for(int i= 0;i<8;i++)
for(int j= 0,j<8;j++)
{
summ=0:
for(k= 0;k<8;k++)
}
sum+=A[i][k] ×B[k][i]
C[i][j]=sum;
需要完成的乘法数目为8×8×8= 512次;
需要完成的加法数目为8×8×7= 448次;
1. 1. 处理机内只有一个通用操作部件,采用顺序方式执行指令。(7分)
2. 2. 单流水线标量处理机,有一条两个功能的静态流水线,流水线每个功能段的延迟时间均为一个时钟周期,加法操作经过3个功能,乘法操作各经过4个功能段。(8分)
五、(10分)
已知四个程序在三台计算机上执行时间(s,秒)如下:
程序
执行时间(s,秒)
计算机A
计算机B
计算机C
程序1
1
10
20
程序2
1000
100
20
程序3
500
1000
50
程序4
100
800
100
假设四个程序中每一个都有100,000,000条指令要执行。
1. 1. 计算这三台计算机中每台机器上每个程序的MIPS速率。根据这些速率值,你能否得出有关三台计算机相对性能的明确结论?
2. 2. 给出一种统计的方法(比如求均值)来估计三台计算机的相对性能,说明理由。(4分)
六、(20分)
用一条5个功能段的浮点加法器流水线计算F=。每个功能段的延迟时间均相等,流水线的输出端和输入端之间有直接数据通路,而且设置有足够的缓冲寄存器。要求用尽可能短的时间完成计算。
[提示] :
首先需要考虑的是,10个数的和最少需要做几次加法。我们可以发现,加法的次数是不能减少的:9次;于是我们要尽可能快的完成任务,就只有考虑如何让流水线尽可能充满,这需要消除前后指令之间的相关。由于加法满足交换率和结合率,我们可以调整运算次序,如以下的指令序列,我们把中间结果寄存器称为R,源操作数寄存器称为A,最后结果寄存器称为F,并假设源操作数已经在寄存器中,则指令如下:
I1: R1←A1+A2
I2: R2←A3+A4
I3: R3←A5+A6
I4: R4←A7+A8
I5: R5←A9+A10
I6: R6←R1+R2
I7: R7←R3+R4
I8: R8←R5+R6
I9: F←R7+R8
这并不是唯一可能的计算方法。假设功能段的延迟为△t。
1. 1. 画出流水线时空图。(10分)
2. 2. 计算流水线的实际吞吐率、加速比和效率。(10分)
试卷代号:1048
中央广播电视大学2000-2001学年度
第二学期"开放本科"期末考试
计科技专业计算机系统结构
试题答案及评分标准
(供参考)
2001年7月
一、解释下列术语(每个2分,共20分)
1.互连网络:互连网络是一种由开关元件按照一定的拓扑结构和控制方式构成的网络,用来实现计算机系统内部多个处理机或多个功能部件之间的小相互连接。
2.Amdahl定律:系统中某一部件由于采用某种更快的执行方式后整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。
3.共享存储多处理机:是一种SIMD计算机,它包含重复设置的多个同样的处理单元,集中设置存储器,共享的多体并行存储器通过网络与各处理器相连。
4.虚拟存储器:又称为虚拟存储系统,由主存储器和联机工作的外部存储器共同组成。对应用程序员来说,它将速度、容量和价格不同的存储器组织成一个单一的容量非常大的主存储器。
6.透明性:指一种本来存在的事物或属性,从某种角度看似乎不存在的现象。
7. LRU算法:即近期最少使用算法,它选择近期最少访问的页面作为被替换的页面。
8.CISC:复杂指令系统计算机。这种系统中设置一些功能复杂的指令,把一些原来由软件实现的、常用的功能改用硬件的指令系统来实现。
9;超流水线处理机:通常把一个基本时钟周期内能够分时发射多条指令的处理机称为超流水线处理机。
10.寄存器一寄存器结构:一种向量计算机的存储器系统结构。它使用一个具有所要求带宽的高速中间存储器,并能实现该高速中间存储器与主存储器之间的快速数据交换。
二、填空题(每空1分,共20分)
1. SISD SIMD MISD或者单指令流单数据流 单指令流多数据流 多指令
流单数据流(答案顺序可以不同)
2.减少指令平均执行周期数 时空图
3.时间 空间(答案顺序可以不同)
4.横向处理方式 纵向处理方式 纵横处理方式
5.线性流水线 非线性流水线 静态流水线 动态流水线(前面两个答案顺序可以交换,后面两个答案顺序也可以交换)
6.吞吐率 加速比 效率
7.存储转发寻径 虚拟直通寻径 虫蚀寻径(顺序可以交换)
三、(15分)
1. (7分)
顺序执行时每条指令用时= 2△t+2△t十3△t=△t,因此n条指令所需要的时间=7n×△t
2. (8分)
第一条指令完成需要时间= 2△t+2△t+3△t=7△t,由于一条指令的"取指令,,和"分析"阶段和下一条指令的"分析"与"执行"阶段重叠,因此,此后每3△t、完成一条指令,余下的n一1条指令用时(n一1)×3△t。
因此n条指令所需要的时间=7△t+(n一1)×3△t=(3n+4)△t
四、(15分)
1.顺序执行时,每个乘法需要6个时钟周期(取指令、指令分析、指令执行),加法需要5个时钟周期;所以所需要的时间为:(7分)
T=(512×6+448×5)×15ns=79680ns
2.单流水线标量处理机,采用两功能静态流水线时;因为有足够的缓冲寄存器,所以我们可以首先把所有的乘法计算完,并通过调度使加法流水线不出现停顿,所以所需要的时间为:(8分)
T==[2+(4+512-1)+(3+448-1)] ×15ns=14505ns
五、(10分)
1. (6分)
因为MIPS=
所以每台计算机每个程序得MIPS速率如下表所示:
程序
MIPS速率(百万指令/秒)
计算机A
计算机B
计算机C
程序1
100
10
5
程序2
0.1
1
5
程序3
0.2
0.1
2
程序4
1
0.125
1
由上述MIPS速率可知,每个计算机对四个程序有不同的处理时间,而且大小顺序不同,所以不能得出明确结论。
2. (4分)
可以采取下面平均的方法(其中的一种)来比较各计算机的相对性能:
平均执行时间
MIPS速率(百万指令/秒)
计算机A
计算机B
计算机C
算术平均(AM)
25.3
2.81
3.25
几何平均(GM)
1.19
0.59
2.66
调和平均(HM)
0.25
0.20
2.1
如果按照算术平均AM比较性能,计算机A最快,计算机C最慢,如果按照调和平均HM比较性能,结果恰好相反。
六、(20分)
1. (10分)
时空图如下,图中的数字是指令号:
2. (10分)
整个计算过程需要21△t,所以
吞吐率为:
加速比为:
效率为:
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。
相关文章:
视频出现了哪些训练科目?你们单位要组织一次突入救援训04-27