计算机组成原理课后习题讲解.ppt_第1页
计算机组成原理课后习题讲解.ppt_第2页
计算机组成原理课后习题讲解.ppt_第3页
计算机组成原理课后习题讲解.ppt_第4页
计算机组成原理课后习题讲解.ppt_第5页
免费预览已结束,剩余92页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

,课后习题解答,2011-2012-2,计算机组成与结构,第一章计算机系统概论,Chp1计算机系统概论,【1.2】计算机硬件由哪几部分组成?各部分的作用是什么?各部分之间怎样联系的?,解答:,计算机硬件包括运算器、控制器、存储器、输入输出设备五个部分。运算器对数据进行算术和逻辑运算;控制器发布控制信号,指挥各部件协同工作,实现计算机本身运行过程的自动化;存储器保存程序和数据;输入输出设备完成系统和外界设备的信息交换。各部分通过总线联系。,P22,Chp1计算机系统概论,【1.9】冯诺依曼结构的特点是什么?,解答:,冯诺依曼结构特点如下:1、计算机由运算器、控制器、存储器、输入设备和输出设备五部分组成。2、采用存储程序的方式,程序和数据放在同一存储器中。3、数据以二进制码表示。4、指令由操作码和地址码组成。5、指令在存储器中按执行顺序存放。6、机器以运算器为中心,数据传送都经过运算器。,P23,第三章运算方法和运算部件,Chp3运算方法和运算部件,【3.8】十进制数X=(+128.75)2-10,P112,(1)若(Y)2=(X)10,用定点数表示Y的值。(2)设用21个二进制位表示浮点数,阶码用5位,其中阶符1位;尾数用16位,其中符号用1位,阶码的基数为2,写出阶码和尾数均用原码表示的Y的机器数。(3)写出阶码和尾数均用反码表示Y的机器数。(4)写出阶码和尾数均用补码表示Y的机器数。,Chp3运算方法和运算部件,解答:,(1)X=(+128.75)2-10转二进制:整数部分:128=27即(10000000)2;小数部分:0.75乘2取整得(0.11)2;最终,Y=(10000000.11)22-10=(0.0010000000.11)2,(2),原码表示:010010100000001100000,(3)反码表示:011101100000001100000,(4)补码表示:011110100000001100000,Chp3运算方法和运算部件,【3.18】用原码一位乘计算X=0.1101,Y=-0.1011的积X*Y。,P113,解答:X原=0.1101;Y原=0.1011,XY=1.10001111,Chp3运算方法和运算部件,【3.24】用原码两位乘法求X*Y。已知X=0.1011,Y=0.1101。,P113,解答:X原=0.1011;Y原=0.1101;-X补=1.0101,XY=0.10001111,Chp3运算方法和运算部件,【3.30】设有16个信息位,如果采用海明校验,至少需要设置多少个校验位?应放在哪些位置上?若校验结果为S6S5S4S3S2S1=110010,分析出错情况,并说明如何纠错?,P114,解答:,2r-1k+rr=6,数据16位:D16D1;,校验6位:P6P1;,海明码22位:H22H1.,Chp3运算方法和运算部件,校验位位置:Pi2i-1,海明码排序:,Chp3运算方法和运算部件,校验位对应:,Chp3运算方法和运算部件,分组偶校验:,Chp3运算方法和运算部件,S6S5S4S3S2S1=110010,P5D12D13D14D15D16,P2D1D3D4D6D7D10D11D13D14,出错数据位:D13,Chp3运算方法和运算部件,校验纠错电路:,Chp3运算方法和运算部件,【3.35】(补充题)对4位有效信息(1100)求循环校验码,选择生成多项式G(x)=x3+x2+1。若接收到的有效数据为1101,说明CRC是如何查错和纠错的?,P114,解答:,M(x)=1100M(x)x3=1100000,G(x)=1101M(x)x3/G(x)=1001+101/1101,循环校验码:M(x)x3+R(x)=1100101,Chp3运算方法和运算部件,出错模式(G(x)=1101):,Chp3运算方法和运算部件,查错与纠错:,(1)假设只有一位出错,则错误的CRC码为1101101,系统做如下处理:,1101101/1101=101,查到为A4位出错;,CRC码循环左移,同时余数做如下变化:101111011110,共移3次;,A1位与1异或;,CRC码继续循环左移,同时余数做如下变化:110001010100101,共移4次,得到正确码。,Chp3运算方法和运算部件,(2)不限出错位数,则4位的G(X)只能实现差错,但无法纠错。,若余数为000,则CRC码正确。,若余数不为000,则CRC码错误。,3位余数只剩7个不同组合,而出错情况多达98种。无法区分出错的情况,也即无法纠错。,第四章主存储器,Chp4主存储器,【4.5】有一个512K16的存储器,由64K1的RAM芯片组成(芯片内是4个128128结构),问:,P136,(1)总共需要多少个RAM芯片?(2)采用分散刷新方式,如单元刷新间隔不超过2ms,则刷新信号的周期是多少?(3)如果采用集中式刷新方式,设读/写周期T=0.1us,储存器刷新一遍最少用多少时间?,Chp4主存储器,解:(1)总共需要512K16/64K1=128片。,(2)刷新中的几个时间概念:刷新周期、集中式刷新的刷新时间、刷新信号周期、读写周期。,分散(非集中)刷新包括分散式刷新和分布式刷新两种情况。,Chp4主存储器,分散式刷新:,刷新信号周期=等于读写周期;,刷新周期=阵列行数读写周期=128读写周期;,Chp4主存储器,分布式刷新:,刷新信号周期=刷新周期/阵列行数=2ms/12815.6us,阵列128行即128段,每段末尾占用一个读写周期对该行进行刷新。,综合分散与分布得到信号周期15.6us,Chp4主存储器,集中式刷新:,刷新信号周期=读写周期;,刷新时间=阵列行数读写周期=1280.1us=12.8us;,刷新周期=读写时间+刷新时间。,Chp4主存储器,【4.6】机器有一个地址空间为0000H1FFFH的ROM区域,现在再用RAM芯片(8K4)形成一个16K8的RAM区域,起始地址为2000H,假设RAM芯片有CS和WE信号控制端,CPU地址总线为A15A0,数据总线为D7D0,控制信号为R/W,MREQ。要求画出逻辑图。,P136,Chp4主存储器,解:数据总线D7D0储存区域数据宽度为8;ROM:0000H1FFFH单元数:213=8K容量:8K8;RAM:容量:16K8需要4片8K4芯片进行综合扩展;地址分配:片内A12A0,片选A15A13ROM:地址范围:0000H1FFFHRAM(12#):地址范围:2000H3FFFHRAM(34#):地址范围:4000H5FFFH,Chp4主存储器,片选方式:方式一:A15A13接3:8译码器输入。方式二:A14、A13接2:4译码器输入,A15接地。方式三:A15A13分别接每组芯片的CS端,此种方式会造成地址不连续。,作图:参见P440(方式一)。,Chp4主存储器,Chp4主存储器,【4.12】设某主存储器访问一次存储器的时间如下:传送地址1个时钟周期,读/写4个时钟周期,数据传送1个时钟周期,采用下述3种主存结构读取16个字的数据块,各需多少时钟周期?,P137,(1)单自宽主存,一次只能读/写1个字。,(2)4字宽主存,一次可读写4个字,但CPU与主存的数据传送宽度为1个字。,(3)4体交叉存储器,每个存储器为单自宽。,【4.7】SRAM和DRAM的主要差别是什么?(略),Chp4主存储器,解:,即本题中,一个存储周期为1+4+1=6T。即连续两次读写间隔至少保持6个T。,存储周期:连续启动两次独立的存储器操作所需间隔的最小时间。,存储器在读/写操作时,不允许改变数据地址。,Chp4主存储器,(1)操作方式为:,T,T,T,T,T,T,传送地址读写操作传送数据,1,2,T,T,T,T,T,T,5T,正确操作方式为:,T,T,T,T,T,T,1,2,T,T,T,T,T,T,6T,需要周期:166T=96T,Chp4主存储器,(2)操作方式为:,T,T,T,T,T,T,传送地址读写操作传送数据,14,5T,T,T,T,58,T,T,T,T,T,T,T,T,T,正确操作方式为:,需要周期:36T+9T=27T,Chp4主存储器,(3)单自宽4体交叉存储:,需要周期=T+(m-1)=(m+3)t/4=(16+3)6T/4=28.5T,原因:=t/4=1.5T不是一个整周期。而题中将一个存储周期分为了6个整周期T。,Chp4主存储器,正确方法:,多体交叉存储器特征:,每个模块都有独立的读写控制电路、地址寄存器和数据寄存器,各自以等同方式与CPU传送信息。,1、CPU将地址送达1个模块,即被该模块的AR读取,此后可以继续送出第二个地址到下一个模块。,注意:,2、每个模块单独的存储周期仍是6T,即每个模块中两个字的存储间隔至少保持6T。,Chp4主存储器,T,T,T,T,T,T,1,T,T,T,T,T,T,2,T,T,T,T,T,T,3,T,T,T,T,T,T,4,T,T,T,T,T,T,5,T,T,T,T,T,T,6,T,T,T,T,T,T,7,T,T,T,T,T,T,8,T,T,T,T,T,T,9,T,T,T,T,T,T,10,T,T,T,T,T,T,11,T,T,T,T,T,T,12,T,T,T,T,T,T,13,T,T,T,T,T,T,14,T,T,T,T,T,T,15,T,T,T,T,T,T,16,M0,M1,M3,M4,M0,M1,M3,M4,M0,M1,M3,M4,M0,M1,M3,M4,需要周期:36T+9T=27T,Chp4主存储器,【4.14】补充作业:,CPU有16根地址线、16根数据线,MREQ为访存信号,W/R为读写控制信号。现有ROM芯片两种(2K8、8K4)、RAM芯片三种(1K4、2K8、8K8)。请选择合适的芯片设计主存,要求000H7FFH为系统区,800H17FFH为用户区,画出逻辑图。,Chp4主存储器,解:,CPU16根数据线字长16位;系统区:000H7FFH空间大小21116=2K16。选用2K8芯片,需2片。用户区:800H17FFH区间容量:17FFH-800H=FFFH。空间大小21216=4K16。选用2K8芯片,需4片。,Chp4主存储器,第五章指令系统,Chp5指令系统,【5.1】某指令系统指令长16位,每个操作数的地址码长6位,指令分为无操作数、单操作数和双操作数三类。若双操作数指令有K条,无操作数指令有L条,问单操作数指令最多可能有多少条?,P169,解:要使单操作数指令最多,则除K条和L条已有指令外,剩余指令全用作单操作数指令。,Chp5指令系统,指令字长16bit,地址码长6bit,则操作码长4bit。,若全用作双操作数指令,则最多容纳24条。,已知双操作数指令有K条,则操作码剩余24K个信息可用。,24K个操作码信息加一个地址码最多可寻址(24K)26条单操作数指令。,设单操作数指令有X条,则剩余(24K)26-X个信息可用。,(24K)26-X个信息再加一个地址码则最多可寻址(24K)26-X)26条无操作数指令。,Chp5指令系统,即有方程:,(24K)26-X)26=L,求解得:,X=(24K)26-L/26,Chp5指令系统,【5.2】基址寄存器的内容为2000H,变址寄存器内容为3A0H,指令的地址码部分是3FH,当前PC的值为2B00H,写出变址编址(考虑基址)和相对编址两种情况的访存有效地址。,P169,解:变址编址:3A0H+3FH=3DFH,变址编址(考虑基址):2000H+3DFH=23DFH,相对编址:2B00H+3FH=2B3FH,Chp5指令系统,【5.3】接上题(1)设变址编址用于取数指令,相对编址用于转移指令,存储器内容如下:,P169,地址内容003FH2300H2000H2400H203FH2500H233FH2600H23A0H2700H23DFH2800H2B00H063FH,写出从存储器中所取的数据以及转移地址。,(2)若采取直接编址,写出从存储器取出的数据。,Chp5指令系统,解:(1)接上题,变址编址(考虑基址)23DFH;相对编址:2B3FH。,地址内容003FH2300H2000H2400H203FH2500H233FH2600H23A0H2700H23DFH2800H2B00H063FH,取数:2800H;转移:2B3FH。,(2)直接编址取数:(3FH)=2300H;考虑基址则为:(203FH)=2500H。,Chp5指令系统,【5.9】在下面有关寻址方式的叙述中,选择正确答案填入。,P170,根据操作数所在位置,指出其寻址方式:操作数在寄存器中,为_寻址方式;操作数地址在寄存器中,为_寻址方式;操作数在指令中,为_寻址方式;操作数地址(主存)在指令中,为_寻址方式;操作数的地址,为某一寄存器中的内容与位移量之和则可以是_、_、_寻址方式。,寄存器,寄存器间接,立即数,直接,基址,变址,相对,Chp5指令系统,【5.11】讨论RISC和CISC在指令系统方面的主要区别。(略),P170,【5.14】(补充作业)某16位机所使用指令格式和寻址方式如下所示:该机有两个20位基值寄存器,四个16位变址寄存器,十六个16位通用寄存器。有三种指令的操作码分别是:MOV(OP)(A)H,MOV是传送指令;STA(OP)(1B)H,STA为写数指令;LDA(OP)(3C)H,LDA为读数指令。,Chp5指令系统,指令格式如下,其中的S(源),D(目标)都是通用寄存器,M是主存中的一个单元。,Chp5指令系统,要求:1、分析三种指令格式与寻址方式特点。2、CPU完成哪一条指令所花时间最短?哪一条指令花时间最长?第二条指令的执行时间有时会等于第三条指令的执行时间吗?3、下列情况下每个十六进制指令字分别代表什么操作?若其中有的编码不正确,如何改正才能成为合法指令?,(F0F1)H(3CD2)H;(2856)H;(6FD6)H;(1C2)H,Chp5指令系统,解:1、第一种指令是单字长二地址指令,RR型;,第二种指令是双字长二地址指令,RS型其中一个采用基址寻址或变址寻址,另一个由源寄存器决定;,Chp5指令系统,第三种也是双字长二地址指令,RS型,其中一个由目标寄存器决定,另一个由20位地址(直接寻址)决定。,2、第一种指令所花时间最短,因为是寄存器寄存器型指令,不需要访问存储器。,Chp5指令系统,第二种指令所花时间最长,因为需要访问存储器,还要进行寻址方式的变换运算(基值或变址),这也需要时间。,第三种指令虽然也访问存储器,但节省了求有效地址运算的时间开销。第二种指令的执行时间不会等于第三种指令的执行时间。,Chp5指令系统,3、已知:MOV(OP)001010,STA(OP)011011,LDA(OP)111100,(F0F1)H(3CD2)H=1111000011110001(3CD2)H该指令代表LDA指令,编码正确,其含义是把主存(13CD2)H(20位)地址单元的内容取至15寄存器。,通用寄存器有16个,因此需要4bit区分,Chp5指令系统,已知:MOV(OP)001010,STA(OP)011011,LDA(OP)111100。,(2856)H=0010100001010110代表MOV指令,编码正确,含义是把6号源寄存器的内容传送至5号目标寄器。,Chp5指令系统,已知:MOV(OP)001010,STA(OP)011011,LDA(OP)111100。,(6FD6)H=0110111111010110该指令是单字长指令,一定是MOV指令,但编码错误。可改正为0010100011010110=(28D6)H,Chp5指令系统,已知:MOV(OP)001010,STA(OP)011011,LDA(OP)111100。,(1C2)H=0000000111000010该指令是单字长指令,代表MOV指令,但编码错误。可改正为0010100011000010=(28C2)H,第六章中央处理器,Chp6中央处理器,【6.1】CPU结构如下图所示,其中有一个累加器AC,一个状态条件寄存器和其他4个寄存器,各部分之间的连线表示数据通路,箭头表示信息传送方向。要求:,P234,(1)标明图中a,b,c,d4个寄存器的名称。(2)简述指令从主存取出到产生控制信号的数据通路。(3)简述数据在运算器和主存之间进行存/取访问的数据通路。,Chp6中央处理器,PC,AR,DR,IR,Chp6中央处理器,【6.5】选出正确答案填空:,P235,微指令分水平型微指令和_微指令两类。_可同时执行若干个微操作,所以执行指令的速度比_的快。,在实现微程序时,取下一条微指令和执行本条微指令一般是_进行的,而微指令之间是_执行的。,实现机器指令的微程序一般是存放在_中的,而用户可写的控制存储器则由_组成。,垂直型,水平型微指令,垂直型微指令,重叠,顺序,ROM,RAM,Chp6中央处理器,【6.6】某机有8条微指令I1-I8,每条微指令所包含的微命令控制信号如下表所示。,P235,a-j对应10种不同性质的微命令信号。假设一条微指令的控制字段为8位,请安排微指令的控制字段格式。,Chp6中央处理器,解:3种微指令编译法:,直接控制法、直接编译法、间接编译法。,方法选择:尽量使用直接控制法;若此时微指令控制字段无法包含全部微命令,则引入直接编译法,和直接控制法结合;若仍然无法包含全部微命令,则单独用直接控制法实现;若还是无法包含全部微命令,则引入间接编译法。,Chp6中央处理器,全用直接控制法控制字段表示命令个数为813,根据组相联映像,主存中13个块与cache中前13个组依次对应。,Chp7存储系统,【7.6】设某计算机采用直接映像cache,已知容量为4096B。,P260,(1)若CPU依次从主存单元0,1,99和4096,4097,4195交换取指令,循环执行10次,问命中率为多少?(2)如cache存取时间为10ns,主存存取时间为100ns,cache命中率为95%,求平均存取时间。,Chp7存储系统,解:(1)直接映像的映像函数:,Cache容量为4096B,假设每块含1个单元(块数最多的情况)cache中块数2c=4096=2120(或4096)mod2c=0主存4096与0单元对应cache中同一位置。同理1与4097、2与4098、99与4195都分别对应cache中同一位置。依次交换访问则命中率为0。,j=imod2c,Chp7存储系统,j=imod2c,如果每块包含2b(b0)个单元,则cache中块数2c=cache单元总数/2b=4096/2b。主存4096单元位于i=4096/2b块中,j=4096/2bmod2c=2cmod2c=0。又0mod2c=0因此主存4096单元和0单元对应cache中的0号快。同理1与4097、2与4098、99与4195都分别对应cache中同一块。依次交换访问命中率为0。,(2)平均存取时间:,10ns0.95+(100ns+10ns)0.05=15ns,Chp7存储系统,【7.7】一个组相联cache由64个存储块组成,每组包含4个存储块,主存由8192个存储块组成,每块由32个字组成,访存地址为字地址。问:,P260,(1)主存和cache地址各多少位?地址映像是几路组相联?(2)在主存地址格式中,区号、组号、块号、块内地址各多少位?,Chp7存储系统,解:组相联映像中,cache和主存每组包含的块数相等,每块内字数相等。,(1)每组包含4个块4路组相联。,Cache:组数为64/4=16=24;每组块数为4=22;每块字数为32=25。地址位数为4+2+5=11bit。,M:组数为8192/4=2048=211;每组块数为4=22;每块字数为32=25。地址位数为11+2+5=18bit。,Chp7存储系统,(2)访存地址为字地址字为最小地址区分单元。,M的18bit地址分配如下:,t=7,r=2,c,=4,b=5,由cache的组数决定,Chp7存储系统,【7.10】主存储器容量为4MB,虚存容量为1G

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论