【微机及接口技术】- 第四章 内部存储器及其接口(下)

发布于:2025-04-06 ⋅ 阅读:(11) ⋅ 点赞:(0)

第三节 半导体存储器与CPU的连接

一、存储芯片与CPU连接中应关注的问题

  1. CPU 的负载能力
    外接芯片的数量、驱动器、缓冲器。
  2. 芯片的选择
    考虑芯片的容量、总存储容量、时序匹配等。
  3. 时序配合
    存储芯片的速度和CPU额读/写时序相匹配。
  4. 存储器的地址分配
    RAM的用户取存放程序和数据,单芯片容量有限,多芯片组形成存储器需要考虑片选,地址分配。

二、存储器扩展

1. 位扩展:

多个芯片并联得到指定位宽的存储器。
例:用 2Kx8 位的存储芯片组成 2Kx32 位存储体
在这里插入图片描述

32 / 8 = 4 片

地址线、控制线并联;
数据线从8位扩展到32位。

2. 字扩展

数据位数不变,子的数量扩展
例 用2Kx8位的存储芯片组成8Kx8位存储体。
在这里插入图片描述
8k/2k = 4
8K = 13 根地址线

数据线、控制线和部分地址线并联、另一部分地址线通过译码器后形成片选信号来决定每个芯片的地址。
左边数第一个芯片的地址:0000H~7FFH

第一个的起始和结束地址
00 0000000000
00 11111111111

最后一个时

3. 字位扩展

数据位数和子的数量都需要扩展
如。用2Kx8位的存储芯片组成8kx16位存储体。
先将2个2Kx8位芯片用位扩展为2Kx16位的存储器,在将4个2Kx16位的存储器用字扩展为8Kx16位的存储器。

【例题】存储器扩展有哪几种方式?

3 种,字扩展、位扩展、字位扩展。
【解析】:字扩展:增加字的数量,地址范围; 位扩展:增加位数;字位扩展:位数和地址范围均增加。

三、实现片选控制的方法

存储体由多个芯片构成,由片选信号(由地址线实现)巨顶对哪个芯片进行读写操作。

1. 全译码法

即系统的全部地址线参与到地址译码,高位全部接译码器的输入形成片选信号来选择存储芯片;低位直接接到存储芯片的地址引脚,选择芯片内部的存储单元。该方法存储芯片的每个存储单元有唯一的地址。

在这里插入图片描述
8086 有20位, A13-19没有参与。

2. 部分译码法

即地址高位的一部分接到译码器的输入,形成片选信号选中存储芯片;地址低位接到存储芯片的地址端,选择芯片内部的存储单元。该法存储单元的地址不唯一。

3. 线选法

不适用译码器,直接将地址线的高位作为片选线。各存储芯片地址范围?
在这里插入图片描述

A19-A15
00000
A14-A11
1110
A10-A0 全0 全1

四、8086 CPU与存储器的连接

1. 8086 CPU 与存储器的奇偶分体接口

20 根地址线,寻址范围1MB。
8086对内存的访问:一个字(16位)或一个字节(8位)1MB分成2个512KB,偶存储体,奇存储体,均8位宽。

在这里插入图片描述

偶存储体连接到 8086 低八位 D0-D7 ,奇存储体连接到8086的高八位 D8-D15
用地址线的最低位 A0 用来选择偶存储体,用 BHE 来连接寄存储体,地址线共同连接到 A1-A19

在这里插入图片描述
A0和 BHE 对存储体的选择

(1)被访问数据的边界对齐问题

定义:如果一个数据由K个连续字节组成,该数据的地址是K的整数倍。

8086系统一个字数据,若其地址是2的倍数,则该数据是边界对齐的。

字节访问:偶地址,/BHE=0,A0=0,访问偶地址体;奇地址体,/BHE=0,A0 = 1 ,访问奇地址体;边界对齐,需一个总线周期。

字访问
边界对齐:偶地址访问1个字,则/BHE=0,A0=0,则一个总线周期传输两个字节;
边界不对齐:奇地址访问1个字,则线/BHE=0,A0=1,访问奇地址一个字节,后/BHE=1,A0=0,地址+1访问偶地址一个字节,需要两个总线周期。

(2)非边界对齐的一个字的访问

例:假设当前内存中存放的数据和地址如图所示,描述MOV AX, [0001H]指令取得数据的过程
在这里插入图片描述
执行完后 AX=6107H。从指令来看要访问一个字,而且地址是奇地址,说明非边界对齐。
先把 07H 放到地址线高位,对于小端存储 07H又被交换到低位,同理 61h 放低位再放高位。低位 AL, 高位AH

下列的变量定义有何不妥之处。

ORG 0012H
BUF1 DB 28H,76H,39H
BUF2 DW 2100

在这里插入图片描述
BUF2 开始地址 0015H, 非边界对齐,需要两个总线周期。

在 BUF2 之前添加 ORG $+1

例题:
利用 62512(64Kx8位SRAM)和 27128(16Kx8位EPROM) 芯片设计8086系统在最小工作方式下的存储系统。要求RAM区域从地址00000H开始,容量64Kx16位,可进行字节和字访问;ROM从地址0F0000H开始,容量16Kx16位,只能字访问。采用74LS138译码。

答案:
在这里插入图片描述

需要字节和字访问 需要用奇偶分体的连接,

解析:存储器按照字节编址,RAM容量128KB,需17根地址线,按奇偶分体,A0选择奇偶体,A1-A16选择62512内部存储单元。ROM容量32KB(16kx16位),需15根地址线,由于字访问,按照边界对齐,A0始终为0,A1-A14选择27128内部存储单元。
在这里插入图片描述

因为要求地址唯一 所以需要全译码方式
在这里插入图片描述

第四节 8086的系统地址映射

实地址模式的传统地址范围。
在这里插入图片描述
8086 有20位地址线,寻址范围是 1MB。

从00000H到3FFH 1KB的地址存放中断向量表,一个中断向量占4个字节,所以1KB中可以存放256个中断向量。、
从400H到4FFH 存放 BIOS数据区,存放BIOS自检时检测到的重要的参数
从500H到9FFFFH 638KB存放 DOS操作系统,用户应用程序
从A0000H到BFFFFH 128KB 视频缓冲区

扩展系统BIOS区域 存 ROM BASIC,真正的BIOS驱动程序 存放在系统BIOS区域。