系统结构周向东复习资料1.docx
《系统结构周向东复习资料1.docx》由会员分享,可在线阅读,更多相关《系统结构周向东复习资料1.docx(18页珍藏版)》请在冰豆网上搜索。
系统结构周向东复习资料1
系统结构
考试题型:
选择题:
1分/题*15题
填空题:
1分/空*20空
简答题:
4分/题*5题
应用题:
45分
第1章计算机系统结构概念
1、给个实例判断是系统结构、组成或实现?
(P2)
系统结构:
对计算机系统中各级界面的划分、定义及其上下的功能分配。
计算机组成:
计算机系统结构的逻辑实现,包括机器级内部的数据流和控制流的组成以及逻辑设计。
在所希望达到的性能和价格下,怎样更好、更合理地把各种设备和部件组织成计算机,来实现所确定的系统结构。
计算机实现:
计算机组成的物理实现。
着眼于器件技术和微组装技术。
实例:
(1)指令系统的确定:
系统结构。
指令的实现,如取指令、指令操作码译码等:
计算机组成。
实现这些指令功能的具体电路、器件的设计及装配技术:
计算机实现。
(2)确定指令系统中是否要设乘法指令:
系统结构。
乘法指令用专门的乘法器实现还是用加法-移位来实现:
计算机组成。
乘法器、加法-移位器的物理实现:
计算机实现。
(3)主存容量与编址方式的确定:
系统结构。
为了达到性能价格要求,速度应该多少,采用什么逻辑结构:
计算机组成。
主存器件的选定,逻辑设计,微组装技术:
计算机实现。
2、系统结构的概念和三者的关系。
(P6)
答:
系统结构:
对计算机系统中各级界面的划分、定义及其上下的功能分配。
计算机系统结构、组成、实现三者互不相同,但又相互影响。
(1)相同的系统结构的计算机,可以因速度不同而采用不同的组成。
(2)反过来,组成也会影响系统结构,微程序控制就是一个典型的例子。
(3)正因为如此,系统结构的设计必须结合应用考虑,为软件和算法的实现提供更多更好的支持,同时要考虑可能采用和准备采用的组成技术。
(4)组成设计向上决定于结构,向下受限于实现技术。
(5)结构、组成和实现所包含的具体内容随不同时期及不同计算机系统会有差异。
3、实现软件移植的技术。
(P14)
软件的可移植性:
软件不修改或只经少量修改就可由一台机器移到另一台机器上运行,同一软件可应用于不同的环境。
实现软件移植的技术:
(1)统一高级语言。
(2)采用系列机。
(3)模拟和仿真。
4、系列机含义。
(P14)
系列机:
在软、硬件界面上有相同的系统结构的机器。
5、系列机兼容性。
(P14)
向上(下)兼容:
按某档机器编制的软件,不加修改就能运行于比他高(低)档的机器上。
系列机各档机器之间软件一般应做到向上兼容。
但向下兼容就不一定。
6、模拟和仿真的含义、各有什么特点、相互间的区别。
(P17)
模拟:
在A机器上虚拟实现B机器的机器语言(B的每条机器指令用A机器的一段机器语言解释),如同A机器上也有B机器的指令系统一样。
这种用机器语言程序解释实现软件移植的方法称为模拟。
(进行模拟的A机器称为宿主机,被模拟的B机器称为虚拟机。
)
特点:
模拟程序的编制复杂和费时,运行速度低,实时性变差等。
因此,模拟方法只适用于移植运行时间短,适用次数少,而且在时间关系上没有受约束的软件。
仿真:
直接用微程序去解释另一种机器指令系统的方法称为仿真。
(进行仿真的器件称为宿主机,被仿真的机器称为目标机。
)
特点:
仿真可以提高被移植软件的运行速度,但当两种机器的结构差别较大时就很难仿真。
相互间的区别:
仿真和模拟的主要区别在于解释用的语言。
仿真是用微程序解释,其解释程序存在于控制存储器中,而模拟是用机器语言解释,其解释程序存在于主存中。
不同系列机间的软件移植一般是仿真和模拟并行。
7、并行性的概念,有哪两个含义,两个含义的区别。
(P22)
概念:
解题计算中具有可以同时进行运算或操作的特性。
两个含义:
同时性和并发性。
两个含义区别:
同时性指两个或多个事件在同一时刻发生。
并发性指两个或多个事件在同一时间间隔内发生。
8、并行性的并发途径和含义。
(P24)
(1)时间重叠:
引入时间因素,让多个处理过程在时间上相互错开,轮流重叠地使用同一套硬件设备的给个部分,加快硬件周转来赢得速度。
(2)资源重复:
引入空间因素,通过重复设置硬件资源来提高可靠性或性能。
(3)资源共享:
用软件的方法让多个用户按一定时间顺序轮流使用同一套资源来提高资源利用率,相应地也就提高了系统的性能。
9、耦合性。
(P26)
一般用耦合度反映多机系统中各机器之间物理连接的紧密度和交叉作用能力的强弱(最低耦合、松散耦合、紧密耦合)。
10、从不同角度对计算机系统进行分类(三个)。
(P26)
弗林分类法:
按指令流和数据流的多倍性。
(指令流:
机器执行的指令序列。
数据流:
由指令流调用的数据序列,包括输入数据和中间结果。
多倍性:
在系统性能瓶颈部件上处于同一执行阶段的指令或数据的最大可能个数。
)
分成:
单指令流单数据流(SISD)、单指令流多数据流(SIMD)、多指令流单数据流(MISD)、多指令流多数据流(MIMD)。
库克分类法:
按指令流和执行流及其多倍性。
分成:
单指令流单执行流(SISE)、单指令流多执行流(SIME)、多指令流单执行流(MISE)、多指令流多执行流(MIME)。
美籍华人冯泽云:
按数据处理的并行度。
分成:
字串位串(WSBS)、字串位并(WSBP)、字并位串(WPBS)、字并位并(WPBP)。
第2章数据表示、寻址方式与指令系统
1、CISC存在哪些问题?
(P62)
(1)指令系统庞大,一般在200条指令以上。
(2)许多指令的操作繁杂,执行速度低,甚至不如用几条简单基本的指令组合实现。
(3)由于指令系统庞大,使高级语言编译程序选择目标指令范围太大,因此难以优化生成高效机器语言程序,编译程序也太长,太复杂。
(4)由于指令系统庞大,各种指令的使用频度都不会太高,且差别很大,其中相当一部分的利用率很低。
2、RISC设计的基本原则。
(P62)
(1)只选择使用频度很高的指令,增加少量能有效支持操作系统、高级语言实现及其他功能的指令,大大减少指令条数,使之一般不超过100条。
(2)减少指令系统所用寻址方式种类,一般不超过两种。
(3)让所有指令都在一个机器周期内完成。
(4)扩大通用寄存器,一般不少于32个,尽量减少访存,所有指令只有存(STORE)、取(LOAD)指令访存,其他指令一律只对寄存器操作。
(5)为提高指令执行速度,大多数指令都用硬件控制实现,少数指令才用微程序实现。
(6)通过精简指令和优化设计编译程序,简单有效地支持高级语言的实现。
3、设计RISC的基本技术有哪些?
(P64)
(1)按设计RISC的一般原则来设计。
(2)逻辑实现采用硬联和微程序相结合。
(3)在CPU中设置大量工作寄存器并采用重叠存储器窗口。
(4)指令用流水和延迟转移。
(5)采用高速缓冲存储器Cache,设置指令Cache和数据Cache分别存放指令和数据。
(6)优化设计编译系统。
4、重叠窗口的作用有哪些?
(P64)
答:
可以实现相邻过程直接交换参数,显著减少过程调用和返回的执行时间、执行的指令条数及访存次数。
5、RISC的好处。
(P66)
(1)简化指令系统设计,适合VLSI实现。
(2)提高机器的执行速度和效率。
(3)降低了设计成本,提高了系统的可靠性。
(4)可直接支持高级语言的实现,简化编译程序的设计。
6、RISC的问题和不足。
(P68)
(1)由于指令少,使原在CISC上由单一指令完成的某些复杂功能现在要用多条RISC指令才能完成,加重了汇编语言程序设计的负担,增加了机器语言程序的长度,占用存储空间多,加大了指令的信息流量。
(2)对浮点运算执行和虚拟存储器的支持虽有很大加强,但仍显得不足。
(3)RISC机器的编译程序比CISC的难写。
第五章流水和指令级高度并行的超级机
1、重叠和一次重叠的含义。
(P147)
重叠:
指令的重叠解释,在解释第k条指令的操作完成之前,就可开始解释第k+1条指令。
一次重叠:
指令分析部件和指令执行部件任何时候都只能有相邻两条指令在重叠解释的方式。
2、主存空间数相关的处理。
(P151)
主存空间数相关:
相邻两条指令之间出现对主存同一单元要求先写而后读的关联。
处理:
在存控中将写数级别安排成高于读数级别,则当第k条指令和第k+1条指令出现主存数相关时,存控就会先去处理“执行k”的写数,而将“分析k+1“的读申请推迟到下一个主存周期才能处理,自动实现了推后“分析k+1”。
3、寄存器组相关的处理方法(一般数、基址变址)。
(P152)
推后“分析k+1”和设置“相关专用通路”是解决重叠方式相关处理的两种基本方法。
前者是以降低速度为代价,使设备基本上不增加。
后者是以增加设备为代价,使重叠效率不下降。
4、流水和重叠的联系和区别。
(P156)
流水与重叠在概念上没什么差别,流水可以看成是重叠的引申。
差别只在于“一次重叠”是把一条指令的解释分为两个子过程,而流水是分成更多个子过程。
5、流水的分类及其含义理解(选择)。
(P156)
(1)按处理的级别可分为
a、部件级:
构成部件内的各个子部件间的流水。
b、处理机级:
构成处理机的各部件之间的流水。
c、系统级:
构成计算机系统的多个处理器之间的流水。
(2)按流水线具有的功能多少可分为
a、单工能:
只能实现单一功能的流水。
b、多功能:
同一流水线的各个段之间可以有多种不同的连接方式以实现多种不同的运算或功能。
(3)按多功能流水线的各段能否允许同时用于多种不同功能连接流水
a、静态:
在某一时间内各段只能按一种功能连接流水。
b、动态:
各功能段在同一时间内可按不同运算或功能连接。
(4)按机器所具有的数据表示
a、标量流水:
机器没有向量数据表示,只能用标量循环方式来处理向量和数组。
b、向量流水:
机器有向量数据表示,设置用向量指令和向量运算硬件,能流水地处理向量和数组中的各个元素。
(5)按功能段之间是否有反馈回来:
a、线性流水:
各段串行连接,各段只经过一次,没有反馈回路。
b、非线性流水:
有串行连接的通路,有反馈回路,使任务流经流水线需多次经过或越过某些段。
6、标量流水线的主要性能和指标(一定考、要能计算、会画时空图)。
(P160)
标量流水处理机的性能:
吞吐率Tp、加速比Sp和效率y;
吞吐率Tp:
流水线单位时间里能流出的任务数或结果数。
最大吞吐率
(各个子过程所需时间:
)
实际吞吐率
(m段的流水线,完成n个任务。
:
各段经过的时间,完成n个任务时间:
)
加速比Sp:
流水方式处理时间与非流水处理的时间的比值。
加速比:
如果线性流水每段经过的时间不不等,其中瓶颈段时间为
,则m段流水线完成n个任务所达到的
吞吐率:
加速比:
效率y:
流水线中设备的实际使用时间占整个运行时间之比。
也称为流水线设备的时间利用率。
7、局部性相关的处理方法。
(P165)
指令相关、访存操作相关和通用寄存器组相关等局部性相关都是由于在机器同时解释的多条指令之间出现了对同一主存或寄存器要求“先写后读”。
重叠机器处理这些局部性相关的方法有两种:
一种是推后后续指令对相关单元的读,直至在先的指令写入完成。
另一种是设置相关直接通路,将运算结果经相关直接通路送入所需部件。
8、全局性相关的处理方法。
(P169)
全局性相关:
已进入流水线的转移指令(尤其是条件转移指令)和其后续指令之间相关。
(1)猜测法:
猜测转移的方向,继续向前流动。
(2)加快和提前形成条件码:
尽快、尽早获取条件码,以便知道流向哪个分支,会有利于流水机器简化对条件转移的处理。
(3)采取延迟转移:
用软件的方法进行静态指令调度技术。
(4)加快短循环程序的处理。
9、加快提前从哪两个方面。
(P170)
1.加快单条指令内部条件码的形成,不等指令执行完就提前形成反映运算结果的条件码。
2.在一段程序内提前形成条件码,特别适用于循环型程序在判断循环是否继续时的转移情况。
10、加快短循环程序从哪几个方面处理?
(P171)
1.将长度小于指缓容量的短循环程序整个一次性放入指缓内,并暂停预取指令,避免执行循环时由于指令预取导致指缓中需循环执行的指令被冲掉,减少了访主存重复取指的次数。
2.让循环出口端的条件转移指令恒猜循环分支,减少因条件分支造成的流水线断流的机会。
11、中断处理有哪些方法?
(P171)
假设执行第i条指令时有中断:
1.不精确断点:
无论指令i在流水线中的哪一段发生中断,未进入流水线的后续指令不再进入,已经在流水线的指令仍继续流完,然后才转入中断处理程序(不利于编程和程序的排错)。
2.精确断点:
不论指令i是在流水线中的哪一段响应中断,给中断处理程序的现场全是对应i的,i之后流入流水线的指令的原有现场都能保存和恢复。
12、向量的流水处理的方式有哪些?
(P176)
1.向量纵向处理。
2.分组纵向处理。
13、了解指令级高度并行的超级处理机有哪几种类型及原理(了解)。
(P185)
1.超标量处理机
2.超长指令字处理机。
3.超流水线处理机。
4.超标量超流水线处理机。
第六章阵列处理机
1、阵列处理机有哪两种构形?
(P193)
1.采用分布式存储器的阵列处理机。
2.采用集中式共享存储器的阵列处理机。
2、ILLIACIV的阵列结构。
(P195)
ILLIACIv采用分布存储器构形。
其中,PUi为处理部件,包含64位的算术处理单元PEi、所带的局部存储器PEMi和存储逻辑部件MLU。
64个处理部件PU0~PU63排列成8*8的方阵,任何一个PUi只与其上、下、左、右4个邻近PUi-8(mod64)、PUi+8(mod64)、PUi-1(mod64)和PUi+1(mod64)直接相连。
上下同一列两端的PU连成环,左右没一行右端的PU与下一行左端的PU相连,最下面一行右端的PU与最上面一行左端的PU相连,形成一个闭合的螺线形状,称为闭合螺线阵列。
N=sqrt(n)*sqrt(n)个处理单元组成的阵列中,任意两个处理单元之间的最短距离不超过sqrt(N)-1步。
3、处理单元最短距离。
(P196)
没有直接相连的单元之间可以用软件寻找最短路径进行通信。
任意两个处理单元进行通信的最短距离称为:
处理单元最短距离。
4、互连网络设计目标。
(P201)
结构不要过分复杂,以降低成本;
互连要灵活,以满足算法和应用的需要;
处理单元间信息交换所需传送步数要尽可能少,以提高速度性能;
能用规整单一的基本构件组合而成,或者经多次通过或者经过多极连接来实现复杂的互连,使模块性好,以便于用VLSI实现并满足系统的可扩充性。
5、互连网络应抉择的几个问题。
(P201)
1.操作方式:
同步、异步、同步与异步组合,现有阵列处理机根据SIMD性质均采用同步操作方式。
异步和组合操作方式一般多用于多处理机。
2.控制策略:
分为集中和分布两种控制策略,多数现有SIMD互连网络采用由集中控制部件对全部开关单元执行集中控制的策略。
3.交换方法:
分为线路交换、包交换、线路与包交换组合。
SIMD互连网络多采用硬连的线路交换,包交换则多用于多处理机和计算机网络中。
(1)线路交换:
在源和目的间建立实际的连接通路,一般适合于大批数据传输。
(2)包交换:
将数据置于包内传送,不用建立实际的连接通路,对短数据信息传送特别有效。
4.网络的拓扑结构:
网络的拓扑结构指互连网络入、出端可以连接的模式。
分为静态和动态(单极和多极)。
6、互联函数。
(P203)
互联函数:
在一个网络中的一个处理单元连接到其他单元的函数。
7、四种单极互连网络及它们的互连函数及最大距离。
(P202)
1.立方体单极网络(Cube)
采用三维立方体结构:
立方体的每个顶点(网络的结点)代表一个处理单元,共有8个处理单元。
每个处理单元只能直接连接到其二进制编号的某一位取反的其他3个处理单元上。
三种互连函数:
Cube0、Cube1、Cube2。
推广到n维,N个结点的立方体单极网络共有n=logN种互连函数:
单极立方体网络的最大距离为n,即反复使用单极网络,最多经过n次传送就可以实现任意一对入、出端间的连接。
2.PM21单极网络
PM2I单极网络是“加减2^i“(Plus-Minus2^i)单极网络的简称。
能实现与j号处理单元直接相连的是号为j±2^i的处理单元。
对于N=8:
(1)
(2)
(3)
(4)
(5)
其中,(01234567)表示0连接1,1连接2,...,7连接0。
处理期间用单向环网或双向环网互连,是PM2I网络的特例,采用了
(1)和
(2)互连函数。
ILLIACIV处理单元的互连也是PM2I网络的特例,采用了
(1)、
(2)和
四个互连函数。
PM2I单极网络的最大距离为[n/2]。
3.混洗交换单极网络
混洗交换单极网络包含两个函数:
全混(PerfectShuffle),交换(Exchange)
混洗:
把处理单元分两半,前一半和后一半连接至输出端刚好一一隔开。
(不可逆)
Shuffe(Pn-1Pn-2...P1P0)=(Pn-2...P1P0Pn-1)
最大距离为:
2n-1
4.蝶形单极网络
Butterfly(Pn-1Pn-2...P1P0)=P0Pn-2...P1Pn-1即将二进制地址的最高位和最低位相互交换位置。
多极互连网络的三个参数:
交换开关、拓扑结构和控制方式。
8、多级立方体网络(分两种)。
(P206)
1.STARAN网络(重点)
2.间接二进制n方体网络
9、多级混洗交换网络(交换开关、拓扑结构、控制方式)。
(P208)
10、全排列网络的含义。
(P213)
如果互连网络是从N个入端到N个出端的一到一的映射,就可以把它看成是对此N个端的重新排列,因此互连网络的功能实际上就是用新排列来置换N个入端原有的排列。
能把N个入端置换成N!
个全排列的网络称为全排列网络。
11、全排列网络的两种实现方式。
(P213)
1.在任何一种基本多级互连网络的出端设置锁存器,使数据在时间上顺序同行两次。
2.用多极网络也可以实现全排列网络。
第七章多处理机
1、多处理机有哪三种类型?
(P223)
多处理机:
用两台以上的处理机,共享I/O子系统,机间经共享主存或高速通信网络通信,在操作系统控制下,协同求解大而复杂问题的计算机系统。
目的:
提高速度,提高可靠性、适应性和可用性。
按应用的目的和结构的不同分为:
同构型,异构型和分布型。
2、多处理机的硬件结构有哪两种?
(P224)
1.紧耦合构形
2.松耦合构形
3、机间互连形式有哪几种?
(P227)
1.总线形式
2.环形互连形式
3.交叉开关形式
4.多端口存储器形式
5.蠕虫穿洞寻径网络
6.开关枢纽结构形式
4、有哪些总线仲裁算法?
(P228)
1.静态优先级算法
2.固定时间片算法
3.动态优先级算法
4.先来先服务算法
5、静态优先级有哪几种?
(P228)
1.串行链接结构
2.独立请求结构
6、动态优先级有哪几种?
(P228)
动态优先级:
总线上各部件优先级可根据情况按一定规则动态改变
1.最少使用法(LRU):
在每个总线周期后,最先响应最长时间间隔内未使用过总线的部件对总线访问的请求。
2.循环串行链(RDC):
在每个总线周期后,按“总线可用”线所接部件的顺序,优先响应离刚使用过总线的部件位置最近的部件所发出的访问总线请求。
7、多cache的一致性问题的解决方法。
(P236)
(1)解决进程迁移引起的多Cache不一致性
A、禁止进程迁移。
B、在进程挂起时,靠硬件方法将Cache中该进程写过的信息块强制写回主存相应位置。
(2)以硬件为基础实现多Cache的一致性
A、监视协议法:
适用用于总线式互联的多处理机
B、目录表法:
适用于机器多,不采用总线式互联的场合。
a、全映像目录表b、有限目录表法c、链式目录表法。
(3)以软件为基础实现多Cache的一致性
优点:
可以减少硬件的复杂性,降低对互联网络通信量的要求,性价比较高,比较适用于处理机多的多处理机。
8、并行算法(要会计算->对表达式交换使级数最少,再使机数最少)。
(P238)
并行算法:
可同时执行的多个进程的集合,各进程可相互作用、协调和并发操作。
分类:
按运算基本对象:
数值型,非数值型
按并行进程间的操作顺序不同:
同步型,异步型,独立型
按各处理机计算任务的大小:
细粒型,中粒型,粗粒型
思路:
把并行性问题设想成是对算术表达式如果进行并行运算的问题
9、程序的并行性分析。
(P240)
任务间能否并行,除了算法外,很大程度还取决于程序的结构。
程序中各类数据相关,是限制程序并行的重要因素。
数据相关即可存在于指令之间,也可存在于程序段之间。
10、有哪几种数据相关及其特点?
(P240)(设:
Pi和Pj为程序段)
(1)数据相关:
Pi的左部变量在Pj的右部集内,且Pj必须取出Pi运算的结果来作为操作数,就称Pj“数据相关”于Pi。
(先写后读)
PiA=B+D
PjC=A*E
(2)数据反相关:
Pj的左部变量在Pi的右部变量集内,且当Pi未取用其变量的值之前,是不允许被Pj所改变的。
就称Pi“数据反相关“于Pj。
(先读后写)
PiC=A+E
PjA=B+D
(3)数据输出相关:
Pi的左部变量也是Pj的左部变量,且Pj存入其算得的值必须在Pi存入后,则称Pj“数据输出相关”于Pi。
PiA=B+D
PjA=C+E
两个程序段之间若有先写后读的数据相关,不能并行,只在特殊情况下可以交换串行;若有先读后写的数据反相关,可以并行执行,但必须保证其写入共享主存是的先读后写次序,不能交换串行;若有写-写的数据输出相关,可以并行执行,但同样需保证其写入的先后次序,不能交换串行。
若同时有先读后写和先写后读两种相关,以交换数据为目的时,必须并行执行,而且读、写要完全同步,不许顺序串行和交换串行;若没有任何相关或仅有源数据相同时,可以并行、顺序串行和交换串行。
11、掌握Fork和Join。
(P242)
用FORK语句派生并行任务,用JOIN语句对多个并发任务汇合。
12、有哪些多处理机的操作系统及各自特点(能分辩)。
(P248)
多处理机操作系统的特点:
程序执行的并行性、操作系统功能的分布性、机间通信与同步性、系统容错。
(1)主从操作系统:
只在一个指定的处理机上有控制功能。
(2)各自独立型操作系统:
将控制功能分散给多台处理机。
(3)浮动型操作系统:
管理程序可以在处理机之间浮动。
第八章数据流机和规约机
1、数据驱动的数据流方式。
(P257)
数据驱动的数据流方式指的是,只要一条或一组指令所要求的操作数全部准备就绪,就可以立即激发相应的指令或指令组执行。
2、数据驱动的特点。
(P258)
没有通常的共享变量的概念,即没有共享存储数据的概念;指令执行顺序只受指令中数据相关性的制约;数据是以数据令牌方式直接在指令之间传递的。
3、数据令牌含义、实质。
(P258)
数据令牌:
实质是一种表示某一操作数或参数已准备就绪的标准。
4、数据流计算模型的两种类型