第五章 存储系统及半导体存储器.docx
《第五章 存储系统及半导体存储器.docx》由会员分享,可在线阅读,更多相关《第五章 存储系统及半导体存储器.docx(22页珍藏版)》请在冰豆网上搜索。
第五章存储系统及半导体存储器
第五章
存储系统及半导体存储器
半导体存储器的分类与简介
CPU与存储器的连接
微机中存储系统的结构
第一节:
存储器简介
一、存储器的分类
1.按存储介质分类
(1)用半导体器件做成的存储器称为半导体存储器,按制造工艺可把半导体存储器分为双极型、CMOS型、HMOS型等类别。
(2)用磁性材料做成的存储器称为磁表面存储器,如磁盘存储器和磁带存储器等。
(3)用光学材料做成的存储器称为光表面存储器,如光盘存储器。
第一节:
存储器简介
一、存储器的分类
1.按存储介质分类
(1)用半导体器件做成的存储器称为半导体存储器,按制造工艺可把半导体存储器分为双极型、CMOS型、HMOS型等类别。
(2)用磁性材料做成的存储器称为磁表面存储器,如磁盘存储器和磁带存储器等。
(3)用光学材料做成的存储器称为光表面存储器,如光盘存储器。
4.按在微机系统中的作用分类
(1)主存储器:
用来存放当前正在运行的程序和数据,位于主机内部。
CPU通过指令可以直接访问主存储器。
现代微机大多采用半导体存储器。
(2)辅助存储器:
用来存储CPU当前操作暂时用不到的程序或数据,位于主机外部,CPU不能直接用指令对外存储器进行读写操作。
辅助存储器主要有磁带、磁盘和光盘等。
(3)高速缓冲存储器Cache:
是计算机系统中的一个高速小容量的存储器,位于CPU和内存之间。
高速缓存主要由高速静态RAM组成。
5.按制造工艺分类
半导体存储器可根据制造工艺的不同,分为双极型(如TTL)、MOS型等类存储器。
双极型存储器集成度低,功耗大,价格高但速度快;MOS型存储器集成度高,功耗低,速度较慢但价格低。
MOS型存储器还可进一步分为NMOS(N沟道MOS)、HMOS(高密度MOS)、CMOS(互补型MOS)等不同工艺产品。
其中,CMOS电路具有功耗低、速度快的特点,在计算机中应用较广。
为了和CPU配合需要,要有一个兼有大容量、高速度和低成本的存储系统,应在系统结构设计上综合利用各种存储工艺的特长,产生了多层存储结构概念。
如左图。
从图中看出:
由上而下分三个层次:
高速缓冲、主内存、辅助存储器。
容量逐级增大,速度逐级降低,成本越小。
整体结构可看成层次:
主存-辅助存储层次、高速缓冲器(Cache)-主存层次。
1、主存-辅助存储层次
特点:
其速度接近于主存速度,容量接近于辅存容量。
使用时可把主、辅看成统一整体,可用比主存实际容量大得多得逻辑地址编写程序。
2、Cache-主存层次
特点:
Cache-主存层次以弥和CPU与主存得速度差距。
Cache速度能满足CPU要求,容量靠主存满足,因此,该层次解决了速度与成本得矛盾。
二、多层存储结构概念
三、存储器主要性能指标
存储器的主要性能指标反映了计算机对它们的要求,计算机一般对存储系统提出如下性能指标要求:
1.存储容量
是指存储器可以存储的二进制信息总量。
目前使用的存储容量达MB(兆字节)、GB(千兆字节)、TB(兆兆字节)或更大的存储空间。
存储容量通常以字节(Byte)为单位来表示,各层次之间的换算关系为:
1KB=210B=1024B;1MB=220B=1024KB;
1GB=230B=1024MB;1TB=240B=1024GB
⏹2.存取速度
⏹存储器的存取速度可以用存取时间和存取周期来衡量。
⏹
(1)存取时间:
是指完成一次存储器读/写操作所需要的时间,故又称读写时间。
具体是指从存储器接收到寻址地址开始,到取出或存入数据为止所需要的时间。
⏹
(2)存取周期:
是连续进行读/写操作的所需的最小时间间隔。
当CPU采用同步时序控制方式时,对存储器读、操作的时间安排,应不小于读取和写入周期中的最大值。
这个值也确定了存储器总线传输时的最高速率。
SRAM DRAM
存储信息 触发器 电容
破坏性读出 非 是
需要刷新 不要 需要
送行列地址 同时送 分两次送
运行速度 快 慢
集成度 低 高
发热量 大 小
存储成本 高 低
随机存取存储器
v双极性半导体RAM
v动态金属氧化物(MOS)RAM
读写存储器
v掩膜式ROM
v
v可编程ROM(PROM,ProgrammableROM)
v可擦除的EPROM(ErasableProgrammableROM)
v电可擦除的E2PROM(ElectricallyErasableProgrammableROM)
(2)读出时,先通过地址译码使行、列选择线均为高电平,T5、T6导通,A、B点的状态均送到I/O线上,这样就读取了原来存储的信息。
信息读出以后,原来存储内容仍然保持不变。
SRAM的主要优点是工作稳定,不需外加刷新电路,可简化外部电路设计。
SRAM的缺点是集成度较低,功耗较大。
单管动态RAM工作原理:
若写入“1”,字选线为“1”,
T1导通,C充电,存入信息。
读信息时,C放电至T1到输
出数据线上,因此,C充、放电
过程必须刷新。
动态RAM的刷新:
为保持
电容中的电荷不丢失,必须
对动态RAM不断进行读出和
再写入
常用动态RAM(DRAM):
64K位动态RAM存储器
芯片2164A的容量为64K×1位,即片内共有64K(65536)个
地址单元,每个地址单元存放一位数据。
需要16条地址线,
地址线分为两部分:
行地址与列地址。
五、ROM
只读存储器ROM,是一种非易失性的半导体存储器件。
其中所存放的信息可长期保存,掉电也不会丢失,常被用来保存固定的程序和数据。
在一般工作状态下,ROM中的信息只能读出,不能写入。
对可编程的ROM芯片,可用特殊方法将信息写入,该过程被称为“编程”。
对可擦除的ROM芯片,可采用特殊方法将原来信息擦除,以便再次编程。
1、掩膜式ROM
掩膜式ROM一般由生产厂家根据用户的要求定制的。
位线
字线
D3
D2
D1
D0
单元0
0
1
1
0
单元1
1
0
0
1
单元2
1
1
0
0
单元3
1
0
1
0
掩膜ROM以有/无跨接管子来区分0/1信息:
有为0,无(被光刻而去掉)为1。
2、可编程的PROM
出厂时,所有存储单元的熔丝都是完好的。
编程时,通过字线选中某个晶体管。
若准备写入1,则向位线送高电平,此时管子截止,熔丝将被保留;若准备写入0,则向位线送低电平,此时管子导通,控制电流使熔丝烧断。
换句话说,所有存储单元出厂时均存放信息1,一旦写入0使熔丝烧断,就不可能再恢复。
3、可擦除可编程的ROM(EPROM)
特点:
芯片的上方有一个石英玻璃的窗口,通过紫外线照射,芯片电路中的浮空晶栅上的电荷会形成光电流泄漏走,使电路恢复起始状态,从而将写入的信号擦去。
常用的EPROM有
2716(2K×8位)、
2764(8K×8位)、
27256(32K×8位)、
27512(64K×8位)等
(1)由浮栅雪崩注入的
FAMOS器件构成。
(2)在源极S与漏极N之间有一
个浮栅,当浮栅上充满负电
荷时,源极S与漏极N之间导
通,存储数据“0”,否则不
导通,存储数据"1"。
(3)用户可以多次编程。
编程加写脉冲后,某些存储
单元的PN结表面形成浮动
栅,阻挡通路,实现信息写
入。
(4)用紫外线照射可驱散
浮动栅(浮栅上的电荷形成
光电流泄漏),原有信息全
部擦除(擦除后内容全为
“1”),便可再次改写。
可擦除可编程的ROM(EPROM)
出厂时,硅栅上没有电荷,则管子内没有导电沟道,D和S之间是不导电的。
当把EPROM管子用于存储矩阵时,它输出为全1(或0)。
要写入时,则在D和S之间加上25V的高压,另外加上编程脉冲(其宽度约为50ms),所选中的单元在这个电源作用下,D和S之间被瞬时击穿,就会有电子通过绝缘层注入到硅栅,当高压电源去除后,因为硅栅被绝缘层包围,故注入的电子无处泄漏走,硅栅就为负,于是就形成了导电沟道,从而使EPROM单元导通,输出为“0“(或”1“)。
4、电可擦除可编程的ROM(E2PROM)
应用特性:
(1)对硬件电路没有特殊要求,
编程简单。
(2)采用+5V电源擦写
的E2PROM,通常不需要
设置单独的擦除操作,
可在写入过程中自动擦除。
(3)E2PROM器件大多是并行
总线传输的
5、闪速存储器(FlashMemory)
FlashMemory芯片借用了EPROM结构简单,又吸收了EEPROM电擦除的特点;不但具备RAM的高速性,而且还兼有ROM的非挥发性。
闪速存储器的主要特点为:
(1)固有的非易失性
它不同于静态RAM,不需要备用电池来确保数据存留,也不需要磁盘作为动态RAM的后备存储器。
(2)经济的高密度
Intel的1M位闪速存储器的成本按每位计,要比静态RAM低一半以上(不包括静态RAM电池的额外花费和占用空间)。
闪速存储器的成本仅比容量相同的动态RAM稍高,但却节省了辅助(磁盘)存储器的额外费用和空间。
(3)可直接执行
由于省去了磁盘到RAM的加载步骤,查询或等待时间仅决定于闪速存储器,用户可充分享受程序和文件的高速存取以及系统的迅速启动。
(4)固态性能
闪速存储器是一种低功耗、高密度且没有移动部分的半导体技术。
便携式计算机不再需要消耗电池以维持磁盘驱动器进行,或由于磁盘组件而额外增加体积和重量。
用户不必再担心工作条件变坏时磁盘会发生故障。
6、地址译码器74LS138
74LS138有三条控制线G1,,,只有当G1等于1,等于0,等于0时,三-八译码器才能工作,否则译码器输出全为高电平。
输出信号Y0~Y7是低电平有效的信号,对应于CBA的任何一种组合输入,其8个输出端中只有一个是0,其他7个输出均为1。
CBA
Y7~Y0
有效输出
001
000
11111110
Y0
001
001
11111101
Y1
001
010
11111011
Y2
001
011
11110111
Y3
001
100
11101111
Y4
001
101
11011111
Y5
001
110
10111111
Y6
001
111
01111111
Y7
其他值
×××
11111111
无效
v六、存储器容量扩充技术
Ø位数扩充
当实际存储芯片每个单元的位数和系统需要内存单元字长不等时采用的方法。
Ø单元数扩充
当存储芯片上每个存储单元的字长已满足要求,但存储单元的个数不够,需要增加的是存储单元的数量,就称为字扩展。
Ø单元、位数同时扩充
有时需要同时进行位数扩充和单元数扩充才能满足系统存储容量需求。
1、存储器容量扩充
当单片存储器芯片的容量不能满足系统容量要求时,可多片组合以扩充位数或存贮单元个数。
本节以RAM扩充为例,ROM的处理方法与之相同。
(1)位数扩充
例:
用8K×8bit的6264扩充形成8K×16bit的芯片组,所需芯片:
8K×16bit
8K×8bit
方法——
两个芯片的地址线、片选信号及读/写控制线分别互连;
两个芯片的数据线各自独立,一片作低8位(D0~D7),另一片作高8位(D8~D15)。
即,每个16位数据的高、低字节分别存于两个芯片,一次读/写操作同时访问两个芯片中的同地址单元。
具体连接如右。
(2)、单元数扩充
例:
用8K×8bit的6264扩充形成32K×8bit的存储区,需要的8K×8芯片数为:
32K×8bit/8K×8bit=4(片)
连接时:
⑴A0~A12,D7~D0,R/W等同名信号连接在一起。
⑵由于容量的扩充,增加了两位地址线,译码后产生4个片选信号,用于区分4个芯片。
这样,32K的地址范围在4个芯片中的分配为:
称地址线A0~A12实现片内寻址,A13~A14实现片间寻址。
v当单元数与位数都要扩充时,将以上两者结合起来。
如:
用8K×8b芯片构成32K×16b存储区,需要4×2个芯片。
(1)先扩充位数,每2个芯片一组,构成4个8K×16芯片组;
(2)再扩充单元数,将这4个芯片组组合成32K×16存储区。
v2、存储器芯片片选端的处理
Ø线选法
片内寻址未用的地址的高位直接作为各个芯片的片选信号,在寻址时只有一位有效来使片选信号有效的方法称为线选法。
Ø部分译码法
用片内寻址未用的部分高位地址进行译码产生片选信号。
Ø完全译码法
片内寻址未用的全部高位地址译码产生片选信号。
例:
用4片6264构成32K×8b的存贮区。
(1).全译码法——剩余的高位地址线A19~A13全部参加译码,产生6264的片选信号。
(推荐使用)
注:
MEMW=IO/M+WRMEMR=IO/M+RD
整个32K×8存储器的地址范围:
00000H—07FFFH;仅占用80881M容量的32K地址范围
全译码的优点:
地址唯一实现地址连续便于扩充
(2).部分译码法——除片内寻址外的高位地址的一部分来译码产生片选信号(简单)。
缺点:
地址重叠,每个地址有2(19~15)=25个重叠地址。
令未用到的高位地址全为0,则称为基本存贮器地址。
(3).线选——用除片内寻址外的高位地址线中的任一根做为片选信号,直接接各存储器的片选端来区别各芯片的地址。
特点:
①线选法也有地址重叠区。
②地址不连续,但简单
例:
用线选法产生4片6264(0#~3#)片选信号:
A16~A13用作片选,A19~A17未用,其它信号(数据线,读写信号)的连接同前图,这时,32K存储器的基本地址范围为:
芯片
A19~A17
A16~A13
A12……A0
地址范围
0#
000
0111
00…0至11…1
0E000H~0FFFFH
1#
000
1011
00…0至11…1
16000H~17FFFH
2#
000
1101
00…0至11…1
1A000H~1BFFFH
3#
000
1110
00…0至11…1
1C000H~1DFFFH
CPU与存储器的连接时应注意的问题
⏹
(1).CPU总线的带负载能力
⏹
(2).存储器的组织、地址分配与片选问题
⏹(3).CPU的时序与存储器的存取速度之间的配合
存储器片选信号的产生方式和译码电路
片选信号的产生方式:
a.线选方式(线选法)
b.局部译码选择方式(部分译码法)
c.全局译码选择方式(全译码法)
CPU(8088系列)与存储器的连接
(1)计算出所需的芯片数。
(2)构成数据总线所需的位数和系统所需的容量。
(3)控制线,数据线,地址线对应相连。
我们知道,单个存储芯片的存储容量是有限的,因此常常需要将多
片存储器按一定方式组成具有一定存储单元数的存储器。
下面以采用2114
组成1K×1位RAM芯片为例,再简要说明如何对存储器的容量进行扩充。
如下图所示的给定存储模块结构,采用每8个芯片为一组,进行位扩
展,形成1K×8位的存储容量,若要组成2K×8位还要进行单元扩展,则需
要两组共16片2114。
上面一片2732代表高8位存储体,下面一片2732代表低8位存储体。
为了寻址8KB的存储单元共需12条地址线(A12~A1)。
两片2732EPROM在总线上是并行寻址的。
其余的8086高位地址线(A19~A13)用来译码产生片选信号。
两片2732的端连接到同一个片选信号。
地址线A12~A1已作为8KBROM的片内寻址,其余的7根地址线(A19~A13)经译码器可输出128个片选信号线。
采用全译码方式时,128个片选信号线全部用上,可寻址128×8KB(即1M字节)的存储器。
当译码地址未用满时,可留作系统扩展。
图中M/IO信号线的作用是可以确保只有当CPU要求与存储器交换数据时才会选中该存储器系统。
8086存储空间:
1MB空间上、下两头:
00000H~0007FH128个字节留作中断用。
FFFF0H~FFFFFH16个字节存放启动程序。
如上图扩展ROM,以2片4KB的2732为例:
技术要点:
1、2732是8位数据线,一片接D15~D8,另一片接D7~D0
2、地址线用12条地址线,A12~A1,A0为偶地址芯片的片选信号之一,奇地址芯片的片选信号之一用BHE。
(8KB共用13条地址线)
3、另外一个片选信号是译码器的同一个输出端。
可与A0、BHE相与实现。
译码器连接如下图,属于全译码。
以Y0为例,
A0为偶地址芯片的片选信号之一:
奇地址时将A0换成BHE即可。
则2片2732芯片共8KB(4K字)。
2.8086CPU与静态RAM的连接
如果微型计算机系统的存储器容量较小,则采用SRAM芯片要比采用DRAM芯片更加方便。
因为大多数DRAM芯片是位片式,如16K×1位或64K×1位,而且DRAM芯片要求系统提供动态刷新支持电路,反而会增加存储器系统的成本。
下图为一个2KB的读写存储器系统。
存储器芯片选用2142(1K×4b)的SRAM,该存储器系统工作在8086最小模式系统中。
扩充连接图
称地址线A0~A12实现片内寻址,A13~A14实现片间寻址。
v当单元数与位数都要扩充时,将以上两者结合起来。
如:
用8K×8芯片构成32K×16存储区,需要4×2个芯片。
(1)先扩充位数,每2个芯片一组,构成4个8K×16芯片组;
(2)再扩充单元数,将这4个芯片组组合成32K×16存储区。
8K×8芯片
A14A13
A12~A0
地址范围
0#
00
0…00至1…11
00000H—
01FFFH
1#
01
0…00至1…11
02000H—
03FFFH
2#
10
0…00至1…11
04000H—
05FFFH
3#
11
0…00至1…11
06000H—
07FFFH
其余未用的A15~A19假设都为00000
◆用户扩展存储器地址空间的范围决定了存储芯片的片选信号的实现方式。
◆地址总线余下的高位地址线经译码后,做各存储芯片的片选。
通常IO/M信号也参与片选译码。
◆低位地址线A12~A0直接接在存储芯片上,寻址片内8K单元;
◆次高位地址线A15~A13译码后产生片选信号区分4个存储片;
◆最高位地址线A19~A16及IO/M用作译码器有效的使能控制。
具体地址分配见后面表格
◆实际应用中,存储器芯片的片选信号可根据需要选择上述某种方法或几种方法并用。
◆ROM与CPU的连接同RAM。
8K×8芯片
A15A14A13
A12~A0
地址范围
0#
000
0…00至1…11
00000H—
01FFFH
1#
001
0…00至1…11
02000H—
03FFFH
2#
010
0…00至1…11
04000H—
05FFFH
3#
011
0…00至1…11
06000H—
07FFFH
其余接译码器控制端的A19~A16都应为0000
IBMPC/XT的存储系统
IBMPC/XT采用Intel8086/8088微处理器,其地址为20位,寻址范围为1MB,其物理地址范围为00000H~FFFFFH。
通常1MB空间分为3个区,即RAM区、保留区和ROM区。
⏹80x86扩展存储器
高端内存区(HMA-HighMemoryArea)。
它是1024KB至1088KB之间的64KB内存,称为高端内存区,其地址为H~10FFEFH或以上。
这已超过1MB范围进入扩展内存了。
这个进入扩展内存的区域约为64KB,是1MB以上空间的第一个64KB。
我们把它称为高端内存区HMA(HighMemoryArea)。
HMA的物理存储器是由扩展存储器取得的。
因此要使用HMA,必须要有物理的扩展存储器存在。
此外HMA的建立和使用还需要XMS驱动程序HIMEM.SYS的支持,因此只有装入了HIMEM.SYS之后才能使用HMA。
扩展内存块(EMB-ExtendedMemoryBlock)是指lMB以上的内存空间,其地址是从H开始,连续不断向上扩展的内存,所以把这种内存称为EMB(ExtendedMemoryBlock)
扩充内存(EMS-ExpandedMemorySpecification)扩充内存是利用1MB内存中64KB的内存区,此内存区为连续的4页,每页为16KB的实际页内存,它们映射(MemoryMapping)到EMS卡上广大空间的逻辑页内存,EMS4.0版本驱动程序其映射的内存区为1MB内任意大小的内存,映射的扩充内存空间为32MB
扩充内存是一种早期的增加内存的标准,最多可扩到32M。
使用扩
充内存必须在计算机中安装专门的扩充内存板,而且还要安装管理扩充内
存板的管理程序。
扩展内存只能用在80286或更高档次的机器上。
扩充内存和扩展内存的区别并不在于其物理存储器的位置,而在于使
用什么方法来读写它。
高速缓冲存储器(Cache)
实现方式:
在CPU和存储器之间放置高速缓冲存储器,组成由高速缓冲存储器和主存构成一个“两级”的存储系统。
高速缓冲存储器(Cache)实际上是为了把由DRAM组成的大容量内存储器都看做是高速存储器而设置的小容量局部存储器,一般由高速SRAM构成。
这种局部存储器是面向CPU的,引入它是为减小或消除CPU与内存之间的速度差异对系统性能带来的影响。