本發(fā)明屬于電子器件技術領域,更進一步涉及半導體存儲技術領域中的一種NAND(Not AND,NAND)閃存上基于索引調制的交叉編寫方法。本發(fā)明可以應用于實現(xiàn)NAND閃存上的數(shù)據(jù)編寫,同時通過奇字符線編寫優(yōu)先級較低的比特信息,偶字符線編寫優(yōu)先級較高的比特信息,實現(xiàn)閃存單元中存儲數(shù)據(jù)的不等錯誤保護。
背景技術:
在現(xiàn)代半導體信息處理技術中,NAND閃存作為一種重要的非易失性存儲技術已經(jīng)越來越多地被人們關注。由于設備集成度越來越高以及多層單元技術的使用等原因,由閃存單元間寄生耦合電容效應產生的單元間干擾也愈加嚴重。因此提高NAND閃存設備可靠性的數(shù)據(jù)編寫方法也成為了一項重要的研究內容。
現(xiàn)有技術提供了一些用于提高NAND閃存設備可靠性的數(shù)據(jù)編寫方法。這些方法大多通過調整NAND閃存單元的編寫順序,減少單元間干擾對閃存數(shù)據(jù)編寫的影響,從而提高NAND閃存設備的可靠性。但是相較于現(xiàn)在人們的需求,這些方法存在明顯的不足,已有的NAND閃存編寫方法無法在提高誤碼性能的前提下,實現(xiàn)不等錯保護。
Ken Takeuchi等人在文章“A 56-nm CMOS 99-mm2 8-Gb multi-level NAND flash memory with 10-MB/s program throughput”(IEEE Solid-State Circuits Society,2007)中公開了一種奇偶比特線NAND閃存編寫方法。該方法通過分別針對相互交錯的奇比特線與偶比特線交替接入的方式進行編寫操作。每對奇偶比特線可以共用一套外圍電路,這一特點使得使用奇偶比特線方法擁有制造成本更低的優(yōu)勢。另外,該方法由于奇偶比特線上閃存單元受到的單元間干擾的程度不同,因此還能夠對存儲數(shù)據(jù)實現(xiàn)不等錯誤保護。該方法存在的不足之處是,由于奇偶比特線上閃存單元是交叉進行編寫的,因此會出現(xiàn)較大的單元間干擾,整體的誤碼性能較差。
Raul-Adrian Cernea等人在其發(fā)表的論文“A 34MB/s MLC write throughput 16Gb NAND with all bit line architecture on 56nm technology”(IEEE J.Solid-State Circuits,Jan 2009)中公開了一種全比特線NAND閃存編寫方法。在該方法中,所有的比特線被同時接入進行編寫操作。這樣的設計方式相比于奇偶比特線方法,雖然需要更多的外圍電路,提高了制造成本,但對單元間干擾有更強的免疫能力使得整體的誤碼性能較好。但是,該方法仍然存在的不足之處是,由于奇偶比特線上閃存單元受到的單元間干擾的程度相同,因此無法對存儲數(shù)據(jù)實現(xiàn)不等錯誤保護。
LSI公司在其申請的專利“用于閃存存儲器中寫入端單元間干擾減輕的方法和裝置”(專利申請?zhí)?00980132503.1,公開號102132348B)中提出了一種減輕NAND閃存數(shù)據(jù)編寫過程中產生的單元間干擾的方法。該方法主要是通過獲得要寫入到所述閃存存儲器中的至少一個目標單元的編程數(shù)據(jù),獲得用于晚于所述目標單元編程的至少一個干擾單元的編程數(shù)據(jù)的一個或更多個位;以及通過產生經(jīng)預補償?shù)木幊讨?,來預補償對于所述目標單元的單元間干擾。所述干擾單元包括與所述目標單元相鄰的一個或更多個單元,諸如在與所述目標單元相同字線中的一個或更多個相鄰的單元和/或在所述單元上或下的相鄰字線中的一個或更多個單元。該方法存在的不足是,由于該方法是要在引入干擾前預先減去一個電壓值,因此該方法不能應用于處于擦除狀態(tài)的單元,對處于擦除狀態(tài)的單元受到的干擾無能為力,誤碼率較高。
技術實現(xiàn)要素:
本發(fā)明的目的在于針對上述現(xiàn)有技術的優(yōu)點及不足,提出一種NAND閃存上基于索引調制的交叉編寫方法,在保證較好整體誤碼性能的同時,具有對存儲數(shù)據(jù)進行不等錯誤保護的能力。
為實現(xiàn)上述目的,本發(fā)明具體步驟包括如下:
(1)對NAND閃存單元進行擦除操作:
通過NAND閃存控制器移除NAND閃存單元上的電荷,得到已擦除的NAND閃存單元。
(2)將待寫入的數(shù)據(jù)寫入已擦除的NAND閃存單元:
(2a)對已擦除的奇字符線上的NAND閃存單元,通過階躍脈沖編寫方法,逐行進行編寫操作,得到存儲到NAND閃存單元中的數(shù)據(jù)。
階躍脈沖編寫方法具體步驟如下:
第1步,將已擦除的奇字符線上的NAND閃存單元擬寫入的數(shù)據(jù)讀取到NAND閃存控制器,得到該NAND閃存單元的門限電壓值。
第2步,在奇字符線上加一個階躍電壓,對已擦除的奇字符線上的NAND閃存單元循環(huán)進行電荷注入,并將該NAND閃存單元的電壓值與門限電壓值相比較,當該NAND閃存單元的電壓值達到門限電壓值后,結束編寫操作。
(2b)在對已擦除的奇字符線上的NAND閃存單元編寫完成后,對已擦除的偶字符線上的NAND閃存單元,通過索引調制編寫方法,逐行進行編寫操作,得到存儲到NAND閃存單元中的數(shù)據(jù)。
索引調制編寫方法具體步驟如下:
第1步,將擬寫入已擦除的偶字符線上的NAND閃存單元的比特序列u劃分為比特序列u1和比特序列u2。
第2步,按照下式,計算比特序列u1的長度:
其中,K1表示比特序列u1的長度,M表示已擦除的偶字符線上的NAND閃存單元的個數(shù),N表示擬寫入數(shù)據(jù)的已擦除的偶字符線上的NAND閃存單元的個數(shù),N=M/2,C(M,N)表示從M個閃存單元中選N個閃存單元的組合的個數(shù),表示取最大整數(shù)操作,log2表示以2為底的對數(shù)操作。
第3步,按照下式,計算比特序列u2的長度:
K2=Nlog2L
其中,K2表示比特序列u2的長度,N表示擬寫入數(shù)據(jù)的已擦除的偶字符線上的NAND閃存單元的個數(shù),L表示激活的已擦除的偶字符線的NAND閃存單元上采用的電壓編寫層數(shù),log2表示以2為底的對數(shù)操作。
第4步,NAND閃存控制器讀取比特序列u1的數(shù)據(jù),獲得已擦除的偶字符線上擬寫入數(shù)據(jù)的NAND閃存單元的位置。
第5步,NAND閃存控制器讀取比特序列u2的數(shù)據(jù),獲得擬寫入數(shù)據(jù)的已擦除的偶字符線的NAND閃存單元門限電壓值,再通過階躍脈沖編寫方法完成編寫操作。
(3)讀取NAND閃存單元中存儲的數(shù)據(jù):
(3a)通過NAND閃存控制器,讀取存儲數(shù)據(jù)的NAND閃存單元上的電壓值。
(3b)將讀取的存儲數(shù)據(jù)的NAND閃存單元上的電壓值與寫入數(shù)據(jù)時的門限電壓值進行比較,得到與讀取的存儲數(shù)據(jù)的NAND閃存單元上的電壓值最接近的寫入數(shù)據(jù)時的門限電壓值。
(3c)NAND閃存控制器讀取得到的寫入數(shù)據(jù)時的門限電壓值,獲得NAND閃存單元中存儲的數(shù)據(jù)。
本發(fā)明與現(xiàn)有技術相比具有以下優(yōu)點:
第一,由于本發(fā)明在對已擦除的奇字符線上的NAND閃存單元編寫完成后,對已擦除的偶字符線上的NAND閃存單元,通過索引調制編寫方法,逐行進行編寫操作,此時,偶字符線上的NAND閃存單元受到的單元間干擾可忽略不計??朔爽F(xiàn)有技術無法對存儲數(shù)據(jù)實現(xiàn)不等錯誤保護的不足,使得本發(fā)明具有可實現(xiàn)不等錯誤保護功能的優(yōu)點。
第二,由于本發(fā)明在NAND閃存控制器讀取比特序列u1的數(shù)據(jù),獲得已擦除的偶字符線上擬寫入數(shù)據(jù)的NAND閃存單元的位置。這樣就使得實際寫入偶字符線上的NAND閃存單元的數(shù)據(jù)變少,對奇字符線上的NAND閃存單元造成的單元間干擾減少。克服了現(xiàn)有技術在編寫過程中會出現(xiàn)較大的單元間干擾和誤碼率較高的不足,使得本發(fā)明具有抗單元間干擾能力強、平均誤碼性能好的優(yōu)點。
附圖說明
圖1為本發(fā)明的流程圖;
圖2為本發(fā)明的奇字符線上閃存單元受到單元間干擾的示意圖;
圖3為本發(fā)明與奇偶比特線NAND閃存編寫方法的誤碼率性能對比圖;
圖4為本發(fā)明與奇偶比特線NAND閃存編寫方法、全比特線NAND閃存編寫方法的平均誤碼率性能對比圖。
具體實施方式
下面結合附圖對本發(fā)明做進一步的描述。
參照圖1,對本發(fā)明的具體步驟如下。
步驟1,對NAND閃存單元進行擦除操作。
通過NAND閃存控制器移除NAND閃存單元上的電荷,得到已擦除的NAND閃存單元。每一個NAND閃存單元被編寫之前必須先進行擦除操作,擦除的意義就是從存儲單元的浮動柵里面移除所有的電荷,使NAND閃存單元晶體管的電壓達到最低值。NAND閃存的擦除操作是以塊(每個塊包含許多閃存單元)為單位進行的。NAND閃存單元的電壓值在擦除操作后趨于均值大于零的高斯分布。
步驟2,將待寫入的數(shù)據(jù)寫入已擦除的NAND閃存單元。
對已擦除的奇字符線上的NAND閃存單元,通過階躍脈沖編寫方法,逐行進行編寫操作,得到存儲到NAND閃存單元中的數(shù)據(jù)。
階躍脈沖編寫方法具體步驟如下:
第1步,將已擦除的奇字符線上的NAND閃存單元擬寫入的數(shù)據(jù)讀取到NAND閃存控制器,得到該NAND閃存單元的門限電壓值。
第2步,在奇字符線上加一個階躍電壓,對已擦除的奇字符線上的NAND閃存單元循環(huán)進行電荷注入,并將該NAND閃存單元的電壓值與門限電壓值相比較,當該NAND閃存單元的電壓值達到門限電壓值后,結束編寫操作。
在對已擦除的奇字符線上的NAND閃存單元編寫完成后,對已擦除的偶字符線上的NAND閃存單元,通過索引調制編寫方法,逐行進行編寫操作,得到存儲到NAND閃存單元中的數(shù)據(jù)。
索引調制編寫方法具體步驟如下:
第1步,將擬寫入已擦除的偶字符線上的NAND閃存單元的比特序列u劃分為比特序列u1和比特序列u2。
第2步,按照下式,計算比特序列u1的長度:
其中,K1表示比特序列u1的長度,M表示已擦除的偶字符線上的NAND閃存單元的個數(shù),N表示擬寫入數(shù)據(jù)的已擦除的偶字符線上的NAND閃存單元的個數(shù),N=M/2,C(M,N)表示從M個閃存單元中選N個閃存單元的組合的個數(shù),表示取最大整數(shù)操作,log2表示以2為底的對數(shù)操作。
第3步,按照下式,計算比特序列u2的長度:
K2=Nlog2L
其中,K2表示比特序列u2的長度,N表示擬寫入數(shù)據(jù)的已擦除的偶字符線上的NAND閃存單元的個數(shù),L表示激活的已擦除的偶字符線的NAND閃存單元上采用的電壓編寫層數(shù),log2表示以2為底的對數(shù)操作。
當存儲信息需要進行不等錯誤保護時,奇字符線編寫優(yōu)先級較低的比特信息,偶字符線編寫優(yōu)先級較高的比特信息。同時,偶字符線上的NAND閃存單元相比于奇字符線上的NAND閃存單元通常采用更高階的單元存儲方式以提高存儲密度。
第4步,NAND閃存控制器讀取比特序列u1的數(shù)據(jù),獲得已擦除的偶字符線上擬寫入數(shù)據(jù)的NAND閃存單元的位置。
第5步,NAND閃存控制器讀取比特序列u2的數(shù)據(jù),獲得擬寫入數(shù)據(jù)的已擦除的偶字符線的NAND閃存單元門限電壓值,再通過階躍脈沖編寫方法完成編寫操作。
步驟3,讀取NAND閃存單元中存儲的數(shù)據(jù):
通過NAND閃存控制器,讀取存儲數(shù)據(jù)的NAND閃存單元上的電壓值。
將讀取的存儲數(shù)據(jù)的NAND閃存單元上的電壓值與寫入數(shù)據(jù)時的門限電壓值進行比較,得到與讀取的存儲數(shù)據(jù)的NAND閃存單元上的電壓值最接近的寫入數(shù)據(jù)時的門限電壓值。
NAND閃存控制器讀取得到的寫入數(shù)據(jù)時的門限電壓值,獲得NAND閃存單元中存儲的數(shù)據(jù)。
圖2直觀地描述了編寫操作完畢時,處于奇數(shù)字符線的NAND閃存單元受到的單元間干擾。在圖2中,可以直觀的看出,處于奇字符線的NAND閃存單元受到來自上下兩側偶數(shù)字符線上的6個臨近NAND閃存單元的單元間干擾。進一步由于偶字符線采用索引調制,所以奇字符線受到的單元間干擾的數(shù)目小于6個。
對本發(fā)明的效果可通過以下仿真做進一步的描述。
1.仿真實驗的條件:
本發(fā)明在C++平臺上仿真得到仿真數(shù)據(jù),在Matlab平臺上,得到仿真性能曲線圖。
本發(fā)明對NAND閃存上基于索引調制的交叉編寫方法、奇偶比特線NAND閃存編寫方法以及全比特線NAND閃存編寫方法在不同的耦合強度系數(shù)下進行對比仿真。
2.仿真實驗內容:
仿真實驗1,NAND閃存上基于索引調制的交叉編寫方法中,在受到單元間干擾嚴重的奇字符線上,在每個NAND閃存單元中只寫入1個比特的數(shù)據(jù),此時每個奇字符線上的NAND閃存單元都相當于一個單層NAND閃存單元。而在單元間干擾可以忽略不計的偶字符線上,每M=5個NAND閃存單元一組,從中激活N=3個NAND閃存單元,給每個激活的NAND閃存單元采用16層的多層次存儲。此時NAND閃存總體的平均數(shù)據(jù)存儲量為每單元2個比特。同時奇偶比特線NAND閃存編寫方法中每單元寫入2個比特的數(shù)據(jù)。對比兩種編寫方法的誤碼性能,結果如圖3所示,圖3中橫坐標表示耦合強度系數(shù),縱坐標BER表示誤比特率。
圖3中以菱形標示的實線表示使用NAND閃存上基于索引調制的交叉編寫方法時,處于奇數(shù)字符線的NAND閃存單元的誤碼率性能仿真曲線。
圖3中以五角星形標示的實線表示使用NAND閃存上基于索引調制的交叉編寫方法時,處于偶數(shù)字符線的NAND閃存單元的誤碼率性能仿真曲線。
圖3中以三角形標示的實線表示使用奇偶比特線NAND閃存編寫方法時,處于偶數(shù)比特線的NAND閃存單元的誤碼率性能仿真曲線。
圖3中以圓形標示的實線表示使用奇偶比特線NAND閃存編寫方法時,處于奇數(shù)比特線的NAND閃存單元的誤碼率性能仿真曲線;
由圖3可以看出,在使用NAND閃存上基于索引調制的交叉編寫方法的情況下,處于奇數(shù)字符線的NAND閃存單元的可靠性隨著單元間干擾的不斷增大而逐漸超過使用奇偶比特線NAND閃存編寫方法中的奇比特線NAND閃存單元的性能。而處于偶數(shù)字符線的NAND閃存單元雖然每單元存儲4個比特的數(shù)據(jù),但由于單元間干擾可以忽略不計,所以仍然可以保持良好的誤碼率特性,其誤碼率性能始終優(yōu)于奇偶比特線NAND閃存編寫方法。
仿真實驗2,為了更全面的了解NAND閃存基于索引調制的交叉編寫方法的誤碼性能,下面對NAND閃存單元的平均誤碼特性進行仿真,并將結果與奇偶比特線NAND閃存編寫方法以及全比特線NAND閃存編寫方法進行比較。結果如圖4所示,圖4中橫坐標表示耦合強度系數(shù),縱坐標BER表示誤比特率。
圖4中以圓形標示的實線表示使用奇偶比特線NAND閃存編寫方法時,NAND閃存單元的平均誤碼率性能仿真曲線。
圖4中以三角形標示的實線表示使用NAND閃存上基于索引調制的交叉編寫方法時,NAND閃存單元的平均誤碼率性能仿真曲線。
圖4中以菱形標示的實線表示使用全比特線NAND閃存編寫方法時,NAND閃存單元的平均誤碼率性能仿真曲線。
由圖4可以看出,應用本發(fā)明提出的NAND閃存上基于索引調制的交叉編寫方法的NAND閃存單元的整體可靠性是優(yōu)于使用奇偶比特線NAND閃存編寫方法的。并且隨著耦合強度系數(shù)逐漸增大,使用NAND閃存上基于索引調制的交叉編寫方法的NAND閃存單元平均誤碼率特性也逐漸超過了使用全比特線NAND閃存編寫方法的情況。