1、 计算机组成原理(第二版)唐朔飞 编著第 一 章1. 什么是计算机系统、计算机硬件和计算机软件?硬件和软件哪个更重要?解:P3计算机系统 计算机硬件、软件和数据通信设备的物理或逻辑的综合体。计算机硬件 计算机的物理实体。计算机软件 计算机运行所需的程序及相关资料。硬件和软件在计算机系统中相互依存,缺一不可,因此同样重要。5. 冯 诺依曼计算机的特点是什么?解:冯氏计算机的特点是:P9 由运算器、控制器、存储器、输入设备、输出设备五大部件组成; 指令和数据以同一形式(二进制形式)存于存储器中; 指令由操作码、地址码两大部分组成; 指令在存储器中顺序存放,通常自动顺序取出执行; 以运算器为中心(原
2、始冯氏机) 。7. 解释下列概念:主机、CPU、主存、存储单元、存储元件、存储基元、存储元、存储字、存储字长、存储容量、机器字长、指令字长。解:P10主机是计算机硬件的主体部分,由 CPU+MM(主存或内存)组成;CPU中央处理器(机) ,是计算机硬件的核心部件,由运算器+控制器组成;(早期的运、控不在同一芯片上)主存计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成。存储单元 可存放一个机器字并具有特定存储地址的存储单位;存储元件 存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取;存储
3、字 一个存储单元所存二进制代码的逻辑单位;存储字长 一个存储单元所存二进制代码的位数;存储容量 存储器中可存二进制代码的总量;(通常主、辅存容量分开描述)机器字长 CPU 能同时处理的数据位数;指令字长 一条指令的二进制代码位数;讲评:一种不确切的答法:CPU 与 MM 合称主机;运算器与控制器合称 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 Register,乘商
5、寄存器,乘法运算时存放乘数、除法时存放商的寄存器。 X此字母没有专指的缩写含义,可以用作任一部件名,在此表示操作数寄存器,即运算器中工作寄存器之一,用来存放操作数;MARMemory Address Register,存储器地址寄存器,内存中用来存放欲访问存储单元地址的寄存器;MDRMemory Data Register,存储器数据缓冲寄存器,主存中用来存放从某单元读出、或写入某存储单元数据的寄存器;I/OInput/Output equipment,输入/输出设备,为输入设备和输出设备的总称,用于计算机内部和外界信息的转换与传送;MIPSMillion Instruction Per Se
6、cond,每秒执行百万条指令数,为计算机运算速度指标的一种计量单位;10. 指令和数据都存于存储器中,计算机如何区分它们?解:计算机硬件主要通过不同的时间段来区分指令和数据,即:取指周期(或取指微程序)取出的既为指令,执行周期(或相应微程序)取出的既为数据。另外也可通过地址来源区分,从 PC 指出的存储单元取出的是指令,由指令地址码部分提供操作数地址。问题讨论: 由控制器分析是指令还是数据; 数据进控制器? 指令由指令寄存器存取;指令寄存器有控制功能? 指令和数据的格式不一样;指令由操作码和地址码组成)两者的二进制代码形式不一样? 指令顺序存放,而数据不是;数据为什么不能顺序存放? MAR 放
7、地址,MDR 放数据;取指时 MDR 中也是数据? 存取数据和存取指令的操作在机器中完全一样;无法区分? 指令和数据的地址不一样;某一存储单元只能放数据(或指令)? 指令放在 ROM 中,数据放在 RAM 中;用户程序放在哪?第 三 章1. 什么是总线?总线传输有何特点?为了减轻总线负载,总线上的部件应具备什么特点?解:总线是多个部件共享的传输部件。总线传输的特点是:某一时刻只能有一路信息在总线上传输,即分时使用。为了减轻总线负载,总线上的部件应通过三态驱动缓冲电路与总线连通。讲评:围绕 “为减轻总线负载”的几种说法: 应对设备按速率进行分类,各类设备挂在与自身速率相匹配的总线上; 应采用多总
8、线结构; 总线上只连接计算机的五大部件; 总线上的部件应为低功耗部件。上述措施都无法从根上(工程上)解决问题,且增加了许多不必要(或不可能)的限制。 总线上的部件应具备机械特性、电器特性、功能特性、时间特性;这是不言而喻的。4. 为什么要设置总线判优控制?常见的集中式总线控制有几种?各有何特点?哪种方式响应时间最快?哪种方式对电路故障最敏感?解:总线判优控制解决多个部件同时申请总线时的使用权分配问题;常见的集中式总线控制有三种:链式查询、计数器查询、独立请求;特点:链式查询方式连线简单,易于扩充,对电路故障最敏感;计数器查询方式优先级设置较灵活,对故障不敏感,连线及控制过程较复杂;独立请求方式
9、判优速度最快,但硬件器件用量大,连线多,成本较高。5. 解释下列概念:总线的主设备(或主模块) 、总线的从设备(或从模块) 、总线的传输周期和总线的通信控制。解:总线的主设备(主模块) 指一次总线传输期间,拥有总线控制权的设备(模块) ;总线的从设备(从模块) 指一次总线传输期间,配合主设备完成传输的设备(模块) ,它只能被动接受主设备发来的命令;总线的传输周期 总线完成一次完整而可靠的传输所需时间;总线的通信控制 指总线传送过程中双方的时间配合方式。6. 试比较同步通信和异步通信。解:同步通信 由统一时钟控制的通信,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下
10、降。适合于速度差别不大的场合;异步通信 不由统一时钟控制的通信,部件间采用应答方式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件工作速度差异较大时,有利于提高总线工作效率。8. 为什么说半同步通信同时保留了同步通信和异步通信的特点?解:半同步通信既能像同步通信那样由统一时钟控制,又能像异步通信那样允许传输时间不一致,因此工作效率介于两者之间。10. 为什么要设置总线标准?你知道目前流行的总线标准有哪些?什么叫 plug and play?哪些总线有这一特点?解:总线标准的设置主要解决不同厂家各类模块化产品的兼容问题;目前流行的总线标准有: ISA、EISA、PCI 等;plug and
11、 play即插即用,EISA、PCI 等具有此功能。11. 画一个具有双向传输功能的总线逻辑图。解:此题实际上是要求设计一个双向总线收发器,设计要素为三态、双向、使能等控制功能的实现,可参考 74LS245 等总线收发器芯片内部电路。 逻辑图如下:(n 位)几种错误的设计:几种错误的设计:12. 设数据总线上接有 A、B、C 、D 四个寄存器,要求选用合适的 74 系列芯片,完成下列逻辑设计:(1) 设计一个电路,在同一时间实现 DA、DB 和 DC 寄存器间的传送;(2) 设计一个电路,实现下列操作:T0 时刻完成 D总线;T1 时刻完成总线A;T2 时刻完成 A总线;T3 时刻完成总线B
12、。解: (1)采用三态输出的 D 型寄存器 74LS374 做 A、B 、C、D 四个寄存器,其输出可直接挂总线。A、B 、C 三个寄存器的输入采用同一脉冲打入。注意-OE 为电平控制,与打入脉冲间的时间配合关系为: 现以 8 位总线为例,设计此电路,如下图示:(2)寄存器设置同(1) ,由于本题中发送、接收不在同一节拍,因此总线需设锁存器缓冲,锁存器采用 74LS373(电平使能输入) 。节拍、脉冲配合关系如下:节拍、脉冲分配逻辑如下:节拍、脉冲时序图如下:以 8 位总线为例,电路设计如下:(图中,A、B 、C 、D 四个寄存器与数据总线的连接方法同上。 )几种错误的设计:(1)几种错误的设
13、计:(1)几种错误的设计:(2)几种错误的设计:(2)几种错误的设计:第 四 章3. 存储器的层次结构主要体现在什么地方?为什么要分这些层次?计算机如何管理这些层次?答:存储器的层次结构主要体现在 Cache主存和主存辅存这两个存储层次上。 Cache主存层次在存储系统中主要对 CPU 访存起加速作用,即从整体运行的效果分析,CPU 访存速度加快,接近于 Cache 的速度,而寻址空间和位价却接近于主存。主存辅存层次在存储系统中主要起扩容作用,即从程序员的角度看,他所使用的存储器其容量和位价接近于辅存,而速度接近于主存。综合上述两个存储层次的作用,从整个存储系统来看,就达到了速度快、容量大、位
14、价低的优化效果。主存与 CACHE 之间的信息调度功能全部由硬件自动完成。而主存辅存层次的调度目前广泛采用虚拟存储技术实现,即将主存与辅存的一部份通过软硬结合的技术组成虚拟存储器,程序员可使用这个比主存实际空间(物理地址空间)大得多的虚拟地址空间(逻辑地址空间)编程,当程序运行时,再由软、硬件自动配合完成虚拟地址空间与主存实际物理空间的转换。因此,这两个层次上的调度或转换操作对于程序员来说都是透明的。4. 说明存取周期和存取时间的区别。解:存取周期和存取时间的主要区别是:存取时间仅为完成一次操作的时间,而存取周期不仅包含操作时间,还包含操作后线路的恢复时间。即:存取周期 = 存取时间 + 恢复
15、时间5. 什么是存储器的带宽?若存储器的数据总线宽度为 32 位,存取周期为 200ns,则存储器的带宽是多少?解:存储器的带宽指单位时间内从存储器进出信息的最大数量。存储器带宽 = 1/200ns 32 位= 160M 位/秒 = 20MB/S = 5M 字/秒注意字长( 32 位)不是 16 位。(注:本题的兆单位来自时间=106)6. 某机字长为 32 位,其存储容量是 64KB,按字编址它的寻址范围是多少?若主存以字节编址,试画出主存字地址和字节地址的分配情况。解:存储容量是 64KB 时,按字节编址的寻址范围就是 64KB,则:按字寻址范围 = 64K8 / 32=16K 字按字节编
16、址时的主存地址分配图如下:讨论:1、一个存储器不可能有两套地址,注意字长 32 位,不是 16 位 ,不能按 2 字节编址;2、本题与 IBM370、PDP-11 机无关;3、按字寻址时,地址仍为 16 位; ( :地址 14 位,单元 16K 个,按字编址 4K 空间。 )4、字寻址的单位为字,不是 B。5、按字编址的地址范围为 016K-1,空间为 16K 字;按字节编址的地址范围为 064K-1,空间为 64KB。不能混淆;6、画存储空间分配图时要画出上限。7. 一个容量为 16K32 位的存储器,其地址线和数据线的总和是多少?当选用下列不同规格的存储芯片时,各需要多少片?1K4 位,2
17、K8 位,4K4 位,16K1 位,4K8 位,8K8 位解:地址线和数据线的总和 = 14 + 32 = 46 根;各需要的片数为:1K4:16K32 / 1K4 = 168 = 128 片 2K8:16K32 / 2K8 = 84 = 32 片 4K4:16K32 / 4K4 = 48 = 32 片 16K1:16K32 / 16K1 = 32 片4K8:16K32 / 4K8 = 44 = 16 片8K8:16K32 / 8K8 = 24 = 8 片 讨论:地址线根数与容量为 2 的幂的关系,在此为 214,14 根;:32=25, 5 根)数据线根数与字长位数相等,在此为 32 根。
18、(不是 2 的幂的关系。9. 什么叫刷新?为什么要刷新?说明刷新有几种方法。解:刷新 对 DRAM 定期进行的全部重写过程;刷新原因 因电容泄漏而引起的 DRAM 所存信息的衰减需要及时补充,因此安排了定期刷新操作;常用的刷新方法有三种 集中式、分散式、异步式。集中式:在最大刷新间隔时间内,集中安排一段时间进行刷新;分散式:在每个读 /写周期之后插入一个刷新周期,无 CPU 访存死时间;异步式:是集中式和分散式的折衷。讨论:1、刷新与再生的比较:共同点:动作机制一样。都是利用 DRAM 存储元破坏性读操作时的重写过程实现;操作性质一样。都是属于重写操作。区别:解决的问题不一样。再生主要解决 D
19、RAM 存储元破坏性读出时的信息重写问题;刷新主要解决长时间不访存时的信息衰减问题。操作的时间不一样。再生紧跟在读操作之后,时间上是随机进行的;刷新以最大间隔时间为周期定时重复进行。动作单位不一样。再生以存储单元为单位,每次仅重写刚被读出的一个字的所有位;刷新以行为单位,每次重写整个存储器所有芯片内部存储矩阵的同一行。芯片内部 I/O 操作不一样。读出再生时芯片数据引脚上有读出数据输出;刷新时由于 CAS信号无效,芯片数据引脚上无读出数据输出(唯 RAS 有效刷新,内部读) 。鉴于上述区别,为避免两种操作混淆,分别叫做再生和刷新。2、CPU 访存周期与存取周期的区别:CPU 访存周期是从 CP
20、U 一边看到的存储器工作周期,他不一定是真正的存储器工作周期;存取周期是存储器速度指标之一,它反映了存储器真正的工作周期时间。3、分散刷新是在读写周期之后插入一个刷新周期,而不是在读写周期内插入一个刷新周期,但此时读写周期和刷新周期合起来构成 CPU 访存周期。 4、刷新定时方式有 3 种而不是 2 种,一定不要忘了最重要、性能最好的异步刷新方式。10. 半导体存储器芯片的译码驱动方式有几种?解:半导体存储器芯片的译码驱动方式有两种:线选法和重合法。线选法:地址译码信号只选中同一个字的所有位,结构简单,费器材;重合法:地址分行、列两部分译码,行、列译码线的交叉点即为所选单元。这种方法通过行、列
21、译码信号的重合来选址,也称矩阵译码。可大大节省器材用量,是最常用的译码驱动方式。11. 画出用 10244 位的存储芯片组成一个容量为 64K8 位的存储器逻辑框图。要求将64K 分成 4 个页面,每个页面分 16 组,指出共需多少片存储芯片。解:设采用 SRAM 芯片,总片数 = 64K8 位 / 10244 位= 642 = 128 片题意分析:本题设计的存储器结构上分为总体、页面、组三级,因此画图时也应分三级画。首先应确定各级的容量:页面容量 = 总容量 / 页面数= 64K8 位 / 4 = 16K8 位;组容量 = 页面容量 / 组数= 16K8 位 / 16 = 1K8 位;组内片
22、数 = 组容量 / 片容量 = 1K8 位 / 1K4 位 = 2 片;地址分配:页面逻辑框图:(字扩展)存储器逻辑框图:(字扩展)讨论:页选地址取 A11、A10 ,页内片选取 A15A12; (页内组地址不连贯? )不分级画;问题:1、不合题意;2、芯片太多难画;3、无页译码,6 :64 译码选组。 页选直接联到芯片;问题:1、SRAM 一般只一个片选端;2、译码输出负载能力需考虑。附加门电路组合 2 级译码信号; (应利用译码器使能端输入高一级的译码选通信号)不设组选,页选同时选 8 组(16 组) ,并行存取? 组译码无页选输入; 2 片芯片合为一体画;文字叙述代替画图; 地址线、数据
23、线不标信号名及信号序号。 12. 设有一个 64K8 位的 RAM 芯片,试问该芯片共有多少个基本单元电路(简称存储基元)?欲设计一种具有上述同样多存储基元的芯片,要求对芯片字长的选择应满足地址线和数据线的总和为最小,试确定这种芯片的地址线和数据线,并说明有几种解答。解:存储基元总数 = 64K8 位 = 512K 位 = 219 位;思路:如要满足地址线和数据线总和最小,应尽量把存储元安排在字向,因为地址位数和字数成 2 的幂的关系,可较好地压缩线数。设地址线根数为 a,数据线根数为 b,则片容量为:2ab = 219;b = 219-a;若 a = 19,b = 1,总和 = 19+1 =
24、 20;a = 18,b = 2,总和 = 18+2 = 20;a = 17,b = 4,总和 = 17+4 = 21;a = 16,b = 8,总和 = 16+8 = 24; 由上可看出:片字数越少,片字长越长,引脚数越多。片字数、片位数均按 2 的幂变化。结论:如果满足地址线和数据线的总和为最小,这种芯片的引脚分配方案有两种:地址线 = 19 根,数据线 = 1 根;或地址线 = 18 根,数据线 = 2 根。采用字、位扩展技术设计; 13. 某 8 位微型机地址码为 18 位,若使用 4K4 位的 RAM 芯片组成模块板结构的存储器,试问:(1)该机所允许的最大主存空间是多少?(2)若每
25、个模块板为 32K8 位,共需几个模块板?(3)每个模块板内共有几片 RAM 芯片?(4)共有多少片 RAM?(5)CPU 如何选择各模块板?解:( 1)218 = 256K,则该机所允许的最大主存空间是 256K8 位(或 256KB) ; ( 2)模块板总数 = 256K8 / 32K8= 8 块;( 3)板内片数 = 32K8 位 / 4K4 位= 82 = 16 片;( 4)总片数 = 16 片8 = 128 片;( 5)CPU 通过最高 3 位地址译码选板,次高 3 位地址译码选片。地址格式分配如下:讨论:不对板译码、片译码分配具体地址位; 板内片选设 4 位地址;不设板选,8 个板
26、同时工作,总线分时传送; 8 位芯片; 8 板通过 3:8 译码器组成 256K 14. 设 CPU 共有 16 根地址线,8 根数据线,并用-MREQ (低电平有效)作访存控制信号,R/-W 作读写命令信号(高电平为读,低电平为写) 。现有下列存储芯片:ROM(2K8 位, 4K4 位,8K8 位) ,RAM(1K4 位, 2K8 位,4K8 位) ,及74138 译码器和其他门电路(门电路自定) 。试从上述规格中选用合适芯片,画出 CPU 和存储芯片的连接图。要求:(1)最小 4K 地址为系统程序区, 409616383 地址范围为用户程序区;(2)指出选用的存储芯片类型及数量;(3)详细
27、画出片选逻辑。解:(1)地址空间分配图:(2)选片:ROM:4K4 位:2 片;RAM:4K8 位:3 片;(3)CPU 和存储器连接逻辑图及片选逻辑:讨论:1)选片:当采用字扩展和位扩展所用芯片一样多时,选位扩展。理由:字扩展需设计片选译码,较麻烦,而位扩展只需将数据线按位引出即可。本题如选用 2K8 ROM,片选要采用二级译码,实现较麻烦。当需要 RAM、ROM 等多种芯片混用时,应尽量选容量等外特性较为一致的芯片,以便于简化连线。2)应尽可能的避免使用二级译码,以使设计简练。但要注意在需要二级译码时如果不使用,会使选片产生二义性。3)片选译码器的各输出所选的存储区域是一样大的,因此所选芯
28、片的字容量应一致,如不一致时就要考虑二级译码。另外如把片选译码输出“或”起来使用也是不合理的。4)其它常见错误:138 的 C 输入端接地;(相当于把 138 当 2-4 译码器用,不合理) EPROM 的 PD 端接地;(PD 为功率下降控制端,当输入为高时,进入功率下降状态。因此 PD 端的合理接法是与片选端-CS 并联。 ) ROM 连读/写控制线-WE ;(ROM 无读/写控制端)15. CPU 假设同上题,现有 8 片 8K8 位的 RAM 芯片与 CPU 相连,试回答:(1)用 74138 译码器画出 CPU 与存储芯片的连接图;(2)写出每片 RAM 的地址范围;(3)如果运行时
29、发现不论往哪片 RAM 写入数据后,以 A000H 为起始地址的存储芯片都有与其相同的数据,分析故障原因。(4)根据(1)的连接图,若出现地址线 A13 与 CPU 断线,并搭接到高电平上,将出现什么后果?解:( 1)CPU 与存储器芯片连接逻辑图:(2)地址空间分配图:(3)如果运行时发现不论往哪片 RAM 写入数据后,以 A000H 为起始地址的存储芯片(第5 片)都有与其相同的数据,则根本的故障原因为:该存储芯片的片选输入端很可能总是处于低电平。可能的情况有:1)该片的-CS 端与-WE 端错连或短路;2)该片的-CS 端与 CPU 的-MREQ 端错连或短路;3)该片的-CS 端与地线
30、错连或短路;在此,假设芯片与译码器本身都是好的。(4)如果地址线 A13 与 CPU 断线,并搭接到高电平上,将会出现 A13 恒为“1” 的情况。此时存储器只能寻址 A13=1 的地址空间(奇数片),A13=0 的另一半地址空间(偶数片)将永远访问不到。若对 A13=0 的地址空间(偶数片)进行访问,只能错误地访问到 A13=1 的对应空间(奇数片)中去。17. 某机字长 16 位,常规的存储空间为 64K 字,若想不改用其他高速的存储芯片,而使访存速度提高到 8 倍,可采取什么措施?画图说明。解:若想不改用高速存储芯片,而使访存速度提高到 8 倍,可采取多体交叉存取技术,图示如下:8 体交
31、叉访问时序:18. 什么是“程序访问的局部性” ?存储系统中哪一级采用了程序访问的局部性原理?解:程序运行的局部性原理指:在一小段时间内,最近被访问过的程序和数据很可能再次被访问;在空间上,这些被访问的程序和数据往往集中在一小片存储区;在访问顺序上,指令顺序执行比转移执行的可能性大 (大约 5:1 )。存储系统中 Cache主存层次采用了程序访问的局部性原理。20. Cache 做在 CPU 芯片内有什么好处?将指令 Cache 和数据 Cache 分开又有什么好处?答:Cache 做在 CPU 芯片内主要有下面几个好处:1)可提高外部总线的利用率。因为 Cache 在 CPU 芯片内, CP
32、U 访问 Cache 时不必占用外部总线;2)Cache 不占用外部总线就意味着外部总线可更多地支持 I/O 设备与主存的信息传输,增强了系统的整体效率;3)可提高存取速度。因为 Cache 与 CPU 之间的数据通路大大缩短 ,故存取速度得以提高;将指令 Cache 和数据 Cache 分开有如下好处:1)可支持超前控制和流水线控制,有利于这类控制方式下指令预取操作的完成;2)指令 Cache 可用 ROM 实现,以提高指令存取的可靠性;3)数据 Cache 对不同数据类型的支持更为灵活,既可支持整数(例 32 位) ,也可支持浮点数据(如 64 位) 。补充讨论:Cache 结构改进的第三
33、个措施是分级实现,如二级缓存结构,即在片内 Cache(L1)和主存之间再设一个片外 Cache(L2) ,片外缓存既可以弥补片内缓存容量不够大的缺点,又可在主存与片内缓存间起到平滑速度差的作用,加速片内缓存的调入调出速度(主存L2L1 ) 。21. 设某机主存容量为 4MB,Cache 容量为 16KB,每字块有 8 个字,每字 32 位,设计一个四路组相联映象(即 Cache 每组内共有 4 个字块)的 Cache 组织,要求:(1)画出主存地址字段中各段的位数;(2)设 Cache 的初态为空,CPU 依次从主存第 0、1、299 号单元读出 100 个字(主存一次读出一个字) ,并重复
34、按此次序读 8 次,问命中率是多少?(3)若 Cache 的速度是主存的 6 倍,试问有 Cache 和无 Cache 相比,速度提高多少倍?答:(1)由于容量是按字节表示的,则主存地址字段格式划分如下:8 7 2 3 2 (2)由于题意中给出的字地址是连续的,故(1 )中地址格式的最低 2 位不参加字的读出操作。当主存读 0 号字单元时,将主存 0 号字块(07)调入 Cache(0 组 x 号块) ,主存读 8 号字单元时,将 1 号块( 815)调入 Cache(1 组 x 号块) 主存读 96 号单元时,将 12 号块(96103)调入 Cache( 12 组 x 号块) 。 共需调
35、100/8 13 次,就把主存中的 100 个数调入 Cache。除读第 1 遍时 CPU 需访问主存 13 次外,以后重复读时不需再访问主存。则在 800 个读操作中:访 Cache 次数=(100-13)+700=787 次 0.98 Cache 命中率=787/800 98%(3)设无 Cache 时访主存需时 800T(T 为主存周期) ,加入 Cache 后需时:(131.167+13)T T/6+13T787144.167T 5.55 倍则: 800T/144.167T 有 Cache 和无 Cache 相比,速度提高 4.55 倍左右。23. 画出 RZ、NRZ 、NRZ1、 P
36、E、FM 写入数字串 1011001 的写入电流波形图。解:24. 以写入 1001 0110 为例,比较调频制和改进调频制的写电流波形图。解:写电流波形图如下:比较:1)FM 和 MFM 写电流在位周期中心处的变化规则相同;2)MFM 制除连续一串“0”时两个 0 周期交界处电流仍变化外,基本取消了位周期起始处的电流变化;3)FM 制记录一位二进制代码最多两次磁翻转, MFM 制记录一位二进制代码最多一次磁翻转,因此 MFM 制的记录密度可提高一倍。上图中示出了在 MFM 制时位周期时间缩短一倍的情况。由图可知,当 MFM 制记录密度提高一倍时,其写电流频率与 FM 制的写电流频率相当;4)
37、由于 MFM 制并不是每个位周期都有电流变化,故自同步脉冲的分离需依据相邻两个位周期的读出信息产生,自同步技术比 FM 制复杂得多。25. 画出调相制记录 01100010 的驱动电流、记录磁通、感应电势、同步脉冲及读出代码等几种波形。解:注意:1)画波形图时应严格对准各种信号的时间关系。2)读出感应信号不是方波而是与磁翻转边沿对应的尖脉冲;3)同步脉冲的出现时间应能“包裹”要选的读出感应信号,才能保证选通有效的读出数据信号,并屏蔽掉无用的感应信号。4)最后读出的数据代码应与写入代码一致。26. 磁盘组有六片磁盘,每片有两个记录面,存储区域内径 22 厘米,外径 33 厘米,道密度为 40 道
38、/厘米,内层密度为 400 位/厘米,转速 2400 转/分,问:(1)共有多少存储面可用?(2)共有多少柱面?(3)盘组总存储容量是多少?(4)数据传输率是多少?解:(1)若去掉两个保护面,则共有:6 2 - 2 = 10 个存储面可用;(2)有效存储区域=(33-22 )/ 2 = 5.5cm柱面数 = 40 道/cm 5.5= 220 道= (3)内层道周长 =22 69.08cm道容量 =400 位/cm69.08cm= 3454B面容量 =3454B 220 道= 759,880B盘组总容量 = 759,880B 10 面= 7,598 ,800B(4)转速 = 2400 转 / 6
39、0 秒= 40 转/秒数据传输率 = 3454B 40 转/秒= 138,160 B/S 注意:1)计算盘组容量时一般应去掉上、下保护面;的精度选取不同将引起答案不同,一般取两位小数;2)盘组总磁道数(=一个盘面上的磁道数) 3)柱面数4)数据传输率与盘面数无关;5)数据传输率的单位时间是秒,不是分。27. 某磁盘存储器转速为 3000 转/分,共有 4 个记录盘面,每毫米 5 道,每道记录信息 12 288 字节,最小磁道直径为 230mm,共有 275 道,求:(1)磁盘存储器的存储容量;(2)最高位密度(最小磁道的位密度)和最低位密度;(3)磁盘数据传输率;(4)平均等待时间。解:( 1
40、)存储容量 = 275 道12 288B/道4 面 = 13 516 800B( 2)最高位密度 = 12 288B/230= 17B/mm = 136 位/mm (向下取整)最大磁道直径=230mm+275 道/5 道 2= 230mm + 110mm = 340mm 最低位密度 = 12 288B / 340= 11B/mm = 92 位 / mm (向下取整) ( 3)磁盘数据传输率= 12 288B 3000 转/分=12 288B 50 转/秒=614 400B/S( 4)平均等待时间 = 1/50 / 2 = 10ms讨论:1、本题给出的道容量单位为字节,因此算出的存储容量单位也是
41、字节,而不是位;2、由此算出的位密度单位最终应转换成 bpm(位/毫米) ;3、平均等待时间是磁盘转半圈的时间,与容量无关。第 五 章1. I/O 有哪些编址方式?各有何特点?解:常用的 I/O 编址方式有两种: I/O 与内存统一编址和 I/O 独立编址;特点: I/O 与内存统一编址方式的 I/O 地址采用与主存单元地址完全一样的格式, I/O 设备和主存占用同一个地址空间,CPU 可像访问主存一样访问 I/O 设备,不需要安排专门的 I/O指令。I/O 独立编址方式时机器为 I/O 设备专门安排一套完全不同于主存地址格式的地址编码,此时 I/O 地址与主存地址是两个独立的空间,CPU 需
42、要通过专门的 I/O 指令来访问 I/O 地址空间。讨论:I/O 编址方式的意义:I/O 编址方式的选择主要影响到指令系统设计时 I/O 指令的安排,因此描述其特点时一定要说明此种 I/O 编址方式对应的 I/O 指令设置情况。 I/O 与内存统一编址方式将 I/O 地址看成是存储地址的一部分,占用主存空间;问题:确切地讲, I/O 与内存统一编址的空间为总线空间, I/O 所占用的是内存的扩展空间。I/O 独立编址方式有明显的 I/O 地址标识, 而 I/O 与内存统一的编址方式没有;问题:无论哪种编址方式,I/O 地址都是由相应的指令提供的,而地址本身并没有特殊的标识。2. 简要说明 CP
43、U 与 I/O 之间传递信息可采用哪几种联络方式?它们分别用于什么场合?答: CPU 与 I/O 之间传递信息常采用三种联络方式:直接控制(立即响应) 、 同步、异步。适用场合分别为:直接控制适用于结构极简单、速度极慢的 I/O 设备,CPU 直接控制外设处于某种状态而无须联络信号。同步方式采用统一的时标进行联络,适用于 CPU 与 I/O 速度差不大,近距离传送的场合。异步方式采用应答机制进行联络,适用于 CPU 与 I/O 速度差较大、远距离传送的场合。讨论:注意 I/O 交换方式、I/O 传送分类方式与 I/O 联络方式的区别:串行、并行 I/O 传送方式常用于描述 I/O 传送宽度的类
44、型;I/O 交换方式主要讨论传送过程的控制方法;I/O 联络方式主要解决传送时 CPU 与 I/O 之间如何取得通信联系以建立起操作上的同步配合关系。 同步方式适用于 CPU 与 I/O 工作速度完全同步的场合。问题: I/O 要达到与 CPU 工作速度完全同步一般是不可能的。同步方式的实质是 “就慢不就快”,如采用同步方式一般 CPU 达不到满负荷工作。6. 字符显示器的接口电路中配有缓冲存储器和只读存储器,各有何作用?解:显示缓冲存储器的作用是支持屏幕扫描时的反复刷新;只读存储器作为字符发生器使用,他起着将字符的 ASCII 码转换为字形点阵信息的作用。8. 某计算机的 I/O 设备采用异
45、步串行传送方式传送字符信息。字符信息的格式为一位起始位、七位数据位、一位校验位和一位停止位。若要求每秒钟传送 480 个字符,那么该设备的数据传送速率为多少?解:48010=4800 位/ 秒=4800 波特;波特是数据传送速率波特率的单位。注:题意中给出的是字符传送速率,即:字符/秒。要求的是数据传送速率,串行传送时一般用波特率表示。两者的区别:字符传送率是数据的“纯”有效传送率,不含数据格式信息;波特率是 “毛”传送率,含数据格式信息。10. 什么是 I/O 接口?为什么要设置 I/O 接口?I/O 接口如何分类?解: I/O 接口一般指 CPU 和 I/O 设备间的连接部件; I/O 接
46、口分类方法很多,主要有:按数据传送方式分有并行接口和 串行接口两种;按数据传送的控制方式分有程序控制接口、程序中断接口、DMA 接口三种。12. 结合程序查询方式的接口电路,说明其工作过程。解:程序查询接口工作过程如下(以输入为例):开命令接收门;选中,发 SEL 信号 设备选择器译码接口 地址总线 1)CPU 发I/O 地址设备开始工作;接口向设备发启动命令 D 置 0,B 置 1 2)CPU 发启动命令DBR; 3)CPU 等待,输入设备读出数据B 置 0,D 置 1;接口4)外设工作完成,完成信号CPU;控制总线 5)准备就绪信号6)输入: CPU 通过输入指令( IN)将 DBR 中的
47、数据取走;若为输出,除数据传送方向相反以外,其他操作与输入类似。工作过程如下:开命令接收门; 选中,发 SEL 信号设备选择器译码 接口地址总线1)CPU 发I/O 地址2)输出: CPU 通过输出指令( OUT)将数据放入接口 DBR 中; 设备开始工作;接口向设备发启动命令 D 置 0,B 置 1 3)CPU 发启动命令4)CPU 等待,输出设备将数据从 DBR 取走;B 置 0,D 置 1;接口 5)外设工作完成,完成信号CPU,CPU 可通过指令再次向接口 DBR 输出数据,进行第二次传送。 控制总线6)准备就绪信号13. 说明中断向量地址和入口地址的区别和联系。解:中断向量地址和入口
48、地址的区别:向量地址是硬件电路(向量编码器)产生的中断源的内存地址编号,中断入口地址是中断服务程序首址。中断向量地址和入口地址的联系:中断向量地址可理解为中断服务程序入口地址指示器(入口地址的地址) ,通过它访存可获得中断服务程序入口地址。 (两种方法:在向量地址所指单元内放一条 JUM 指令;主存中设向量地址表。参考 8.4.3)讨论:硬件向量法的实质:当响应中断时,为了更快、更可靠的进入对应的中断服务程序执行,希望由硬件直接提供中断服务程序入口地址。但在内存地址字较长时这是不可能的。因此由硬件先提供中断源编号、再由编号间接地获得中断服务程序入口地址。这种中断源的编号即向量地址。由于一台计算机系统可带的中断源数量很有限,因此向量地址比内存地址短得多,用编码器类逻辑部件实现很方便。14. 在什么条件下,I/O 设备可以向 CPU 提出中断请求?解:I/O 设备向 CPU 提出中断请求的条件是:I/O 接口中的设备工作完成状态为 1(D=1) ,中断屏蔽码为 0 (MASK=0) ,且 CPU 查询中断时,中断请求触发器状态为 1(INTR=1) 。15. 什么是中断允许触发器?它有何作用?解:中断允许触发器是 CPU 中断系统中的一个部件,他起着开关中断的作用(即中断总开关,则中断屏蔽触发器可视为中断的