1、数据库系统工程师-计算机原理与体系结构及答案解析(总分:63.00,做题时间:90 分钟)1.在 32位的总线系统中,若时钟频率为 1000 MHz,总线上 5个时钟周期传送一个 32位字,则该总线系统的数据传送速率约为 (61) MB/s。(分数:1.00)A.200B.600C.800D.10002.下面的描述中, (13) 不是 RISC设计应遵循的设计原则。(分数:1.00)A.指令条数应少一些B.寻址方式尽可能少C.采用变长指令,功能复杂的指令长度长而简单指令长度短D.设计尽可能多的通用寄存器假设每一条指令都可以分解为取指、分析和执行三步。已知取指时间 t 取指 4t,分析时间 t
2、分析 3t,执行时间 t 执行 5t。如果按串行方式执行完 100条指令,需要 (18) At。如果按照流水线方式执行,执行完 100条指令需要 (19) t。(分数:2.00)A.1190B.1195C.1200D.1205A.504B.507C.508D.5103.若浮点数的阶码用移码表示,尾数用补码表示。两规格化浮点数相乘,最后对结果规格化时,右规的右移位数最多为 (10) 位。(分数:1.00)A.1B.2C.尾数位数D.尾数位数-14.中断响应时间是指 (1) 。(分数:1.00)A.从中断处理开始到中断处理结束所用的时间B.从发出中断请求到中断处理结束后所用的时间C.从发出中断请求
3、到进入中断处理所用的时间D.从中断处理结束到再次中断请求的时间用二进制加法器对二十进制编码的十进制数求和,当和的本位十进制数的二十进制编码小于等于1001且向高位无进位时, (52) :当和小于等于 1001且向高位有进位时, (53) ;当和大于 1001时, (54) 。(分数:3.00)A.不需进行修正B.需进行加 6修正C.需进行减 6修正D.进行加 6或减 6修正,需进一步判别A.不需进行修正B.需进行加 6修正C.需进行减 6修正D.进行加 6或减 6修正,需进一步判别A.不需进行修正B.需进行加 6修正C.需进行减 6修正D.进行加 6或减 6修正,需进一步判别5.某指令流水线由
4、 5段组成,各段所需要的时间如图 1-1所示。(分数:1.00)A.10/70tB.10/49tC.10/35tD.10/30t6.若指令流水线把一条指令分为取指、分析和执行三部分,且三部分的时间分别是 t 取指 2ns,t 分析2ns,t 执行 1ns,则 100条指令全部执行完毕需 (2) ns。(分数:1.00)A.13B.183C.193D.2037.在单指令流多数据流计算机(SIMD)中,各处理单元必 (3) 。(分数:1.00)A.以同步方式,在同一时间内执行不同的指令B.以同步方式,在同一时间内执行同一条指令C.以异步方式,在同一时间内执行不同的指令D.以异步方式,在同一时间内执
5、行同一条指令RISC是指 (32) 计算机。通常 CPU具有高时钟频率,尽量使用单周期操作,其采用 (33) 控制方式。RISC机一般也采用 (34) 结构,遇到转移指令时可以采用延迟转移等办法来解决转移的相关性;并要求编译系统相配合。RISC 机都采用了较大的 (35) 结构,以减少访问主存的频度,访内通常仅用LOAD/STORE类指令。RISC 和 (36) 技术相结合是当前高速计算机发展的一个重要方向。(分数:5.00)A.冗余集成系统B.可靠信息存储C.精简指令系统D.再定位指令系统A.微码B.固件C.硬接线D.软件A.微程序B.多处理机C.微通道D.流水线A.寄存器堆B.多处理机C.
6、微通道D.RASA.交叉存取B.多处理机C.运算器D.存储器模块为了快速传送大量数据,微型计算机中采用存储器直接访问技术,简称 DMA。用 DMA 方式传送时,在存储器和 (37) 之间直接建立高速传输数据的通路,不需要 (38) 的干预。利用 DMA方式传送数据时,数据的传送过程完全由称为 DMA控制器的硬件控制。 DMA 控制器具有下列功能:(1)向 CPU申请 (39) 传送。(2)在 CPU允许 DMA工作时,处理总线控制的转交。(3)在 DMA期间管理 (40) ,控制数据传送。(4)确定数据传送的起始地址和 (41) ,并在传送过程中不断修正。(5)数据传送结束时,给出表示 DMA
7、操作完成的信号。(分数:5.00)A.控制台B.硬件C.外部设备D.数据长度E.CPUF.存储器G.DMAH.系统总线I.数据方向J.传输速率A.控制台B.硬件C.外部设备D.数据长度E.CPUF.存储器G.DMAH.系统总线I.数据方向J.传输速率A.控制台B.硬件C.外部设备D.数据长度E.CPUF.存储器G.DMAH.系统总线I.数据方向J.传输速率A.控制台B.硬件C.外部设备D.数据长度E.CPUF.存储器G.DMAH.系统总线I.数据方向J.传输速率A.控制台B.硬件C.外部设备D.数据长度E.CPUF.存储器G.DMAH.系统总线I.数据方向J.传输速率8.指令流水线将一条指令的
8、执行过程分为四步,其中第 1、2 和 4步的经过时间为t,如图 1-2所示。若该流水线顺序执行 50条指令共用 153t,并且不考虑相关问题,则该流水线的瓶颈第 3步的时间为 (14) t。(分数:1.00)A.2B.3C.4D.5利用并行处理技术可以缩短计算机的处理时间,所谓并行性是指 (55) 。可以采用多种措施来提高计算机系统的并行性,它们可分成三类,即 (56) 。提供专门用途的一类并行处理机(亦称阵列处理机)以 (57) 方式工作,它适用于 (58) 。多处理机是目前较高性能计算机的基本结构,它的并行任务的派生是 (59) 。(分数:5.00)A.多道程序工作B.多用户工作C.非单指
9、令流单数据流方式工作D.在同一时间完成两种或两种以上的工作A.多处理机,多级存储器和互联网络B.流水结构,高速缓存和精简指令集C.微指令,虚拟存储和 I/O通道D.资源重复,资源共享和时间重叠A.SISDB.SIMDC.MISDD.MIMDA.事务处理B.工业控制C.矩阵运算D.大量浮点计算A.需要专门的指令来表示程序中并发关系和控制并发执行B.靠指令本身就可以启动多个处理单元并行工作C.只执行没有并发约束关系的程序D.先并行执行,事后再用专门程序去解决并发约束9.系统响应时间和作业吞吐量是衡量计算机系统性能的重要指标。对于一个持续处理业务的系统而言,其 (15 ) 。(分数:1.00)A.响
10、应时间越短,作业吞吐量越小B.响应时间越短,作业吞吐量越大C.响应时间越长,作业吞吐量越大D.响应时间不会影响作业吞吐量10.从基本的 CPU工作原理来看,若 CPU执行 MOV R1,R0 指令(即将寄存器 R0的内容传送到寄存器 R1中),则 CPU首先要完成的操作是 (62) 。(其中 PC为程序计数器,M 为主存储器,DR 为数据寄存器,IR 为指令寄存器,AR 为地址寄存器。)(分数:1.00)A.R0R1B.PCARC.MDRD.DRIR11.在中断响应过程中,CPU 保护程序计数器的主要目的是 (60) 。(分数:1.00)A.使 CPU能找到中断服务程序的入口地址B.为了实现中
11、断嵌套C.为了使 CPU在执行完中断服务程序时能回到被中断程序的断点处D.为了使 CPU与 I/O设备并行工作12. (12) 不属于计算机控制器中的部件。(分数:1.00)A.指令寄存器 IRB.程序计数器 PCC.算术逻辑单元 ALUD.程序状态字寄存器 PSW13.关于 RS-232-C,以下叙述中正确的是 (63) 。(分数:1.00)A.能提供最高传输率 9600b/sB.能作为计算机与调制解调器之间的一类接口标准C.可以用菊花链式连接D.属于一类并行接口在指令系统的各种寻址方式中,获取操作数最快的方式是 (16) 。若操作数的地址包含在指令中,则属于 (17) 方式。(分数:2.0
12、0)A.直接寻址B.立即寻址C.寄存器寻址D.间接寻址A.直接寻址B.立即寻址C.寄存器寻址D.间接寻址现采用四级流水线结构分别完成一条指令的取指、指令译码和取数、运算,以及送回运算结果四个基本操作,每步操作时间依次为 60ns,100ns,50ns 和 70ns。该流水线的操作周期应为 (27) ns。若有一小段程序需要用 20条基本指令完成(这些指令完全适合于流水线上执行),则得到第一条指令结果需 (28) ns,完成该段程序需 (29) ns。在流水线结构的计算机中,频繁执行 (30) 指令时会严重影响机器的效率。当有中断请求发生时,采用不精确断点法,则将 (31) 。(分数:5.00)
13、A.50B.70C.100D.280A.100B.200C.280D.400A.1400B.2000C.2300D.2600A.条件转移B.无条件转移C.算术运算D.访问存储器A.仅影响中断响应时间,不影响程序的正确执行B.不仅影响中断响应时间,还影响程序的正确执行C.不影响中断响应时间,但影响程序的正确执行D.不影响中断响应时间,也不影响程序的正确执行操作数所处的位置,可以决定指令的寻址方式。操作数包含在指令中,寻址方式为 (6) ;操作数在寄存器中,寻址方式为 (7) ;操作数的地址在寄存器中,寻址方式为 (8) 。(分数:3.00)A.立即寻址B.直接寻址C.寄存器寻址D.寄存器间接寻址
14、A.立即寻址B.相对寻址C.寄存器寻址D.寄存器间接寻址A.相对寻址B.直接寻址C.寄存器寻址D.寄存器间接寻址在计算机中,最适合进行数字加减运算的数字编码是 (4) ,最适合表示浮点数阶码的数字编码是 (5) 。(分数:2.00)A.原码B.反码C.补码D.移码A.原码B.反码C.补码D.移码为了大幅度提高处理器的速度,当前处理器中都采用了指令级并行处理技术,如超级标量(superscalar),它是指 (42) 。流水线组织是实现指令并行的基本技术,影响流水线连续流动的因素除数据相关性、转移相关性外,还有 (43) 和 (44) ;另外,要发挥流水线的效率,还必须重点改进 (45) 。在
15、RISC设计中,对转移相关性一般采用 (46) 方法解决。(分数:5.00)A.并行执行的多种处理安排在一条指令内B.一个任务分配给多个处理机并行执行C.采用多个处理部件多条流水线并行执行D.增加流水线级数提高并行度A.功能部件冲突B.内存与 CPU速度不匹配C.中断系统D.访内指令A.功能部件冲突B.内存与 CPU速度不匹配C.中断系统D.访内指令A.操作系统B.指令系统C.编译系统D.高级语言A.猜测法B.延迟转移C.指令预取D.刷新流水线重填14.两个同符号的数相加或异符号的数相减,所得结果的符号位 SF和进位标志 CF进行 (9) 运算为 1时,表示运算的结果产生溢出。(分数:1.00
16、)A.与B.或C.与非D.异或计算机执行程序所需的时间 P,可用 P=ICPIT来估计,其中 I是程序经编译后的机器指令数,CPI 是执行每条指令所需的平均机器周期数,T 为每个机器周期的时间。 RISC 计算机是采用 (47) 来提高机器的速度。它的指令系统具有 (48) 的特点。指令控制部件的构建, (49) 。RISC 机器又通过采用 (50) 来加快处理器的数据处理速度。RISC 的指令集使编译优化工作 (51) 。(分数:5.00)A.虽增加 CPI,但更减少 TB.虽增加 CPI,但更减少 TC.虽增加 T,但更减少 CPID.虽增加 I,但更减少 CPIA.指令种类少B.指令种类
17、多C.指令寻址方式多D.指令功能复杂A.CISC更适于采用硬布线控制逻辑,而 RISC更适于采用微程序控制B.CISC更适于采用微程序控制,而 RISC更适于采用硬布线控制逻辑C.CISC和 RISC都采用微程序控制D.CISC和 RISC都只采用硬布线控制逻辑A.多寻址方式B.大容量内存C.大量的寄存器D.更宽的数据总线A.更简单B.更复杂C.不需要D.不可能被操作数的最高位移入“进位”位,其余所有位接收其相邻低位值,最低位移入 0的操作是 (22) 指令。被操作数的最高位保持不变,其余所有位接收其相邻高位值,最低位移到“进位”位中的操作是 (23) 指令。在程序执行过程中改变按程序计数器顺
18、序读出指令的指令属于 (24) 。相对寻址方式的实际地址是 (25) 。特权指令在多用户、多任务的计算机系统中必不可少,它主要用于 (26) 。(分数:5.00)A.逻辑左移B.算术左移C.乘 2运算D.除 2运算A.逻辑左移B.算术左移C.乘 2运算D.除 2运算A.特权指令B.传送指令C.输入/输出指令D.转移指令A.程序计数器的内容加上指令中形式地址值B.基值寄存器的内容加上指令中形式地址值C.指令中形式地址中的内容D.栈顶内容A.检查用户的权限B.系统硬件自检和配置C.用户写汇编程序时调用D.系统资源的分配和管理某计算机有 14条指令,其使用频度分别如表 1-2所示。(分数:2.00)
19、A.3B.4C.5D.6A.2.8B.3.4C.3.8D.4.2数据库系统工程师-计算机原理与体系结构答案解析(总分:63.00,做题时间:90 分钟)1.在 32位的总线系统中,若时钟频率为 1000 MHz,总线上 5个时钟周期传送一个 32位字,则该总线系统的数据传送速率约为 (61) MB/s。(分数:1.00)A.200B.600C.800 D.1000解析:分析该题考查总线系统的数据传送速率的计算。微机中的总线可分为内部总线、系统总线和外部总线三种,其中内部总线是微机内部各外围芯片与处理器之间的总线,用于芯片一级的互连;系统总线是微机中各插件板与系统板之间的总线,用于插件板一级的互
20、连;外部总线是微机和外部设备之间的总线,微机作为一种设备,通过该总线和其他设备进行信息与数据交换,它用于设备一级的互连。从通信方式来看,因为计算机通信方式可以分为并行通信和串行通信,所以相应的通信总线被称为并行总线和串行总线。并行通信速度快、实时性好,但由于占用的口线多,不适于小型化产品:而串行通信速率虽低,但在数据通信吞吐量不是很大的微处理电路中则显得更加简易、方便、灵活。串行通信一般可分为异步模式和同步模式。在本题中,因为时钟频率为 1000 MHz,所以 1s中有 1000M个时钟周期,又知道 5 个时钟周期传送一个32位(4 字节),则该总线系统的数据传送速率为 4B1000M/5s
21、800MB/s。2.下面的描述中, (13) 不是 RISC设计应遵循的设计原则。(分数:1.00)A.指令条数应少一些B.寻址方式尽可能少C.采用变长指令,功能复杂的指令长度长而简单指令长度短 D.设计尽可能多的通用寄存器解析:分析 本题考查的是计算机系统硬件方面的基础知识。在设计 RISC时,需要遵循如下基本原则。指令条数少,一般为几十条指令。寻址方式尽可能少。采用等长指令,不管是功能复杂的还是简单的指令,均用同一长度。设计尽可能多的通用寄存器。因此,采用变长指令,功能复杂的指令长度长而简单指令长度短不是应采用的设计原则。假设每一条指令都可以分解为取指、分析和执行三步。已知取指时间 t 取
22、指 4t,分析时间 t 分析 3t,执行时间 t 执行 5t。如果按串行方式执行完 100条指令,需要 (18) At。如果按照流水线方式执行,执行完 100条指令需要 (19) t。(分数:2.00)A.1190B.1195C.1200 D.1205解析:A.504B.507 C.508D.510解析:分析按顺序方式执行指令,每条指令从取指到执行共耗时 12t,所以 100条指令共耗时:12100=1200t。有关流水线连续执行指令所需时间的分析,请参考第 2题。在本题中,采用流水线的耗时为:(4+3+5)+(100-1)5=507t。3.若浮点数的阶码用移码表示,尾数用补码表示。两规格化浮
23、点数相乘,最后对结果规格化时,右规的右移位数最多为 (10) 位。(分数:1.00)A.1 B.2C.尾数位数D.尾数位数-1解析:分析 为了充分利用尾数来表示更多的有效数字,即提高数据的表示精度,通常采用规格化浮点数。规定浮点数在运算结束将运算结果存到计算机中时,必须是规格化的浮点数。规格化浮点数尾数的最高数值位是有效数字,即正尾数 0.5P1,负尾数-1F-0.5。要求规格化以后,其尾数部分是正数时为 0.1xxx的形式;是负数时,对于原码为 1.1xxx的形式,对于补码为 1.0xxx的形式,可以通过尾数小数点的左右移动和阶码的变化实现。那么,将两个尾数相乘,则积的最高数值位是有效数字,
24、即正尾数0.25 补 F1补 ,负尾数-1 补 F-0.5 补 ,所以,右规时的右移位数最多是 1位。4.中断响应时间是指 (1) 。(分数:1.00)A.从中断处理开始到中断处理结束所用的时间B.从发出中断请求到中断处理结束后所用的时间C.从发出中断请求到进入中断处理所用的时间 D.从中断处理结束到再次中断请求的时间解析:分析 当 CPU执行 I/O请求指令时,向 I/O控制器发出相应指令后,CPU 并不等待 I/O控制器返回的结果,而是继续执行其他操作。此时,I/O 控制器负责和外设进行通信,当数据从其数据寄存器写到外设后或者外设的数据写入其数据寄存器后,I/O 控制器向 CPU 发出中断
25、请求,CPU 响应中断,并进行相应的处理。注意,由于 I/O控制器的数据寄存器大小有限,因而一次 I/O请求往往要经过多次中断过程才能完成。由于 CPU无须等待 I/O控制器和外设的数据交换,因而提高了整个系统的效率。(1)中断的概念和分类顾名思义,中断就是打断 CPU正在执行的工作,让 CPU去处理其他更加重要或者更为紧迫的任务。发起中断的事务称为中断源,中断源包括 I/O设备、实时时钟、故障源、软件中断等。中断系统使得 CPU摆脱了只能按照指令顺序执行的束缚,让计算在并行性、分时操作、故障处理等方面更加强大。根据中断源的不同,中断可以分为内部中断和外部中断。内部中断是 CPU内部产生的中断
26、,在个人计算机(PC)中,内部中断又分为溢出中断、除法错中断、断点中断、软件中断及单步中断,其中可以使用软件中断实现 DOS功能调用和基本 BIOS调用,也可以使用单步中断实现程序的调试。外部中断的中断源来自于 CPU之外,外部中断按照 CPU的响应可以分为可屏蔽中断和非屏蔽中断。非屏蔽中断是 CPU一定要响应的中断,通常是计算机发生了紧急情况(如停电等)。可屏蔽中断大多是外设和时钟中断,在计算机处理一些不应该打断的任务时,可以通过屏蔽位来不响应这些中断。(2)中断处理过程CPU收到中断请求后,如果是当前允许的中断,那么要停止正在执行的代码,并把内部寄存器入栈(保护现场),这个过程不能被再次打
27、断,所以在保护现场的开始要先关中断,保护完后再开中断。保护现场的过程应该尽量短,以避免错过其他中断。这个过程消耗的时间称为中断响应时间。也就是说,中断响应时间是发出中断请求到中断处理程序开始执行之间的时间差。然后,开始执行中断处理程序。中断处理程序常常比较简单,通常是设置一些标志位,做一些简单的数据处理,而让其他更耗时的处理在非中断程序完成。中断处理程序完成后,需要将刚才保存的现场恢复(恢复现场),把入栈的寄存器出栈,继续执行被中断的程序。整个过程消耗的时间称为中断处理时间。当然,对于不同的中断及不同的应用,这个时间差别比较大,而且也不是一味求短,实际编写时要考虑中断处理的重要程度。现在大多数
28、 CPU都支持多级中断,即在进行中断处理程序时,还可以响应其他中断,形成中断嵌套。(3)中断的判断当有多个中断源时,每个中断源使用自身的中断请求信号线与 CPU相连,这种方式适用于中断源不是很多的情况,而 CPU的外部中断引脚是有限的。统一的中断请求,由 CPU使用专门程序依次查询判断是哪个中断源的请求,通过查询的次序,可以实现中断的优先级控制。有一种是硬件查询法,有一个中断确认信号链或方式与 I/O设备相连,某个外设发出中断请求后,中断确认信号开始在各处传递,发出中断请求的外设响应这个信号。总线仲裁:在这种方式中,外设需先得到总线控制权,发出中断请求,最后将设备号通过数据总线发给CPU。由总
29、线仲裁机制决定可以发信号的外设。中断向量表:中断向量表是一张有不同中断处理程序入口地址的表格,用这种机制,每个中断源有不同的中断号,即中断向量,CPU 收到中断信号,并根据中断号查询中断向量表,以得到该中断的处理程序的入口地址。用二进制加法器对二十进制编码的十进制数求和,当和的本位十进制数的二十进制编码小于等于1001且向高位无进位时, (52) :当和小于等于 1001且向高位有进位时, (53) ;当和大于 1001时, (54) 。(分数:3.00)A.不需进行修正 B.需进行加 6修正C.需进行减 6修正D.进行加 6或减 6修正,需进一步判别解析:A.不需进行修正B.需进行加 6修正
30、 C.需进行减 6修正D.进行加 6或减 6修正,需进一步判别解析:A.不需进行修正B.需进行加 6修正 C.需进行减 6修正D.进行加 6或减 6修正,需进一步判别解析:分析二十进制数编码又称为 BCD码。人们习惯于十进制数,不习惯于二进制数,但是计算机只用二进制数,因此有一个折中的方法,这就是 8421码。8421 码使用 4个二进制数来表示一位十进制数。比如十进制数138的 8421码表示为:0001 0011 1000。所以这种表示方法也称为二进制编码的十进制编码,简称 BCD码。BCD 码比较容易阅读,在许多通信程序中,系统分析师都愿意采用 BCD码来表示数据,这样在调试的过程中,比
31、较容易读出其中的内容。BCD码的特性使得在使用 BCD码进行计算时,可能需要进行修正。如 3+5:0011+01011000,正确。而 6+7:0110+01111101,这已经不在 BCD码的范围里,此时需要进行修正。修正的方法是本位加 6,并向高位进 1。还有一种编码是将 BCD码加 3作为数字表示法,称为余 3码。在使用余 3码进行计算时,从最高位产生的进位是真正的进位,对每 4位的结果,如果小于等于 9,则减 3,如果大于 9,则加 3。5.某指令流水线由 5段组成,各段所需要的时间如图 1-1所示。(分数:1.00)A.10/70tB.10/49tC.10/35t D.10/30t解
32、析:分析 有关流水线连续执行指令所需时间的分析,请参考第 2题。执行完 10条指令所需时间(1+3+1+2+1)+(10-1)335t。连续输入 10条指令时的吞吐率10/35t。6.若指令流水线把一条指令分为取指、分析和执行三部分,且三部分的时间分别是 t 取指 2ns,t 分析2ns,t 执行 1ns,则 100条指令全部执行完毕需 (2) ns。(分数:1.00)A.13B.183C.193D.203 解析:分析 有关流水线的执行时间计算问题,是数据库系统工程师考试中经常出现的一类试题,因此,考生务必要掌握流水线的基本原理和实现过程,以及影响流水线效率的因素。在流水线中,其实每一条指令的
33、执行时间并没有减少,而第一条指令完全没有能发挥流水线的优势,只有在 3操作周期的时间后才能执行完成,剩下的时间里每个操作周期将完成一条指令。同时,为了便于设计,一般取流水线中耗时最长的那个部分所需要的时间作为操作周期。设流水线由 m段组成,每段所需时间分别为t i(1im),完成 n个任务的实际时间可计算如下:*t i+(n-1)t j(t j为最慢一段所需时间)流水线的操作周期受到基本操作中最慢的那个操作的制约。这里最慢的是 2ns,所以操作周期是 2ns。即总时间为(2+2+1)+(100-1)25+198203注:实际设计时,这里应该是 204ns。因为每个部分都采用操作周期,而操作周期
34、为 2ns,即第 1条指令完毕需要的时间是 6ns而不是 5ns。7.在单指令流多数据流计算机(SIMD)中,各处理单元必 (3) 。(分数:1.00)A.以同步方式,在同一时间内执行不同的指令B.以同步方式,在同一时间内执行同一条指令 C.以异步方式,在同一时间内执行不同的指令D.以异步方式,在同一时间内执行同一条指令解析:分析 1966年,MichaelJFlynn 提出根据指令流、数据流的多倍性特征对计算机系统进行分类(通常称为Flynn分类法),有关定义如下:指令流:指机器执行的指令序列。数据流:指由指令流调用的数据序列,包括输入数据和中间结果,但不包括输出数据。多倍性:指在系统性能瓶
35、颈部件上同时处于同一执行阶段的指令或数据的最大可能个数。Flynn根据不同的指令流一数据流组织方式,把计算机系统分成四类,如表 1-1所示。*(1)单指令流单数据流(SISD):SISD 其实就是传统的顺序执行的单处理器计算机,其指令部件每次只对一条指令进行译码,并且只对一个操作部件分配数据。流水线方式的单处理机有时也被当做 SISD。值得注意的是,Intel 公司的奔腾 PII中开始采用 MMX技术,引进了一些新的通用指令,从某种意义上使用了单指令流多数据流的思想,但是,与 Intel 公司的前几代产品(X86/Pentium)相比,其指令序列的执行方式和调用数据的方式没有发生根本性的变化,
36、所以从整体上来看,采用奔腾 PII芯片的 PC机仍属于 SISD类。(2)单指令流多数据流(SIMD):SIMD 以并行处理机(阵列处理机)为代表,并行处理机包括多个重复的处理单元 PU1PUn,由单一指令部件控制,按照同一指令流的要求为它们分配各自所需的不同数据。相联处理机也属于这一类。(3)多指令流单数据流(MISD):MISD 具有 n个处理单元,按 n条不同指令的要求对同一数据流及其中间结果进行不同的处理。一个处理单元的输出又作为另一个处理单元的输入。这类系统实际上很少见到。有文献把流水线看做多个指令部件,称流水线计算机是 MISD。(4)多指令流多数据流(MIMD):MIMD 是指能
37、实现作业、任务、指令等各级全面并行的多机系统。多处理机属于 MIMD。当前的高性能服务器与超级计算机大多具有多个处理机,能进行多任务处理,称为多处理机系统。不论是大规模并行处理机 MPP (Massively Parallel Processor)或对称多处理机 SMP(Symmetrical Multi Processor),都属于这一类。Flynn分类法是最普遍使用的。其他的分类法还有:(1)冯氏分类法:由冯泽云在 1972年提出,冯氏分类法用计算机系统在单位时间内所能处理的最大二进制位数来对计算机系统进行分类。(2)Handler分类法:由 Wolfgan Handler在 1977年提
38、出,Handler 分类法根据计算机指令执行的并行度和流水线来对计算机系统进行分类。(3)Kuck分类法:由 DavidJKuck 在 1978年提出,Kuck 分类法与 Flynn分类法相似,也是用指令流、执行流和多倍性来描述计算机系统特征,但其强调执行流而不是数据流的概念。RISC是指 (32) 计算机。通常 CPU具有高时钟频率,尽量使用单周期操作,其采用 (33) 控制方式。RISC机一般也采用 (34) 结构,遇到转移指令时可以采用延迟转移等办法来解决转移的相关性;并要求编译系统相配合。RISC 机都采用了较大的 (35) 结构,以减少访问主存的频度,访内通常仅用LOAD/STORE
39、类指令。RISC 和 (36) 技术相结合是当前高速计算机发展的一个重要方向。(分数:5.00)A.冗余集成系统B.可靠信息存储C.精简指令系统 D.再定位指令系统解析:A.微码B.固件C.硬接线 D.软件解析:A.微程序B.多处理机C.微通道D.流水线 解析:A.寄存器堆 B.多处理机C.微通道D.RAS解析:A.交叉存取B.多处理机 C.运算器D.存储器模块解析:分析此题属概念题,只要我们了解了 RISC (Reduced Instruction Set Computing,精简运算指令集计算机)的基本特征,解题就容易。但说到 RISC就不得不提 CISC (Complex Instruc
40、tion Set Computing,复杂指令集计算机),下面将对其做详细说明。相对于 RISC而言,CISC 的指令位数较长,所以称为复杂指令。如:x86 指令长度为 87位。RISC 计算机的 CPU通常具有高时钟频率,尽量使用单周期操作,其控制逻辑采用硬接线控制方式。RISC 机一般也采用流水线结构,遇到转移指令时可以采用延迟转移等办法来解决转移的相关性,并要求编译系统相配合。RISC和多处理机技术相结合是当前高速计算机发展的一个重要方向。RISC指令集有许多特征,其中最重要的有:(1)指令种类少,指令格式规范。RISC 指令集通常只使用一种或少数几种格式。指令长度单一(一般 4个字节)
41、,并且在字边界上对齐。字段位置,特别是操作码的位置是固定的。(2)寻址方式简化。几乎所有指令都使用寄存器寻址方式,寻址方式总数一般不超过 5个。其他更为复杂的寻址方式,如间接寻址等,则由软件利用简单的寻址方式来合成。(3)大量利用寄存器间操作。RISC 指令集中大多数操作都是寄存器到寄存器操作 (寄存器堆结构),只以简单的 LOAD和 STORE指令操作访问内存。因此,每条指令中访问的内存地址不会超过 1个,访问内存的操作不会与算术操作混在一起。(4)简化处理器结构。使用 RISC指令集,可以大大简化处理器的控制器和其他功能单元的设计,不必使用大量专用寄存器,特别是允许以硬件线路来实现指令操作
42、,而不必像 CISC处理器那样使用微程序来实现指令操作。因此 RISC处理器不必像 CISC处理器那样设置微程序控制存储器,就能够快速地直接执行指令。(5)便于使用 VLSI技术。随着 LSI和 VLSI技术的发展,整个处理器(甚至多个处理器)都可以放在一个芯片上。RISC 体系结构可以给设计单芯片处理器带来很多好处,有利于提高性能,简化 VLSI芯片的设计和实现。基于 VLSI技术,制造 RISC处理器要比 CISC处理器工作量小得多,成本也低得多。(6)加强了处理器并行能力。RISC 指令集能够非常有效地适合于采用流水线、超流水线和超标量技术,从而实现指令级并行操作,提高处理器的性能。目前
43、常用的处理器内部并行操作技术基本上是基于 RISC体系结构发展和走向成熟的。(7)优化的编译器:。RISC 的精简指令集使编译工作简单化。因为指令长度固定、格式少、寻址方式少,编译时不必在具有相似功能的许多指令中进行选择,也不必为寻址方式的选择而费心,同时易于实现优化,从而可以生成高效率执行的机器代码。大多数 RISC采用了 Cache方案,使用 Cache来提高取指的速度。而且有的 RISC甚至使用两个独立的Cache来改善性能:一个称为指令 Cache,另一个称为数据 Cache。这样取指和读数可以同时进行,互不干扰。正是 RISC体系所具有的优势,使它在高端系统得到了广泛的应用,而 CI
44、SC体系则在桌面系统中占据统治地位。如今,在桌面领域,RISC 也不断渗透,预计未来 RISC将一统江湖。Mac 电脑上采用的 PowerPC,以及工作站或服务器上采用的 HPPA-8XXX、 MIPSR10000 系列、DECAlpha 等,都是 RISC的 CPU。两者的简单对比如表 1-4所示。表 1-4 CISC和 RISC的简单对比表比较内容 CISC RISC指令系统 复杂,庞大 简单,精简指令数目 一般大于 200 一般小于 100指令格式 一般大于 4 一般小于 4寻址方式 一般大于 4 一般小于 4指令字长 不固定 等长可访存指令 不加限制 只有 LOAD/STORE指令各种
45、指令使用频率 相差很大 相差不大各种指令执行时间 相差很大 绝大多数在一个周期内完成优化编译实现 很难 较容易程序源代码长度 较短 较长控制器实现方式 绝大多数为微程序控制 绝大多数为硬布线控制软件系统开发时间 较短 较长为了快速传送大量数据,微型计算机中采用存储器直接访问技术,简称 DMA。用 DMA 方式传送时,在存储器和 (37) 之间直接建立高速传输数据的通路,不需要 (38) 的干预。利用 DMA方式传送数据时,数据的传送过程完全由称为 DMA控制器的硬件控制。 DMA 控制器具有下列功能:(1)向 CPU申请 (39) 传送。(2)在 CPU允许 DMA工作时,处理总线控制的转交。
46、(3)在 DMA期间管理 (40) ,控制数据传送。(4)确定数据传送的起始地址和 (41) ,并在传送过程中不断修正。(5)数据传送结束时,给出表示 DMA操作完成的信号。(分数:5.00)A.控制台B.硬件C.外部设备 D.数据长度E.CPUF.存储器G.DMAH.系统总线I.数据方向J.传输速率解析:A.控制台B.硬件C.外部设备D.数据长度E.CPU F.存储器G.DMAH.系统总线I.数据方向J.传输速率解析:A.控制台B.硬件C.外部设备D.数据长度E.CPUF.存储器G.DMA H.系统总线I.数据方向J.传输速率解析:A.控制台B.硬件C.外部设备D.数据长度E.CPUF.存储
47、器G.DMAH.系统总线 I.数据方向J.传输速率解析:A.控制台B.硬件C.外部设备D.数据长度 E.CPUF.存储器G.DMAH.系统总线I.数据方向J.传输速率解析:分析直接存储器存取(Direct Memory Access,DMA)方式可以使得数据从 I/O模块到主存的传输过程中,无需CPU的中转,这个工作转移给了 DMA控制器(DMAC)来完成,这种方式可以实现高速的数据传输。(1)DMA控制器DMAC既能访问系统总线,也能独立访问主存,因此,DMAC 能完成主存和 I/O设备之间的数据交换。DMAC的过程如图 1-7所示。地址寄存器是内存地址,每传递一个数据,将这个寄存器加 1,
48、长度寄存器减 1,当长度寄存器为 0时,给中断机构完成信号,通知 CPU进行后续处理。*当 CPU收到 I/O请求时,向 DMAC发出相应指令。DMAC 首先判断外设是否可用,如果可用,则填充地址寄存器、长度寄存器等,向 CPU发出总线请求信号,申请总线的处理权。CPU 收到总线请求信号时,让出总线控制权,然后 DMAC将数据在外设和内存指定区域之间进行传送,而长度寄存器保存的值随着数据的传送不断减小,当减小到 0时,通过中断机构向 CPU发出中断请求,CPU 响应中断,对内存中的数据进行后续的处理。(2)DMA的传送过程DMA的传送过程如图 1-8所示。*在 DMA传输过程中,CPU 停止访
49、问主存,只进行一些与总线无关的内部操作。这种方法常用于高速的 I/O设备。优点是减少系统总线控制权的交换次数,实现简单;缺点是使 CPU在 DMA过程中基本上无所事事。为了克服这个缺点,一般采用时间片轮转法和借用周期法。时间片轮转法按照一定时间间隔,将总线控制权分别轮换着交给 CPU和 DMAC。这样 CPU就不会停止工作,但往往外设的速度低,可能使得 DMAC的某些时间空转。因此,就效率而言,时间片轮转法的效率仍然不高。借用周期法是时间片轮转法的改进,即当有 DMA操作时,DMAC 控制总线访问内存,其他时间由 CPU控制总线。这种方式适合于外设速度远低于总线速度的高速主机,由于要判断 DMAC是否需要使用总线,所以实现起来比较复杂。(3)DMA方式和中断方式的区别DMA方式中使用到了中断,但是 DMA和中断这两种 I/O方式是有很大区别的。它们最根本的区别在于,使用中断方式时,主存和 I/O控制器之间的数据传送仍然需要用 CPU来操作,需要使用 CPU的寄存器等资源,如图 1-9所示。*