微机原理第六章答案
第6章存储系统
〔习题6.1〕简答题
(1)存储系统为什么不能采用一种存储器件构成?
(2)什么是高速命中和高速缺失(未命中)?
(3)高速缓存Cache系统的标签存储器有什么作用?
(4)什么是Cache的地址映射?
(5)Cache的写入策略用于解决什么问题?
(6)存储器的存取时间和存取周期有什么区别?
(7)虚拟存储器是什么存储器?
(8)DRAM芯片怎么有行地址又有列地址?
(9)地址重复是怎么回事?
(10)页表项的P(D0)位有什么作用?
〔解答〕
①因为各种存储器件在容量、速度和价格方面存在矛盾。速度快,则单位价格高;容量大,单位价格低,但存取速度慢。故存储系统不能采用一种存储器件。
rom是什么
②Cache中复制着主存的部分内容。当处理器试图读取主存的某个字时,Cache控制器首先检查Cache中是否已包含有这个字。若有,则处理器直接读取Cache,这种情况称为高速命中;若无,则称为高速缺失。
③标签存储器保存着该数据所在主存的地址信息。
④主存块与Cache行之间的对应关系称“地址映射”,Cache通过地址映射确定一个主存块应放到哪个Cache行组中。
⑤写入策略用于解决写入Cache时引起主存和Cache内容不一致性的问题。
⑥存取时间是指从读/写命令发出,到数据传输操作完成所经历的时间;存取周期表示两次存储器访问所允许的最小时间间隔。存取周期大于等于存取时间。
⑦虚拟存储器是由操作系统利用辅助存储器、以磁盘文件形式建立的、在主存储器与辅助存储器之间的一个存储器。
⑧DRAM芯片容量大、芯片小,高集成度,引脚数量少。故DRAM芯片将地址引脚分时复用,即用一组地址引脚传送两批地址。第一批地址称行地址,第二批地址称列地址。
⑨译码电路中只有部分地址线参与译码会造成地址重复,也就是一个存储单元占有多个存储器地址。
⑩页表项的P位称为存在位(Present),表示该页面是否在物理存储器中。
〔习题6.2〕判断题
(1)存储系统的高速缓存需要操作系统的配合才能提高主存访问速度。
(2)指令访问的操作数可能是8,16或32位,但主存与Cache间却以数据块为单位传输。
(3)为了加快段描述符和页表项的访问速度,IA-32处理器内部分别设置了段描述符高速缓冲器和转换后备缓冲器。它们的基本工作原理类似主存的高速缓存。
(4)存储器芯片的集成度高表示单位芯片面积制作的存储单元数多。
(5)微机大容量主存一般采用DRAM芯片组成。
(6)部分译码可以简化译码电路,不会减少可用的存储空间。
(7)存储系统每次给DRAM芯片提供刷新地址,被选中的芯片上所有单元都刷新一遍。
(8)存储系统的刷新地址提供给所有DRAM芯片。
(9)FPM DRAM芯片中的快页读写方式就是猝发传送方式。
(10)ROM芯片的烧写或擦写就是指对ROM芯片的编程。
〔解答〕
①错②对③对④对⑤对
⑥错⑦错⑧对⑨错⑩对
〔习题6.3〕填空题
(1)计算机存储容量的基本单位:1 B(Byte)=__________b(bits),1KB=__________B,1MB=__________KB,1GB=__________MB,1TB=__________GB=__________B。
(2)80486片上Cache的容量是__________,采用__________路组合地址映射。
(3)在半导体存储器中,RAM指的是__________,它可读可写,但断电后信息一般会__________;而ROM指的是__________,正常工作时只能从中__________信息,但断电后信息__________。
(4)存储结构为8K×8位的EPROM芯片2764,共有__________个数据引脚、__________个地址引脚。用它组成64KB的ROM存储区共需__________片芯片。
(5)对一个存储器芯片进行片选译码时,有一个高位系统地址信号没有参加译码,则该芯片的每个存储单元占有__________个存储器地址。
(6)半导体__________芯片顶部开有一个圆形石英窗口。U盘、MP3播放器、数码相机、多媒体手机等设备一般采用半导体__________芯片构成存储器。
(7)在8088处理器系统中,假设地址总线A19~A15输出01011时译码电路产生一个有效的片选信号。这个片选信号将占有主存从__________到__________的物理地址范围,共有__________容量。
(8)8086和80286使用16位数据总线,主存分成偶数地址和奇数地址两个存储体。80386和80486处
理器使用__________位数据总线,利用4个字节允许信号区别__________个存储体。Pentium及以后的IA-32处理器使用__________位数据总线,主存由__________个存储体组成。
(9)高速缓冲存储器的地映址射有____________、____________和____________方式。Pentium的L1 Cache采用____________映射方式。
(10)已知IA-32处理器某个段描述符为0000B98200002000H,则该段基地址=__________,段界限=__________。
〔解答〕
①8,1024,1024,1024,1024,240
②8KB,4
③随机存取存储器,丢失,只读存储器,读取,不会丢失
④8,13,8
⑤  2
⑥(UV-)EPROM,Flash Memory
⑦58000H,5FFFFH,32KB
⑧32,4,64,8
⑨直接映射,组合相关映射,全相关映射,2路组合相关映射
⑩00820000H,02000H
〔习题6.4〕
举例说明存储访问的局部性原理。
〔解答〕
处理器访问存储器时,无论是读取指令还是存取数据,所访问的存储单元在一段时间内
都趋向于一个较小的连续区域中,这就是存储访问的局部性原理。
例如,求平均值的函数。
long mean(long d[], long num)
{
long i,temp=0;
for(i=0; i<num; i++) temp=temp+d[i];
temp=temp/num;
return (temp);
}
函数中的变量temp体现了时间局部,因为每次循环都要使用它。顺序访问数组d[]的各个元素(相邻存放在主存),体现了空间局部。循环体内的指令顺序存放,依次读取执行体现了空间局部;同时重复执行循环体,又体现了时间局部。
〔习题6.5〕
简述存储系统的层次结构及各层存储部件特点。
〔解答〕
为解决容量、速度和价格的矛盾,存储系统采用金字塔型层次结构,单位价格和速度自上而下逐层减少,容量自上而下逐层增加。
存储系统的各层存储部件自上而下依次是:CPU寄存器、高速缓存、主存存储器(RAM/ROM),辅助存储器如磁盘、光盘等。CPU寄存器、高速缓存器集成在CPU芯片上,对用户来说,是透明的,它们用于暂存主存和处理器交互的数据,以减少频繁读取主存而影响处理器速度;主存储器则可和处理器直接交换数据,而辅助存储器必须经过主存存储器,才可与处理器进行数据交换。
〔习题6.6〕
在半导体存储器件中,什么是SRAM、DRAM和NVRAM?
〔解答〕
SRAM是静态读写存储器芯片,它以触发器为基本存储单元,以其两种稳定状态表示逻辑0和逻辑1。
DRAM是动态读写存储器芯片,它以单个MOS管为基本存储单元,以极间电容充放电表示两种逻辑状态,需要不断刷新保持信息正确。
NVRAM多指带有后备电池的SRAM芯片,这种芯片采用CMOS制造工艺设计以减少用电。
〔习题6.7〕
SRAM芯片的片选信号有什么用途?对应读写控制的信号是什么?
〔解答〕
片选信号C S:片选有效时,才可以对该芯片进行读/写操作;无效时,数据引脚呈现高阻状态、与系统数据总线隔离,并可降低内部功耗。
读控制信号O E:在芯片被选中的前提下,若O E有效,则芯片将允许地址信号选择的存储单元内的数据输出到数据引脚上。
写控制信号W E:在芯片被选中的前提下,若W E有效,则芯片将数据引脚上的数据写入地址信号选择的存储单元内。
〔习题6.8〕
DRAM为什么要刷新,存储系统如何进行刷新?
〔解答〕
DRAM以单个MOS管为基本存储单元,以极间电容充放电表示两种逻辑状态。由于极间电容的容量很小,充电电荷自然泄漏会很快导致信息丢失,所以要不断对它进行刷新操作、即读取原内容、放大再写入。
存储系统的刷新控制电路提供刷新行地址,将存储DRAM芯片中的某一行选中刷新。实际上,刷新控制电路是将刷新行地址同时送达存储系统中所有DRAM芯片,所有DRAM 芯片都在同时进行一行的刷新操作。
刷新控制电路设置每次行地址增量,并在一定时间间隔内启动一次刷新操作,就能够保证所有DRAM芯片的所有存储单元得到及时刷新。
〔习题6.9〕
什么是掩摸ROM、OTP-ROM、EPROM、EEPROM和Flash ROM?
〔解答〕
掩膜ROM:通过掩膜工艺、将要保存的信息直接制作在芯片当中,以后再也不能更改。
OTP-ROM:该类芯片出厂时存储的信息为全“1”,允许用户进行一次性编程,此后便不能更改。
EPROM:一般指可用紫外光擦除、并可重复编程的ROM。
EEPROM:也常表达为E2PROM,其擦除和编程(即擦写)通过加电的方法来进行,可实现“在线编程”和“在应用编程”
Flash ROM:是一种新型的电擦除可编程ROM芯片,能够很快擦除整个芯片内容。〔习题6.10〕
请给出教材图6-7中138译码器的所有译码输出引脚对应的地址范围。
〔解答〕
Y的地址范围依次是:
Y~7
E0000H~E3FFFH,E4000H~E7FFFH,E8000H~EBFFFH,EC000H~EFFFFH,F0000H~F3FFFH,F4000H~F7FFFH,F8000H~FBFFFH,FC000H~FFFFFH。
〔习题6.11〕
什么是存储器芯片的全译码和部分译码?各有什么特点?
〔解答〕
全译码:使用全部系统地址总线进行译码。特点是地址唯一,一个存储单元只对应一个存储器地址(反之亦然),组成的存储系统其地址空间连续。
部分译码:只使用部分系统地址总线进行译码。其特点:有一个没有被使用的地址信号就有两种编码,这两个编码指向同一个存储单元,出现地址重复。
〔习题6.12〕
区别如下各个主存名称的含义:常规主存,扩展主存,扩充主存;上位主存区UMA和上位主存块UMB,高端主存区HMA,影子主存。
〔解答〕
常规主存:8088和8086提供20个地址线A19~A0,寻址1MB的存贮空间,其中,最低640KB的系统RAM区被称为常规主存或基本主存。
扩展主存:IA-32处理器在1MB之后的主存空间都作为RAM区域使用,被称为扩展主存。
扩充主存:处理器不可以直接访问,利用“体交换技术”实现处理器访问。
上位主存区UMA:在常规主存其后384KB(A0000H~FFFFFH)主存称为上位主存区UMA。
上位主存块UMB:上位主存区UMA没有被使用部分,被开辟为上位主存块UMB。
高端主存区HMA:在实方式下,通过控制A20开放,程序可以访问的1MB之后的64KB 区域。
影子主存:PC机启动后可以将ROM-BIOS映射到RAM中,这部分用作ROM-BIOS、并被操作系统设置为只读的RAM区域。
〔习题6.13〕
开机后,微机系统常需要检测主存储器是否正常。例如,可以先向所有存储单元写入数据55H(或00H)、然后读出看是否还是55H(或00H);接着再向所有存储单元写入数据AAH(或FFH)、然后读出看是否还是AAH(或FFH)。利用两个二进制各位互反的“花样”数据的反复写入、读出和比较就能够识别出有故障的存储单元。利用获得的有故障存储单元所在的物理地址,如果能够分析出该存储单元所在的存储器芯片,就可以实现芯片级的维修。试利用汇编语言编写一个检测常规主存最高64KB(逻辑地址从9000H∶0000H到9000H∶FFFFH)的程序,如果发现错误请显示其逻辑地址。
〔解答〕
; 代码段
mov ax,9000h
mov ds,ax
mov ah,55h ; 先用55H
push ax
again: mov bx,0
mov al,ah
again1: mov [bx],al ; 写入
dec bx
jnz again1
again2: mov al,[bx] ; 读出
cmp al,ah ; 检测
jz next2
dispcrlf
push ax
mov ax,ds
call disphw ; 显示段地址
mov al,':'
call dispc
mov ax,bx
call disphw ; 显示偏移地址
pop ax
next2: dec bx
jnz again2
pop ax
cmp ah,0aah ; 后用0AAH
jz done
mov ah,0aah
jmp again
done:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。