微型计算机原理及其接口技术部分习题答案 下载本文

内容发布更新时间 : 2024/5/19 13:36:55星期一 下面是文章的全部内容请认真阅读。

6-7: 微机系统的数据线为8位,地址线为16位,CPU外部扩展EPROM,有一片27128和一片2764,如图6-36所示,请说明这两片存储器的地址范围(包括地址重叠区)。 解:

由图所示,可知27128与2764进行的是字扩展

题目分析:27128存储容量为16KB,片内地址线14根,占16位地址的A13-A0,片内地址线的变化范围可以从全“0”到全“1”,即可遍历内存的每个单元,在剩余的片外地址线中选择A15与27128的CE引脚直接连接,做线选方式的片选信号线,低电平有效,A14悬空,可选任意状态

27128的地址范围如下表: A15 0 0 A14 0 1 27128的地址范围 0000H-3FFFH 4000H-7FFFH

同样的,2764存储容量为8K,片内地址线13根,占用A12-A0,A15经过取反后与2764的CE引脚直接相连,所以A15=1时才会选中2764,A14、A13悬空,可选任意状态 2764地址范围如下: A15 1 1 1 1 A14 0 0 1 1 A13 2764的地址范围 0 1 0 1 8000H-9FFFH A000H-BFFFH C000H-DFFFH E000H-FFFFH

6-8:某微机系统的数据线8位,地址线16位,利用74LS138同时扩展一片EPROM2764和一片SRAM6264,如图6-37所示,请分析这两片存储器的地址范围。 解:

由图所示,可知2764与6264进行的是字扩展

题目分析:2764存储容量为8KB,片内地址线13根,占16位地址的A12-A0,片内地址线的变化范围可以从全“0”到全“1”,即可遍历内存的每个单元,在剩余的片外地址线中利用A15-A13位通过74LS138译码器进行片选,当A15-A13=000时选通2764,A15-A13=101时选通6264,没有悬空位

所以6264的地址范围如下表: A15 0 A14 0 A13 2764的地址范围 0 0000H-1FFFH

同理,6264的地址范围如下表: A15 1

A14 0 A13 2764的地址范围 1 A000H-BFFFH 6-9:在图6-38中,说明所连接的存储器SRAM62256的地址范围。 解:

由图所示,62256的存储容量为32K,片内地址线为A14-A0,A17-A15作为译码器74LS138的选择端,译码出来的Y6作为62256的片选端CE,即当A17-A15=110时选通62256。另外,62256通过中间的74LS245作中转交换数据D7-D0,74LS245可双向传输数据。

所以62256的地址范围如下表: A19 A18 A17 A16 A15 62256的地址范围 0

6-11:某微机系统的数据线16位,地址线为16位,现有4片6116,请设计该微机的存储系统,要求将这4片6116分为2组,每组2片,每组中的2片实现位扩展,然后将这2组实现字扩展,并且这个存储系统的首地址为2000H,采用74LS138译码器。

解:

题目分析:6116存储容量为2K,字长为8,地址线的A10-A0为4片6116公用,数据线D15-D0,其中2组公用该16位数据线进行字扩展,每组有2片6116,分别接数据线的高8位D15-D8和低8位D7-D0进行位扩展。74LS138译码器通过A13-A11译码作为2组芯片的片选端,A15、A14用于译码器的选通端,即A15A14=00时,选通译码器。

题目要求这个存储系统的首地址为2000H,因此其中一组芯片的片选端接译码器的Y4端,另一组芯片的片选端接Y5,接线图如下:

DB(D7-D0) A10-A0 A10-A0 AB(A15-A0)RDWR0 1 1 0 30000H-37FFFH A11A12A13CPUA14A15CE 6116 OE WECE 6116 OE WEY4Y5ABC 74LS138CE 6116 OE WECE 6116 OE WE DB(D15-D8)

存储系统的地址表如下: 组1 组2 A15 0 0 A14 A13 0 0 1 1 A12 0 0 A11 地址范围 0 1 2000H-27FFH 2800H-2FFFH 所以存储系统的地址范围为2000H-2FFFH

6-12:什么是虚拟存储器管理?在微机应用中有什么意义?

答:虚拟存储管理是采用硬件、软件相结合的方法,由系统自动分批将程序调入内存,不断地用新的程序段来覆盖内存中暂时不用的老程序段。 虚拟存储技术的主要优点有:(1)扩大了程序可访问的存储空间;(2)便于实施多任务的保护和隔离;(3)便于操作系统实现内存管理。

6-13、什么是描述符?什么是描述符表?他们之间的关系如何?

答:每一段的段基地址、段限以及存储器的保护特性等称为段描述符。每个描述符存于一个表中,称为描述符表。

6-15、什么是段式、页式、段页式管理机制?请简述段页式结构的寻址过程?

答:

虚拟存储器的管理调度方式分:分页式、段式、段页式3种。 (1)页式调度是将逻辑和物理地址空间都分成固定大小的页。

优点:页内零头小,页表对编程者来说是透明的,地址变换快,调入操作简单; 缺点:各页不是程序的独立模块,不便于实现程序和数据的保护。

(2)段式调度是按程序的逻辑结构划分地址空间,段的长度是随意的,并且允许伸长。 优点:消除了内存零头,易于实现存储保护,便于程序动态装配; 缺点:调入操作复杂。

(3)段页式调度:把物理空间分成页,程序按模块分段,每个段再分成与物理空间页同样小的页面。

段页式调度综合了段式和页式的优点。 缺点:增加了硬件成本,软件也较复杂。

段页式结构的寻址过程:

虚拟地址通过分段管理机制转换成线性地址,然后得到的线性地址通过分页管理机制转换成物理地址。分页管理机制是可选的,如果没有采用分页管理机制,那么得到的线性地址就是物理地址。

其中80286虚拟地址指针格式如下:

格式: 31 19 18 17 16 15 00 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0描述符的偏移地址(即变址值Index)段选择字地址偏移值TIRPL0 0 4 0 H 其高16位是一个段选择符,段选择符的高13位是某段选择符在描述符表中的偏移地址,左移3位后与段基址相加,便可得到描述符在描述符表中的物理地址了。低16位仍表示某段内的偏移,当找到描述符在描述符表中的位置后,就相当于找到了某段的基地址,然后该段基地址再与低16位的偏移量结合,便可得到相应的物理地址了。

(当TI=0时,表示访问全局描述符,TI=1时,表示访问局部描述符,共可以寻址16K个描述符,而每个描述符又可以定义长度为64KB的逻辑段,所以,80286的最大虚拟空间为16K×64K=1GB 。RPL表示访问某段时所请求的特权层的级别)

80286虚拟地址转换为线性地址的过程如下:

TI=0①基址段限MemoryGDTLDT之n低地址GDTR16选择符权LDTR23 15 00基地址段限8 24 16基地址段 限LDT - CACHE影像②基址段限LDTDLT1L描述符LDT2L描述符装入LDT-Cache高地址

(1)首先,从实地址方式转入保护方式之前由操作系统用装载指令对GDTR进行初始化设置,或从主板上的ROM中复制。GDT的基地址和段限由全局描述符表寄存器GDTR(40位)提供

(2)然后局部描述符表寄存器LDTR的高16位(段选择寄存器)提供被访问任务的LDT在GDT中的偏移地址(LDTR的段选择器中的TI位必定为0,以指向GDT)。

(3)通过GDTR提供的基地址和LDTR提供的偏移地址,便可找到LDT描述符在GDT表中的地址,把该LDT描述符装入LDT-Cache(LDT-Cache中的基地址字段确定LDT的基地址,LDT-Cache的段限字段确定LDT的段限)

存储器23 0LDTR基址寄存器200000H200000H第0号描述符LDT首址LDTR段限寄存器00100H15 200028H对应的CacheB330 00 0000 80 00800000 B3 30保留第5号描述符虚地址指针31 19 18 16 15 000……01011100 0 4 0访问权字节300000H数据段首址DS00……0101000描述符表索引描述符地址偏移值左移3位AX11 22300040H300041H…2211…操作数数据段末址

(4)LDT-Cache提供了所要找的LDT的基地址(即上图中所说的LDTR基址寄存器) (5)然后根据CPU提供的32位虚地址指针,由其段选择字的高13位左移3位后,与基地址相加,便可得到段描述符在LDT中的位置

(6)找到该段描述符后,该描述符自动装入到对应的Cache,其中包括了段的基地址 (7)然后把该段基地址与虚拟地址指针的低16位偏移量相加,便可得到要访问单元的线性地址。

至此,通过虚拟地址得到了相应的线性地址,上面所说的是不采用分页机制的情况,那么该线性地址就等于物理地址。

如果采用了分页机制,线性地址转换为物理地址的过程如下:(下面说所的是针对80386段页式结构的寻址过程,在段式管理方面和80286基本上是一致的,只是80386的虚拟地址指针为48位,所得到的线性地址是32位的,而80286的虚拟地址指针为32位,所得到的线性地址是24位的。另外80386的页式结构采用了两级的页表结构)

图2.25 80286在保护方式下访问LDT的过程示意图…