1、1计算机体系结构期末复习题答案系别 _ 班级 _ 姓名_ 学号_一、 填空题(每空 1 分)1.按照弗林(Flynn)分类法,计算机系统可以分为 4 类: SISD 计算机、 (SIMD 计算机) 、(MISD 计算机)和(MIMD 计算机) 。2. 改进之后的冯诺依曼计算机的只要特点是存储器为中心,总线结构,分散控制。3. 当前计算机系统中的存储系统是一个层次结构,其各层分别为:(通用寄存器,高速缓存,主存,辅存,脱机大容量存储器) 。4.高速缓冲存储器的地址映象方式有三种,它们分别是:(全向量方式,直接相联方式,组相联方式) 。5.虚拟存储器的三种管理方式是(段式管理,页式管理和段页式管理
2、) 。6.目前计算机中常用数据有(用户定义数据,系统数据和指令数据)三种类型。7.通常可能出现的流水线的相关性有(资源相关,数据相关和控制相关) 。8.解决中断引起的流水线断流的方法有(不精确断点法和精确断点法) 。9.目前向量处理机的系统结构有两种:(存储器存储器型和寄存器寄存器型) 。10.通用计算机基本指令分为 5 类,它们分别是:(数据传送类,运算类,程序控制类,输入输出类,处理机控制和调试类) 。11执行指令 x1=x2+x3;x4=x1-x5 会引起(RAW)类型的数据相关,执行指令x5=x4*x3;x4=x0+x6 会引起(WAR)类型的数据相关,执行指令 x6=x1+x2;x6
3、=x4*x5会引起(WAW)类型的数据相关。12多计算机网络中,通常出现的 4 种通信模式是(单播模式,选播模式,广播模式和会议模式) 。13.传统的冯诺依曼计算机是以控制驱动方式工作,以数据驱动方式工作的典型计算机是(数据流计算机) ,以需求驱动方式工作的典型计算机是(归约机) ,以模式匹配驱动方式工作的典型计算机是(人工智能计算机) 。二、名词解释(每题 2 分)1.计算机体系结构:计算机系统结构就是计算机的机器语言程序员或编译程序编写者所看到的外特性,是硬件子系统的概念结构及其功能特性。2.系列机:所谓系列机是指同一厂家生产的具有相同的系统结构,但采取了不同的组成和实现的技术方案,形成了
4、不同型号的多种机型。3.模拟:模拟是指用软件的方法在一台计算机上,实现另一台计算机的指令系统,被模拟的机器是不存在的,称为虚拟机,执行模拟程序的机器称宿主机。4.程序的局部性原理:程序访问局部性原理说明了计算机在程序执行过程中呈现出的一种规律,即程序往往重复使用它刚刚使用过的数据和指令。局部性分为时间上的局部性和空间上的局部性两种。所谓时间局部性是指近期被访问的代码,很可能不久又将再次被访问;空间局部性是指地2址上相邻近的代码可能会被连续地访问。5.MIPS:它表示每秒百万条指令数。6.高速缓冲存储器:高速缓冲存储器是存在于主存与 CPU 之间的一级存储器,由静态存储芯片(SRAM)组成,容量
5、比较小但速度比主存高得多,接近于 CPU 的速度。7.虚拟存储器:虚拟存储器是由主存储器和辅助存储器组成,通过必须的软件和硬件的支持,使得CPU 可以访问的存储器具有近似于主存的速度和近似于辅存的容量。8.快表:为了提高地址转换速度,缩短查表时间,采用一个小容量的、高速的相关存储部件,用来存放当前最经常用到的那一部分页表,采取按内容相联方式进行访问。这样,查页表的时间就相当于访问小容量的相关存储器的时间,从而大大地提高了速度,这个小容量相关存储器称为快表。9.程序定位:把一个程序交给处理机运行,必须首先把这个程序的指令和数据装入到主存储器中。一般情况下,程序所分配到的主存物理空间与程序本身的逻
6、辑地址空间是不同的,把指令和数据中的逻辑地址(相对地址 )转变成主存物理地址(绝对地址)的过程称为程序定位。10.延迟转移技术:为了使指令流水线不断流,在转移指令之后插入一条不相关的有效的指令,而转移指令被延迟执行,这种技术称为延迟转移技术。11.窗口重叠技术:为了能更简单、更直接地实现过程与过程之间的参数传递,大多数 RISC 机器的 CPU中都设置有数量较大的寄存器组,让每个过程使用一个有限数量的寄存器窗口,并让各个过程的寄存器窗口部分重叠,这就是窗口重叠技术。12.流水线技术:把一个重复的时序过程分成若干个子过程,每个子过程都可以有效地在其专用功能段上和其他子过程同时执行的一种技术,称为
7、流水线技术。13.动态流水线:动态流水线在同一时间内允许按多种不同运算的联结方式工作。14.静态流水线:静态流水线在同一时间内只能按一种运算的联结方式工作。15.线性流水线:线性流水线中,从输入到输出,每个功能段只允许经过一次,不存在反馈回路。16.非线性流水线:3非线性流水线存在反馈回路,从输入到输出过程中,某些功能段将数次通过流水线,这种流水线适合于进行线性递归的运算。17.流水线的吞吐率:流水线单位时间完成的任务数。18.超流水线计算机:超级流水线结构是把每一个流水线(一个周期) 分成多个 (例如 3 个)子流水线,而在每一个子流水线中取出的仍只有一条指令,但总的来看,在一个周期内取出了
8、三条指令。即在一个时钟周期内能够分时发射多条指令的处理机。19.向量的分段开采技术:当向量的长度大于向量寄存器的长度时,必须把长向量分成长度固定的段,采用循环结构处理这个长向量,这种技术称为向量循环开采技术,也称为向量分段开采技术。三、简答题(每题 5 分)1.什么是存储系统?答:存储系统是两个或两个以上的速度、容量、价格不同的存储器采用硬件,软件或软、硬件结合的办法联结成一个系统,使得整个系统看起来象一个存储器,其速度接近其中最快的一个,容量接近其中最大的一个,价格接近其中最便宜的一个。 2.简述全相联映象规则。答:(1)主存与缓存分成相同大小的数据块。(2)主存的某一数据块可以装入缓存的任
9、意一块空间中。3.简述直接相联映象规则。答:(1)主存与缓存分成相同大小的数据块。(2)主存容量应是缓存容量的整数倍,将主存空间按缓存的容量分成区,主存中每一区的块数与缓存的总块数相等。 (3)主存中某区的一块存入缓存时只能存入缓存中块号相同的位置。4.引起 Cache 与主存内容不一致的原因是什么?为了保持 Cache 的一致性,在单计算机系统中一般采取哪些措施?答:不一致的原因:(1) 由于 CPU 写 Cache,没有立即写主存(2) 由于 I/O 处理机或 I/O 设备写主存4采取措施:(1)全写法,亦称写直达法(WT 法Write through)方法:在对 Cache 进行写操作的
10、同时,也对主存该内容进行写入。(2)写回法(WB 法Write back)方法:在 CPU 执行写操作时,只写入 Cache,不写入主存。5影响虚拟存储器命中率的因素有哪些?它们是如何影响的?答:(1)页面大小:当页面比较小时,随着页面的增大,命中率明显提高,但当页面增大到一定值时,命中率不再增大,而随着页面的增大而下降。(2)主存容量:当主存容量增加时,命中率不断提高;当容量增大到一定程度后,命中率的提高就不大了。(3)页面调度方式:页面的调度都是发生在产生缺页中断时进行,因此在程序刚开始运行时命中率很低,为此可以采用预取式调度法,提高命中率。6.模拟与仿真的主要区别和适合场合是什么?答:模
11、拟是指用软件的方法在一台计算机上,实现另一台计算机的指令系统,被模拟的机器是不存在的,称为虚拟机,执行模拟程序的机器称宿主机。由于模拟采用纯软件解释执行方法,因此运行速度较慢,实时性差。因此只适合于移植运行时间短,使用次数少,而且在时间上没有约束和限制的软件。仿真是指用微程序的方法在一台计算机上实现另一台计算机的指令系统。执行微程序的机器为宿主机,被实现的为目标机。仿真的运行速度比模拟快,但仿真计算机的系统结构,因此对于系统结构差别较大的机器难于用仿真的方法实现软件移植。7.什么是程序直接定位方式?什么是程序静态定位方式?答:(1)直接定位方式 程序员 在编写程序时或编译程序对源程序进行编译时
12、,就已经确切知道该程序应占用的主存物理空间。因此可以直接使用实际主存物理地址来编写或编译程序。目前大多不用这种方式。 (2)静态定位方式 专门用装入程序来完成并要求程序本身可以重定位。在程序装入主存的过程中,把那些带有标识的指令或数据中的逻辑地址全部变成主存的物理地址,集中一次完成地址变换,一旦装入主存就不能再变动了。8.什么是程序动态定位方式?答:动态定位方式是利用类似变址寻址方法,有硬件支持完成。程序装入主存时,指令或数据地址不作修改,只把主存的起始地址装入该程序对应的基址寄存器中。在程序运行时,利用地址加法器,指令中的逻辑地址与已经存放在基址寄存器中的程序起始地址相加,就形成了主存的物理
13、地址。指令的地址码不需全部修改。9什么是指令的重叠解释方式?重叠解释方式有哪三种?答:所谓重叠解释方式,即是在两条相邻指令的解释过程中,某些不同解释阶段在时间上5存在重叠部分。重叠解释方式分三种:一次重叠、先行控制技术和多操作部件并行。10.什么是数据相关,数据相关冲突可分为哪三种类型?答:数据相关是在几条相近的指令间共用相同的操作数时发生的。例如,指令部件中的某一条指令在进行操作数地址计算时要用到一个通用寄存器的内容,而这个通用寄存器的内容又要由这条指令前的另一条指令产生,但前面那条指令还未进入执行部件,还未产生通用寄存器的内容,这时指令部件中的那条指令只能停下来等待。数据相关冲突可分为 R
14、AW、 WAR 和 WAW 三种类型。 11.如有一个经解释实现的计算机,可以按功能划分成 4 级。每一级为了执行一条指令需要下一级的 N 条指令解释。若执行第一级的一条指令需 K(ns)时间,那么执行第 2、3、4 级的一条指令各需要用多少时间(ns)?解: 第二级的一条指令需第 1 级的 N 条指令解释第二级的一条指令执行时间为 NKns;第三级的一条指令执行时间为 N2Kns;第四级的一条指令执行时间为 N3Kns。12.假设将某系统的某一部件的处理速度加快到 10 倍,但该部件的原处理时间仅为整个运行时间的 40%,则采用加快措施后能使整个系统的性能提高多少?解:由题意可知 fe=0.
15、4, re=10, 根据 Amdahl 定律11.56(0.4)./0.4ePoTS13.若某机要求有:三地址指令 4 条,单地址指令 192 条,零地址指令 16 条。 设指令字长为 12 位,每个地址码长 3 位。 问能否以扩展操作码为其编码?614.简述冯。诺依曼计算机的特征。答:一般认为其主要特征有以下几点:(1)机器以运算器为中心。除了完成运算以外,机器内部的数据传输都经过运算器。各部件的操作以及它们之间的协调由控制器集中控制。(2)存储器按一维线性编址,顺序访问存储器地址单元,每个存储单元的位数固定。 (3)程序存储,指令和数据无区别存放在存储器中,指令和数据一样可以送到运算器中进
16、行运算,指令与数据的区别主要在于地址区域不同。(4)指令在存储器中按其执行顺序存放,由一个顺序控制器(亦称程序计数器或指令计数器)指定即将被执行的指令地址。每读取一条指令后,计数器自动按顺序递增。 (5)指令由操作码和地址码组成,操作码指明操作类型,地址码指明操作数的地址和结果地址。(6)数据以二进制表示。15.试述页式管理虚拟存储器的工作过程。答:页式管理是将主存空间与虚存空间按固定的大小划分成块,每块称为一页。页的大小和划分与程序的逻辑功能无关,由操作系统软件来执行。一般而言,一页的大小应该是512Bit 的整数倍,因为辅助磁盘存储的物理块的大小为 512Bit。虚页中的页称为虚页,实存中
17、的各页称为实页,各虚页与实页之间按全相联方式映象,也就是虚页中的一页,可以存入主存中的任意一页的位置。当 CPU 给出所要访问的虚地址后,根据用户号访问基址寄存器,求得用户的页表首地址 Pa,然后与虚地址中的虚页号 P 相加,得到该页的表目,由此表目中得到该页存入主存中的实页号为 p,将该页号读出与页内地址组装即可得到主存的实际地址。 16.简述计算机系统结构用软件实现和用硬件实现各自的优缺点。答:硬件实现:速度快、成本高;灵活性差、占用内存少。软件实现:速度低、复制费用低 ;灵活性好、占用内存多。17.简述字节多路、数组多路和选择通道的数据传送方式。7答:(1)字节多路通道:用于连接多台慢速
18、外设,一般采用字节交叉传送数据的方式,即连接在通道上的各个设备轮流占用一个很短的时间片(通常小于 100 微秒)传输一个字节。 (2)选择通道:是指每一个通道连接一台高速外设,也可以连接多台相同的高速外设,但通道只能对各台外设串行服务。当某一设备工作时,则通道与该设备相连,一直到整个数组传送完后,才可能转向为其他设备服务。(3)数组多路通道:数组多路通道是字节多路通道与选择通道工作方式的综合,是在数组传送的基础上,再分时为多个高速外设服务。它每次选择一个高速设备后传送一个数据块,并轮流为多台外围设备服务。每台高速外设,如磁盘,其工作时间有寻址时间与传送时间之分。而寻址时间很长,在这段时间中并不
19、需要通道的控制,所以是通道空闲时间,那么通道可以为其他准备好的高速外设服务。四、问答与计算题(每题 15 分)1. 某机主存容量为 512KB,Cache 的容量为 32KB,每块的大小为 16 个字(或字节)。划出全相联方式主、缓存的地址格式、目 录 表格式及其容量。答:主存块数:512K/1632K 2 15;缓存块数:32K/162K 2 11;块内地址:162 4容量:与缓冲块数量相同即2 112048(或32K/162048) 。 主存块号Bi 块内地址 18 4 3 0主存地址 缓存块号Bi 块内地址 14 4 3 0缓存地址 主存块地址 缓存块地址 有效位 26 12 11 1
20、0目录表 2. 主存容量为 512KB,Cache 的容量为 32KB,每块为 64 个字(或字节), 缓存共分 128 组。划出组相联方式主、 缓存的地址格式、目录表格式及其容量。答:主存区数:512K/32K 162 4;缓存组数:1282 7; 缓存块数:32K/645122 9;组内块数:512/12842 2; 块内地址:642 680000000100100011010001010110011100000001001000110100010101100111100010011010101111001101111011111000100110101011110011011110111
21、1容量:与缓冲块数量相同即2 9512(或32K/64512) 。 区号 块号 缓存块号 有效位 8 5 4 3 2 1 0目录表 组号 缓存块号 块内地址 14 8 7 6 5 0缓存地址 区号 组号 块号 块内地址 18 15 14 8 7 6 5 0主存地址 3. 什么是方体置换?写出方体置换函数的表达式,假设互联网有 16 个结点,请画出 4 个方体置换函数(即 C0,C1,C2,C3)的输入端与 输出端的连接关系。答:方体置换是实现二进制地址编号中第 k 位位值不同的输入端输出端之间的连接。其表达式为: C0 立方置换函数:)()( 01210121 XXXXC kknknk )(
22、032309000100100011010001010110011100010010001101000101011001111001101010111100110111101111100110101011110011011110111100000001001000110100010101100111000000010010001101000101011001111000100110101011110011011110111110001001101010111100110111101111C1 立方置换函数:C2 立方置换函数:)()( 012301231 XXC0000 00001000 1000)()( 01230123XXC1000000001001000110100010101100111000000010010001101000101011001111000100110101011110011011110111110001001101010111100110111101111C3 立方置换函数: )()( 01230123XXC