文档库 最新最全的文档下载
当前位置:文档库 › 计算机系统结构作业答案第三章(张晨曦)

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

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

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 表示任务数)

(2)瓶颈在3、4段。

方法一:变成八级流水线(细分)

11.7e8

方法二:变成两级流水线(合并)

方法三:将段1、2 合并为一段,段4 细化流水为两段

方法四:重复设置部件,设置2个部件3,4个部件4,和第一种方法结果相同

3.14 有一条静态多功能流水线由5段组成,加法用1、3、4、5段,乘法用1、2、5段,第3段时间为2Δt,其余各段时间均为Δt,而且流水线的输出可以直接返回输入端或暂存于相

应的流水寄存器中,现要在该流水线上计算

4

1()

i i

i

A B =

+

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

急速比和效率。 解:(1).任务划分如下: 时空图如下:

(2) Tk = 18Δt ,TP = 7/18Δt ,S = 29/18=1.611,E = 29/(18*5)=29/90≈32.2% 3.15

一动态多功能流水线由6个功能段组成,如下图(图4):

图4

其中:S1、S4、S5、S6组成乘法流水线,S1、S2、S3、S6组成加法流水线,每个功能段时间均为50ns 。假定该流水线的输出结果可以直接返回流水线输入端,而且设置有足够

F = ( A 1 + B 1 )·(

A 2

+ B 2 )·( A 3 + B 3 )·( A 4 + B 4 )

⑴ ⑵

(7)

S 5S 4S 3S 2S 1

的缓冲寄存器。若按照最快的方式用该流水线计算。

① 请画出其处理过程的时空图。 ② 计算其实际吞吐率,加速比和效率。 解:(1).任务划分如下: 时空图如下: (2).Tk = 22Δt ,TP = 7/11Δt=7/(11*50ns)=12.727e6,S = 28/11=2.555,E = 14/33=42.42%

3.18、在Cray 1机上,按链接方式执行下面4条向量指令(括号中给出相应功能部件时间),如果向量寄存器和功能部件之间的数据传输需要1拍,试求此链接流水线的流过时间为多少拍?如果向量长度为64,则需要多少拍能得到全部结果。

V0←存储器 (存储器取数:7拍)

V2←V0+V1 (向量加:3拍) V3←V2

解答:

四条指令每前后两条依次存在先写后读相关,故流水线经过时间为(1+7+1) + (1+3+1) + (1+4+1) + (1+2+1) = 24。

如果向量长度为64,则需24 + (64-1) = 87拍能得到全部结果。

F = X 1·Y 1·Z 1 + X 2·Y 2·Z 2 + X 3·Y 3·Z 3 + X 4·Y 4·Z 4 + X 5·Y 5·Z 5

⑵ ⑶

⑹ ⑺

⑻ ⑼ ⑽

⒁ S 6S 5S 4S 3S 2S 1

3.19、某机有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)*C 可用以下2条指令完成:

V0←A+B

V1←V0*C

流水线流过时间为(1+2+1) + (1+3+1) = 9拍

(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、试述现代计算机系统的多级层次结构。 计算机系统具有层次性,它由多级层次结构组成。从功能上计算机系统可分为五个层次级别:第一级是设计级。这是一个硬件级,它由机器硬件直接执行。 第二级是一般机器级,也称为机器语言级。它由微程序解释系统.这一级是硬件级。 第三级是操作系统级,它由操作系统程序实现。这些操作系统由机器指令和广义指令组成,这些广义指令是操作系统定义和解释的软件指令。这一级也称混合级。 第四级是汇编语言级。它给程序人员提供一种符号形式的语言,以减少程序编写的复杂性。这一级由汇编程序支持执行。 第五级是高级语言级。这是面向用户为编写应用程序而设置的。这一级由各种高级语言支持。 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、简述什么是计算机系统结构。 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奖。

吉大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. 硬件实际费用比软件设计费用低

吉林大学计算机系统结构题库第三章

第三章流水线技术 知识点汇总 先行控制、流水线、单功能流水线、多功能流水线、静态流水线、动态流水线、部件级流水线、处理机级流水线、处理机间流水线、线性流水线、非线性流水线、顺序流水线、乱序流水线、时空图、流水线性能评价(吞吐率、加速比、效率)、解决流水线瓶颈问题方法、相关(数据相关、名相关、控制相关)、换名技术、流水线冲突(结构冲突、数据冲突、控制冲突)、流水线互锁机制、定向技术、指令调度、预测分支失败、预测分支成功、延迟分支(从前调度、从失败处调度、从成功处调度)、流水寄存器、3种向量处理方式(横向、纵向、纵横)、链接技术。 简答题 1.流水技术有哪些特点?(答出4个即可)(知识点:流水线) 答:1.将处理过程分解为若干子过程,由专门的功能部件来实现,2各段的时间尽可能相等,3各部件间都有一个缓冲寄存器,4适用于大量重复的时序过程,5需要通过时间和排空时间。 2.什么是静态流水线?什么是动态流水线?(知识点:静态流水线、动态流水线) 答:同一时间段内,多功能流水线中的各段只能按同一种功能的连接方式工作;同一时间段内,多功能流水线中的各段可以按照不同的方式连接同时执行多种功能。 3.什么是单功能流水线?什么是多功能流水线?(知识点:单功能流水线、多功能流水线) 答:只能完成一种固定功能的流水线。流水线的各段可以进行不同的连接,以实现不同的功能。 4.什么是线性流水线?什么是非线性流水线?(知识点:线性流水线、非线性流水线) 答:流水线的各段串行连接,没有反馈回路。流水线中除了有串行的连接外,还有反馈回路。 5.列举3种相关。(知识点:相关) 答:数据相关,名相关,控制相关。 6.流水线中有哪三种冲突?各是什么原因造成的?(知识点:流水线冲突) 答:结构冲突,硬件资源满足不了指令重叠执行的要求;数据冲突,指令在流水线中重叠执行时需要用到前面指令的执行结果;控制冲突,流水线遇到分支指令和其他会改变PC值的指令。 7.选择至少2种解决流水线结构冲突的方法简述。(知识点:结构冲突) 答:流水线停顿一个时钟周期,推迟后面的指令操作。设置相互独立的指令存储器和数据存储器。 8.选择至少2种解决流水线数据冲突的方法简述。(知识点:数据冲突) 答:定向技术,将计算结果从其产生的地方直接送到其他指令需要的地方。通过编译时让编译器重新组织指令顺序来消除冲突。

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

第一章 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位。问能否以扩展操作码为其编码? 答:三种指令字格式如下:

计算机系统结构课后习题答案

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

计算机系统结构 第五章(习题)

1. 向量流水机的工作方式可分为哪两大类?它们的主要特点是什么? 2. 向量的加工方法有哪几种?各有什么特点?试从加工速度、需用中间变量 等方面加以比较。 3. 在CRAY1机上,V为向量寄存器,设向量长度均为32,s为标量寄存器, 所用浮点功能执行部件的执行时间分别为:加法需6拍,相乘需7拍,从存储器读数需6拍,求倒数近似值需14拍,打入寄存器及启动功能部件(包括寄存器)各需1拍。问下列各指令组中的哪些指令可以链接?哪些指令可以并行执行?试说明其原因并分别计算出各指令组全部完成所需的拍数。 (1)V0←存储器 V1←V2+V3 V4←V5*V6 (2)V2←V0*V1 V3←存储器 V4←V2+V3 (3)V0←存储器 V3←V1+V2 V4←V0*V3 V6←V4+V5 (4)V0←存储器 V1←1/V0 V3←V1+V2 V5←V3*V4 (5)V0←存储器 V1←V2+V3 V4←V5*V6 s0←s1+s2 (6)V3←存储器 V2←V0+V1 s0←s2+s3 V3←V1*V4 (7)V3←存储器 V2←V0+V1 V4←V2*V3 存储器←V4 (8)V0←存储器 V2←V0+V1 V3←V2*V1 V5←V3*V4 4. 在CRAYl机上,按链接方式执行下述4条向量指令(括号中给出相应功能 部件时间),如果向量寄存器和功能部件之间的数据传送需1拍,试求此链

接流水线的流过时间为多少拍?如果向量长度为64,则需多少拍能得到全部结果? V0←存储器(存储器取数:7拍) V2←V0+Vl (向量加:3拍) V3←V2<A3 (按(A3)左移:4拍) V5←V3∧V4 (向量逻辑乘:2拍) 5. 若某个向量机其向量方式的执行速率Rv=10MFLOPS,标量方式的执行速 率Rs=1MFLOPS,设α是程序中可向量化的百分比。要求: ⑴推导该向量机的平均执行速率Ra的公式。 ⑵画出在(0,1)范围内,Ra与α的关系图。 ⑶为使平均执行速率Ra=7.5MFlOPS,则α应取何值? ⑷假定Rs=1MFLOPS,α=0.7,则为使Ra=2MFLOPS,Rv应取何值?

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

第三章练习题(1) 一、单项选择题 在下面各题的4个备选答案中,只有一个答案是正确的,请把正确答案的标号(A~D)填入题后面的括号中。 1.程序员编写程序时使用的访存地址是()。 A.物理地址 B.有效地址 C.逻辑地址 D.主存地址 2.虚拟存储器通常采用的地址映像是(D )。 A.全相联、组相联和直接映像 B.直接映像 C.组相联映像 D.全相联映像 3.不属于堆栈型替换算法是()。 A.近期最少使用替换算法 B.先进先出替换算法 C.最优替换算法 D.近期最久未使用替换算法 4.确保提高虚拟存储器的主存命中率的途径是()。 A.采用LFU替换算法并增大页面数 B.采用FIFO替换算法并增大页面 C.采用FIFO替换算法并增大页面数 D.采用LRU替换算法并增大页面 5.虚拟存储器主要是为了解决()问题。 A.便于程序的“访存操作” B.扩大存储系统的容量和提高存储系统的速度 C.提高存储系统的速度 D.扩大存储系统的容量 6.与虚拟存储器的等效访问速度无关的是()。 A.辅存的容量 B.主存的容量 C.页面替换算法 D.访存页地址流 二、填空题 1.使二级存储系统的等效访问速度接近于第一级存储器访问速度的依据是程序的(局部性原理),它包括(时间局部性)和(空间局部性)两个方面。 2.程序的空间局部性是指程序通常是(顺序)存储和执行的,程序使用的数据通常是(簇聚或集中)存储的。 3.假设T1和T2分别是CPU访问到M1和M2中信息所需要的时间,H为命中M1的概率,则由M1和M2构成的二级存储系统的等效访问时间应当表示为(H*T1+(1-H)*T2)。4.存储器速度性能可以采用存储器的(频宽)衡量,它是存储器单位时间能够访问的信息量。

j计算机系统结构作业汇总

某台处理机的各条指令使用频度如下所示: 1)请分别设计这9条指令操作码的哈夫曼编码. 2)求出等长码长和哈夫曼的平均码长 作业三: 设通道在数据传送期内,选择设备需4.9 s,传送一个字节数据需0.1 s。 (1)某低速设备每隔250 s发出一个字节数据传送请求,问至多可接几台这种低速设备? (2)对于如下5种高速设备A~E,要求字节传送请求的时间间隔如表所示。若一次通信传送 作业四: 1.某机器有5级中断,中断响应次序为1→2→3→4→5,现要求中断处理次序为2→3→1→5→4。 (1)设计各级中断处理程序的中断屏蔽位的状态,令“0”为屏蔽,“1”为开放。(见下表) (2)若在运行用户程序时,同时发生1、3级中断请求,而在2级中断服务未完成时,又发生2、3、4、5级中断,请画出处理机执行程序的全过程示意图(标出交换PSW的时间)。 作业五: 假定处理器时钟周期为2ns,某程序由1000条指令组成,每条指令执行一次,其中的4条指令在取指令时没有在Cache中找到,其余指令都能在Cache中找到,在执行指令过程中,该程序需要3000次主存数据访问,其中6次没有在Cache中找到。试问: 1)执行该程序得到的Cache命中率是多少? 2)若Cache中存取一个信息的时间为1个时钟周期,缺失损失为10个时钟周期,则CPU 在Cache-主存层次的平均访问时间和效率为多少? 作业六: 有如下页面地址流:2,1,3,1,4,2,5,3,2,1,2,3,4,1,5利用堆栈技术一次模拟LRU在n=3,4,5条件下页面变化时空图,同时分别指出命中的页面以及计算它们各自的命中率。

有一个Cache —主存存储层次,主存共8块,Cache 共4块,采用组相联映像,每组2块,LRU 替换算法。 1)对地址流124137012546472使用情况; 2)指出块失效同时块争用的时刻 3)求出命中率。 作业八: 有一指令流水线如下所示 (1)求连续输入10条指令,该流水线的实际吞吐率和效率; (2)该流水线的“瓶颈”在哪一段?请采取两种不同的措施消除此“瓶颈”。对于你所给出的两种新的流水线,连续输入10条指令时,其实际吞吐率和效率各是多少? 作业九: (1)写出流水线的禁止向量和初始冲突向量 (2)画出调度流水线的状态图 (3)求最佳的调度和最大的吞吐率 出 50ns 50ns 100ns 200ns

计算机系统结构第五章

第五章 标量流水技术 计算机处理器的主要功能是控制指令的解释执行,为了能引入并行处理,目前普遍使用一种经济有效的方法,即流水控制方式。 本章讨论的是有关流水控制的概念、原理、涉及的问题与解决的办法,以及流水控制技术的应用和进一步的发展。 5.1控制流及其改变 按算法要求控制指令序列的先后顺序执行称控制流,通常指令的执行顺序是相继的,但控制流经常会发生间断,破坏顺序性,主要有以下几种情况: 1.转移指令 不转移:PC = K0 + K1T 转移:控制流发生间断,以目标地址为起始点, 再顺序流动。 K (a)(b) 2.过程调用和返回 可嵌套和递归,返回时从原来断点继续执行。 3.协同程序 与调用不同,被调用过程不总是从头开始,如下 图。 协同程序A协同程序B 4.中断和自陷 为使流水控制方式能高效地解释指令,程序执行的控 制流必须是连续的,因此对控制流的改变要采取有效的措施,以保证流水控制的实现。 5.2标量流水工作原理 5.2.1重叠操作方式和先行控制 指令的解释执行有以下几种工作方式: 1. 顺序方式 这种方式指令串行执行,设一条指令的解释分为:取

指、分析、执行三个阶段,指令解释执行如下图所示: 设各阶段执行时间为t ,解释n 条指令的时间是: t n T ??=3 若各阶段执行时间不同,分别为t 取、t 分、t 执,则解释 n 条指令时间为: ∑==n i T 1(t 取i +t 分i +t 执i ) 顺序方式控制简单,但指令串行解释速度慢,设备利用率 低。 2. 重叠方式 这是使相邻指令的解释在一些阶段上的操作在时间上 重叠执行,如: 或 T = ( 2n + 1) t 重叠方式需增设指令缓冲寄存器,在执行k 条指令时存放 k+1条指令。同时还要解决取操作数与取指令都要访问存 储器的冲突。 解决冲突的方法: ? 使用分开的指令存储器和数据存储器,称为哈佛结构, 如Pentium 处理器设置有指令Cache 和数据Cache 。 ? 采用多体交叉存储器 ? 设置指令缓冲寄存器组 这可预取指令,取指阶段时间短,可以合并到分析阶 段,一条指令解释是分析和执行两个阶段。重叠方式如下: 这称为一次重叠。

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