存储器是许多存储单元的集合,按单元号顺序排列。每个单元由若干二进制位构成,以表示存储单元中存放的数值,通常由数组描述存储器。
存储器可分为主存储器(简称主存或内存)和辅助存储器(简称辅存或外存)两大类。和CPU直接交换信息的是主存。
主存的工作方式是按存储单元的地址存放或读取各类信息,统称访问存储器。主存中汇集存储单元的载体称为存储体,存储体中每个单元能够存放一串二进制码表示的信息,该信息的总位数称为一个存储单元的字长。存储单元的地址与存储在其中的信息是一一对应的,单元地址只有一个,固定不变,而存储在其中的信息是可以更换的。
指示每个单元的二进制编码称为地址码。寻找某个单元时,先要给出它的地址码。暂存这个地址码的寄存器叫存储器地址寄存器(MAR)。为可存放从主存的存储单元内取出的信息或准备存入某存储单元的信息,还要设置一个存储器数据寄存器(MDR)。
1-1、ROM(Read only memory):
只读存储器(ROM)是稳定的。它被用于存储计算机在必要时需要的指令集。存储在ROM内的信息是硬接线的”(即,它是电子元件的一个物理组成部分),且不能被计算机改变(因此称为“只读”)。可变的ROM,称为可编程只读存储器(PROM),可以将其暴露在一个外部电器设备或光学器件(如激光)中来改变。
以PROM为例,它再一次编译之后就不能再进行修改,它存储的每一位数据的状态是通过熔丝状态决定的,熔断表示0,连接表示1。故对PROM的编写被称为“烧写”。
以EPROM为例,它利用高压写入数据,擦除数据需要芯片在紫外线下曝光一段时间。
以EEPROM为例,它利用高压电场实现数据擦除。
1-2、Flash Memory:
即闪存。其原理如图所示,当栅极给到高电平时,电子进入浮栅层,中间变成N性,但由于隧穿层的存在,电子无法返回,则无法回到N极。如果想要释放电子则在栅极施加负电压。由于这样的性质,闪存可以实现长期数据保存。
NOR FLASH将晶体管并联,每一位地址都可以被寻址;NAND FLASH将晶体管串联,这样连线更少,电路更简单,便于集成。
2、寄存器(虽然不是存储器,但作为笔记,依旧将他记下来):
寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果。其实寄存器就是一种常用的时序逻辑电路,但这种时序逻辑电路只包含存储电路。
是与CPU同速,几乎是最快的,一个是因为它位于CPU内部,走线短,而且直接存取,一个是因为它独特的结构。
3、RAM:
随机存取存储器(RAM)在计算期间被用作高速暂存记忆区。数据可以在RAM中存储、读取和用新的数据代替。当计算机在运行时RAM是可得到的。它包含了放置在计算机此刻所处理的问题处的信息。大多数RAM是“不稳定的”,这意味着当关闭计算机时信息将会丢失。
3-1、DRAM(动态):
举个例子,电脑内存条属于DRAM。
DRAM的存储原理和上面所说的FLASH类似,利用电容和晶体管。当栅极置于高电平时,我们存储高电位,给漏极输入高电压时,电容器被充能,有高电位;同样,如果想给存储低电平,则给漏极输入低电平,电容器的能量被释放,有低电位。读取时,则导通栅极,在漏极接入信号放大器,检查我们的输出信号。
由于电容充电需要时间,同时它处在一个不断刷新的状态下,DRAM的存储速度相对较慢。
3-2、SRAM(静态):
举个例子,电脑的缓存就属于SRAM。
接下来介绍相关结构。首先介绍右侧的RS触发器,它由两个或非门组成,当R输入0,S输入1时,Q输出1;如果R输入1,S输入0,则Q输出0。当保持位输出0,则Q只能输出0,所以只有保持位为1的时候,后面的触发器才有效。所以如果我们需要储存高电平,则需要在保持位输入1,输入端也输入1,则直接输出1。由于没有电容,它的存储速度很快。