全国2005年4月高等教育自学考试计算机系统结构试题一、单项选择题(本大题共10小题,每小题1分,共10分)1.计算机系列化的优点不.包括()A.有利于计算机的升级换代B.便于组成多机系统和网络C.同一系列内的软件一定是向下兼容的D.在使用共同系统软件的基础上解决程序的兼容性2.计算机的结构与组成不.包括()A.操作系统B.硬联逻辑C.微程序控制D.所有硬件和固件的功能3.在流水线系统结构中,取指令、执行等操作是()A.顺序B.转移C.中断D.重叠4.重叠机器局部相关的处理方法有两类:推后后续指令对相关单元的读和()A.异步流动B.采用顺序流动C.设置相关直接通路D.调整指令流动的顺序5.在选择通道方式中,优先级高的磁盘等中高速设备,进行输入输出传送时,适合于采用的数据宽度是()A.定长块B.单字节C.可变长块D.单字加可变长块6.替换算法要解决的问题是()A.用户的虚页如何与主存的实页对应B.如何用主存的实页号替代多用户的虚页号C.当页面失效,选择主存中哪个页作为被替换的页D.新用户要进入主存,选择哪个用户作为被替换的用户7.下列不.是数据流计算特点的是()A.设置状态B.没有指令计数器C.没有变量的概念D.操作结果不产生副作用8.在尾数下溢处理方法中,平均误差最大的是()A.舍入法B.截断法C.恒置“1”法D.ROM查表法9.字串位并是指同时对一个字的所有位进行处理,其并行等级()A.不存在并行性B.较高的并行性C.最高一级的并行性D.已经开始出现的并行性10.设16个处理器编号分别为0,1,2,…,15,用Cube0互联函数时,与第13号处理器机联的处理器是()A.5号B.9号C.12号D.12号二、填空题(本大题共10小题,每空1分,共20分)11.多处理机程序并行性既存在于______内部,也存在于______外部。12.一般的说,虚拟机器不一定全部由______实现,有些操作也可用______实现。13.就流水线计算机而言,主要是通过______,让多个部件在时间上交错重叠地并行执运算和处理,以实现______。14.主存空间数相关是指______之间出现对主存同一单元要求______的关联。15.为提高流水线的______吞吐率,首先要找出______,然后设法消除它。16.阵列处理机主要通过______实现空间上的并行;多处理机主要通过______实现时间和空间上的异步并行。17.动态数据流计算机最主要的特点是让令牌带上______,使得在任意给定的时刻,数据流程序图任一条弧上允许出现多个带不同______的令牌。18.中断响应就是允许其中断CPU______运行,转去对该请求进行预处理,包括保存好______,调出有关处理该中断服务程序,准备运行。19.设多体单字低位交叉的存贮器,单体容量为I的m个分体,其Mj的编址模式为m×i+j,其中i=0,1,…,I-1;j=______,如m=4,M2体对应二进制地址码最低二位的状态为______。20.自定义数据表示包括标志符数据表示和______两类,标志符应由编绎程序建立,对______程序透明,以减轻应用程序员的负担。三、简答题(本大题共5小题,每小题6分,共30分)21.简述哈夫曼压缩概念的基本思想。22.RISC存在不足表现在哪些方面?23.简述SIMD系统的互连网络的设计目标。24.CPU写Cache时,会发生Cache与主存的对应复本内容不一致的现象,解决这个问题有哪些方法?各需要增加什么开销?25.简述计算机系统“由中间开始”设计的基本思想。四、简单应用题(本大题共2小题,每小题10分,共20分)26.试分析通过何种方法可以解决通用寄存器组数相关的问题?27.某机器有5级中断,中断响应次序为1→2→3→4→5,现要求中断处理次序为2→3→1→5→4。(1)设计各级中断处理程序的中断屏蔽位的状态,令“0”为开放,“1”为屏蔽。(见下表)中断处理程序级别中断级屏蔽位1级2级3级4级5级第1级第2级第3级第4级第5级(2)若在运行用户程序时,同时发生1、3级中断请求,而在1级中断服务未完成时,又发生2、3、4、5级中断,请画出处理机执行程序的全过程示意图(标出交换PSW的时间)。五、综合应用题(本大题共2小题,每小题10分,共20分)28.有表达式:a(b+cd+efg+h)在多处理机上,要求利用减少树高的方法加速运算。(1)画出并行算法的树形流程图;(2)确定处理机机数P、单台处理机顺序(串行)运算级数T1、P台处理机的运算级数Tp、加速比Sp和效率Ep各值。29.某虚拟存储器共8个页面,每页为1024个字,实际主存为4K个字,采用页表法进行地址映象。映象表的内容如下表所示。实页号装入位3111203021100100(1)求出会发生页面失效的全部虚页号;(2)求出虚地址为:0,3728,1023,1024,7800,6800的主存实地址。一、解释下列术语(每个2分,共20分)1.互连网络2.Amdahl定律3.分布存储多处理机4.Cache存储器5.系列机6.透明性7.LRU算法8.RISC9.超标量处理机10.流水线的链接技术二、填空题(每空1分,共20分)1.在虚拟存储器中有三种地址空间,一种是应用程序员用来编写程序的地址空间,称为,第二种是的地址空间,第三种是辅存地址空间,也就是磁盘存储器的地址空间。它们对应的三种地址分别是、和辅存地址。2.按照Flynn分类法,根据指令流和数据流的不同组织方式,计算机系统的结构可以分为SISD(单指令流单数据流)、、和。3.为了满足向量计算机中运算器带宽的要求,通常有两种存储器系统结构,它们是和。4.在CISC中,各种指令的使用频度相差悬殊,大致有以下的结果。大约有(比例)的指令使用频度较高,占据了(比例)的处理机时间。5.从不同的角度,我们可以把流水线分成不同的类别。如果根据流水线各功能段是否有反馈信号来划分,可以分为和;多功能流水线可以分为两种,即根据它在同一时间内是否能连成多种方式,可以分为和。6.消息寻径方式包括两种,即线路交换和包交换。其中包交换又包括、和等方式。7.RISC思想的精华是。我们通常用来描述流水线的工作过程。三、(15分)假设一条指令的执行过程分为“取指令”、“分析”和“执行”三段,每一段的时间分别为△t、△t和3△t。在下列各种情况下,分别写出连续执行n条指令所需要的时间表达式。1.顺序执行方式。(7分)2.“取指令”、“分析”和“执行”重叠。(8分)四、(15分)在下列不同结构的处理机上运行6×6的矩阵乘法C=A×B,计算所需要的最短时间。只计算乘法指令和加法指令的执行时间,不计算取操作数、数据传送和程序控制等指令的执行时间。加法部件和乘法部件的延迟时间都是3个时钟周期,另外,加法指令和乘法指令还要经过一个“取指令”和“指令译码”的时钟周期,每个时钟周期为20ns,C的初始值为“0”。各操作部件的输出端有直接数据通路连接到有关操作部件的输入端,在操作部件的输出端设置有足够容量的缓冲寄存器。[提示]:要完成上面的矩阵乘法,我们可以计算需要完成的各种操作的数量(假定A和B都是6×6的矩阵。C语言代码如下:intk;for(inti=0;i6;i++)for(intj=0;j6;j++){sum:0;for(k=0;k6;k++){sum+=A[i][k]×B[k][j]}C[i][j]=sum;}需要完成的乘法数目为6×6×6=216次;需要完成的加法数目为6×6×5=180次;1.处理机内只有一个通用操作部件,采用顺序方式执行指令。(7分)2.单流水线标量处理机,有一条两个功能的静态流水线,流水线每个功能段的延迟时间均为一个时钟周期,加法操作和乘法操作各经过3个功能段。(8分)五、(10分)已知四个程序在三台计算机上的执行时间(s,秒)如下:程序执行时间(s,秒)计算机A计算机B计算机C程序111020程序2100010020程序3500100050程序4100800100假设四个程序中每一个都有50,000,000条指令要执行。1.计算这三台计算机中每台机器上每个程序的MIPS速率。根据这些速率值,你能否得出有关三台计算机相对性能的明确结论?(6分)2.给出一种统计的方法(比如求均值)来估计三台计算机的相对性能,说明理由。(4分)六、(20分)用一条5个功能段的浮点加法器流水线计算每个功能段的延迟时间均相等,流水线的输出端和输入端之间有直接数据通路,而且设置有足够的缓冲寄存器。要求用尽可能短的时间完成计算。[提示]:首先需要考虑的是,10个数的和最少需要做几次加法。我们可以发现,加法的次数是不能减少的:9次;于是我们要尽可能快的完成任务,就只有考虑如何让流水线尽可能充满,这需要消除前后指令之间的相关。由于加法满足交换率和结合率,我们可以调整运算次序,如以下的指令序列,我们把中间结果寄存器称为R,源操作数寄存器称为A,最后结果寄存器称为F,并假设源操作数已经在寄存器中,则指令如下:I1:RI←A1+A2I2:R2←A3+A4I3:R3←A5+A6I4:R4←A7+A8I5:R5←A9+A10I6:R6←R1+n2I7:R7←R3+R4I8:R8←R5+R6I9:F←R7+R8这并不是唯一可能的计算方法。假设功能段的延迟为△t。1.画出流水线时空图。(8分)2.计算流水线的实际吞吐率、加速比和效率。(每个4分,共12分)答案及评分标准一、解释下列术语(每个2分,共20分)1.互连网络:互连网络是一种由开关元件按照一定的拓扑结构和控制方式构成的网络,用来实现计算机系统内部多个处理机或多个功能部件之间的小相互连接。2.Amdahl定律:系统中某一部件由于采用某种更快的执行方式后整个系统性能的提高与这种执行方式的使用频率或占总执行时间的比例有关。3.分布存储多处理机:是一种SIMD计算机,它包含重复设置的多个同样的处理单元,通过数据寻径网络以一定方式互相连结。每个处理单元有各自的本地存储器。4.Cache存储器:Cache是位于主存储器与处理器之间的高速缓冲存储器,它用来解决主存储器与处理器之间速度相差太大的问题。5.系列机:指在一个厂家内生产的具有相同的系统结构,但具有不同组成和实现的一系列不同型号的机器。6.透明性:指一种本来存在的事物或属性,从某种角度看似乎不存在的现象。7.LRU算法:即近期最少使用算法,它选择近期最少访问的页面作为被替换的页面。8.RISC:精简指令系统计算机,这种系统中,尽量简化指令功能,只保留那些功能简单,能在一个节拍内执行完成指令,较复杂的功能用一段子程序来实现。9.超标量处理机:通常把一个时钟周期内能够同时发射多条指令的处理机称为超标量处理机。10.流水线的链接技术:指一条指令的结果寄存器可能成为后继指令的操作数寄存器的技术。二、填空题(每空1分,共20分)1.虚拟地址空间主存储器虚拟地址(或者虚存地址)主存地址2.SIMDMISDMIM或者单指令流多数据流多指令流单数据流多指令流多数据流(答案顺序可以不同)3.存储器—存储器结构寄存器一寄存器结构4.20%80%5.线性流水线非线性流水线静态流水线动态流水线(前面两个答案顺序可以交换,后面两个答案顺序也可以交换)6.存储转发寻径虚拟直通寻径虫蚀寻径(答案顺序可以交换)7.减少指令平均执行周期数时空图三、(15分)1.(7分)顺序执行时每条指令用时=△t+△t+3△t=5△t,因此n条指令所需要的时间=5n*△t2.(8分)第一条指令完成需要时间=△t+△t+3△t=5△t,由于一条指令的“取指令”和“分析”阶段和下一条指令的“执行”阶段重叠,因此,此后每3△t完成一条指令,余下的n—1条指令用时(n—1)×3△t.因此n条指令所需要的时间=5△t+(n—1)×3△t=(3n+2)△t四、(15分)1.(7分)顺序执行时,每个乘法和加法指令都需要5个时钟周期(取指令、指令分析、指令执行);所以所需要的时间为:T=(216+180)×5×20ns=39600ns=39.6ms2.(8分)单