搜档网
当前位置:搜档网 › 体系结构 习题解答范文

体系结构 习题解答范文

体系结构 习题解答范文
体系结构 习题解答范文

第一章计算机体系结构的基本概念

1.层次结构——计算机系统可以按语言的功能划分为多级层次结构,每一层以不同的语言为

2.计算机体系结构:程序员看到的计算机的属性,即概念性结构和功能特性。

3.实质是计算机系统中软硬件界面的确定。

4.翻译——(基于层次结构)先把N+1级程序全部变换成N级程序之后,再去执行N级程序,

在执行过程中,N+1级程序不再被访问。

5.解释——每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下

一条N+1级指令,依此重复执行。

6.体系结构——程序员所看到的计算机的属性,即概念性结构与功能特性。主要研究计算机

系统软件和硬件的功能分配以及如何最佳、最合理地实现分配给硬件的功能。

8.透明性——在计算机技术中,对本来存在的事物或属性,从某一角度来看又好像不存在的

概念称为透明性。

9.系列机——在一个厂家生产的具有相同的体系结构,但具有不同的组成和实现的一系列不

同型号的机器。

10.软件兼容——同一个软件可以不加修改地运行于体系结构相同的各档机器上,而且它们所

获得的结果一样,差别只在于运行的时间不同。

11.兼容机——不同厂家生产的、具有相同体系结构的计算机。

12.计算机组成——计算机体系结构的逻辑实现。

13.计算机实现——计算机组成的物理实现。

14.存储程序计算机(冯·诺依曼结构)——采用存储程序原理,将程序和数据存放在同一存

储器中。指令在存储器中按其执行顺序存储,由指令计数器指明每条指令所在的单元地址。

15.并行性——在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工作。

16.时间重叠——在并行性中引入时间因素,即多个处理过程在时间上相互错开,轮流重叠地

使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。

17.资源重复——在并行性中引入时间因素,是根据“以数量取胜”的原则,通过重复设置资源,

尤其是硬件资源,大幅度提高计算机系统的性能。

18.资源共享——是一种软件方法,它使多个任务按一定的时间顺序轮流使用同一套硬件设备。

19.同构型多处理机——由多个同种类型、至少同等功能的处理机组成、同时处理同一作业中

能并行执行的多个任务的机器。

20.异构型多处理机——由多个不同类型、功能不同的处理机组成、串行完成同一作业中不同

任务的机器。

21.响应时间——从事件开始到结束之间的时间,也称执行时间。

22.测试程序组件——选择一个各个方面有代表性的测试程序,组成一个通用的测试程序集合。

这个通用的测试程序集合称为测试程序组件。

23.大概率事件优先——此原则是计算机体系结构中最重要和最常用的原则。对于大概率事件

(最常见的事件),赋予它优先的处理权和资源使用权,以获得全局的最优结果。

24.系统加速比——系统改进前与改进后总执行时间之比。

25.Amdahl定律——加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中的

所占的重要性。

26.程序的局部性原理——程序在执行时所访问的地址不是随机的,而是相对簇聚;这种簇聚

包括指令和数据两部分。

27.CPI——指令时钟数(Cycles per Instruction)。

第二章计算机指令集结构设计

1.CISC——复杂指令集计算机。

2.RISC——精简指令集计算机。

3.Amdahl定律——加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所

占的重要性。

4.程序的局部性原理:程序在执行时所访问地址的分布不是随机的,而是相对地簇聚;这种

簇聚包括指令和数据两部分。

i.程序局部性包括:

ii.–程序的时间局部性:程序即将用到的信息很可能就是目前正在使用的信息。

iii.–程序的空间局部性:程序即将用到的信息很可能与目前正在使用的信息在空间上相邻或者临近

5. 5 . 指令系统:又称指令集(instruction set)是计算机体系结构设计的核心,是计算机软、

硬件接口,是指机器所具有的全部指令的集合。它反映了计算机所拥有的基本功能。它是机器语言程序员所看到的机器的主要属性之一。

哈夫曼压缩的基本思想:当各种事件发生的概率不均时,采用优化技术对发生概率最高的事件用最短的位数(时间)来表示(处理),而对出现概率较低的,用较长的位数(时间)来表示(处理),就会导致表示(处理)的平均位数(时间)的缩短。

14.

2.2 堆栈型机器、累加器型机器和通用寄存器型机器各有什么优缺点?

2.3 常见的三种通用寄存器型机器的优缺点各有哪些?

2.4 指令集结构设计所涉及的内容有哪些?

(2)指令集功能设计:主要有RISC和CISC两种技术发展方向;

(3)寻址方式的设计:设置寻址方式可以通过对基准程序进行测试统计,察看各种寻址方

式的使用频度,根据适用频度设置相应必要的寻址方式;

(4)操作数表示和操作数类型:主要的操作数类型和操作数表示的选择有,浮点数据类型

(可以采用IEEE 754标准)、整型数据类型(8位、16位、32位的表示方法)、字符型(8

位)、十进制数据类型(压缩十进制和非压缩十进制数据表示)等等。

(5)寻址方式的表示:可以将寻址方式编码与操作码中,也可将寻址方式作为一个单独的

域来表示。

(6)指令集格式的设计:有固定长度编码方式、可变长编码方式和混合编码方式三种选择。

2.5 简述CISC计算机结构指令集功能设计的主要目标。从当前的计算机技术观点来看,CISC

结构有什么缺点?

CISC结构追求的目标是强化指令功能,减少程序的指令条数,以达到提高性能的目的。

从目前的计算机技术观点来看,CISC结构存在以下几个缺点:

(1)在CISC结构的指令系统中,各种指令的使用频率相差悬殊。

(2)CISC结构的指令系统的复杂性带来了计算机体系结构的复杂性,这不仅增加了研

制时间和成本,而且还容易造成设计错误。

(3)CISC结构的指令系统的复杂性给VLSI设计带来了很大负担,不利于单片集成。

(4)CISC结构的指令系统中,许多复杂指令需要很复杂的操作,因而运行速度慢。

(5)在结构的指令系统中,由于各条指令的功能不均衡性,不利于采用先进的计算机

体系结构技术(如流水技术)来提高系统的性能。

2.6 简述RISC结构的设计原则。

(1)选取使用频率最高的指令,并补充一些最有用的指令;

(2)每条指令的功能应尽可能简单,并在一个机器周期内完成;

(3)所有指令长度均相同;

(4)只有Load和Store操作指令才访问存储器,其它指令操作均在寄存器之间进行

(5)以简单有效的方式支持高级语言。

2.7 简述操作数的类型及其相应的表示方法。

操作数的类型主要有:整数(定点)、浮点、十进制、字符、字符串、向量、堆栈等。

操作数类型有两种表示方法:

(1)操作数的类型由操作码的编码指定,这也是最常见的一种方法;

(2)数据可以附上由硬件解释的标记,由这些标记指定操作数的类型,从而选择适当的运算。

2.8 表示寻址方式的主要方法有哪些?简述这些方法的优缺点。

表示寻址方式有两种常用的方法:

(1)将寻址方式编于操作码中,(2)由操作码在描述指(3)令的同(4)时也描述了相应的寻址方式。

这种方式译码快,但操作码和寻址方式的结合不仅增加了指令的条数,导致了指令的多样性,而且增加了CPU对指令译码的难度。

(2)为每个操作数设置一个地址描述符,(6)由该地址描述符表示相应操作数的寻址方式。

这种方式译码较慢,但操作码和寻址独立,易于指令扩展。

2.9 通常有哪几种指令格式?简述其适用范围。

(1)变长编码格式。如果体系结构设计者感兴趣的是程序的目标代码大小,而不是性

能,就可以采用变长编码格式。

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

选择固定长度编码格式。

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

合型编码格式。

2.10为了对编译器设计提供支持,在进行指令集设计时,应考虑哪些问题?

(1) 规整性。

(2) 提供基本指令,而非解决方案。

(3) “简化方案的折中取舍标准”。

(4 “对于在编译时已经知道的量,提供将其变为常数的指令”。

第三章流水线技术

1.流水线——将一个重复的时序过程,分解为若干个子过程,而每一个子过程都可有效地在

其专用功能段上与其他子过程同时执行。

2.流水线按功能多少分为静态流水线和动态流水线;按流水线的级别分为部件级流水线、处

理机级流水线和处理机间流水线;按数据表示分为标量处理机和向量处理机;按是否有反馈回路分为线性流水线和非线性流水线;按流动是否可以乱序分为顺序流动流水线和异步流动流水线。

3.单功能流水线——只能完成一种固定功能的流水线。

4.多功能流水线——流水线的各段可以进行不同的连接,从而使流水线在不同的时间,或者

在同一时间完成不同的功能。

5.静态流水线——同一时间内,流水线的各段只能按同一种功能的连接方式工作。

6.动态流水线——同一时间内,流水线的各段可以按不同功能的连接方式工作。

7.部件级流水线——(运算操作流水线)把处理机的算术逻辑部件分段,以便为各种数据类

型进行流水操作。

8.处理机级流水线——(指令流水线)把解释指令的过程按照流水方式处理。

9.处理机间流水线——(宏流水线)由两个以上的处理机串行地对同一数据流进行处理,每

一个处理机完成一项任务。

10.线性流水线——指流水线的各段串行连接,没有反馈回路。

11.非线性流水线——指流水线中除有串行连接的通路外,还有反馈回路。

12.标量流水处理机——处理机不具有向量数据表示,仅对标量数据进行流水处理。

13.向量流水处理机——处理机具有向量数据表示,并通过向量指令对向量的各元素进行处理。

14.结构相关——某些指令组合在流水线中重叠执行时,发生资源冲突,则称该流水线有结构

相关。

15.数据相关——当指令在流水线中重叠执行时,流水线有可能改变指令读/写操作的顺序,使

得读/写操作顺序不同于它们非流水实现时的顺序,将导致数据相关。

16.定向——将计算结果从其产生的地方直接送到其他指令需要它的地方,或所有需要它的功

能单元,避免暂停。

17.RAW——两条指令i,j,i在j前进入流水线,j执行要用到i的结果,但当其在流水线中重叠

执行时,j可能在i写入其结果之前就先行对保存该结果的寄存器进行读操作,得到错误值。

18.WAW——两条指令i,j,i在j前进入流水线,j、i的操作数一样,在流水线中重叠执行时,j

可能在i写入其结果之前就先行对保存该结果的寄存器进行写操作,导致写错误。

19.WAR——两条指令i,j,i在j前进入流水线,j可能在i读某个寄存器之前对该寄存器进行写

操作,导致i读出数据错误。

20.在一个时钟周期内能够分时发射多条指令的处理机称为超流水线处理机。

21.在一个时钟周期内能够同时发射多条指令的处理机称为超标量处理机。

22.在一个时钟周期内分时发射指令m次,每次发射指令n条的处理机称为超标量超流水处理

机。

3.2 简述流水线技术的特点。

(1)流水过程由多个相联系的子过程组成,每个过程称为流水线的“级”或“段”;

(2)每个子过程由专用的功能段实现;

(3)各个功能段所需时间应尽量相等,否则,时间长的功能段将成为流水线的瓶颈,会造

成流水线的“堵塞”和“断流”;

(4)流水线需要有“通过时间”(第一个任务流出结果所需的时间),在此之后流水过程才进

入稳定工作状态,每一个时钟周期(拍)流出一个结果;

(5)流水技术适合于大量重复的时序过程,只有在输入端能连续地提供任务,流水线的效

率才能充分发挥。

3.3 请画出DLX基本流水线,并简述其工作原理。

工作原理:把一条DLX指令在5个周期内实现,将每一个时钟周期看作是流水线的一个时钟周期,硬件每个时钟周期启动一条新的指令,并执行5条不同指令中的某一部分。每条指令虽仍需5个时钟周期完成,但提高了吞吐率,实现了流水。

指令/时钟 1 2 3 4 5 6 7 8 9

I IF ID EX MEM WB

I+1 IF ID EX MEM WB

I+2 IF ID EX MEM WB

I+3 IF ID EX MEM WB

I+4 IF ID EX MEM WB

3.5 解决流水线结构相关的方法有哪些?

(1)流水化功能单元

(2)资源重复(3)

(4)暂停流水线

3.6 降低流水线分支损失的方法有哪些?

(1)在流水线中尽早判断出分支转移是否成功;

(2)尽早计算出分支转移成功时的PC值(即分支的目标地址)

●“冻结”或“排空”流水线的方法

●预测分支失败

●预测分支成功

●延迟分支

3.7 请对延迟分支办法中的三种调度策略进行评价。

1.从前调动:分支必须不依赖于被调度的指令,总是可以有效提高流水线性能。

2.从目标处调度:若分支转移失败,必须保证被调度的指令对程序的执行没有影响,可能需要复制被调度指令。分支转移成功时,可提高流水线性能。但由于复制指令,可能加大程序空间。

3.从失败处调度:若分支转移成功,必须保证被调度的指令对程序的执行无影响。分支转移失败时,可提高流水线性能。

3.8 简述三种向量处理方法,它们对向量处理机的结构要求有什么不同?

1.水平处理方式:若向量长度为N,则水平处理方式相当于执行N次循环。若使用流水线,在每次循环中可能出现数据相关和功能转换,不适合对向量进行流水处理。

2.垂直处理方式:将整个向量按相同的运算处理完毕之后,再去执行其他运算。适合对向

量进行流水处理,向量运算指令的源/目向量都放在存储器内,使得流水线运算部件的输入、输出端直接与存储器相联,构成M-M 型的运算流水线。

3.分组处理方式:把长度为N 的向量分为若干组,每组长度为n ,组内按纵向方式处理,

依次处理各组,组数为

??

?

???n N ,适合流水处理。可设长度为n 的向量寄存器,使每组向量运算的源/目向量都在向量寄存器中,流水线的运算部件输入、输出端与向量寄存

器相联,构成R-R 型运算流水线。

3.9 有一条流水线如下所示。

100ns

3 求连续输入10条指令,该流水线的实际吞吐率和效率;

4

该流水线的瓶颈在哪一段?请采取三种不同的措施消除此“瓶颈”。对于你所给出的新流水线,计算连续输入10条指令时,其实际吞吐率和效率。 解:(1)

2200(ns)200

9200)10050(50t )1n (t T max

m

1

i i pipeline =?++++=?-+?=∑=

)

(ns 2201T n TP 1

pipeline -==

45.45%115

4400TP m

t

TP E m

1

i i

≈=?

=??

=∑=

(2)瓶颈在3、4段。

1 变成八级流水线(细分)

850(ns)50

9850t 1)(n t T max

m

1

i i pipeline =?+?=?-+?=∑=

)

(ns 851T n TP 1

pipeline -==

58.82%1710

8400TP

m

ti

TP E m

1

i ≈=?

=??

=∑=

2

变成两级流水线(合并)

2200(n s)

20092200t 1)(n t T max

m

1

i i pipeline =?+?=?-+?=∑=

)

(ns 220

1

T n

TP 1

pipeline

-==

90.91%1110

2400TP m

ti

TP E m

1

i ≈=?

=??

=∑=

4 重复设置部件

1

Stage

)

(ns 851T n

TP 1pipeline -==

58.82%

17

10885010400E ≈=??=

3.10 一个流水线由四段组成,其中每当流经第三段时,总要在该段循环一次才能流到第四段。

如果每段经过一次的时间都是△t ,问: (1) 当在流水线的输入端每△t 时间输入任务时,该流水线会发生什么情况? (2) 此流水线的实际吞吐率为多少?如果每2△t 输入一个任务,连续处理10个任务的实

际吞吐率和效率是多少? (3) 当每段时间不变时,如何提高该流水线的吞吐率?仍连续处理10个任务 时,其吞吐

率提高多少? (2)

0t 1t 2t 3t 4t 5t 6t 7t 8t

Instr.1stage1stage2

stage3stage3stage4instr.2stage1stage2

stage3stage3stage4instr.3

stage1

stage2

stage3

stage3stage4

54.35%

92

5045T P E 2310

T n

T p 23T 21T P pipeline

pipeline max ≈=??=??==?=?=t t

t t

3.11 如果流水线有m 段,各段的处理时间分别是t i (i=1,2,…,m ),现在有n 个任务需要

完成,且每个任务均需流水线各段实现,请计算: (1) 流水线完成这n 个任务所需要的时间; (2) 和非流水线实现相比,这n 个任务流水实现的加速比是多少?加速比的峰值是多少? 解:(1)

∑=?-+=m

1

i max i pipeline t 1)(n t T

(2)

∑=?=m

1

i i nopipeline t n T

m)

Speedup m,(n )

t (t 1

n m n

m Speedup t

1)(n t t n T T Speedup 0i max m

1

i max

i m

1

i i

pipeline

nopipeline →>>=-+?=?-+?=

=∑∑==

3.12 在改进的DLX 流水线上运行如下代码序列:

LOOP: LW R1, 0(R2) ADDI R1, R1, #1 SW 0(R2), R1 ADDI R2, R2, #4 SUB R4, R3, R2 BNZ R4, LOOP

其中,R3的初始值是R2+396。假设:在整个代码序列的运行过程中,所有的存储器访问都是命中的,并且在一个时钟周期中对同一个寄存器的读操作和写操作可以通过寄存器“定向”。问: (1) 在没有任何其它定向(或旁路)硬件的支持下,请画出该指令序列执行的流水线时空

图。假设采用排空流水线的策略处理分支指令,且所有的存储器访问都可以命中Cache ,那么执行上述循环需要多少个时钟周期? (2) 假设该DLX 流水线有正常的定向路径,请画出该指令序列执行的流水线时空图。假设

采用预测分支失败的策略处理分支指令,且所有的存储器访问都可以命中Cache ,那么执行上述循环需要多少个时钟周期? (3) 假设该DLX 流水线有正常的定向路径,请对该循环中的指令进行调度。注意可以重新

组织指令的顺序,也可以修改指令的操作数,但是不能增加指令的条数。请画出该指令序列执行的流水线时空图,并计算执行上述循环需要的时钟周期数? 解: (1) 寄存器读写可以定向,无其他旁路硬件支持。排空流水线。

Instruction 12345678910111213141516171819202122lw r1,0(r2)IF ID EX M WB addi r1,r1,#1IF S S ID EX M WB sw r1,0(r2)IF S S ID EX M WB addi r2,r2,#4IF ID EX M WB sub r4,r3,r2IF S S ID EX M WB bnz r4,loop IF S S ID EX M WB lw r1,0(r2)IF S S IF ID EX M WB

第i 次迭代(i =0..98)开始周期:1+(i ×17) 总的时钟周期数:(98×17)+18=1684

(2) 有正常定向路径,预测分支失败。

Instruction12345678910111131415

lw r1,0(r2)IF ID EX M WB

addi r1,r1,#1IF ID S EX M WB

sw r1,0(r2)IF S ID EX M WB

addi r2,r2,#4IF ID EX M WB

sub r4,r3,r2IF ID EX M WB

bnz r4,loop IF ID EX M WB

lw r1,0(r2)IF miss miss IF ID EX M WB

第i次迭代(i=0..98)开始周期:1+(i×10)

总的时钟周期数:(98×10)+11=991

(3)有正常定向路径。单周期延迟分支。

Loop: lw r1,0(r2)

addi r2,r2,#4

addi r1,r1,#1

sub r4,r3,r2

bnz r4,loop

sw r1,-4(r2)

第i次迭代(i =0..98)开始周期:1+(i ×6 )

总的时钟周期数:(98×6)+10=598

Instruction1234567891011

lw r1,0(r2)IF ID EX M WB

addi r2,r2,#4IF ID EX M WB

addi r1,r1,#1IF ID EX M WB

sub r4,r3,r2IF ID EX M WB

bnz r4,loop IF ID EX M WB

sw r1,-4(r2)IF ID EX M WB

lw r1,0(r2)IF ID EX M WB

第五章存储层次

1.存储层次——采用不同的技术实现的存储器,处在离CPU不同距离的层次上,目标是达到离

CPU最近的存储器的速度,最远的存储器的容量。

2.全相联映象——主存中的任一块可以被放置到Cache中任意一个地方。

3.直接映象——主存中的每一块只能被放置到Cache中唯一的一个地方。

4.组相联映象——主存中的每一块可以放置到Cache中唯一的一组中任何一个地方(Cache分成

若干组,每组由若干块构成)。

5.替换算法——由于主存中的块比Cache中的块多,所以当要从主存中调一个块到Cache中时,

会出现该块所映象到的一组(或一个)Cache块已全部被占用的情况。这时,需要被迫腾出其中的某一块,以接纳新调入的块。

6.LRU——选择最近最少被访问的块作为被替换的块。实际实现都是选择最久没有被访问的块

作为被替换的块。

7.写直达法——在执行写操作时,不仅把信息写入Cache中相应的块,而且也写入下一级存储

器中相应的块。

8.写回法——只把信息写入Cache中相应块,该块只有被替换时,才被写回主存。

9.按写分配法——写失效时,先把所写单元所在的块调入Cache,然后再进行写入。

10.不按写分配法——写失效时,直接写入下一级存储器中,而不把相应的块调入Cache。

11.命中时间——访问Cache命中时所用的时间。

12.失效率——CPU访存时,在一级存储器中找不到所需信息的概率。

13.失效开销——CPU向二级存储器发出访问请求到把这个数据调入一级存储器所需的时间。

14.强制性失效——当第一次访问一个块时,该块不在Cache中,需要从下一级存储器中调入

Cache,这就是强制性失效。

15.容量失效——如果程序在执行时,所需要的块不能全部调入Cache中,则当某些块被替换后

又重新被访问,就会产生失效,这种失效就称作容量失效。

16.冲突失效——在组相联或直接映象Cache中,若太多的块映象到同一组(块)中,则会出现

该组中某个块被别的块替换(即使别的组或块有空闲位置),然后又被重新访问的情况。

17.相联度——在组相联中,每组Cache中的块数。

18.Victim Cache——位于Cache和存储器之间的又一级Cache,容量小,采用全相联策略。用于

存放由于失效而被丢弃(替换)的那些块。每当失效发生时,在访问下一级存储器之前,先检查Victim Cache中是否含有所需块。

19.伪相联Cache——一种既能获得多路组相联Cache的低失效率,又能获得直接映象Cache的命

中速度的相联办法。

20.故障性预取——在预取时,若出现虚地址故障或违反保护权限,就会发生异常。

21.非故障性预取——在预取时,若出现虚地址故障或违反保护权限,不发生异常。

22.非阻塞Cache——Cache在等待预取数据返回时,还能继续提供指令和数据。

23.子块放置技术——把一个Cache块划分为若干小块,称为子块(sub-blocks),并为每个子块

赋予一位有效值,用于说明该子块中的数据是否有效。失效时,只需从下一级存储器调入一个子块。

24.尽早重启动——在请求字没有到达时,CPU处于等待状态。一旦请求字到达,就立即发送给

CPU,让等待的CPU尽早重启动,继续执行。

25.请求字优先——调块时,首先向存储器请求CPU所要的请求字。请求字一旦到达,就立即

送往CPU,让CPU继续执行,同时从存储器调入该块的其余部分。

26.多级包容性——一级存储器(Cache)中的数据总位于下一级存储器中。

27.虚拟Cache——地址使用虚地址的Cache。

5.3 降低Cache失效率有哪几种方法?简述其基本思想。

常用的降低Cache失效率的方法有下面几种:

1增加Cache块大小。增加块大小利用了程序的空间局部性。

2提高相联度,降低冲突失效。

3Victim Cache,降低冲突失效。

4伪相联Cache,降低冲突失效。

5硬件预取技术,指令和数据都可以在处理器提出访问请求前进行预取。

6由编译器控制的预取,硬件预取的替代方法,在编译时加入预取的指令,在数据被用到之前发出预取请求。

7编译器优化,通过对软件的优化来降低失效率。

5.4简述减小Cache失效的几种方法。

1让读失效优先于写。

2子块放置技术。

3请求字处理技术。

4非阻塞Cache技术。

5采用两级Cache、

5.6 在“Cache—主存”层次中,主存的更新算法有哪几种??它们各有什么特点?

写直达法

易于实现,而且下一级存储器中的数据总是最新的。

写回法

速度块,“写”操作能以Cache存储器的速度进行。而且对于同一单元的多个写最后只需一次写回下一级存储器,有些“写”只到达Cache,不到达主存,因而所使用的存储器频带较低。

5.7 组相联Cache比相同容量的之直接映象Cache的失效率低。由此是否可以得出结论:采用组

相联Cache一定能带来性能上的提高?为什么?

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

5.8 写出三级Cache的平均访问时间T A的公式。

平均访存时间=命中时间+失效率×失效开销

只有第I层的失效时才会访问第I+1

设三级Cache的命中率分别为H L1、 H l2、 H L3,失效率分别为M l1、M l2、M L3,第三级Cache的失效开销为P L3。

平均访问时间T A =H L1+M l1{H l2+M l2(H L3+M L3×P L3)}

5.9 给定以下的假设,5.10 试计算直接映象Cache和两路组相联Cache的平均访问时间以及CPU

的性能。由计算结果能得出什么结论?

4理想Cache情况下的CPI为2.0,时钟周期为2ns,平均每条指令访存1.2次;

5两者Cache容量均为64KB,块大小都是32字节;

6组相联Cache中的多路选择器使CPU的时钟周期增加了10%;

7这两种Cache的失效开销都是80ns;

8命中时间为1个时钟周期;

964KB直接映象Cache的失效率为1.4%,64KB两路组相联Cache的失效率为1.0%。

解:平均访问时间=命中时间+失效率×失效开销

平均访问时间1-路=2.0+1.4% *80=3.12ns

平均访问时间2-路=2.0*(1+10%)+1.0% *80=3.0ns

两路组相联的平均访问时间比较低

CPU time=(CPU执行+存储等待周期)*时钟周期

CPU time=IC(CPI执行+总失效次数/指令总数*失效开销)*时钟周期=IC((CPI执行*时钟周期)+(每条指令的访存次数*失效率*失效开销*时钟周期))CPU time 1-way=IC(2.0*2+1.2*0.014*80)=5.344IC

CPU time 2-way =IC(2.2*2+1.2*0.01*80)=5.36IC

相对性能比:=

--1way time 2way

time CPU CPU 5.36/5.344=1.003

直接映象cache 的访问速度比两路组相联cache 要快1.04倍,而两路组相联Cache

的平均性能比直接映象cache 要高1.003倍。因此这里选择两路组相联。

6 输入输出系统

假设一台计算机的I/O 处理占10%,当其CPU 性能改进到原来的100倍时,而I/O 性能仅改进为原来的两倍时,系统总体性能会有什么改进?

解: 加速比=14

.710/%902/%101

=+

本题再次反映了Amdahl 定律,要改进一个系统的性能要对各方面性能都进行改进,不

然系统中最慢的地方就成为新系统的瓶颈。

假设磁盘空闲,这样没有排队延迟;公布的平均寻道时间是9ms ,传输速度是4MB/s ,转速是5400r/min ,控制器的开销是1ms 。问读或写一个512字节的扇区的平均时间是多少? 解:

平均磁盘访问时间

= 平均寻道时间 + 平均旋转延迟 + 传输时间 + 控制器开销 15.725m 1 0.125

5.6 9 1ms 4.0M B /s

0.5K B

5400r/min 0.5 9ms = + + + = + + + 假设实际测得的寻道时间是公布值的33%,则答案是:

3ms + 4.2ms + 0.1ms + 1ms = 8.3ms

6.3 按表6.2中的数据,问用哪种磁盘最适合于建立100GB 的镜像盘阵列(RAID1)存储子系统?

又问哪种磁盘最适合于建立100GB 的镜像盘阵列(RAID5)存储子系统?

盘阵列有哪些分级?各有什么特点?

RAID0亦称数据分块,即把数据分布在多个盘上,实际上是非冗余阵列,无冗余信息。 RAID1亦称镜像盘,使用双备份磁盘。每当数据写入一个磁盘时,将该数据也写到另一个冗

余盘,这样形成信息的两份复制品。如果一个磁盘失效,系统可以到镜像盘中获得所需要的信息。镜像是最昂贵的解决方法。特点是系统可靠性很高,但效率很低。 RAID2位交叉式海明编码阵列。原理上比较优越,但冗余信息的开销太大,因此未被广泛应

用。

RAID3位交叉奇偶校验盘阵列,是单盘容错并行传输的阵列。即数据以位或字节交叉的方式

存于各盘,冗余的奇偶校验信息存储在一台专用盘上。 RAID4专用奇偶校验独立存取盘阵列。即数据以块(块大小可变)交叉的方式存于各盘,冗余的

奇偶校验信息存在一台专用盘上。

RAID5块交叉分布式奇偶校验盘阵列,是旋转奇偶校验独立存取的阵列。即数据以块交叉的

方式存于各盘,但无专用的校验盘,而是把冗余的奇偶校验信息均匀地分布在所有磁盘上。

RAID6双维奇偶校验独立存取盘阵列。即数据以块(块大小可变)交叉的方式存于各盘,冗余的检、纠错信息均匀地分布在所有磁盘上。并且,每次写入数据都要访问一个数据盘和两个校验盘,可容忍双盘出错。

RAID7是采用Cache和异步技术的RAID6,使响应速度和传输速率有了较大提高。

同步总线和异步总线各有什么优缺点?总线的主要参数有哪些?各是什么含义?

同步总线上所有设备通过统一的总线时钟进行同步。同步总线成本低,因为它不需要设备之间相互确定时序的逻辑。但是同步总线也有缺点,总线操作必须以相同的速度运行。由于各种设备都要精确地以公共时钟为定时参考,因此在时钟频率很高时容易产生时钟相对漂移错误。

异步总线上的设备之间没有统一的时钟,设备自己内部定时。设备之间的信息传送用总线发送器和接收器控制。异步总线容易适应更广泛的设备类型,扩充总线时不用担心时钟时序和时钟同步问题。但在传输时,异步总线需要额外的同步开销。

总线常用的参数有3个:

2Tp:总线信号传输延迟。即在总线上的每个设备都取到和识别一个信号需要的最大时间。

3Tsk:响应其它设备的最大时间,这个参数在同步总线中是一个重要的参数。

4Top:设备的操作时间。

计算机体系结构习题(含答案)

第2章课后习题 1、尾数用补码、小数表示,阶码用移码、整数表示,尾数字长p=6(不包括符号位),阶码字长q=6(不包括符号位),为数基值r m=16,阶码基值r e=2。对于规格化浮点数,用十进制表达式写出如下数据(对于前11项,还要写出16进值编码)。 (1)最大尾数(8)最小正数 (2)最小正尾数(9)最大负数 (3)最小尾数(10)最小负数 (4)最大负尾数(11)浮点零 (5)最大阶码(12)表数精度 (6)最小阶码(13)表数效率 (7)最大正数(14)能表示的规格化浮点数个数 2.一台计算机系统要求浮点数的精度不低于10-7.2,表数围正数不小于1038,且正、负数对称。尾数用原码、纯小数表示,阶码用移码、整数表示。 (1) 设计这种浮点数的格式 (2) 计算(1)所设计浮点数格式实际上能够表示的最大正数、最大负数、表数精度和表数效率。 3.某处理机要求浮点数在正数区的积累误差不大于2-p-1,其中,p是浮点数的尾数长度。 (1) 选择合适的舍入方法。 (2) 确定警戒位位数。 (3) 计算在正数区的误差围。 4.假设有A和B两种不同类型的处理机,A处理机中的数据不带标志符,其指令字长和数据字长均为32位。B处理机的数据带有标志符,每个数据的字长增加至36位,其中有4位是标志符,它的指令数由最多256条减少到不到64条。如果每执行一条指令平均要访问两个操作数,每个存放在存储器中的操作数平均要被访问8次。对于一个由1000条指令组成的程序,分别计算这个程序在A处理机和B处理机中所占用的存储空间大小(包括指令和数据),从中得到什么启发? 5.一台模型机共有7条指令,各指令的使用频率分别为35%,25%,20%,10%,5%,3%和2%,有8个通用数据寄存器,2个变址寄存器。 (1) 要求操作码的平均长度最短,请设计操作码的编码,并计算所设计操作码的平均长度。 (2) 设计8字长的寄存器-寄存器型指令3条,16位字长的寄存器-存储器型变址寻址方式指令4条,变址围不小于±127。请设计指令格式,并给出各字段的长度和操作码的编码。 6.某处理机的指令字长为16位,有双地址指令、单地址指令和零地址指令3类,并假设每个地址字

软件体系结构KWIC实验

《软件体系结构》 实验:软件体系结构风格之应用

一、实验目的 通过 KWIC 实例分析,理解和掌握软件体系结构风格设计与实现。 二、实验容 多种软件风格设计与实现之 KWIC 实例: 1.采用主/子程序体系结构风格实现 KWIC 关键词索引系统 2.采用面向对象体系架构风格实现 KWIC 关键词索引系统 3.采用管道过滤 体系架构风格实现 KWIC 关键词索引系统 4.采用事件过程调用体系架构风格实现 KWIC 关键词索引系统 三、实验要求与实验环境 熟练掌握基于主/子程序体系结构风格的 KWIC 关键词索引系统,在此基础上, 完成基于面向对象体系架构风格的 KWIC 关键词索引系统设计与实现。选做基于 管道过滤体系架构风格的 KWIC 关键词索引系统;选做基于事件过程调用体系架 构风格的 KWIC 关键词索引系统。 实验课前完成实验报告的实验目的、实验环境、实验容、实验操作过程等 容;实验课中独立/团队操作完成实验报告的实验操作、实验结果及结论等容;每 人一台 PC 机,所需软件 Win2003/XP 、 UML 工具( EclipseUML/ Rose/Visio/StartUML/)、Eclipse/MyEclipse、JDK6.0 等。 四、实验操作 1、采用主/子程序体系结构风格实现 KWIC 关键词索引系统 主程序/子程序风格(Main Program/Subroutine Style)将系统组织成层次结 构,包括一个主程序和一系列子程序。主程序是系统的控制器,负责调度各子程

序的执行。各子程序又是一个局部的控制器,调度其子程序的执行。设计词汇表: 主程序 main(), 子程序 shift(), sort() 方法,方法的调用,返回构件和连接件类 型: 构件:各类子程序,如 shift(),sort() 连接件:方法的调用基本的计算模型: 子程序有 shift(), sort()方法,shift() 对单词进行移位,sort()方法对单词进行 排序 风格的基本不变性: 主程序有顺序地调用子程序,单线程控制。 KWIC 的主/子程序体系结构风格示意图如下所示: 主程序/子程序风格的重要设计决策与约束有:

体系结构 习题解答范文

第一章计算机体系结构的基本概念 1.层次结构——计算机系统可以按语言的功能划分为多级层次结构,每一层以不同的语言为 2.计算机体系结构:程序员看到的计算机的属性,即概念性结构和功能特性。 3.实质是计算机系统中软硬件界面的确定。 4.翻译——(基于层次结构)先把N+1级程序全部变换成N级程序之后,再去执行N级程序, 在执行过程中,N+1级程序不再被访问。 5.解释——每当一条N+1级指令被译码后,就直接去执行一串等效的N级指令,然后再去取下 一条N+1级指令,依此重复执行。 6.体系结构——程序员所看到的计算机的属性,即概念性结构与功能特性。主要研究计算机 系统软件和硬件的功能分配以及如何最佳、最合理地实现分配给硬件的功能。 8.透明性——在计算机技术中,对本来存在的事物或属性,从某一角度来看又好像不存在的 概念称为透明性。 9.系列机——在一个厂家生产的具有相同的体系结构,但具有不同的组成和实现的一系列不 同型号的机器。 10.软件兼容——同一个软件可以不加修改地运行于体系结构相同的各档机器上,而且它们所 获得的结果一样,差别只在于运行的时间不同。 11.兼容机——不同厂家生产的、具有相同体系结构的计算机。 12.计算机组成——计算机体系结构的逻辑实现。 13.计算机实现——计算机组成的物理实现。 14.存储程序计算机(冯·诺依曼结构)——采用存储程序原理,将程序和数据存放在同一存 储器中。指令在存储器中按其执行顺序存储,由指令计数器指明每条指令所在的单元地址。 15.并行性——在同一时刻或同一时间间隔内完成两种或两种以上性质相同或不同的工作。 16.时间重叠——在并行性中引入时间因素,即多个处理过程在时间上相互错开,轮流重叠地 使用同一套硬件设备的各个部分,以加快硬件周转而赢得速度。 17.资源重复——在并行性中引入时间因素,是根据“以数量取胜”的原则,通过重复设置资源, 尤其是硬件资源,大幅度提高计算机系统的性能。

计算机体系结构期末复习

计算机体系结构期末复习资料 1.并行性:是指在同一时刻或者是同一时间间隔内完成两种或两种以上性质相同或不同的工作。 2.CPI:每条指令执行时所花费的平均时钟周期。 3.体系结构:即计算机的属性,即概念性结构与功能特性。 4.Amdahl定理:加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中所占的重要性。 5.信息存储的整数边界:信息在主存中存放的起始地址必须是该信息(字节数)的整数倍。 6.指令系统的正交性:指在指令中各个不同含义的字段,在编码时应互不相关,相互独立。 7.流水线技术:是指将一个重复的时序过程,分解成为若干子过程,而每个过程都可有效在其专用功能段上与其他子过程同时执行。 8.定向技术:在某条指令产生一个结果之前,其他指令并不直接需要该计算结果,如果能将该计算结果从其他产生的地方直接送到其他指令需要它的地方,那么就可以避免暂停的技术就叫定向技术。 9.相关:衡量两个随机变量之间相关程度的指标。 10.向量流水处理机:是指处理机具有向量数据表示并通过向量指令对向量的各元素进行处理。、

11.定向:将计算结果从其产生的地方直接送到其他指令需要它的地方,或所有需要它的功能单元,避免暂停。 12.指令集的并行:当指令之间不存在相关时,它们在流水线中是可以重叠起来并行执行。 13.记分牌技术:流出和读操作数。在没有结构冲突时,尽可能早地执行没有数据冲突的指令,实现每个时钟周期执行一条指令。如果某条指令被暂停,而后面的指令与流水线中正在执行或被暂停的指令都不相关,是这些指令可以跨越它,继续流出和执行下去。 14.Tomasulo算法:寄存器换名是通过保留站和流出逻辑来共同完成,当指令流出时,如果其操作数还没有计算出来,则该指令中相应的寄存器换名将产生这个操作数的保留站的标识。因此,指令流出到保留站后,其操作数寄存器或者换成了数据本身,或换成了保留站的标识,和寄存器无关。后面指令对该寄存器的写入操作就不会产生WAR冲突。 15.替换算法:由于主存中的块比Cache中的块多,所以当要从主存中调一个块到Cache中时,会出现该块所映象到的一组(或一个)Cache块已全部被占用的情况。这时,需要被迫腾出其中的某一块,以接纳新调入的块。

计算机体系结构习题答案解析

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

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

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

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

系统结构期末考试试题及答案

得分 评分人 填空题: (20分,每题2 分) 单选题:(10分,每题1分) A.任何虚页都可装入主存中任何实页的位置 B. 一个虚页只装进固定的主存实页位置 《计算机系统结构》期末考试试卷(A ) 得分 注:1、共100分,考试时间120分钟。 2、此试卷适用于计算机科学与技术本科专业。 1、."启动I/O"指令是主要的输入输出指令,是属于( A. 目态指令 B.管态指令 C.目态、管态都能用的指令 D.编译程序只能用的指令 2、 输入输出系统硬件的功能对 (B )是透明的 A.操作系统程序员 B.应用程序员 C.系统结构设计人员 D.机器语言程序设计员 3、 全相联地址映象是指(A ) C. 组之间固定,组内任何虚页可装入任何实页位置 D.组间可任意装入,组内是固定装入 4、( C ) 属于MIMD 系统结构 A.各处理单元同时受一个控制单元的管理 B.各处理单元同时受同个控制单元送来的指令 C.松耦合多处理机和多计算机系统 D. 阵列处理机 5、多处理机上两个程序段之间若有先写后读的数据相关,则( B ) A.可以并行执行 B.不可能并行 C.任何情况均可交换串行 D.必须并行执行 6、 计算机使用的语言是(B ) A.专属软件范畴,与计算机体系结构无关 B.分属于计算机系统各个层次 C.属于用以建立一个用户的应用环境 D. 属于符号化的机器指令 7、 指令执行结果出现异常引起的中断是( C ) A.输入/输出中断 B.机器校验中断 C.程序性中断 D.外部中断 &块冲突概率最高的 Cache 地址映象方式是(A ) A.直接 B .组相联 C .段相联 D .全相联 9、 组相联映象、LRU 替换的Cache 存储器,不影响 Cache 命中率的是(B ) A.增大块的大小 B .增大主存容量 C .增大组的大小 D .增加Cache 中的块数 10、 流水处理机对全局性相关的处理不 包括(C ) A.猜测法 B.提前形成条件码 C.加快短循环程序的执行 D.设置相关专用通路

《计算机体系结构》期末复习题标准答案

《计算机体系结构》期末复习题答案

————————————————————————————————作者:————————————————————————————————日期:

《计算机体系结构》期末复习题答案 系别_________ 班级_________ 姓名__________ 学号__________ 一、填空题(每空1分) 1.按照弗林(Flynn)分类法,计算机系统可以分为4类:SISD计算机、(SIMD计算机)、(MISD计算机)和(MIMD计算机)。 2. 改进之后的冯?诺依曼计算机的只要特点是存储器为中心,总线结构,分散控制。 3. 当前计算机系统中的存储系统是一个层次结构,其各层分别为:(通用寄存器,高速缓存,主存,辅存,脱机大容量存储器)。 4.高速缓冲存储器的地址映象方式有三种,它们分别是:(全向量方式,直接相联方式,组相联方式)。 5.虚拟存储器的三种管理方式是(段式管理,页式管理和段页式管理)。 6.目前计算机中常用数据有(用户定义数据,系统数据和指令数据)三种类型。 7.通常可能出现的流水线的相关性有(资源相关,数据相关和控制相关)。 8.解决中断引起的流水线断流的方法有(不精确断点法和精确断点法)。 9.目前向量处理机的系统结构有两种:(存储器-存储器型和寄存器-寄存器型)。 10.通用计算机基本指令分为5类,它们分别是:(数据传送类,运算类,程序控制类,输入输出类,处理机控制和调试类)。 11.执行指令x1=x2+x3;x4=x1-x5会引起(RAW)类型的数据相关,执行指令x5=x4*x3;x4=x0+x6会引起(W AR)类型的数据相关,执行指令x6=x1+x2;x6=x4*x5会引起(WA W)类型的数据相关。 12.多计算机网络中,通常出现的4种通信模式是(单播模式,选播模式,广播模式和会议模式)。 13.传统的冯?诺依曼计算机是以控制驱动方式工作,以数据驱动方式工作的典型计算机是(数据流计算机),以需求驱动方式工作的典型计算机是(归约机),以模式匹配驱动方式工作的典型计算机是(人工智能计算机)。 二、名词解释(每题2分) 1.计算机体系结构: 计算机系统结构就是计算机的机器语言程序员或编译程序编写者所看到的外特性,是硬件子系统的概念结构及其功能特性。 2.系列机: 所谓系列机是指同一厂家生产的具有相同的系统结构,但采取了不同的组成和实现的技术方案,形成了不同型号的多种机型。 3.模拟: 模拟是指用软件的方法在一台计算机上,实现另一台计算机的指令系统,被模拟的机器是不存在的,称为虚拟机,执行模拟程序的机器称宿主机。 4.程序的局部性原理: 程序访问局部性原理说明了计算机在程序执行过程中呈现出的一种规律,即程序往往重

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

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

计算机系统结构期末考试题目

第一章: 1.计算机系统结构的定义 答:由程序设计者看到的一个计算机系统的属性,即概念性结构和功能特性。 2.透明性概念 答:在计算机技术中,一种本来是存在的事物或属性,但从某种角度看似乎不存在,称为透明性现象。 3.兼容性向后兼容 兼容性:同一个软件可以不加修改地运行于系统结构相同的各档机器,可获得相同的结果,差别只在于不同的运行时间。 向后兼容:按某个时期投入市场的某种型号机器编制的程序,不加修改就能运行于在它之后投入市场的机器。 4.Amdahl定律 答:系统中某一部件由于采用某种更快的执行方式后整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。 5.CPI 答:每条指令的平均时钟周期数。 6.MIPS 答:每秒百万条指令数!MIPS=时钟频率/(CPI*10^6) 7.MFLOPS 答:每秒百万次浮点操作次数。MFLOPS=程序中的浮点操作次数/(执行时间*10^6) 8.命中率的概念 答: 9.Flynn分类法是按指令流和数据流的多倍性特征进行计算机系统结构的划分 答:①单指令流单数据流SISD ②单指令流多数据流SIMD ③多指令流单数据流MISD(实际不存在)④多指令流多数据流MIMD 10.计算机系统设计的定量原理(四个) 答:①加快经常性事件的速度②Amdahl定律③CPU性能公式④访问的局部性原理11.CPI和加速比的计算 答:CPI=CPU时钟周期数/IC CPU时间=CPU时钟周期数/频率 CPU时间=CPU时钟周期*时钟周期长 加速比=(采用改进措施后的性能)/(没有采用改进措施前的性能) =(没有采用改进措施前执行某任务的时间)/(采用改进措施后执行某任务的时间) 12.软硬件实现的特点 硬件实现:速度快、成本高;灵活性差、占用内存少 软件实现:速度低、复制费用低;灵活性好、占用内存多 13.系统评价的标准 ①运算速度②存储器系统③其他性能④成本标准

计算机体系结构习题与答案

一、复习题 1.简述冯?诺依曼原理,冯?诺依曼结构计算机包含哪几部分部件,其结构以何部件为中心? 答:冯?诺依曼理论的要点包括:指令像数据那样存放在存储器中,并可以像数据那样进行处理;指令格式使用二进制机器码表示;用程序存储控制方式工作。这3条合称冯?诺依曼原理 冯?诺依曼计算机由五大部分组成:运算器、控制器、存储器、输入设备、输出设备,整个结构一般以运算器为中心,也可以以控制器为中心。 (P51-P54) 2.简述计算机体系结构与组成、实现之间的关系。 答:计算机体系结构通常是指程序设计人员所见到的计算机系统的属性,是硬件子系统的结构概念及其功能特性。计算机组成(computer organization)是依据计算机体系结构确定并且分配了硬件系统的概念结构和功能特性的基础上,设计计算机各部件的具体组成,它们之间的连接关系,实现机器指令级的各种功能和特性。同时,为实现指令的控制功能,还需要设计相应的软件系统来构成一个完整的运算系统。计算机实现,是计算机组成的物理实现, 就是把完成逻辑设计的计算机组成方案转换为真实的计算机。计算机体系结构、计算机组成和计算机实现是三个不同的概念,各自有不同的含义,但是又有着密切的联系,而且随着时间和技术的进步,这些含意也会有所改变。在某些情况下,有时也无须特意地去区分计算机体系结构和计算机组成的不同含义。 (P47-P48) 3.根据指令系统结构划分,现代计算机包含哪两种主要的体系结构? 答:根据指令系统结构划分,现代计算机主要包含:CISC和RISC两种结构。 (P55) 4.简述RISC技术的特点? 答:从指令系统结构上看,RISC 体系结构一般具有如下特点: (1) 精简指令系统。可以通过对过去大量的机器语言程序进行指令使用频度的统计,来选取其中常用的基本指令,并根据对操作系统、高级语言和应用环境等的支持增设一些最常用的指令; (2) 减少指令系统可采用的寻址方式种类,一般限制在2或3种; (3) 在指令的功能、格式和编码设计上尽可能地简化和规整,让所有指令尽可能等长; (4) 单机器周期指令,即大多数的指令都可以在一个机器周期内完成,并且允许处理器在同一时间内执行一系列的指令。 (P57-58) 5.有人认为,RISC技术将全面替代CISC,这种观点是否正确,说明理由? 答:不正确。与CISC 架构相比较,RISC计算机具备结构简单、易于设计和程序执行效率高的特点,但并不能认为RISC 架构就可以取代CISC 架构。事实上,RISC 和CISC 各有优势,CISC计算机功能丰富,指令执行更加灵活,这些时RISC计算机无法比拟的,当今时代,两者正在逐步融合,成为CPU设计的新趋势。 (P55-59) 6.什么是流水线技术? 答:流水线技术,指的是允许一个机器周期内的计算机各处理步骤重叠进行。特别是,当执行一条指令时,可以读取下一条指令,也就意味着,在任何一个时刻可以有不止一条指令在“流水线”上,每条指令处在不同的执行阶段。这样,即便读取和执行每条指令的时间保持不变,而计算机的总的吞吐量提高了。 (P60-62) 7.多处理器结构包含哪几种主要的体系结构,分别有什么特点? 答:多处理器系统:主要通过资源共享,让共享输入/输出子系统、数据库资源及共享或不共享存储的一组处理机在统一的操作系统全盘控制下,实现软件和硬件各级上相互作用,达到时间和空间上的异步并行。 SIMD计算机有多个处理单元,由单一的指令部件控制,按照同一指令流的要求为他们分配各不相同的数据并进行处理。系统结构为由一个控制器、多个处理器、多个存贮模块和

中南大学软件体系结构设计模式实验二

中南大学软件体系结构设计模式实验二 Company number:【0089WT-8898YT-W8CCB-BUUT-202108】

实验3 设计模式实验二 实验学时: 4 每组人数: 1 实验类型: 3 (1:基础性 2:综合性 3:设计性 4:研究性) 实验要求: 1 (1:必修 2:选修 3:其它) 实验类别: 3 (1:基础 2:专业基础 3:专业 4:其它) 一、实验目的 熟练使用PowerDesigner和任意一种面向对象编程语言实现几种常见的行为型设计模式,包括职责链模式、命令模式、观察者模式和策略模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式。 二、实验内容 1. 某企业的SCM(Supply Chain Management,供应链管理)系统中包含一个采购审批子系统。该企业的采购审批是分级进行的,即根据采购金额的不同由不同层次的主管人员来审批,主任可以审批5万元以下(不包括5万元)的采购单,副董事长可以审批5万元至10万元(不包括10万元)的采购单,董事长可以审批10万元至50万元(不包括50万元)的采购单,50万元及以上的采购单就需要开董事会讨论决定。如下图所示: 试使用职责链模式设计并模拟实现该系统。 2. 房间中的开关是命令模式的一个实例,现用命令模式来模拟开关的功能,可控制对象包括电灯和电风扇,绘制相应的类图并编程模拟实现。 3. 某软件公司欲开发一个基于Windows平台的公告板系统。系统提供一个主菜单(Menu),在主菜单中包含了一些菜单项(MenuItem),可以通过Menu类的addMenuItem()方法增加菜单项。菜单项的主要方法是click(),每一个菜单项包含一个抽象命令类,具体命令类包括OpenCommand(打开命令),CreateCommand(新建命令),EditCommand(编辑命令)等,命令类具有一个execute()方法,用于调用公告板系统界面类(BoardScreen)的open()、create()、edit()等方法。现使用命令模式设计该系统,使得MenuItem类与BoardScreen类的耦合度降低,绘制类图并编程实现。 4. 某实时在线股票软件需要提供如下功能:当股票购买者所购买的某支股票价格变化幅度达到5%时,系统将自动发送通知(包括新价格)给购买该股票的所有股民。试使用观察者模式设计并实现该系统,要求绘制相应的类图并编程模拟实现。 5. 某公司欲开发一套机房监控系统,如果机房达到某一指定温度,温度传感器(Thermosensor)将自动传递信号给各种响应设备,例如警示灯(CautionLight)将闪烁(flicker())、报警器(Annunciator)将发出警报(alarm())、安全逃生门(SecurityDoor)将自动开启(open())、隔热门(InsulatedDoor)将自动关闭(close())

计算机体系结构课后答案

计算机体系结构课后答案

计算机体系结构课后答案 【篇一:计算机体系结构习题(含答案)】 1、尾数用补码、小数表示,阶码用移码、整数表示,尾数字长p=6(不包括符号位),阶码字长q=6(不包括符号位),为数基值rm=16,阶码基值re=2。对于规格化浮点数,用十进制表达式写出如下数据(对于前11项,还要写出16进值编码)。 (1)最大尾数(8)最小正数 (2)最小正尾数(9)最大负数 (3)最小尾数(10)最小负数 (4)最大负尾数(11)浮点零 (5)最大阶码(12)表数精度 (6)最小阶码(13)表数效率 (7)最大正数(14)能表示的规格化浮点数个数 2.一台计算机系统要求浮点数的精度不低于10-7.2,表数范围正数不小于1038,且正、负数对称。尾数用原码、纯小数表示,阶码用移码、整数表示。 (1) 设计这种浮点数的格式 (2) 计算(1)所设计浮点数格式实际上能够表示的最大正数、最大负数、表数精度和表数效率。 3.某处理机要求浮点数在正数区的积累误差不大于2-p-1 ,其中,p是浮点数的尾数长度。 (1) 选择合适的舍入方法。

(2) 确定警戒位位数。 (3) 计算在正数区的误差范围。 4.假设有a和b两种不同类型的处理机,a处理机中的数据不带标志符,其指令字长和数据字长均为32位。b处理机的数据带有标志符,每个数据的字长增加至36位,其中有4位是标志符,它的指令数由最多256条减少到不到64条。如果每执行一条指令平均要访问两个操作数,每个存放在存储器中的操作数平均要被访问8次。对于一个由1000条指令组成的程序,分别计算这个程序在a处理机和b处理机中所占用的存储空间大小(包括指令和数据),从中得到什么启发? 5.一台模型机共有7条指令,各指令的使用频率分别为35%,25%,20%,10%,5%,3%和2%,有8个通用数据寄存器,2个变址寄存器。 (1) 要求操作码的平均长度最短,请设计操作码的编码,并计算所设计操作码的平均长度。 6.某处理机的指令字长为16位,有双地址指令、单地址指令和零地址指令3类,并假设每个地址字 段的长度均为6位。 (1) 如果双地址指令有15条,单地址指令和零地址指令的条数基本相同,问单地址指令和零地址指令各有多少条?并且为这3类指令分配操作码。 (2) 如果要求3类指令的比例大致为1:9:9,问双地址指令、单地址指令和零地址指令各有多少条?并且为这3类指令分配操作码。 7.别用变址寻址方式和间接寻址方式编写一个程序,求c=a+b,其中,a与b都是由n个元素组成的一维数组。比较两个程序,并回答下列问题: (1) 从程序的复杂程度看,哪一种寻址方式更好?

2020.4《计算机体系结构》期末试卷A含答案

《计算机体系结构》期末考试A卷 (总分:100分,时间:100分钟) 姓名:周元华 专业:计算机科学与技术 学号: 18260070164016 学习中心:上海弘成 一、填空题(每空1分,共14分) 1.高速缓冲存储器的地址映象方式有三种,它们分别是:全向量方式,直接相联方式,组相连方式。 2.虚拟存储器的三种管理方式是段式管理,页式管理和 段页式管理。 3.从主存的角度来看,“Cache—主存”层次的目的是为了提高速度,而“主存—辅存”层次的目的是为了扩大容量 4.根据指令间的对同一寄存器读和写操作的先后次序关系,数据相关冲突可分为读与写(RAM)、写与读(WAR)和写与写(WAW)三种类型。 5.当代计算机体系结构的概念包括指令集结构、计算机组成和计算机实现三个方面的内容 二、名词解释(每题2分,共16分) 计算机体系结构: 计算机体系结构是指根据属性和功能不同而划分的计算机理论组成部分及计算机基本工作原理、理论的总称。其中计算机理论组成部分并不单与某一个实际硬件相挂钩,如存储部分就包括寄存器、内存、硬盘等。 兼容机: 兼容机,就是由不同公司厂家生产的具有相同系统结构的计算机。简单点说,就是非厂家原装,而改由个体装配而成的机器,其中的元件可以是同一厂家出品,但更多的是整合各家之长的 计算机。 写直达法: 写直达法一般指全写法。全写法(write-through):又称写直达法、写穿法,透写法,Cache使 用方式之一。 高速缓冲存储器: 高速缓冲存储器(Cache)其原始意义是指存取速度比一般随机存取记忆体(RAM)来得快 的一种RAM,一般而言它不像系统主记忆体那样使用DRAM技术,而使用昂贵但较快速的SRAM 技术,也有快取记忆体的名称。 高速缓冲存储器是存在于主存与CPU之间的一级存储器,由静态存储芯片(SRAM)组成, 容量比较小但速度比主存高得多,接近于CPU的速度。在计算机存储系统的层次结构中,是介 于中央处理器和主存储器之间的高速小容量存储器。它和主存储器一起构成一级的存储器。高速 缓冲存储器和主存储器之间信息的调度和传送是由硬件自动进行的。 高速缓冲存储器最重要的技术指标是它的命中率。 延迟转移技术: 在转移指令之后插入一条或几条有效的指令。当程序执行时,要等这些插入的指令执行完成 之后,才执行转移指令,因此,转移指令好像被延迟执行了,这种技术称为延迟转移技术。 线性流水线: 线性流水线就是由一整套工艺串联而成的生产线。 流水线又称为装配线,一种工业上的生产方式,指每一个生产单位只专注处理某一个片段的工 作,以提高工作效率及产量;按照流水线的输送方式大体可以分为:皮带流水装配线、板链线、 倍速链、插件线、网带线、悬挂线及滚筒流水线这七类流水线。 输送线的传输方式有同步传输的/(强制式),也可以是非同步传输/(柔性式),根据配置的 选择,可以实现装配和输送的要求。输送线在企业的批量生产中不可或缺。 流水线的吞吐率: 流水线的吞吐率是单位时间内流水线处理的任务数。 并行性: 并行性是指计算机系统具有可以同时进行运算或操作的特性,在同一时间完成两种或两种以 上工作。它包括同时性与并发性两种含义。同时性指两个或两个以上事件在同一时刻发生。并发 性指两个或两个以上事件在同一时间间隔发生。 三、简答题(每题5分,共30分) 1.如有一个经解释实现的计算机,可以按功能划分成4级。每一 级为了执行一条指令需要下一级的N条指令解释。若执行第一 级的一条指令需K(ns)时间,那么执行第2、3、4级的一条指 令各需要用多少时间(ns)? 答:第1级:1条1级指令 K ns 第2级:1条2级指令N条1级指令 1*N*K ns = NK ns 第3级:1条3级指令N条2级指令 1*N*NK ns =N2K ns 第4级:1条4级指令N条3级指令 1*N*NNK ns =N3K ns 2.根据Amdahl定律,系统加速比由哪两个因素决定? 答:系统加速比依赖于两个因素: (1)可改进比例:可改进部分在原系统计算时间中所占的比例 (2)部件加速比:可改进部分改进以后的性能提高 3.简述组相联映象规则。 答:(1)主存与缓存分成相同大小的数据块。(2)主存和Cache 按同样大小划分成组。(3)主存容量 是缓存容量的整数倍,将主存空间按缓冲区的大小分成区,主存中每一区的组数与缓存的组数相同 4.引起Cache与主存内容不一致的原因是什么?为了保持Cache 的一致性,在单计算机系统中一般采取哪些措施? 答:不一致的原因:(1)由于CPU写Cache,没有立即写主存 (2)由于I/O处理机或I/O设备写主存 采取措施: (1)全写法,亦称写直达法(WT法-Write through) 方法:在对Cache进行写操作的同时,也对主存该内容进行写入 (2)写回法(WB法-Write back) 方法:在CPU执行写操作时,只写入Cache,不写入主存。 5.按照同一时间内各段之间的连接方式来分,流水线可分为哪两 类? 答:(1)静态流水线:在同一时间内,流水线的各段只能按同一种功能的连接方式工作。 (2)动态流水线:在同一时间内,当某些段正在实现某种运算时,另一些段却在实现另一种运算。 6.Flynn分类法是根据什么对计算机进行分类的?将计算机分 成哪几类? 答:Flynn分类法,根据计算机中指令和数据的并行状况把计算机分成: (1)单指令流单数据流(SISD.; (2)单指令流多数据流(SIMD.; (3)多指令流单数据流(MISD.; (4)多指令流多数据流(MIMD.。 四、问答与计算题(第1题10分,第2、3题每题15分共40分) 1.一个有快表和慢表的页式虚拟存储器,最多有64个用户,每 个用户最多要用1024个页面,每页4K字节,主存容量8M字节。 (1)写出多用户虚地址的格式,并标出各字段的长度。 (2)写出主存地址的格式,并标出各字段的长度。

第2章计算机体系结构习题及答案解析

第二章习题(P69-70) 一、复习题 1.简述冯?诺依曼原理,冯?诺依曼结构计算机包含哪几部分部件,其结构以何部件为中心? 答:冯?诺依曼理论的要点包括:指令像数据那样存放在存储器中,并可以像数据那样进行处理;指令格式使用二进制机器码表示;用程序存储控制方式工作。这3条合称冯?诺依曼原理 冯?诺依曼计算机由五大部分组成:运算器、控制器、存储器、输入设备、输出设备,整个结构一般以运算器为中心,也可以以控制器为中心。 (P51-P54) 2.简述计算机体系结构与组成、实现之间的关系。 答:计算机体系结构通常是指程序设计人员所见到的计算机系统的属性,是硬件子系统的结构概念及其功能特性。计算机组成(computer organization)是依据计算机体系结构确定并且分配了硬件系统的概念结构和功能特性的基础上,设计计算机各部件的具体组成,它们之间的连接关系,实现机器指令级的各种功能和特性。同时,为实现指令的控制功能,还需要设计相应的软件系统来构成一个完整的运算系统。计算机实现,是计算机组成的物理实现, 就是把完成逻辑设计的计算机组成方案转换为真实的计算机。计算机体系结构、计算机组成和计算机实现是三个不同的概念,各自有不同的含义,但是又有着密切的联系,而且随着时间和技术的进步,这些含意也会有所改变。在某些情况下,有时也无须特意地去区分计算机体系结构和计算机组成的不同含义。 (P47-P48) 3.根据指令系统结构划分,现代计算机包含哪两种主要的体系结构? 答:根据指令系统结构划分,现代计算机主要包含:CISC和RISC两种结构。 (P55) 4.简述RISC技术的特点? 答:从指令系统结构上看,RISC 体系结构一般具有如下特点: (1) 精简指令系统。可以通过对过去大量的机器语言程序进行指令使用频度的统计,来选取其中常用的基本指令,并根据对操作系统、高级语言和应用环境等的支持增设一些最常用的指令; (2) 减少指令系统可采用的寻址方式种类,一般限制在2或3种; (3) 在指令的功能、格式和编码设计上尽可能地简化和规整,让所有指令尽可能等长; (4) 单机器周期指令,即大多数的指令都可以在一个机器周期内完成,并且允许处理器在同一时间内执行一系列的指令。 (P57-58) 5.有人认为,RISC技术将全面替代CISC,这种观点是否正确,说明理由? 答:不正确。与CISC 架构相比较,RISC计算机具备结构简单、易于设计和程序执行效率高的特点,但并不能认为RISC 架构就可以取代CISC 架构。事实上,RISC 和CISC 各有优势,CISC计算机功能丰富,指令执行更加灵活,这些时RISC计算机无法比拟的,当今时代,两者正在逐步融合,成为CPU设计的新趋势。 (P55-59) 6.什么是流水线技术? 答:流水线技术,指的是允许一个机器周期内的计算机各处理步骤重叠进行。特别是,当执行一条指令时,可以读取下一条指令,也就意味着,在任何一个时刻可以有不止一条指令在“流水线”上,每条指令处在不同的执行阶段。这样,即便读取和执行每条指令的时间保持不变,而计算机的总的吞吐量提高了。 (P60-62) 7.多处理器结构包含哪几种主要的体系结构,分别有什么特点? 答:多处理器系统:主要通过资源共享,让共享输入/输出子系统、数据库资源及共享或不共享存储的一组处理机在统一的操作系统全盘控制下,实现软件和硬件各级上相互作用,达到时间和空间上的异步并行。

软件体系结构实验二

南京邮电大学 《软件体系结构》实验报告 实验题目软件体系结构风格之应用 姓名xxx 学号xxx 院系计算机、软件学院 指导老师周国强 2013年12月18日

一、实验目的和要求 实验目的: 通过KWIC实例分析,理解和掌握软件体系结构风格设计与实现。 实验要求: 熟练掌握基于主/子程序体系结构风格的KWIC关键词索引系统,在此基础上,完成基于面向对象体系架构风格的KWIC关键词索引系统设计与实现。选做基于管道过滤体系架构风格的KWIC关键词索引系统;选做基于事件过程调用体系架构风格的KWIC关键词索引系统。 实验课前完成实验报告的实验目的、实验环境、实验内容、实验操作过程等内容;实验课中独立/团队操作完成实验报告的实验操作、实验结果及结论等内容;每人一台PC机,所需软件Win2003/XP、UML工具(EclipseUML/ Rose/Visio/StartUML/)、Eclipse/MyEclipse、JDK6.0等。实验课后完成实验报告的心得体会内容,并及时提交实验报告。 二、实验课时:2 三、实验内容及操作步骤 多种软件风格设计与实现之KWIC实例: 1.采用主/子程序体系结构风格实现KWIC关键词索引系统 public static void input(String inputFile){ fr=null; try { fr=new (inputFile);

} catch ( e) { // TODO Auto-generated catch block e.printStackTrace(); } BufferedReader br=new BufferedReader(fr); textLines=new ArrayList(); try { while(br.ready()){ textLines.add(br.readLine()); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void circularShift(){ shiftedLineIndexes=new ArrayList(); for(int i=0;i1){ if(j==sarray.length-1){ for(int k=0;k<(sarray.length-1);k++){ newLine=newLine+" "+sarray[k]; } } else{ for(int k=j+1;k

相关主题