计算机组成原理习题答案第六章
成都七中实验-小学家长会教师发言稿
计算机组成原理课后答案第六章
1 .如何区别存储器和寄存器?
两者是一回事的说法对吗?
解:存储器和寄存器不是一回事。存储器在CPU
的外边,专门用来存放程序和数据,访问
存储器的速度较慢。寄存器属于CPU
的一部分,访问寄存器的速度很快。
2 .存储器的主要功能是什么?
为什么要把存储系统分成若干个不同层次? 主要有
哪些层次?
解:存储器的主要功能是用
来保存程序和数据。存储系统是由几个容量、速度和价存储系统
和结构各不相同的存储器用硬件、软件、
硬件与软件相结合的方法连接起来的系统。把存储
系统分成若干个不同层次的目的是为了解决存储容量、
存取速度和价格之间的矛盾。由高速
缓冲存储器、主存储器、辅助存储器构成的三级存储系统可以分为两
个层次,其中高速缓存
和主存间称为Cache - 主存存储层次(Cache 存储系统)
;主存和辅存间称为主存— 辅
存存储层次(虚拟存储系统) 。
3
.什么是半导体存储器? 它有什么特点?
解:采用半导体器件制造的存储器,主要有MOS 型存储
器和双极型存储器两大类。半导体
存储器具有容量大、速度快、体积小、可靠性高等特点。半导体随机存
储器存储的信息会因
为断电而丢失。
4 .SRAM 记忆单元电路的工作原理是什么?
它和DRAM 记忆单元电路相比有何异
同点?
解:SRAM 记忆单元由6 个MOS
管组成,利用双稳态触发器来存储信息,可以对其进行
读或写,只要电源不断电,信息将可保留。DRA
M 记忆单元可以由4 个和单个MOS管组
成,利用栅极电容存储信息,需要定时刷新。
5
.动态RAM 为什么要刷新? 一般有几种刷新方式? 各有什么优缺点?
解:DRAM 记忆单元
是通过栅极电容上存储的电荷来暂存信息的,由于电容上的电荷会随
着时间的推移被逐渐泄放掉,因此每
隔一定的时间必须向栅极电容补充一次电荷,这个过程
就叫做刷新。常见的刷新方式有集中式、分散式和
异步式3 种。集中方式的特点是读写操
作时不受刷新工作的影响,系统的存取速度比较高;但有死区,
而且存储容量越大,死区就
越长。分散方式的特点是没有死区;但它加长了系统的存取周期,降低了整机
的速度,且刷
新过于频繁,没有充分利用所允许的最大刷新间隔。异步方式虽然也有死区,但比集中方式
的死区小得多,而且减少了刷新次数,是比较实用的一种刷新方式。
6
.一般存储芯片都设有片选端CS ,它有什么用途?
解:片选线CS用来决定该芯片是否被选中。CS = 0 ,芯片被选中;CS = 1
,芯片
不选中。
7 .DRAM 芯片和SRAM 芯片通常有何不同?
解:主要区别有:
① DRAM 记忆单元是利用栅极电容存储信息;SRAM
记忆单元利用双稳态触发器来存储
信息。
② DRAM 集成度高,功耗小,但存取速度慢,
一般用来组成大容量主存系统;SRAM的
存取速度快,但集成度低,功耗也较大,所以一般用来组成高
速缓冲存储器和小容量主存系
统。
③ SRAM 芯片需要有片选端CS ,DRAM
芯片可以不设CS ,而用行选通信号RAS 、列
选通CAS兼作片选信号。
④ SRAM
芯片的地址线直接与容量相关,而DRAM 芯片常采用了地址复用技术,以减少
地址线的数量。
8 .有哪几种只读存储器? 它们各自有何特点?
解:MROM
:可靠性高,集成度高,形成批量之后价格便宜,但用户对制造厂的依赖性过
第 1 页 共 6 页
计算机组成原理课后答案第六章
大,灵活性差。PROM :允许用户利用专
门的设备(编程器)写入自己的程序,但一旦写
入后,其内容将无法改变。写入都是不可逆的,所以只能
进行一次性写入。EPROM
:不仅
可以由用户利用编程器写入信息,而且可以对其内容进行多次改写。EPROM
又可分为两种:
紫外线擦除(UVEPROM)和电擦除(EEPROM) 。闪速存储器:既可在不加
电的情况下
长期保存信息,又能在线进行快速擦除与重写,兼备了EEPROM 和RAM 的优点。
9 .说明存取周期和存取时间的区别。
解:存取周期是指主存进行一次完整的读写操作所需
的全部时间,即连续两次访问存储器操
作之间所需要的最短时间。存取时间是指从启动一次存储器操作到
完成该操作所经历的时
间。存取周期一定大于存取时间。
10 .一个1K × 8
的存储芯片需要多少根地址线、数据输入线和输出线?
解:需要10 根地址线,8
根数据输入和输出线。
11 .某机字长为32 位,其存储容量是64KB
,按字编址的寻址范围是多少? 若主
存以字节编址,试画出主存字地址和字节地址的分配情况。
解:某机字长为32 位,其存储容量是64KB ,按字编址的寻址范围是16KW
。若主
存以字节编址,每一个存储字包含4
个单独编址的存储字节。假设采用大端方案,即字地
址等于最高有效字节地址,且字地址总是等于4
的整数倍,正好用地址码的最末两位来区
分同一个字中的4 个字节。
12
.一个容量为16K × 32 位的存储器,其地址线和数据线的总和是多少?
当选
用下列不同规格的存储芯片时,各需要多少片?
1K × 4 位,2K × 8
位,4K × 4 位,16K × 1 位,4K × 8 位,8K ×
8 位。
解:地址线14 根,数据线32 根,共46 根。
若选用不同规格的存储芯片,则需要:1K × 4 位芯片128 片,2K × 8
位芯片3
2 片,4K × 4 位芯片32 片,16K × 1 位芯片32 片,4K × 8
位芯片1
6 片,8K × 8 位芯片8 片。
13 .现有1024 × 1
的存储芯片,若用它组成容量为16K × 8 的存储器。试
求:
(1)
实现该存储器所需的芯片数量?
(2) 若将这些芯片分装在若干块板上,每块板的容量为4K ×
8 ,该存储器所需的地
址线总位数是多少? 其中几位用于选板? 几位用于选片?
几位用作片内地址?
解:(1) 需1024 × 1 的芯片128 片。
(2)
该存储器所需的地址线总位数是14 位,其中2 位用于选板,2 位用于选片,1
0 位
用作片内地址。
14 .已知某机字长8 位,现采用半导体存储器作主存,其地址线为16
位,若使用1
K × 4 的SRAM
芯片组成该机所允许的最大主存空间,并采用存储模板结构形式。
(1) 若每块模板容量为4K ×
8 ,共需多少块存储模板?
(2) 画出一个模板内各芯片的连接逻辑图。
解:(1)
根据题干可知存储器容量为216 = 64KB ,故共需16 块存储模板。
15
.某半导体存储器容量16K × 8 ,可选SRAM 芯片的容量为4K × 4
;地址
总线A15 ~ A0 (低) ,双向数据总线D7 ~ D0 (低) ,由R/W线控制读
/
写。请设计并画出该存储器的逻辑图,并注明地址分配、片选逻辑及片选信号的极性。
解:存储器的逻辑图与图5唱20 很相似,区别仅在于地址线的连接上,故省略。
地址分配如下:
第 2 页 共 6 页
计算机组成原理课后答案第六章
A15 A14 A13 A12 A11
~ A0
X X 0 0 ——— 第一组
X X 0 1 ——— 第二组
X
X 1 0 ——— 第三组
X X 1 1 ——— 第四组
假设采用部分译码方式,片选逻辑为:
CS0 = A13 ? A12
CS1
= A13 ? A12
CS2 = A13 ? A12
CS3 = A13 ?
A12
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) 各存储芯片的地址分配如下:
相应的逻辑结构图如图5唱21 所示。
(3) 有地址重叠现象。因为地址线A15
、A14 没有参加译码。
17 .用容量为16K × 1 的DRAM 芯片构成64KB
的存储器。
(1) 画出该存储器的结构框图。
(2) 设存储器的读/写周期均为0
.5μs ,CPU 在1μs 内至少要访存一次,试问
采用哪种刷新方式比较合理?
相邻两行之间的刷新间隔是多少? 对全部存储单元刷新一
遍所需的实际刷新时间是多少?
解:(1) 存_______储器的结构框图如图5唱22 所示。
(2)
因为要求CPU 在1μs 内至少要访存一次,所以不能使用集中刷新方式,分散和
异步刷新方式都可以使用,但异步刷新方式比较合理。
相邻两行之间的刷新间隔=
最大刷新间隔时间÷ 行数= 2ms ÷ 128 = 15 .6
25μs 。取15 .5μs
,即进行读或写操作31 次之后刷新一行。
对全部存储单元刷新一遍所需的实际刷新时间= 0
.5μs × 128 = 64μs
18 .有一个8 位机,采用单总线结构,地址总线16
位(A15 ~ A0 ) ,数据
总线8 位(D7 ~ D0 ) ,控制总线中与主存有关的信号
有MREQ(低电平有效允许
访存)和R/W(高电平为读命令,低电平为写命令)
。主存地址分配如下:从0 ~ 8
191 为系统程序区,由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 所示。
第
3 页 共 6 页
计算机组成原理课后答案第六章
A15 A14
A13 A12 A11 A10 ~ A0
0 0 0 ———————————————
8KB ROM
0 0 1 ——————————————— 8KB RAM
0 1
0 ——————————————— 8KB RAM
0 1 1
——————————————— 8KB RAM
1 1 1 1 1 ——— 2KB
RAM
19 .某半导体存储器容量15KB ,其中固化区8KB ,可选EPROM 芯片为4K
×
8 ;可随机读_______/写区7KB ,可选SRAM 芯片有:4K × 4 、2K
× 4 、
1K × 4 。地址总线A15 ~ A0 (A0 为最低位) ,双向数据总线D7
~ D0 (D
0 为最低位) ,R/W控制读/写,MREQ为低电平时允许存储器工作信号。请设
计并
画出该存储器逻辑图,注明地址分配、片选逻辑、片选信号极性等。
解:该存储器的地址分配如下:
4K × 8 EPROM 0000H ~
0FFFH
4K × 8 EPROM 1000H ~ 1FFFH 8KB ROM
4K × 4 RAM(2 片) 2000H ~ 2FFFH
2K × 4
RAM(2 片) 3000H ~ 37FFH
1K × 4 RAM(2 片)
3800H ~ 3BFFH
7KB RAM
假设采用部分译码方式,片选逻辑为:
CS0 = A13 ? A12
CS1 = A13 ? A12
CS2 =
A13 ? A12
CS3 = A13 ? A12 ? A11
CS4 = A13
? A12 ? A11 ? A10
20 .某机地址总线16 位A15 ~ A0 (A0
为最低位) ,访存空间64KB 。外
围设备与主存统一编址,I/O 空间占用FC00 ~
FFFFH 。现用2164 芯片(64
K × 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 片
(2) 存储器正常读写操作时,RAS比CAS先有效,由于行、列
分时传送,所以RAS与
CAS也应分时出现,且RAS在先,CAS在后,分别与时间因素t1
,t2 有关。A17 ~
A14 用于译码选择16 个不同的16KB
空间,译码电路如图5唱28 所示,RAS和
CAS的形成条件分别为:
第 4 页 共
6 页
计算机组成原理课后答案第六章
RAS0 = A17 ? A16
? A15 ? A14 ? t1
…
RAS15 = A17 ? A16 ? A15
? A14 ? t1
CAS0 = A17 ? A16 ? A15 ? A14 ? t2
…
CAS15 = A17 ? A16 ? A15 ? A14 ? t2
(3) 若芯片内部采用128 × 128 矩阵排列,设芯片的最大刷新间隔时间为2
ms
,则相邻两行之间的刷新间隔为:刷新间隔= 最大刷新间隔时间÷ 行数= 2ms ÷ 1
28 =
15 .625μs可取刷新间隔15 .5μs 。
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 位,
区号
(8 位)
组号
(7 位)
组内块号
(2 位)
块内地址
第 5 页 共
6 页
计算机组成原理课后答案第六章
(5 位)
(2)
由于每个字块有8 个字,所以主存第0 、1 、2 、? 、99 号字单元分别在字
块0 ~
12中,采用四路组相联映像将分别映像到第0 组~ 12 组中,但Cache
起始
为空,所以第一次
读时每一块中的第一个单元没命中,但后面7
次每个单元均可以命中。
命中率= Nc
Nc + Nm= 100 - 13 + 7
× 100
8 × 100 = 98 .4%
(3) 设Cache
的存取周期为T ,则主存的存取周期为6 T 。
有Cache 的访存时间= H × Tc +
(1 - H ) × (Tm + Tc ) = Tc + (1 -
H ) × Tm = T
+
(1 - 98 .4% ) × 6 T = 1 .096 T
无Cache
的访存时间为6 T
所以速度提高倍数= 6 ÷ 1 .096 = 5 .47 倍。
26 .什么叫虚拟存储器? __________采用虚拟存储技术能解决什么问题?
解
:虚拟存储器由主存储器和联机工作的辅助存储器(通常为磁盘存储器)共同组成,这两
个存储器在硬件
和系统软件的共同管理下工作,对于应用程序员,可以把它们看作是一个单
一的存储器。采用虚拟存储技
术可以解决主存容量不足的问题。虚拟存储器将主存和辅存的
地址空间统一编址,形成一个庞大的存储空
间。在这个大空间里,用户可以自由编程,完全
不必考虑程序在主存是否装得下以及这些程序将来在主存
中的实际存放位置。
27 . 已知采用页式虚拟存储器, 某程序中一条指令的虚地址是:
000001111111100000 。该程序的页表起始地址是0011 ,页面大
1K
,页表中有关单元最末四位(实页号)见下表:虚页号装入位实页号
007H 1 0001 … …
…
300H 1 0011 … … …
307H 1 1100
请指出指令地址(虚地址)变换后的主存实地址。
解:页面大小1K ,页内地址10
位,根据页表,可以得出主存实地址为1100111
1100000 。__
第
6 页 共 6 页