自考:计算机系统结构考前复习资料.doc

上传人:文库蛋蛋多 文档编号:4122106 上传时间:2023-04-06 格式:DOC 页数:55 大小:601.50KB
返回 下载 相关 举报
自考:计算机系统结构考前复习资料.doc_第1页
第1页 / 共55页
自考:计算机系统结构考前复习资料.doc_第2页
第2页 / 共55页
自考:计算机系统结构考前复习资料.doc_第3页
第3页 / 共55页
自考:计算机系统结构考前复习资料.doc_第4页
第4页 / 共55页
自考:计算机系统结构考前复习资料.doc_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《自考:计算机系统结构考前复习资料.doc》由会员分享,可在线阅读,更多相关《自考:计算机系统结构考前复习资料.doc(55页珍藏版)》请在三一办公上搜索。

1、第一章计算机系统结构的基本概念 从处理数据的角度看,并行级别有位串字串,位并字串,位片串字并,全并行。位串字串和位并字串基本上构成了SIMD。位片串字并的例子有:相联处理机STARAN,MPP。全并行的例子有:阵列处理机ILLIAC IV。 从加工信息的角度看,并行级别有存储器操作并行,处理器操作步骤并行,处理器操作并行,指令、任务、作业并行。 存储器操作并行是指可以在一个存储周期内并行读出多个CPU字的,采用单体多字、多体单字或多体多字的交叉访问主存系统,进而采用按内容访问方式,位片串字并或全并行方式,在一个主存周期内实现对存储器中大量字的高速并行操作。例子有并行存储器系统,以相联存储器为核

2、心构成的相联处理机。 处理器操作步骤并行是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。例子有流水线处理机。 处理器操作并行是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。擅长对向量、数组进行处理。例子有阵列处理机。 指令、任务、作业并行是指多个独立的处理机分别执行各自的指令、任务、作业。例子有多处理机,计算机网络,分布处理系统。 并行性的开发途径有时间重叠(Time Interleaving),资源重复(Resource Replication),资源共享(Resource Sharing)。 时

3、间重叠是指在并行性概念中引入时间因素,让多个处理过程在时间上错开,轮流重复地执行使用同一套设备的各个部分,加快硬件周转来赢得速度。例子有流水线处理机。 资源重复是指一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。例子有阵列处理机,相联处理机。 资源共享是指用软件方法让多个用户按一定时间顺序轮流使用同一套资源以提高资源的利用率,从而提高系统性能。例子有多处理机,计算机网络,分布处理系统。 SISD:一个指令部件控制一个操作部件,实现一条指令对一个数据的操作。例子有传统的单处理机 SIMD:一个指令部件同时控制多个处理单元,实现一条指令对多个数据的操作。例子有阵列处理机,相联处理机

4、。 MIMD:多个独立的处理机分别执行各自的指令、任务、作业,实现指令、任务、作业并行的多机系统,是多个SISD的集合,也称多倍SISD系统(MSISD)。例子有多处理机,计算机网络,分布处理系统。 exercises: 1.有一台经解释实现的计算机,可以按功能划分成4级,每一级为了执行一条指令,需要下一级的N条指令来解释。如果执行第1级的一条指令要Kns时间,那么执行第2、第3和第4级的一条指令各需要用多少时间? 解答:执行第2、第3和第4级的一条指令各需要KNns、KN2ns、KN3ns的时间。1.有一个计算机系统可按功能分成4级,每级的指令互不相同,每一级的指令都比其下一级的指令在效能上

5、强M倍,即第i级的一条指令能完成第i-1级的M条指令的计算量。现若需第i级的N条指令解释第i+1级的一条指令,而有一段第1级的程序需要运行Ks,问在第2、3和4级上一段等效程序各需要运行多长时间? 答: 第2级上等效程序需运行:(N/M)*Ks。第3级上等效程序需运行:(N/M)*(N/M)*Ks。第4级上等效程序需运行:(N/M)*(N/M)*(N/M)*Ks。 note: 由题意可知:第i级的一条指令能完成第i-1级的M条指令的计算量。而现在第i级有N条指令解释第i+1级的一条指令,那么,我们就可以用N/M来表示N/M 表示第i+1级需(N/M)条指令来完成第i级的计算量。所以,当有一段第

6、1级的程序需要运行Ks时,在第2级就需要(N/M)Ks,以此类推 2.硬件和软件在什么意义上是等效的?在什么意义上又是不等效的?试举例说明。 答:软件和硬件在逻辑功能上是等效的,原理上,软件的功能可用硬件或固件完成,硬件的功能也可用软件模拟完成。但是实现的性能价格比,实现的难易程序不同。 在DOS操作系统时代,汉字系统是一个重要问题,早期的汉字系统的字库和处理程序都固化在汉卡(硬件)上,而随着CPU、硬盘、内存技术的不断发展,UCDOS把汉字系统的所有组成部份做成一个软件。 3.试以实例说明计算机系统结构、计算机组成与计算机实现之间的相互关系与影响。 答:计算机系统结构、计算机组成、计算机实现

7、互不相同,但又相互影响。 (1)计算机的系统结构相同,但可采用不同的组成。如IBM370系列有115、125、135、158、168等由低档到高档的多种型号机器。从汇编语言、机器语言程序设计者看到的概念性结构相同,均是由中央处理机/主存,通道、设备控制器,外设4级构成。其中,中央处理机都有相同的机器指令和汇编指令系统,只是指令的分析、执行在低档机上采用顺序进行,在高档机上采用重叠、流水或其它并行处理方式。 (2)相同的组成可有多种不同的实现。如主存器件可用双极型的,也可用MOS型的;可用VLSI单片,也可用多片小规模集成电路组搭。 (3)计算机的系统结构不同,会使采用的组成技术不同,反之组成也

8、会影响结构。如为实现A:=B+CD:=E*F,可采用面向寄存器的系统结构,也可采用面向主存的三地址寻址方式的系统结构。要提高运行速度,可让相加与相乘并行,为此这两种结构在组成上都要求设置独立的加法器和乘法器。但对面向寄存器的系统结构还要求寄存器能同时被访问,而对面向主存的三地址寻址方式的系统结构并无此要求,倒是要求能同时形成多个访存操作数地址和能同时访存。又如微程序控制是组成影响结构的典型。通过改变控制存储器中的微程序,就可改变系统的机器指令,改变结构。如果没有组成技术的进步,结构的进展是不可能的。 综上所述,系统结构的设计必须结合应用考虑,为软件和算法的实现提供更多更好的支持,同时要考虑可能

9、采用和准备采用的组成技术。应避免过多地或不合理地限制各种组成、实现技术的采用和发展,尽量做到既能方便地在低档机上用简单便宜的组成实现,又能在高档机上用复杂较贵的组成实现,这样,结构才有生命力;组成设计上面决定于结构,下面受限于实现技术。然而,它可与实现折衷权衡。例如,为达到速度要求,可用简单的组成但却是复杂的实现技术,也可用复杂的组成但却是一般速度的实现技术。前者要求高性能的器件,后者可能造成组成设计复杂化和更多地采用专用芯片。 组成和实现的权衡取决于性能价格比等因素;结构、组成和实现所包含的具体内容随不同时期及不同的计算机系统会有差异。软件的硬化和硬件的软件都反映了这一事实。VLSI的发展更

10、使结构组成和实现融为一体,难以分开。 4.什么是透明性概念?对计算机系统结构,下列哪些是透明的?哪些是不透明的? 存储器的模m交叉存取;浮点数据表示;I/O系统是采用通道方式还是外围处理机方式;数据总线宽度;字符行运算指令;阵列运算部件;通道是采用结合型还是独立型;PDP-11系列的单总线结构;访问方式保护;程序性中断;串行、重叠还是流水控制方式;堆栈指令;存储器最小编址单位;Cache存储器。 答:透明指的是客观存在的事物或属性从某个角度看不到。 透明的有:存储器的模m交叉存取;数据总线宽度;阵列运算部件;通道是采用结合型还是独立型;PDP-11系列的单总线结构串行、重叠还是流水控制方式;C

11、ache存储器。 不透明的有:浮点数据表示;I/O系统是采用通道方式还是外围处理机方式;字符行运算指令;访问方式保护;程序性中断;堆栈指令;存储器最小编址单位。 5.从机器(汇编)语言程序员看,以下哪些是透明的? 指令地址寄存器;指令缓冲器;时标发生器;条件寄存器;乘法器;主存地址寄存器;磁盘外设;先行进位链;移位器;通用寄存器;中断字寄存器。 答:透明的有:指令缓冲器、时标发生器、乘法器、先进先出链、移位器、主存地址寄存器。 6.下列哪些对系统程序员是透明的?哪些对应用程序员是透明的? 系列机各档不同的数据通路宽度;虚拟存储器;Cache存储器;程序状态字;“启动I/O”指令;“执行”指令;

12、指令缓冲寄存器。 答:对系统程序员透明的有:系列机各档不同的数据通路宽度;Cache存储器;指令缓冲寄存器; 对应用程序员透明的有:系列机各档不同的数据通路宽度;Cache存储器;指令缓冲寄存器;虚拟存储器;程序状态字;“启动I/O”指令。 note:系列机各档不同的数据通路宽度、Cache存贮器、指令缓冲寄存器属于计算机组成,对系统和程序员和应用程序员都是透明的。 虚拟存贮器、程序状态字、“启动I/O”指令,对系统程序员是不透明的,而对应用程序员却是透明的。“执行”指令则对系统程序员和应用程序员都是不透明的。 7.想在系列机中发展一种新型号机器,你认为下列哪些设想是可以考虑的,哪些则不行的?

13、为什么? 新增加字符数据类型和若干条字符处理指令,以支持事务处理程序的编译。 (2)为增强中断处理功能,将中断分级由原来的4级增加到5级,并重新调整中断响应的优先次序。 (3)在CPU和主存之间增设Cache存储器,以克服因主存访问速率过低而造成的系统性能瓶颈。 (4)为解决计算误差较大,将机器中浮点数的下溢处理方法由原来的恒置“1”法,改为用ROM存取下溢处理结果的查表舍入法。 (5)为增加寻址灵活性和减少平均指令字长,将原等长操作码指令改为有3类不同码长的扩展操作码;将源操作数寻址方式由操作码指明改成如VAX-11那种设寻址方式位字段指明。 (6)将CPU与主存间的数据通路宽度由16位扩展

14、成32位,以加快主机内部信息的传送。 (7)为减少公用总路线的使用冲突,将单总线改为双总线。 (8)把原0号通用寄存器改作堆栈指示器。 答:可以考虑的有:1,3,4,6,7。不可以考虑的有:2,5,8。 原则是看改进后能否保持软件的可移植性。 P.S.为了能使软件长期稳定,就要在相当长的时期里保证系统结构基本不变,因此在确定系列结构时要非常慎重。其中最主要是确定好系列机的指令系统、数据表示及概念性结构。既要考虑满足应用的各种需要和发展,又要考虑能方便地采用从低速到高速的各种组成的实现技术,即使用复杂、昂贵的组成实现时,也还能充分发挥该实现方法所带来的好处。 8.并行处理计算机除分布处理、MPP

15、和机群系统外,有哪4种基本结构?列举它们各自要解决的主要问题。 答:除了分布处理,MPP和机群系统外,并行处理计算机按其基本结构特征可分为流水线计算机,阵列处理机,多处理机和数据流计算机四种不同的结构。 流水线计算机主要通过时间重叠,让多个部件在时间上交划重叠地并行招待运算和处理,以实现时间上的并行。它主要应解决:拥塞控制,冲突防止,流水线调度等问题。 阵列处理机主要通过资源重复实现空间上的并行。它主要应解决:处理单元灵活、规律的互连模式和互连网络设计,数据在存储器中的分布算法等问题。 多处理机主要通过资源共享,让一组计算机在统一的操作系统全盘控制下,实现软件和硬件各级上的相互作用,达到时间和

16、空间上的异 步并行。它主要应解决:处理机间互连等硬件结构,进程间的同上步和通讯,多处理机调度等问题。 数据流计算机设有共享变量的概念,指令执行顺序只受指令中数据的相关性制约。数据是以表示某一操作数或参数已准备就绪的数据令牌直接在指令之间传递。它主要应解决:研究合适的硬件组织和结构,高效执行的数据流语言等问题。 9.计算机系统的3T性能目标是什么? 答:计算机系统的3T性能目标是 1TFLOPS计算能力,1TBYTE主存容量 和 1TBYTES的I/O带宽第二章数据表示与指令系统 1.尾数的rm进制数位m和尾数的二进制数位m的关系 存在m=m/log2(rm)这种关系是因为,在机器中,一个rm进

17、制的数位是用log2(rm)个机器数位来表示的。 假设rm=8,尾数为20,则m=2,八进制数20转换成二进制数为10000,其二进制数位,即机器数位m=5。2=5/log2(8)。 note:这里的等号并不表示纯粹数学意义上的“等于”。 2.可表示的尾数个数公式 rmm(rm-1)/rm。 对于rm进制的数来说,每个数位均可以有0到rm-1,即rm个码。 m个rm进制数位共有rmm种编码。但课本中讨论的是规格化数,即尾数的小数点后第一个数位不为零的数,所以,应该去掉小数点后第一个数位是0的那些非规格化的数。显然,非规格化数的个数占了全部尾数编码总数的1/rm的比例,所以可表示的浮点数规格化的

18、尾数个数应该是:rmm(1-1/rm)。 exercises: 1.某模型时机共有7种指令,各指令使用频率分别为0.35,0.25,0.20,0.10,0.05,0.03,0.02,有8个通用数据寄存器和2个变址寄存器。 (1) 要求操作码的平均长最短,请设计操作码的编码,并计算所设计操作码的平均长。(4分) (2) 设计8位长度的寄存器寄存器型指令3种,16位长度的寄存器存储器变址寻址方式指令4条,变址范围不小于正、负127。请写出指令格式,并给出各字段的长度和操作码编码。(6分) 解答: (1)全Huffman编码的平均码长是可用的二进制位编码中平均码长最短的编码。 全Huffman编码的

19、平均码长=2*(0.35+0.25+0.20)+3*0.10+4*0.05+5*(0.02+0.03)=2.35 (2) 由于有8个通用数据寄存器和2个变址寄存器,所以通用寄存器用3位表示,变址寄存器用1位表示,8位的寄存器-寄存器型指令,3个操作码编码为00、01、10,16位的寄存器-存储器变址寻址方式指令, 4个操作码编码为1100、1101、1110、1111,2位 3位 3位OP R1 R2操作码 寄存器1 寄存器24位 3位 1位 8位OP R1 X d操作码 寄存器1 变址寄存器 相对位移 主存逻辑地址1.数据结构和机器的数据表示之间是什么关系?确定和引入数据表示的基本原则是什么

20、? 答:数据表示是能由硬件直接识别和引用的数据类型。数据结构反映各种数据元素或信息单元之间的结构关系。 数据结构要通过软件映象变换成机器所具有的各种数据表示实现,所以数据表示是数据结构的组成元素。不同的数据表示可为数据结构的实现提供不同的支持,表现在实现效率和方便性不同。数据表示和数据结构是软件、硬件的交界面。 除基本数据表示不可少外,高级数据表示的引入遵循以下原则: (1)看系统的效率有否提高,是否养活了实现时间和存储空间。 (2)看引入这种数据表示后,其通用性和利用率是否高。 2.标志符数据表示与描述符数据表示有何区别?描述符数据表示与向量数据表示对向量数据结构所提供的支持有什么不同? 答

21、:标志符数据表示与描述符数据表示的差别是标志符与每个数据相连,合存于同一存储单元,描述单个数据的类型特性;描述符是与数据分开存放,用于描述向量、数组等成块数据的特征。 描述符数据表示为向量、数组的的实现提供了支持,有利于简化高级语言程序编译中的代码生成,可以比变址法更快地形成数据元素的地址。但描述符数据表示并不支持向量、数组数据结构的高效实现。而在有向量、数组数据表示的向量处理机上,硬件上设置有丰富的赂量或阵列运算指令,配有流水或阵列方式处理的高速运算器,不仅能快速形成向量、数组的元素地址,更重要的是便于实现把向量各元素成块预取到中央处理机,用一条向量、数组指令流水或同时对整个向量、数组高速处

22、理如让硬件越界判断与元素运算并行。这些比起用与向量、阵列无关的机器语言和数据表示串行实现要高效的多。 3.堆栈型机器与通用寄存器型机器的主要区别是什么?堆栈型机器系统结构为程序调用的哪些操作提供了支持? 答:通用寄存器型机器对堆栈数据结构实现的支持是较差的。表现在:(1)堆栈操作的指令少,功能单一;(2)堆栈在存储器内,访问堆栈速度低;(3)堆栈通常只用于保存于程序调用时的返回地址,少量用堆栈实现程序间的参数传递。 而堆栈型机器则不同,表现在:(1)有高速寄存器组成的硬件堆栈,并与主存中堆栈区在逻辑上组成整体,使堆栈的访问速度是寄存器的,容量是主存的;(2)丰富的堆栈指令可对堆栈中的数据进行各

23、种运算和处理;(3)有力地支持高级语言的编译;(4)有力地支持子程序的嵌套和递归调用。 堆栈型机器系统结构有力地支持子程序的嵌套和递归调用。在程序调用时将返回地址、条件码、关键寄存器的内容等全部压入堆栈,待子程序返回时,再从堆栈中弹出。 4.设某机阶值6位、尾数48位,阶符和数符不在其内,当尾数分别以2、8、16为基时,在非负阶、正尾数、规格化数情况下,求出其最小阶、最大阶、阶的个数、最小尾数值、最大尾数值、可表示的最小值和最大值及可表示的规格化数的总个数。 解:依题意知:p=6 m=48 rm=2, 8, 16,m=m/log2(rm),列下表: p=6,m=48,rm=2(m=48)p=6

24、,m=48,rm=8(m=16)p=6,m=48,rm=16(m=12)最小阶(非负阶,最小为0)000最大阶(2p-1)26-126-126-1最小尾数值(rm(-1)1/21/81/16最大尾数值(1-rm(-m)1-2(-48)1-8(-16),即(1-2(-48)1-16(-12),即(1-2(-48)可表示的最小值1/21/81/16可表示的最大值263*(1-2(-48)863*(1-8(-16)1663*(1-16(-12)阶的个数(2p)262626可表示的尾数的个数248*(2-1)/2816*(8-1)/81612*(16-1)/16可表示的规格化数的个数26*248*(2

25、-1)/226*816*(8-1)/826*1612*(16-1)/16note:可表示的最小值=rm(最小阶)*最小尾数值=rm0*rm(-1)=rm(-1); 可表示的最大值=rm(最大阶)*最大尾数值=rm(2p-1)*(1-rm(-m); 可表示的尾数的个数=rmm*(rm-1)/rm; 可表示的规格化数的个数=阶的个数*尾数的个数=2p*rmm*(rm-1)/rm。 5.(1)浮点数系统使用的阶基rp=2,阶值位数p=2,尾数基值rm=10,以rm为基的尾数位数m=1,按照使用的倍数来说,等价于m=4, 试计算在非负阶、正尾数、规格化情况下的最小尾数值、最大尾数值、最大阶值、可表示的

26、最小值和最大值及可表示数的个数。 (2)对于rp=2,p=2,rm=4,m=2,重复以上计算。 解:依题意列下表: p=2,rm=10,m=1p=2,rm=4,m=2最小尾数值10-1=0.14-1=0.25最大尾数值1-10-1=0.91-4-2=15/16最大阶值2p-1=33可表示的最小值0.10.25可表示的最大值103*0.9=90043*15/16=60可表示数的个数3648题中“按照使用的倍数来说,等价于m=4,” 这个m=4,因为231024,等价为实际要4个二进制位,表示RM=10为基的一位 6.由4位数(其中最低位为下溢附加位)经ROM查表舍入法,下溢处理成3位结果,设计使

27、下溢处理平均误差接近于零的ROM表,列出ROM编码表地址与内容的对应关系。 解:ROM编码表地址与内容的对应关系 地址0000000100100011010001010110011110001001101010111100110111101111内容0000010010100100110111001001011011101101111111117.变址寻址和基址寻址各适用于何种场合?设计一种只用6位地址码就可指向一个大地址空间中任意64个地址之一的寻址机构。 答:基址寻址是对逻辑地址空间到物理地址空间变换的支持,以利于实现程序的动态再定位。变址寻址是对数组等数据块运算的支持,以利于循环。将大地

28、址空间64个地址分块,用基址寄存器指出程序所在块号,用指令中6位地址码表示该块内64 个地址之一,这样基址和变址相结合可访问大地址任意64个地址之一。比如地址空间很大,为0-1023,只用6位地址码就可以指向这1024个地址中的任意64个。 剖析:比如地址空间很大,1024,就是分成16个块,块号放在寄存器中,块内地址放在地址位中,寄存器内容和地址位结合,就能达到要求了。 8.经统计,某机器14条指令的使用频度分别为:0.01,0.15,0.12,0.03,0.02,0.04,0.02,0.04,0.01,0.13,0.15,0.14,0.11,0.03。分别求出用等长码、Huffman码、只

29、有两种码长的扩展操作码3种编码方式的操作码平均码长。 解:等长操作码的平均码长=4位;Huffman编码的平均码长=3.38位;只有两种码长的扩展操作码的平均码长=3.4位。 9.若某机要求:三地址指令4条,单地址指令255条,零地址指令16条。设指令字长为12位每个地址码长为3位。问能否以扩展操作码为其编码?如果其中单地址指令为254条呢?说明其理由。 答:不能用扩展码为其编码。 指令字长12位,每个地址码占3位; 三地址指令最多是2(12-3-3-3)=8条, 现三地址指令需4条, 可有4条编码作为扩展码, 单地址指令最多为42323=28=256条, 现要求单地址指令255条,可有一条编

30、码作扩展码 零地址指令最多为1238条 不满足题目要求 不可能以扩展码为其编码。 若单地址指令254条,可以用扩展码为其编码。 依据中推导,单地址指令中可用2条编码作为扩展码 零地址指令为22316条,满足题目要求 note: 三地址指令格式: 操作码 地址码 地址码 地址码 3位 3位 3位 3位单地址指令格式: 操作码 地址码 9位 3位所以前面9位由于三地址指令用了最前面3位,还有中间6位可作为编码(也就是总共可以有9位作为单地址指令的指令操作码的编码)。减去3地址指令的4条,有4*26=256条,但由于韪目要求要有255条,所以剩下一个编码,已经用了9位的全部编码,最后零地址指令(全部

31、12位都可作为操作码的编码)还有1*23=8 (这是12位编码中最后三位的)若只要求254种,则可以有(256-254)*23=16条 10.某机指令字长16位。设有单地址指令和双地址指令两类。若每个地址字段为6位.且双地址指令有X条。问单地址指令最多可以有多少条? 答:单地址指令最多为(16-X)26 P.S.双地址指令最多是2(16-6-6)=24=16条, 现双地址指令有X条, 可有(16-X)条编码作为扩展码, 单地址指令最多为(16-X)26=256条 11.何谓指令格式的优化?简要列举包括操作码和地址码两部分的指令格式优化可采用的各种途径和思路。 答:指令格式的优化指如何用最短位数

32、表示指令的操作信息和地址信息,使程序中指令的平均字长最短。 操作码的优化 采用Huffman编码和扩展操作码编码。 对地址码的优化: 采用多种寻址方式; 采用0、1、2、3等多种地址制; 在同种地址制内再采用多种地址形式,如寄存器-寄存器型、寄存器-主存型、主存-主存型等;在维持指令字在存储器内按整数边界存储的前提下,使用多种不同的指令字长度。 12.某模型机9条指令使用频率为: ADD(加) 30% SUB(减) 24% JOM(按负转移) 6%STO(存) 7% JMP(转移) 7% SHR(右移) 2%CIL(循环) 3% CLA(清加) 20% STP(停机) 1%要求有两种指令字长,

33、都按双操作数指令格式编排,采用扩展操作码,并限制只能有两种操作码码长。设该机有若干通用寄存器,主存为16位宽,按字节编址,采用按整数边界存储。任何指令都在一个主存周期中取得,短指令为寄存器-寄存器型,长指令为寄存器-主存型,主存地址应能变址寻址。 (1)仅根据使用频率,不考虑其它要求,设计出全Huffman操作码,计算其平均码长; (2)考虑题目全部要求,设计优化实用的操作形式,并计算其操作码的平均码长; (3)该机允许使用多少可编址的通用寄存器? (4)画出该机两种指令字格式,标出各字段之位数; (5)指出访存操作数地址寻址的最大相对位移量为多少个字节? 解:第(1)和(2)中Huffman

34、和扩展操作码的编码及平均码长如下表: 指令Ii使用频度PiHuffman编码扩展操作码编码I1I2I3I4I5I6I7I8I930%24%20%7%7%6%3%2%1%10000111001101111011110111110111111000110110001100111010110111110011101西个马pili2.612.78(3)8个。 (4)两种指令格式如下图所示: 2位 3位 3位OP R1 R2操作码 寄存器1 寄存器25位 3位 3位 5位OP R1 X d操作码 寄存器1 变址寄存器 相对位移 主存逻辑地址 (5)访存操作数地址寻址的最大相对位移量为32个字节。 13.

35、设计RISC机器的一般原则及可采用的基本技术有那些? 答:一般原则: (1)确定指令系统时,只选择使用频度很高的指令及少量有效支持操作系统,高级语言及其它功能的指令; (2)减少寻址方式种类,一般不超过两种; (3)让所有指令在一个机器周期内完成; (4)扩大通用寄存器个数,一般不少于32个,尽量减少访存次数; (5)大多数指令用硬联实现,少数用微程序实现; (6)优化编译程序,简单有效地支持高级语言实现。 基本技术: (1)按RISC一般原则设计,即确定指令系统时,选最常用基本指令,附以少数对操作系统等支持最有用的指令,使指令精简。编码规整,寻址方式种类减少到1、2种。 (2)逻辑实现用硬联

36、和微程序相结合。即大多数简单指令用硬联方式实现,功能复杂的指令用微程序实现。 (3)用重叠寄存器窗口。即:为了减少访存,减化寻址方式和指令格式,简单有效地支持高级语言中的过程调用,在RISC机器中设有大量寄存嚣,井让各过程的寄存器窗口部分重叠。 (4)用流水和延迟转移实现指令,即可让本条指令执行与下条指令预取在时间上重叠。另外,将转移指令与其前面的一条指令对换位置,让成功转移总是在紧跟的指令执行之后发生,使预取指令不作废,节省一个机器周期。 (5)优化设计编译系统。即尽力优化寄存器分配,减少访存次数。不仅要利用常规手段优化编译,还可调整指令执行顺序,以尽量减少机器周期等。 14.简要比较CIS

37、C机器和RISC机器各自的结构特点,它们分别存在哪些不足和问题?为什么说今后的发展应是CISC和RISC的结合? 答: CISC结构特点:机器指令系统庞大复杂。 RISC结构特点:机器指令系统简单,规模小,复杂度低。 CISC的问题: (1)指令系统庞大,一般200条以上; (2)指令操作繁杂,执行速度很低; (3)难以优化生成高效机器语言程序,编译也太长,太复杂; (4)由于指令系统庞大,指令的使用频度不高,降低系统性能价格比,增加设计人员负担。 RISC的问题; (1)由于指令少,在原CISC上一条指令完成的功能现在需多条RISC指令才能完成,加重汇编语言程序设计负担,增加了机器语言程序长

38、度,加大指令信息流量。 (2)对浮点运算和虚拟存储支持不很强。 (3)RISC编译程序比CISC难写。 由于RISC和CISC各有优缺点,在设计时,应向着两者结合,取长补短方向发展。第三章总线、中断与输入输出系统 中断嵌套的原则:在处理某级中断请求时,只能比它的中断处理级别高的中断请求才能中断其处理,等呼应和处理完后再继续处理原先的那个中断请求。 为了领会中断响应排队器对中断响应优先次序是用硬件固定的,以及通过由操作系统给各中断级服务程序现行程序状态字中的中断级屏蔽位设置不同的状态,可以改变中断处理(完)的次序这两个要点,下图给出了一个中断响应硬件部分的简单逻辑原理示意图。图中略去了某些实现上

39、的具体细节,因为这些已不是本课程要讨论的内容。 中断级屏蔽位是程序状态字中的一个组成部分。程序状态字是将散布于系统各部分,反映程序工作时某些关键性硬件的状态,组合在一起所构成的字,有的计算机也称其为处理器状态字或程序换道区。每类程序均在主存中指定一个区域来放置其程序状态字。运行一个程序或进程时,就会将其程序状态字从主存指定单元或区域取出送到分散于系统各部分的寄存器或计数器中,建立起运行此程序或进程的环境。一个程序或进程在退出运行时,也会将反映该程序状态的这些寄存器或计数器内容组拼成程序状态字,存回该程序或进程在主存中的指定单元或区域里。因此,程序或进程的切换,只需要通过硬件启动的交换新旧程序状

40、态字的内容即可快速完成。例如,在IBM370系列机上,程序状态字为64位,等于它的长字,交换程序状态字只需硬件启动写长字和读长字两次访存即可完成。尽管中断请求是随机发出的,为了便于精确保存中断的断点以及在中断处理完后又能返回到原中断处,中断响应排队器总是在每条指令执行到最后一个机器周期的最后一个时钟周期时,对目前到达中断响应排队器入口的所有中断请求排一次队,择优进行响应。在中断响应排队器相应的输出端产生出响应信号。此信号经中断级服务程序入口地址形成硬件,生成出该级中断服务程序的程序状态字在内存区中所存放的地址。同时,经中断响应控制信号启动,进行新旧程序状态字的交换,完成程序的切换。被中断的程序

41、的断点地址(即程序计数器的内容),由硬件自动压入返回地址堆栈,予以保存。系统切换到新的程序或进程后,继续运行下去。如果新的程序或进程是一个中断服务程序,在运行结束,执行到中断返回指令时,就会从堆栈中弹出所保存的返回地址,再次交换程序状态字,系统又重新返回到原被中断的程序,恢复运行。 1.如何设置中断级屏蔽位寄存器中的中断屏蔽码? 设中断级屏蔽位“1”对应于开放,“0”对应于屏蔽。 第i级中断处理程序级别的各级中断级屏蔽位中应有i-1位设为“1”。举例来说,第1级中断处理程序级别的各级中断级屏蔽位均应设为“0”。 响应级别为n的中断处理程序的n级中断级屏蔽位应设为“0”。 设第i2级中断处理程序

42、级别的中断处理级别高于第i1级中断处理程序级别,根据中断嵌套的原则,第i1级中断处理程序级别的第i2级中断级屏蔽位应设为“1”,从而实现对第i2级中断处理程序级别的开放。 2.对3.3.1中中断级屏蔽位举例1的解释 *1,2,3,4中断同时出现,进行排队器; *按中断响应优先级,1最高,响应; *1的屏蔽字为0000,所以1中断执行到结束,回用户程序; *剩下的2优先级高,2响应,但其屏蔽字为1011,允许响应1、3、4,3的响应优先级高,所以; *2被中断,3响应,但其屏蔽字为1001,允许响应1、4,所以; *4响应,执行到结束,回3; *3执行到结束,回2; *2执行到结束,回用户程序。

43、 3.怎样题目中没有说明的通道属于哪一类型? 有的题目中没有说明谈及的通道的类型,这种情况下,一般是指字节多路通道。1.简要举出集中式串行链接,定时查询和独立请求3种总线控制方式的优缺点。同时分析硬件产生故障时通讯的可靠性。 答: 控制方式优点缺点串行链接(1)选择算法简单。(2)控制线数少,只需要3根,且不取决于部件数量。(3)可扩充性好。(1)对“总线可用”线及其有关电路失效敏感。(2)灵活性差,如果高优先级的部件频繁要求使用总线,离总线控制器远的部件就难以获得总线使用权。(3)“总线可用”信号顺序脉动地通过各个部件,总线的分配速度慢。(4)受总线长度的限制,增减和移动部件受限制。定时查询

44、(1)灵活性强,部件的优先次序由程序控制。(2)可靠性高,不会因某个部件失效而影响其它部件使用总线。(1)总线的分配速度不能很高。(2)控制较为复杂。(3)控制线数多,需要2+log2N根。(4)可扩充性差。独立请求(1)灵活性强,部件的优先次序由程序控制。(2)能方便地隔离失效部件的请求。(3)总线的分配速度快。(1)控制较为复杂。(2)控制线数多,要控制N个设备,需要有2N+1根控制线。2.设中断级屏蔽位“1”对应于开放,“0”对应于屏蔽,各级中断处理程序的中断级屏蔽位设置如下: 中断处理程序级别中断级屏蔽位1级2级3级4级第1级0000第2级1010第3级1000第4级1010(1)当中

45、断响应优先次序为1234时,其中断处理次序是什么? (2)如果所有的中断处理都各需3个单位时间,中断响应和中断返回时间相对中断处理时间少得多。当机器正在运行用户程序时,同时发生第2,3级中断请求,过两个单位时间,又同时发生第1,4级中断请求,试画出程序运行过程示意图。 答: (1)当中断响应优先次序为1234时,其中断处理次序为1342。 (2) 3.若机器共有5级中断,中断响应优先次序为12345,现要求其实际的中断处理次求序14523。 (1)设计各级中断处理程序的中断级屏蔽位(令“1”对应于开放,“0”对应于屏蔽); (2)若在运行用户程序时,同时出现第4,2级中断请求,而在处理第2级中断未完成时,又同时出现第1,3,5级中断请求,请画出此程序运行过程示意图。 答: (1)中断级屏蔽位设置如下图

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号