文档视界 最新最全的文档下载
当前位置:文档视界 › 计算机系统结构第1-8章部分作业答案

计算机系统结构第1-8章部分作业答案

计算机系统结构第1-8章部分作业答案
计算机系统结构第1-8章部分作业答案

第一章

某台主频为400MHz 的计算机执行标准测试程序,程序中指令类型、执行数量和平均时钟周期数如下:

指令类型 指令执行数量

平均时钟周期数

整数 45000 1 数据传送 75000 2 浮点 8000 4 分支

1500

2

求该计算机的有效CPI 、MIPS 和程序执行时间。 解:(1)CPI =(45000×1+75000×2+8000×4+1500×2) / 129500= (或

259

460

) (2)MIPS 速率=f/ CPI =400/ = (或

259

5180

MIPS) (3)程序执行时间= (45000×1+75000×2+8000×4+1500×2)/400=575s 假设某应用程序中有4类操作,通过改进,各操作获得不同的性能提高。具体数据如操作类型 程序中的数量 (百万条指令)

改进前的执行时间

(周期)

改进后的执行时间

(周期)

操作1 10 2 1 操作2 30 20 15 操作3 35 10 3 操作4

15

4

1

(1)改进后,各类操作的加速比分别是多少

(2)各类操作单独改进后,程序获得的加速比分别是多少 (3)4类操作均改进后,整个程序的加速比是多少 解:根据Amdahl 定律Se

Fe

Fe S n +

-=)1(1可得

操作类型 各类操作的指令条数在程序中所占的比例F i

各类操作的加速比S i

各类操作单独改进后,程序获得的加速比

操作1 % 2 操作2 % 操作3 % 操作4

%

4

4类操作均改进后,整个程序的加速比:

2.16)1(1

≈+-=∑∑i

i

i n S F F S

第二章

变长编码,哈夫曼编码

第三章

有一条指令流水线如下所示:

(1)求连续输入10条指令的情况下,该流水线的实际吞吐率和效率。

(2)该流水线的瓶颈在哪一段请采用两种不同的措施消除此瓶颈。对于你所给出的两种新的流水线,连续输入10条指令时,其实际吞吐率和效率各是多少 解:

(1)本题主要考察对各功能段用时不等的线性流水线的性能计算公式的掌握情况。

2200(ns)

2009200)10050(50t n t T max

k

i i =?++++=?-+?=∑=)1(1

流水 )(ns 220

1

T n

TP 1-==流水

45.45%11

5

4400TP k

t

TP E k

1

i i

≈=?

=??

=∑= 注意:对于公式不能死记硬背,需要充分理解,注意公式的适用条件。

(2)瓶颈在3、4段。

变成八级流水线(细分瓶颈段方法)

1

2

3_1

3_2

4_1

4_4

50ns

50ns

50ns

50ns

50ns

850(ns)

509850t 1)(n t T max

k

1

i i =?+?=?-+?=∑=流水

)(ns 85

1

T n

T P 1-==流水

58.82%17

10

8400TP k

ti

TP E k

1

i ≈=?

=??

=∑= 重复设置瓶颈段方法

50ns 50ns 100ns 200ns 1 2 3 4

1

2

Stage

)(ns 85

1

T n

TP 1-==流水

58.82%17

10

8

85010

400E ≈=??=

有一个流水线由4段组成,其中每当流过第三段时,总要在该段循环一次,然后才能流到第4段。如果每段经过一次所需的时间都是△t ,问:

(1)当在流水线的输入端连续地每△t 时间输入一个任务时,该流水线会发生什么情况 (2)此流水线的最大吞吐率为多少如果每2△t 输入一个任务,连续处理10个任务时,其实际吞吐率和效率是多少

(3)当每段时间不变时,如何提高流水线的吞吐率人连续处理10个任务时,其吞吐率提高多少 解:

(1)会发生流水线阻塞情况。

(2)当任务流过第三段时要在该段循环一次,相当于要占用第三段2△t 时间,则该流水线可看成是具有瓶颈段的线性流水线,瓶颈段即第三段,所需时间为2△t 。每2△t 输

入一个任务,连续处理10个任务的时空图如下:

1

234

则:

54.35%

92

50TP E T n

Tp T TP max ≈=??=?==?=?=452310

2321t t

t t 流水

流水

(3)重复设置部件。重复的部件可并联在流水线上,也可串联于流水线中。如下图所示:

t

t

t

t

t

采用并联方式时的时空图如下:

1

2

t

?14

t

t ??=??==75

1410流水

T n

TP 吞吐率提高倍数=

t

t ??2310

75=

有一条静态多功能流水线由5段组成,加法用1、3、4、5段,乘法用1、2、5段,第3段的时间为2△t ,其余各段的时间均为△t ,而且流水线的输出可以直接返回输入端或暂存于相应的流水线寄存器中。现在该流水线上计算∏=+4

1

)(i i i

B A

,画出时空图,并计算其吞吐率、

解:此题容易出的问题是忽略静态流水线的特点,当加法任务流入流水线后紧跟着启动乘法任务。正确的做法是当所有加法任务完成从流水线流出后再启动乘法任务,同时还应注意到流水线中的第三段所用时间为2△t 。 (1)任务分析

1 2 3 4 5 6 7

1

2

3

4 1 2 3 4

5

6

7 1

2

3

4

5

6

7

18△t

(3)计算流水线性能 吞吐率:t

T n Tp ?=

=

187

加速比:18291854=

??+??==

t 3t 3t 流水

串行T T Sp

效率: 90

2954=???+??==

t 1853t 3t 时空区总面积实际占用面积E

在CRAY-l 机器上,按照链接方式执行下述4条向量指令(括号中给出了相应功能部件时

间),如果向量寄存器和功能部件之间的数据传送需要1拍,试求此链接流水线的通过时间是多少拍如果向量长度为 64,则需多少拍才能得到全部结果。

V0←存储器 (从存储器中取数:7拍) V2←V0+V1 (向量加:3拍) V3←V2<A3 (按(A3)左移:4拍)

V5←V3∧V4 (向量逻辑乘:2拍)

解:通过时间就是每条向量指令的第一个操作数执行完毕需要的时间,也就是各功能流水线由空到满的时间,具体过程如下图所示。要得到全部结果,在流水线充满之后,向量中后继操作数继续以流水方式执行,直到整组向量执行完毕。

(拍)

=+)=-+((拍))=++)+(++)+(++)+(+=(通过总共通过866323164T T 2312114113117T

说明:若考虑数据从存储器送访存部件也有1拍延迟,则通过时间应为24拍,完成全部任务所用时间相应为87拍。

某向量处理机有16个向量寄存器,其中V0-V5种分别存放有向量A,B,C,D,E,F,向量的长度是8,向量各元素均为浮点数;处理部件采用两个单功能流水线,加法功能部件时间为2拍,乘法功能部件时间为3拍。采用类似CRAY-1的链接技术,先计算(A+B)×C,在流水线不停的情况下,接着计算(D+E)×F 。

(1)求此链接流水线的通过时间是多少拍(设寄存器出入各需1拍)

(2)假如每排时间为50ns ,完成这些计算并把结果存进相应寄存器,此处理部件的时间吞吐率为多少MFLOPS 解:

(1)我们在这里假设A +B 的中间结果放在V6中,(A +B )×C 地最后结果放在V7中,D +E 地中间结果放在V8中,(D +E )×F 的最后结果放在V9中。具体实现参考下图:

通过时间应该为前者((A +B )×C )通过的时间:

T 通过= (1+2+1)+(1+3+1) =9(拍)

(2)在做完(A +B )×C 之后,作(C +D )×E 就不需要通过时间了。

;

F V8V9E;D V8C;V6V7B;A V6*=+=*=+=

1200(ns)T T ==+=(拍))-+(通过24818=1200×10-9 (s )

题目中所问为吞吐率是多少MFLOPS ,显然是让求以MFLOPS 为单位的吞吐率。MFLOPS 是指每秒完成多少百万次浮点运算,因此要明确所有任务中共多少浮点运算。显然共有4条浮点向量指令,而每条指令完成8个浮点运算,因此浮点运算总数为32个。所以: 吞吐率:M FLOPS

26.67T 32TP E ≈??=?=

-6

961010120032

10

第四章

假设有一条长流水线,仅仅对条件转移指令使用分支目标缓冲。假设分支预测错误的开销为4个时钟周期,缓冲不命中的开销为3个时钟周期。假设:命中率为90%,预测精度为90%,分支频率为15%,没有分支的基本CPI 为1。 (1)求程序执行的CPI 。

(2)相对于采用固定的2个时钟周期延迟的分支处理,哪种方法程序执行速度更快 解:

(1)程序执行的CPI = CPI 基本+分支延迟

= 1 + 15%×[90%×(1-90%)×4 = (1-90%)×3] =

(2)采用固定的2个时钟周期延迟时,

程序执行的CPI = CPI 基本+分支延迟 = 1 + 15%×2 =

显然采用分支目标缓冲器时程序执行时间更少,即速度更快。

假设分支目标缓冲的命中率为90%,程序中无条件转移指令的比例为5%,没有无条件转移指令的程序CPI 值为1。假设分支目标缓冲中包含分之目标指令,允许无条件转移指令进入分支目标缓冲,则程序的CPI 值为多少假设无条件分支指令不进入分支目标缓冲时程序执行的CPI 为

解:无条件分支指令的特点是只要执行肯定分支成功。因此,对于进入分支目标缓冲器的无条件分支指令,分支预测的精度为100%,也就不会带来分支延迟。而没有进入分支目标缓冲器的无条件分支指令会带来一定分支延迟。首先要求出一条无条件分支指令的分支延迟是多少,不妨设为x 个时钟周期。

由题知无条件分支指令不进入分支目标缓冲时程序执行的CPI 为,而程序中没有无条件转移指令的CPI 为1,因此有

CPI = CPI 无分支指令+无条件分支延迟 = 1 + 5%x = 所以 x= 2 因此,允许无条件分支指令进入分支目标缓冲器时, CPI = CPI 无分支指令+ 5%×(1-90%)×2 =

第五章存储层次

解释下列术语(不要求写在作业本上,但应作为复习内容)

存储系统全相联映像直接映像组相联映像写直达法

写回法按写分配法不按写分配法命中时间失效率

强制性失效容量失效冲突失效 2:1经验规则相联度

答:(答案略)

简述“Cache-主存”层次与“主存-辅存”层次的区别。

答:

地址映像方法有哪些它们各有什么优缺点

答:

(1)全相联映像。实现查找的机制复杂,代价高,速度慢。Cache空间的利用率较高,块冲突概率较低,因而Cache的失效率也低。

(2)直接映像。实现查找的机制简单,速度快。Cache空间的利用率较低,块冲突概率较高,因而Cache的失效率也高。

(3)组相联映像。组相联是直接映像和全相联的一种折中。

降低cache失效率有哪几种方法

答:

(1)增加Cache块大小

(2)提高相联度

(3)增加Cache的容量

(4)Victim Cache

(5)伪相联Cache

(6)硬件预取技术

(7)由编译器控制的预取

(8)编译器优化。

简述减小cache失效开销的几种方法。

答:

(1) 让读失效优先于写。

(2) 写缓冲合并。

(3) 请求字处理技术。

(4) 非阻塞Cache 或非锁定Cache 技术。 (5) 采用二级Cache 。

组相联Cache 的失效率比相同容量直接映像Cache 的失效率低。由此能否得出结论:采用组相联映像一定能带来性能上的提高为什么

答:不一定。因为组相联命中率的提高是以增加命中时间为代价的,组相联需要增加多路选择开关。

假设对指令Cache 的访问站全部访问的75%;而对数据Cache 的访问占全部访问的25%。Cache 的命中时间为1个时钟周期,失效开销为50个时钟周期,在混合Cache 中一次load 或store 操作访问Cache 的命中时间都要增加一个时钟周期,32KB 的指令Cache 的失效率为%,32KB 的数据Cache 的失效率为%,64KB 的混合Cache 的失效率为%。又假设采用写直达策略,且有一个写缓冲器,并且忽略写缓冲器引起的等待。试问指令Cache 和数据Cache 容量均为32KB 的分离Cache 和64KB 的混合Cache 相比,哪种Cache 的失效率更低两种情况下平均访存时间各是多少 解:

(1)分离Cache 的总体失效率:

4975

.1242539.075.=?+?=?+?=?+?=?+?=

+=

=

%.8%%%F 数据访存失效率数据访存比例指令访存失效率指令访存比例数据访存失效率访存总次数

数据访存次数指令访存失效率访存总次数指令访存次数访存总次数

数据访存失效率数据访存次数指令访存失效率指令访存次数访存总次数

数据访存失效次数指令访存失效次数访存总次数

访存失效总次数分离

而容量为64 KB 的混合Cache 的失效率略低一些,只有%。 (2)平均访存时间分析

平均数据访存时间

数据访存比例平均指令访存时间指令访存比例访存总次数

平均数据访存时间数据访存次数访存总次数平均指令访存时间指令访存次数访存总次数

平均数据访存时间数据访存次数平均指令访存时间指令访存次数访存总次数

数据访存总时间指令访存总时间访存总次数

访存总时间平均访存时间?+?=?+

?=?+?=

+=

=

所以:

平均访存时间分离 =75%×(1+%×50)+25%×(1+%×50) =(75%×+(25%×

平均访存时间混合 =75%×(1+%×50)+25%×(1+1+%×50) =(75%×+(25%× =

因此,尽管分离Cache 的实际失效率比混合Cache 的高,但其平均访存时间反而较低。

给定以下的假设,试计算直接映像Cache 和2路组相联Cache 的平均访问时间以及CPU 的性能。由计算结果能得出什么结论

(1)理想Cache 情况下的CPI 为,时钟周期为2ns ,平均每条指令访存次。 (2)两者Cache 容量均为64KB ,块大小都是32B 。

(3)组相联映像Cache 中的多路选择器使CPU 的时钟周期增加了10%。 (4)这两种Cache 的失效开销都是80ns 。 (5)命中时间为1个时钟周期。

(6)64KB 直接映像Cache 的失效率为%,64KB2路组相联Cache 的失效率为%。

解:

(1) 平均访问时间=命中时间+失效率×失效开销

平均访问时间1-路=+% ×80=

平均访问时间2-路=×(1+10%)+% ×80= 两路组相联的平均访问时间比较低

(2)CPU 时间 =(CPU 执行周期+存储等待周期)×时钟周期时间

= IC (CPI 执行+总失效次数/指令总数×失效开销) ×时钟周期 = IC ((CPI 执行×时钟周期)+(每条指令的访存次数×失效率×失效开销 ×时钟周期))

所以:

CPU 时间 1路 =IC×2+××80)= CPU 时间 2路=IC×2+××80)=

相对性能比:

路时间时间1CPU CP 2=

直接映象cache 的访问速度比两路组相联cache 要快倍,而两路组相联Cache 的平均性能比直接映象cache 要高倍。因此这里选择两路组相联。

第七章 互连网络

解释下列术语(不要求写在作业本上,但应作为复习内容)

线路交换 分组交换 静态网络 动态网络 互连网络 互连函数 网络直径 结点度 网络规模 等分宽度 对称网络

答:答案略

设E 为交换函数,S 为均匀洗牌函数,B 为蝶式函数,PM2I 为移数函数,函数的自变量是十进制数表示的处理机编号。现在有32台处理机,其编号为0,1,2,…., 31。

(1)分别计算下列互连函数

E 2(12) S(8) B(9) PM2I +3(28) E 0(S(4)) S(E 0(18)) (2)用E 0和S 构成均匀洗牌交换网(每步只能使用E 0和S 一次),网络直径是多少从5号处理机发送数据到7号处理机,最短路径要经过几步请列出经过的处理几号。

(3)采用移数网络构成互连网络,网络直径是多少结点度是多少与2号处理机距离最远的是几号处理机 解:

(1)共有32台处理机,因此用log 232 = 5比特表示各处理器编号。

E 2(12) 十进制 = E 2(01100) 二进制=(01000)二进制= (8) 十进制 S(8) 十进制 = S (01000)二进制= (10000)二进制= (16) 十进制 B(9) 十进制 = B (01001)二进制= (11000)二进制= (24) 十进制

PM2I +3(28) = (28 +23

) mod 32 = 4 E 0(S(4))十进制 = E 0(S (00100))二进制= E 0(01000)= (01001)二进制= (9) 十进制 S(E 0(18)) 十进制 = S (E 0(10010))二进制=S (10011)= (00111)二进制= (7) 十进制 (2)2n

个结点的均匀洗牌交换网的网络直径是2n-1,32个结点的均匀洗牌交换网的网络直径为9。

从5号处理机发送数据到7号处理机,最短路径要经过6步:

00111100111001001001010000010000101S

E S E S E 000?→??→??→??→??→??→?

(3)网络直径是3,节点度是9,与2号处理机距离最远的是13、15、21、23号处理机。.

第八章 多处理机

解释下列术语(不要求写在作业本上,但应作为复习内容)

集中式共享多处理机 分布式共享多处理机 通信延迟 计算/通信比 监听协议 目录协议 写作废协议 写更新协议

答:答案略

一个具有32个处理器的多处理机,对远程存储器访问时间为2000 ns 。除了通信以外,假设所有其他访问均命中局部存储器。当发出一个远程请求时,本处理器挂起。处理器的时钟周期时间是10ns ,假设指令基本的CPI 为(设所有访存均命中局部存储器)。对于下述两种情况:

(1)没有远程访问。

(2)有%的指令需要远程访问。 试问前者比后者快多少 解:

已知远程访问率p=%,远程访问时间t=2000ns ,时钟周期时间T=10ns ,则 远程访问开销C=t/T = 2000ns/10ns = 200 个时钟周期 则有%远程访问的机器的实际CPI 2为:

CPI2= CPI1 + p×C = + %×200 =

只有局部访问的机器的基本CPI1 = ,故

CPI2/CPI1 = = 2(倍)

因此,没有远程访问状态下的机器速度是有%远程访问的机器速度的2倍。

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

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

计算机体系结构第五章练习题参考解答

第 五 章 5.34 在一个采用组相联映象方式的Cache 存储系统中,主存由B 0~B 7共8块组成,Cache 有2组,每组2块,每块大小为16B 。在一个程序执行过程中,访存的主存块地址流为:B 6,B 2,B 4,B 1,B 4,B 6,B 3,B 0,B 4,B 5,B 7,B 3。 (1)写出主存地址的格式,并标出各字段的长度。 (2)写出Cache 地址的格式,并标出各字段的长度。 (3)指出主存与Cache 之间各个块的映象关系。 (4)若Cache 的4个块号为C 0、C 1、C 2和C 3,列出程序执行过程中的Cache 块地址流。 (5)若采用FIFO 替换算法,计算Cache 的块命中率。 (6)若采用LRU 替换算法,计算Cache 的块命中率。 (7)若改为全相联映象方式,再做(5)和(6)。 (8)若在程序执行过程中,每从主存装入一块到Cache ,平均要对这个块访问16次,计算在这种情况下的Cache 命中率。 解:(1)(2)采用组相联映象时,主存和Cache 地址的格式分别为: 主存按Cache 的大小分区,现主存有8个块,Cache 有2×2=4个块,则主存分为8/4=2 个区,区号E 的长度为1位。又每区有2个组,则组号G 、g 的长度都为1位。而每组有2个块,则块号B 、b 的长度又都为1位。每块大小为16个存储字,故块内地址W 、w 的长度都为4位。 (3)根据组相联映象的规则,主存块0~7与Cache 块0~3之间的映象关系为:主存块0、1、4、5与Cache 块0、1之间全相联,主存块2、3、6、7与Cache 块2、3之间全相联。 (4)根据组相联映象的规则,该主存块地址流相应的一种Cache 块地址流如下表所示(组内替换算法为FIFO )。 时间: 1 2 3 4 5 6 7 8 9 10 11 12 主存块地址流: B 6 B 2 B 4 B 1 B 4 B 6 B 3 B 0 B 4 B 5 B 7 B 3 Cache 块地址流: C 2 C 3 C 0 C 1 C 0 C 2 C 2 C 0 C 0 C 0 C 3 C 2 (5)组内替换算法采用FIFO 时,Cache 块0~3的使用过程如下表所示。 时间: 1 2 3 4 5 6 7 8 9 10 11 12 主存块地址流: B 6 B 2 B 4 B 1 B 4 B 6 B 3 B 0 B 4 B 5 B 7 B 3 Cache 块0 Cache 块1 Cache 块2 Cache 块3 命中 命中 命中 可见命中三次,Cache 块命中率为H i = 3/12 = 0.25。 (6)组内替换算法采用LRU 时,Cache 块0~3的使用过程如下表所示。

完整版计算机体系结构课后习题原版答案_张晨曦著

第1章计算机系统结构的基本概念 (1) 第2章指令集结构的分类 (10) 第3章流水线技术 (15) 第4章指令级并行 (37) 第5章存储层次 (55) 第6章输入输出系统 (70) 第7章互连网络 (41) 第8章多处理机 (45) 第9章机群 (45) 第1章计算机系统结构的基本概念 1.1 解释下列术语 层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。 虚拟机:用软件实现的机器。 翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。

解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。 计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。 在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。 计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。 计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。 系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。 Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。 程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。包括时间局部性和空间局部性。

计算机系统结构网上作业

计算机系统结构作业参考答案 一、 1、试述现代计算机系统的多级层次结构。 计算机系统具有层次性,它由多级层次结构组成。从功能上计算机系统可分为五个层次级别:第一级是设计级。这是一个硬件级,它由机器硬件直接执行。 第二级是一般机器级,也称为机器语言级。它由微程序解释系统.这一级是硬件级。 第三级是操作系统级,它由操作系统程序实现。这些操作系统由机器指令和广义指令组成,这些广义指令是操作系统定义和解释的软件指令。这一级也称混合级。 第四级是汇编语言级。它给程序人员提供一种符号形式的语言,以减少程序编写的复杂性。这一级由汇编程序支持执行。 第五级是高级语言级。这是面向用户为编写应用程序而设置的。这一级由各种高级语言支持。 2、试述RISC设计的基本原则和采用的技术。 答:一般原则: (1)确定指令系统时,只选择使用频度很高的指令及少量有效支持操作系统,高级语言及其它功能 的指令,大大减少指令条数,一般使之不超过100条; (2)减少寻址方式种类,一般不超过两种; (3)让所有指令在一个机器周期内完成; (4)扩大通用寄存器个数,一般不少于32个,尽量减少访存次数; (5)大多数指令用硬联实现,少数用微程序实现; (6)优化编译程序,简单有效地支持高级语言实现。

基本技术: (1)按RISC一般原则设计,即确定指令系统时,选最常用基本指令,附以少数对操作系统等支持最有用的指令,使指令精简。编码规整,寻址方式种类减少到1、2种。 (2)逻辑实现用硬联和微程序相结合。即大多数简单指令用硬联方式实现,功能复杂的指令用微程序实现。 (3)用重叠寄存器窗口。即:为了减少访存,减化寻址方式和指令格式,简有效地支持高级语言中的过程调用,在RISC机器中设有大量寄存嚣,井让各过程的寄存器窗口部分重叠。 (4)用流水和延迟转移实现指令,即可让本条指令执行与下条指令预取在时间上重叠。另外,将转移指令与其前面的一条指令对换位置,让成功转移总是在紧跟的指令执行之后发生,使预取指令不作废,节省一个机器周期。 (5)优化设计编译系统。即尽力优化寄存器分配,减少访存次数。不仅要利用常规手段优化编译,还可调整指令执行顺序,以尽量减少机器周期等。 3、试述全相联映像与直接映像的含义及区别 (1)全相连映像 主存中任何一个块均可以映像装入到Cache中的任何一个块的位置上。主存地址分为块号和块内地址两部分,Cache地址也分为块号和块内地址。Cache的块内地址部分直接取自主存地址的块内地址段。主存块号和Cache块号不相同,Cache块号根据主存块号从块表中查找。Cache保存的各数据块互不相关,Cache必须对每个块和块自身的地址加以存储。当请求数据时,Cache控制器要把请求地址同所有的地址加以比较,进行确认。 (2)直接映像 把主存分成若干区,每区与Cache大小相同。区内分块,主存每个区中块的大小和Cache 中块的大小相等,主存中每个区包含的块的个数与Cache中块的个数相等。任意一个主存块只能映像到Cache中唯一指定的块中,即相同块号的位置。主存地址分为三部分:区号、块号和块内地址,Cache地址分为:块号和块内地址。直接映像方式下,数据块只能映像到Cache中唯一指定的位置,故不存在替换算法的问题。它不同于全相连Cache,地址仅需比较一次。 (3)区别: 全相连映像比较灵活,块冲突率低,只有在Cache中的块全部装满后才会出现冲突,Cache 利用率高。但地址变换机构复杂,地址变换速度慢,成本高。 直接映像的地址变换简单、速度快,可直接由主存地址提取出Cache地址。但不灵活,块冲突率较高,Cache空间得不到充分利用。 4. 画出冯?诺依曼机的结构组成?

(完整版)计算机系统结构(张晨曦)简答题

第1章计算机系统结构的基本概念 1. 什么是计算机系统的多级层次结构? 第6级L6:应用语言虚拟机 第5级L5:高级语言虚拟机 第4级L4:汇编语言虚拟机 第3级L3:操作系统虚拟机 第2级L2:机器语言(传统机器级) 第1级L1:微程序机器级 从计算机语言的角度,把计算机系统按功能划分成以下多级层次结构: 2. 硬件和软件在什么意义上是等效的?在什么意义上是不等效的? 硬件和软件在功能实现上是等效的,即一种功能可以由软件实现,也可以由硬件实现。在实现性能上是不等效的。软件实现的优点是设计容易、改进简单;硬件实现的优点是速度快。 3. 经典计算机系统结构的实质是什么? 计算机系统中软、硬件界面的确定,其界面之上的是软件的功能,界面之下的是硬件和固件的功能。 4. 语言实现的两种基本技术是什么? 翻译和解释是语言实现的两种基本技术。它们都是以执行一串N级指令来实现N+1级指令,但二者存在着差别:翻译技术是先把N+1级程序全部变换成N级程序后,再去执行新产生的N级程序,在执行 过程中N+1级程序不再被访问。而解释技术是每当一条N+1级指令被译码后,就直接去执行一串等效的 N 级指令,然后再去取下一条 N+1级的指令,依此重复进行。在这个过程中不产生翻译出来的程序,因此解释过程是边变换边执行的过程。 5. 对于通用寄存器型机器来说,机器语言程序设计者所看到的计算机的属性主要有哪些? (1) 数据表示 (2) 寻址规则 (3) 寄存器定义 (4) 指令集 (5) 中断系统 (6) 机器工作状态的定义和切换 (7) 存储系统 (8) 信息保护 (9) I/O 结构 6. 什么是软件兼容?软件兼容有几种?其中哪一种是软件兼容的根本特征? 同一个软件可以不加修改地运行于系统结构相同的各档机器上,而且它们所获得的结果一样,差别只在于运行时间的不同。 软件兼容分为向上兼容、向下兼容、向前兼容和向后兼容。其中向后兼容是软件兼容的根本特征。

华科专升本计算机系统结构-作业全

第一章作业 简答题 1、简述什么是计算机系统结构。 2、答:计算机系统结构是程序员所看到的计算机属性,即概念性结构与功能性结构。 3、 4、计算机系统的层次从下到上包括哪些? 5、答:计算机系统的层次从上到下包括微程序机器级、机器语言、操作系统虚拟机、汇编 语言虚拟机、高级语言虚拟机、应用语言虚拟机。 6、 7、Flynn分类法是以什么对计算机系统进行分类分成哪几类? 8、答:Flynn分类法是以指令流和数据流的多倍性对计算机系统进行分类。Flynn分类法 把计算机系统的结构分为以下4类:单指令流单数据流、单指令多数据流、多指令流单数据流、多指令流多数据流。 9、 10、简述Amdahl定律及加速比计算公式。 答:Amdahl定律指出加快某部件执行速度所能获取得系统性加速比,受限于该部件的执行时间占系统中总执行时间的百分比。 加速比计算公式=系统性能(改进后)/系统性能(改进前)=总执行时间(改进前)/总执行时间(改进后) 计算题 5、如果某一些计算任务用向量方式求解比用标量方式求解快20倍。为达到加速比2,可用向量方式求解所花费时间占总的时间的百分比为多少 解:由题可知,系统加速比=2,部件加速比=20,通过向量方式求解可改进比例未知,可设为X。 根据Amdahl定律可知 系统加速比=1/[(1-X)+X/20]=2 求解得X=10/19 由此可得,可用向量方式求解所花费时间占总的时间的百分比魏53% 第二章作业 1、简述指令集结构设计的基本原则。 完整性、规整性、高效性和兼容性 2、简述RISC结构的设计原则。 1)选取使用频率最高的指令,并补充一些最有用的指令; 2)每条指令的功能应尽可能简单,并在一个机器周期内完成; 3)所有指令长度均相同; 4)只有Load和Store操作指令才访问存储器,其它指令操作均在寄存器之间进行; 5)以简单有效的方式支持高级语言。 3

计算机系统结构_第五章练习 答案

第五章练习 1、描述计算机系统流水线的性能指标有哪些?其定义和定量表达式是什么? 指标主要有吞吐率、加速比、效率。 (1)吞吐率:在单位时间内流水线所完成的任务数量或输出的结果数量。 基本公式:TP=n/Tk,其中,n是任务数,Tk是处理完成n个任务所用的时间。 各个功能段执行时间均相等,输入连续n个任务的一条k段线性流水线的实际吞吐率为:TP=n/[(k+n-1) ?t] (2)加速比:完成一批任务,不使用流水线所用的时间与使用流水线所用的时间之比。 基本公式:S=T0/Tk,其中,T0为不使用流水线所用的时间,Tk为使用流水 线的执行时间。 各个功能段执行时间均相等的一条K段流水线完成n个连续任务时的实际加速比为:s=k*n*?t/[(k+n-1) ?t]=k*n/( k+n-1). (3)效率:指流水线的设备利用率。 在时空图上,流水线的效率定义为n个任务占用的时空区与k个功能段总的时空区之比。即:E=T0/(k*Tk) 各个功能段执行时间均相等,输入连续n个任务的一条k段线性流水线的效率为:E=n/(k+n-1) 2、假设某个流水线由4个功能部件组成,每个功能部件的执行时间都为?t。当 连续输入10个数据后,停顿5?t,又连续输入10个数据,如此重复。 画出时空图,计算流水线的实际吞吐率,加速比和效率。 总时间:Tk=[(4+10-1)+2] *?t*n =15n*?t 实际吞吐率:TP=N/Tk=10n/(15n*?t)=2/(3?t) 不使用流水线所用的时间为T0=4*N*?t =40n*?t 加速比:S=T0/Tk=2.67 效率:E=T0/(k*Tk)=0.67

计算机组成与设计第五版答案

计算机组成与设计(2010年机械工业出版社出版的图书): 《计算机组成与设计》是2010年机械工业出版社出版的图书,作者是帕特森(DavidA.Patterson)。该书讲述的是采用了一个MIPS 处理器来展示计算机硬件技术、流水线、存储器的层次结构以及I/O 等基本功能。此外,该书还包括一些关于x86架构的介绍。 内容简介: 这本最畅销的计算机组成书籍经过全面更新,关注现今发生在计算机体系结构领域的革命性变革:从单处理器发展到多核微处理器。此外,出版这本书的ARM版是为了强调嵌入式系统对于全亚洲计算行业的重要性,并采用ARM处理器来讨论实际计算机的指令集和算术运算。因为ARM是用于嵌入式设备的最流行的指令集架构,而全世界每年约销售40亿个嵌入式设备。 采用ARMv6(ARM 11系列)为主要架构来展示指令系统和计算机算术运算的基本功能。 覆盖从串行计算到并行计算的革命性变革,新增了关于并行化的一章,并且每章中还有一些强调并行硬件和软件主题的小节。 新增一个由NVIDIA的首席科学家和架构主管撰写的附录,介绍了现代GPU的出现和重要性,首次详细描述了这个针对可视计算进行了优化的高度并行化、多线程、多核的处理器。 描述一种度量多核性能的独特方法——“Roofline model”,自带benchmark测试和分析AMD Opteron X4、Intel Xeo 5000、Sun Ultra SPARC T2和IBM Cell的性能。

涵盖了一些关于闪存和虚拟机的新内容。提供了大量富有启发性的练习题,内容达200多页。 将AMD Opteron X4和Intel Nehalem作为贯穿《计算机组成与设计:硬件/软件接口(英文版·第4版·ARM版)》的实例。 用SPEC CPU2006组件更新了所有处理器性能实例。 作者简介: David A.Patterson,加州大学伯克利分校计算机科学系教授。美国国家工程研究院院士。IEEE和ACM会士。曾因成功的启发式教育方法被IEEE授予James H.Mulligan,Jr教育奖章。他因为对RISC 技术的贡献而荣获1 995年IEEE技术成就奖,而在RAID技术方面的成就为他赢得了1999年IEEE Reynold Johnson信息存储奖。2000年他~13John L.Hennessy分享了John von Neumann奖。 John L.Hennessy,斯坦福大学校长,IEEE和ACM会士。美国国家工程研究院院士及美国科学艺术研究院院士。Hennessy教授因为在RISC技术方面做出了突出贡献而荣获2001年的Eckert-Mauchly奖章.他也是2001年Seymour Cray计算机工程奖得主。并且和David A.Patterson分享了2000年John von Neumann奖。

计算机系统结构

第一章计算机系统结构概论 一、填空题 1 、实现程序移植的主要途径有统一高级语言、系列机、(模拟)和(仿真)。 2、系统软件兼容必须做到向(后)兼容,尽可能争取向(上)兼容。 3、开发并行性是为了并行处理,并行性又包括有(同时性)和(并发性)二重含义。 4、提高计算机系统并行性的主要技术途径有(时间重叠)、资源重复和(资源共享)。 5、数组多路通道宜于连接多台(高)速设备,通道“数据宽度”为(定长块)。 6 、Cache存储器采用组相联的映象规则是组间(直接)映象,组内各块间(全相联)映象。 7、自定义数据表示又分(带数据标志符)数据表示和(数据描述符)数据表示。 二、选择题 1、汇编语言源程序变换成机器语言目标程序是经过(D)来实现的。 A编译程序解释 B 汇编程序解释 C编译程序翻译 D汇编程序翻译 2、直接执行微指令的是( D ) A汇编程序 B 编译程序 C微指令程序 D 硬件 3、对机器语言程序员透明的是(B) A 中断字 B 主存地址寄存器 C通用寄存器 D条件码 4 、在系统结构设计中,提高软件功能实现的比例会( C ) A 提高解题速度 B 减少需要的存储容量 C 提高系统的灵活性 D 提高系统的性价比 5 、磁盘外部设备适合于连接:( B ) A字节多路通道或选择通道 B 数组多路通道或选择通道 C数组多路通道或字节多路通道 D 任意一种通道 6 、系列机软件应做到( A ) A 向后兼容,力争向上兼容 B向前兼容,并向上兼容 C向前兼容,并向下兼容 D向后兼容,力争向下兼容 7、块冲突概率最高的Cache地址映象方式是:( B ) A 段相联 B直接 C 组相联 D 全相联 8、对系统程序员不透明的应当是:( C ) A Cache存储器 B 系列机各档不同的数据通路宽度 C虚拟存储器 D 指令缓冲寄存器 9、计算机系统结构不包括:(A) A 主存速度 B 机器工作状态 C 信息保护 D 数据表示 10、组相联映象,LRU替换的Cache存储器,不影响Cache命中率的是( D ): A 增加Cache中的块数 B 增大组的大小 C 增大块的大小 D增大主存容量 11 、与全相联映象相比,组相联映象的优点是:( A ) A 目录表小 B 块冲突概率低 C 命中率高 D 主存利用率高 12、流水机器对全局性相关的处理不包括:( A ) A设置相关专用通路 B 提前形成条件码

吉大14秋学期《计算机系统结构》在线作业二答案

吉大14秋学期《计算机系统结构》在线作业二 单选题判断题 一、单选题(共15 道试题,共60 分。) 1. 关于非专用总线三种控制方式中,下列叙述错误的是()。 A. 集中式定时查询,所有部件共用同一条“总线忙”线 B. 集中式定时查询,所有部件都用同一条“总线请求”线 C. 集中式独立请求,所有部件都用同一条“总线请求”线 D. 集中式串行链接,所有部件都用同一条“总线请求”线 -----------------选择:C 2. 汇编语言源程序变换成机器语言目标程序是经( ) 来实现的。 A. 编译程序解释 B. 汇编程序解释 C. 编译程序翻译 D. 汇编程序翻译 -----------------选择:D 3. 计算机使用的语言是( )。 A. 专属软件范畴,与计算机体系结构无关 B. 分属于计算机系统各个层次 C. 属于用以建立一个用户的应用环境 D. 属于符号化的机器指令 -----------------选择:B 4. 多端口存储器适合于连接()。 A. 紧耦合多处理机 B. 松耦合多处理机 C. 机数很多的处理机 D. 机数可变的多处理机 -----------------选择:A 5. 在系统结构设计中,提高软件功能实现的比例会( )。 A. 提高解题速度 B. 减少需要的存贮容量 C. 提高系统的灵活性 D. 提高系统的性能价格比 -----------------选择:C 6. 用户高级语言源程序中出现的读写(I/O) 语句,到读写操作全部完成,需要通过( )共同完成。 A. 编译系统和操作系统 B. I/O 总线、设备控制器和设备 C. 操作系统和I/O 设备硬件 D. 编译系统、操作系统软件和I/O 总线,设备控制器、设备硬件等 -----------------选择:D

计算机系统结构作业答案第三章(张晨曦)

3.1 -3.3为术语解释等解答题。 3.4 设一条指令的执行过程分为取指令,分析指令和执行指令3个阶段,每个阶段所需时间分别为ΔT, ΔT, 2ΔT,分别求出下列各种情况下,连续执行N条指令所需的时间。 (1) 顺序执行方式 (2) 只有“取指令”与“执行指令”重叠 (3) “取指令”,“分析指令”与“执行指令”重叠 解: (1) 4NΔT (2) (3N+1) ΔT (3) 2(N+1) ΔT 3.6 解决流水线瓶颈问题有哪两种常用方法? 解: (1) 细分瓶颈段 将瓶颈段细分为若干个子瓶颈段 (2) 重复设置瓶颈段 重复设置瓶颈段,使之并行工作,以此错开处理任务 3.9 列举下面循环中的所有相关,包括输出相关,反相关,真数据相关。 for(i = 2; i < 100; i=i+1) { a[i] = b[i] + a[i]; -----(1) c[i+1] = a[i] + d[i]; -----(2) a[i-1] = 2*b[i]; -----(3) b[i+1] = 2*b[i]; -----(4) } 解: 输出相关:第k次循环时(1)与第k+1轮时(3) 反相关:第k次循环时(1)和(2)与第k-1轮时(3) 真数据相关:每次循环(1)与(2),第k次循环(4)与k+1次循环(1),(3),(4) 3.12 有一指令流水线如下所示 50ns 50ns 100ns 200ns (1)求连续如入10条指令的情况下,该流水线的实际吞吐率和效率 (2)该流水线的“瓶颈”在哪一段?请采用两种不同的措施消除此“瓶颈”。对于你所给出 的两种新的流水线连续输入10条指令时,其实际吞吐率和效率各是多少? 解:(1)(m表示流水线级数,n 表示任务数)

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

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

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

计算机系统结构 第一章自考练习题答案教学内容

第一章计算机系统结构的基本概念 历年真题精选 1. 下列对系统程序员不透明的是()。 A. 乘法器 B. 先行进位链 C. 指令缓冲器 D. 条件码寄存器2.“从中间开始”设计的“中间”目前多数是在( D )。 A. 微程序机器级与汇编语言机器级之间 B. 操作系统机器级与汇编语言机器级之间 C. 传统机器语言机器级与微程序机器级之间 D. 传统机器语言机器级与操作系统机器级之间 3. 开发计算机系统结构并行性的主要技术途径有时间重叠、(资源重复)和(资源 共享)。 4. 计算机系统弗林分类法,把计算机系统分成单指令流单数据流(SISD)、单指令流多数 据流(SIMD)、(多指令流单数据流(MISD))和(多指令流多数据流(MIMD))四大类。 5. 设计指令系统时,以乘法运算为例,简述系统结构设计、计算机组成设计、计算机实现 各应考虑的问题。(P4) 6. 实现软件移植的途径有哪些?各受什么限制?(P14) 同步强化练习 一.单项选择题。 1. 实现汇编语言源程序变换成机器语言目标程序是由( C )。 A. 编译程序翻译 B. 编译程序解释 C. 汇编程序翻译 D. 汇编程序解释

2. 系列机软件应做到( B ) A. 向前兼容,并向下兼容 B. 向后兼容,力争向上兼容 C. 向前兼容,并向上兼容 D. 向后兼容,力争向下兼容 3. 在计算机系统多级层次结构中,机器级由低到高,相对顺序正确的应当是( B )。 A. 传统机器语言、汇编语言、操作系统 B. 微程序、传统机器语言、高级语言 C. 高级语言、汇编语言、传统机器语言 D. 传统机器语言、应用语言、高级语言 4. 可以直接执行微指令的是( C )。 A. 编译程序 B. 微程序 C. 硬件 D. 汇编程序 5. 计算机系统结构不包括( A )。 A. 主存速度 B. 数据表示 C. 机器工作状态 D. 信息保护 6. 对计算机系统结构透明的是()。 A. 是否使用通道型I/0处理机 B. 虚拟存储器 C. 字符行运算指令 D. VLSI技术 7. 在主存设计上,属计算机系统结构考虑的应是( C )。 A. 频宽的确定 B. 多体交叉还是单体 C. 容量和编址单位 D. 用MOS还是TTL 8. 计算机组成设计不考虑( B )。 A. 缓冲技术 B. 功能部件的集成度 C. 专用部件设置 D. 控制机构的组成 9. 下列说法中不正确的是( D ) A. 硬件的生产费用比软件的生产费用高 B.软件设计费用比软件重复生产费用高 C. 硬件功能只需实现一次而软件功能可能要多次重复实现 D. 硬件实际费用比软件设计费用低

计算机系统结构张晨曦版课后答案

第1章计算机系统结构的基本概念 1.1 解释下列术语 层次机构:按照计算机语言从低级到高级的次序,把计算机系统按功能划分成多级层次结构,每一层以一种不同的语言为特征。这些层次依次为:微程序机器级,传统机器语言机器级,汇编语言机器级,高级语言机器级,应用语言机器级等。 虚拟机:用软件实现的机器。 翻译:先用转换程序把高一级机器上的程序转换为低一级机器上等效的程序,然后再在这低一级机器上运行,实现程序的功能。 解释:对于高一级机器上的程序中的每一条语句或指令,都是转去执行低一级机器上的一段等效程序。执行完后,再去高一级机器取下一条语句或指令,再进行解释执行,如此反复,直到解释执行完整个程序。 计算机系统结构:传统机器程序员所看到的计算机属性,即概念性结构与功能特性。 在计算机技术中,把这种本来存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性。 计算机组成:计算机系统结构的逻辑实现,包含物理机器级中的数据流和控制流的组成以及逻辑设计等。 计算机实现:计算机组成的物理实现,包括处理机、主存等部件的物理结构,器件的集成度和速度,模块、插件、底板的划分与连接,信号传输,电源、冷却及整机装配技术等。 系统加速比:对系统中某部分进行改进时,改进后系统性能提高的倍数。 Amdahl定律:当对一个系统中的某个部件进行改进后,所能获得的整个系统性能的提高,受限于该部件的执行时间占总执行时间的百分比。 程序的局部性原理:程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。包括时间局部性和空间局部性。 CPI:每条指令执行的平均时钟周期数。 测试程序套件:由各种不同的真实应用程序构成的一组测试程序,用来测试计算机在各个方面的处理性能。 存储程序计算机:冯?诺依曼结构计算机。其基本点是指令驱动。程序预先存放在计算机存储器中,机器一旦启动,就能按照程序指定的逻辑顺序执行这些程序,自动完成由程序所描述的处理工作。

计算机系统结构李学干版习题答案

第一章 1- 1如有一个经解释实现的计算机,可以按功能划分成4级。每一级为了执行一条指令需要下一级的N条指令解释。若执行第1级的一条指令需K ns时间,那么执行第2、3、4级的一条指令各需要多少时间? 答:执行第2、3、4级的一条指令各需KN ns、(N*N)*K ns、(N*N*N)*K ns 的时间。 1- 2操作系统机器级的某些指令就用传统机器级的指令,这些指令可以用微程序直接解释实现,而不必有操作系统自己来实现。更具你对1-1题的回答,你认为这样做有哪些好处? 答:这样做,可以加快操作系统中操作命令解释的速度,同时也节省了存放解释操作命令这部分解释程序所占的存储空间,简化了操作系统机器级的设计,也有利于减少传统机器级的指令条数。 1- 3有一个计算机系统可按功能分成4级,每级的指令互不相同,每一级的指令都比其下一级的指令在效能上强M倍,即第i级的一条指令能完成第i-1级的M条指令的计算量。 现若需第i级的N条指令解释第i+1级的一条指令,而有一段第1级的程序需要运行Ks,问在第2、3和4级上一段等效程序各需要运行多长时间? 答:第2级上等效程序需运行:(N/M)*Ks。第3级上等效程序需运行:(N/M)*(N/M)*Ks。 第4级上等效程序需运行:(N/M)*(N/M)*(N/M)*Ks。 1- 4硬件和软件在什么意义上是等效的?在什么意义上又是不等效的?试举例说明。 答:软件和硬件在逻辑功能上是等效的,原理上,软件的功能可用硬件或固件完成,硬件的功能也可用软件模拟完成。但是实现的性能价格比,实现的难易程序不同。

例如,编译程序、操作系统等许多用机器语言软件子程序实现的功能完全可以用组合电路硬件或微程序固件来解释实现。它们的差别只是软件实现的速度慢,软件的编制复杂,编程工作量大,程序所占的存储空间量较多,这些都是不利的;但是,这样所用硬件少,硬件实现上也就因此而简单容易,硬件的成本低,解题的灵活性和适应性较好,这些都是有利的。 又如,乘除法运算可以经机器专门设计的乘法指令用硬件电路或乘除部件来实现。向量、数组运算在向量处理机中是直接使用向量、数组类指令和流水或陈列等向量运算部件的硬件方式来实现的,但在标量处理机上也可以通过执行用标量指令组成的循环程序的软件方式来完成。 浮点数运算可以直接通过设置浮点运算指令用硬件来实现,也可以用两个定点数分别表示浮点数的阶码和尾数,通过程序方法把浮点数阶码和尾数的运算映像变换成两个定点数的运算,用子程序软件的方式实现。十进制数的运算可以通过专门设置十进制数运算类指令和专门的十进制运算部件硬的方式来完成,或者通过设置BCD数的表示和若干BCD数运算的校正指令来软硬结合地实现,也可以先经十转二的数制转换子程序将十进制数转成二进制数,再用二进制运算类指令运算,所得结果又调用二转十的数制转换子程序转换成十进制数结果,用全软件的方式实现。 1- 5试以实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系与影响。 答:计算机系统结构、计算机组成、计算机实现互不相同,但又相互影响。 (1)计算机的系统结构相同,但可采用不同的组成。如IBM370系列有115、125、135、158、168等由低档到高档的多种型号机器。从汇编语言、机器语言程序设计者看到的概念性结构相同,均是由中央处理机/主存,通道、设备控制器,外设4级构成。其中,中央处理机都有相同的机器指令和汇编指令系统,只是指令的分析、执行在低档机上采用顺序进行,在高档机上采用重叠、流水或其它并行处理方式。

计算机体系结构第一次作业

问答题(共4道题) 1.什么是存储系统? 答:存储系统是指计算机中由存放程序和数据的各种存储设备、控制部件及管理信息调度的设备(硬件)和算法(软件)所组成的系统。计算机的主存储器不能同时满足存取速度快、存储容量大和成本低的要求,在计算机中必须有速度由慢到快、容量由大到小的多级层次存储器,以最优的控制调度算法和合理的成本,构成具有性能可接受的存储系统。 2.什么是高速缓冲存储器 答:指存取速度比一般随机存取记忆体(RAM)来得快的一种RAM。 一般而言它不像系统主记忆体那样使用DRAM技术,而使用昂贵但较快速的SRAM技术,也有快取记忆体的名称。 高速缓冲存储器是存在于主存与CPU之间的一级存储器,由静态存储芯片(SRAM)组成,容量比较小但速度比主存高得多,接近于CPU的速度。 在计算机存储系统的层次结构中,是介于中央处理器和主存储器之间的高速小容量存储器。它和主存储器一起构成一级的存储器。高速缓冲存储器和主存储器之间信息的调度和传送是由硬件自动进行的。 3.假设一台模型计算机共有10种不同的操作码,如果采用固定长操作码需要4 位。已知各种操作码在程序中出现的概率如下表所示,计算采用Huffman编码 法的操作码平均长度,并计算固定长操作码和Huffman操作码的信息冗余量 (假设最短平均长度H=3.1位)。 答:构造Huffman树如下:

Huffman 编码的平均码长为: ∑=10 1 i i i l p =0.17*2+(0.15+0.15+0.13+0.12)*3+(0.09+0.08+0.07)*4+(0.03+0.01)*5=3.15 冗余量=(3.15-3.10)/3.15=1.59% 固定码长=log210=4 冗余量=(4-3.10)/4=22.5% 4.若某机要求有:三地址指令4条,单地址指令192条,零地址指令16条。设指令字长为12位,每个地址码长3位。问能否以扩展操作码为其编码? 答:三种指令字格式如下:

《计算机系统结构》习题解答%26%2340%3B张晨曦教程%26%2341%3B

1 《计算机系统结构》习题解答(张晨曦教程) 华中科技大学计算机学院 林安 教材:《计算机系统结构教程》,张晨曦等,清华大学出版社,2009 教师参考书:《计算机系统结构学习指导与题解》,张晨曦等,清华大学出版社,2009 实验平台:指令级和流水线操作级模拟器WinMIPS64 一、各次作业应交内容 第1周(2月19日):1.10(改),1.7,1.11(2解法) 第2周(2月26日):2.14(补充),实验1,3.8,3.10 第3周(3月5日):3.11(改),实验2,5.11,5.8,5.9 第4周(3月12日):6.8(改),6.7 第7周(4月2日):7.9,7.11,7.10 第8周(4月9日):7.14(难题),7.12(难题) 第9周(4月16日) :8.12(补),8.11(改) (难题) 第10周(4月23日):9.9(改),9.13 第11周(4月30日): 10.6,10.9(难题) 合计:习题23个,实验2个 二、参考答案 第1章(P28) 1.10(按下文改后再做,题解1.39) 系统中有3个部件同时改进,加速比分别为30、20和10。 (1) 如果前2个部件时间占总时间比例均为30%,第3个部件所占比例要达到多少,才能使系统加速比达到10? (2) 如果3个部件时间占总时间比例分别为30%、30%、20%,改进之后未被改进部分时间占总时间的比例为多少? 解: (1) 将已知数据代入扩展Amdahl 定律:10 3 203.0303.0)33.03.0(11 10 Fe Fe + ++++?= 解出:%369 25 .33≈= Fe (2) 将改进之前总时间记为old T ,则未被改进部分为0.2old T ;又从扩展Amdahl 定律推导过程知,改进后的总时间为: old old T T 245.0102.0203.0303.0)2.03.03.0(1=×?????? +++++?,二者相除:%82245.02.0≈old old T T 1.7 (题解1.36) 解: 01.006.058.035.012950013214 1 ≈≈≈≈==∑=IC IC IC IC IC IC IC IC IC IC i i ,,,, (1) ∑=≈=×+×+×+×=× =4 1 776.11295002300001295001500212950080004129500750002129500450001)(i i i IC IC CPI CPI

吉林大学计算机系统结构题目整合第五章

第五章存储层次 知识点汇总 存储器层次结构、存储层次性能参数(平均每位价格、命中率、平均访存时间)、存储层次4个问题、CPU 访存地址分割、全相联映像、直接映像、组相联映像、查找方法、替换算法(随机、先进先出、最近最少使用法)、写直达法、写回法、按写分配、不按写分配、Cache性能分析、3C失效(强制失效、容量失效、冲突失效)、Victim Cache、伪相联映像Cache、硬件预取、编译器优化(数组合并、内外循环交换、循环融合、分块)、写缓冲合并、单字宽存储器、多字宽存储器、多体交叉存储器、存储体、虚拟存储器(页式、段式)、快表(TLB) 简答题 1.单级存储器的主要矛盾是什么?通常采取什么方法来解决?(知识点:多级存储器) 答:主要矛盾: (1) 速度越快,每位价格就越高。 (2) 容量越大,每位价格就越低。 (3) 容量越大,速度越慢。 采取多级存储层次方法来解决。 2.“Cache-主存”和“主存-辅存”层次的主要区别是什么?(知识点:存储层次)

3.在存储层次中应解决哪四个问题?(知识点:存储层次的四个问题) 答:(1)映像规则:当把一个块调入高一层存储器时,可以放到哪些位置上。 (2)查找算法:当所要访问的块在高一层存储器中时,如何找到该块。 (3)替换算法:当发生失效时,应替换哪一块。 (4)写策略:当进行写访问时,应进行哪些操作。 4.地址映像方法有哪几种?它们各有什么优缺点?(知识点:地址映像) (1)全相联映像。实现查找的机制复杂,代价高,速度慢。Cache空间的利用率较高,块冲突概率较低,因而Cache的失效率也低。 (2)直接映像。实现查找的机制简单,速度快。Cache空间的利用率较低,块冲突概率较高,因而Cache 的失效率也高。 (3)组相联映像。组相联是直接映像和全相联的一种折中。 5.Cache的3C失效是哪三种失效?针对每种失效给出一种降低失效率的方法。(知识点:3C失效) 答:强制性失效、容量失效、冲突失效。 6.简述Cache的两种写策略(知识点:写直达、写回) 写直达法:执行“写”操作时,不仅写入Cache,而且也写入存储器

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