当前位置: 首页 > news >正文

《微机原理与接口技术》第 6 章 半导体存储器

存储器是计算机硬件系统的基本组成部分。

根据存储器在计算机系统中所起的作用,可分为:内存储器、外存储器(辅助存储器)

内存储器用来存放计算机运行期间的程序和数据,主要由半导体器件构成。本章在介绍半导体存储器工作原理的基础上,着重讲解微机或微机应用系统内存储器的构成及与 CPU的连接方法。

6.1 存储器概述

存储器是计算机系统中的记忆设备,用来存放程序和数据(存储二进制代码

6.1.1 存储器的分类

构成存储器的存储介质,目前主要是半导体器件磁性材料

一个双稳态半导体电路、一个CMOS晶体管或磁性材料的存储元,均可以存储一位二进制代码

这个二进制代码位是存储器中最小的存储单位,称为一个存储位(存储元)。由若干个存储元组成一个存储单元,多个存储单元组成一个存储器

存储器的种类繁多,根据存储器的存储介质的性能及使用方法的不同,可以从不同的角度对存储器进行分类。

(1)按存储介质分类

存储介质是指能寄存“0”、"1"两种代码并能区别两种状态的物质或元器件。存储介质主要有半导体器件磁性材料光盘等。

① 半导体存储器:存储元件由半导体器件组成的称为半导体存储器。现代半导体存储器都用超大规模集成电路工艺制成芯片,其优点是:体积小、功耗低、存取时间短。其缺点是,当切断电源时,所存信息也随即丢失,它是一种易失性存储器。近年来已研制出用非挥发性材料制成的半导体存储器,克服了信息易失的弊病。

半导体存储器又可按其材料的不同分为:双极型(TTL)半导体存储器MOS半导体存储器两种。前者存取速度快,后者集成度高,并且制造简单、成本低廉、功耗小。当前,MOS半导体存储器已被广泛应用。

② 磁表面存储器:磁表面存储器是在金属或塑料基体的表面上涂一层磁性材料作为记录介质,工作时磁层随载磁体高速运转,用磁头在磁层上进行读/写操作,故称为磁表面存储器。按载磁体形状的不同,可分为磁盘、磁带等。由于采用具有矩形磁滞回线特性的材料作磁表面物质,它们按其剩磁状态的不同而区分“0”或“1”,而且剩磁状态不会轻易丢失,因此这类存储器具有非易失性的特点。

③ 光盘存储器:光盘存储器是应用激光在记录介质(磁光材料)上进行读/写的存储器,具有非易失性的特点。另外光盘还有记录密度高、耐用性好、可靠性高和可互换性强等特点。

(2)按存取方式分类

按存取方式可把存储器分为:随机存储器(RAM)、只读存储器(ROM)

① 随机存储器(Random Access Memory,RAM):随机存储器是一种可读/写存储器,其特点是存储器的任何一个存储单元的内容都可以随机存&取,而且存取时间与存储单元的物理位置无关。计算机系统中的主存都采用这种随机存储器

按照存储信息原理的不同,随机存储器又分为:静态随机存储器(Static RAM,SRAM)动态随机存储器(Dynamic RAM,DRAM)

② 只读存储器(Read Only Memory,ROM):只读存储器只能对其存储的内容读出,而不能对其重新写入的存储器。这种存储器一旦存入了原始信息后,在程序执行过程中,只能将内部信息读出,而不能随意重新写入新的信息。因此,通常用它存放固定不变的程序、常数及汉字字库,甚至用于操作系统的固化。

(3)按存取顺序分类

按照存取顺序分类可把存储器分为:串行访问存储器、直接存取存储器

① 串行访问存储器(顺序存取存储器:对存储单元进行读/写操作时,需按其物理位置的先后顺序寻找地址,这种存储器称为串行访问存储器。显然,这种存储器由于信息所在位置不同,从而使得读/写时间均不相同。例如,磁带存储器,不论信息处在哪个位置,读/写时必须从其介质的始端开始按顺序寻找,故这类串行访问的存储器又称为顺序存取存储器

还有一种属于部分串行访问的存储器,如磁盘。在对磁盘读/写时,首先直接指出该存储器中的某个小区域(磁道),然后再顺序寻访,直至找到位置。故读/写磁盘时前段是直接访问,后段是串行访问。

(4)按在计算机中的作用分类

按在计算机系统中的作用不同存储器可分为:主存储器(内存)、辅助存储器(外存)、缓冲存储器

① 主存储器:主要特点是它可以和CPU直接交换信息,主要由半导体存储器构成。

② 辅助存储器:是主存储器的后援存储器,用来存放当前暂时不用的程序和数据,它不能与CPU直接交换信息。

二者相比,主存速度快、容量小、每位价格高;辅存速度慢、容量大、每位价格低。

③ 缓冲存储器用在两个速度不同的部件之中,如CPU与主存之间可设置一个快速缓冲存储器,用来提高CPU 访问存储器的速度。

存储器的分类如图6.1所示。

本章主要介绍半导体存储器,即主存储器的有关内容。

6.1.2 存储器的性能指标

存储器的类型不同,其性能指标也不相同,在构成微型计算机硬件系统时需要全面考虑。通常应注意的问题有以下几点。

(1)存储器容量

在微型计算机中,存储器以字节为单元每个存储单元包含8位二进制数,也就是一个字节。

存储器的容量:指的是存储器所能容纳的最大存储位数。

由于存储容量一般都很大,因此常以KB、MB或GB为单位。目前高档微型计算机的内存容量一般为32MB~4GB。

存储器容量越大,存储的信息量也就越大,计算机运行的速度也就越快。

对于32MB的存储器,其内部有32M×8个内存单元。存储器芯片多为×8结构,称为字节单元。也有×1、×4结构的存储器芯片,如Intel 2116为1位,2114为4位,6264为8位。这样的芯片应互相拼接成字节单元才能使用。在标定存储器容量时,经常同时标出存储单元的数目和每个存储单元包含的位数:

存储器芯片容量=存储单元数×每个存储单元的位数

例如,Intel 2114芯片容量为1K×4位,6264为8K×8位。

虽然微型计算机的字长已经达到16位、32位甚至64位,其内存仍以一个字节为一个单元,但是在这种微型计算机中,一次可同时对2个、4个或8个单元进行访问

(2)存取周期

很多类型的存储器的读/写操作不能截然分开,如有的在读操作后要进行读后重写,有的在写操作前要先进行读操作。

存储器的存取周期:是指实现一次完整的读出或写入数据的时间,是存储器连续启动两次读或写操作所允许的最短时间间隔。

计算机的运行速度与存储器的存取周期有着直接的关系,因此它是存储器的一项重要参数。一般情况下,存取周期越短,计算机运行的速度越快。半导体双极型存储器的存取周期一般为几至几百纳秒,MOS型存储器的存取周期一般为十几至几百纳秒。

一个存储器系统的存取周期不仅与存储器芯片的存取周期有关,而且还与存取路径中的缓冲器及地址/数据线的延时有关,往往是三者的和。

(3)功耗

半导体存储器属于大规模集成电路,集成度高、体积小,但是不易散热,因此在保证速度的前提下应尽量减小功耗。一般而言,MOS型存储器的功耗小于相同容量的双极型存储器。

(4)可靠性

可靠性是指存储器对电磁场、温度变化等因素造成干扰的抵抗能力(电磁兼容性),以及在高速使用时也能正确地存取(动态可靠性)。半导体存储器采用大规模集成电路工艺制造,内部连线少、体积小、易于采取保护措施。与相同容量的其他类型存储器相比,半导体存储器抗干扰能力强。

(5)集成度

存储器由若干存储器芯片组成。存储器芯片的集成度越高,构成相同容量的存储器的芯片数量就越少。

半导体存储器的集成度:是指在一块数平方毫米芯片上所制作的基本存储单元数量,常以“位/片”表示,也可以用“字节/片”表示,MOS型存储器的集成度高于双极型存储器,动态存储器的集成度高于静态存储器,这也是动态存储器普遍用作微型计算机主存储器的原因。

(6)其他

其他还应考虑输入、输出电平是否与外电路兼容,对CPU总线负载能力的要求,使用是否方便灵活,以及成本价格等。

6.1.3 存储器的分级结构

一个存储器的性能通常用速度、容量、价格3个主要指标来衡量。计算机对存储器的要求是容量大、速度快、成本低,需要尽可能地同时兼顾这三方面的要求。但是一般来讲,存储器速度越快,价格也越高,因而也越难满足大容量的要求。目前通常采用多级存储器体系结构,使用高速缓冲存储器、主存储器、外存储器,如图 6.2所示。

高速缓冲存储器(Cache)是计算机系统中的一个高速、小容量的半导体存储器,它位于CPU和主存之间,用于匹配两者的速度,达到高速存取指令和数据的目的。与主存相比,Cache的存取速度快,但存储容量小。

由Cache和主存储器构成的Cache-主存系统,其主要目标是利用与CPU速度接近的Cache来高速存取指令和数据以提高存储器的整体速度,从CPU的角度看,这个层次的主存系统速度接近Cache,而容量和每一位的价格则接近于主存;由主存和外存构成的虚拟存储器系统,其主要目的是增加主存储器的容量,从整体上看,其速度接近于主存的速度,其容量则接近于外存的容量。计算机存储系统的这种多层次结构,很好地解决了容量、速度、成本三者之间的矛盾。这些不同速度、不同容量、不同价格的存储器,用硬件、软件或软硬件结合的方式连接起来,形成一个系统。这个存储系统对应用程序员而言是透明的,在应用程序员看来,它是一个存储器,其速度接近于最快的那个存储器,存储容量接近于容量最大的那个存储器,单位价格则接近最便宜的那个存储器。

6.2 随机读/写存储器

目前广泛使用的半导体存储器是MOS型半导体存储器。根据存储信息的原理不同又分为静态MOS存储器动态MOS存储器

半导体存储器的优点是存取速度快、存储体积小、可靠性高、价格低廉;缺点是断电后存储器不能保存信息。

6.2.1 静态MOS存储器

(1)基本存储元

基本存储元是组成存储器的基础和核心,它用来存储一位二进制信息。

六管静态RAM存储元电路如图6.3所示,它在 MOS型双稳态触发器的基础上增添了两个门控管。

图中 VT1~VT4构成双稳态触发器,两个稳定状态分别表示1和0,如A点为高电平,B点为低电平,表示存1,相反则表示存0。VT5、VT6为门控管,当行选择线X为高电平时,VT5、VT6管导通,A点和B点分别与内部数据线D和~D(也称位线)接通。VT7、VTR也是门控管,控制该存储单元的内部数据线是否与外部数据线接通。当列选择线Y也为高电平时,VT7、VT8导通,内部数据线与外部数据线接通,表示该单元的数据可以读出,或者把外部数据线上的数据写入到该存储单元。

① 在读出时:X选择线与Y选择线均为高电平,VT5、VT6、 VT7、VT8均导通,A点与D接通,B点与~D接通,又与外部数据线接通。若原来存人的是1,A点为高电平,则D为高电平;B点为低电平,则~D为低电平,二者分别通过 VT7、VT8输出到外部数据线,即读出1。相反,若A点为低电平,则D为低电平;B点为高电平,则~D为高电平,二者分别通过 VT7、VT8输出到外部数据线,即读出0。读出信息时,双稳态触发器的状态不受影响,因此为非破坏性读出

② 在写入时:首先将要写入的数据送到外部数据线上。若该单元被选中,则X选择线与Y选择线为高电平,VT5、VT6、VT7、VT8均导通,外部数据线上的数据就分别通过VT7、VT5和VT8、VT6送到触发器的A点与B点。若写入的是1,则 VT2导通,B点为低电平,VT1截止,A点为高电平,写入结束,状态保持。若写入的是0,则状态相反,A点为低电平,B点为高电平。但如果电源掉电后又恢复供电,则双稳态触发器发生状态竞争,即掉电前写入的信息不复存在,因此 SRAM被称为易失性存储器

(2)SRAM的组成

静态RAM(静态随机存储器SRAM)结构组成原理图如图6.4所示,存储体是一个由64×64=4096个六管静态存储电路组成的存储矩阵。在存储矩阵中,X地址译码器多路输入,一路输出)输出端提供X0~X63共64根行选择线,而每一行选择线接在同一行中的64个存储电路的行选端,因此行选择线能同时为该行64个行选端提供行选择信号。Y地址译码器输出端提供Y0~Y63共64根列选择线,而同一列中的64个存储电路共用同一位线,因此由列选择线可以同时控制它们与输入/输出电路(I/О电路)连通。显然,只有行、列均被选中的某个单元存储电路,在其X向选通门与Y向选通门同时被打开时,才能进行读出信息和写入信息的操作。

图6.4中所示的存储体是容量为 4K×1 位的存储器,因此,它仅有一个I/O电路。(进行1位二进制数据的写入/输出

如果要组成字长为4位或者8位的存储器,则每次存取时,同时应有4个或8个单元存储电路与外界交换信息,这种存储器中,将列按4位或8位分组,每根列选择线控制一组列向门同时打开;相应地,I/O电路也应有4个或8个。每一组的同一位共用一个I/O电路。通常,一个RAM芯片的存储容量是有限的,需要用若干片才能构成一个实用的存储器。这样,地址相同的存储单元可能处于不同的芯片中,因此,在选择地址时,应先选择其所属的芯片。对于每块芯片,都有一个片选控制端(~CS),只有当片选端加上有效信号时,才能对该芯片进行读或写操作。一般地,片选信号由地址码的高位译码产生。

(3)SRAM的读/写过程

① 读出过程

(Ⅰ)地址码A0~A11加到RAM芯片的地址输入端,经X与Y地址译码器译码,产生行选单元中存储的代码,经一定时间,出现在I/O电路的输入端。I/O电路对读出的信号进行放大、整形,送至输出缓冲寄存器。缓冲寄存器一般具有三态控制功能,此时没有开门信号,所存数据还不能送到DB上。

(Ⅱ)在送上地址码的同时,还要送上读/写控制信号(R/~W或~RD、~WR)和片选信号(~CS),读出时,使R/~W=1或~RP=0、~CS=0,这时,输出缓冲寄存器的三态门将被打开,所存信息送至DB上。于是,存储单元中的信息被读出。

② 写入过程

(Ⅰ)地址码加在RAM芯片的地址输入端,选中相应的存储单元,使其可以进行写操作。

(Ⅱ)将要写入的数据放在DB 上。

(Ⅲ)加上片选信号~CS=0及写入信号R/~W=0或~WR=0。这两个有效控制信号打开三态门使DB上的数据进入输入电路,送到存储单元的位线上,从而写入该存储单元。

图6.4为静态RAM ×1结构组成原理图,其电气特征为:只有一个 DB及其电路。图中地址线与芯片内单元容量一一对应,R/~W为读/写控制,~CS为片选控制。

图6.5为静态RAM ×2结构组成原理图,一条Y地址译码线控制相邻两列列选门控,它有两个DB及其电路。其余同RAM×1结构。RAM×4、RAM×8结构可类推。

(4)常用SRAM芯片

常用的 SRAM芯片有2114、2142、6116、6264等。

① Intel 2114存储器芯片

Intel 2114是一个容量为1K×4位的静态RAM芯片,其内部结构图如图6.6所示,芯片的引脚图如图6.7所示。

图6.6中,A0~A9为10根地址线,可寻址2^10=1024个存储单元。I/O1~I/O4为4根双向数据线。~WE为读/写允许控制信号线,WE=0时为写入,WE=1时为读出。~CS为芯片片选信号,CS=0时,该芯片被选中。由于2114的容量为1024×4位,因此有4096个基本存储电路,排成64×64的矩阵。用A3~A8这6根地址线作为行译码,产生64根行选择线,用A0~A2与A9这4根地址线作为列译码,产生16根列选择线,而每根列选择线控制一组4位同时进行读或写操作。存储器内部有4路I/О电路及4路输入/输出三态门电路,并由4根双向数据线I/O1~I/O4与外部数据总线相连。当~CS=0与~WE=0时,经门1输出线的高电平将输入数据控制线上的4个三态门打开,使数据写入;当~CS=0与~WE=1时,经门2输出的高电平将输出数据控制线上的4个三态门打开,使数据读出。

② Intel 6264存储器芯片

Intel 6264是一种8K×8位的静态存储器,其内部结构图如图6.8所示,主要包括512×16×8的存储器矩阵、行/列地址译码器及数据输入/输出控制逻辑电路。地址线13位,其中,A3~A9和A11、A12用于行地址译码,A0~A2和 A10用于列地址译码。在存储器读周期,选中单元的8位数据经列I/O控制电路输出;在存储器写周期,外部8位数据经输入数据控制电路和列I/О控制电路,写入到所选中的单元中。

6264有28个引脚,如图6.9所示,采用双列直插式结构,使用+5V电源。

其引脚功能如下。
(Ⅰ)A0~A12:地址线:,输入,寻址范围为8KB。

(Ⅱ)D0~D7:数据线,8位,双向传送数据。

(Ⅲ)~CE:片选信号,输入,低电平有效。

(Ⅳ)~WE:写允许信号,输入,低电平有效,读操作时要求其无效。

(Ⅴ)~OE:读允许信号,输入,低电平有效,即选中单元输出允许。

(Ⅵ)Vcc:+5V电源。

(Ⅶ)GND:接地。

(Ⅷ)NC:表示引脚未用。

6264的工作方式如表6.1所示。

(5)SRAM与CPU的连接

CPU对存储器进行读/写操作:

① 地址总线给出地址信号 → ② 发出读操作或写操作的控制信号 → ③ 在数据总线上进行信息交流。

因此,存储器与CPU连接时,要完成地址线、数据线、控制线的连接。

目前生产的存储器芯片的容量是有限的,它在字数或字长方面与实际存储器的要求都有差距,所以需要进行扩充才能满足实际存储器的容量要求。通常采用位扩展法、字扩展法、字位同时扩展法

① 位扩展法

假定使用 8K×1 的RAM存储器芯片,那么组成8K×8位的存储器可采用如图6.10所示的位扩展法。此时只加大字长,而存储器的字数与存储器芯片字数一致。图6.10中,每一片RAM是8K×1,故其地址总线为13条(A0~A12),可满足整个存储体容量的要求。每一片对应于数据的1位(只有1条数据总线),故只需将它们分别接到数据总线上的相应位即可。在这种方式中,对存储芯片没有选片要求,也就是说芯片按已全被选中来考虑。如果存储芯片有选片输入端(CE),则可将它们直接接地。在这种连接中,每一条地址总线接有8个负载,每一条数据总线接有一个负载。

② 字扩展法

字扩展是仅在字数扩充,而字长不变,因此将芯片的低位地址线、数据线、读/写控制线并联,而由片选信号来区分各片地址,故片选信号端连接到选片译码器的输出端。如图6.11所示为用16K×8位的芯片采用字扩展法组成64K×8位的存储器连接图。

4个芯片的数据端与数据总线D0~D7相连。

地址总线低位地址A0~A13与各芯片的14位地址端相连(编码16K存储空间),而两位高位地址A14A15经译码器和4个片选端相连(4×16K=64K,A14A15地址信号作片选信号)。

地址空间分配表如表6.2所示。

③ 字位同时扩展法

一个存储器的容量假定为M × N位,若使用l × k位的芯片(l<M,k<N),则需要字数和位数同时进行扩展。此时共需要(M/l) × (N/k)个存储器芯片。

(6)(静态随机存取存储器) SRAM的连接举例

存储器与CPU相连时,需要考虑的问题:

① 数据线的连接。

② 地址线的连接。

③ 读/写控制信号线的连接。

④ 片选信号线的连接。

【例6.1】在64KB的地址空间中,用8片2114(1K×4)构成4K×8,即4KB存储区的全译码法(即全部地址参与译码)连接方案:其地址范围为2000H~2FFFH(=2^12=4K)。连接图如图6.12所示。

分析:

① 由64KB的地址空间可知地址总线共有16位。

② Intel 2114的结构是1K×4位,故可用两片2114按位扩充方法组成1K× 8位的存储器组,用8片可组成4组1K×8位的存储器。1KB芯片有10根地址线,可接地址总线A0~A9,每一组中的两片2114的数据线则分别接数据总线的高4位和低4位。

本例选用了译码器74LS138,该芯片有3个片选端G1、~G2A及~G2B,必须使G1=1、~G2A=0及~G2B=0,允许译码输出,芯片才能有效工作,否则,输出全为高电平。A、B、C为3位输入端,输出为8根选择线~Y0到~Y7,与A、B、C这3位输入代码对应的选择线为低电平(有效),其他的选择线为高电平。

线路中用A15 、A14及存储器请求信号M/~IO(与存储器交互则置1,与I/O端口交互则置0)=1作为74LS138的片选信号,如图6.12所示的连接方式,译码器仅在A15=0、A14=0及M/~IO=1的情况下才能允许输出。M/~IO参加译码控制是必要的,它使仅在访问内存时产生有效信号,保证正确地选中存储器地址,而不会与外部设备地址搞错。地址码的高5位A15~A11进行译码,A10参与片选的二级译码,共同控制各芯片的片选端,以选中所寻址的某组芯片地址,这显然为全译码法。如果取A15~A10分别为001000、001001、001010 及001011,经过译码器74LS138的 Y4、Y5再与A10组合控制,分别将输出的4个片选信号接到4组芯片的片选端,就可取得所需要的某组芯片地址区间,如表6.3所示,再由给定的低位地址 A0~A9即可选中某个地址单元。需要说明的是,译码方案不唯一。

图6.12中还画出了读/写信号产生电路,这里也加进了M/~IO的控制,这样做可减少对2114的干扰。Intel 2114的读/写控制信号只有一个~WE,WE=1时为读操作,WE=0时为写操作。

6.2.2 动态MOS存储器

(1)单管动态存储元

(2)DRAM的刷新和DRAM控制器

(3)常用DRAM

(4)高集成度DRAM

6.3 只读存储器

6.3.1 掩膜只读存储器

6.3.2 可擦可编程只读存储器

6.3.3 电可擦可编程只读存储器

6.3.4 快擦写存储器

6.4 虚拟存储器

……

6.5 Intel 80x86内存管理模式

……

6.6 例题解析

……

相关文章:

  • 《从像素到身份:Flutter如何打通社交应用人脸识别的技术闭环》
  • 从生产流程到故障处理,R²AIN SUITE 如何为制造业“减负”?
  • 树莓5安装 PyCharm 进行python脚本开发
  • Java 线程Thread类中的方法
  • JavaScript 中如何跳出(或终止)forEach 循环
  • zabbix最新版本7.2超级详细安装部署(一)
  • Helix QAC 2025.1 重磅发布!MISRA C:2025® 100%覆盖
  • 【C++】【设计模式】生产者-消费者模型
  • 数据库--处理模型(Processing Model)
  • 有限资源下的AI搜索策略:2025年SEO优化指南
  • 在scala中使用sparkSQL读入csv文件
  • 前端面试每日三题 - Day 33
  • Vue 2 和 Vue 3的比较(二、语法差异)
  • 新一代动态可重构处理器技术,用于加速嵌入式 AI 应用
  • 索尼(sony)摄像机格式化后mp4的恢复方法
  • CAElinux系统详解
  • Retrofit vs Feign: 介绍、对比及示例
  • Spring Boot 跨域问题全解:原理、解决方案与最佳实践
  • Java GUI 开发之旅:Swing 组件与布局管理的实战探索
  • EBS 段值安全性配置
  • 在笔墨金石间,看胡问遂与梅舒适的艺术对话
  • 习近平出席中国-拉美和加勒比国家共同体论坛第四届部长级会议开幕式
  • 第12届警博会在即:一批便民利企装备亮相,规模创历史新高
  • 西藏日喀则市拉孜县发生5.5级地震,震源深度10公里
  • 退休夫妻月入1.2万负债1.2亿申请破产,律师:“诚实而不幸”系前置条件
  • 宣布停火后,印控克什米尔地区再次传出爆炸声