【半导体存储芯片】
基本结构
半导体存储芯片内集成有存储矩阵、译码驱动电路、读写电路等,其基本结构如下图
- 存储矩阵:由大量相同的位存储单元阵列构成
- 译码驱动:将来自地址总线的地址信号翻译成对应存储单元的选通信号,该信号在读写电路的配合下完成对被选中单元的读写操作
- 读写电路:包括读出放大器和写入电路,用来完成读写操作
- 读写控制线:决定芯片进行读写操作
- 片选线:确定哪个存储芯片被选中
- 地址线:是单向输入的,其位数与存储字的个数有关
- 数据线:是双向的,其位数与读出或写入的数据位数有关,数据线数和地址线数共同反映存储芯片容量的大小,如地址线 $10$ 根,数据线 $8$ 根,则芯片容量为 $210\times 8=8K$ 位
半导体随机存取存储器按其存储信息的原理不同,可分为静态 RAM 和动态 RAM 两种,静态 RAM 大多用于高速缓冲存储器中,动态 RAM 大多用于主存中
74138 译码器
译码是编码的逆过程, 实现译码功能的电路被称为译码器
常见的译码器为 74138 译码器,输入是 $3$ 位二进制码,输出端的 $8$ 个端口对应 $8$ 种输入状态,因此又被称为 3/8 译码器
其中,$A$、$B$、$C$ 为译码地址输入端,$G_1$、$\overline{G_{2A}}$、$\overline{G_{2B}}$ 为选通端,$\overline{Y_0}\sim \overline{Y_7}$ 为译码输出端(低电平有效)
当选通端 $G_1$ 为高电平,另两个选通端 $\overline{G_{2A}}$、$\overline{G_{2B}}$ 为低电平时,才可将地址端 $A$、$B$、$C$ 的二进制码在一个对应的输出端以低电平译出
【RAM 存储器】
概述
通常把存放一个二进制位的物理器件称为存储元,其是存储器的最基本构件,地址码相同的多个存储元构成一个存储单元,若干存储单元的集合构成存储体
对于 RAM 存储器来说,其分为静态随机存储器(SRAM)和动态随机存储器(DRAM)两种,两者对比如下表
SRAM 存储器存储原理
静态随机存储器(SRAM)的存储元是用双稳态触发器(六管 MOS)来记忆信息的,因此即使信息被读出后,它仍保持其原状态而不需要再生(非破坏性读出),但是,只要电源被切断,原来的保存信息便会丢失,故它属易失性半导体存储器
SRAM 的存取速度快,但集成度低,功耗较大,所以一般用来组成高速缓冲存储器
DRAM 存储器存储原理
动态随机存储器(DRAM)是利用存储元电路中栅极电容上的电荷来存储信息的,常见的 DRAM 的基本存储电路通常分为三管式和单管式,同时 DRAM 采用地址复用技术,即地址线是原来的一半,且地址信号分行、列两次传送
相对于 SRAM 来说,DRAM 具有容易集成、位价低、容量大和功耗低等优点,但是 DRAM 的存取速度比 SRAM 慢,一般用来组成大容量主存系统
DRAM 电容上的电荷一般只能维持一到两毫秒,因此即使电源不掉电,信息也会自动消失,为此,每隔一定时间必须刷新,通常取 $2ms$,这个时间称为刷新周期
常用的刷新方式有以下三种:
- 集中刷新:在一个刷新周期内,利用一段固定的时间,依次对存储器的所有行进行逐一再生,在此期间停止对存储器的读写操作,称为死时间,又称为访存死区,该方法读写操作时不受刷新工作的影响,因此系统的存取速度比较高,但在集中刷新期间(死区)不能访问存储器
- 分散刷新:把对每一行的刷新分散到各个工作周期中去,这样,一个存储器的系统工作周期分为两部分:前半部分用于正常读、写或保持;后半部分用于刷新某一行,这种刷新方式没有死区,但加长了系统的存取周期,降低了整机速度
- 异步刷新:异步刷新是前两种方法的结合,既可缩短死时间,又充分利用最大刷新间隔为 $2ms$ 的特点,具体做法是将刷新周期除以行数,得到两次刷新操作之间的时间间隔 $t$,然后利用逻辑电路每隔时间 $t$ 产生一次刷新请求,这样可以避免使 CPU 连续等待过长的时间,而且减少了刷新次数,从根本上提高了整机的工作效率
如果将刷新安排在不需要访问存储器的译码阶段,则既不会加长存取周期,也不会产生死时间,这是分散刷新方式的发展,也称作透明刷新
对于 DRAM,其刷新需注意以下问题:
- 刷新对 CPU 是透明的,即刷新不依赖于外部的访问
- 动态 RAM 的刷新单位是行,故刷新操作时仅需要行地址
- 刷新操作类似于读操作,但又有所不同
- 刷新操作仅是给栅极电容补充电荷,不需要信息输出
- 刷新时不需要选片,即整个存储器中的所有芯片同时被刷新
RAM 的读写周期
RAM 的读周期
从给出有效地址后,到读出所选中单元的内容并在外部数据总线上稳定地出现所需的时间称为读出时间 $t_A$,地址片选信号 $\overline{CS}$ 必须保持到数据稳定输出,$t_{CO}$ 为片选的保持时间,在读周期中 $\overline{WE}$ 为高电平
RAM 芯片的读周期时序图如下所示
需要注意的是,读周期和读出时间是两个不同的概念,读周期时间 $t_{RC}$ 表示存储芯片进行两次连续读操作时所必须间隔的时间,其总是大于或等于读出时间
ROM 的写周期
要实现写操作,必须要求片选信号 $\overline{CS}$ 和写命令信号 $\overline{WE}$ 都为低电平,同时为使数据总线上的信息能够可靠地写入存储器,要求 $\overline{CS}$ 信号与 $\overline{WE}$ 信号的与操作的宽度至少为 $t_w$
若要去在地址变化期间不会发生错误写入而破坏存储器的内容,$\overline{WE}$ 信号在地址变化期间必须为高电平
此外,为保证有效数据的可靠写入,地址有效的时间至少应为:
若要求在 $\overline{WE}$ 和 $\overline{CS}$ 变为无效前能把数据可靠地写入,要求写入的数据必须在 $t_{DW}$ 以前在数据总线上已经稳定
RAM 芯片的写周期时序图如下所示
【ROM 存储器】
ROM 特点
ROM 和 RAM 都是支持随机存取的存储器,其中 SRAM 和 DRAM 均为易失性存储器,而 ROM 中一旦有了信息,就不能轻易改变,即使掉电也不会丢失,它在计算机系统中是只供读出的存储器
ROM 器件有两个显著的优点:
- 结构简单,位密度比可读写存储器高
- 具有非易失性,可靠性高
ROM 类型
根据制造工艺的不同,ROM 可分为以下几种:
- 掩膜式只读存储器 MROM:内容由半导体制造厂按用户提出的要求在芯片的生产过程中直接写入,写入以后任何人都无法改变其内容,可靠性高,集成度高,价格便宜,但灵活性差
- 一次可编程只读存储器 PROM:可以实现一次性编程的只读存储器,允许用户利用专门的设备(编程器)写入自己的程序,一旦写入后,内容就无法改变
- 可擦除可编程只读存储器 EPROM:不仅可以由用户利用编程器写入信息,而且可以对其内容进行多次改写,当需要修改EPROM的内容时,先将其全部内容擦除,然后再编程,虽然 EPROM 可读又可写,但由于 EPROM 的编程次数有限,且写入时间过长,所以其不能取代 RAM,同时,根据擦除方式,ERPOM 可分为紫外线擦除 UVEPROM 和电擦除 EPROM 两种
- 闪速存储器 Flash Memory:又称闪存,其是在 EPROM 与 EPROM 基础上发展起来的,既可在不加电的情况下长期保存信息,又能在线进行快速擦除与重写,价格便宜、集成度高,同时可擦除重写,且擦除重写的速度快
- 固态硬盘 SSD:基于闪存的固态硬盘是用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元(FLASH 芯片)组成,保留了闪存长期保存信息、快速擦除与重写的特性,对比传统硬盘也具有读写速度快,低功耗的特性,但价格较高