计算机系统结构复习题55.docx
《计算机系统结构复习题55.docx》由会员分享,可在线阅读,更多相关《计算机系统结构复习题55.docx(27页珍藏版)》请在冰豆网上搜索。
计算机系统结构复习题55
计算机系统结构(张晨曦)题目汇总
华南师范大学计算机学院荣誉出品
1、多处理机结构的特点是什么多处理机实现并行的主要类型是哪种多机系统的耦合度有哪些分类
书上找不到答案:
多处理机系统的特点:
1.结构灵活,程序并行性,3.并行任务派生
4.进程同步5.资源分配和进程调度
P26:
多处理机的隅合度分为紧密耦合和松散耦合两大类:
紧密耦合系统又称直接耦合系统。
在这种系统中,计算机之间的物理连接的带宽比较高,一般是通过总线或高速开关互连,可以共享主存。
由于具有较高的信息传输率,因而可以快速地并行处理多个作业或任务。
松散耦合系统又称间接耦合系统,一般是通过通道或通信线路实现计算机之间的互连,可以共享外存设备(磁盘、磁带等)。
2、同构型多处理机和异构型多处理机的特点是什么它们所采用的提交并行性的技术途径有哪些
P:
26异构型多处理机系统由多个不同类型、至少负担不同功能的处理机组成,它们按照作业要求的顺序,利用时间重叠原理,依次对它们的多个任务进行加工,各自完成规定的功能动作。
同构型处理机系统由多个类型或至少负担同等功能的处理机组成,它们同时处理同一作业中能并行执行的多个任务。
"
3、跳转与分支的定义及作用
P:
36当指令是无条件改变控制流时,称之为跳转指令;而当指令是有条件改变控制流时,则称之为分支指令。
作用:
用来改变控制流。
4、指令系统编码格式有哪些(P41图)
(a)变长编码格式
操作码
地址描述符1
地址码1
……
地址描述符n
地址码n
…
(b)固定长度编码格式
操作码
地址码1
地址码2
地址码3
(c)混合型编码格式
操作码
地址描述符
地址码
:
操作码
地址描述符1
地址描述符2
地址码
操作码
地址描述符
地址码1
地址码2
:
5、什么是流水线的深度该指标是否越大越好为什么
流水线中的每个子过程及其功能部件称为流水线的级或段,流水线的段数称为流水线的深度。
(题解P44)
不是。
流水线深度的增加可以让处理器时钟频率进一步提高,但带来的反面影响就是处理器的单周期执行效率降低、发热量上升,同时容易产生分支预测等问题
6、流水线的瓶颈的定义一般来说,产生瓶颈的原因是什么
流水线中各段的时间应尽可能相等,否则讲引起流水线堵塞和断流,因为时间最长的段将成为流水线的瓶颈。
(P54)
7、流水线的最大吞吐率是如何定义的影响线性流水线最大吞吐率有哪些
答:
当任务数趋向无限大时,吞吐率的极限即是最大吞吐率(书上没具体定义,这是个人的理解)。
流水线的最大吞吐率由时间最长的那个段决定。
(P59)
?
8、延迟分支方法有哪几种策略各个策略的主要思想是什么
答:
向前调度、从目标处调度、从失败处调度。
向前调度:
它把位于分支指令之前的一条独立的指令移到延迟槽。
从目标处调度:
把目标处的指令拷贝到延迟槽。
同时,还要修改分支指令的目标地址。
从目标处调度实际上是猜测了分支是成功的。
从失败处调度:
当猜测错误时,要保证调度到延迟槽中的指令的执行不会影响程序的正确性。
(P82)
9.什么是向量指令的一个编队编队有什么优点
答:
我们把能在同一个时钟周期内一起开始执行的几条向量指令称为一个编队。
(P103)同一个编队中的向量指令之间一定不存在流水功能部件的冲突、Vi冲突或数据的相关性。
10、在向量流水处理机上,向量指令序列执行的特点是什么编队执行时间如何确定
我们把能在同一时钟周期内一起开始执行的几条向量指令称为一个编队。
同一编队中的向量指令之间不存在流水功能部件的冲突、Vi冲突或数据的相关性。
编队后,这个微量指令序列的总的执行时间为各编队的执行时间的和,即:
(书本P103)
11、“主存—辅存”层次的目的是什么“cache—主存”层次的目的是什么
.
“主存—辅存”层次的目的是为了弥补主存容量的不足。
(书本P192)
“cache—主存”层次的目的是为了弥补主存速度的不足
12、在“Cache—主存”层次中,CPU的访存地址分为哪几部分
CPU是按块进行管理的。
Cache和主存均被分割成大小相同的块。
信息是以块为单位调入Cache。
相应地,CPU的访存地址被分割成两部分:
块地址和块内位移。
13、cache存储器采用组相联映像的基本原理是什么
答:
cache存储器采用组相联映像是指组间直接映像,组内各块之间是全相联映像。
14、增加块大小的方法在降低不命中率以及提高相联度等方面的特点是什么
~
答:
增加块大小的方法在降低不命中率的同时会增加不命中开销,而提高相联度会增加命中时间。
15、消息传递机器的原理是什么
答:
在消息传递机制中,消息一般是由若干个包组成,包的长度是固定的,但一条消息中所包含的包的个数可变的。
包又可以进一步分成一些更小的固定长度的单位,称为片。
消息寻径方式可以分为线路交换和包交换两大类。
包交换又分为存储转发、虚拟直通和虫蚀3种方式。
16、从计算机系统结构来看,机器语言程序员看到机器属性是什么
属性是编程要用到的硬件组织。
(习题册P10、习题,选择题)
17、流水处理机,多处理机,阵列处理机,机群系统能够实现并行处理吗它们的工作原理是什么
/
它们都能够实现并行处理。
流水处理机原理:
利用流水线技术(将一个重复的时序过程,分解成为若干子过程,而每一个子过程都可有效地在其专用功能段上与其他子过程同时执行)处理计算机任务的处理机。
(自己概括的)
多处理机原理:
具有多个处理机的计算机。
(XX百科)
阵列处理机原理:
其核心是由多个处理单元构成的阵列,用单一的控制部件来控制多个处理单元对各自的数据进行相同的运算和操作(习题册P250)
机群系统原理:
有多台同构或异构的的独立计算机通过高性能网络连接在一起而构成的高性能并行计算机系统。
构成机群的计算机都有自己独立的存储器、I\O设备和操作系统,他们在机群操作系统的控制下协同完成特定的并行计算任务。
(习题册P241)
18、信息按整数边界存储的主要优点有哪些
为了避免出现一个信息字被截断存储在两个存储字中的情况,可以要求信息宽度不超过主存宽度的信息必须存储在一个存储字内,不能跨边界。
(习题册P25)
19、RISC执行程序的速度比CISC要快的原因采用寄存器窗口重叠技术对于RISC有何好处
>
RISC执行程序的速度比CISC要快是因为RISC指令平均执行周期数较少。
好处:
大大减少了程序调用引起的访存次数P32
20、线性流水线、动态流水线、静态流水线的特点是什么
线性流水线:
各段串行连接,没有反馈回路,数据通过流水线各段时,每段最多只流过一次
动态流水线:
指同一时间内,多功能流水线中的各段可以按照不同的方式连接,同时执行多种功能的流水线。
它允许某些段正在实现某种运算时,另一些段在实现另一种运算。
静态流水线:
同一时间内,多功能流水线中的各段只能按同一种功能的的连接方式工作。
当流水线要切换另一种功能时,必须等到前面的任务都流出流水线之后,才能改变连接(P61,根据定义回答的)
21、程序的局部性原理的定义是什么它又分哪些局部性这些局部性各有什么特点(P10,名词解释或填空题)
程序的局部性原理是指程序执行时所访问的存储器地址不是随机分布的,而是相对地簇聚。
局部性原理包括时间局部性和空间局部性。
时间局部性是指:
程序即将用到的信息很可能就是目前正在使用的信息。
空间局部性是指:
程序即将用到的信息很可能与目前正在使用的信息在空间上相邻或者邻近。
^
22、指令系统的完整性与正交性是如何进行定义的习题册P34答:
完整性:
在一个有限可用的存储空间内,对于任何可解的问题,编制计算机程序时,指令系统提供的指令足够使用.
正交性:
指在指令中各个不同含义的字段,如操作类型,数据类型,寻址方式字段等,在编码时应互不相关,相互独立.
23、排空时间指的是那段时间习题册P60
答:
流水线中最后一个任务从进入流水线到流出结果所需懂得时间
24、流水线冲突是如何定义的习题册P61
答:
指对于具体的流水线来说,由于相关的存在,使得指令流的下一条指令不能在指定的时钟周期开始执行
:
25、分段开采技术,循环开采技术,链接技术的定义分别是什么
答:
分段开采技术(循环开采技术)——当向量长度大于向量寄存器的长度时,必须把长向量分成长度固定的段,然后循环分段处理,每一次循环只处理一个向量段。
链接技术——当前一个向量功能部件长生第一个结果并送到结果向量寄存器的入口时,将该结果立即送往下一个功能部件的入口,开始后续的向量处理操作。
26、采用动态分支预测技术的目的是什么在所采用的方法中,需要解决哪些关键问题
答:
目的有两个:
分支预测是否成功和尽快找到分支目标地址(或指令),从而避免控制相关造成流水线停顿。
需要解决的两个关键问题:
如何记录分支的历史信息;
如何根据这些信息来预测分支的去向,甚至提前取出分支目标地址(或指令)。
》
27、基于硬件的前瞻执行是把哪三种思想结合在一起的
答:
(1)动态分支预测。
用来选择后续执行的指令。
(2)在控制相关的结果尚未出来之前,前瞻地执行后续指令。
(3)用动态调度的基本快=块的各种组合进行跨基本块的调度。
28、指令多流出处理器的流出能力受哪些因素的影响P148
程序所固有的指令级并行性。
硬件实现上困难。
超标量和超长指令字处理器固有的技术限制。
其中,第一个限制是最简单的也是最根本的因素。
第二个限制,是多留出的处理器需要大量的硬件资源。
(其他剩下的都是浮云,请明察)
!
29、什么是共享数据的迁移和复制这么做的原因是什么
共享数据的迁移是把远程的共享数据项拷贝放在本处理器局部的Cache中使用,从而降低了对远程共享数据的访问延迟。
共享数据的复制是把多个处理器需要同时读取的共享数据项的拷贝放在各自局部Cache中使用,复制不仅降低了访存的延迟,也减少了访问共享数据所产生的冲突。
共享数据的迁移和复制对于提高访问共享数据的性能来说是非常重要的。
30、增加块大小导致Cache不命中率先下降后上升的原因是什么P208-209
导致不命中率先下降后上升的原因,在于增加块大小会产生双重作用。
(1)增强了空间局部性,减少了强制性不命中。
(2)减少了Cache中块的数目,所以有可能会增加冲突不命中。
在块大小比较小的情况下,上述的第一种作用超过第二种作用,从而使不命中率下降。
但等到块大小较大时,第二种作用超过了第一种作用,就反而使不命中率上升了。
,
31、降低cache不命中率有哪几种方法简述其基本思想(题解:
P158题题型:
问答题)
答:
常用的降低cache不命中率的方法有下面几种:
(1)、增加cache块大小,增加块大小利用了程序的空间局部性。
(2)、增加cache的容量。
(3)、提高相联度,降低冲突不命中。
(4)、伪相联cache,降低冲突不命中。
当对伪相联cache进行访问时,首先是按与直接映像相同的方式进行访问。
如果命中,则从相应的块中取出所访问的数据,送给CPU,访问结束。
如果不命中,就将索引字段的最高位取反,然后按照新索引去寻找“伪相联组”中的对应块。
如果这一块的标识匹配,则称发生了“伪命中”。
否则,就访问下一级存储器。
(5)、硬件预取技术。
指令和数据都可以在处理器提出访问请求前进行预取。
(6)、由编译器控制的预取。
硬件预取的替代方法,在编译时加入预取的指令,在数据被用到之前发出预取请求。
(7)、编译器优化。
通过对软件的优化来降低不命中率。
>
(8)、“牺牲”cache。
在cache和其下一级存储器的数据通路之间增设一个全相联的小cache,存放因冲突而被替换出去的那些块。
每当发生不命中时,在访问下一级存储器之前,先检查“牺牲”cache中是否含有所需的块。
如果有,就将该块与cache中某个块做交换,把所需的块从“牺牲”cache调入cache。
32、简述减小Cache不命中开销的几种方法(题解:
P158题题型:
问答题)
答
(1)、让读不命中优先于写。
(2)、写缓冲合并。
(3)、请求字处理技术。
(4)、非阻塞cache或非锁定cache技术。
(5)、采用二级cache。
33.通过编译器对程序优化来改进Cache性能的方法有哪种简述其基本思想。
(题解:
P158题题型:
问答题)
答
(1)、数组合并。
通过提高空间局部性来减少不命中次数。
有些程序同时用相同的索引来访问若干个数组的同一维,这些访问可能会相互干扰,导致冲突不命中。
可以将这些相互独立的数组合并成一个复合数组,使得一个cache块中能包含全部所需元素。
(2)、内外循环交换。
循环嵌套时,程序没有按数据在存储器中的顺序访问。
只要简单地交换内外循环,就能使程序按数据在存储器中的存储顺序进行访问。
)
(3)、循环融合。
有些程序含有几部分独立的程序段,他们用相同的循环访问同样的数组,对相同的数据作不同的运算。
通过将它们融合成一个单一循环,能使读入cache的数据被替换出去之前得到反复的使用。
(4)、分块。
通过改进时间局部性来减少不命中。
分块不是对数组的整行或整列进行访问,而是对子矩阵或块进行操作。
34、在设计Cache时并非都采用虚拟Cache,为什么虚拟Cache有什么作用(“原因”:
题解:
P158题;“作用”:
课本:
P220第一段题型:
问答题)
答原因:
(1)、每当进行进程切换时,由于新进程的虚拟地址(有可能与原进程的相同)所指向的物理空间与原进程的不同,故需要清空cache。
(2)、操作系统和用户程序对于同一个物理地址可能采用两种以上不同形式的虚拟地址来访问。
他们可能会导致同一个数据在虚拟cache中存在两个副本。
作用:
虚拟cache是指可以直接用虚拟地址进行访问的cache,其标识存储器中存放的是虚拟地址,地址检测用的也是虚拟地址。
在命中时不需要地址转换,省去地址转换的时间。
另外,即使不命中,地址转换和访问cache是并行进行的,其速度比物理cache快很多。
35、主存地址,逻辑地址,物理地址以及有效地址有什么关系程序员编写程序时,使用的访存地址是什么(题解:
P156题选择题)
程序员编写程序时,使用的访存地址是逻辑地址。
—
36、单体多字存储器,多体存储器各有什么作用单级存储器的主要矛盾是什么(题解:
P147、P156题)
在相同的器件条件下,如果要提高主存的带宽,可以采用这两种并行存储器结构:
单体多字存储器和多体交叉存储器。
单体多字并行存储器实现简单,但访存效率不高,而多体交叉存储器由多个单字存储体构成,每个体都有自己的地址寄存器以及地址译码和读写驱动等电路。
单级存储器的主要矛盾有
(1)速度越快,每位价格就越高;
(2)容量越大,每位价格就越低;
(3)容量越大,速度越慢。
37、超标量的定义。
(题解:
P100题)
一种多指令流出技术。
它在每个时钟周期流出多余的指令,但指令的条数不固定,依代码的具体情况而定,但有个上限。
38、提高向量处理机的性能有哪些方法(题解:
P74)
为了提高向量处理机的性能,可采用多种方法。
.
设置多个功能部件,使它们并行工作;
采用连接技术,加快一串向量指令的执行;
采用循环开采技术,加快循环的处理;
采用多处理机系统,进一步提高性能。
39、非线性流水线的突出特点是什么(课本P57题型:
填空和选择)
答:
突出特点是:
有反馈回路。
40、什么是MIPS在MIPS的指令流水线中,可能发生的冲突有哪些(题解P56题题型:
选择题)
答:
(1)一种基于RISC结构的微型处理器
出处:
课本P47中间题型:
填空或简答题。
)
(2)先流入的指令的写操作与后流入的指令的读操作之间的写后读冲突。
41、“由中间开始设计”的“中间”目前多指那些(题解:
P12题题型:
问答题)
答:
指多级层次结构中的软硬件交界面,即传统机器级与操作系统机器级之间。
42、计算机系统结构定义是什么(课本P3)(题解P14名词解析题)
答:
计算机系统结构是指传统机器语言程序员所看到的计算机属性,即概念性结构与功能特性。
43、操作码优化的主要目的是什么(题解P31选择题)
答:
缩短指令字长;减少程序总位数;增加指令字表示的信息。
44、编码的分类有哪些平均码长最短的编码是什么(题解P32选择题)(课本P38~P40)
答:
共三种:
哈夫曼编码、等长扩展码、等长操作码。
平均码长最短的编码是哈夫曼编码。
45.面向目标程序优化的思想是什么
*
减少程序的执行时间,并减少程序所占用的空间,即对大量的目标程序及其执行情况进行统计分析,找出哪些使用频率高、执行时间长的指令或指令串;对于使用频率高的指令,使用硬件加快其执行,对于使用频率高的指令串,用一条新的指令来代替。
46.系列机是什么它对计算机发展的意义系列机软件兼容的基本要求是什么
系列机指基本指令系统相同、基本体系结构相同的一系列计算机(XX)/系列机是指由同一厂家生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的计算机(课本)。
系列机能较好地解决软件开发要求系统结构相对稳定与器件、硬件技术迅速发展的矛盾。
系列机的软件兼容有4种:
向上兼容、向下兼容、向前兼容、向后兼容。
向上(下)兼容是指按某档计算机编制的程序,布甲修改就能运行于比它高(低)档的计算机。
向后(前)兼容是指按某个使其投入市场的某种型号计算机编制的程序,不加修改就能运行于在它之后(前)投入市场的计算机。
47.简述在指令操作码优化中哈弗曼压缩的基本思想
当各种事件发生的概率不均等时,可对发生概率高的事件用短的位数(时间)来表示(处理),而对于发生概率较低的事件,则可用较长的位数(时间)来表示(处理),从而使总的平均位数(时间)缩短。
48.简述RICS结构的设计原则
1.指令条数少,指令功能简单。
2.采用简单而又统一的指令格式,并减少寻址方式。
{
3.指令的执行在单周期内完成(采用流水线技术后)。
4.采用load-store结构。
5.大多数指令都采用硬连逻辑来实现。
6.强调优化编译器的作用,为高级语言程序生成优化的代码。
7.充分利用流水技术来提高性能。
49.什么是流水寄存器作用是
流水线每一个段的后面都要有一个缓冲寄存器(锁存器),成为流水寄存器。
P54
作用:
在相邻的两段间传送数据,以提供后面流水段要用到的信息。
P54
]
50.解决流水线结构冲突的方法有
方法:
一:
在将要发生结构冲突的前一条指令访问存储器时,将流水线停顿一个时钟周期,推迟后面指令的执行操作。
二:
分别设置指令存储器和数据存储器或者只设置一个存储器但采用两个分离的Cache:
指令Cache,数据Cache。
P75
51.有哪些方法可以处理由前瞻执行指令引起的异常
四种方法:
一:
立即处理每一个异常。
二:
借助专门的检测指令判断是否需要进行异常处理。
三:
为每个通用增加一个标志位“poison”位。
可继续异常将被立即处理,引发终止性异常时,目的寄存器R的poison位置1,否则改为清0。
当之后的另一条指令访问R时,若poison位为1将触发一个终止性异常。
~
四:
将指令的执行结果保存到再定序缓冲器内,并将指令流出的顺序依次确认,但是前瞻指令的确认时机却被推迟,直至能够确定该指令都的前瞻执行是正确(或错误)的。
P170-P171
52.采用链接技术时,向量指令能链接执行必须有哪些条件
1.不出现功能部件冲突和其他Vi冲突
2.只有在前一条指令的第一个结果元素送入结果向量寄存器的那一个时钟周期才可以进行链接。
3.当一条向量指令的两个源操作数分别来自于前面紧邻的两条指令的结果时,要求这两条指令产生运算结果的时间必须相等,即要求有关功能部件的通过时间相等。
4.要进行链接执行的向量指令的向量长度必须相等,否则无法进行链接。
P99-P101
53、记分牌算法中,记分牌记录的信息由哪3部分构成各部分功能是什么P117
。
3部分:
(1)指令状态表:
记录正在执行的各条指令已经进入到了哪一段
(2)功能部件状态表:
记录各个功能部件的状态。
每个功能部件有一项,每一项由9个字段组成:
BusyOpFiFjFkQjQkRjRk
(3)结果寄存器状态表Result:
每个寄存器在该表中有一项,用于指出哪个功能不见(编号)将结果写入该寄存器。
如果当前正在运行的指令都不以它为目的寄存器,则其相应项伟“no”。
Result各项的初值为“no”(全0)
54、半性能向量长度的定义P105
半性能向量长度n1/2是指向量处理机的性能达到其最大性能R∞的一半时所需的向量长度。
它是评价响亮流水线的建立时间对性能影响的重要参数。
(若向量长度n=n1/2,则表示整个响亮流水处理时间中只有一半是在做有效操作,而另一半则是浪费掉了。
)
55、写更新协议的主要思想P304
当一个处理器对某数据项进行写入时,它将该新数据广播给所有其它Cache。
这些Cache用该新数据对其中的副本(如果有的话)进行更新。
当然,如果知道其他Cache中都没有相应的副本,就不必进行广播和更新。
这样处理能够减少实现该协议所需的带宽。
P304有例子
%
56、写作废协议的主要思想。
(课本P304)
在处理器对某个数据项进行写入之前,它拥有对该数据项的唯一访问权,具体做法是在处理器P进行写入操作之前,把所有其他cache中的副本全部作废。
这称为写作废协议
57、超流水的主要内容是什么(课本P149)
超流水线处理机:
在一个时钟周期内能够分时流出多条指令的处理机。
在流水处理机中,把一条指令的执行过程的5个流水段:
取指令、译码、执行、访存、写结果,进一步细分,这样使得在一个时钟周期内各流水段都在处理各自的多条指令。
58、补偿代码的定义(课本P159)
有一些复杂的调度机制可以确保在调度I的情况下保持执行结果不变,但需要向基本快elsepart中增加若干指令以保证结果正确,这些新增的指令被称为补偿代码。
·
59、尾复制的定义及作用。
答:
定义:
超块调度时往往也需要进行代码复制,以确保结果的正确。
由于被复制的代码段总是作为退出超块后必须执行的补偿代码,故这种技术被形象地称为尾复制。
(练习P126)
作用:
在超块调度中,除最后一个出口外,其余出口退出超块后利用尾复制技术完成余下的迭代工作。
尾复制实质上通过复制代码,使原超块扩展为更大的超级块,从而更好地进行指令级并行开发。
反映并行程序性能的一个重要的度量。
在并行计算中,它是指每次数据通信要进行的计算与通信开销的比值。
(练习P230)
60、前瞻执行的主要思想是什么
答:
前瞻执行并不仅仅是在数据相关或控制相关尚未消除的情况下,简单地将指令调度到与之相关的指令之前猜测执行,它还是通过一系列复杂的硬件机制完成异常处理、正确性保证等工作。
(P169)
61、命中时间的定义。
[
答:
访问Cache命中所需要的时间。
(P190)
62、不命中开销的定义
答:
CPU向二级存储器发出访问请求到把这个数据调入一级存储器所需要的时间。
(P190)
63、相联度的定义
答:
在组相联中,每组所包含的块数。
n=M/G(P195)(M未Cache的块数,见P19