文档视界 最新最全的文档下载
当前位置:文档视界 › 计算机系统结构第四章(习题解答)

计算机系统结构第四章(习题解答)

计算机系统结构第四章(习题解答)
计算机系统结构第四章(习题解答)

1. 假设一条指令的执行过程分为“取指令”、“分析”和“执行”三段,每一

段的时间分别是△t 、2△t 和3△t 。在下列各种情况下,分别写出连续执行n 条指令所需要的时间表达式。 ⑴ 顺序执行方式。

⑵ 仅“取指令”和“执行”重叠。 ⑶ “取指令”、“分析”和“执行”重叠。 答:

⑴ 顺序执行方式

1

2 ......

1 2 1

2

T =∑=++n

1

i i i i )t t t (执行分析取址=n(△t +2△t +3△t)=6n △t

⑵ 仅“取指令”和“执行”重叠

1

2 ......

1 2

1

2

T =6△t +∑=+1

-n 1

i i i )t t (执行分析=6△t +(n-1)(2△t +3△t)=(5n +1)△t

⑶ “取指令”、“分析”和“执行”重叠

1

2 3

4 ......

1 2 3 4

1

2

3

4

△t

2△t

3△t

△t

2△t

3△t

△t

2△t

3△t

T =6△t +∑=1

-n 1i i )t (执行=6△t +(n-1)(3△t)=(3n +3)△t

2. 一条线性流水线有4个功能段组成,每个功能段的延迟时间都相等,都为

△t 。开始5个任务,每间隔一个△t 向流水线输入一个任务,然后停顿2个△t ,如此重复。求流水线的实际吞吐率、加速比和效率。 答:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

...

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5

6 7 8 9 10 11 12 13 14 15

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

我们可以看出,在(7n+1)Δt 的时间内,可以输出5n 个结果,如果指令的序列足够长(n →∞),并且指令间不存在相关,那么,吞吐率可以认为满足:

)n (t

75

t )n /17(5t )1n 7(n 5TP ∞→?=?+=?+=

加速比为:

)n (7

20

n /17201n 7n 20t )1n 7(t 4n 5S ∞→=+=+=?+??=

从上面的时空图很容易看出,效率为:

)n (7

5

n /1751n 7n 5t )1n 7(4t 4n 5E ∞→=+=+=?+???=

3. 用一条5个功能段的浮点加法器流水线计算∑==10

1i i A 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 2 3 4 5 6 7

8

9

1 2 3 4 5 6 7 8

9

1 2 3 4 5 6 7 8

9

1 2 3 4 5 6 7 8

9

1 2 3 4 5 6 7

8

9

1

2

3

4

5

6

7

8

9 10 11 12 13 14 15 16 17 18 19 20 21

整个计算过程需要21Δt ,所以吞吐率为:

t

43

.0t 73t 219TP ?≈?=?=

加速比为:

1429.27

15

t 21t 59S ≈=???=

效率为:

43.07

3

t 215t 59E ≈=????=

4. 一条线性静态多功能流水线由6个功能段组成,加法操作使用其中的1、2、

3、6功能段,乘法操作使用其中的1、

4、

5、6功能段,每个功能段的延迟时间均相等。流水线的输出端与输入端之间有直接数据通路,而且设置有足够的缓冲寄存器。用这条流水线计算向量点积i 6

0i i b a B A ?=?∑=,画出流

水线时空图,计算流水线的实际吞吐率、加速比和效率。 答:

我们安排运算次序如下:把中间结果寄存器称为R ,源操作数寄存器称为A 、B ,最后结果寄存器称为F ,并假设源操作数已经在寄存器中,则指令如下:

I1: R0←A0*B0 I8: R7←R0+R1 I2: R1←A1*B1 I9:

R8←R2+R3

I3: R2←A2*B2 I10: R9←R4+R5 I4: R3←A3*B3 I11: R10←R6+R7 I5: R4←A4*B4 I12: R11←R8+R9 I6: R5←A5*B5 I13: F ←R10+R11 I7: R6←A6*B6

假设功能段的延迟为Δt 。时空图如下(图中的数字是指令号):

1 2 3 4 5 6 7

8 9 10 11 12 13 1 2 3 4 5 6 7

1 2 3 4 5 6 7

8 9 10 11 12

13

8 9 10 11 12

13

1 2 3 4 5 6 7

8 9 10 11 12

13

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

整个计算过程需要24Δt ,所以吞吐率为:

t

54

.0t 2413TP ?≈

?=

加速比为:

17.26

13

t 24t 46t 47S ≈=???+??=

效率为:

36.036

13

t 246t 134E ≈=????=

5. 一条有三个功能段的流水线如下图。每个功能段的延迟时间均相等,都为

△t 。其中功能段S 2的输出要返回到它自己的输入端循环一次。

⑴ 如果每间隔一个△t 向流水线的输入端连续输入新任务,问这条流水线会发

生什么情况

⑵ 求这条流水线能够正常工作的最大吞吐率、加速比和效率。 ⑶ 有什么办法能够提高这条流水线的吞吐率,画出新的流水线。 答: ⑴

如果每间隔一个△t 向流水线的输入端连续输入新任务,流水线S2功能段存在资源冲突。见下表:

每间隔两个△t 向流水线的输入端连续输入新任务(如见下表所示)可获得最佳性能。

△t △t △t

我们可以看出:在(2n+2)Δt 的时间内,可以输出n 个结果,如果指令的序列足够长(n →∞),并且指令间不存在相关,那么,吞吐率为:

)n (t 21

t )n /22(1t )2n 2(n TP ∞→?=?+=?+=

加速比为:

)n (2n

/112

1n n 2t )2n 2(t 4n S ∞→=+=+=?+??=

效率为:

)n (3

2

n /3323n 3n 2t )2n 2(3t 4n E ∞→=+=+=?+???=

如要提高这条流水线的吞吐率,可采用:将功能段S2重复设置一次,见下图:

6. 一条有4个功能段的非线性流水线,每个功能段的延迟时间都相等,都为

20ns ,它的预约表如下:

⑴ 写出流水线的禁止向量和初始冲突向量。 ⑵ 画出调度流水线的状态图。

△t △t △t △t

⑶求流水线的最小启动循环和最小平均启动距离。

⑷求平均启动距离最小的恒定循环。

⑸求流水线的最大吞吐率。

⑹按照最小启动循环连续输入10个任务,求流水线的实际吞吐率。

⑺画出该流水线各功能段之间的连接图。

答:

禁止向量F=(6,4,2);冲突向量C=(101010)。

∴流水线的最小启动循环为:(1,7)或(3,5)或(5,3),最小平均启动距

离为4。 ⑷

由上表可知:平均启动距离最小的恒定循环为(5)。 ⑸

采用最小平均启动距离为4的最小启动循环可获得流水线的最大吞吐率,以(1,7)为例:(其他类似,最大吞吐率皆相同)

当任务数为偶数2n 时:

)n (t

41

t n 8n 2t 7)1n (t n t 7n 2TP ∞→?=?=??-+??+?=

当任务数为奇数2n+1时:

)n (t

41

n /t 7t 8n /12t 7t n 81n 2t 7n t n t 71n 2TP ∞→?=?+?+=?+?+=??+??+?+=

∴ 流水线的最大吞吐率为:)s /(M 5.12ns

2041

t 41任务=?=?

10个任务的实际吞吐率:利用上式可得(偶数个任务)TP 10=1/4△t=12.5M(任务/s)。 ⑺

该流水线的连接图为:

7. 一条由4个功能段组成的非线性流水线的预约表如下,每个功能段的延迟

时间都为10ns 。

4

7

输入

⑴ 写出流水线的禁止向量和初始冲突向量。 ⑵ 画出调度流水线的状态图。

⑶ 求流水线的最小启动循环和最小平均启动距离。

⑷ 在流水线中插入一个非计算延迟功能段后,求该流水线的最佳启动循环及其

最小平均启动距离。

⑸ 画出插入一个非计算延迟功能段后的流水线预约表(5行8列)。 ⑹ 画出插入一个非计算延迟功能段后的流水线状态变换图。 ⑺ 分别计算在插入一个非计算延迟功能段前、后的最大吞吐率。

⑻ 如果连续输入10个任务,分别计算在插入一个非计算延迟功能段前、后的

实际吞吐率。 答: ⑴

禁止向量F=(5,2,1);冲突向量C=(10011)。 ⑵

最小启动循环为(3),最小平均启动距离为3。 ⑷

插入一个非计算延迟功能段后,最小平均启动距离为2(因为预约表中每行至多2个×),相应地可改进最小启动循环为(2)。 ⑸

i=4

流水线的禁止向量为(1,3,7),流水线的冲突向量为1000101, 流水线的状态图如下:

流水线的最小启动循环为(2),最小平均启动距离为2。 ⑺

插入前:

)s /(1033.3ns

1031

t 31t 3)1n (t 6n TP 7n max lim

任务数?≈?=?=??-+?=∞

插入后:

)s /(105ns

1021

t 21t 2)1n (t 6n TP 7n max lim

任务数?=?=?=??-+?=∞

连续输入10个任务,插入前的实际吞吐率为:

)s /(1003.3ns

103310

t 3310t 39t 610TP 7任务数?≈?=?=??+?=

连续输入10个任务,插入后的实际吞吐率为:

)s /(1085.3ns

102610

t 2610t 29t 810TP 7任务数?≈?=?=??+?=

8. 在流水线处理机中,有独立的加法操作部件和乘法操作部件各一个,加法

操作部件为4段流水线,乘法操作部件6段流水线,都在第一段从通用寄存器读操作数,在最后一段把运算结果写到通用寄存器中。每段的时间长度都相等,都是一个时钟周期。每个时钟周期发出一条指令。问可能发生哪几种数据相关写出发生相关的指令序列,分析相关发生的原因,并给出解决相关的具体办法。 答:

可能的数据相关性有: ⑴ “先写后读”(RAW )相关

Read After 加法写。原因:还没有写好就已经读取寄存器中的数据了。

DADD R1,R2,R3 ;(R2)+(R3)→(R1) DSUB R4,R1,R5

;(R1)-(R5)→(R4)

Read After 乘法写。原因:还没有写好已经读取寄存器中的数据了。

DMUL R1,R2,R3 ;(R2)×(R3)→(R1) DSUB R4,R1,R5

;(R1)-(R5)→(R4)

本相关在流水线顺序执行和乱序执行时都可能发生。解决的方法是:利用编译程序调整指令的次序方法;延迟执行是避免数据相关最简单的方法;建立寄存器之间的专用路径。 ⑵ “写—写”(WAW )相关

Write After 乘法写。原因:后写的反而早执行(乘法所化的时间长,后面

一个写任务反而先完成),使最后写入的内容不正确。

DMUL R1,R2,R3 ;(R2)×(R3)→(R1)

DSUB R1,R4,R5 ;(R4)-(R5)→(R1)

本相关只有在流水线乱序执行时才可能发生。解决的方法是:寄存器换名。

⑶“先读后写”(WAR)相关

Write After 任何读。原因:前面的读操作因为某种原因被推迟,要读的内容被后面的写操作修改了。

DSUB R4,R1,R5 ;(R1)-(R5)→(R4)

DADD R1,R2,R3 ;(R2)+(R3)→(R1)

本相关只有在流水线乱序执行时才可能发生。解决的方法是:寄存器换名。

9. 在下列不同结构的处理机上运行8×8的矩阵乘法C=A×B,计算所需要的

最短时间。只计算乘法指令和加法指令的执行时间,不计算取操作数、数据传送和程序控制等指令的执行时间。加法部件和乘法部件的延迟时间都是3个时钟周期,另外,加法指令和乘法指令还要经过一个“取指令”和“指令译码”的时钟周期,每个时钟周期为20ns,C的初始值为“0”。各操作部件的输出端有直接数据通路连接到有关操作部件的输入端,在操作部件的输出端设置有足够容量的缓冲寄存器。

⑴处理机内只有一个通用操作部件,采用顺序方式执行指令。

⑵单流水线标量处理机,有一条两个功能的静态流水线,流水线每个功能段的

延迟时间均为一个时钟周期,加法操作和乘法操作各经过3个功能段。

⑶多操作部件处理机,处理机内有独立的乘法部件和加法部件,两个操作部件

可以并行工作。只有一个指令流水线,操作部件不采用流水线结构。

⑷单流水线标量处理机,处理机内有两条独立的操作流水线,流水线每个功能

段的延迟时间均为一个时钟周期。

⑸超标量处理机,每个时钟周期同时发射一条乘法指令和一条加法指令,处理

机内有两条独立的操作流水线,流水线的每个功能段的延迟时间均为一个时钟周期。

⑹超流水线处理机,把一个时钟周期分为两个流水级,加法部件和乘法部件的

延迟时间都为6个流水级,每个时钟周期能够分时发射两条指令,即每个流水级能够发射一条指令。

⑺超标量超流水线处理机,把一个时钟周期分为两个流水级,加法部件和乘法

部件延迟时间都为6个流水级,每个流水级能够同时发射一条乘法指令和一条加法指令。

答:

要完成上面的矩阵乘法,需要完成的乘法数目为8×8×8=512次;需要完成的加法数目为8×8×7=448次;下面分析处理机的结构会给性能带来什么样的影响。

⑴通用操作部件采用顺序方式执行

顺序执行时,每个乘法和加法指令都需要5个时钟周期(取指令、指令分析、指令执行);所以所需要的时间为:

=

(

=

?

=

+

512

?

ns

96000

96

s

ns

20

)

5

448

⑵单流水线标量处理机,有一条两个功能的静态流水线

因为有足够的缓冲寄存器,所以我们可以首先把所有的乘法计算完,并通过调度使加法流水线不出现停顿,所以所需要的时间为:

12345678513514515516517518963964965966

1=①+②、2=1+③、3=2+④、4=3+⑤、5=4+⑥、6=5+⑦、7=6+⑧

?

=

-

2[

-

+

=

+

3(

+

+

)1

19

.

32

s

512

ns

3(

20

448

1

)]

⑶多操作部件处理机,只有一条指令流水线

由于只有一条指令流水线,所以只能一个时钟周期发射一条指令;由于操作

部件不采用流水线,对于结果C矩阵的第一个元素,首先执行2次乘法,然后乘法和加法并行执行7次,此时C矩阵的第一个元素出来了,然后加法运算停顿3个时钟周期,再开始与乘法并行执行运算7次,如此下去,直到C的64个元素都出来。故执行时间为:

s

82

.

30

ns

30820

ns

20

)]

7

3

3(

63

)7

3

2

3(

2[

=

=

?

?

+

?

+

?

+

?

+

=

⑷单流水线标量处理机,处理机内有两条独立的操作流水线

由于只有一条指令流水线,所以只能一个时钟周期发射一条指令;对于乘法运算不存在数据相关,对于加法运算有数据相关,由于存在足够的缓冲寄存器,我们可以通过合适的调度消除加法的数据相关。因此,最佳情况下的执行时间为:

12345678910111213141516171819202122

1=①+②、2=1+③、3=2+④、4=3+⑤、5=4+⑥、6=5+⑦、7=6+⑧

s

28

.

19

ns

19280

ns

20

]1

)

448

512

(

3

2[

=

=

?

-

+

+

+

=

⑸超标量处理机

同一时钟周期可以有一条乘法指令和一条加法指令同时发射,对于乘法运算不存在数据相关性,对于加法运算有数据相关性,由于存在足够的缓冲寄存器,当运算完所有的乘法运算后,还要做一次加法运算。因此执行时间为:

加法加3123456712345…加2123456712345…

加1123456712345…

译码123456712345…

12345678910111213141516171819202122

1=①+②、2=1+③、3=2+④、4=3+⑤、5=4+⑥、6=5+⑦、7=6+⑧

=

3

=

2[

+

=

+

(

-

+

?

ns

10

.

38

10380

s

)1

]3

20

512

ns

⑹超流水线处理机

每个时钟周期发射两条指令,加法部件和乘法部件都为6个流水级。事实上相当于将时钟周期变成了10ns,而加法和乘法流水线变成了6级。因此执行时间为:

=

6

4[

=

-

=

+

+

+

?

448

ns

.9

69

s

9690

ns

512

)

]1

(

10

⑺超标量超流水线处理机

一个时钟周期分为两个流水级,加法部件和乘法部件都为6个流水级,每个流水级能同时发射一条加法和一条乘法指令。综合⑸和⑹的分析,我们可以知道,执行时间为:

=

=

4[

?

-

=

+

+

6

+

ns

5270

.5

27

s

ns

10

512

)1

]6

(

计算机系统结构题库

《计算机系统结构》题库 一.单项选择题(在下列每小题的四个备选答案中,只有一个答案是正确的,请把你认为是正确的答案填入题后的()内,每小题2分) 第一章: 1.计算机系统多级层次中,从下层到上层,各级相对顺序正确的应当是: A.汇编语言机器级---操作系统机器级---高级语言机器级 B.微程序机器级---传统机器语言机器级---汇编语言机器级 C.传统机器语言机器级---高级机器语言机器级---汇编语言机器级 D.汇编语言机器级---应用语言机器级---高级语言机器级 答案:B 分数:2 所属章节1—1 2.汇编语言源程序变成机器语言目标程序是经来实现的。 A. 编译程序解释 B. 汇编程序解释 C. 编译程序翻译 D. 汇编程序翻译 答案:D 分数:2 所属章节1—1 3.直接执行微指令的是: A. 汇编程序 B. 编译程序 C. 硬件 D. 微指令程序 答案:C 分数:2 所属章节1—1 4.对系统程序员不透明的是: A. Cache存储器 B. 系列机各档不同的数据通路宽度 C. 指令缓冲寄存器 D. 虚拟存储器 答案:D 分数:2 所属章节1—2 5.对应用程序员不透明的是: A. 先行进位链 B. 乘法器 C. 指令缓冲器 D. 条件码寄存器 答案:D 分数:2 所属章节1—2 6.对机器语言程序员透明的是: A. 中断字 B. 主存地址寄存器 C. 通用寄存器 D. 条件码 答案:B 分数:2 所属章节1—2 7.计算机系统结构不包括: A. 主存速度 B. 机器工作状态 C. 信息保护 D. 数据表示 答案:A 分数:2 所属章节1—2 8.对计算机系统结构透明的是: A. 字符行运算指令 B. 是否使用通道行I/O处理机 C. 虚拟存储器 D. VLSI技术 答案:D 分数:2 所属章节1—2 9.对汇编语言程序员透明的是: A.I/O方式中的DMA访问方式 B. 浮点数据表示 C. 访问方式保护 D 程序性中断. 答案:A 分数:2 所属章节1—2 10.属计算机系统结构考虑的应是:

北邮高级计算机系统结构实验二三四五

实验二指令流水线相关性分析 ·实验目的 通过使用WINDLX模拟器,对程序中的三种相关现象进行观察,并对使用专用通路,增加运算部件等技术对性能的影响进行考察,加深对流水线和RISC处理器的特点的理解。 ·实验原理: 指令流水线中主要有结构相关、数据相关、控制相关。相关影响流水线性能。·实验步骤 一.使用WinDLX模拟器,对做如下分析: (1)观察程序中出现的数据/控制/结构相关。指出程序中出现上述现象的指令组合。 (2)考察增加浮点运算部件对性能的影响。 (3)考察增加forward部件对性能的影响。 (4)观察转移指令在转移成功和转移不成功时候的流水线开销。 ·实验过程 一.使用WinDLX模拟器,对做如下分析: } 浮点加、乘、除部件都设置为1,浮点数运算部件的延时都设置为4,如图1: 图1 初始设置 将和加载至WinDLX中,如图2示。

图2 加载程序 1.观察程序中出现的数据/控制/结构相关;指出程序中出现上述现象的指令组合。 1)数据相关 点击F7,使程序单步执行,当出现R-Stall时停止,运行过程中出现下图3所示,输入整数6。 图3 输入整数6 @ 打开Clock Diagram,可以清楚的看到指令执行的流水线如图4所示。 图4 指令流水线 双击第一次出现R-Stall的指令行,如图5所示。

图5 指令详细信息 对以上出现的情况分析如下: 程序发生了数据相关,R-Stall(R-暂停)表示引起暂停的原因是RAW。 lbu r3,0×0(r2) 要在WB周期写回r3中的数据;而下一条指令 & seqi r5,r3,0×a 要在intEX周期中读取r3中的数据。 上述过程发生了WR冲突,即写读相关。为了避免此类冲突, seq r5,r4,0×a的intEX指令延迟了一个周期进行。 由此,相关指令为: 2)控制相关 由图6可以看出,在第4时钟周期:第一条指令处于MEM段,第二条命令处于intEX段,第三条指令出于aborted状态,第四条命令处于IF段。 图 6 指令流水线 }

计算机系统结构 第四章(习题解答)

1. 假设一条指令的执行过程分为“取指令”、“分析”和“执行”三段,每一段的时间分别是△t 、2△t 和3△t 。在下列各种情况下,分别写出连续执行n 条指令所需要的时间表达式。 ⑴ 顺序执行方式。 ⑵ 仅“取指令”和“执行”重叠。 ⑶ “取指令”、“分析”和“执行”重叠。 答: 1 2 3 4 ...... 1 2 3 4 1 2 3 4 T =6△t +∑=1 -n 1 i i )t (执行=6△t +(n-1)(3△t)=(3n +3)△t △t 2△t 3△t

2. 一条线性流水线有4个功能段组成,每个功能段的延迟时间都相等,都为△t。开始5个任务, 每间隔一个△t向流水线输入一个任务,然后停顿2个△t,如此重复。求流水线的实际吞吐率、加速比和效率。 答: n→ 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。时空图如下(图中的数字是指令号): I4:R3←A3*B3 I11:R10←R6+R7 I5:R4←A4*B4 I12:R11←R8+R9 I6:R5←A5*B5 I13:F←R10+R11 I7:R6←A6*B6 假设功能段的延迟为Δt。时空图如下(图中的数字是指令号): 1 2 3 4 5 6 7 8 9 10 11 12 13

1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 9 10 11 12 13 8 9 10 11 12 13 1 2 3 4 5 6 7 8 9 10 11 12 13 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 222324 整个计算过程需要24Δt,所以吞吐率为: 5. S 2 ⑴ ⑵ ⑶ 答: ⑴ 下表: ⑵ 每间隔两个△t向流水线的输入端连续输入新任务(如见下表所示)可获得最佳性能。

计算机系统结构三四章作业及答案

3.1 简述流水线技术的特点。(1) 流水线把一个处理过程分解为若干个子过程,每个子过程由一个专门的功能部件来实现。因此,流水线实际上是把一个大的处理功能部件分解为多个独立的功能部件,并依靠它们的并行工作来提高吞吐率。(2) 流水线中各段的时间应尽可能相等,否则将引起流水线堵塞和断流。(3) 流水线每一个功能部件的前面都要有一个缓冲寄存器,称为流水寄存器。(4) 流水技术适合于大量重复的时序过程,只有在输入端不断地提供任务,才能充分发挥流水线的效率。(5) 流水线需要有通过时间和排空时间。在这两个时间段中,流水线都不是满负荷工作。 3.2 解决流水线瓶颈问题有哪两种常用方法?答:细分瓶颈段与重复设置瓶颈段 3.3 有一条指令流水线如下所示: (1 用两给出条指 (1) (24? 变八级流水线(细分) ? 重复设置部件 )(ns 85 1 T n TP 1pipeline -== 3.4 有一个流水线由4段组成,其中每当流过第三段时,总要在该段循环一次,然后才能流到第4段。如果每段经过一次所需的时间都是△t ,问: (1)当在流水线的输入端连续地每△t 时间输入一个任务时,该流水线会发生什么情况? (2)此流水线的最大吞吐率为多少?如果每2△t 输入一个任务,连续处理10个任务时,其实际吞吐率和效率是多少? (3)当每段时间不变时,如何提高流水线的吞吐率?人连续处理10个任务时,其吞吐率提高多少? 解:(1)会发生流水线阻塞情况。

(2) (3)重复设置部件 吞吐率提高倍数= t t ??2310 75 =1.64 3.5 有一条动态多功能流水线由5段组成,加法用1、3、4、5段,乘法用1、2、5段,第2段的时间为2△t ,其余各段的时间均为△t ,而且流水线的输出可以直接返回输入端或暂存于相应的流水线寄存器中。现在该流水线上计算 ∏=+4 1 )(i i i B A ,画出时空图,并计算其吞吐率、加速比和效率。 +B 4;再计算由图可见,它在18个△t 时间中,给出了7个结果。所以吞吐率为: 如果不用流水线,由于一次求积需3△t ,一次求和需5△t ,则产生上述7个结果共需(4×5+3×3)△t =29△t 。所以加速比为: 该流水线的效率可由阴影区的面积和5个段总时空区的面积的比值求得: 3.6 在一个5段流水线处理机上,各段执行时间均为△t,需经9△t 才能完成一个任务,其预约表如下所示。 段23 时间 入 A 1 B 1 A 2 B 2 A 3 B 3 A 4 B 4 A B C D A × B C ×D

2010年4月自考计算机系统结构试题及答案

全国2010年4月自学考试计算机系统结构试题 课程代码:02325 一、单项选择题(本大题共10小题,每小题1分,共10分) 在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均不得分。 1.在计算机系统结构设计中,提高软件功能实现的比例可( ) A.提高解题速度B.减少需要的存储器容量 C.提高系统的灵活性D.提高系统的性能价格比 2.浮点数表示的尾数的基r m=16,尾数长度p=8,可表示的规格化最大正尾数的值是( ) A.1/256 B.1/2 C.15/16 D.255/256 3.下列数据存储空间为隐含寻址方式的是( ) A.CPU中的通用寄存器B.主存储器 C.I/O接口中的寄存器D.堆栈 4.当计算机系统执行通道程序完成输入输出工作时,执行通道程序的是( ) A.CPU B.通道 C.CPU和通道D.指定的外设 5.下列有关中断的叙述正确的是( ) A.中断响应的次序是由硬件决定的B.中断处理的次序是由硬件决定的 C.中断处理的次序是不可改的D.中断响应的次序是可灵活改变的 6.与虚拟存储器的等效访问速度无关 ..的是( ) A.访存页地址流B.页面替换算法 C.主存的容量D.辅存的容量 7.非线性流水线的特征是( ) A.一次运算中使用流水线中的多个功能段 B.一次运算中多次使用流水线中的某些功能段 C.流水线中某些功能段在各次运算中的作用不同 D.流水线的各功能段在不同的运算中可以有不同的连接 8.属于集中式共享存储器结构的SIMD计算机是( ) A.ILLIAC IV B.BSP C.CM-2 D.MP-1 1

计算机体系结构实验报告二

实验二结构相关 一、实验目得: 通过本实验,加深对结构相关得理解,了解结构相关对CPU性能得影响。 二、实验内容: 1、用WinDLX模拟器运行程序structure_d、s 。 2、通过模拟,找出存在结构相关得指令对以及导致结构相关得部件。 3、记录由结构相关引起得暂停时钟周期数,计算暂停时钟周期数占总执行 周期数得百分比。 4、论述结构相关对CPU性能得影响,讨论解决结构相关得方法。 三、实验程序structure_d、s LHI R2, (A>>16)&0xFFFF 数据相关 ADDUI R2, R2, A&0xFFFF LHI R3, (B>>16)&0xFFFF ADDUI R3, R3, B&0xFFFF ADDU R4, R0, R3 loop: LD F0, 0(R2) LD F4, 0(R3) ADDD F0, F0, F4 ;浮点运算,两个周期,结构相关 ADDD F2, F0, F2 ; < A stall is found (an example of how to answer your questions) ADDI R2, R2, #8 ADDI R3, R3, #8 SUB R5, R4, R2 BNEZ R5, loop ;条件跳转 TRAP #0 ;; Exit < this is a ment !! A: 、double 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 B: 、double 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 四、实验过程 打开软件,load structure_d、s文件,进行单步运行。经过分析,此程序一 次循环中共有五次结构相关。(Rstall 数据相关Stall 结构相关) 1)第一个结构相关:addd f2,,f0,f2 由于前面得数据相关,导致上一条指令addd f0,f0,f4暂停在ID阶段,所以下一条指令addd f2,,f0,f2发生结构相关,导致相关得部件:译码部件。

计算机系统结构有详细答案

(仅供参考,不作为考试标准), 选择题分,每题分)2(30计算机系统结构设计者所关心的是________所看到的的计算机结构。 A)硬件设计人员B)逻辑设计人员 D)高级语言程序员C)机器语言或汇编语言程序员 。意________,应当注提系在计算机统设计时,为了高系统性能度的令执行速快A)加经常性使用指大的指令特B)要别精心设计少量功能强数的占减少在数量上很小比例的指令条C)要度D)要加快少量指令的速 。的问题统中因________而导致系主重叠寄存器技术要用于解决在RISC 流水线影A)JMP指令响保护令B)CALL指的现场问存储器不便来只C)有LOAD和STORE指令带的访度速器访问D)存储 ________ 效率高计为使流水算机运行要A)各过程段时间不同B)连续处理的任务类型应该不同 D)连续处理的任务数尽可能少C)连续处理的任务类型应该相同 栈型替是的________。换算法堆不属于B)近期最少A)近期最使用法久未用法 D)页面失效频率法出进C)先先法 象联组,相映的优点。是________象联全与相映相比B)块冲突概率低C)命中率高D)主存利用率小录A)目表高 是方好关相指除中叠次一重消令最的法________。B)设相关专用令指改准A)不修通路 令指条下析分后推C) 令指条下行执后推D) 流的用采,时关据数到,中作水操遇相________。有法办解决器译编化优A)用办的排新重令指过通,测检序法据数B)向定重技术 C)延迟转移技术 D)加快和提前形成条件码 经多级网络串联来实现全排列网络,只能用________。 A)多级立方体网络B)多级PM2I网络 D)上述多级混洗交换网络任何网络C) 序传送的________。是以虫蚀寻径流水方式在各寻径器是顺B)包A)消息C)片节D)字 ________ 处理机超标量作指条令部件个B) 只有一操期A)在一个时钟周内分时发射多多钟C)在一个时周期内同时发射条指令件有只一个取指部D)

计算机体系结构试题汇总

计算机系统结构 姓名:学号: 一、简答题(每小题10分,共20分) 1.简述使用物理地址进行DMA存在的问题,及其解决办法。 2.从目的、技术途径、组成、分工方式、工作方式等5个方面对同构型多处理机和异构型多处理机做一比较(列表)。 二、(60分)现有如下表达式: Y=a ×X 其中:X和Y是两个有64个元素的32位的整数的向量,a为32位的整数。假设在存储器中,X和Y的起始地址分别为1000和5000,a的起始地址为6000。 1.请写出实现该表达式的MIPS代码。 2.假设指令的平均执行时钟周期数为5,计算机的主频为500 MHz,请计算上述MIPS 代码(非流水化实现)的执行时间。 3.将上述MIPS代码在MIPS流水线上(有正常的定向路径、分支指令在译码段被解析出来)执行,请以最快执行方式调度该MIPS指令序列。注意:可以改变操作数,但不能改变操作码和指令条数。画出调度前和调度后的MIPS代码序列执行的流水线时空图,计算调度前和调度后的MIPS代码序列执行所需的时钟周期数,以及调度前后的MIPS流水线执行的加速比。 4.根据3的结果说明流水线相关对CPU性能的影响。 三、(20分)请分析I/O对于性能的影响有多大?假设: 1.I/O操作按照页面方式进行,每页大小为16 KB,Cache块大小为64 B;且对应新页的地址不在Cache中;而CPU不访问新调入页面中的任何数据。 2.Cache中95%被替换的块将再次被读取,并引起一次失效;Cache使用写回方法,平均50%的块被修改过;I/O系统缓冲能够存储一个完整的Cache块。 3.访问或失效在所有Cache块中均匀分布;在CPU和I/O之间,没有其他访问Cache 的干扰;无I/O时,每1百万个时钟周期中,有15,000次失效;失效开销是30个时钟周期。如果替换块被修改过,则再加上30个周期用于写回主存。计算机平均每1百万个周期处理一页。

计算机系统结构复习总结

计算机系统结构复习总结

计算机系统结构复习总结 一、计算机系统结构概念 1.1 计算机系统结构:程序员所看到的计算机的基本属性,即概念性结构与功能特性。 *注意:对不同层次上的程序员来说,由于使用的程序设计语言不同,可能看到的概念性结构和功能特性会有所不同。 1.2 计算机系统的层次结构 现代计算机是一种包括机器硬件、指令系统、系统软件、应用程序和用户接口的集成系统。 现代计算机结构图 *注意:计算机结构的层次模型 依据计算机语言广义的理解,可将计算机系统看成由多级“虚拟”计算机所组成。

从语言层次上画分可得下图: 计算机结构的层次模型 1.3计算机系统结构组成与实现 计算机系统结构:是计算机系统的软件与硬件直接的界面 计算机组成:是指计算机系统结构的逻辑实现 计算机实现:是指计算机组成的物理实现*计算机系统结构、组成与实现三者间的关系: 计算机系统结构不同会影响到可用的计算机组成技术不同,而不同的计算机组成又会反过来影响到系统结构的设计。因此,计算机系统结构的设计必须结合应用来考虑,要为软件和算法的实现提供更多更好的硬件支持,同时要考虑可

能采用和准备采用哪些计算机组成技术,不能过多或不合理地限制各种计算机组成、实现技术的采用与发展。 计算机组成与计算机实现可以折衷,它主要取决于器件的来源、厂家的技术特长和性能价格比能否优化。应当在当时的器件技术条件下,使价格不增或只增很少的情况下尽可能提高系统的性能。 1.4 计算机系统结构的分类 计算机结构分类方式主要有三种: (1)按“流”分类 按“流”分类法是Flynn教授在1966年提出的一种分类方法,它是按照计算机中 指令流(Instruction Stream)和数据流(Data Stream)的多倍性进行分类。指令流是指机 器执行的指令序列,数据流是指指令流调用 的数据序列。多倍性是指在计算机中最受限 制(瓶颈最严重)的部件上,在同一时间单 位中,最多可并行执行的指令条数或处理的 数据个数。 *注意:按“流”分类法,即Flynn分类法的逻

(完整版)计算机系统结构试题及答案

计算机系统结构复习题 单选及填空: 计算机系统设计的主要方法 1、由上往下的设计(top-down) 2、由下往上的设计(bottom-up) 3、从中间开始(middle-out) Flynn分类法把计算机系统的结构分为以下四类: (1)单指令流单数据流 (2)单指令流多数据流 (3)多指令流单数据流 (4) 多指令流多数据流 堆栈型机器:CPU 中存储操作数的单元是堆栈的机器。 累加器型机器:CPU 中存储操作数的单元是累加器的机器。 通用寄存器型机器:CPU 中存储操作数的单元是通用寄存器的机器。 名词解释: 虚拟机:用软件实现的机器叫做虚拟机,但虚拟机不一定完全由软件实现,有些操作可以由硬件或固件(固件是指具有软件功能的固件)实现。 系列机:由同一厂家生产的具有相同系统结构、但具有不同组成和实现的一系列不同型号的计算机。 兼容机:它是指由不同公司厂家生产的具有相同系统结构的计算机。 流水线技术:将一个重复的时序过程,分解成为若干个子过程,而每一个子过程都可有效地在其专用功能段上与其它子过程同时执行。 单功能流水线:指流水线的各段之间的连接固定不变、只能完成一种固定功能的流水线。 多功能流水线:指各段可以进行不同的连接,以实现不同的功能的流水线。 顺序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序完全相同。 乱序流水线:流水线输出端任务流出的顺序与输入端任务流入的顺序可以不同,允许后进入流水线的任务先完成。这种流水线又称为无序流水线、错序流水线、异步流水线。 吞吐率:在单位时间内流水线所完成的任务数量或输出结果的数量。 指令的动态调度:

是指在保持数据流和异常行为的情况下,通过硬件对指令执行顺序进行重新安排,以提高流水线的利用率且减少停顿现象。是由硬件在程序实际运行时实施的。 指令的静态调度: 是指依靠编译器对代码进行静态调度,以减少相关和冲突。它不是在程序执行的过程中、而是在编译期间进行代码调度和优化的。 超标量: 一种多指令流出技术。它在每个时钟周期流出的指令条数不固定,依代码的具体情况而定,但有个上限。 超流水:在一个时钟周期内分时流出多条指令。 多级存储层次: 采用不同的技术实现的存储器,处在离CPU不同距离的层次上,各存储器之间一般满足包容关系,即任何一层存储器中的内容都是其下一层(离CPU更远的一层)存储器中内容的子集。目标是达到离CPU最近的存储器的速度,最远的存储器的容量。 写直达法: 在执行写操作时,不仅把信息写入Cache中相应的块,而且也写入下一级存储器中相应的块。写回法: 只把信息写入Cache中相应块,该块只有被替换时,才被写回主存。 集中式共享多处理机: 也称为对称式共享存储器多处理SMP。它一般由几十个处理器构成,各处理器共享一个集中式的物理存储器,这个主存相对于各处理器的关系是对称的, 分布式共享多处理机: 它的共享存储器分布在各台处理机中,每台处理机都带有自己的本地存储器,组成一个“处理机-存储器”单元。但是这些分布在各台处理机中的实际存储器又合在一起统一编址,在逻辑上组成一个共享存储器。这些处理机存储器单元通过互连网络连接在一起,每台处理机除了能访问本地存储器外,还能通过互连网络直接访问在其他处理机存储器单元中的“远程存储器”。 多Cache一致性: 多处理机中,当共享数据进入Cache,就可能出现多个处理器的Cache中都有同一存储器块的副本,要保证多个副本数据是一致的。 写作废协议: 在处理器对某个数据项进行写入之前,它拥有对该数据项的唯一的访问权 。 写更新协议: 当一个处理器对某数据项进行写入时,它把该新数据广播给所有其它Cache。这些Cache用该新数据对其中的副本进行更新。 机群:是一种价格低廉、易于构建、可扩放性极强的并行计算机系统。它由多台同构或异构

计算机系统结构_小抄

1.Cache一致性问题主要由哪些可能的因素有关? 共享可写数据引起的不一致,进程迁移引起的不一致,I/O 传输引起的不一致 2.在先行控制方式处理机中,为了保证处理机的最大性能,对于控制相关(包括短循环)采取了哪些应对措施? 采用硬件或软件的办法尽量避免数据相关发生; 在确保指令正确执行的前提下,推后指令分析; 设置相关专用通路来解决数据梯状 3.数据类型、数据表示和数据结构之间的关系是什么?在设计一个计算机系统时,确定数据表示的原则主要有哪几个? 数据表示研究的是计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型。数据结构研究的是面向系统软件,面向就用领域所需要处理的各种数据类型,研究这些数据类型的逻辑结构和物理结构之间的关系,并给出相应的算法。 数据表示和数据结构都是数据类型的子集。原则:一是缩短程序的运行时间,二是减少CPU与主存储器之间的通信量,三是这种数据表示的通用性和利用率。 4.从机器(汇编)语言程序员看,以下哪些是透明的?指令地址寄存器;指令缓冲器;时标发生器;条件码寄存器; 乘法器;主存地址寄存器;磁盘外设;先行进位链;移位器;通用寄存器;中断字寄存器; 参考答案:透明的有:指令缓冲器、时标发生器、乘法器、先行进位链、移位器 5.用具体例子来说明计算机系统结构、计算机组成和计算机实现三个概念 计算机系统结构、计算机组成和计算机实现是三个不同的概念。系统结构是计算机系统的软、硬件的界面; 计算机组成是计算机系统结构的逻辑实现;计算机实现是计算机组成的物理实现。 6.综述线性流水线和非线性流水线的异同? 线性流水线段间无反馈或越过的通路,非线性流水线则有反馈回路或前越通路。 在线性流水线中,由于每一个任务在流水线的每一功能段中都流过一次,而且仅流过一次,因此,可以在每一个时钟周期向流水线输入一个新任务。 在非线性流水中,由于存在有反馈回路,当一个任务在流水线中流过时,在同一个功能段中可能要经过多次。因此,就不能每一个时钟周期向流水线输入一个新任务。线性流水线是将流水线的各段逐个串接起来。非线性流水线经常用于递归调用,或构成多功能流水线。其性能指标有吞吐率、加速比和效率。 7.虚拟机:通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。 8.程序访问的局部性 局部性的实质是:根据程序的最近情况,可以较精确地预测出最近的将来将要用到哪些指令和数据。 9、分别用变址寻址方式和间接寻址方式编写一个程序,求C=A+B,其中,A与B都是由n个元素组成的一维数组。比较两个程序,并回答下列问题: (1)从程序的复杂程度看,哪一种寻址方式更好? (2)从硬件实现的代价看,哪一种寻址方式比较容易实现? (3)从对向量运算的支持看,哪一种寻址方式更好? 参考答案:(1)变址寻址方式(2)间接寻址方式(3)变址寻址方式 10、简述SIMD计算机的分布式存储器与共享存储器的异同。 参考答案:SIMD计算机的分布式存储器与共享存储器的相同点都存在互联网络。 不同点是在共享内存方案中,共享的多体并行存储器通过对准网络与各处理单元相连。在分布内存方案中,每个处理单元有自己的本地存储器,处理单元有自己的本地存储器,处理单元之间的数据通过数据寻径网络完成。 11、根据多台外围设备共享通道的不同情况,通道可分为那三种类型? 参考答案:字节多路通道、选择通道、数组多路通道。 12、简述流水线技术的特点 参考答案:流水线技术具有以下特点: ⑴水过程由多个相联系的子过程组成,每个过程称为流水线的"级"或"段"。

计算机系统结构考试题库及答案

计算机系统结构试题及答案 一、选择题(50分,每题2分,正确答案可能不只一个,可单选 或复选) 1.(CPU周期、机器周期)是内存读取一条指令字的最短时间。 2.(多线程、多核)技术体现了计算机并行处理中的空间并行。 3.(冯?诺伊曼、存储程序)体系结构的计算机把程序及其操作数 据一同存储在存储器里。 4.(计算机体系结构)是机器语言程序员所看到的传统机器级所具 有的属性,其实质是确定计算机系统中软硬件的界面。 5.(控制器)的基本任务是按照程序所排的指令序列,从存储器取 出指令操作码到控制器中,对指令操作码译码分析,执行指令操作。 6.(流水线)技术体现了计算机并行处理中的时间并行。 7.(数据流)是执行周期中从内存流向运算器的信息流。 8.(指令周期)是取出并执行一条指令的时间。 9.1958年开始出现的第二代计算机,使用(晶体管)作为电子器件。 10.1960年代中期开始出现的第三代计算机,使用(小规模集成电路、 中规模集成电路)作为电子器件。 11.1970年代开始出现的第四代计算机,使用(大规模集成电路、超 大规模集成电路)作为电子器件。 12.Cache存储器在产生替换时,可以采用以下替换算法:(LFU算法、 LRU算法、随机替换)。

13.Cache的功能由(硬件)实现,因而对程序员是透明的。 14.Cache是介于CPU和(主存、内存)之间的小容量存储器,能高 速地向CPU提供指令和数据,从而加快程序的执行速度。 15.Cache由高速的(SRAM)组成。 16.CPU的基本功能包括(程序控制、操作控制、时间控制、数据加 工)。 17.CPU的控制方式通常分为:(同步控制方式、异步控制方式、联合 控制方式)反映了时序信号的定时方式。 18.CPU的联合控制方式的设计思想是:(在功能部件内部采用同步控 制方式、在功能部件之间采用异步控制方式、在硬件实现允许的情况下,尽可能多地采用异步控制方式)。 19.CPU的同步控制方式有时又称为(固定时序控制方式、无应答控 制方式)。 20.CPU的异步控制方式有时又称为(可变时序控制方式、应答控制 方式)。 21.EPROM是指(光擦可编程只读存储器)。 22.MOS半导体存储器中,(DRAM)可大幅度提高集成度,但由于(刷 新)操作,外围电路复杂,速度慢。 23.MOS半导体存储器中,(SRAM)的外围电路简单,速度(快),但 其使用的器件多,集成度不高。 24.RISC的几个要素是(一个有限的简单的指令集、CPU配备大量的 通用寄存器、强调对指令流水线的优化)。

北邮计算机系统结构实验报告-实验一到五-WINDLX模拟器

北京邮电大学 实验报告 课程名称计算机系统结构 计算机学院03班 王陈(11)

目录 实验一WINDLX模拟器安装及使用......................................... 错误!未定义书签。 ·实验准备................................................................................ 错误!未定义书签。 ·实验环境................................................................................ 错误!未定义书签。 ·实验步骤................................................................................ 错误!未定义书签。 ·实验内容及要求.................................................................... 错误!未定义书签。 ·实验过程............................................................................. 错误!未定义书签。 ·实验总结............................................................................. 错误!未定义书签。实验二指令流水线相关性分析 ............................................... 错误!未定义书签。 ·实验目的............................................................................. 错误!未定义书签。 ·实验环境................................................................................ 错误!未定义书签。 ·实验步骤................................................................................ 错误!未定义书签。 ·实验过程............................................................................. 错误!未定义书签。 ·实验总结............................................................................. 错误!未定义书签。实验三DLX处理器程序设计 .................................................... 错误!未定义书签。 ·实验目的............................................................................. 错误!未定义书签。 ·实验环境................................................................................ 错误!未定义书签。 ·实验步骤................................................................................ 错误!未定义书签。 ·实验过程............................................................................. 错误!未定义书签。 A.向量加法代码及性能分析 ................................................... 错误!未定义书签。 B.双精度浮点加法求和代码及结果分析 .............................. 错误!未定义书签。 ·实验总结............................................................................. 错误!未定义书签。实验四代码优化 ....................................................................... 错误!未定义书签。 ·实验目的............................................................................. 错误!未定义书签。 ·实验环境................................................................................ 错误!未定义书签。 ·实验原理................................................................................ 错误!未定义书签。 ·实验步骤................................................................................ 错误!未定义书签。 ·实验过程............................................................................. 错误!未定义书签。 ·实验总结+实习体会........................................................... 错误!未定义书签。实验五循环展开 ....................................................................... 错误!未定义书签。 ·实验目的............................................................................. 错误!未定义书签。 ·实验环境................................................................................ 错误!未定义书签。 ·实验原理................................................................................ 错误!未定义书签。 ·实验步骤................................................................................ 错误!未定义书签。 ·实验过程............................................................................. 错误!未定义书签。 矩阵乘程序代码清单及注释说明........................................... 错误!未定义书签。 相关性分析结果........................................................................... 错误!未定义书签。 增加浮点运算部件对性能的影响........................................... 错误!未定义书签。 增加forward部件对性能的影响 ............................................ 错误!未定义书签。 转移指令在转移成功和转移不成功时候的流水线开销 .. 错误!未定义书签。 ·实验总结+实习体会+课程建议......................................... 错误!未定义书签。

-计算机系统结构(有详细答案)

(仅供参考,不作为考试标准), 选择题(30分,每题2分) 计算机系统结构设计者所关心的是________所看到的的计算机结构。 A)硬件设计人员B)逻辑设计人员 C)机器语言或汇编语言程序员D)高级语言程序员 在计算机系统设计时,为了提高系统性能,应当注意________。 A)加快经常性使用指令的执行速度 B)要特别精心设计少量功能强大的指令 C)要减少在数量上占很小比例的指令的条数 D)要加快少量指令的速度 重叠寄存器技术主要用于解决在RISC系统中因________而导致的问题。 A)JMP指令影响流水线 B)CALL指令的现场保护 C)只有LOAD和STORE指令带来的访问存储器不便 D)存储器访问速度 为使流水计算机运行效率高________ A)各过程段时间要不同B)连续处理的任务类型应该不同 C)连续处理的任务类型应该相同D)连续处理的任务数尽可能少不属于堆栈型替换算法的是________。 A)近期最少使用法B)近期最久未用法 C)先进先出法D)页面失效频率法 与全相联映象相比,组相联映象的优点是________。 A)目录表小B)块冲突概率低C)命中率高D)主存利用率高"一次重叠"中消除"指令相关"最好的方法是________。 A)不准修改指令B)设相关专用通路 C)推后分析下条指令D)推后执行下条指令 流水操作中,遇到数据相关时,采用的解决办法有________。 A)用优化编译器检测,通过指令重新排序的办法 B)数据重定向技术 C)延迟转移技术 D)加快和提前形成条件码 经多级网络串联来实现全排列网络,只能用________。 A)多级立方体网络B)多级PM2I网络 C)多级混洗交换网络D)上述任何网络 虫蚀寻径以流水方式在各寻径器是顺序传送的是________。 授课:XXX

计算机系统结构实验报告

计算机系统结构实验报告 一.流水线中的相关 实验目的: 1. 熟练掌握WinDLX模拟器的操作和使用,熟悉DLX指令集结构及其特点; 2. 加深对计算机流水线基本概念的理解; 3. 进一步了解DLX基本流水线各段的功能以及基本操作; 4. 加深对数据相关、结构相关的理解,了解这两类相关对CPU性能的影响; 5. 了解解决数据相关的方法,掌握如何使用定向技术来减少数据相关带来的暂停。 实验平台: WinDLX模拟器 实验内容和步骤: 1.用WinDLX模拟器执行下列三个程序: 求阶乘程序fact.s 求最大公倍数程序gcm.s 求素数程序prim.s 分别以步进、连续、设置断点的方式运行程序,观察程序在流水线中的执行情况,观察 CPU中寄存器和存储器的内容。熟练掌握WinDLX的操作和使用。 2. 用WinDLX运行程序structure_d.s,通过模拟找出存在资源相关的指令对以及导致资源相 关的部件;记录由资源相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行周期数的 百分比;论述资源相关对CPU性能的影响,讨论解决资源相关的方法。 3. 在不采用定向技术的情况下(去掉Configuration菜单中Enable Forwarding选项前的勾选符),用WinDLX运行程序data_d.s。记录数据相关引起的暂停时钟周期数以及程序执行的 总时钟周期数,计算暂停时钟周期数占总执行周期数的百分比。 在采用定向技术的情况下(勾选Enable Forwarding),用WinDLX再次运行程序data_d.s。重复上述3中的工作,并计算采用定向技术后性能提高的倍数。 1. 求阶乘程序 用WinDLX模拟器执行求阶乘程序fact.s。这个程序说明浮点指令的使用。该程序从标准 输入读入一个整数,求其阶乘,然后将结果输出。 该程序中调用了input.s中的输入子程序,这个子程序用于读入正整数。 实验结果: 在载入fact.s和input.s之后,不设置任何断点运行。 a.不采用重新定向技术,我们得到的结果

计算机体系结构实验报告二

实验二结构相关 一、实验目的: 通过本实验,加深对结构相关的理解,了解结构相关对CPU性能的影响。 二、实验内容: 1. 用WinDLX模拟器运行程序structure_d.s 。 2. 通过模拟,找出存在结构相关的指令对以及导致结构相关的部件。 3. 记录由结构相关引起的暂停时钟周期数,计算暂停时钟周期数占总执行 周期数的百分比。 4. 论述结构相关对CPU性能的影响,讨论解决结构相关的方法。 三、实验程序structure_d.s LHI R2, (A>>16)&0xFFFF 数据相关 ADDUI R2, R2, A&0xFFFF LHI R3, (B>>16)&0xFFFF ADDUI R3, R3, B&0xFFFF ADDU R4, R0, R3 loop: LD F0, 0(R2) LD F4, 0(R3) ADDD F0, F0, F4 ;浮点运算,两个周期,结构相关 ADDD F2, F0, F2 ; <- A stall is found (an example of how to answer your questions) ADDI R2, R2, #8 ADDI R3, R3, #8 SUB R5, R4, R2 BNEZ R5, loop ;条件跳转 TRAP #0 ;; Exit <- this is a comment !! A: .double 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 B: .double 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

四、实验过程 打开软件,load structure_d.s文件,进行单步运行。经过分析,此程序一 次循环中共有五次结构相关。(R-stall 数据相关Stall- 结构相关) 1)第一个结构相关:addd f2,,f0,f2 由于前面的数据相关,导致上一条指令addd f0,f0,f4暂停在ID阶段,所以下一条指令addd f2,,f0,f2发生结构相关,导致相关的部件:译码部件。 2)第二个结构相关:ADDI R2, R2, #8,与第一个结构相关类似。由于数据相关, 上一条指令暂停在ID阶段,所以导致下一条指令发生结构相关。

相关文档
相关文档 最新文档