第3章 存储器系统
(一)知识范围
1. 存储器体系相关概念;
2.半导体存储器的分类及其特点;
3. 8086/8088 的存储器结构;
4. 常见半导体存储芯片的外部特性及其与系统的连接;
5. 存储器接口设计(存储器扩展技术);
6. 高速缓存。
(二)考核要求
1,理解存储器三级存储体系的构成:外存、内存、高速缓冲存储器的概念。
2.理解8086/8088CPU的内存分配,掌握实地址模式下的存储器地址变换方法。
3,掌握存储器的性能指标,半导体存储器的分类。
4. 理解静态与动态存储器的构成及其特点。
5. 掌握典型的存储芯片(SRAM 6264、DRAM 2164A)的引脚构成。
6. 了解高速缓冲存储器。
3.1 存储器的概述
一、存储器分类
1.按存储器在计算机系统中的作用分类
(1)高速缓冲存储器:【cash】
(2)主存储器:【内存】
(3)辅助存储器:【外存】
2.按存取方式分类
(1) 随机存取存储器RAM:
和ROM经常做为半导体器件,作为内存的器件
(2)只读存储器ROM:
(3)顺序存取存储器SAM:
磁性
(4)直接存取存储器DAM:
硬盘
3.按存储介质分类
(1)半导体存储器
(2)磁表面存储器
(3)光存储器
4. 按信息的可保存性分类
易失性存储器:
RAM(易失性)掉电会丢失信息
非易失性存储器:
ROM没电的情况下能够保存信息
破坏性读出:
信息读出时,原存储信息会被破坏
非破坏性读出:
硬盘
二、存储系统的层次结构
cpu是计算机处理控制单元,也是整个计算机系统的运算和控制中心
主存,是整个计算机系统的内存,用于临时保存信息的部分,
cpu和主存可以直接进行数据交互,a0-a19是20位的地址线,cpu和主存之间可以互相交互,中间添加了个cache(高速缓冲期)其作用就是为了解决cpu和主存之间速度不匹配的一个缓冲器
cache高速度小容量 cache 和主存的器件不一样
cache的功能
是介于cpu与主存之间,用于缓冲cpu与主存速度的差异,两者速度的差异
思考:
寄存器、cache、内存和外存的区别?
1、从位置上进行考虑,寄存器属于cpu,剩下的属于存储体系
2、容量 AX 16位
cache 1MB=2^20x8位
内存:8GB
外存:1T
3、速度
寄存器载cpu里面,自左向右,从高速变低俗
4、构成:
3.2 8086/8088系统存储器的组织
1. 数据的存储格式
(1) 计算机中信息的单位
位bit: 1bit
字节Byte: bB=8bit
字Word: 88/86字长16位机: 16位=2B=16bit
双字DWord: 16位机:双字=
(2) 8088/8086系统主存储器的容量
由于88/86 有A0-A19 20位地址线
所以最大访问容量2^20=1MB
2^10 1k
1024 20 1mb 1024*1024
(3) 88/86的存储格式
中断向量表和堆栈都是内存的重要区域
内存单元从上到下 如果用十六进制来表示的话 00000H(20个0):FFFFFH(20个1)A0-A19
2.88/86CPU存储器的分段管理
为什么分段?
由于8886是16位机,内部寄存器16位
但是8886能访问主存的地址是20位的
所以就要把20位的物理地址1MB分为段,每一段64kb字节
怎么分段?
1MB逻辑分为4个段
每段最大64k字节
可以重叠段
每段的段首地址,存在段寄存器中 cpu
(1)概念
段地址:用段寄存器表示 DS CS ES SS 16位段首地址
偏移地址:有效地址
主要用于逻辑地址物理地址的计算
逻辑地址
程序中使用的
表示:段地址:偏移地址 有效地址EA
物理地址
CPU访问内存
计算公式:段寄存器X16+偏移地址
(2) 如何分配各个逻辑段
·程序的指令序列必须安排在代码段,CS: IP
·程序使用的堆栈一定在堆栈段,SS: SP 桟顶
程序中的数据默认是安排在数据段,DS:EA
串操作的目的区必须是附加段,ES: EA
(3)逻辑地址到物理地址的转换举例
已知 逻辑地址 1000H:1200H
物理地址 11200H
二、8086系统中主存储器的分体结构
1. 为什么采用分体结构?
访问【读写】
访问一个字节时,
访问一个字时,高8位和低8位同时访问两个存储单元
内存单元 从低 到高
2.如何划分奇偶体?
cpu的d0-d7链接主存偶地址单元
cpu的d8-d15 奇地址单元
2奇地址 BHE =0
偶地址 A0=0
3.两个字的概念:
2000单元读一个字节 D0-D7
2001单元 用 D8-D15
2000H=3412H 【34是高8位 12是低8位 【规则字对准好的字】】
2001H=5634H 【56是高8位 34是低8位 [非规则字,未对准的字]】
3.3 半导体存储器
>主存和Cache采用半导体存储器
(1)静态RAM (SRAM)
SRAM芯片 _6264
A0-A12=13位
D0-D7=8位
容量 2^13x8=8kx8位
22号角是读
20号是片选信号线
(2)动态RAM
DRAM芯片2164
64kx1
2^16x1
只用到了8位 1位 读/写
(1) EPROM
用紫外线擦除原有信息
一般使用专门的编程器(烧写器)
编程编程后,应该贴上不透光封条
未编程前,每个基本存储单元都是信息“1”
编程就是将某些单元写入信息“0”
EPROM芯片2764
8kx8
二、半导体存储器性能指标
1.存储容量:
2. 存取速度:存取时间(TA):
存取周期(TAC):
3.制造工艺:
4. 功耗:
5. 可靠性:平均无故障时间、
1.存储容量(3个定义)
1. 8086CPU的最大内存地址空间是(B)A. 1KBB. 1MBC. 256MBD. 64KB
8086CPU的最大内存地址空间是B. 1MB(兆字节),不是1KB、256MB或64KB。
2. 当EPROM擦除后,每个单元的内容为(D)A. 0OHB. CCH C. AAHD. FFH
当EPROM(可编程只读存储器)擦除后,每个单元的内容通常会被设置为FFH(十六进制),表示所有位都是逻辑高(1)。所以正确的答案是D. FFH。
3. 需要定时刷新的存储器是(B)A. SRAM B. DRAMC. EPROMD. EEPROM
需要定时刷新的存储器是B. DRAM(动态随机存储器)。DRAM存储单元中的数据会逐渐消失,因此需要定期刷新以保持数据的完整性。相反,SRAM(静态随机存储器)、EPROM(可编程只读存储器)和EEPROM(可擦除可编程只读存储器)不需要定时刷新,它们能够保持数据而不需要持续刷新操作。
256K×8的RAM芯片需要—18x8———条地址线。
5,在8086微处理器构成的系统中,什么是存储器的规则字和非规则字?8086微处理器对一个规则字和一个非规则字读写时,有什么差别?
在8086微处理器构成的系统中,规则字(even address word)和非规则字(odd address word)是指存储器中数据的存储方式。
规则字(even address word):规则字指的是存储器中的数据以偶数地址开始的字。8086微处理器是16位处理器,因此每个字(word)占用2个字节。规则字从存储器的偶数地址开始,这意味着一个规则字的第一个字节位于偶数地址,而第二个字节位于相邻的奇数地址。例如,假设数据存储在地址1000H,那么第一个字节将位于地址1000H,第二个字节将位于地址1001H。
非规则字(odd address word):非规则字指的是存储器中的数据以奇数地址开始的字。与规则字相反,非规则字的第一个字节位于奇数地址,而第二个字节位于相邻的偶数地址。例如,假设数据存储在地址1001H,那么第一个字节将位于地址1001H,第二个字节将位于地址1002H。
当8086微处理器对规则字和非规则字进行读写时,有以下差别:
存储器访问的速度:8086微处理器对规则字的读写速度通常比对非规则字更快,因为规则字对齐可以更有效地利用总线带宽。
存储器访问的复杂性:由于8086微处理器是16位处理器,对规则字的访问通常更简单,因为它可以直接从偶数地址开始读取16位数据。然而,对非规则字的访问可能需要更多的操作,因为处理器需要跨越奇数地址和偶数地址来读取完整的16位数据。
存储器访问的效率:规则字对齐通常能够提高存储器访问的效率,因为它可以更好地与处理器的字操作相匹配。对于非规则字,可能需要额外的操作来处理数据的不对齐,这可能会导致性能下降。
总之,规则字和非规则字的主要区别在于存储器中数据的对齐方式,它们可以影响存储器访问的速度、复杂性和效率。规则字对齐通常更有利于8086微处理器的性能。
3.4 存储芯片与CPU的连接
一、连接方法:
1. CPU的三类系统总线:
2. 数据线连接方法:
当CPU选择8088时,DB为8位当
CPU选择8086时,DB为16位
位扩充:例如:1K×4 1K×8
1kx8
____ =1组x2 两片
1kx4
3. 地址线的连接方法:
字扩充例如:1K×8 →2K×8
2kx8
—— =2x1 两片 2组 1片
1kx8
4. 译码器
门电路译
码译码器
3:8译码器
三个输入端8个输出端口
24译码器2入4出
5. 译码方法
(1) 全译码
(2)部分译码
(3)线选译码