计算机组成原理课后习题及答案第2版唐朔飞最全版本M.ppt

上传人:本田雅阁 文档编号:2654071 上传时间:2019-04-30 格式:PPT 页数:338 大小:3.25MB
返回 下载 相关 举报
计算机组成原理课后习题及答案第2版唐朔飞最全版本M.ppt_第1页
第1页 / 共338页
计算机组成原理课后习题及答案第2版唐朔飞最全版本M.ppt_第2页
第2页 / 共338页
计算机组成原理课后习题及答案第2版唐朔飞最全版本M.ppt_第3页
第3页 / 共338页
亲,该文档总共338页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《计算机组成原理课后习题及答案第2版唐朔飞最全版本M.ppt》由会员分享,可在线阅读,更多相关《计算机组成原理课后习题及答案第2版唐朔飞最全版本M.ppt(338页珍藏版)》请在三一文库上搜索。

1、计算机系统概论,第 一 章,1. 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要? 解:P3 计算机系统计算机硬件、软件和数据通信设备的物理或逻辑的综合体。 计算机硬件计算机的物理实体。 计算机软件计算机运行所需的程序及相关资料。 硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。,1,5. 冯诺依曼计算机的特点是什么? 解:冯氏计算机的特点是:P8 由运算器、控制器、存储器、输入设备、输出设备五大部件组成; 指令和数据以同一形式(二进制形式)存于存储器中; 指令由操作码、地址码两大部分组成; 指令在存储器中顺序存放,通常自动顺序取出执行; 以运算器为中心(原始冯氏机)

2、。,7. 解释概念: 主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。 解: 主机是计算机硬件的主体部分,由CPU+MM(主存或内存)组成; CPU中央处理器(机),是计算机硬件的核心部件,由运算器+控制器组成;(早期的运、控不在同一芯片上) 讲评:一种不确切的答法: CPU与MM合称主机; 运算器与控制器合称CPU。 这类概念应从性质和结构两个角度共同解释较确切。,主存计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;(由存储体、各种逻辑部件及控制电路组成) 存储单元可存放一个机器字并具有特定存储地址的存

3、储单位; 存储元件存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取; 存储字一个存储单元所存二进制代码的逻辑单位;,存储字长一个存储单元所存二进制代码的位数; 存储容量存储器中可存二进制代码的总量;(通常主、辅存容量分开描述) 机器字长CPU能同时处理的数据位数; 指令字长一条指令的二进制代码位数;,8. 解释下列英文缩写的中文含义: CPU、PC、IR、CU、ALU、ACC、MQ、X、MAR、MDR、I/O、MIPS、CPI、FLOPS 解:全面的回答应分英文全称、中文名、中文解释三部分。 CPUCentral Processing Unit,中央处

4、理机(器),中文解释见7题,略; PCProgram Counter,程序计数器,存放当前欲执行指令的地址,并可自动计数形成下一条指令地址的计数器;,IRInstruction Register, 指令寄存器,存放当前正在执行的指令的寄存器; CUControl Unit,控制单元(部件),控制器中产生微操作命令序列的部件,为控制器的核心部件; ALUArithmetic Logic Unit,算术逻辑运算单元,运算器中完成算术逻辑运算的逻辑部件; ACCAccumulator,累加器,运算器中运算前存放操作数、运算后存放运算结果的寄存器;,MQMultiplier-Quotient Regi

5、ster,乘商寄存器,乘法运算时存放乘数、除法时存放商的寄存器。 X此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数; MARMemory Address Register,存储器地址寄存器,内存中用来存放欲访问存储单元地址的寄存器;,MDRMemory Data Register,存储器数据缓冲寄存器,主存中用来存放从某单元读出、或写入某存储单元数据的寄存器; I/OInput/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送; MIPSMillion Instruc

6、tion Per Second,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位;,CPICycle Per Instruction,执行一条指令所需时钟周期数,计算机运算速度指标计量单位之一; FLOPSFloating Point Operation Per Second,每秒浮点运算次数,计算机运算速度计量单位之一。,11. 指令和数据都存于存储器中,计算机如何区分它们? 解:计算机硬件主要通过不同的时间段来区分指令和数据,即:取指周期(或取指微程序)取出的既为指令,执行周期(或相应微程序)取出的既为数据。 另外也可通过地址来源区分,从PC指出的存储单元取出的是指令,由指令地址码

7、部分提供操作数地址。,系 统 总 线,第 三 章,1. 什么是总线?总线传输有何特点?为了减轻总线的负载,总线上的部件都应具备什么特点? 解:总线是多个部件共享的传输部件; 总线传输的特点是:某一时刻只能有一路信息在总线上传输,即分时使用; 为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线连通。,4. 为什么要设置总线判优控制?常见的集中式总线控制有几种?各有何特点?哪种方式响应时间最快?哪种方式对电路故障最敏感? 解:总线判优控制解决多个部件同时申请总线时的使用权分配问题; 常见的集中式总线控制有三种: 链式查询、计数器查询、独立请求; 特点:链式查询方式连线简单,易于扩充,对电路

8、故障最敏感;计数器查询方式优先级设置较灵活,对故障不敏感,连线及控制过程较复杂;独立请求方式判优速度最快,但硬件器件用量大,连线多,成本较高。,5. 解释概念:总线宽度、总线带宽、总线复用、总线的主设备(或主模块)、总线的从设备(或从模块)、总线的传输周期、总线的通信控制。 解: 总线宽度指数据总线的位(根)数,用bit(位)作单位。 总线带宽指总线在单位时间内可以传输的数据总量,相当于总线的数据传输率,等于总线工作频率与总线宽度(字节数)的乘积。 总线复用指两种不同性质且不同时出现的信号分时使用同一组总线,称为总线的“多路分时复用”。,总线的主设备(主模块)指一次总线传输期间,拥有总线控制权

9、的设备(模块); 总线的从设备(从模块)指一次总线传输期间,配合主设备完成传输的设备(模块),它只能被动接受主设备发来的命令; 总线的传输周期总线完成一次完整而可靠的传输所需时间; 总线的通信控制指总线传送过程中双方的时间配合方式。,6. 试比较同步通信和异步通信。 解: 同步通信由统一时钟控制的通信,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下降。适合于速度差别不大的场合; 异步通信不由统一时钟控制的通信,部件间采用应答方式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件工作速度差异较大时,有利于提高总线工作效率。,8. 为什么说半同步通信同时保留了同步

10、通信和异步通信的特点? 解: 半同步通信既能像同步通信那样由统一时钟控制,又能像异步通信那样允许传输时间不一致,因此工作效率介于两者之间。,10. 什么是总线标准?为什么要设置总线标准?目前流行的总线标准有哪些?什么是即插即用?哪些总线有这一特点? 解: 总线标准可理解为系统与模块、模块与模块之间的互连的标准界面。 总线标准的设置主要解决不同厂家各类模块化产品的兼容问题; 目前流行的总线标准有:ISA、EISA、PCI等; 即插即用指任何扩展卡插入系统便可工作。EISA、PCI等具有此功能。,11. 画一个具有双向传输功能的总线逻辑图。 解:此题实际上是要求设计一个双向总线收发器,设计要素为三

11、态、方向、使能等控制功能的实现,可参考74LS245等总线缓冲器芯片内部电路。 逻辑图如下:(n位),使能 控制,方向 控制,错误的设计:,这个方案的错误是: 不合题意。按题意要求应画出逻辑线路图而不是逻辑框图。,12. 设数据总线上接有A、B、C、D四个寄存器,要求选用合适的74系列芯片,完成下列逻辑设计: (1) 设计一个电路,在同一时间实现DA、DB和DC寄存器间的传送; (2) 设计一个电路,实现下列操作: T0时刻完成D总线; T1时刻完成总线A; T2时刻完成A总线; T3时刻完成总线B。,令:BUSA=BUSB=BUSC=CP; DBUS= -OE; 当CP前沿到来时,将DA、B

12、、C。,解: (1)采用三态输出的D型寄存器74LS374做A、B、C、D四个寄存器,其输出可直接挂总线。A、B、C三个寄存器的输入采用同一脉冲打入。注意-OE为电平控制,与打入脉冲间的时间配合关系为:,-OE: CP:,现以8位总线为例,设计此电路,如下图示:,数据总线,D7 D0,BUSA,(2)寄存器设置同(1),由于本题中发送、接收不在同一节拍,因此总线需设锁存器缓冲,锁存器采用74LS373(电平使能输入)。节拍、脉冲配合关系如下:,时钟: CLK: 节拍电平:Ti: 打入脉冲:Pi:,图中,脉冲包在电平中,为了留有较多的传送时间,脉冲设置在靠近电平后沿处。,节拍、脉冲分配逻辑如下:

13、,二位 格雷 码同 步计 数器,1,&,&,&,&,1,1,1,CLK,P0 P1 P2 P3,T0 T1 T2 T3,-T0,-T1,-T2,-T3,节拍、脉冲时序图如下:,CLK: T0: T1: T2: T3: P0: P1: P2: P3:,以8位总线为例,电路设计如下: (图中,A、B、C、D四个寄存器与数据总线的连接方法同上。),=1,1Q 8Q OE 1D 8D,374 A,1Q 8Q OE 1D 8D,374 B,BUSB,DBUS,CBUS,BBUS,ABUS,BUSA,1Q 8Q OE 1D 8D,374 D,BUSD,1Q 8Q OE G 1D 8D,373,1Q 8Q

14、OE 1D 8D,BUSC,374 C,=1,T1 T3 T0 T2,数据总线(D7D0),令:ABUS = -T2 DBUS = -T0 BUSA = P1 BUSB = P3,返回目录,14. 设总线的时钟频率为8MHz,一个总线周期等于一个时钟周期。如果一个总线周期中并行传送16位数据,试问总线的带宽是多少? 解: 总线宽度 = 16位/8 =2B 总线带宽 = 8MHz2B =16MB/s,15. 在一个32位的总线系统中,总线的时钟频率为66MHz,假设总线最短传输周期为4个时钟周期,试计算总线的最大数据传输率。若想提高数据传输率,可采取什么措施? 解法1: 总线宽度 =32位/8

15、=4B 时钟周期 =1/ 66MHz =0.015s 总线最短传输周期 =0.015s4 =0.06s 总线最大数据传输率 = 4B/0.06s =66.67MB/s,解法2: 总线工作频率 = 66MHz/4 =16.5MHz 总线最大数据传输率 =16.5MHz4B =66MB/s 若想提高总线的数据传输率,可提高总线的时钟频率,或减少总线周期中的时钟个数,或增加总线宽度。,16. 在异步串行传送系统中,字符格式为:1个起始位、8个数据位、1个校验位、2个终止位。若要求每秒传送120个字符,试求传送的波特率和比特率。 解: 一帧 =1+8+1+2 =12位 波特率 =120帧/秒12位 =

16、1440波特 比特率 = 1440波特(8/12) =960bps 或:比特率 = 120帧/秒8 =960bps,存 储 器,第 四 章,3. 存储器的层次结构主要体现在什么地方?为什么要分这些层次?计算机如何管理这些层次? 答:存储器的层次结构主要体现在Cache主存和主存辅存这两个存储层次上。 Cache主存层次在存储系统中主要对CPU访存起加速作用,即从整体运行的效果分析,CPU访存速度加快,接近于Cache的速度,而寻址空间和位价却接近于主存。 主存辅存层次在存储系统中主要起扩容作用,即从程序员的角度看,他所使用的存储器其容量和位价接近于辅存,而速度接近于主存。,综合上述两个存储层次

17、的作用,从整个存储系统来看,就达到了速度快、容量大、位价低的优化效果。 主存与CACHE之间的信息调度功能全部由硬件自动完成。而主存辅存层次的调度目前广泛采用虚拟存储技术实现,即将主存与辅存的一部份通过软硬结合的技术组成虚拟存储器,程序员可使用这个比主存实际空间(物理地址空间)大得多的虚拟地址空间(逻辑地址空间)编程,当程序运行时,再由软、硬件自动配合完成虚拟地址空间与主存实际物理空间的转换。因此,这两个层次上的调度或转换操作对于程序员来说都是透明的。,4. 说明存取周期和存取时间的区别。 解:存取周期和存取时间的主要区别是:存取时间仅为完成一次操作的时间,而存取周期不仅包含操作时间,还包含操

18、作后线路的恢复时间。即: 存取周期 = 存取时间 + 恢复时间 5. 什么是存储器的带宽?若存储器的数据总线宽度为32位,存取周期为200ns,则存储器的带宽是多少? 解:存储器的带宽指单位时间内从存储器进出信息的最大数量。 存储器带宽 = 1/200ns 32位 = 160M位/秒 = 20MB/S = 5M字/秒 注意字长(32位)不是16位。 (注:本题的兆单位来自时间=106),6. 某机字长为32位,其存储容量是64KB,按字编址其寻址范围是多少?若主存以字节编址,试画出主存字地址和字节地址的分配情况。 解:存储容量是64KB时,按字节编址的寻址范围就是64KB,则: 按字寻址范围

19、= 64K8 / 32=16K字 按字节编址时的主存地址分配图如下:,0,1,2,3,6,5,4,65534,65532,7,65535,65533,字地址 HB 字节地址LB,0 4 8 65528 65532,讨论: 1、 在按字节编址的前提下,按字寻址时,地址仍为16位,即地址编码范围仍为064K-1,但字空间为16K字,字地址不连续。 2、 字寻址的单位为字,不是B(字节)。 3、 画存储空间分配图时要画出上限。,7. 一个容量为16K32位的存储器,其地址线和数据线的总和是多少?当选用下列不同规格的存储芯片时,各需要多少片? 1K4位,2K8位,4K4位,16K1位,4K8位,8K8

20、位 解: 地址线和数据线的总和 = 14 + 32 = 46根; 各需要的片数为: 1K4:16K32 /1K4 = 168 = 128片 2K8:16K32 /2K 8 = 8 4 = 32片 4K4:16K32 /4K 4 = 4 8 = 32片 16K1:16K 32 / 16K 1 = 32片 4K8:16K32 /4K8 = 4 4 = 16片 8K8:16K32 / 8K 8 = 2X4 = 8片,讨论: 地址线根数与容量为2的幂的关系,在此为214,14根; 数据线根数与字长位数相等,在此为32根。(注:不是2的幂的关系。 ) :32=25,5根,8. 试比较静态RAM和动态RA

21、M。 答:静态RAM和动态RAM的比较见下表:,9. 什么叫刷新?为什么要刷新?说明刷新有几种方法。 解:刷新对DRAM定期进行的全部重写过程; 刷新原因因电容泄漏而引起的DRAM所存信息的衰减需要及时补充,因此安排了定期刷新操作; 常用的刷新方法有三种集中式、分散式、异步式。 集中式:在最大刷新间隔时间内,集中安排一段时间进行刷新; 分散式:在每个读/写周期之后插入一个刷新周期,无CPU访存死时间; 异步式:是集中式和分散式的折衷。,讨论: 1)刷新与再生的比较: 共同点: 动作机制一样。都是利用DRAM存储元破坏性读操作时的重写过程实现; 操作性质一样。都是属于重写操作。,区别: 解决的问

22、题不一样。再生主要解决DRAM存储元破坏性读出时的信息重写问题;刷新主要解决长时间不访存时的信息衰减问题。 操作的时间不一样。再生紧跟在读操作之后,时间上是随机进行的;刷新以最大间隔时间为周期定时重复进行。 动作单位不一样。再生以存储单元为单位,每次仅重写刚被读出的一个字的所有位;刷新以行为单位,每次重写整个存储器所有芯片内部存储矩阵的同一行。,芯片内部I/O操作不一样。读出再生时芯片数据引脚上有读出数据输出;刷新时由于CAS信号无效,芯片数据引脚上无读出数据输出(唯RAS有效刷新,内部读)。鉴于上述区别,为避免两种操作混淆,分别叫做再生和刷新。 2)CPU访存周期与存取周期的区别: CPU访

23、存周期是从CPU一边看到的存储器工作周期,他不一定是真正的存储器工作周期;存取周期是存储器速度指标之一,它反映了存储器真正的工作周期时间。,3)分散刷新是在读写周期之后插入一个刷新周期,而不是在读写周期内插入一个刷新周期,但此时读写周期和刷新周期合起来构成CPU访存周期。 4)刷新定时方式有3种而不是2种,一定不要忘了最重要、性能最好的异步刷新方式。,10. 半导体存储器芯片的译码驱动方式有几种? 解:半导体存储器芯片的译码驱动方式有两种:线选法和重合法。 线选法:地址译码信号只选中同一个字的所有位,结构简单,费器材; 重合法:地址分行、列两部分译码,行、列译码线的交叉点即为所选单元。这种方法

24、通过行、列译码信号的重合来选址,也称矩阵译码。可大大节省器材用量,是最常用的译码驱动方式。,11. 一个8K8位的动态RAM芯片,其内部结构排列成256256形式,存取周期为0.1s。试问采用集中刷新、分散刷新及异步刷新三种方式的刷新间隔各为多少? 注:该题题意不太明确。实际上,只有异步刷新需要计算刷新间隔。 解:设DRAM的刷新最大间隔时间为2ms,则 异步刷新的刷新间隔 =2ms/256行 =0.0078125ms =7.8125s 即:每7.8125s刷新一行。 集中刷新时, 刷新最晚启动时间=2ms-0.1s256行 =2ms-25.6s=1974.4s,集中刷新启动后, 刷新间隔 =

25、 0.1s 即:每0.1s刷新一行。 集中刷新的死时间 =0.1s256行 =25.6s 分散刷新的刷新间隔 =0.1s2 =0.2s 即:每0.2s刷新一行。 分散刷新一遍的时间 =0.1s2256行 =51.2s 则 分散刷新时, 2ms内可重复刷新遍数 =2ms/ 51.2s 39遍,12. 画出用10244位的存储芯片组成一个容量为64K8位的存储器逻辑框图。要求将64K分成4个页面,每个页面分16组,指出共需多少片存储芯片? (注:将存储器分成若干个容量相等的区域,每一个区域可看做一个页面。) 解:设采用SRAM芯片, 总片数 = 64K 8位 / 1024 4位 = 64 2 =

26、128片 题意分析:本题设计的存储器结构上分为总体、页面、组三级,因此画图时也应分三级画。首先应确定各级的容量: 页面容量 = 总容量 / 页面数 = 64K 8位 / 4 = 16K 8位;,组容量 = 页面容量 / 组数 = 16K 8位 / 16 = 1K 8位; 组内片数 = 组容量 / 片容量 = 1K8位 / 1K4位 = 2片; 地址分配:,页面号 组号 组内地址,2 4 10,组逻辑图如下:(位扩展),页面逻辑框图:(字扩展),存储器逻辑框图:(字扩展),13. 设有一个64K8位的RAM芯片,试问该芯片共有多少个基本单元电路(简称存储基元)?欲设计一种具有上述同样多存储基元的

27、芯片,要求对芯片字长的选择应满足地址线和数据线的总和为最小,试确定这种芯片的地址线和数据线,并说明有几种解答。 解: 存储基元总数 = 64K 8位 = 512K位 = 219位; 思路:如要满足地址线和数据线总和最小,应尽量把存储元安排在字向,因为地址位数和字数成2的幂的关系,可较好地压缩线数。,设地址线根数为a,数据线根数为b,则片容量为:2a b = 219;b = 219-a; 若a = 19,b = 1,总和 = 19+1 = 20; a = 18,b = 2,总和 = 18+2 = 20; a = 17,b = 4,总和 = 17+4 = 21; a = 16,b = 8 总和 =

28、 16+8 = 24; 由上可看出:片字数越少,片字长越长,引脚数越多。片字数、片位数均按2的幂变化。 结论:如果满足地址线和数据线的总和为最小,这种芯片的引脚分配方案有两种:地址线 = 19根,数据线 = 1根;或地址线 = 18根,数据线 = 2根。,14. 某8位微型机地址码为18位,若使用4K4位的RAM芯片组成模块板结构的存储器,试问: (1)该机所允许的最大主存空间是多少? (2)若每个模块板为32K8位,共需几个模块板? (3)每个模块板内共有几片RAM芯片? (4)共有多少片RAM? (5)CPU如何选择各模块板?,解: (1)218 = 256K,则该机所允许的最大主存空间是

29、256K8位(或256KB); (2)模块板总数 = 256K8 / 32K8 = 8块; (3)板内片数 = 32K8位 / 4K4位 = 8 2 = 16片; (4)总片数 = 16片 8 = 128片; (5)CPU通过最高3位地址译码选板,次高3位地址译码选片。地址格式分配如下:,板地址 片地址 片内地址,3 3 12,17 15 14 12 11 0,15. 设CPU共有16根地址线,8根数据线,并用-MREQ(低电平有效)作访存控制信号,R/-W作读/写命令信号(高电平为读,低电平为写)。现有这些存储芯片: ROM(2K8位,4K4位,8K8位),RAM(1K4位,2K8位,4K8

30、位),及74138译码器和其他门电路(门电路自定)。 试从上述规格中选用合适的芯片,画出CPU和存储芯片的连接图。要求如下: (1)最小4K地址为系统程序区,409616383地址范围为用户程序区; (2)指出选用的存储芯片类型及数量; (3)详细画出片选逻辑。,解: (1)地址空间分配图如下:,4K(ROM) 4K(SRAM) 4K(SRAM) 4K(SRAM),04095 40968191 819212287 1228816383 65535,Y0 Y1 Y2 Y3 ,A15=1,A15=0,(2)选片:ROM:4K 4位:2片; RAM:4K 8位:3片; (3)CPU和存储器连接逻辑图

31、及片选逻辑:,4K4 ROM,74138(3:8),4K4 ROM,4K8 RAM,4K8 RAM,4K8 RAM,-CS0 -CS1 -CS2 -CS3,-MREQ A15 A14 A13 A12,C B A -Y0,-G2A -G2B,G1,+5V,CPU A110 R/-W D30 D74,-Y1,-Y2,-Y3,讨论: 1)选片:当采用字扩展和位扩展所用芯片一样多时,选位扩展。 理由:字扩展需设计片选译码,较麻烦,而位扩展只需将数据线按位引出即可。 本题如选用2K8 ROM,则RAM也应选2K8的。否则片选要采用二级译码,实现较麻烦。 当需要RAM、ROM等多种芯片混用时,应尽量选容量

32、等外特性较为一致的芯片,以便于简化连线。 2)应尽可能的避免使用二级译码,以使设计简练。但要注意在需要二级译码时如果不使用,会使选片产生二意性。,3)片选译码器的各输出所选的存储区域是一样大的,因此所选芯片的字容量应一致,如不一致时就要考虑二级译码。 4)其它常见错误: EPROM的PD端接地; (PD为功率下降控制端,当输入为高时,进入功率下降状态。因此PD端的合理接法是与片选端-CS并联。) ROM连读/写控制线-WE; (ROM无读/写控制端) 注:该题缺少“系统程序工作区”条件。,16. CPU假设同上题,现有8片8K8位的RAM芯片与CPU相连。 (1)用74138译码器画出CPU与

33、存储芯片的连接图; (2)写出每片RAM的地址范围; (3)如果运行时发现不论往哪片RAM写入数据,以A000H为起始地址的存储芯片都有与其相同的数据,分析故障原因。 (4)根据(1)的连接图,若出现地址线A13与CPU断线,并搭接到高电平上,将出现什么后果?,解: (1)CPU与存储器芯片连接逻辑图:,(2)地址空间分配图:,(3)如果运行时发现不论往哪片RAM写入数据后,以A000H为起始地址的存储芯片都有与其相同的数据,则根本的故障原因为:该存储芯片的片选输入端很可能总是处于低电平。可能的情况有: 1)该片的-CS端与-WE端错连或短路; 2)该片的-CS端与CPU的-MREQ端错连或短

34、路; 3)该片的-CS端与地线错连或短路; 在此,假设芯片与译码器本身都是好的。,(4)如果地址线A13与CPU断线,并搭接到高电平上,将会出现A13恒为“1”的情况。此时存储器只能寻址A13=1的地址空间,A13=0的另一半地址空间将永远访问不到。若对A13=0的地址空间进行访问,只能错误地访问到A13=1的对应空间中去。,22. 某机字长为16位,常规的存储空间为64K字,若想不改用其他高速的存储芯片,而使访存速度提高到8倍,可采取什么措施?画图说明。 解:若想不改用高速存储芯片,而使访存速度提高到8倍,可采取多体交叉存取技术,图示如下:,0 8 M0 8K,1 9 M1 8K,2 10

35、M2 8K,3 11 M3 8K,4 12 M4 8K,5 13 M5 8K,6 14 M6 8K,7 15 M7 8K,存储管理,存储总线,8体交叉访问时序:,启动M0: 启动M1: 启动M2: 启动M3: 启动M4: 启动M5: 启动M6: 启动M7:,t,单体存取周期,由图可知:每隔1/8个存取周期就可在存储总线上获得一个数据。,23. 设CPU共有16根地址线,8根数据线,并用M/-IO作为访问存储器或I/O的控制信号(高电平为访存,低电平为访I/O),-WR(低电平有效)为写命令,-RD(低电平有效)为读命令。设计一个容量为64KB的采用低位交叉编址的8体并行结构存储器。现有右图所示

36、的存储芯片及138译码器。 画出CPU和存储芯片(芯片容量自定)的连接图,并写出图中每个存储芯片的地址范围(用十六进制数表示)。,-OE 允许读 -WE 允许写 -CE 片选,解:芯片容量=64KB/8=8KB 每个芯片(体)的地址范围以8为模低位交叉分布如下:,方案1:8体交叉编址的CPU和存储芯片的连接图:,注:此设计方案只能实现八体之间的低位交叉寻址,但不能实现八体并行操作。,方案2:8体交叉并行存取系统体内逻辑如下:,由于存储器单体的存取周期为T,而CPU的总线访存周期为(1/8)T,故体内逻辑要支持单体的独立工作速率。因此在SRAM芯片的外围加了地址、数据的输入/输出缓冲装置,以及控

37、制信号的扩展装置。,CPU和各体的连接图:由于存储器单体的工作速率和总线速率不一致,因此各体之间存在总线分配问题,存储器不能简单地和CPU直接相连,要在存储管理部件的控制下连接。,24. 一个4体低位交叉的存储器,假设存取周期为T,CPU每隔1/4存取周期启动一个存储体,试问依次访问64个字需多少个存取周期? 解:本题中,只有访问第一个字需一个存取周期,从第二个字开始,每隔1/4存取周期即可访问一个字,因此,依次访问64个字需: 存取周期个数 =(64-1)(1/4)T+T =(63/4+1)T =15.75+1 =16.75T 与常规存储器的速度相比,加快了:(64-16.75)T =47.

38、25T 注:4体交叉存取虽然从理论上讲可将存取速度提高到4倍,但实现时由于并行存取的分时启动需要一定的时间,故实际上只能提高到接近4倍。,25. 什么是“程序访问的局部性”?存储系统中哪一级采用了程序访问的局部性原理? 解:程序运行的局部性原理指:在一小段时间内,最近被访问过的程序和数据很可能再次被访问;在空间上,这些被访问的程序和数据往往集中在一小片存储区;在访问顺序上,指令顺序执行比转移执行的可能性大 (大约 5:1 )。存储系统中Cache主存层次采用了程序访问的局部性原理。,26. 计算机中设置Cache的作用是什么?能不能把Cache的容量扩大,最后取代主存,为什么? 答:计算机中设

39、置Cache主要是为了加速CPU访存速度; 不能把Cache的容量扩大到最后取代主存,主要因为Cache和主存的结构原理以及访问机制不同(主存是按地址访问,Cache是按内容及地址访问)。,27. Cache制作在CPU芯片内有什么好处?将指令Cache和数据Cache分开又有什么好处? 答:Cache做在CPU芯片内主要有下面几个好处: 1)可提高外部总线的利用率。因为Cache在CPU芯片内,CPU访问Cache时不必占用外部总线; 2)Cache不占用外部总线就意味着外部总线可更多地支持I/O设备与主存的信息传输,增强了系统的整体效率; 3)可提高存取速度。因为Cache与CPU之间的数

40、据通路大大缩短,故存取速度得以提高;,将指令Cache和数据Cache分开有如下好处: 1)可支持超前控制和流水线控制,有利于这类控制方式下指令预取操作的完成; 2)指令Cache可用ROM实现,以提高指令存取的可靠性; 3)数据Cache对不同数据类型的支持更为灵活,既可支持整数(例32位),也可支持浮点数据(如64位)。,补充讨论: Cache结构改进的第三个措施是分级实现,如二级缓存结构,即在片内Cache(L1)和主存之间再设一个片外Cache(L2),片外缓存既可以弥补片内缓存容量不够大的缺点,又可在主存与片内缓存间起到平滑速度差的作用,加速片内缓存的调入调出速度(主存L2L1)。,

41、28. 设主存容量为256K字,Cache容量为2K字,块长为4。 (1)设计Cache地址格式,Cache中可装入多少块数据? (2)在直接映射方式下,设计主存地址格式。 (3)在四路组相联映射方式下,设计主存地址格式。 (4)在全相联映射方式下,设计主存地址格式。 (5)若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。,29. 假设CPU执行某段程序时共访问Cache命中4800次,访问主存200次,已知Cache的存取周期是30ns,主存的存取周期是150ns,求Cache的命中率以及Cache-主存系统的平均访问时间和效率,试问该系统的性能提高了多少?,30

42、. 一个组相联映射的Cache由64块组成,每组内包含4块。主存包含4096块,每块由128字组成,访存地址为字地址。试问主存和Cache的地址各为几位?画出主存的地址格式。,31. 设主存容量为1MB,采用直接映射方式的Cache容量为16KB,块长为4,每字32位。试问主存地址为ABCDEH的存储单元在Cache中的什么位置?,32. 设某机主存容量为4MB,Cache容量为16KB,每字块有8个字,每字32位,设计一个四路组相联映射(即Cache每组内共有4个字块)的Cache组织。 (1)画出主存地址字段中各段的位数; (2)设Cache的初态为空,CPU依次从主存第0、1、289号单

43、元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少? (3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度约提高多少倍?,答: (1)由于容量是按字节表示的,则主存地址字段格式划分如下: 8 7 2 3 2 (2)由于题意中给出的字地址是连续的,故(1)中地址格式的最低2位不参加字的读出操作。当主存读0号字单元时,将主存0号字块(07)调入Cache(0组0号块),主存读8号字单元时,将1号块(815)调入Cache(1组0号块) 主存读89号单元时,将11号块(8889)调入Cache(11组0号块)。,共需调90/8 12次,就把主存中的90个字调入Cache。除读第1遍时CPU需访问主存12次外,以后重复读时不需再访问主存。则在908 =720个读操作中: 访Cache次数 =(90-12)+630 =708次 Cache命中率 =708/720 0.98 98% (3)设无Cache时访主存需时720T(T为主存周期),加入Cache后需时: 708T/6+12T =(118+12)T =130T 则:720T/130T 5.54倍 有Cache和无Cache相比,速度提高

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1