第3章存储系统
一.判断题
1.计算机的主存是由RAM和ROM两种半导体存储器组成的。
2.CPU可以直接访问主存,而不能直接访问辅存。
3.外(辅)存比主存的存储容量大、存取速度快。
4.动态RAM和静态RAM都是易失性半导体存储器。
5.Cache的功能全部由硬件实现。
6.引入虚拟存储器的目的是为了加快辅存的存取速度。
7.多体交叉存储器主要是为了解决扩充容量的问题。
8.Cache和虚拟存储器的存储管理策略都利用了程序的局部性原理。
9.多级存储体系由Cache、主存和辅存构成。
10.在虚拟存储器中,当程序正在执行时,由编译器完成地址映射。
二.选择题
1.主(内)存用来存放。
A.程序 B.数据 C.微程序 D.程序和数据
2.下列存储器中,速度最慢的是。
A.半导体存储器 B.光盘存储器 C.磁带存储器 D.硬盘存储器
3.某一SRAM芯片,容量为16K×1位,则其地址线有。
A.14根 B.16K根 C.16根 D.32根
4.下列部件(设备)中,存取速度最快的是。
A.光盘存储器 B.CPU的寄存器 C.软盘存储器 D.硬盘存储器
5.在主存和CPU之间增加Cache的目的是。
A.扩大主存的容量
B.增加CPU中通用寄存器的数量
C.解决CPU和主存之间的速度匹配
D.代替CPU中的寄存器工作
6.计算机的存储器采用分级存储体系的目的是。
A.便于读写数据 B.减小机箱的体积
C.便于系统升级 D.解决存储容量、价格与存取速度间的矛盾
7.相联存储器是按进行寻址的存储器。
A.地址指定方式 B.堆栈存取方式
C.内容指定方式 D.地址指定与堆栈存取方式结合
8.某SRAM芯片,其容量为1K×8位,加上电源端和接地端后,该芯片的引出线的最少数目应为。
A.23 B.25 C.50 D.20
9.常用的虚拟存储器由两级存储器组成,其中辅存是大容量的磁表面存储器。
A.主存—辅存 B.快存—主存
C.快存—辅存 D.通用寄存器—主存
10.在Cache的地址映射中,若主存中的任意一块均可映射到Cache内的任意一快的位置上,则这种方法称为。
A.全相联映射 B.直接映射 C.组相联映射 D.混合映射
三.填空题
1.对存储器的要求是、、,为解决这三者的矛盾,计算机、采用体系结构。
答:速度快、容量大、成本低,分级存储体系。
2.CPU能直接访问和,但不能访问和。
答:主存、CACHE、外存、I/O设备。
3.Cache的映射方式有、和三种。其中方式,适度地兼顾了前两者的优点又尽量避免其缺点,比较理想。
4.广泛使用的和都是半导体存储器。前者的速度比后者快,不如后者高。它们的共同缺点是断电后保存信息。
答:依次为SRAM、DRAM、随机读写、集成度、不能。
5.闪速存储器能提供高性能、低功耗、高可靠性以及能力,为现有的体系结构带来巨大变化,因此作为用于便携式电脑中。
答:瞬时启动、存储器、固态盘。
6.相联存储器不按地址而是按访问的存储器,在Cache中用来存放,在虚拟存储器中用来存放。
答:内容,行地址表,段表、页表和快表。
7.虚拟存储器指的是层次,它给用户提供了一个比实际空间大得多的。
8.磁盘的地址格式由、、、四部分组成。
答:台号、柱面号(磁道号)、盘面号(磁头号)、扇区号。
9.温彻斯特硬盘的特点是、和。
答:固定盘片、活动磁头和密封结构。
10.一个完整的磁盘存储器由三部分组成,其中又称磁盘机或磁盘子系统,是独立于主机的一个完整的设备,是磁盘机与主机的接口部件,用于保存信息。
答:驱动器、控制器、盘片。
四.简答题
1.存储器的层次结构主要体现在什么地方?为什么要分这些层次?计算机如何管理这些层次?
答:存储器的层次结构主要体现在Cache—主存和主存—辅存这两个存储层次上。
Cache—主存层次在存储系统中主要对CPU访存起加速作用,即从整体运行的效果分析,CPU访存速度加快,接近于Cache的速度,而寻址空间和位价却接近于主存。
主存—辅存层次在存储系统中主要起扩容作用,即从程序员的角度看,他所使用的存储器其容量和位价接近于辅存,而速度接近于主存。
综合上述两个存储层次的作用,从整个存储系统来看,就达到了速度快、容量大、位价低的优化效果。
主存与CACHE之间的信息调度功能全部由硬件自动完成。而主存—辅存层次的调度目前广泛采用虚拟存储技术实现,即将主存与辅存的一部份通过软硬结合的技术组成虚拟存储器,程序员可使用这个比主存实际空间(物理地址空间)大得多的虚拟地址空间(逻辑地址空间)编程,当程序运行时,再由软、硬件自动配合完成虚拟地址空间与主存实际物理空间的转换。因此,这两个层次上的调度或转换操作对于程序员来说都是透明的。
2.说明存取周期和存取时间的区别。
解:存取周期和存取时间的主要区别是:存取时间仅为完成一次操作的时间,而存
取周期不仅包含操作时间,还包含操作后线路的恢复时间。即:
存取周期 = 存取时间 + 恢复时间
3.试比较静态RAM和动态RAM。
4.什么叫刷新?为什么要刷新?说明刷新有几种方法。
5.半导体存储器芯片的译码驱动方式有几种?
解:半导体存储器芯片的译码驱动方式有两种:线选法和重合法。
线选法:地址译码信号只选中同一个字的所有位,结构简单,费器材;
重合法:地址分行、列两部分译码,行、列译码线的交叉点即为所选单元。这种方法通过行、列译码信号的重合来选址,也称矩阵译码。可大大节省器材用量,是最常用的译码驱动方式。
6.什么是“程序访问的局部性原理”?存储系统中哪一级采用了程序访问的局部性原理?
解:程序运行的局部性原理指:在一小段时间内,最近被访问过的程序和数据很可能再次被访问;在空间上,这些被访问的程序和数据往往集中在一小片存储区;在访问顺序上,指令顺序执行比转移执行的可能性大 (大约 5:1 )。存储系统中Cache—主存层次采用了程序访问的局部性原理。
7.计算机中设置Cache的作用是什么?能不能把Cache的容量扩大,最后取代主存,为什么?
答:计算机中设置Cache主要是为了加速CPU访存速度;
不能把Cache的容量扩大到最后取代主存,主要因为Cache和主存的结构原理以及访问机制不同(主存是按地址访问,Cache是按内容及地址访问)。
8.Cache制作在CPU芯片内有什么好处?将指令Cache和数据Cache分开又有什么好处?
答:Cache做在CPU芯片内主要有下面几个好处:
1)可提高外部总线的利用率。因为Cache在CPU芯片内,CPU访问Cache时不必占用外部总线;
2)Cache不占用外部总线就意味着外部总线可更多地支持I/O设备与主存的信息传输,增强了系统的整体效率;
3)可提高存取速度。因为Cache与CPU之间的数据通路大大缩短,故存取速度得以提高;
将指令Cache和数据Cache分开有如下好处:
1)可支持超前控制和流水线控制,有利于这类控制方式下指令预取操作的完成;
2)指令Cache可用ROM实现,以提高指令存取的可靠性;
3)数据Cache对不同数据类型的支持更为灵活,既可支持整数(例32位),也可支持浮点数据(如64位)。
9.采用定长数据块记录格式的磁盘存储器,直接寻址的最小单位是什么?寻址命令中如何表示磁盘地址?
五.计算题
1.什么是存储器的带宽?若存储器的数据总线宽度为32位,存取周期为200ns,则存储器的带宽是多少?
2. 一个容量为16K×32位的存储器,其地址线和数据线的总和是多少?当选用下列不同规格的存储芯片时,各需要多少片?
1K×4位,2K×8位,4K×4位,16K×1位,4K×8位,8K×8位
3.一个8K×8位的动态RAM芯片,其内部结构排列成256×256形式,存取周期为0.1μs。试问采用集中刷新、分散刷新及异步刷新三种方式的刷新间隔各为多少?
4.设有一个64K×8位的RAM芯片,试问该芯片共有多少个基本单元电路(简称存储基元)?欲设
计一种具有上述同样多存储基元的芯片,要求对芯片字长的选择应满足地址线和数据线的总和为最小,试确定这种芯片的地址线和数据线,并说明有几种解答。
5.某8位微型机地址码为18位,若使用4K×4位的RAM芯片组成模块板结构的存储器,试问:
(1)该机所允许的最大主存空间是多少?
(2)若每个模块板为32K×8位,共需几个模块板?
(3)每个模块板内共有几片RAM芯片?
(4)共有多少片RAM?
(5)CPU如何选择各模块板?
6.设CPU共有16根地址线,8根数据线,并用-MREQ(低电平有效)作访存控制信号,R/-W作读/写命令信号(高电平为读,低电平为写)。现有这些存储芯片:
ROM(2K×8位,4K×4位,8K×8位),RAM(1K×4位,2K×8位,4K×8位),及74138译码器和其他门电路(门电路自定)。
试从上述规格中选用合适的芯片,画出CPU和存储芯片的连接图。要求如下:(1)最小4K地址为系统程序区,4096~16383地址范围为用户程序区;
(2)指出选用的存储芯片类型及数量;
(3)详细画出片选逻辑。
7.某机字长为16位,常规的存储空间为64K字,若想不改用其他高速的存储芯片,而使访存速度提高到8倍,可采取什么措施?画图说明。
解:若想不改用高速存储芯片,而使访存速度提高到8倍,可采取多体交叉存取技术,图示如下:
8.设CPU共有16根地址线,8根数据线,并用M/-IO作为访问存储器或I/O的控制信号(高电平为访存,低电平为访I/O),-WR(低电平有效)为写命令,-RD(低电平有效)为读命令。设计一个容量为64KB的采用低位交叉编址的8体并行结构存储器。现有右图所示的存储芯片及138译码器。
画出CPU 和存储芯片(芯片容量自定)的连接图,并写出图中每个存储芯片的地址范围(用十六进制数表示)。
解:芯片容量=64KB/8=8KB
每个芯片(体)的地址范围以8为模低位交叉分布如下
CPU 和各体的连接图:由于存储器单体的工作速率和总线速率不一致,因此各体之间存在总线分配问题,存储器不能简单地和CPU 直接相连,要在存储管理部件的控制下连接。
9.一个4体低位交叉的存储器,假设存取周期为T ,CPU 每隔1/4存取周期启动一个存储体,试问依次访问64个字需多少个存取周期?
10.设主存容量为256K字,Cache容量为2K字,块长为4。
(1)设计Cache地址格式,Cache中可装入多少块数据?
(2)在直接映射方式下,设计主存地址格式。
(3)在四路组相联映射方式下,设计主存地址格式。
(4)在全相联映射方式下,设计主存地址格式。
(5)若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。
11.假设CPU执行某段程序时共访问Cache命中4800次,访问主存200次,已知Cache 的存取周期是30ns,主存的存取周期是150ns,求Cache的命中率以及Cache-主存系统的平均访问时间和效率,试问该系统的性能提高了多少?
12.一个组相联映射的Cache由64块组成,每组内包含4块。主存包含4096块,每块由128字组成,访存地址为字地址。试问主存和Cache的地址各为几位?画出主存的地址格式.
13.设主存容量为1MB,采用直接映射方式的Cache容量为16KB,块长为4,每字32位。试问主存地址为ABCDEH的存储单元在Cache中的什么位置?
14.设某机主存容量为4MB,Cache容量为16KB,每字块有8个字,每字32位,设计一个四路组相联映射(即Cache每组内共有4个字块)的Cache组织。
(1)画出主存地址字段中各段的位数;
(2)设Cache的初态为空,CPU依次从主存第0、1、2……89号单元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?
(3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度约提高多少倍?
15.某计算机系统的内存由Cache和主存构成,Cache的存取周期为45ns,主存的存取周期为200ns。已知在一段给定的时间内,CPU共访问内存4500次,其中340次访问主存,求:
(1)Cache的命中率是多少?
(2)CPU访问内存的平均访问时间是多少?
(3)Cache-主存系统的效率是多少?
16.假设某计算机的cache采用直接映象,容量为4096。若CPU依次从主存单元0,1,…,99和4096,4097,…,4195交替取指令,循环执行10次,试求此时的命中率?
17.磁盘组有6片磁盘,最外两侧盘面可以记录,存储区域内径22cm,外径33cm,道密度为40道/cm,内层密度为400位/cm,转速3600转/分。
(1)共有多少存储面可用?
(2)共有多少柱面?
(3)盘组总存储容量是多少?
(4)数据传输率是多少?
注意:
1) 的精度选取不同将引起答案不同,一般取两位小数;
2)柱面数≠盘组总磁道数(=一个盘面上的磁道数)
3)数据传输率与盘面数无关;
4)数据传输率的单位时间是秒,不是分。
18.某磁盘存储器转速为3000转/分,共有4个记录盘面,每毫米5道,每道记录信息12 288字节,最小磁道直径为230mm,共有275道,求:
(1)磁盘存储器的存储容量;
(2)最高位密度(最小磁道的位密度)和最低位密度;
(3)磁盘数据传输率;
(4)平均等待时间。
解:
(1)存储容量 = 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