控制器及其操作方法與流程
控制器及其操作方法
1.相關申請的交叉引用
2.本技術要求于2020年11月25日提交的、申請號為10-2020-0159916的韓國專利申請的優先權,該韓國專利申請通過引用整體并入本文。
技術領域
3.實施例涉及一種用于控制存儲器裝置的控制器及其操作方法。
背景技術:
4.通常,半導體存儲器裝置被分類為諸如動態隨機存取存儲器(dram)和靜態ram(sram)的易失性存儲器裝置,以及諸如只讀存儲器(rom)、掩膜rom(mrom)、可編程rom(prom)、可擦除prom(eprom)、電eprom(eeprom)、鐵電ram(fram)、相變ram(pram)、磁性ram(mram)、電阻式ram(rram)和閃速存儲器的非易失性存儲器裝置。
5.易失性存儲器裝置在電力供應中斷時丟失其存儲的數據,而非易失性存儲器裝置即使在電力供應中斷時也仍保留其存儲的數據。非易失性閃速存儲器裝置由于其編程速度高、功耗低和數據存儲容量大而被廣泛用作計算機系統中的存儲介質。
6.在非易失性存儲器裝置中,尤其是在閃速存儲器裝置中,每個存儲器單元的數據狀態取決于存儲器單元可以編程的位數。每個單元存儲1位數據的存儲器單元被稱為單個位單元或單層單元(slc)。每個單元存儲多位數據(即,2位或更多位數據)的存儲器單元被稱為多個位單元、多層單元(mlc)或多狀態單元。mlc的優點在于高集成度。然而,隨著每個存儲器單元中編程的位數增加,可靠性降低并且讀取失敗率增加。
7.例如,當在存儲器單元中編程k個位時,存儲器單元中形成2k個閾值電壓中的一個。由于存儲器單元的電特性之間的微小差異,針對相同數據編程的存儲器單元的閾值電壓形成閾值電壓分布。閾值電壓分布對應于2k個數據值,2k個數據值分別對應于k位信息。
8.然而,可用于閾值電壓分布的電壓窗口是有限的。因此,隨著值k的增加,閾值電壓分布之間的距離減小并且相鄰的閾值電壓分布可能重疊。由于相鄰的閾值電壓分布重疊,讀取數據可能包括錯誤位。
9.圖1示意性地示出了三層單元(tlc)非易失性存儲器裝置的編程狀態和擦除狀態的閾值電壓分布。
10.圖2示意性地示出了由于3位mlc非易失性存儲器裝置的特性劣化導致的編程狀態和擦除狀態的閾值電壓分布。
11.在mlc非易失性存儲器裝置中,例如,能夠在單個存儲器單元中存儲k位數據的tlc閃速存儲存器裝置中,存儲器單元可以具有2k個閾值電壓分布中的一個。例如,3位mlc具有8個閾值電壓分布中的一個。
12.由于存儲器單元之間的特性差異,針對相同數據編程的存儲器單元的閾值電壓形成閾值電壓分布。在tlc非易失性存儲器裝置中,如圖1所示,形成了8個閾值電壓分布p1至p8。例如,第一閾值電壓分布p1可以指示擦除狀態。圖1示出了閾值電壓分布不重疊并且閾
值電壓分布之間具有足夠的讀取電壓余量(margin)的理想情況《ideal》。
13.參照圖2的閃速存儲器示例,存儲器單元可能發生電荷損失,其中在浮柵處或者隧道氧化膜處被擷取的電子隨時間放電。當隧道氧化膜由于迭代的編程操作和擦除操作而劣化時,這種電荷損失可能加速。電荷損失導致存儲器單元的閾值電壓降低。在圖2所示的示例中,閾值電壓分布可能由于電荷損失而向左偏移。
14.進一步地,編程干擾、擦除干擾和/或后臺模式依賴性(back pattern dependency)可能導致閾值電壓的增加。隨著存儲器單元的特性惡化,相鄰的閾值電壓分布可能重疊,如圖2所示。
15.因此所需要的是一種用于精確讀取半導體存儲器裝置的存儲器單元中存儲的數據的方法。
技術實現要素:
16.本公開的各個實施例涉及一種控制器及其操作方法,控制器可以通過反映存儲器單元分布的偏斜度(skewness)信息來確定用于存儲器單元的讀取操作的讀取電平,從而降低發生讀取錯誤的可能性。
17.而且,本公開的各個實施例涉及一種能夠準確且快速地讀取存儲器單元中存儲的數據的控制器及其操作方法。
18.根據本公開的實施例,一種用于控制包括存儲器單元的存儲器裝置的控制器,該控制器包括:存儲器,適用于存儲偏移電平信息,該偏移電平信息基于根據存儲器單元的特性和存儲器單元的高斯建模的樣本讀取電平確定;以及處理器,適用于基于高斯建模和從存儲器單元讀取的數據生成估計讀取電平,并且施加補償讀取電壓來控制存儲器裝置以執行存儲器單元的讀取操作,其中補償讀取電壓通過將偏移電平信息應用于估計讀取電平來生成。
19.樣本讀取電平是存儲器裝置能夠施加到存儲器單元的多個讀取電平之中的、具有相同的存儲器單元特性的樣本存儲器裝置中的讀取數據中的錯誤位的數量最小化的讀取電平。
20.處理器可以通過平均電平法來生成估計讀取電平,平均電平法包括:基于讀取數據,計算與閾值電壓區段相對應的區段單元數量;基于區段單元數量和設定標準差,確定各個閾值電壓分布的平均閾值電壓電平;并且將相鄰平均閾值電壓電平之間的中間值確定為估計讀取電平。
21.處理器可以通過最小二進制(min-bin)法來更新估計讀取電平,最小二進制法包括:基于平均閾值電壓電平和設定標準差,根據具有新區段單元數量之中的最小區段單元數量的閾值電壓區段中的閾值電壓電平,確定存儲器單元的數量的函數,新區段單元數量對應于由附加讀取電平劃分的閾值電壓區段,附加讀取電平與補償讀取電壓的讀取電平具有設定間隔;并且將與所確定的函數的最小值相對應的閾值電壓電平確定為新估計讀取電平。
22.偏移電平信息可以包括與平均電平法相關聯的偏移電平以及與最小二進制法相關聯的偏移電平。
23.處理器可以通過以下方式來生成估計讀取電平:基于平均閾值電壓電平和設定標
準差,根據具有區段單元數量之中的最小區段單元數量的閾值電壓區段中的閾值電壓電平,確定存儲器單元的數量的函數,區段單元數量對應于由附加讀取電平劃分的閾值電壓區段,附加讀取電平與硬讀取電壓具有設定間隔;并且將與所確定的函數的最小值相對應的閾值電壓電平確定為估計讀取電平。
24.偏移電平信息可以包括查表,查表指示與存儲器單元相關聯的元數據的值和與讀取電壓相對應的偏移電平之間的關系。
25.元數據可以包括存儲器單元的編程/擦除(p/e)周期或在存儲器單元中編程的數據的保留狀態。
26.偏移電平信息可以包括用于讀取存儲器單元的多個讀取電壓之中的一個或多個讀取電壓的偏移電平,其中多個讀取電壓中的每一個的一個或多個偏移電平超過設定幅度。
27.處理器可以通過控制存儲器裝置以通過使用讀取重試表(rrt)中包括的歷史讀取電平或讀取電平對存儲器單元執行讀取操作來獲得從存儲器單元讀取的數據,并且當檢測到對讀取數據的錯誤校正解碼失敗時生成估計讀取電平。
28.控制器可以進一步包括錯誤校正碼(ecc)解碼器,ecc解碼器適用于使用補償讀取電平對從存儲器單元讀取的數據執行錯誤校正解碼。
29.根據本公開的實施例,一種用于控制包括存儲器單元的存儲器裝置的控制器,該控制器包括:存儲器,適用于存儲參數偏移信息,該參數偏移信息基于根據存儲器單元的特性和存儲器單元的高斯建模的樣本參數值來確定;以及處理器,適用于基于從存儲器單元讀取的數據和高斯建模生成估計參數值,通過將參數偏移信息應用于估計參數值來生成補償參數值,并且控制存儲器裝置使用通過基于補償參數值估計讀取電平而生成的補償讀取電平來執行讀取操作。
30.參數偏移信息可以基于樣本參數值和樣本估計參數值預先確定,樣本參數值和樣本估計參數值根據存儲器裝置的存儲器單元特性以實驗方式來確定。
31.處理器可以通過使用平均電平法來生成補償讀取電平,平均電平法包括:基于讀取數據,計算與閾值電壓區段相對應的區段單元數量;通過基于區段單元數量和標準差確定各個閾值電壓分布的估計平均閾值電壓電平來生成估計參數值;通過將參數偏移信息應用于估計平均閾值電壓電平來生成補償平均閾值電壓電平;并且將相鄰補償平均閾值電壓電平之間的中間值確定為補償讀取電平。
32.存儲器可以進一步存儲參數的乘子信息,參數的乘子信息基于樣本參數值來確定,并且其中處理器進一步執行通過將參數的乘子信息應用于設定標準差來生成補償標準差的操作,以確定估計平均閾值電壓電平。
33.處理器可以通過最小二進制法來更新補償讀取電平,最小二進制法包括:基于補償平均閾值電壓電平和補償標準差,根據具有新區段單元數量之中的最小區段單元數量的閾值電壓區段中的閾值電壓電平,確定存儲器單元的數量的函數,新區段單元數量對應于由附加讀取電平劃分的閾值電壓區段,附加讀取電平與補償讀取電平具有設定間隔;并且將與所確定的函數的最小值相對應的閾值電壓電平確定為新補償讀取電平。
34.偏移電平信息可以包括與平均電平法相關聯的偏移電平以及與最小二進制法相關聯的偏移電平。
35.參數偏移信息可以包括查表,查表指示與存儲器單元相關聯的元數據的值和與讀取電壓相對應的參數偏移之間的關系。
36.元數據可以包括存儲器單元的編程/擦除(p/e)周期或在存儲器單元中編程的數據的保留狀態。
37.根據本公開的實施例,一種存儲器系統包括:存儲器裝置,包括多個存儲器單元;以及控制器,聯接到存儲器裝置,并且包括處理器,處理器被配置成:使用高斯建模,基于從存儲器單元讀取的數據,生成估計讀取電平;基于估計讀取電平和偏移電平生成補償讀取電平,偏移電平基于根據存儲器單元的特性的最佳讀取電平與根據高斯建模的讀取電平之間的差來確定;并且控制存儲器裝置使用補償讀取電平對存儲器單元執行讀取操作。
38.根據本公開的本實施例,可以提供一種控制器及其操作方法,控制器可以通過反映存儲器單元分布的偏斜度信息來確定用于存儲器單元的讀取操作的讀取電平,從而降低發生讀取錯誤的可能性。
39.此外,可以提供一種能夠準確且快速地讀取存儲器單元中存儲的數據的控制器及其操作方法。
40.本公開可以獲得的效果不限于上述那些,并且本領域技術人員可以從下面的描述中清楚地理解未提及的其它效果。
附圖說明
41.圖1示意性地示出了三層單元(tlc)非易失性存儲器裝置的邏輯狀態的閾值電壓分布。
42.圖2示意性地示出了可能由于tlc非易失性存儲器裝置的特性劣化而偏移的邏輯狀態的閾值電壓分布。
43.圖3是示出根據本發明的實施例的半導體存儲器系統的框圖。
44.圖4a是示出圖3中所示的半導體存儲器系統的詳細框圖。
45.圖4b是示出圖4a中所示的存儲塊的框圖。
46.圖5是示出在存儲器單元具有理想閾值電壓分布的情況下的硬讀取電壓的圖表。
47.圖6是用于描述作為確定估計讀取電平組的方法的第一示例的平均電平法的示圖。
48.圖7是用于描述作為確定估計讀取電平的方法的第二示例的最小二進制法的示圖。
49.圖8a和圖8b是示出閾值電壓分布不對稱的情況的圖表。
50.圖9a和圖9b是示出根據存儲器單元特性和編程/擦除(p/e)周期的閾值電壓分布的偏斜度的圖表。
51.圖10是示出根據本發明第一實施例的處理器的示圖。
52.圖11是示出根據讀取電壓和p/e周期的偏移電平的示例的圖表。
53.圖12示出了根據本發明第一實施例的存儲器中存儲的查表。
54.圖13和圖14是示出根據本發明第一實施例的操作的流程圖。
55.圖15a和圖15b是示出根據本發明第一實施例的半導體存儲器裝置的操作的實驗結果的圖表。
56.圖16是示出根據本發明第二實施例的處理器的示圖。
57.圖17示出了根據本發明第二實施例的存儲器中存儲的第一查表和第二查表。
具體實施方式
58.下文中,將參照附圖描述本公開的各個實施例。然而,本公開可以以不同的形式實現,并且不應被解釋為受限于本文闡述的實施例。相反,提供這些實施例以便完善本公開,并且將本發明的范圍充分傳達給本領域技術人員。
59.圖3是示意性地示出根據本發明的實施例的半導體存儲器系統10的框圖。
60.圖4a是更詳細地示出圖3的半導體存儲器系統10的框圖,并且圖4b是示出在圖4a的半導體存儲器系統中采用的存儲塊211的配置的電路圖。
61.現在參照圖3至圖4b,根據本發明的實施例,提供半導體存儲器系統10。半導體存儲器系統10可以包括可操作地聯接到存儲器控制器100的半導體存儲器裝置200。
62.半導體存儲器裝置200可以在存儲器控制器100的控制下執行擦除操作、編程操作和讀取操作中的一種或多種。半導體存儲器裝置200可以通過多個輸入/輸出線從存儲器控制器100接收命令cmd、地址addr和數據data。半導體存儲器裝置200可以從存儲器控制器100通過電力線接收電力pwr并且通過控制線接收控制信號ctrl。控制信號可以包括命令鎖存使能(cle)信號、地址鎖存使能(ale)信號、芯片使能(ce)信號、寫入使能(we)信號、讀取使能(re)信號等。
63.存儲器控制器100可以控制半導體存儲器裝置200的全部操作。存儲器控制器100可以包括用于校正錯誤位的錯誤校正碼(ecc)(例如,低密度奇偶校驗(ldpc)碼)組件130。ecc組件130可以包括ecc編碼器(例如,ldpc編碼器)131和ecc解碼器(例如,ldpc解碼器)133。
64.ecc編碼器131可以對待編程到半導體存儲器裝置200中的數據執行錯誤校正編碼,以輸出添加了奇偶校驗位的數據。具有奇偶校驗位的編碼數據可以存儲在半導體存儲器裝置200中。
65.ecc解碼器133可以對從半導體存儲器裝置200讀取的數據執行錯誤校正解碼。ecc解碼器133可以確定錯誤校正解碼是否成功,并且可以基于確定結果輸出指令信號。ecc解碼器133可以使用由ldpc編碼操作生成的奇偶校驗位來校正數據的錯誤位。
66.當錯誤位的數量超過ecc組件130的錯誤校正容量時,ecc組件130可能無法校正錯誤位。在這種情況下,ecc組件130可以生成錯誤校正失敗信號。
67.存儲器控制器100和半導體存儲器裝置200可以被集成在單個半導體裝置中。例如,存儲器控制器100和半導體存儲器裝置200可以被集成在諸如固態驅動器(ssd)的單個半導體裝置中。固態驅動器可以包括用于將數據存儲在半導體存儲器中的存儲裝置。當在ssd中使用半導體存儲器系統10時,聯接到半導體存儲器系統10的主機(未示出)的操作速度可以顯著提高。
68.存儲器控制器100和半導體存儲器裝置200可以被集成在諸如存儲卡的單個半導體裝置中。例如,存儲器控制器100和半導體存儲器裝置200可以被集成在單個半導體裝置中以配置諸如以下的存儲卡:個人計算機存儲卡國際協會(pcmcia)的pc卡、緊湊型閃存(cf)卡、智能媒體(sm)卡、記憶棒、多媒體卡(mmc)、尺寸減小的多媒體卡(rs-mmc)、微尺寸
版本的mmc(微型mmc)、安全數字(sd)卡、迷你安全數字(迷你sd)卡、微型安全數字(微型sd)卡、高容量安全數字(sdhc)和通用閃存(ufs)。
69.又例如,半導體存儲器系統10可以被設置為包括諸如以下的電子裝置的各種元件中的一種:計算機、超移動pc(umpc)、工作站、上網本計算機、個人數字助理(pda)、便攜式計算機、網絡平板pc、無線電話、移動電話、智能電話、電子書閱讀器、便攜式多媒體播放器(pmp)、便攜式游戲裝置、導航裝置、黑盒、數碼相機、數字多媒體廣播(dmb)播放器、三維電視、智能電視、數字音頻記錄器、數字音頻播放器、數字圖片記錄器、數字圖片播放器、數字視頻記錄器、數字視頻播放器、數據中心的存儲裝置、能夠在無線環境中接收和傳輸信息的裝置、家庭網絡的電子裝置中的一種、計算機網絡的電子裝置中的一種、遠程信息處理網絡的電子裝置中的一種、射頻識別(rfid)裝置或計算系統的組件中的一種。
70.參照圖4a,除了ecc組件130之外,存儲器控制器100還可以包括存儲器110、處理器120、主機接口(i/f)140、存儲器接口150和系統總線160。
71.主機接口140可以通過諸如以下的各種接口協議中的一種或多種與主機通信:通用串行總線(usb)、多媒體卡(mmc)、高速外圍組件互連(pci-e或pcie)、小型計算機系統接口(scsi)、串列scsi(sas)、串行高級技術附件(sata)、并行高級技術附件(pata)、增強型小型磁盤接口(esdi)和/或電子集成驅動器(ide)。
72.存儲器接口150可以用作存儲器/存儲裝置接口,用于接口連接存儲器控制器100和半導體存儲器裝置200,使得存儲器控制器100響應于來自主機的請求來控制半導體存儲器裝置200。當半導體存儲器裝置200是閃速存儲器或具體為nand閃速存儲器時,存儲器接口150可以在處理器120的控制下生成針對半導體存儲器裝置200的控制信號并且處理待提供到半導體存儲器裝置200的數據。存儲器接口150可以用作用于處理存儲器控制器100與半導體存儲器裝置200之間的命令和數據的接口(例如,nand閃存接口)。具體地,存儲器接口150可以支持存儲器控制器100與半導體存儲器裝置200之間的數據傳送。
73.處理器120可以控制半導體存儲器系統10的全部操作。處理器120可以驅動固件來控制半導體存儲器系統10的全部操作。固件可以被稱為閃存轉換層(ftl)。處理器120可以實現為微處理器或中央處理單元(cpu)。
74.處理器120可以驅動ftl并且執行與從主機接收到的請求相對應的前臺操作。例如,處理器120可以響應于來自主機的寫入請求而控制半導體存儲器裝置200的寫入操作,并且響應于來自主機的讀取請求而控制半導體存儲器裝置200的讀取操作。
75.存儲器110可以用作半導體存儲器裝置200和存儲器控制器100的工作存儲器,并且存儲用于驅動半導體存儲器裝置200和存儲器控制器100的數據。存儲器控制器100可以響應于來自主機的請求,控制半導體存儲器裝置200執行讀取操作、編程操作和擦除操作。存儲器控制器100可以將從半導體存儲器裝置200讀取的數據提供到主機,并且可以將從主機提供的數據存儲到半導體存儲器裝置200中。存儲器110可以存儲用于存儲器控制器100和半導體存儲器裝置200執行上面各種操作的數據。
76.存儲器110可以由易失性存儲器來實現。例如,存儲器110可以由靜態隨機存取存儲器(sram)或動態隨機存取存儲器(dram)來實現。存儲器110可以被設置在存儲器控制器100的內部或外部。在圖4a所示的示例中,存儲器110設置在存儲器控制器100內。在另一實施例中,存儲器110可以由外部易失性存儲器來實現,該外部易失性存儲器具有用于在存儲
器110與存儲器控制器100之間傳送數據的存儲器接口。
77.ecc組件130可以檢測并校正從半導體存儲器裝置200讀取的數據中的錯誤。存儲器接口150可以與半導體存儲器裝置200接口連接。即使圖3和圖4a示出了包括ecc編碼器131和ecc解碼器133兩者的ecc組件130,但是ecc編碼器131和ecc解碼器133仍可以被實施為不同且分開的組件。處理器120可以執行各種控制操作。
78.根據本發明的實施例,在編程操作期間,ecc組件130可以對待編程到半導體存儲器裝置200的原始數據執行ldpc編碼操作。在讀取操作期間,ecc組件130可以對存儲在半導體存儲器裝置200中的ldpc編碼數據或碼字執行ldpc解碼操作。
79.ecc組件130然后可以通過對存儲在半導體存儲器裝置200中的ldpc編碼數據或碼字執行ldpc解碼操作來恢復原始數據。
80.半導體存儲器裝置200可以包括存儲器單元陣列210、控制電路220、電源230、電壓傳輸器240、讀取/寫入電路250和列選擇器260。
81.存儲器單元陣列210可以包括多個存儲塊211。用戶數據可以存儲在存儲塊211中。可以如上所述對用戶數據進行編碼。
82.參照圖4b,存儲塊211的代表性存儲塊的配置可以包括分別聯接到位線bl0至blm-1的多個單元串221。每列的單元串221可以包括一個或多個漏極選擇晶體管dst以及一個或多個源極選擇晶體管sst。多個存儲器單元或存儲器單元晶體管可以串聯聯接在選擇晶體管dst與sst之間。存儲器單元mc0至mcn-1中的每一個可以優選地形成為在每個單元中存儲多位數據信息的多層單元(mlc)。單元串221可以分別電聯接到相應的位線bl0至blm-1。
83.在所示的示例中,圖4b示出了包括nand型閃速存儲器單元的存儲塊211。然而,半導體存儲器裝置200不限于為nand閃速存儲器。在另一示例中,半導體存儲器裝置200可以包括nor型閃速存儲器、其中組合了兩種或更多種類型的存儲器單元的混合閃速存儲器以及其中控制器嵌入在存儲器芯片內部的one-nand閃速存儲器。半導體裝置的操作特性可以應用于電荷存儲層由絕緣層形成的電荷擷取閃存(ctf)以及電荷存儲層由導電浮柵形成的閃速存儲器裝置。
84.參照圖4a,控制電路220可以控制包括與半導體存儲器裝置200的編程操作、擦除操作和讀取操作相關的具體操作的全部操作。
85.電源230可以根據操作模式向各個字線提供字線電壓,例如編程電壓、讀取電壓和通過電壓。此外,電源230可以提供待供應到塊體(bulk)(例如,其中形成存儲器單元的阱區)的電壓。電源230的電壓生成操作可以在控制電路220的控制下執行。
86.電源230可以生成多個可變讀取電壓以生成多個讀取數據。
87.電壓傳輸器240可以選擇存儲器單元陣列210的存儲塊211或扇區中的一個,并且可以在控制電路220的控制下選擇所選擇的存儲塊的字線中的一個。電壓傳輸器240可以在控制電路220的控制下將電源230生成的字線電壓提供到所選擇的字線或未選擇的字線。
88.讀取/寫入電路250可以由控制電路220控制,并且可以根據操作模式作為讀出放大器或寫入驅動器來操作。例如,在驗證/正常讀取操作期間,讀取/寫入電路250可以作為從存儲器單元陣列210讀取數據的讀出放大器而操作。在正常讀取操作期間,列選擇器260可以基于列地址信息,將從讀取/寫入電路250讀取的數據輸出到另一組件,例如存儲器控制器100。在驗證讀取操作期間,讀取數據可以被提供到半導體存儲器裝置200中包括的通
過/失敗驗證電路(未示出),并且可以用于確定存儲器單元的編程操作是否成功。
89.在編程操作期間,讀取/寫入電路250可以作為寫入驅動器來操作,該寫入驅動器用于根據待存儲在存儲器單元陣列210中的數據來驅動位線。在編程操作期間,讀取/寫入電路250可以從緩沖器(未示出)接收待寫入存儲器單元陣列210的數據,并且可以根據輸入數據驅動位線。為此,讀取/寫入電路250可以包括分別與列(或位線)或者列對(或位線對)相對應的多個頁面緩沖器(pb)251。頁面緩沖器251的每一個中可以包括多個鎖存器。
90.對半導體存儲器裝置200中存儲的數據的讀取操作可以包括硬讀取操作和軟讀取操作。
91.硬讀取操作是施加硬讀取電壓并從半導體存儲器裝置200讀取數據的操作。硬讀取電壓是用于區分相鄰閾值電壓分布的電壓。例如,當施加具有高于其閾值電壓的讀取電平的讀取電壓時,存儲器單元可以被導通,并且當施加具有低于其閾值電壓的讀取電平的讀取電壓時,存儲器單元可以被關斷。可以通過在存儲器單元導通或關斷的同時感測位線中形成的電流來讀取數據。ecc解碼器133可以對通過施加硬讀取電壓而讀取的數據執行硬判決解碼(hard decision decoding),從而校正讀取數據的錯誤。
92.軟讀取操作是使用軟讀取電壓從半導體存儲器裝置200讀取數據的操作,軟讀取電壓具有與參考讀取電平不同的電平。例如,軟讀取電壓可以被施加到通過施加硬讀取電壓被讀取的存儲器單元,以便附加地執行軟讀取操作。基于通過施加軟讀取電壓而讀取的數據,可以將可靠性值添加到通過施加硬讀取電壓而讀取的數據。ecc解碼器133可以使用可靠性值和通過硬讀取電壓讀取的數據來執行軟判決解碼(soft decision decoding),從而校正讀取數據的錯誤。
93.圖5是示出在存儲器單元具有理想閾值電壓分布的情況下的硬讀取電壓的圖表。
94.通過示例的方式,圖5示出了存儲器單元形成如參照圖1所描述的理想閾值電壓分布p1至p8,并且第一至第七讀取電壓r1至r7中的每一個具有默認讀取電平。因為理想閾值電壓分布p1至p8彼此不重疊,所以可以準確地將其邏輯狀態彼此區分開。因此,半導體存儲器裝置200可以通過施加具有默認讀取電平的第一至第七讀取電壓r1至r7來準確地區分第一至第八閾值電壓分布p1至p8,并且無錯誤地讀取存儲器單元的數據。
95.然而,如參照圖2所描述的,閾值電壓分布可能偏移。在這種情況下,可能無法通過默認讀取電平準確地區分偏移后的閾值電壓分布p1至p8。當閾值電壓分布p1至p8不能正常區分時,從半導體存儲器裝置200讀取的數據中可能出現錯誤位。當讀取數據中的錯誤位的數量大于或等于可校正的錯誤位閾值時,ecc解碼器133可能無法對讀取數據進行錯誤校正解碼。
96.只要處理器120可以使用與相鄰閾值電壓分布相互交叉的點相對應的讀取電平以便控制半導體存儲器裝置200的讀取操作,就可以最小化從半導體存儲器裝置200讀取的數據中的錯誤位的數量。在半導體存儲器裝置200可以施加的多個讀取電平之中的、使讀取數據中的錯誤位的數量最小化的讀取電平可以被稱為最佳讀取電平。只要處理器120可以使用最佳讀取電平,就可以增加成功校正從半導體存儲器裝置200讀取的數據的錯誤的概率。然而,當存儲器單元的閾值電壓分布偏移時,處理器120難以準確地到相鄰閾值電壓分布相互交叉的點。處理器120可以通過各種方法確定第一至第七讀取電壓r1至r7的讀取電平,以便減少從半導體存儲器裝置200讀取的數據中的錯誤位的數量。下文中,第一至第七讀取
電壓r1至r7的一組讀取電平可以被稱為讀取電平組。
97.作為用于確定讀取電平組的方法的第一示例,可以使用歷史讀取電平組。處理器120可以將第一至第七讀取電壓r1至r7的讀取電平作為歷史讀取電平組存儲在存儲器110中。此處,讀取電平可以用于讀取已被成功執行錯誤校正解碼的數據。存儲器110可以存儲每個存儲塊的歷史讀取電平組。處理器120可以使用特定存儲塊的歷史讀取電平組,以便從該存儲塊中讀取數據。下文中,通過使用歷史讀取電平組執行的讀取操作可以被稱為歷史讀取操作。
98.作為用于確定讀取電平組的方法的第二示例,可以使用讀取重試表(rrt)。rrt可以在其中預先存儲多個讀取電平組,并加載到存儲器110。處理器120可以基于其中包括多個讀取電平組的rrt來確定讀取電壓r1至r7的讀取電平。例如,處理器120可以順序地使用rrt中的具有較高優先級的若干個讀取電平組,直到對讀取數據成功執行錯誤校正解碼。下文中,通過使用rrt執行的讀取操作可以被稱為rrt讀取操作。
99.作為用于確定讀取電平組的方法的第三示例,可以使用估計閾值電壓分布來確定估計讀取電平組。處理器120可以基于通過參考讀取電平組從半導體存儲器裝置200讀取的數據來估計閾值電壓分布。處理器120可以基于估計閾值電壓分布來確定估計讀取電平組。處理器120可以將默認讀取電平組、歷史讀取電平組、rrt中包括的多個讀取電平組或者讀取電平組的軟讀取電平確定為參考讀取電平組。
100.下文中,將參照圖6和圖7描述用于確定估計讀取電平組的方法的示例。
101.圖6示出了具有參考讀取電平以及參照圖2描述的偏移后的閾值電壓分布的讀取電壓r1至r7。在圖6的示例中,當使用參考讀取電平組時,可能無法準確區分基于偏移后的閾值電壓分布的閾值電壓分布p1至p8。例如,第七讀取電壓r7可以是用于區分第七閾值電壓分布p7和第八閾值電壓分布p8的讀取電壓。然而,在圖6的示例中,當半導體存儲器裝置200向具有偏移后的閾值電壓分布的存儲器單元施加第七讀取電壓r7時,被編程為具有第八閾值電壓分布p8的數據中的一些可能被錯誤地讀取為具有第七閾值電壓分布p7的數據。因此,讀取數據可能包括超過可校正錯誤位閾值的錯誤位。因此,處理器120可以通過估計閾值電壓分布來確定估計讀取電平組,并使用估計讀取電平組來控制半導體存儲器裝置200的讀取操作。
102.可以對閾值電壓分布進行數學建模。例如,閾值電壓分布可以被建模為高斯分布。當閾值電壓分布被建模為高斯分布時,處理器120可以基于閾值電壓分布的平均值和標準差來確定估計讀取電平組。
103.圖6是示出了作為基于高斯建模確定估計讀取電平組的方法的第一示例的平均電平法。
104.處理器120可以基于參考讀取電平組和標準差估計閾值電壓分布的平均閾值電壓電平,并基于估計平均閾值電壓電平確定估計讀取電平組。
105.例如,處理器120可以基于通過參考讀取電平組從存儲器單元讀取的數據,計算與通過參考讀取電平組劃分的閾值電壓區段中的每一個相對應的區段單元數量。處理器120可以基于計算出的區段單元數量、標準差和高斯分布函數來估計閾值電壓分布的平均閾值電壓m1至m7的電壓電平。處理器120可以將預定常數作為標準差來使用。處理器120可以基于平均閾值電壓m1至m7的電壓電平確定用于讀取半導體存儲器裝置200中存儲的數據的估
計讀取電平組。
106.圖6示出了具有估計讀取電平的讀取電壓r1'至r7'。參照圖6,估計讀取電平組可能比參考讀取電平組更接近最佳讀取電平組。因此,通過施加具有估計讀取電平的讀取電壓r1'至r7'而讀取的數據可以包括比通過施加具有參考讀取電平的讀取電壓r1至r7而讀取的數據更少數量的錯誤位。
107.圖7是用于描述作為通過高斯建模確定估計讀取電平的方法的第二示例的最小二進制法的圖表。
108.通過示例的方式,圖7示出了閾值電壓分布a(即,pa)與閾值電壓分布b(即,pb)之間的硬讀取電壓r_hd以及圍繞硬讀取電壓r_hd的軟讀取電壓r_sd1至r_sd6。
109.閾值電壓分布a(pa)和閾值電壓分布b(pb)指示參考圖5描述的閾值電壓分布之中的兩個隨機的相鄰閾值電壓分布。硬讀取電壓r_hd可以是用于區分第一至第七讀取電壓r1至r7之中的兩個相鄰閾值電壓分布的讀取電壓。
110.在圖7的示例中,可以確定軟讀取電壓r_sd1至r_sd6的讀取電平中的每一個具有與硬讀取電壓r_hd的讀取電平的預定間隔。
111.ecc解碼器133可以基于通過施加軟讀取電壓r_sd1至r_sd6而讀取的數據,將可靠性值添加到通過施加硬讀取電壓r_hd而讀取的數據。例如,可靠性值可以是對數似然比(llr)。ecc解碼器133可以使用可靠性值檢測和校正從半導體存儲器裝置200讀取的編碼數據即碼字的錯誤。
112.當在硬讀取電壓r_hd的讀取電平不接近最佳讀取電平的情況下施加軟讀取電壓r_sd1至r_sd6時,可能添加不準確的可靠性值,其中軟讀取電壓r_sd1至r_sd6的讀取電平根據硬讀取電壓r_hd的讀取電平確定。當使用讀取數據和不準確的可靠性值執行軟判決解碼時,ecc解碼器133可能會出現錯誤校正失敗。
113.處理器120可以基于通過具有參考讀取電平的軟讀取電壓r_sd1至r_sd6讀取的數據來確定估計讀取電平,以便獲取更準確的可靠性值。
114.例如,處理器120可以將軟讀取電壓的讀取電平確定為參考讀取電平。處理器120可以基于通過施加軟讀取電壓r_sd1至r_sd6而讀取的數據,計算與通過參考讀取電平劃分的閾值電壓區段中的每一個相對應的區段單元數量。閾值電壓區段中的每一個可以被稱為二進制標簽區段。圖7中的虛線702指示具有閾值電壓分布a(pa)的存儲器單元和具有閾值電壓分布b(pb)的存儲器單元彼此重疊的區段中的存儲器單元的總數量。
115.處理器120可以將包括最小區段單元數量的閾值電壓區段中包括的讀取電平確定為估計讀取電平。例如,基于閾值電壓電平和閾值電壓分布的標準差,處理器120可以根據閾值電壓電平確定存儲器單元的總數量的函數。圖7中的虛線702指示具有閾值電壓分布a(pa)的存儲器單元和具有閾值電壓分布b(pb)的存儲器單元彼此重疊的區段中的存儲器單元的總數量。
116.處理器120可以將閾值電壓區段中與估計函數的最小值相對應的閾值電壓電平確定為估計讀取電平。通過示例的方式,圖7示出了具有估計讀取電壓的硬讀取電壓r_hd'。
117.當使用最小二進制法確定所有相鄰閾值電壓分布的估計讀取電平時,處理器120可以確定所有讀取電壓r1至r7的估計讀取電平。
118.參照圖7,估計讀取電平可能比參考讀取電平更接近最佳讀取電平。因此,通過施
加具有估計讀取電平的讀取電壓而讀取的數據可以包括比通過施加具有參考讀取電平的讀取電壓而讀取的數據更少數量的錯誤位。
119.當在閾值電壓分布對應于高斯分布的情況下使用平均電平法和最小二進制法時,處理器120可以確定接近最佳讀取電平的估計讀取電平。然而,閾值電壓不一定形成高斯分布。由于各種原因,閾值電壓可能形成不對稱分布。
120.圖8a和圖8b是示出閾值電壓分布不對稱的情況的圖表。具體地,圖8a和8b示出了閾值電壓分布a(pa)和b(pb)為負偏斜的情況。
121.圖8a示出了通過平均電平法確定不對稱閾值電壓分布的估計讀取電平的情況。
122.處理器120可以使用平均電平法確定各自的閾值電壓分布a(pa)和b(pb)的平均閾值電壓m_a和m_b。
123.處理器120可以將平均閾值電壓m_a和m_b的中間讀取電平確定為估計讀取電平r_ml。然而,因為閾值電壓分布不具有高斯分布而是負偏斜,所以最佳讀取電平r_opt可以大于估計讀取電平r_ml。當使用估計讀取電平r_ml執行讀取操作時,可能出現比使用最佳讀取電平r_opt執行讀取操作時更大數量的錯誤位。
124.將參照圖8b描述通過最小二進制法來確定不對稱閾值電壓分布的估計讀取電平的情況。
125.圖8b中的虛線802指示具有閾值電壓分布a(pa)的存儲器單元和具有閾值電壓分布b(pb)的存儲器單元彼此重疊的區段中的存儲器單元的總數量。
126.如參照圖7所述,處理器120可以將包括最小區段單元數量的閾值電壓區段的中間電平確定為估計讀取電平。然而,因為閾值電壓分布不具有高斯分布而是負偏斜,所以最佳讀取電平r_opt可以大于估計讀取電平r_min。當使用估計讀取電平r_min執行讀取操作時,可能出現比使用最佳讀取電平r_opt執行讀取操作時更大數量的錯誤位。
127.為了提高從半導體存儲器裝置200讀取的數據的可靠性,處理器120需要通過反映實際閾值電壓分布信息來確定讀取電平。通過反映實際閾值電壓分布信息確定的讀取電平可具有接近最佳讀取電平r_opt的值。
128.存儲器單元的實際閾值電壓分布的偏斜度可能與存儲器單元特性相關,存儲器單元特性根據半導體存儲器裝置200之間的工藝差異來確定。也就是說,通過相同工藝制造的半導體存儲器裝置200的閾值電壓分布可能具有相似的偏斜度。偏斜度還可能與編程/擦除(p/e)周期和編程數據的保留狀態相關。根據數據編程的時間,可以通過電荷損耗的程度來確定編程數據的保留狀態。
129.圖9a和圖9b是示出根據存儲器單元特性和p/e周期的閾值電壓分布的偏斜度的圖表。
130.在圖9a和圖9b中,圖表示出了使用通過相同工藝制造的作為樣本的多個半導體存儲器裝置200以實驗方式得到的偏斜度。各圖表的橫軸指示偏斜度,并且各圖表的縱軸指示樣本的數量。圖表示出了被編程為分別具有閾值電壓分布p1至p8的存儲器單元的偏斜度分布。不同閾值電壓分布的偏斜度分布被示出為不同類型的線。例如,圖表中的“p1”表示被編程為具有第一閾值電壓分布p1的存儲器單元的偏斜度分布。
131.偏斜度可以通過下面的等式1得到。
132.[等式1]
[0133][0134]
隨機變量x可以是被編程為在樣本的每一個中具有各自的閾值電壓分布p1至p8的存儲器單元的閾值電壓。隨著偏斜度沿負方向增加,相應的閾值電壓分布可能負偏斜。另一方面,隨著偏斜度沿正方向增加,相應的閾值電壓分布可能正偏斜。
[0135]
圖9a示出了當p/e周期為1000(即,1k)時閾值電壓分布的偏斜度。每個閾值電壓分布的偏斜度通常可以形成高斯分布。也就是說,在通過相同工藝制造的多個半導體存儲器裝置200之中,閾值電壓分布的平均值具有偏斜度的樣本的數量是最大的。此外,隨著閾值電壓分布中的每一個的偏斜度偏離平均值,具有相應偏斜度的樣本的數量可能減少。
[0136]
圖9b示出了當p/e周期為10000(即,10k)時閾值電壓分布的偏斜度。如圖9a的圖表所示,每個閾值電壓分布的偏斜度通常可以形成高斯分布。當p/e周期為1000時,每個閾值電壓分布的偏斜度可能與p/e周期為10000時不同。例如,當p/e周期為1000時,第六閾值電壓分布p6可以具有0.05的正偏斜度。然而,當p/e周期為10000時,第六閾值電壓分布p6可能變得幾乎對稱。
[0137]
只要處理器120可以通過反映參照圖9a和圖9b描述的偏斜度信息來確定讀取電平組,讀取電平組就可以具有接近最佳讀取電平組的值。當處理器120在半導體存儲器裝置200的讀取操作期間可以使用具有接近最佳讀取電平組的值的讀取電平組時,可以最小化從半導體存儲器裝置200讀取的數據中的錯誤位的數量。
[0138]
根據本發明的第一實施例,處理器120可以基于通過將參考讀取電平組施加到存儲器單元從存儲器單元讀取的數據,使用諸如平均電平法和最小二進制法的讀取電平估計方法生成估計讀取電平組。處理器120可以通過將基于閾值電壓分布的偏斜度信息確定的偏移電平施加到估計讀取電平組來生成補償讀取電平組。處理器120可以使用補償讀取電平組控制半導體存儲器裝置200的讀取操作,從而獲取其錯誤位被最小化的數據。將參照圖10至圖15b詳細描述第一實施例。
[0139]
圖10是示出根據本發明第一實施例的處理器120的示圖。圖10的處理器120對應于參照圖4a描述的處理器。
[0140]
參照圖10,處理器120可以包括讀取電平估計器1010和讀取電平補償器1030。根據實施方案,讀取電平估計器1010和讀取電平補償器1030可以以軟件實施,并且加載到存儲器110并在處理器120中被驅動。根據另一實施方案,讀取電平估計器1010和讀取電平補償器1030可以以硬件實施,并且包括在處理器120中。
[0141]
讀取電平估計器1010可以接收通過使用參考讀取電平組而讀取的數據,生成估計讀取電平組r[1:7],并輸出所生成的估計讀取電平組r[1:7]。參照圖6和圖7所述,讀取電平估計器1010可以基于高斯建模使用讀取電平估計方法生成估計讀取電平組r[1:7]。
[0142]
讀取電平補償器1030可以接收估計讀取電平組r[1:7]和偏移電平信息,生成補償讀取電平組r'[1:7],并輸出所生成的補償讀取電平組r'[1:7]。
[0143]
偏移電平信息可以包括查表,該查表指示偏移電平和與存儲器單元相關聯的
元數據的值之間的關系。與閾值電壓分布的偏斜度相關聯的元數據可以包括p/e周期和編程數據的保留狀態。可以基于最佳讀取電平與估計讀取電平之間的差來確定偏移電平。查表可以根據存儲器單元分布的偏斜度預先確定,并存儲在存儲器110中。
[0144]
將參照圖11和圖12詳細描述根據本實施例的偏移電平和查表的示例。
[0145]
圖11是示出根據讀取電壓r1至r7和p/e周期的偏移電平的示例的圖表。
[0146]
圖表的橫軸指示讀取電壓(或讀取偏壓read biases)r1至r7。在圖表的橫軸上,標記讀取電壓的標識符(read bias#)。圖表的縱軸指示偏移電平(或偏移寄存器值)的模式值mode(opt.-ml),該模式值通過從樣本最佳讀取電平中減去樣本估計讀取電平來獲得。偏移電平的模式值可以利用被設置成樣本的多個半導體存儲器裝置200以實驗方式得到。例如,樣本估計讀取電平可以是基于高斯建模通過平均電平法來估計的樣本存儲器裝置的讀取電平。樣本最佳讀取電平是半導體存儲器裝置200中可用的讀取電平之中的、在讀取操作期間出現錯誤數量最少的樣本存儲器裝置的讀取電平。可以以實驗方式確定樣本最佳讀取電平。
[0147]
樣本最佳讀取電平、樣本估計讀取電平和偏移電平可以表示為與讀取電平相對應的寄存器值。例如,當處理器120可以使用8位寄存器調節第一讀取電壓r1的讀取電平時,可以將讀取電平確定為256個寄存器值中的一個。隨著寄存器值增加,讀取電平也可以增加。例如,寄存器值可能與讀取電平具有線性關系。然而,本公開不限于寄存器值與讀取電平之間必須具有線性關系的情況。
[0148]
下文中,與樣本最佳讀取電平、樣本估計讀取電平和偏移電平相對應的寄存器值可以分別被稱為樣本最佳寄存器值、樣本估計寄存器值和偏移寄存器值。可以將偏移寄存器值確定為通過從樣本最佳寄存器值中減去樣本估計寄存器值而獲得的值。
[0149]
圖表的縱軸指示與偏移電平的模式值相對應的偏移寄存器值。根據不同的p/e周期(例如,c1000、c3000、c10000、c20000、c30000)的讀取電壓r1至r7的偏移寄存器值被示為不同類型的線。處理器120可以通過將以實驗方式確定的偏移寄存器值應用于估計寄存器值來確定補償寄存器值。補償寄存器值可以是與補償讀取電平相對應的寄存器值。例如,當p/e周期為1000時,第一至第七讀取電壓r1至r7的偏移寄存器值可以分別為
“?
4”、“2”、“1”、“1”、“1”、“0”和
“?
2”。處理器120可以基于參考讀取電平組生成估計讀取電平組。參考讀取電平組和估計讀取電平組可以分別包括多個參考寄存器值和多個估計寄存器值。處理器120可以將偏移寄存器值
“?
4”、“2”、“1”、“1”、“1”添加到與第一至第五讀取電壓r1至r5相對應的估計寄存器值,并將
“?
2”添加到與第七讀取電壓r7相對應的估計寄存器值,從而生成包括多個補償寄存器值的補償讀取電平組。
[0150]
圖12示出了根據本發明第一實施例的存儲器110中存儲的查表1210。
[0151]
參照圖12,查表1210可以包括根據p/e周期的讀取電壓(rv)的偏移電平ol_11至ol_37。在圖12的示例中,只有一些讀取電壓r1、r2和r7的偏移電平可以包括在查表1210中,其它讀取電壓r3至r6的偏移電平可以省略。
[0152]
根據半導體存儲器裝置200的存儲器單元特性,不管p/e周期如何,一些閾值電壓分布可以具有接近高斯分布的形狀。當一些閾值電壓分布具有接近高斯分布的形狀時,即使在不將偏移電平施加到一些讀取電壓的情況下將估計讀取電平用作補償讀取電平,也可以精確地劃分閾值電壓分布。
[0153]
因此,偏移電平,例如,不管p/e周期如何,偏移寄存器值小于或等于預定幅度的讀取電壓的偏移電平,可以從查表1210省略。在圖11的示例中,不管p/e周期如何,第三至第六讀取電壓r3至r6的偏移寄存器值可以被確定為值“1”或更小。在圖12所示的查表1210中,可以省略第三至第六讀取電壓r3至r6的偏移電平。
[0154]
處理器120可以省略通過參考查表1210將偏移電平施加到其偏移電平省略的讀取電壓的操作,并使用估計讀取電平作為補償讀取電平。當查表1210中的偏移電平未被存儲為“0”而是從查表1210中省略時,可以節省用于存儲存儲器110中的查表1210的空間,并且可以省略用于施加偏移電平的操作。
[0155]
通過示例的方式,圖12示出了包括根據p/e周期的讀取電壓的偏移電平的查表1210。然而,本實施例的查表不限于此。例如,存儲器110可以進一步根據編程數據的保留狀態存儲包括每個讀取電壓的偏移電平的查表。處理器120可以選擇性地使用與p/e周期相關聯的查表以及與保留狀態相關聯的查表。
[0156]
根據讀取電平估計方法,估計讀取電平和最佳讀取電平可能彼此不同。存儲器110可以在其中存儲查表,查表包括用于讀取電平估計方法的不同偏移電平。例如,存儲器110可以存儲與平均電平法相關聯的查表以及與最小二進制法相關聯的查表。
[0157]
圖13是示出根據本發明第一實施例的操作的流程圖。
[0158]
參照圖13,在操作s1302中,處理器120可以基于參考讀取電平和通過使用參考讀取電平讀取的數據來估計讀取電平。已經參照圖6和7描述了通過對讀取電平進行估計來生成估計讀取電平的方法的示例。
[0159]
在操作s1304中,處理器120可以使用偏移電平信息來補償估計讀取電平。例如,處理器120可以通過將偏移電平信息中包括的偏移電平應用于估計讀取電平來生成補償讀取電平。
[0160]
在操作s1306中,處理器120可以控制半導體存儲器裝置200使用補償讀取電平執行讀取操作。
[0161]
處理器120可以通過參照圖5至圖13描述的各種方法來執行讀取操作,以便從半導體存儲器裝置200讀取數據。處理器120可以以預定順序使用各種方法執行讀取操作,直到ecc解碼器133對從半導體存儲器裝置200讀取的數據成功執行錯誤校正解碼。
[0162]
下文中,將以處理器120順序地執行歷史讀取操作、rrt讀取操作、采用平均電平法的讀取操作和采用最小二進制法的讀取操作的情況作為示例進行描述。
[0163]
圖14是示出根據本發明第一實施例的操作的流程圖。
[0164]
參照圖14,在操作s1402中,處理器120可以檢測到歷史讀取操作和rrt讀取操作均失敗。
[0165]
例如,ecc解碼器133對通過使用歷史讀取電平組讀取的數據進行的錯誤校正解碼以及對通過使用rrt中包括的讀取電平組讀取的數據進行的錯誤校正解碼可能失敗。為了從半導體存儲器裝置200獲取可錯誤校正的數據,處理器120可以將在rrt讀取操作期間讀取的數據存儲在存儲器110中,并且執行操作s1404、s1406、s1408和s1410。
[0166]
在操作s1404中,處理器120可以使用平均電平法(或平均值電平法)生成第一估計讀取電平組。
[0167]
例如,處理器120可以將在rrt讀取操作中使用的讀取電平組確定為第一參考讀取
電平組。處理器120可以使用第一參考讀取電平組和在rrt讀取操作期間讀取的數據,通過參照圖6描述的方法來生成第一估計讀取電平組。
[0168]
在操作s1406中,處理器120可以使用第一偏移電平信息生成第一補償讀取電平組。
[0169]
例如,處理器120可以使用第一查表作為第一偏移電平信息,第一查表指示p/e周期和存儲在存儲器110中且與平均電平法相關聯的查表之中的偏移電平之間的關系。處理器120可以從存儲器110獲取待讀取的存儲器單元的p/e周期信息,并通過參考第一查表確定讀取電壓r1至r7中的至少一些電壓的第一偏移電平。通過參考第一查表,處理器120可以通過將第一偏移電平應用于第一估計讀取電平組中的至少一些來生成第一補償讀取電平組。
[0170]
在操作s1408中,處理器120可以控制半導體存儲器裝置200使用第一補償讀取電平組來執行硬讀取操作。
[0171]
在操作s1410中,ecc解碼器133可以對從半導體存儲器裝置200讀取的數據執行硬判決解碼,并確定硬判決解碼是否通過。
[0172]
當確定硬判決解碼通過時(操作s1410中的“是”),在操作s1412中,處理器120可以成功結束讀取操作。在一些情況下,處理器120可以將錯誤校正后的數據輸出到外部或在處理器120中使用錯誤校正后的數據。
[0173]
當確定硬判決解碼失敗時(操作s1410中的“否”),在操作s1414中,處理器120可以控制半導體存儲器裝置200使用附加讀取電平組執行附加讀取操作。處理器120可以將具有與第一補償讀取電平組預定間隔的讀取電平確定為附加讀取電平組。例如,處理器120可以將與第一補償讀取電平組相關聯的軟讀取電平組確定為附加讀取電平組。
[0174]
處理器120可以將通過附加讀取操作讀取的數據存儲在存儲器110中,并且執行操作s1418、s1420、s1422、s1424和s1426。
[0175]
在操作s1418中,處理器120可以使用最小二進制法生成估計讀取電平組。
[0176]
例如,處理器120可以將軟讀取電平組確定為第二參考讀取電平組。處理器120可以使用第二參考讀取電平組和通過軟讀取操作讀取的數據,通過參照圖7描述的方法來確定第二估計讀取電平組。
[0177]
在操作s1420中,處理器120可以使用第二偏移電平信息生成第二補償讀取電平組。
[0178]
例如,處理器120可以使用第二查表作為第二偏移電平信息,第二查表指示p/e周期和存儲在存儲器110中并與最小二進制法相關聯的查表之中的偏移電平之間的關系。處理器120可以從存儲器110中獲取待讀取的存儲器單元的p/e周期信息,并且通過參考第二查表將第二偏移電平應用于第二估計讀取電平組中的至少一些來生成第二補償讀取電平組。
[0179]
在操作s1422中,處理器120可以控制半導體存儲器裝置200使用第二補償讀取電平組來執行讀取操作。在實施方案中,讀取操作可以是硬讀取操作或軟讀取操作。
[0180]
在操作s1424中,ecc解碼器133可以對從半導體存儲器裝置200讀取的數據執行錯誤校正解碼(即,ecc解碼),并確定ecc解碼是否通過。在實施方案中,錯誤校正解碼可以是硬判決解碼或軟判決解碼。
[0181]
當確定錯誤校正解碼通過時(操作s142中的“是”),在操作s1412中,處理器120可以成功完成讀取操作。
[0182]
當確定錯誤校正解碼沒有通過時(操作s1424中的“否”),在操作s1426中,處理器120可以將讀取操作確定為失敗并結束操作。在一些情況下,處理器120可以向外部提供讀取失敗信號。
[0183]
圖15a和圖15b是示出通過使用根據本發明第一實施例確定的補償讀取電平組而獲得的半導體存儲器裝置200的讀取操作實驗結果的圖表。
[0184]
圖表指示使用通過各種方法確定的讀取電平組來執行讀取操作時的錯誤位的數量。各圖表的橫軸指示每2kb的讀取數據的錯誤位數量,而各圖表的縱軸指示樣本的數量。也就是說,圖表指示半導體存儲器裝置200的樣本中錯誤位的數量的分布。
[0185]
圖表指示以下情況的錯誤位的數量:opt,通過最佳讀取電平組來執行讀取操作;ml,通過由平均電平法確定的估計讀取電平組來執行讀取操作;以及補償平均值電平(cml)-subopt和cml-opt,通過根據本發明第一實施例確定的補償讀取電平組來執行讀取操作。
[0186]
在實際使用半導體存儲器裝置200時,處理器120可能無法準確地獲知存儲器單元的閾值電壓分布。因此,處理器120可能無法準確地獲知最佳讀取電平組。因此,通過最佳讀取電平組來執行讀取操作的情況對應于理想情況,僅作為在通過補償讀取電平組來執行讀取操作的情況下的控制組。
[0187]
在通過補償讀取電平組來執行讀取操作的情況下,cml-opt指示當將偏移電平施加到所有讀取電壓r1至r7時的實驗結果,cml-subopt指示當將偏移電平施加到一些讀取電壓r2至r5并且沒有偏移電平施加到其它讀取電壓r1、r6和r7時的實驗結果。將根據不同讀取電平組的實驗結果標記為不同類型的線。
[0188]
圖15a示出了通過使用p/e周期為1000(即,1k)的半導體存儲器裝置200作為樣本而獲得的實驗結果。參照圖15a,當通過最佳讀取電平組來執行讀取操作時,幾乎不會出現40位或更多位的錯誤。另一方面,當通過估計讀取電平組來執行讀取操作時,甚至可能出現60位或更多位的錯誤。
[0189]
當根據本發明第一實施例通過補償讀取電平組來執行讀取操作時,幾乎不會出現50位或更多位的錯誤。出現多個錯誤位的情況的數量越少,將發生通過ecc解碼器133無法校正的錯誤的可能性就越低。因此,當通過補償讀取電平組來執行讀取操作時,與通過估計讀取電平組來執行讀取操作時相比,可以進一步降低將發生不可校正錯誤的可能性。
[0190]
當半導體存儲器裝置200的存儲器單元特性改變時,閾值電壓分布的偏斜度可能改變。根據半導體存儲器裝置200的存儲器單元特性,處理器120可以使用偏移電平彼此不同的查表。雖然處理器120控制具有特定存儲器單元特性的半導體存儲器裝置200,但是處理器120可以通過相同的方法來生成估計讀取電平組,并使用根據相應的存儲器單元特性預先確定的查表來生成補償讀取電平組。
[0191]
圖15b示出了通過使用各具有10000(即,10k)的p/e周期的半導體存儲器裝置200作為樣本而獲得的實驗結果。當在p/e周期為10000的情況下通過補償讀取電平組來執行讀取操作時,與通過估計讀取電平組來執行讀取操作時相比,可以進一步降低將發生不可校正錯誤的可能性,如p/e周期為1000的情況。
[0192]
當將發生不可校正錯誤的可能性降低時,讀取操作將成功完成的可能性可能會增加。因此,可以提高半導體存儲器裝置200的可靠性。當對讀取數據成功執行錯誤校正解碼時,可以在不施加用于讀取數據的附加讀取電壓的情況下結束讀取操作。因此,還可以提高讀取操作的性能。
[0193]
根據本發明的第二實施例,處理器120可以基于通過施加具有參考讀取電平組的讀取電壓從存儲器單元讀取的數據,使用讀取電平估計方法生成參數值。處理器120可以通過將參數偏移應用于參數值來生成補償參數值,參數偏移基于閾值電壓分布的偏斜度信息來確定。處理器120可以使用補償參數值,通過根據讀取電平估計方法執行讀取電平估計來生成補償讀取電平。在實施方案中,處理器120可以通過將基于閾值電壓分布的偏斜度信息確定的參數乘子應用于參數值來生成補償參數值,或者通過應用參數乘子和參數偏移兩者來生成補償參數值。處理器120可以使用補償讀取電平控制半導體存儲器裝置200的讀取操作,從而獲取其錯誤位被最小化的數據。將參照圖16和圖17詳細描述第二實施例。
[0194]
圖16是示出根據本發明第二實施例的處理器120的示圖。圖16的處理器120對應于參照圖4a描述的處理器。
[0195]
參照圖16,處理器120可以包括讀取電平估計器1610。
[0196]
讀取電平估計器1610可以使用讀取電平估計方法,諸如已經參照圖6和圖7描述的平均電平法或最小二進制法,來估計讀取電平組。讀取電平估計器1610可以包括參數估計器1612、參數補償器1614和讀取電平確定器1616。
[0197]
參數估計器1612可以接收通過使用參考讀取電平組讀取的數據,并且使用讀取電平估計方法生成用于確定估計讀取電平的估計參數值。
[0198]
例如,當ecc解碼器133對通過歷史讀取操作或rrt讀取操作而讀取的數據進行的錯誤校正解碼失敗時,參數估計器1612可以將已經用于執行讀取操作的讀取電平組確定為參考讀取電平組。當讀取電平估計器1610使用平均電平法確定讀取電平時,參數估計器1612可以接收ecc解碼器133在錯誤校正解碼中失敗的數據,并且將閾值電壓分布的平均閾值電壓和閾值電壓分布的標準差確定為估計參數值。
[0199]
參數補償器1614可以接收估計參數值和參數偏移信息,并且生成補償參數值。
[0200]
參數偏移信息可以包括查表,該查表指示參數偏移與元數據的值之間的關系。元數據可以包括p/e周期、編程數據的保留狀態等。可以基于樣本估計參數值和樣本最佳參數值之間的差來確定參數偏移。樣本最佳參數值可以在半導體存儲器裝置200被設置成樣本的情況下以實驗方式確定。例如,當參數值包括平均閾值電壓電平和標準差時,樣本最佳參數值可以根據元數據的值被確定為平均閾值電壓電平和標準差,元數據的值是根據半導體存儲器裝置200的存儲器單元特性以實驗方式得到的。查表可以根據存儲器單元分布的偏斜度預先確定,并存儲在存儲器110中。將參照圖17詳細描述根據本實施例的查表的示例。
[0201]
讀取電平確定器1616可以使用基于估計參數值和參數偏移信息確定的補償參數值來執行讀取電平估計,從而生成反映存儲器單元的偏斜度的補償讀取電平。
[0202]
圖17示出了根據本發明第二實施例的存儲器110中存儲的第一查表1710和第二查表1730。
[0203]
參照圖17,第一查表1710可以包括根據p/e周期的平均閾值電壓的偏移mo_11至
mo_37(mean)。
[0204]
當在閾值電壓分布不對稱的情況下通過基于高斯建模的閾值電壓估計方法確定閾值電壓分布的估計閾值電壓時,所確定的電壓可能根據半導體存儲器裝置200的存儲器單元特性而不同于實際平均閾值電壓。
[0205]
根據本發明的第二實施例,可以根據p/e周期和半導體存儲器裝置200的存儲器單元特性預先確定平均閾值電壓的偏移。平均閾值電壓的偏移可以補償根據存儲器單元特性以實驗方式確定的實際平均閾值電壓與估計平均閾值電壓之間的差。
[0206]
第二查表1730可以包括根據p/e周期的標準差的乘子sm_11至sm_37(sigma)。
[0207]
實際閾值電壓分布的標準差可能與預先確定為常數的標準差不同。
[0208]
根據本發明的第二實施例,標準差的乘子可以補償預先確定的標準差與根據存儲器單元特性以實驗方式確定的實際標準差之間的差。
[0209]
如參照圖12描述的查表1210,第一查表1710和第二查表1730可以不包括一些閾值電壓分布的平均閾值電壓的偏移及其標準差的乘子。例如,當在不管p/e周期如何的情況下存在平均閾值電壓具有接近于“0”的偏移的閾值電壓分布時,可以從第一查表1710中省略相應的閾值電壓分布的偏移。此外,當在不管p/e周期如何的情況下存在標準差接近預先確定的標準差的閾值電壓分布時,可以從第二查表1730中省略相應的閾值電壓分布的乘子。
[0210]
通過示例的方式,圖17示出了第一查表1710和第二查表1730,第一查表1710指示根據p/e周期的平均閾值電壓的偏移,第二查表1730指示標準差的乘子。然而,本實施例的查表不限于此。例如,存儲器110可以進一步根據編程數據的保留狀態存儲查表,查表指示平均閾值電壓的偏移和標準差的乘子。處理器120可以選擇性地使用與p/e周期相關聯的查表以及與保留狀態相關聯的查表。
[0211]
根據讀取電平估計方法,參數的偏移值或乘子值可能不同,或者參數的類型可能不同。例如,即使使用最小二進制法,如使用高斯建模方法,也可以使用平均閾值電壓和閾值電壓分布的標準差來生成估計讀取電平。然而,在使用高斯建模方法時與使用最小二進制法時之間,可以不同地確定用于生成補償讀取電平的參數偏移或參數乘子。存儲器110可以在其中存儲不同的查表,該查表包括用于多個讀取電平估計方法的參數的偏移。
[0212]
根據本發明的第二實施例,處理器120可以將根據半導體存儲器裝置200的存儲器單元特性的閾值電壓分布的偏斜度信息反映到補償參數值中。處理器120可以基于補償參數值確定接近最佳讀取電平組的補償讀取電平組。因此,當通過補償讀取電平組來執行讀取操作時,與通過估計讀取電平組來執行讀取操作時相比,可以進一步降低將發生不可校正錯誤的可能性。當將發生不可校正錯誤的可能性降低時,半導體存儲器裝置200的可靠性可以提高,并且讀取操作的性能也可以提高。
[0213]
雖然已經出于說明性目的描述了各個實施例,但是對于本領域技術人員將顯而易見的是,在不脫離如所附權利要求書所限定的本發明的精神和范圍的情況下,可以進行各種改變和修改。
技術特征:
1.一種控制器,所述控制器控制包括存儲器單元的存儲器裝置,所述控制器包括:存儲器,存儲偏移電平信息,所述偏移電平信息基于根據所述存儲器單元的特性和所述存儲器單元的高斯建模的樣本讀取電平來確定;以及處理器,基于所述高斯建模和從所述存儲器單元讀取的數據生成估計讀取電平,并且施加補償讀取電壓來控制所述存儲器裝置執行所述存儲器單元的讀取操作,其中所述補償讀取電壓通過將所述偏移電平信息應用于所述估計讀取電平來生成。2.根據權利要求1所述的控制器,其中所述樣本讀取電平是所述存儲器裝置能夠施加到所述存儲器單元的多個讀取電平之中的、具有相同的存儲器單元特性的樣本存儲器裝置中的讀取數據中的錯誤位的數量被最小化的讀取電平。3.根據權利要求1所述的控制器,其中所述處理器通過平均電平法來生成所述估計讀取電平,所述平均電平法包括:基于讀取數據,計算與閾值電壓區段相對應的區段單元數量;基于所述區段單元數量和設定標準差,確定各個閾值電壓分布的平均閾值電壓電平;并且將相鄰平均閾值電壓電平之間的中間值確定為所述估計讀取電平。4.根據權利要求3所述的控制器,其中所述處理器通過最小二進制法來更新所述估計讀取電平,所述最小二進制法包括:基于所述平均閾值電壓電平和所述設定標準差,根據具有新區段單元數量之中的最小區段單元數量的閾值電壓區段中的閾值電壓電平,確定存儲器單元的數量的函數,所述新區段單元數量對應于由附加讀取電平劃分的閾值電壓區段,所述附加讀取電平與所述補償讀取電壓的讀取電平具有設定間隔;并且將與所確定的函數的最小值相對應的閾值電壓電平確定為新估計讀取電平。5.根據權利要求4所述的控制器,其中所述偏移電平信息包括與所述平均電平法相關聯的偏移電平以及與所述最小二進制法相關聯的偏移電平。6.根據權利要求1所述的控制器,其中所述處理器通過以下方式來生成所述估計讀取電平:基于所述平均閾值電壓電平和設定標準差,根據具有區段單元數量之中的最小區段單元數量的閾值電壓區段中的閾值電壓電平,確定存儲器單元的數量的函數,所述區段單元數量對應于由附加讀取電平劃分的閾值電壓區段,所述附加讀取電平與硬讀取電壓具有設定間隔;并且將與所確定的函數的最小值相對應的閾值電壓電平確定為所述估計讀取電平。7.根據權利要求1所述的控制器,其中所述偏移電平信息包括查表,所述查表指示與所述存儲器單元相關聯的元數據的值和與讀取電壓相對應的偏移電平之間的關系。8.根據權利要求7所述的控制器,其中所述元數據包括所述存儲器單元的編程/擦除周期即p/e周期或在所述存儲器單元中編程的數據的保留狀態。9.根據權利要求7所述的控制器,其中所述偏移電平信息包括用于讀取所述存儲器單元的多個讀取電壓之中的一個或多個讀取電壓的偏移電平,其中所述多個讀取電壓中的每一個的一個或多個偏移電平超過設定幅度。10.根據權利要求1所述的控制器,其中所述處理器通過控制所述存儲器裝置以通過使用歷史讀取電平或讀取重試表即rrt中包括的讀取電平對所述存儲器單元執行讀取操作,來獲得從所述存儲器單元讀取的數據,并且當檢測到對讀取數據的錯誤校正解碼失敗時生成所述估計讀取電平。11.根據權利要求1所述的控制器,進一步包括錯誤校正碼解碼器即ecc解碼器,所述
ecc解碼器使用補償讀取電平對從所述存儲器單元讀取的數據執行錯誤校正解碼。12.一種控制器,所述控制器控制包括存儲器單元的存儲器裝置,所述控制器包括:存儲器,存儲參數偏移信息,所述參數偏移信息基于根據所述存儲器單元的特性和所述存儲器單元的高斯建模的樣本參數值來確定;以及處理器,基于從所述存儲器單元讀取的數據和所述高斯建模生成估計參數值,通過將參數偏移信息應用于所述估計參數值來生成補償參數值,并且控制所述存儲器裝置使用通過基于所述補償參數值估計讀取電平而生成的補償讀取電平來執行讀取操作。13.根據權利要求12所述的控制器,其中所述參數偏移信息基于所述樣本參數值和樣本估計參數值預先確定,所述樣本參數值和所述樣本估計參數值根據所述存儲器裝置的存儲器單元特性以實驗方式確定。14.根據權利要求12所述的控制器,其中所述處理器通過使用平均電平法來生成所述補償讀取電平,所述平均電平法包括:基于讀取數據,計算與閾值電壓區段相對應的區段單元數量;通過基于所述區段單元數量和標準差確定各個閾值電壓分布的估計平均閾值電壓電平來生成所述估計參數值;通過將所述參數偏移信息應用于所述估計平均閾值電壓電平來生成補償平均閾值電壓電平;并且將相鄰補償平均閾值電壓電平之間的中間值確定為所述補償讀取電平。15.根據權利要求14所述的控制器,其中所述存儲器進一步存儲參數的乘子信息,所述參數的乘子信息基于所述樣本參數值來確定,并且其中所述處理器進一步執行通過將所述參數的乘子信息應用于設定標準差來生成補償標準差的操作,以確定所述估計平均閾值電壓電平。16.根據權利要求15所述的控制器,其中所述處理器通過最小二進制法來更新所述補償讀取電平,所述最小二進制法包括:基于所述補償平均閾值電壓電平和所述補償標準差,根據具有新區段單元數量之中的最小區段單元數量的閾值電壓區段中的閾值電壓電平,確定存儲器單元的數量的函數,所述新區段單元數量對應于由附加讀取電平劃分的閾值電壓區段,所述附加讀取電平與所述補償讀取電平具有設定間隔;并且將與所確定的函數的最小值相對應的閾值電壓電平確定為新補償讀取電平。17.根據權利要求16所述的控制器,其中所述偏移電平信息包括與所述平均電平法相關聯的偏移電平以及與所述最小二進制法相關聯的偏移電平。18.根據權利要求12所述的控制器,其中所述參數偏移信息包括查表,所述查表指示與所述存儲器單元相關聯的元數據的值和與讀取電壓相對應的參數偏移之間的關系。19.根據權利要求18所述的控制器,其中所述元數據包括所述存儲器單元的編程/擦除周期即p/e周期或在所述存儲器單元中編程的數據的保留狀態。20.一種存儲器系統,包括:存儲器裝置,包括多個存儲器單元;以及控制器,聯接到所述存儲器裝置,并且包括處理器,所述處理器被配置成:使用高斯建模,基于從所述存儲器單元讀取的數據,生成估計讀取電平;基于所述估計讀取電平和偏移電平生成補償讀取電平,所述偏移電平基于根據所述存儲器單元的特性的最佳讀取電平與根據所述高斯建模的讀取電平之間的差來確定;并且控制所述存儲器裝置使用所述補償讀取電平對所述存儲器單元執行讀取操作。
技術總結
本申請提供了一種控制器,用于控制包括存儲器單元的存儲器裝置,該控制器包括:存儲器,適用于存儲偏移電平信息,該偏移電平信息基于根據存儲器單元的特性和存儲器單元的高斯建模的樣本讀取電平來確定;以及處理器,適用于基于高斯建模和從存儲器單元讀取的數據生成估計讀取電平,并且施加補償讀取電壓來控制存儲器裝置以執行存儲器單元的讀取操作,其中補償讀取電壓通過將偏移電平信息應用于估計讀取電平來生成。取電平來生成。取電平來生成。
