计算机组成原理习题答案蒋本珊 联系客服

发布时间 : 星期三 文章计算机组成原理习题答案蒋本珊更新完毕开始阅读8049fc24ecfdc8d376eeaeaad1f34693daef102c

线总位数是多少? 其中几位用于选板? 几位用于选片? 几位用作片内地址?

解:(1) 需1024 × 1 的芯片128 片。 (2) 该存储器所需的地址线总位数是14位,其中2位用于选板,2位用于选片,10位用作片内地址。

14 .已知某机字长8 位,现采用半导体存储器作主存,其地址线为16 位,若使用1K × 4 的SRAM 芯片组成该机所允许的最大主存空间,并采用存储模板结构形式。 (1) 若每块模板容量为4K × 8 ,共需多少块存储模板? (2) 画出一个模板内各芯片的连接逻辑图。

解:(1) 根据题干可知存储器容量为216 = 64KB ,故共需16 块存储模板。 (2) 一个模板内各芯片的连接逻辑图如图5-20 所示。

15 .某半导体存储器容量16K × 8 ,可选SRAM 芯片的容量为4K × 4 ;地址总线A15 ~ A0 (低) ,双向数据总线D7 ~ D0 (低) ,由R/W线控制读/写。请设计并画出该存储器的逻辑图,并注明地址分配、片选逻辑及片选信号的极性。

解:存储器的逻辑图与图5唱20 很相似,区别仅在于地址线的连接上,故省略。 地址分配如下:

16 .现有如下存储芯片:2K × 1 的ROM 、4K × 1 的RAM 、8K × 1 的ROM 。若用它们组成容量为16KB 的存储器,前4KB 为ROM ,后12KB 为RAM ,CPU 的地址总线16 位。

(1) 各种存储芯片分别用多少片?

(2) 正确选用译码器及门电路,并画出相应的逻辑结构图。 (3) 指出有无地址重叠现象。

解:(1) 需要用2K × 1 的ROM 芯片16 片,4K × 1 的RAM 芯片24片。不能使用8K × 1 的ROM 芯片,因为它大于ROM 应有的空间。 (2) 各存储芯片的地址分配如下:

17 .用容量为16K × 1 的DRAM 芯片构成64KB 的存储器。 (1) 画出该存储器的结构框图。

(2) 设存储器的读/写周期均为0 .5μs ,CPU 在1μs 内至少要访存一次,试问采用哪种刷新方式比较合理? 相邻两行之间的刷新间隔是多少? 对全部存储单元刷新一遍所需的实际刷新时间是多少?

解:(1) 存储器的结构框图如图5-22 所示。 (2) 因为要求CPU 在1μs 内至少要访存一次,所以不能使用集中刷新方式,分散和异步刷新方式都可以使用,但异步刷新方式比较合理。

相邻两行之间的刷新间隔= 最大刷新间隔时间÷ 行数= 2ms ÷ 128 = 15 .625μs 。取

15 .5μs ,即进行读或写操作31 次之后刷新一行。

对全部存储单元刷新一遍所需的实际刷新时间= 0 .5μs × 128 = 64μs

18 .有一个8 位机,采用单总线结构,地址总线16 位(A15 ~ A0 ) ,数据总线8 位(D7 ~ D0 ) ,控制总线中与主存有关的信号有MREQ(低电平有效允许访存)和R/W(高电平为读命令,低电平为写命令) 。

主存地址分配如下:从0 ~ 8191 为系统程序区,由ROM 芯片组成;从8192 ~ 32767

为用户程序区;最后(最大地址)2K 地址空间为系统程序工作区。(上述地址均用十进制表示,按字节编址。)

现有如下存储芯片:8K × 8 的ROM ,16K × 1 、2K × 8 、4K × 8 、8K × 8 的SRAM 。请从上述规格中选用芯片设计该机主存储器,画出主存的连接框图,并请注意画出片选逻辑及与CPU 的连接。

解:根据CPU 的地址线、数据线,可确定整个主存空间为64K × 8 。系统程序区由ROM 芯片组成;用户程序区和系统程序工作区均由RAM 芯片组成。共需:8K × 8 的ROM 芯片1 片,8K × 8 的SRAM 芯片3 片,2K × 8 的SRAM 芯片1 片。主存地址分配如图5-23 所示,主存的连接框图如图5-24 所示。

19 .某半导体存储器容量15KB ,其中固化区8KB ,可选EPROM 芯片为4K × 8 ;可随机读/写区7KB ,可选SRAM 芯片有:4K × 4 、2K × 4 、1K × 4 。地址总线A15 ~ A0 (A0 为最低位) ,双向数据总线D7 ~ D0 (D0 为最低位) ,R/W控制读/写,MREQ为低电平时允许存储器工作信号。请设计并画出该存储器逻辑图,注明地址分配、片选逻辑、片选信号极性等。

20 .某机地址总线16 位A15 ~ A0 (A0 为最低位) ,访存空间64KB 。外围设备与主存统一编址,I/O 空间占用FC00 ~ FFFFH 。现用2164 芯片(64K × 1)构成主存储器,请设计并画出该存储器逻辑图,并画出芯片地址线、数据线与总线的连接逻辑以及行选信号与列选信号的逻辑式,使访问I/O 时不访问主存。动态刷新逻辑可以暂不考虑。

解:存储器逻辑图如图5-26 所示,为简单起见,在图中没有考虑行选信号和列选信 号,行选信号和列选信号的逻辑式可参考下题。

在64KB 空间的最后1KB 为I/O 空间,在此区间CS无效,不访问主存。

21 .已知有16K × 1 的DRAM 芯片,其引脚功能如下:地址输入A6 ~ A0 ,行地址选择RAS ,列地址选择CAS ,数据输入端DIN ,数据输出端DOUT ,控制端WE 。请用给定芯片构成256KB 的存储器,采用奇偶校验,试问:需要芯片的总数是多少? 并请: (1) 正确画出存储器的连接框图。 (2) 写出各芯片RAS和CAS形成条件。

(3) 若芯片内部采用128 × 128 矩阵排列,求异步刷新时该存储器的刷新间隔。

解:(1) 需要的芯片数= 128 片,存储器的连接框图如图5-27 所示。 (3) 若芯片内部采用128 × 128 矩阵排列,设芯片的最大刷新间隔时间为2ms ,则相

邻两行之间的刷新间隔为:

刷新间隔= 最大刷新间隔时间÷ 行数= 2ms ÷ 128 = 15 .625μs

可取刷新间隔15 .5μs 。22.并行存储器有哪几种编址方式? 简述低位交叉编址存储器的工作原理。

解:并行存储器有单体多字、多体单字和多体多字等几种系统。

多体交叉访问存储器可分为高位交叉编址存储器和低位交叉编址存储器。低位交叉

编址又称为横向编址,连续的地址分布在相邻的存储体中,而同一存储体内的地址都是不 连续的。存储器地址寄存器的低位部分经过译码选择不同的存储体,而高位部分则指向 存储体内的存储字。如果采用分时启动的方法,可以在不改变每个存储体存取周期的前 提下,提高整个主存的速度。

22 .并行存储器有哪几种编址方式? 简述低位交叉编址存储器的工作原理。

解:并行存储器有单体多字、多体单字和多体多字等几种系统。多体交叉访问存储器可分为高位交叉编址存储器和低位交叉编址存储器。低位交叉编址又称为横向编址,连续的地址分布在相邻的存储体中,而同一存储体内的地址都是不连续的。存储器地址寄存器的低位部分经过译码选择不同的存储体,而高位部分则指向存储体内的存储字。如果采用分时启动的方法,可以在不改变每个存储体存取周期的前提下,提高整个主存的速度。 23 .什么是高速缓冲存储器? 它与主存是什么关系? 其基本工作过程如何?

解:高速缓冲存储器位于主存和CPU 之间,用来存放当前正在执行的程序段和数据中的活跃部分,使CPU 的访存操作大多数针对Cache 进行,从而使程序的执行速度大大提高。高速缓冲存储器的存取速度接近于CPU 的速度,但是容量较小,它保存的信息只是主存中最急

需处理的若干块的副本。当CPU 发出读请求时,如果Cache 命中,就直接对Cache 进行读操作,与主存无关;如果Cache 不命中,则仍需访问主存,并把该块信息一次从主存调入

Cache 内。若此时Cache 已满,则须根据某种替换算法,用这个块替换掉Cache 中原来的某块信息。

24 .Cache 做在CPU 芯片内有什么好处? 将指令Cache 和数据Cache 分开又有什么好处?

解:Cache 做在CPU 芯片内可以提高CPU 访问Cache 的速度。将指令Cache 和数据Cache 分开的好处是分体缓存支持并行访问,即在取指部件取指令的同时,取数部件要取数据。并且,指令在程序执行中一般不需要修改,故指令Cache 中的内容不需写回到主存中去。

25 .设某机主存容量为4MB ,Cache 容量为16KB ,每块包含8 个字,每字32 位,设计一个四路组相联映像(即Cache 每组内共有四个块)的Cache 组织,要求: (1) 画出主存地址字段中各段的位数。 (2) 设Cache 的初态为空,CPU 依次从主存第0 、1 、2 、? 、99 号单元读出100 个字(主

存一次读出一个字) ,并重复按此次序读8 次,问命中率是多少?

(3) 若Cache 的速度是主存的6 倍,试问有Cache 和无Cache 相比,速度提高多少倍?

解:(1) 主存容量为4MB ,按字节编址,所以主存地址为22 位,地址格式如图5-29所示。

(2) 由于每个字块有8 个字,所以主存第0 、1 、2 、? 、99 号字单元分别在字块0 ~ 12

中,采用四路组相联映像将分别映像到第0 组~ 12 组中,但Cache 起始为空,所以第一次读时每一块中的第一个单元没命中,但后面7 次每个单元均可以命中。 (3) 设Cache 的存取周期为T ,则主存的存取周期为6 T 。 无Cache 的访存时间为6 T

所以速度提高倍数= 6 ÷ 1 .096 = 5 .47 倍。 26 .什么叫虚拟存储器? 采用虚拟存储技术能解决什么问题?

解:虚拟存储器由主存储器和联机工作的辅助存储器(通常为磁盘存储器)共同组成,这两个存储器在硬件和系统软件的共同管理下工作,对于应用程序员,可以把它们看作是一个单一的存储器。

采用虚拟存储技术可以解决主存容量不足的问题。虚拟存储器将主存和辅存的地址空间统一编址,形成一个庞大的存储空间。在这个大空间里,用户可以自由编程,完全不必考虑程序在主存是否装得下以及这些程序将来在主存中的实际存放位置。

27 . 已知采用页式虚拟存储器, 某程序中一条指令的虚地址是:

000001111111100000 。该程序的页表起始地址是0011 ,页面大小1K ,页表中有关单元最 末四位(实页号)见下表:

请指出指令地址(虚地址)变换后的主存实地址。

解:页面大小1K ,页内地址10 位,根据页表,可以得出主存实地址为11001111100000 。

第六章

1 .控制器有哪几种控制方式? 各有何特点?

解:控制器的控制方式可以分为3 种:同步控制方式、异步控制方式和联合控制方式。

同步控制方式的各项操作都由统一的时序信号控制,在每个机器周期中产生统一数目的节拍电位和工作脉冲。这种控制方式设计简单,容易实现;但是对于许多简单指令来说会有较多

的空闲时间,造成较大数量的时间浪费,从而影响了指令的执行速度。异步控制方式的各项操作不采用统一的时序信号控制,而根据指令或部件的具体情况决定,需要多少时间,就占用多少时间。异步控制方式没有时间上的浪费,因而提高了机器的效率,但是控制比较复杂。联合控制方式是同步控制和异步控制相结合的方式。 2 .什么是三级时序系统?

解:三级时序系统是指机器周期、节拍和工作脉冲。计算机中每个指令周期划分为若干个机器周期,每个机器周期划分为若干个节拍,每个节拍中设置一个或几个工作脉冲。 3 .控制器有哪些基本功能? 它可分为哪几类? 分类的依据是什么?

解:控制器的基本功能有:

(1) 从主存中取出一条指令,并指出下一条指令在主存中的位置。

(2) 对指令进行译码或测试,产生相应的操作控制信号,以便启动规定的动作。 (3) 指挥并控制CPU 、主存和输入输出设备之间的数据流动。控制器可分为组合逻辑型、存储逻辑型、组合逻辑与存储逻辑结合型3 类,分类的依据在于控制器的核心——— 微操作信号发生器(控制单元CU)的实现方法不同。

4 .中央处理器有哪些功能? 它由哪些基本部件所组成?

解:从程序运行的角度来看,CPU 的基本功能就是对指令流和数据流在时间与空间上实施正确的控制。对于冯· 诺依曼结构的计算机而言,数据流是根据指令流的操作而形成的,也就是说数据流是由指令流来驱动的。中央处理器由运算器和控制器组成。 5 .中央处理器中有哪几个主要寄存器? 试说明它们的结构和功能。

解:CPU 中的寄存器是用来暂时保存运算和控制过程中的中间结果、最终结果及控制、状态信息的,它可分为通用寄存器和专用寄存器两大类。通用寄存器可用来存放原始数据和运算结果,有的还可以作为变址寄存器、计数器、地址指针等。专用寄存器是专门用来完成某一种特殊功能的寄存器,如程序计数器PC 、

指令寄存器IR 、存储器地址寄存器MAR 、存储器数据寄存器MDR 、状态标志寄存器PSWR 等。

6 .某机CPU 芯片的主振频率为8MHz ,其时钟周期是多少μs ? 若已知每个机器周期平均包含4 个时钟周期,该机的平均指令执行速度为0 .8MIPS ,试问: (1) 平均指令周期是多少μs ?

(2) 平均每个指令周期含有多少个机器周期?

(3) 若改用时钟周期为0 .4μs 的CPU 芯片,则计算机的平均指令执行速度又是多少MIPS ? (4) 若要得到40 万次/s 的指令执行速度,则应采用主振频率为多少MHz 的CPU芯片?

解:时钟周期= 1 ÷ 8MHz = 0 .125μs

(1) 平均指令周期= 1 ÷ 0 .8MIPS = 1 .25μs (2) 机器周期= 0 .125μs × 4 = 0 .5μs

平均每个指令周期的机器周期数= 1 .25μs ÷ 0 .5μs ÷ 4 = 2 .5 (4) 主振频率= 4MHz

7 .以一条典型的单地址指令为例,简要说明下列部件在计算机的取指周期和执行周期中的作用。

(1) 程序计数器PC ; (2) 指令寄存器IR ;

(3) 算术逻辑运算部件ALU ; (4) 存储器数据寄存器MDR ; (5) 存储器地址寄存器MAR 。

解:(1) 程序计数器PC :存放指令地址; (2) 指令寄存器IR :存放当前指令;