【我主要从事存储芯片测试,记录一下DRAM相关内容】
1. SDRAM
SDRAM,即同步动态随机存取存储器(Synchronous Dynamic Random Access Memory),以下是SDRAM的工作原理和特点的详细解释:
-
同步性:SDRAM的同步性意味着其时钟频率与系统的时钟频率相同,内部命令的发送与数据传输都是以这个同步时钟为基准的。这使得SDRAM能够与处理器的时钟同步工作,提高了数据传输效率。
-
动态性:SDRAM的动态性指的是其存储阵列需要不断的刷新来保证数据不丢失。SDRAM内部存储的数据是二进制数据0或1,存储这些数据的电路是由电容构成的。由于电容会随着时间慢慢放电,数据只能保持若干毫秒,因此需要定期刷新(数据读出来再写入,写操作进行充电)以保持数据。
-
随机性:SDRAM的随机性意味着数据的读取和写入可以随机指定地址,而不是必须按照严格的线性次序变化。这允许数据自由指定地址进行读写操作,提供了更大的灵活
-
工作电压:随着SDRAM技术的发展,其工作电压逐渐降低,从SDR的3.3V到DDR的2.5V,再到DDR2的1.8V,DDR3的1.5V,以及DDR4的1.2V,这有助于降低功耗并提高性能。
SDRAM的这些特性使其成为计算机和嵌入式系统中广泛使用的内存技术。随着技术的进步,SDRAM已经经历了多个演进阶段,包括SDR SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM以及最新的DDR4 SDRAM等。
2. DDR SDRAM
DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory)是在SDRAM(Synchronous Dynamic Random Access Memory)的基础上发展而来的,它通过在时钟信号的上升沿和下降沿都进行数据传输,实现了数据传输速率的翻倍。
在DDR内存技术中,数据传输速率(Data Rates)通常以MT/s(Mega-transfers per second,即每秒百万次传输)来表示。这个术语描述了在每个数据引脚上,每秒可以传输多少个数据。对于DDR内存来说,由于其在时钟信号的上升沿和下降沿都能进行数据传输,因此它的数据传输速率是时钟频率的两倍。其计算公式如下:
传输频率=工作频率*2=时钟频率*预取数n
3. DDR 工作原理
当我们要读出某一 Cell 存储的信息时,只需要给这个 Cell 的 wordline 通以高电平,那么,这一行的 Cell 都将打开,每个 Cell 的电容器电平状态都将被加持到相应的 bitline 上,我们只需打开下方的读写驱动电路,读出电平即可。注意,我们的读写电路是每列独立的,所以在我们选中某一行(wordline)后,能同时读出这一行的所有信息,这也是为什么被称为 wordline 和 bitline 的原因。
在读取存储单元(Cell)中的信息时,MOS管的开启会导致存储电容器中的电荷流向位线(bitline)。然而,由于位线本身的寄生电容远大于存储电容器,电荷会被稀释,导致位线上的电压降低。这带来了几个主要问题:
-
电压波动小,难以识别:存储电容器的信息读取时,位线上的电压变化非常小,使得原有的读写电路难以准确可靠地识别这些变化。因此,需要采取措施放大电压,以便于电路能够清晰地读取数据。====引入 Sensing Amplifier 感知放大电路。Sensing Amplifier 还将对电容器进行刷新,防止因电容缓慢漏电造成信息丢失。
-
读取操作破坏原信息:当MOS管打开进行读取操作后,存储电容器中的电压会显著降低,这意味着原有的数据信息被破坏。更糟糕的是,如果位线上积累了一定量的电荷,那么在读取标记为0的存储单元时,可能会错误地向这些电容器中充入电荷,导致数据错误。因此,在进行读写操作之前,需要对位线进行放电处理。====引入 Voltage Equalization 电压均衡电路。
-
电容器自然放电问题:即使不进行读写操作,存储电容器也会因为自然放电而逐渐失去电荷。这就需要定期刷新存储单元,以保持数据的完整性。
为了解决这些问题,可以采取以下措施:
-
电压放大:设计更敏感的放大电路,或者在读取操作中使用电压放大技术,以增强位线上的电压信号,使其更容易被电路识别。
-
位线放电:在每次读取操作前,对位线进行放电,以确保读取操作不会受到之前操作中积累的电荷的影响。
-
定期刷新:设计刷新电路,定期对存储单元中的电容器进行充电,以补偿自然放电造成的电荷损失,保持数据的稳定性。
各信号线作用如下:
-
SAN:感知放大负极,连接 GND,与 SAP 构成差分共同作用
-
SAP:感知放大正极,连接 Vcc,与 SAN 构成差分共同作用
-
EQ:均衡控制信号线,在预充电阶段把 Bitline 线对拉到参考电平
-
CSL:列选信号,在读写操作前、选中某一行后,通过 CSL 选中具体的列(打开 Bitline)
-
WE:写使能信号,在写操作时,使能该信号,可以把要写入的数据电平加持到 Bitline 线对上,完成对指定 Cell 电容器充电
4. Read Operation
读取数据的过程包含了四个阶段:Precharge(预充电)、Access(访问)、Sense(感知)和Restore(恢复)。下面是这四个阶段的详细描述,以及它们是如何协同工作来读取存储单元中的一个数据比特(例如Bit 1)的:
4.1 Precharge
-
预充电(Precharge)的目的:
-
预充电阶段的主要目的是为即将进行的读取或写入操作做准备。在这个阶段,DRAM的位线(Bitline,BL)和其互补位线(/Bitline)被充电到一个已知的参考电压Vref(通常是Vcc/2,即供电电压Vcc的一半)。
-
-
电压均衡电路的作用:
-
电压均衡电路通过使能EQ信号来激活Te1、Te2、Te3三个晶体管,使得Bitline和/Bitline连通,并都连接到参考电压Vref上。这样做的目的是确保在进行下一次读取或写入操作之前,所有的位线对都被拉到相同的电平,即Vref。
-
-
电荷释放和电平拉至新零点:
-
在预充电操作中,Bitline和/Bitline上存储的电荷被释放,并将电平拉至新的零点(Vref)。这样做是为了确保位线对上的电压差为零,为接下来的操作提供一个已知的起始状态。
-
-
为什么需要电压均衡:
-
由于Bitline和/Bitline上的电平可能保留了上一次读写操作时的状态,如果不进行预充电,这些电平可能与本次要读取的存储电容的状态相反。如果直接打开Ta开关(访问晶体管),由于电平相反,可能会给电容器充上相反的电压,从而冲刷掉原来的存储信息。这会导致数据丢失或错误。
-
-
预充电后的状态:
-
预充电完成后,三个晶体管关断,Bitline和/Bitline保持在Vref电平,它们之间没有电压差。这种状态为接下来的访问(Access)、感知(Sense)和恢复(Restore)阶段提供了一个稳定的起始点。
-
总结来说,预充电过程是DRAM操作中非常关键的一步,它确保了位线对处于一个已知和稳定的电平状态,为数据的准确读取和写入提供了基础。通过电压均衡,可以避免由于电平差异导致的信息丢失,确保数据的完整性和准确性。
4.2 Access
-
Wordline信号和Ta晶体管:
-
通过控制Wordline(WL)信号,将访问晶体管(Ta)导通。Wordline是连接到存储单元的控制门的信号线,当Wordline被激活时,它使得存储单元的访问晶体管(Ta)导通。
-
-
电荷转移:
-
假设存储单元中的信息为1,这意味着存储电容器(Cell电容)存储有正电荷。当Ta晶体管导通后,存储电容器中的正电荷开始流向Bitline。
-
-
寄生电容的影响:
-
Bitline具有较大的寄生电容,这比存储单元中的电容器(Cell电容)要大得多。由于寄生电容的存在,Bitline上的电压变化不会很大,即使有电荷从存储电容器流入。
-
-
Bitline电平的变化:
-
由于Bitline的寄生电容较大,存储电容器中的电荷流入Bitline后,Bitline的电平只会略微升高,从Vref升高到Vref+。这里的Vref+表示比Vref稍高的电压水平,但具体升高多少取决于寄生电容的大小和存储电容器中电荷的量。
-
4.3 Sense
-
Access阶段的电压变化:
-
在访问(Access)阶段,Bitline(BL)的电压被拉升到Vref+,而互补位线(/Bitline)的电平稍低。这种微小的电压差对于NMOS和PMOS晶体管的控制是至关重要的。
-
-
NMOS和PMOS晶体管的作用:
-
NMOS管Tn2和PMOS管Tp1分别连接到Bitline和/Bitline。由于Bitline和/Bitline之间的微小电压差,Tn2和Tp1的栅极和源极之间形成了足够的电压差,使得这两个晶体管形成微小沟道,允许电荷流通。
-
-
Sense-Amplifier控制信号:
-
SAN(Sense-Amplifier N-Fet Control)被设定为0V,而SAP(Sense-Amplifier P-Fet Control)被设定为Vcc。这两个信号分别控制NMOS和PMOS晶体管的导通状态。
-
-
Tn2和Tp1的导通过程:
-
SAN上的负电荷涌入/Bitline,增加了Tn2栅源之间的正压差,使得Tn2完全导通,/Bitline的电压被拉到0V。
-
同理,SAP上的正电荷通过Tp1的小沟道涌入Bitline,提高了Bitline的电平,使得Tp1完全导通,Bitline的电压被拉到Vcc。
-
-
Tp2和Tn1的状态:
-
在这个过程中,另外两个晶体管Tp2和Tn1一直处于截止状态,它们不参与当前的感知放大过程。
-
-
差分感知放大电路的工作机制:
-
差分感知放大电路并没有直接放大存储电容中的电荷,而是利用MOS管的开关特性,通过SAN和SAP的强压作用,将Bitline和/Bitline的电平拉升到与存储电容极性相同的大电平,使得Bitline和/Bitline的电平都进入稳定状态。
-
这个过程使得Bitline和/Bitline之间的电压差正确地呈现了所读电容器中所存储的信息,即如果存储的是1,则Bitline被拉高,/Bitline被拉低;如果存储的是0,则相反。
-
通过这种机制,DRAM能够准确地读取存储在存储单元中的信息,并将这些信息转换为可以被电路识别的逻辑电平。这种差分放大机制提高了读取过程的灵敏度和可靠性,确保了数据的正确性和稳定性。
4.4 Restore
-
Sense阶段后的状态:
-
在感知(Sense)阶段完成后,Bitline(BL)被拉升到稳定的逻辑1电平,即供电电压Vcc。此时,互补位线(/Bitline)则处于逻辑0电平,即0V。
-
-
Bitline对电容器充电:
-
在Sense阶段之后,Bitline会对存储单元中的电容器进行反向充电。这是因为在Sense阶段,存储电容器的电荷可能部分或全部转移到了Bitline上,导致存储电容器的电荷减少。
-
-
电容器电荷恢复:
-
经过特定的时间后,存储电容器中的电荷量会恢复到读取操作前的状态。这个时间需要足够长,以确保存储电容器能够重新获得足够的电荷,以保持数据的完整性。
-
-
CSL信号和Tc1、Tc2晶体管:
-
CSL(Column Select Line)信号被用来控制Tc1和Tc2这两个晶体管,使它们进入导通状态。这两个晶体管通常用于连接Bitline和Read Latch电路。
-
-
信息读取和锁存:
-
一旦Tc1和Tc2导通,Read Latch电路就可以从容地从Bitline差分线上读取信息,并将其锁存起来。这个锁存的动作确保了即使Bitline上的电平发生变化,读取到的数据也能被保留下来。
-
这个过程确保了DRAM在读取数据时,不仅能够准确地感知存储单元中的数据,还能够在读取后恢复存储单元的电荷状态,以保持数据的完整性。同时,通过Read Latch电路,读取到的数据可以被安全地传递和处理。
5. Write Operation
写操作的前期流程与读操作相似,包括预充电(Precharge)、访问(Access)、感知(Sense)和恢复(Restore)阶段。这些阶段确保了位线(Bitline)和互补位线(/Bitline)被正确地设置,并且访问晶体管(Ta)被激活,使得存储单元的电容器与位线连接。写操作还会进行 Write Recovery 操作。
Write Recovery阶段:
-
-
在恢复(Restore)阶段之后,写操作进入写恢复(Write Recovery)阶段。在这个阶段,通过控制写使能(WE, Write Enable)信号,使得写晶体管(Tw1和Tw2)导通。
-
如果需要写入逻辑1,那么在Write Recovery阶段,Bitline会被拉到逻辑1电平(Vcc),而/Bitline会被拉到逻辑0电平(0V)。这样,存储电容器就会充电,从而写入逻辑1。
-
如果需要写入逻辑0,那么在Write Recovery阶段,Bitline会被拉到逻辑0电平(0V),而/Bitline会被拉到逻辑0电平(Vcc)。这样,存储电容器就会放电,当存储电容器放电完成后,可以通过控制Wordline信号,使其MOS管关断,从而完成写入0的操作。
-
写操作的关键在于精确控制位线的电平,以及确保存储电容器能够正确地充电或放电,以存储所需的数据。这个过程需要精确的时序控制和对存储电容器电平的准确监测。