SRAM小科普

四散的尘埃 2024-05-12 22:12 1次浏览 0 条评论 taohigo.com

今天給大傢介紹一下SRAM(Static Random Access Memory)靜態隨機存儲器。SRAM是一種隨機存儲器,隻要保持通電,裡面的數據就可以一直保存。SRAM的版圖具有高度的規律性,同樣他的設計規則也是整個制程中最嚴格的,所以SRAM的良率以及SRAM的尺寸大小反映瞭一個Foundry的制程能力。所以在Foundry中也通過SRAM的良率以及性能的變化來反饋制程的問題所在。

今天主要給大傢介紹一下SRAM的基本電路結構以及基本的讀寫過程。首先給大傢介紹一下SRAM的基本結構。

最小的SRAM單元我們稱為一個bit,他隻能存儲一個信號0或者1,這樣的一個bit由6個晶體管構成,分為2個PMOS(PU),4個NMOS(PD,PG),這裡PU和PD形成一個反相器,兩個反相器形成互鎖結構,通過這樣的特性來實現數據的保存。PU(pull up)也稱為load transistor,他的功能是實現節點的高電位也就是1的狀態,PD(pull down)也稱為drive transistor,他的功能是實現節點的低電位也就是0的狀態,這樣一個bit中的兩個節點(SNL和SNR)高低電位互換,就能實現0和1兩種狀態的存儲,PG(pass gate)也稱為access transistor,他的功能是實現bitline 的接入,以實現讀寫功能。

下面給大傢介紹一下SRAM的三種操作:讀,寫,保持。

首先給大傢講一下SRAM的讀取操作,SRAM讀取信號是依靠兩條bitline(BL和BLB)的電壓信號差來讀取信號的。假設bit存儲數據為時對應的SNL=0,SNR=1,存儲數據為1時,對應SNL=1,SNR=0。假設目前bit裡面存儲的數據為0,SNL=0,SNR=1. 在讀取的時候對BL,BLB進行預充電,對應的測試條件如下:BL=BLB=1,WL=1。在這樣的條件下,如下圖所示 ,SNL=0 處於低電位,SNR=1處於高電位,左側的PU關斷,PD開啟,右側的PU開啟,PD關斷。右側色BLB會保持電壓不變,但是左側的PD開啟,導致電流由BL流向GND,會導致BL的電位下降。初始時BL=BLB=1,BL電位下降之後,BL和BLB會出現電壓差,這個信號會通過外圍放大電路輸出,自此SRAM的信號讀取完成。在這樣的條件下,為瞭保證信號能夠準確讀取,需要使PD的電流大於PG的電流,以此來保證BL與BLB的電位差足夠大,能夠準確讀取。

下面介紹一下SRAM的寫操作,假設目前bit裡面存儲的數據為0,SNL=0,SNR=1. 寫操作就是將SRAM中SNL和SNR的電位反轉,以此達到寫入的目的。在寫入的時候對BL,BLB進行預充電,對應的測試條件如下:BL= 1,BLB=0,WL=1。此時左側的狀態與讀取時相同,而右側由於BLB=0,SNR的電位會逐漸下降,SNR的電位下降又會導致左側PU的開啟,PD的關斷,這樣SNL電位會逐步抬升到1,右側的PD打開,PU關斷,數據翻轉完成,為瞭保證寫入的順利,SNR的電位必須能夠下降,所以PU的電流必須小於PG,這樣PU的高電位就不足以拉升SNR的電位,SNR的電位由BLB的電位決定。

最後是保持的操作,BL=BLB=1,WL=0,在這樣的條件下,PG關斷,BL,BLB不能對bit中保持的數據進行修改。

上面就是SRAM的讀寫和保持操作瞭,下面給大傢介紹一下蝴蝶圖butterfly curve。Butterfly curve是能體現SRAM穩定性的重要指標,準確的來說是butterfly curve中內接最大的正方形的邊長,我們稱為Static noise margin(SNM),這個值越大,代表SRAM越穩定,存儲的信號越不容易被反轉。由於SRAM是一個對稱的結構,butterfly curve其實也是中心對稱的兩條曲線,因為SNL和SNR互為輸入輸出節點。下面我們把SRAM拆成一半來看一下,應該可以更詳細的瞭解。

把SRAM拆成一半,就是一個反相器帶一個PG,如下面這張圖,那麼本質上他的輸入輸出曲線就和反相器一樣,輸入為1時,輸出為0,輸入為0時,輸出為1.由於PG的存在,輸出信號會受到左側PG的影響,有所變化。這裡先給大傢介紹幾個概念,我們定義PU與PD的電流比(Ipu/Ipd)為α ratio,PD與PG的電流比(Ipd/Ipg)為β ratio,PG與PU的電流比(Ipg/Ipu)為γ ratio。當input=0時,output=1,隨著input逐漸增大,output的電位會逐漸下降,但是input的電位會受到左側PG的影響,我們在讀寫的時候PG是打開的,BL是預充電的,所以PG的電流會影響到input的電位,當PG的電流越大時,input的電位抬升越快,那麼output的電位轉變就越快,即曲線中output由1向0轉變的曲線弧度越陡,這就解釋瞭γ值變化對曲線的影響。下面我們來看PU和PD的相互影響,PU和PD組成一個反相器,在這裡PU的主要目的是抬升output的電位,而PD則是降低output的電位,在input由0到1增大時,PU會逐漸關斷,PD會逐漸開啟,實現output由1向0的轉變。所以PD越容易開啟,就說明output越容易轉變,所以為瞭提高SRAM的穩定性,PD的Vt要抬高,讓他不容易轉變。所以相對來說α越大,SRAM越穩定。當input接近1時,output接近0,但是由於右半側PG的影響,output隻能接近,但不可能達到0,為瞭讓output接近0,PD的電流需要大於PG的電流,盡量使output的電位接近0, 這就是β ratio。

解釋完瞭上面這些,我們再來看看butterfly curve,下面這張圖裡面標的A,B兩個位置,就很好解釋瞭,A點位置受到PD PG的電流大小影響,PD的電流越大,β ratio越大,A就越向坐標軸靠近,SNM就越大,而B的位置受到PU,PD的VT影響,PD的VT越大,就意味著PD的電流相對變小,α值越大,SNM越大。這裡的電流大小是相對的,並不是說PD的電流要比PU小。相反,PD的電流一定要比PU的大,因為在寫的過程中,PG的電流要大於PU的電流,因為之前講過,PU的電流必須小於PG,這樣PU的高電位就不足以拉升SNR的電位,SNR的電位由BL的電位決定。而在讀的過程中,PD要電流要大於PG才能把節點的電位降下來,所以PD的電流一定是要大於PU的。

最後我們來看一下SRAM的margin map,從下面這張圖我們就可以看到不同的MOS管閾值電壓的變化,對SRAM性能的影響。當NMOS和PMOS的閾值電壓都比較低時,就是FF,即Fast NMOS Fast PMOS的狀態,閾值電壓降低,代表電流增大,晶體管讀取速度會變快,但是閾值電壓降低就代表關斷困難,即在關斷條件下,漏電流比較大。當NMOS和PMOS的閾值電壓都較高的情況下,晶體管讀取速度降低,兩條BL的電位無法在一定的時鐘信號內達到足夠的差值,無法讀取,就會產生信號讀取失敗。當NMOS閾值電壓較低,PMOS閾值電壓較高的時候,即PD的閾值電壓低,PU閾值電壓高,那麼input信號稍微有一點降低,PD就會打開,降低output的電位,信號就會反轉。當NMOS閾值電壓高,PMOS閾值電壓低的時候,PG就會打開不足,無法將BL的信號通過PG傳輸到節點,調解節點電位,即寫入會有問題。所以SRAM中6個晶體管的閾值電壓都要在一定范圍內,才能保證SRAM的正常工作。

好啦,以上就是SRAM的一些基礎小科普,今天就給大傢介紹到這裡吧。