MEMORY系列之“SRAM”

硬件助手 2019-03-01 08:00

本文主要介绍SRAM的物理结构、引脚定义及操作流程。


1、SRAM结构

SRAM常见的结构有两种:四管二电阻结构和六管结构,分别如下图所示,现在基本都用的六管结构。



6T:指的是由六个晶体管组成,如图中的M1、M2、M3、M4、M5、M6。SRAM中的每一bit数据存储在由4个场效应管(M1,M2,M3,M4)构成的两个交叉耦合的反相器中。另外两个场效应管(M5,M6)是存储基本单元到用于读写的位线(Bit Line)的控制开关。

具体结构简化示意如下:



2、SRAM引脚

引脚

定义

VDD

工作电压

VSS

I/On

数据线

UB#LB#

/低字节控制

An

地址线

WE#

写使能

CE1#CE2

片选

OE#

输出使能


SRAM地址信号没有线序,可任意交换,因为不涉及到内部寄存器的配置,也没有类似DRAM的刷新功能那样的操作,虽然可以更换地址,但一般都将A0作为最高位来使用的。而SDRAM由于行列地址共用,且使用数量不一样,写配置数据时分别使用不同的地址线,因此不能交换!
数据引脚可以更换,但一般将I/O0作为最低位、将I/O7作为最高位使用。
器件的片选信号,虽然存在CE1#和CE2两个信号,但它们是以AND条件选择的。也就是说,只有当CE1为低电平且CE2为高电平时,器件才处于选择状态。如果不在选择状态,则其他输入引脚的状态将全部被忽略。
OE#(Output Enable输出使能)。打开SRAM数据输出缓冲器的信号。读操作时,利用片选后的状态(CE1#=低电平;CE2=高电平)指定地址,如果OE#为低电平,则在I/O引脚上将出现存储器的内容,但必须事先将WE#设为高电平。
WE#(Write Enable写使能)。向SRAM写入的信号。在WE#上升时刻,数据被写入到存储器中。当WE#和OE#都为低电平时,WE#优先进行操作。也就是说,在OE#为低电平、保持向I/O引脚输出数据的状态中,如果将WE#设为低电平,I/O引脚将转换为输入模式。

3、SRAM的操作流程

SRAM的基本单元有3种状态:standby(电路处于空闲),reading(读)和writing(写)。SRAM的读或写模式必须分别具有"readability"(可读)与"write stability"(写稳定)。



3.1、Standby

当外界不访问该单元时,字线WL处于低电平,此时作为控制用的M5与M6两个晶体管处于断路,把基本单元与位线隔离。由M1~M4组成的两个反相器继续保持其状态,只要保持与高、低电平的连接。


3.2、Reading

假定存储的内容为1,即在Q处的电平为高。读周期之初,两根位线预充值为逻辑1,随后字线WL充高电平,使得两个访问控制晶体管M5与M6通路。第二步是保存在Q的值传递给位线BL在它预充的电位,而泻掉nBL预充的值,这是通过M1与M5的通路直接连到低电平使其值为逻辑0(即Q的高电平使得晶体管M1通路)。在位线BL一侧,晶体管M4与M6通路,把位线连接到VDD所代表的逻辑1(M4作为P沟道场效应管,由于栅极加了nQ的低电平而M4通路)。

如果存储的内容为0,相反的电路状态将会使nBL为1而BL为0。只需要nBL与BL有一个很小的电位差,读取的放大电路将会辨识出哪根位线是1哪根是0。敏感度越高,读取速度越快。

从存储单元读出“1”的过程是:

  • 预充BL和nBL位线到“1”电平,此时WL字线处于低电平;

  • 使WL字线为高电平,M5和M6导通;

  • nBL通过M5和M1(单元存“1”时,M1一直处于导通状态)迅速放电至“0”电平,M3仍然截止;

  • VDD通过M4和M6对BL充电,使BL保持在“1”电平,M1仍然导通;

  • 去掉字线WL上的高电平。

这样就完成了从存储单元读出“1”的全过程,而且是非破坏性读出。由于单元管的尺寸很小,而位线通过单元管放电的速度很慢,为了提高读出速度,只要在位线上建立起一定的电压差就可以了,而不必等到一边位线下降到低电平。通过列译码器控制的列开关,把选中的单元位线读出的微小信号差送到公共数据线,再通过公共数据线送到灵敏放大器,把微小的信号差放大为合格的高低电平,最后通过缓冲器转换成单端信号输出。


3.3、Writing

写周期之初,把要写入的状态加载到位线。如果要写入0,则设置nBL为1且BL为0。随后字线WL加载为高电平,位线的状态被载入SRAM的基本单元。这是通过位线输入驱动(的晶体管)被设计为比基本单元(的晶体管)更为强壮,使得位线状态可以覆盖基本单元交叉耦合的反相器的以前的状态!

向存储单元写入“1”的过程是:

  • 当WL字线为低电平,置BL位线为“1”电平,nBL为“0”电平;

  • 置WL字线为高电平,此时M5、M6导通;

  • 存储单元的存储节点nQ通过M5向NBL放电,达到“0”电平,M3截止;

  • BL位线通过M6,VDD通过M4,对存储节点Q充电至“1”电平,M1导通;

  • 置WL字线为低电平,M5、M6管关闭,此时存储单元的结点Q处于“1”电平状态,nQ处于“0”电平状态。

样就完成了向存储单元写入“1”的全过程。通常SRAM存储单元都做成阵列结构,多个存储单元共用一根字线,在连续进行写入操作时,如果时序上配合不当,就有可能用前次位线上的数据改写同一根字线上的其他单元中的数据。

硬件助手 将艺术融于技术,将技术融于生活。 Art in tech, tech in life.
评论
热门推荐
相关推荐
我要评论
0
1
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦