半导体随机存储器
Cache 由SRAM实现,主存储器由DRAM实现; 它们都属于易失性存储器,只要电源被切断,原来保存的信息便会丢失.
一. SRAM 和DRAM
(一). SRAM的工作原理
存储元–>存储单元---->存储体
静态随机存储器的存储元是用==双稳态触发器(六晶体管MOS)==来记忆信息的,因此即使信息被读出后,它仍保持其原状态而不需要再生(非破坏性读出)
SRAM的存取速度快,但集成度低,功耗较大,所以一般用来组成高速缓冲存储器
(二). DRAM的工作原理
动态随机存储器是利用存储元电路中栅极电容上的电荷来存储信息的,DRAM的基本存储元通常只使用一个晶体管,所以它比SRAM的密度要高很多.DRAM采用地址复用技术,地址线是原来的1/2,地址信号分行,列两次传送.
DRAM具有容易集成,价位低,容量大和功耗低等优点, 但DRAM的存取速度比SRAM的慢, 一般用来组成大容量的主存系统.
DRAM电容上的电容一般只能维持1~2ms,因此即使电源不断电,信息也会自动消失,为此,每隔一定时间必须刷新,通常取2ms,称为刷新周期.常用的刷新方式有3种:
-
集中刷新:指在一个刷新周期内,利用一段固定的时间,依次对存储器的所有行进行逐一再生,再此期间停止对存储器的读写操作,称为"死时间", 又称访存"死区", 优点是读写操作时不受刷新工作的影响,缺点是在集中刷新期间(死区)不能访问存储器
-
分散刷新:把对每行的刷新分散到各个工作周期中,这样,一个存储器的系统工作周期分为两部分:前半部分用于正常读,写或保持,后半部分用于刷新.这种刷新方式增加了系统的存取周期,如存储芯片的存取周期是0.5μs,则系统的存取周期是1μs.优点是没有死区,缺点是加长了系统的存取周期,降低了整机的速度
-
异步刷新:异步刷新是前两种方法的结合,它既可以缩短"死时间", 又能充分利用最大刷新间隔为2ms的特点,具体做法是将刷新周期除以行数,得到两次刷新操作之间的时间间隔t,利用逻辑电路每隔时间t产生一次刷新请求,这样可以避免使CPU连续等待过长的时间,而且减少了刷新次数,从根本上提高了整机的工作效率
DRAM的刷新需要注意以下问题:
- 刷新对CPU是透明的,即刷新不依赖于外部的访问
- 动态RAM的刷新单位是行,由芯片内部自动生成行地址
- 刷新操作类似于读操作,但又有所不同
- 刷新时不需要选片,即整个存储器中的所有芯片同时被刷新
(三). 存储器芯片的内部结构
存储器芯片由存储体,I/O读写电路,地址译码和控制电路等部分组成
- 存储体(存储矩阵): 存储体是存储单元的集合,它由行选择线(X)和列选择线(Y)来选择所访问单元,存储体的相同行,列上的位同时被读出或写入
- 地址译码器:用来将地址转换为译码输出线上的高电平,以便驱动相应的读写电路
- I/O控制电路,用以控制被选中的单元的读出或写入,具有放大信息的作用
- 片选控制信号,单个芯片容量太小,往往满足不了计算机对存储器容量的要求,因此需要用一定数量的芯片进行存储器的扩展.在访问某个字时,必须"选中"该存储字所在的芯片,而其他芯片不被"选中", 因此需要有片选控制信号
- 读/写控制信号.根据CPU给出的是读命令还是写命令,控制被选中单元进行读或写
(四). 存储器的读,写周期
-
RAM的读周期
从给出有效地址开始,到读出所选中单元的内容并在外部数据总线上稳定地出现所需的时间,称为读出时间(tA).地址片选信号 C S ‾ \overline{\mathrm{CS}} CS必须保持到数据稳定输出, t C O t_{\mathrm{CO}} tCO为片选的保持时间,在读周期中 W E ‾ \overline{\mathrm{WE}} WE为高电平.RAM芯片的读周期的时序图如下图
读周期和读出时间是两个不同的概念,读周期时间( t R C