TW202414414A - 記憶體系統 - Google Patents
記憶體系統 Download PDFInfo
- Publication number
- TW202414414A TW202414414A TW112115232A TW112115232A TW202414414A TW 202414414 A TW202414414 A TW 202414414A TW 112115232 A TW112115232 A TW 112115232A TW 112115232 A TW112115232 A TW 112115232A TW 202414414 A TW202414414 A TW 202414414A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- read voltage
- memory cells
- value
- memory
- Prior art date
Links
- 239000004065 semiconductor Substances 0.000 claims abstract description 63
- 238000012887 quadratic function Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 claims description 5
- 238000004904 shortening Methods 0.000 abstract description 2
- 238000000034 method Methods 0.000 description 110
- 239000010410 layer Substances 0.000 description 94
- 238000007689 inspection Methods 0.000 description 80
- 230000008569 process Effects 0.000 description 48
- 238000009826 distribution Methods 0.000 description 46
- 238000010586 diagram Methods 0.000 description 39
- 238000012545 processing Methods 0.000 description 28
- 238000004364 calculation method Methods 0.000 description 20
- 238000012886 linear function Methods 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 9
- 230000000694 effects Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 8
- 239000000758 substrate Substances 0.000 description 7
- 238000013500 data storage Methods 0.000 description 4
- 230000014759 maintenance of location Effects 0.000 description 4
- WFKWXMTUELFFGS-UHFFFAOYSA-N tungsten Chemical compound [W] WFKWXMTUELFFGS-UHFFFAOYSA-N 0.000 description 4
- 229910052721 tungsten Inorganic materials 0.000 description 4
- 239000010937 tungsten Substances 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 2
- 229910052581 Si3N4 Inorganic materials 0.000 description 2
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 2
- 238000009413 insulation Methods 0.000 description 2
- 239000011229 interlayer Substances 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 2
- HQVNEWCFYHHQES-UHFFFAOYSA-N silicon nitride Chemical compound N12[Si]34N5[Si]62N3[Si]51N64 HQVNEWCFYHHQES-UHFFFAOYSA-N 0.000 description 2
- 229910052814 silicon oxide Inorganic materials 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 208000011580 syndromic disease Diseases 0.000 description 2
- 101100481704 Arabidopsis thaliana TMK3 gene Proteins 0.000 description 1
- 101001121408 Homo sapiens L-amino-acid oxidase Proteins 0.000 description 1
- 101000578349 Homo sapiens Nucleolar MIF4G domain-containing protein 1 Proteins 0.000 description 1
- 102100026388 L-amino-acid oxidase Human genes 0.000 description 1
- 102100027969 Nucleolar MIF4G domain-containing protein 1 Human genes 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- 238000012888 cubic function Methods 0.000 description 1
- -1 for example Substances 0.000 description 1
- 239000012535 impurity Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- TWNQGVIAIRXVLR-UHFFFAOYSA-N oxo(oxoalumanyloxy)alumane Chemical compound O=[Al]O[Al]=O TWNQGVIAIRXVLR-UHFFFAOYSA-N 0.000 description 1
- 238000005036 potential barrier Methods 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Abstract
實施例提供一種能夠縮短巡檢操作所需時間的記憶體系統。
記憶體系統包括:半導體記憶體,包括具有多個記憶體胞元的胞元單元、以及用於控制所述多個記憶體胞元的控制電路;以及記憶體控制器,被配置成控制半導體記憶體。控制電路被配置成:使用一或多個讀取電壓來對胞元單元執行資料讀取操作,藉由資料讀取操作來獲取第一資料,基於第一資料來產生具有較第一資料小的資料大小的第二資料,以及將第二資料傳輸至記憶體控制器。記憶體控制器被配置成基於第二資料來判斷是否重寫寫入胞元單元中的頁面資料。
Description
[相關申請案的交叉參考]
本申請案基於在2022年9月20日提出申請的日本專利申請案第2022-149189號並主張其優先權權益,所述日本專利申請案的全部內容併入本案供參考。
在本文中闡述的實施例大體而言是有關於一種記憶體系統。
已知具有以二維方式或三維方式排列的記憶體胞元的非揮發性半導體記憶體,例如反及(NAND)快閃記憶體。記憶體系統可配置有NAND型快閃記憶體、以及控制所述NAND型快閃記憶體的記憶體控制器。
實施例提供一種能夠縮短巡檢操作(patrol operation)所需時間的記憶體系統。
一般而言,根據一個實施例,一種記憶體系統包括:半導體記憶體,包括具有多個記憶體胞元的胞元單元、以及用於控制所述多個記憶體胞元的控制電路;以及控制器,被配置成控制半導體記憶體。控制電路被配置成:使用一或多個讀取電壓來對胞元單元執行資料讀取操作,藉由資料讀取操作來獲取第一資料,基於第一資料來產生具有較第一資料小的資料大小的第二資料,以及將第二資料傳輸至控制器,且控制器被配置成基於第二資料來判斷是否重寫寫入胞元單元中的頁面資料。
在下文中,將參照附圖來闡述實施例。在以下說明中,具有相同功能及配置的元件由相同的參考標記來表示。此外,以下闡述的實施例是用於體現實施例的技術思想的裝置及方法的實例,並且組件的材料、形狀、結構、排列方式等不限於以下內容。
功能區塊可由硬體、電腦軟體或所述兩者的組合來實施。不需要如以下實例中一般對功能區塊進行區分。舉例而言,一些功能可由不同於所示功能區塊的功能區塊來執行。此外,所示的功能區塊可劃分成更小的功能子區塊。在下文中,作為半導體記憶體,將闡述以三維方式堆疊的NAND快閃記憶體作為實例,在所述以三維方式堆疊的NAND快閃記憶體中,記憶體胞元電晶體以三維方式堆疊於半導體基板上。
1.第一實施例
對第一實施例的記憶體系統進行闡述。
1.1配置
1.1.1記憶體系統
首先,將闡述第一實施例的記憶體系統的配置。圖1是示出根據第一實施例的記憶體系統的配置的方塊圖。
記憶體系統1包括半導體記憶體10及記憶體控制器20。記憶體系統1連接至外部主機2,並且可因應於來自主機2的指令而執行各種操作。
半導體記憶體10包括例如一或多個NAND快閃記憶體晶片10_1、10_2、...、10_n(n是等於或大於1的自然數)。在此示例性配置中,半導體記憶體10包括四個NAND快閃記憶體晶片10_1、10_2、10_3及10_4。NAND快閃記憶體晶片10_1至10_4中的每一者包括多個記憶體胞元,並且以非揮發性方式儲存資料。以下闡述半導體記憶體10中提供的NAND快閃記憶體晶片10_1至10_4的細節。此後,NAND快閃記憶體晶片10_1至10_4亦被稱為NAND記憶體晶片。
記憶體控制器20經由NAND匯流排而連接至半導體記憶體10。NAND匯流排用於根據NAND介面標準來傳輸及接收訊號。記憶體控制器20亦經由主機匯流排而連接至主機2。記憶體控制器20控制半導體記憶體10。記憶體控制器20因應於自主機2接收到的指令來存取半導體記憶體10。
包括半導體記憶體10及記憶體控制器20的記憶體系統1可構成例如一個半導體裝置。記憶體系統1的實例包括固態驅動機(solid state drive,SSD)、包括SD®卡的記憶體卡及類似結構。舉例而言,記憶體控制器20配置有例如系統晶片(system-on-a-chip,SoC)等電路。
主機2例如為資料中心中的伺服器或個人電腦。
1.1.2記憶體控制器
接下來,參照圖1闡述記憶體控制器20的配置。記憶體控制器20包括處理器(例如,中央處理單元(central processing unit,CPU))21、記憶體22、錯誤檢查及校正(error checking and correcting,ECC)電路23_1及23_2、NAND介面電路(NAND I/F)24_1及24_2、以及主機介面電路(host I/F)25。
處理器21控制整個記憶體控制器20的操作。舉例而言,當處理器21自主機2接收到寫入指令時,處理器21根據所接收到的寫入指令向NAND介面電路24_1或24_2發出寫入命令。當處理器21自主機2接收讀取指令時,處理器21根據所接收到的讀取指令向NAND介面電路24_1或24_2發出讀取命令。當執行資料抹除操作時,處理器21向NAND介面電路24_1或24_2發出抹除命令。處理器21包括刷新確定電路21A。刷新確定電路21A基於對錯誤位元的數目的估計值(在本文中被稱為「失敗位元計數(fail bit count)」或「FBC」)或FBC本身來判斷是否執行刷新處理。稍後闡述刷新確定電路21A。處理器21執行用於管理半導體記憶體10的各種處理,例如損耗平衡(wear leveling)及類似處理。在本說明書中闡述的處理器21(及刷新確定電路21A)的功能可藉由由處理器21執行軟體(或韌體)來實施,或者可藉由硬體(或專用電路)來實施。
舉例而言,記憶體22是例如動態隨機存取記憶體(dynamic random access memory,DRAM)及靜態隨機存取記憶體(static random access memory,SRAM)等半導體記憶體,並且用作處理器21的工作區域。記憶體22用作用於儲存各種資訊的緩衝器,例如用於管理半導體記憶體10的韌體、各種管理表及類似結構。管理表的一個實例包括與下述讀取電壓相關的歷史值表。
ECC電路23_1及23_2執行資料的錯誤校正處理。在資料寫入操作時,ECC電路23_1及23_2基於自主機2接收到的寫入資料而產生奇偶校驗(parity),並將所產生的奇偶校驗添加至寫入資料。在資料讀取操作時,ECC電路23_1及23_2基於自半導體記憶體10接收到的讀取資料而產生校驗子(syndrome),並基於所產生的校驗子來偵測及校正讀取資料的錯誤。
NAND介面電路24_1經由NAND匯流排而連接至NAND記憶體晶片10_1及10_2,並且管理與NAND記憶體晶片10_1及10_2的通訊。NAND介面電路24_1基於自處理器21接收到的指令而向NAND記憶體晶片10_1及10_2傳輸各種訊號並且亦自NAND記憶體晶片10_1及10_2接收各種訊號。
類似地,NAND介面電路24_2經由NAND匯流排而連接至NAND記憶體晶片10_3及10_4,並且管理與NAND記憶體晶片10_3及10_4的通訊。NAND介面電路24_2基於自處理器21接收到的指令而向NAND記憶體晶片10_3及10_4傳輸各種訊號並且亦自NAND記憶體晶片10_3及10_4接收各種訊號。
主機介面電路25經由主機匯流排而連接至主機2,並管理與主機2的通訊。主機介面25將自主機2接收到的指令及資料分別傳送至處理器21及記憶體22。
1.1.3半導體記憶體
接下來,闡述設置於半導體記憶體10中的NAND記憶體晶片10_1至10_4的配置。以下闡述NAND記憶體晶片10_1的配置。其他NAND記憶體晶片10_2至10_4中的每一者的配置相同於NAND記憶體晶片10_1的配置。
圖2示出根據第一實施例的NAND記憶體晶片10_1的配置。
NAND記憶體晶片10_1包括記憶體胞元陣列11、輸入/輸出電路12、邏輯控制電路13、就緒/忙碌電路14、暫存器組15、控制電路16、電壓產生電路17、列解碼器18、行解碼器19A、資料暫存器19B及感測放大器19C。暫存器組15包括狀態暫存器15A、位址暫存器15B及命令暫存器15C。
記憶體胞元陣列11包括一或多個區塊BLK0、BLK1、BLK2、...、BLKm(m是等於或大於0的整數)。所述多個區塊BLK0至BLKm中的每一者包括與列及行相關聯的多個記憶體胞元電晶體(亦被稱為記憶體胞元)。記憶體胞元電晶體是可電性抹除及程式化的非揮發性記憶體胞元。記憶體胞元陣列11包括多條字元線、多條位元線、及用於向記憶體胞元電晶體施加電壓的源極線。以下闡述區塊BLKm的具體配置。
輸入/輸出電路12及邏輯控制電路13經由輸入/輸出端子(例如,經由NAND匯流排)而連接至記憶體控制器20。輸入/輸出電路12經由輸入/輸出端子將輸入/輸出訊號(I/O訊號)DQ(例如,DQ0、DQ1、DQ2、...、DQ7)傳輸至記憶體控制器20,並經由輸入/輸出端子自記憶體控制器20接收輸入/輸出訊號(I/O訊號)DQ(例如,DQ0、DQ1、DQ2、...、DQ7)。I/O訊號DQ傳遞命令、位址、資料等。
邏輯控制電路13經由輸入/輸出端子自記憶體控制器20接收控制訊號。控制訊號包括例如晶片賦能訊號CEn、命令鎖存賦能訊號CLE、位址鎖存賦能訊號ALE、寫入賦能訊號WEn、讀取賦能訊號REn及寫入保護訊號WPn。添加至訊號名稱的「n」表示所述訊號是低態有效訊號(active low signal)。
當多個NAND記憶體晶片被安裝於半導體記憶體10上時,在一個NAND記憶體晶片被選擇時,晶片賦能訊號CEn被斷言。命令鎖存賦能訊號CLE使得作為訊號DQ進行傳輸的命令能夠被鎖存至命令暫存器15C中。位址鎖存賦能訊號ALE使得作為訊號DQ傳輸的位址能夠被鎖存至位址暫存器15B中。寫入賦能訊號WEn使得作為訊號DQ傳輸的資料能夠被儲存於資料暫存器19B中。讀取賦能訊號REn使得自記憶體胞元陣列11讀取的資料能夠被輸出作為訊號DQ。當NAND記憶體晶片上的資料寫入操作及資料抹除操作被禁止時,寫入保護訊號WPn被斷言。
就緒/忙碌電路14因應於來自控制電路16的控制而產生就緒/忙碌訊號R/Bn。就緒/忙碌訊號R/Bn指示NAND記憶體晶片10_1是處於就緒狀態還是忙碌狀態。就緒狀態指示NAND記憶體晶片10_1處於可自記憶體控制器20接收指令的狀態。忙碌狀態指示NAND記憶體晶片10_1處於無法自記憶體控制器20接收指令的狀態。記憶體控制器20可藉由自NAND記憶體晶片10_1接收就緒/忙碌訊號R/Bn來知曉NAND記憶體晶片10_1是處於就緒狀態還是忙碌狀態。
狀態暫存器15A儲存NAND記憶體晶片10_1的操作所需的狀態資訊STS。狀態暫存器15A根據控制電路16的指令將狀態資訊STS傳送至輸入/輸出電路12。
位址暫存器15B儲存自輸入/輸出電路12傳送的位址ADD。位址ADD包括列位址及行位址。列位址包括例如指定欲被操作的區塊BLKm的區塊位址、以及指定欲在指定區塊中操作的字元線WL的頁面位址。
命令暫存器15C儲存自輸入/輸出電路12傳送的命令CMD。命令CMD包括例如指示控制電路16實行資料寫入操作的寫入命令、指示資料讀取操作的讀取命令、及指示資料抹除操作的抹除命令。
舉例而言,靜態隨機存取記憶體(SRAM)用於狀態暫存器15A、位址暫存器15B及命令暫存器15C。
控制電路16自命令暫存器15C接收命令,並根據基於所述命令的序列來整體控制NAND記憶體晶片10_1。
控制電路16控制電壓產生電路17、列解碼器18、行解碼器19A、資料暫存器19B、感測放大器19C等,以執行資料寫入操作、資料讀取操作及資料抹除操作。具體而言,控制電路16基於自命令暫存器15C接收的寫入命令而將資料寫入由位址ADD指定的所述多個記憶體胞元電晶體中。控制電路16亦基於自命令暫存器15C接收的讀取命令而自由位址ADD指定的所述多個記憶體胞元電晶體讀取資料。控制電路16亦基於自命令暫存器15C接收的抹除命令而抹除儲存於由位址ADD指定的區塊中的資料。
控制電路16亦包括FBC估計值產生電路16A。FBC估計值產生電路16A計算FBC估計值。稍後闡述FBC估計值及FBC估計值產生電路16A。在本說明書中闡述的控制電路(及FBC估計值產生電路16A)的功能可由執行軟體(或韌體)的控制電路16來實施,或者可由硬體(或專用電路)來實施。
電壓產生電路17經由電源端子(圖中未示出)自NAND記憶體晶片10_1的外部接收電源電壓VDD及接地電壓VSS。電源電壓VDD是自半導體記憶體10的外部供應的外部電壓,並且例如為3.3伏特。接地電壓VSS是自半導體記憶體10的外部供應的外部電壓,並且例如為0伏特。
電壓產生電路17使用電源電壓VDD來產生資料寫入操作、資料讀取操作及資料抹除操作所必需的多個電壓。電壓產生電路17將所產生的電壓供應至記憶體胞元陣列11、列解碼器18、感測放大器19C等。
列解碼器18自位址暫存器15B接收列位址,並對此列位址進行解碼。列解碼器18基於對列位址的解碼結果而選擇所述多個區塊中的一者,並進一步選擇所選擇的區塊BLKm中的字元線WL。此外,列解碼器18將自電壓產生電路17供應的所述多個電壓傳送至所選擇的區塊BLKm。
行解碼器19A自位址暫存器15B接收行位址,並對此行位址進行解碼。行解碼器19A基於對行位址的解碼結果而選擇資料暫存器19B中的鎖存電路。
資料暫存器19B包括多個鎖存電路。鎖存電路臨時儲存寫入資料或讀取資料。
在資料讀取操作中,感測放大器19C感測自記憶體胞元電晶體讀取的資料並將其放大至位元線中。此外,感測放大器19C暫時儲存自記憶體胞元電晶體讀取的讀取資料DAT,並將所儲存的讀取資料DAT傳送至資料暫存器19B。在資料寫入操作中,感測放大器19C臨時儲存經由資料暫存器19B自輸入/輸出電路12傳送的寫入資料DAT。此外,感測放大器19C將寫入資料DAT傳送至位元線。
1.1.4記憶體胞元陣列
1.1.4.1記憶體胞元陣列的電路配置
接下來,闡述NAND記憶體晶片10_1的記憶體胞元陣列11的電路配置。如上所述,記憶體胞元陣列11包括所述多個區塊BLK0至BLKm。以下闡述區塊BLKm的電路配置。
圖3是記憶體胞元陣列11中的區塊BLKm的電路圖。區塊BLKm包括例如多個串單元SU0、SU1、SU2及SU3。此後,當闡述串單元SU時,指示串單元SU0至SU3中的任一者。串單元SU包括多個NAND串(或記憶體串)NS。
此處,為了簡潔起見,示出了其中NAND串NS包括例如八個記憶體胞元電晶體MT0、MT1、MT2、...、MT7及二個選擇電晶體ST1及ST2的實例。此後,當闡述記憶體胞元電晶體MT時,指示記憶體胞元電晶體MT0至MT7中的任一者。
記憶體胞元電晶體MT包括控制閘極及電荷儲存層,並且以非揮發性方式儲存資料。記憶體胞元電晶體MT0至MT7串聯連接於選擇電晶體ST1的源極與選擇電晶體ST2的汲極之間。記憶體胞元電晶體MT可儲存1位元資料或2位元或多於2位元的資料。
設置於串單元SU0中的多個選擇電晶體ST1的閘極連接至選擇閘極線SGD0。類似地,串單元SU1至SU3的選擇電晶體ST1的閘極分別連接至選擇閘極線SGD1至SGD3。選擇閘極線SGD0至SGD3中的每一者由列解碼器18獨立地控制。
設置於串單元SU0中的多個選擇電晶體ST2的閘極連接至選擇閘極線SGS。類似地,串單元SU1至SU3中的每一者的多個選擇電晶體ST2的閘極連接至選擇閘極線SGS。不同的選擇閘極線SGS可分別連接至串單元SU0至SU3的選擇電晶體ST2的閘極。選擇電晶體ST1及ST2用於在各種操作中選擇串單元SU。
設置於區塊BLKm中的記憶體胞元電晶體MT0至MT7的控制閘極分別連接至字元線WL0至WL7。字元線WL0至WL7中的每一者由列解碼器18獨立地控制。
位元線BL0至BLr(r為等於或大於0的整數)中的每一者連接至所述多個區塊BLK0至BLKm,並且連接至設置於區塊BLKm中的串單元SU中的一個NAND串NS。亦即,位元線BL0至BLr中的每一者連接至位於區塊BLKm中的矩陣中的NAND串NS之中同一列中的多個NAND串NS的選擇電晶體ST1的汲極。源極線SL連接至所述多個區塊BLK0至BLKm。亦即,源極線SL連接至設置於區塊BLKm中的所述多個選擇電晶體ST2的源極。
簡而言之,串單元SU包括連接至不同位元線BL並連接至同一選擇閘極線SGD的多個NAND串NS。區塊BLKm包括共享字元線WL的多個串單元SU。此外,記憶體胞元陣列11包括共享位元線BL的多個區塊BLK0至BLKm。
區塊BLKm例如為抹除資料的單元。亦即,儲存於設置於區塊BLKm中的記憶體胞元電晶體MT中的資料被一次全部抹除。多個區塊中的資料針對每一區塊被依序抹除。在一些實施例中,可並列抹除多個區塊中的資料。應注意,可以串單元SU為單位來對資料進行抹除,或者可以小於串單元SU的單位對資料進行抹除。
在一個串單元SU中共享字元線WL的所述多個記憶體胞元電晶體MT被稱為胞元單元CU。儲存於設置於胞元單元CU中的所述多個記憶體胞元電晶體MT中的每一者中的1位元資料的集合被稱為頁面資料。胞元單元CU的儲存容量根據儲存於記憶體胞元電晶體MT中的資料的位元數目而改變。舉例而言,當每一記憶體胞元電晶體MT儲存1位元資料時,胞元單元CU儲存一頁資料。當每一記憶體胞元電晶體MT儲存2位元資料時,胞元單元CU儲存二頁資料。當每一記憶體胞元電晶體MT儲存3位元資料時,胞元單元CU儲存三頁資料。
以頁面資料為單位對胞元單元CU實行資料寫入操作及資料讀取操作。換言之,對連接至一個串單元SU的一個字元線WL的所述多個記憶體胞元電晶體MT共同實行資料讀取操作及資料寫入操作。
設置於區塊(BLKm)中的串單元的數目不限於4個(SU0至SU3),而是可自由地設置。設置於串單元SU中的NAND串NS的數目以及設置於NAND串NS中的記憶體胞元電晶體及選擇電晶體的數目亦可自由地設置。此外,記憶體胞元電晶體MT可為使用絕緣膜作為電荷儲存層的金屬-氧化物-氮化物-氧化物-矽(metal-oxide-nitride-oxide-silicon,MONOS)型,或者可為使用導電層作為電荷儲存層的浮動閘極(floating gate,FG)型。
1.1.4.2記憶體胞元陣列的結構
接下來,闡述第一實施例的NAND記憶體晶片10_1中的記憶體胞元陣列11的結構的一個實例。圖4A是示出根據第一實施例的NAND記憶體晶片10_1中的記憶體胞元陣列11的剖視結構的圖式。在圖4A中,平行於半導體基板30的平面並且彼此正交的二個方向被定義為X方向與Y方向,並且與包括X方向及Y方向的平面(XY平面)正交的方向被定義為Z方向。X方向對應於字元線WL的延伸方向,Y方向對應於位元線BL的延伸方向,且Z方向對應於字元線WL堆疊的方向。在圖4A中,為了便於查看圖式,根據需要省略了佈線、接觸件及絕緣層等組件。
如圖4A所示,記憶體胞元陣列11包括設置於半導體基板30之上的導電層31至35、記憶體柱MP、接觸插塞CV1及狹縫SLT。
導電層31設置於半導體基板30之上。導電層31被形成為平行於半導體基板30的主表面(或XY平面)的平板形狀。導電層31充當源極線SL。導電層31含有例如摻雜有雜質的複晶矽或鎢(W)。
在導電層31上,沿著XZ平面的多個狹縫SLT位於Y方向上。導電層31上的相鄰狹縫SLT之間的結構(或堆疊體)對應於例如多個串單元SU。
導電層32、多個導電層33及導電層34自下層開始依此次序設置於導電層31上的相鄰狹縫SLT之間。在該些導電層中,在Z方向上彼此相鄰的導電層進行堆疊,且在其間夾置有層間絕緣膜(圖中未示出)。導電層32至34被形成為平行於XY平面的平板形狀。導電層32充當選擇閘極線SGS。所述多個導電層33自下層起依此次序充當字元線WL0至WL7。導電層34充當選擇閘極線SGD。導電層32至34含有例如鎢(W)或複晶矽。
多個記憶體柱MP例如在X方向及Y方向上以交錯的圖案進行定位。所述多個記憶體柱MP中的每一者在狹縫SLT之間的堆疊體中在Z方向上延伸(或穿透)。每一記憶體柱MP穿過導電層34、33及32,以便自導電層34上方到達導電層31的上表面。每一記憶體柱MP包括例如區塊絕緣層40、電荷儲存層41、隧道絕緣層(亦被稱為隧道絕緣膜)42及半導體層43。記憶體柱MP中的每一者充當一個NAND串NS。
多個導電層35經由層間絕緣膜設置於記憶體柱MP之上。所述多個導電層35位於X方向上。每一導電層35是在Y方向上延伸的線形佈線層,並且充當位元線BL。每一導電層35電性連接至每一串單元SU的一個對應的記憶體柱MP。具體而言,在每一串單元SU中,接觸插塞CV1設置於每一記憶體柱MP的半導體層43上,並且一個導電層35設置於接觸插塞CV1上。導電層35含有例如鋁(Al)或鎢(W)。接觸插塞CV1包括導電層,例如鎢(W)。
上述多個結構位於與對圖4A進行闡述的紙面(深度方向)正交的方向上,並且串單元SU配置有位於深度方向上的所述多個記憶體柱MP(亦即,NAND串NS)的集合。
字元線WL的數目以及選擇閘極線SGD及SGS的數目分別根據記憶體胞元電晶體MT的數目以及選擇電晶體ST1及ST2的數目而改變。
圖4B是沿著圖4A的V-V線的剖視圖,並且示出記憶體胞元陣列11中的記憶體柱MP的剖視結構。圖4B示出在平行於半導體基板30的表面並包括導電層33的層中的記憶體柱MP的剖面。
如上所述,記憶體柱MP包括例如區塊絕緣層40、電荷儲存層41、隧道絕緣層(亦被稱為隧道絕緣膜)42及半導體層43。具體而言,區塊絕緣層40設置於用於形成記憶體柱MP的記憶體孔的內壁上。電荷儲存層41設置於區塊絕緣層40的內壁上。隧道絕緣層42設置於電荷儲存層41的內壁上。此外,半導體層43設置於隧道絕緣層42的內壁上。換言之,例如,半導體層43設置於記憶體柱MP的中心部分中。隧道絕緣層42圍繞半導體層43的側表面。電荷儲存層41圍繞隧道絕緣層42的側表面。區塊絕緣層40圍繞電荷儲存層41的側表面。導電層33圍繞區塊絕緣層40的側表面。記憶體柱MP可具有其中在半導體層43中設置核心絕緣層的結構。
在上述記憶體柱MP的結構中,記憶體柱MP與導電層32相交的部分充當選擇電晶體ST2。記憶體柱MP與所述多個導電層33相交的部分分別充當記憶體胞元電晶體MT0至MT7。此外,記憶體柱MP與導電層34相交的部分充當選擇電晶體ST1。
半導體層43充當記憶體胞元電晶體MT0至MT7以及選擇電晶體ST1及ST2的通道層。NAND串NS的電流路徑形成於半導體層43中。
當電荷自半導體層43注入至電荷儲存層41中時,或者當儲存於電荷儲存層41中的電荷擴散至半導體層43時,隧道絕緣層42充當電位障壁(potential barrier)。隧道絕緣層42包括例如氧化矽膜。
電荷儲存層41具有對自半導體層43注入記憶體胞元電晶體MT0至MT7中的電荷進行儲存的功能。電荷儲存層41例如為絕緣層,並且包含氮化矽膜。
區塊絕緣層40防止儲存於電荷儲存層41中的電荷擴散至導電層33(字元線WL)。區塊絕緣層40包括例如氧化鋁層、氧化矽層及氮化矽層。
1.1.5記憶體胞元電晶體的臨限電壓分佈
接下來,將闡述臨限電壓分佈與記憶體胞元電晶體MT可儲存的資料之間的關係。
圖5是示出資料與記憶體胞元電晶體MT的臨限電壓分佈之間的關係的圖式。此處,作為儲存方法的實例,示出了將3位元資料儲存至一個記憶體胞元電晶體MT的三層級胞元(triple-level cell,TLC)方法。在本實施例中,亦可應用在一個記憶體胞元電晶體MT中儲存1位元資料的單層級胞元(single-level cell,SLC)方法、在一個記憶體胞元電晶體MT中儲存2位元資料的多層級胞元(multi-level cell,MLC)方法、在一個記憶體胞元電晶體MT中儲存4位元資料的四層級胞元(quad-level cell,QLC)方法或類似方法。
在TLC方法中,記憶體胞元電晶體MT儲存包括低位元、中間位元及高位元的3位元資料。當記憶體胞元電晶體MT儲存三個位元時,根據多個臨限電壓,記憶體胞元電晶體MT可處於八種狀態中的任一狀態。所述八種狀態自最低依此次序被稱為狀態「Er」、「A」、「B」、「C」、「D」、「E」、「F」及「G」。屬於狀態「Er」、「A」、「B」、「C」、「D」、「E」、「F」及「G」中的每一者的所述多個記憶體胞元電晶體MT形成如圖5所示的臨限電壓分佈。
資料「111」、「110」、「100」、「000」、「010」、「011」、「001」及「101」分別被分配至狀態「Er」、「A」、「B」、「C」、「D」、「E」、「F」及「G」。位元的排列方式為「Z、Y、X」,其中低位元為「X」,中間位元為「Y」,且高位元為「Z」。每一狀態及資料的分配可自由地改變。
為了讀取儲存於欲被讀取的記憶體胞元電晶體MT中的資料,確定記憶體胞元電晶體MT的臨限電壓所屬的狀態。使用讀取電壓AR、BR、CR、DR、ER、FR及GR來確定狀態。為了確定臨限電壓而施加至與欲被讀取的記憶體胞元電晶體MT連接的字元線WL的電壓可被稱為讀取電壓VCGRV,其包括讀取電壓AR、BR、CR、DR、ER、FR及GR。
狀態「Er」對應於例如其中資料被抹除的狀態(抹除狀態)。屬於狀態「Er」的記憶體胞元電晶體MT的臨限電壓低於電壓AR,並具有例如負值。
狀態「A」至「G」對應於其中電荷被注入至電荷儲存層中並且資料被寫入至記憶體胞元電晶體MT中的狀態。屬於狀態「A」至「G」的記憶體胞元電晶體MT的臨限電壓具有例如正值。屬於狀態「A」至「F」的記憶體胞元電晶體MT的臨限電壓分別高於讀取電壓AR至FR並且等於或低於讀取電壓BR至GR。屬於狀態「G」的記憶體胞元電晶體MT的臨限電壓高於讀取電壓GR並且低於電壓VREAD。
電壓VREAD是施加至與將不被讀取的胞元單元CU的記憶體胞元電晶體MT連接的字元線WL的電壓,並且在任何狀態下皆高於記憶體胞元電晶體MT的臨限電壓。因此,電壓VREAD被施加至所連接的字元線WL(即,控制閘極)的記憶體胞元電晶體MT被導通,而無論其中儲存的資料如何。
在相鄰的臨限電壓分佈之間設置有在資料寫入操作中使用的驗證電壓。具體而言,驗證電壓AV、BV、CV、DV、EV、FV及GV分別對應於狀態「A」、「B」、「C」、「D」、「E」、「F」及「G」進行設置。舉例而言,驗證電壓AV、BV、CV、DV、EV、FV及GV分別被設置為略高於讀取電壓AR、BR、CR、DR、ER、FR及GR。
如上所述,每一記憶體胞元電晶體MT被設置為八種狀態中的一者,並且可儲存3位元資料。以欲被儲存於一個胞元單元CU中的頁面資料單位來執行寫入及讀取。當每一記憶體胞元電晶體MT儲存3位元資料(低位元、中間位元及高位元)時,由胞元單元CU儲存的一組低位元、一組中間位元及一組高位元分別被稱為低頁面資料、中間頁面資料及高頁面資料。
當應用上述資料分配時,藉由使用讀取電壓AR及ER的資料讀取操作來確定低頁面資料。藉由使用讀取電壓BR、DR及FR的資料讀取操作來確定中間頁面資料。藉由使用讀取電壓CR及GR的資料讀取操作來確定高頁面資料。
1.2操作
闡述第一實施例的記憶體系統1中的操作。在記憶體系統1中,為了增強儲存於半導體記憶體10的NAND記憶體晶片中的資料的可靠性,定期地(或不定期地)檢查NAND記憶體晶片中的資料儲存品質,並且基於資料儲存品質而執行刷新處理。此種用於定期地檢查半導體記憶體10中的資料儲存品質並基於資料儲存品質而執行刷新處理的操作被稱為巡檢操作。實行刷新處理,以藉由在執行錯誤校正之後將寫入半導體記憶體10的NAND記憶體晶片中的特定區塊中的資料重寫至另一區塊(或特定區塊)來減少資料中所包含的錯誤位元的數目。
1.2.1巡檢操作
闡述第一實施例的記憶體系統1中的巡檢操作。作為記憶體控制器20與半導體記憶體10之間的操作,在第一實施例及接下來的實施例中,藉由實例示出了記憶體控制器20與NAND記憶體晶片10_1之間的操作。
圖6是示出根據第一實施例的巡檢操作的流程圖。圖7是示出巡檢操作中的巡讀操作的流程圖。藉由該些流程圖中所示的過程進行的操作由記憶體控制器20或控制電路16指示或執行。圖8示出巡檢操作中記憶體控制器20及NAND記憶體晶片10_1的操作、以及指令及資料的傳輸及接收。
如圖6所示,記憶體控制器20開始巡檢操作。定期地(或不定期地)開始巡檢操作。
當開始巡檢操作時,執行巡讀(patrol read)(S1)。亦即,如圖8所示,記憶體控制器20指示NAND記憶體晶片10_1執行巡讀(S1_1)。當接收到執行巡讀的指令時,NAND記憶體晶片10_1開始巡讀。
參照圖7及圖8來闡述巡讀操作。第一實施例的巡讀是對設置於NAND記憶體晶片10_1的區塊BLK0至BLKm中的多個胞元單元CU中的一個胞元單元CU(以下稱為目標胞元單元)執行資料讀取操作的操作,並且NAND記憶體晶片10_1基於讀取資料來計算儲存於目標胞元單元中的頁面資料(以下稱為目標頁面資料)中的錯誤位元的數目的估計值。此後,錯誤位元的數目的估計值被稱為FBC估計值。
當巡讀開始時,NAND記憶體晶片10_1的控制電路16對目標胞元單元(S1_2)執行資料讀取操作。
接下來,設置於NAND記憶體晶片10_1的控制電路16中的FBC估計值產生電路16A基於藉由資料讀取操作而獲得的讀取結果來計算目標頁面資料的FBC估計值(S1_3)。在FBC估計值的計算中,由設置於NAND記憶體晶片10_1中的FBC估計值產生電路16A來計算FBC估計值,而無需NAND記憶體晶片10_1將讀取的目標頁面資料傳送至記憶體控制器20,即無需由設置於記憶體控制器20中的ECC電路23_1來校正目標頁面資料的錯誤。稍後將詳細闡述計算FBC估計值的操作。
接下來,控制電路16將FBC估計值傳輸至記憶體控制器20(S1_4)。因此完成了巡讀。
接下來,如圖6及圖8所示,設置於記憶體控制器20的處理器21中的刷新確定電路21A基於FBC估計值來判斷是否有必要執行刷新處理(S2)。亦即,刷新確定電路21A基於FBC估計值來判斷是否重寫目標頁面資料。
具體而言,當FBC估計值大於參考值(或臨限值)C1時,記憶體控制器20確定有必要執行刷新處理。當有必要執行刷新處理時(圖6的S2中的「是」),執行刷新處理(S3)。亦即,記憶體控制器20指示NAND記憶體晶片10_1對包括目標胞元單元的區塊執行資料讀取操作(S3_1)。當接收到資料讀取操作的指令時,控制電路16對包括目標胞元單元的區塊執行資料讀取操作(S3_2)。然後,控制電路16將讀取資料傳輸至記憶體控制器20(S3_3)。
接下來,記憶體控制器20利用ECC電路23_1來校正讀取資料的錯誤(S3_4)。然後,記憶體控制器20指示NAND記憶體晶片10_1執行對錯誤校正後的資料的資料寫入操作(S3_5)。當接收到對資料寫入操作的指令時,控制電路16執行對錯誤校正後的資料的資料寫入操作(S3_6)。亦即,控制電路16將錯誤校正後的資料寫入設置於NAND記憶體晶片10_1中的區塊中。
另一方面,當FBC估計值等於或小於參考值C1時,記憶體控制器20確定沒有必要執行刷新處理。當沒有必要執行刷新處理時(圖6的S2中的「否」),記憶體控制器20結束巡檢操作。
對設置於NAND記憶體晶片10_1的區塊BLK0至BLKm中的每一者中的多個胞元單元中的每一者執行巡檢操作。類似地,對設置於NAND記憶體晶片10_2至10_4的區塊BLK0至BLKm中的每一者中的所述多個胞元單元中的每一者執行巡檢操作。可僅對設置於NAND記憶體晶片10_1至10_4的區塊BLK0至BLKm中的每一者中的所述多個胞元單元中的一個胞元單元執行巡檢操作。
對每一區塊執行刷新處理。當確定對某個區塊中的一條目標頁面資料執行刷新處理時,不再對所述區塊中的其餘胞元單元執行巡檢操作。在完成對所述區塊的巡檢操作之後,對所述區塊執行刷新處理。
此處,詳細闡述了用於確定刷新處理的執行的參考值C1。圖6示出參考值C1與參考值C0之間的量值關係。參考值C1是將與FBC估計值進行比較的參考值。如上所述,FBC估計值是對目標頁面資料中的錯誤位元的數目的估計值。因此,作為FBC估計值而計算的錯誤位元的數目可能具有誤差。在比較例中,參考值C0是將與錯誤位元的數目進行比較的參考值,其用於確定刷新處理的執行。亦即,在比較例中,對目標胞元單元執行資料讀取操作,並且讀取目標頁面資料。ECC電路校正所讀取的目標頁面資料的錯誤,以獲得目標頁面資料中錯誤位元的確切數目。為了判斷是否將對區塊進行刷新,使用參考值C0作為參考值,以與以此種方式獲得的錯誤位元的確切數目進行比較。在本實施例中,具有誤差的估計值的參考值C1被設置為小於參考值C0的值,以防止未對應被刷新的區塊執行刷新處理的問題。
1.2.2 FBC估計值的計算
接下來,闡述在巡讀中對FBC估計值的計算。首先,闡述錯誤位元的數目。圖9是示出錯誤位元的數目的圖式。圖9示出使用假定處於「A」狀態及「B」狀態的記憶體胞元的讀取電壓BR來執行資料讀取操作的實例。
當使用讀取電壓BR來讀取屬於「A」狀態的記憶體胞元(即,具有寫入的資料以便具有對應於「A」狀態的臨限電壓的記憶體胞元)時,具有等於或低於讀取電壓BR的臨限電壓的記憶體胞元被導通,而具有高於讀取電壓BR的臨限電壓的記憶體胞元被關斷。此處,被關斷的記憶體胞元被計為錯誤位元(圖9中的ERA),乃因此種記憶體胞元在已寫入「A」狀態時應被導通。此外,當使用讀取電壓BR來讀取屬於「B」狀態的記憶體胞元(即,具有寫入的資料以便具有對應於「B」狀態的臨限電壓的記憶體胞元)時,具有等於或低於讀取電壓BR的臨限電壓的記憶體胞元被導通,而具有等於或高於讀取電壓BR的臨限電壓的記憶體胞元被關斷。此處,被導通的記憶體胞元被計為錯誤位元(圖9中的ERB),乃因此種記憶體胞元在已寫入「B」狀態時應被關斷。錯誤位元的數目是圖9所示的區域ERA中的記憶體胞元的數目與區域ERB中的記憶體胞元的數目之和。
如上所述,在第一實施例的記憶體系統1中,NAND記憶體晶片10_1計算FBC估計值。在FBC估計值的計算中,計算FBC估計值,而無需NAND記憶體晶片10_1將讀取的目標頁面資料傳送至記憶體控制器20,即無需藉由設置於記憶體控制器20中的ECC電路23_1來校正目標頁面資料的錯誤。以下闡述三種方法作為由NAND記憶體晶片10_1計算FBC估計值的操作。
1.2.2.1 FBC估計值的計算操作(4點讀取方法)
首先,對使用四個讀取電壓自藉由資料讀取操作所獲得的導通記憶體胞元的數目來計算FBC估計值的方法進行闡述。此後,使用四個讀取電壓來計算FBC估計值的方法被稱為4點讀取方法。藉由使用特定讀取電壓的資料讀取操作而導通的記憶體胞元的數目被稱為讀取電壓中導通胞元(on-cell)的數目。
在4點讀取方法中,設置於控制電路16中的FBC估計值產生電路16A基於自目標胞元單元獲得的導通胞元的數目藉由二次函數來獲得近似曲線。然後,FBC估計值產生電路16A藉由二次函數來計算近似曲線中的最小值作為FBC估計值。此處,示出了藉由二次函數獲得近似曲線的實例。作為另外一種選擇,可藉由線性函數或三次函數、樣條曲線(spline curve)或貝塞爾曲線(Bezier curve)來獲得近似曲線。
參照圖10A、圖10B及圖10C來闡述4點讀取方法的操作。圖10A、圖10B及圖10C示出根據第一實施例的4點讀取方法。
首先,如圖10A所示,FBC估計值產生電路16A將四個讀取電壓R1、R2、R3及R4設置於例如位於「Er」狀態的臨限電壓與「A」狀態的臨限電壓之間的電壓中。讀取電壓R1至R4彼此不同,並且讀取電壓R1與R2之差、讀取電壓R2與R3之差以及讀取電壓R3與R4之差被設置為相同的恆定電壓差。此處,闡述了將該些電壓差設置為相同電壓差的情形,但該些電壓差亦可不相同。
接下來,FBC估計值產生電路16A分別使用NAND記憶體晶片10_1中的目標胞元單元的讀取電壓R1、R2、R3及R4來執行資料讀取操作,以獲取目標追蹤資料。目標追蹤資料具有與例如頁面資料相同的大小。藉由該些資料讀取操作,FBC估計值產生電路16A分別獲得讀取電壓R1、R2、R3及R4中的導通胞元的數目O1、O2、O3及O4,如圖10B所示。
導通胞元的數目O1、O2、O3及O4為藉由分別使用讀取電壓R1、R2、R3及R4的資料讀取操作而導通的記憶體胞元的數目。
接下來,如圖10C所示,FBC估計值產生電路16A分別獲得導通胞元的數目O1、O2、O3及O4中二個相鄰的導通胞元的數目之差以及相鄰讀取電壓的算術平均數,以獲得差異點P1、P2及P3。
差異點P1的Y坐標(即,記憶體胞元的數目)藉由導通胞元的數目O2與O1之差獲得,並且用「O2-O1」表示。差異點P1的Y坐標是當讀取電壓自R1上升至R2時新導通的記憶體胞元的數目、以及臨限電壓出現在讀取電壓R1與R2之間的記憶體胞元的數目。差異點P1的X坐標(即,臨限電壓)是讀取電壓R1與R2的算術平均數,且由「(R1+R2)/2」表示。因此,差異點P1(x,y)由P1((R1+R2)/2, O2-O1)表示。
類似地,差異點P2(x,y)由P2((R2+R3)/2, O3-O2)表示,且差異點P3(x,y)由P3((R3+R4)/2,O4-O3)表示。如由圖10C中的斜線所示,自差異點P1、P2及P3獲得直方圖。
接下來,如圖10C所示,FBC估計值產生電路16A藉由二次函數來計算穿過差異點P1、P2及P3的近似曲線。當臨限電壓為V且記憶體胞元的數目為C時,二次函數可表示為C=aV
2+bV+d。此處,a、b及d為常數,且a為非零值。接下來,FBC估計值產生電路16A計算二次函數C=aV
2+bV+d的最小值h。
此處,可假定其中「Er」狀態的臨限電壓分佈與「A」狀態的臨限電壓分佈交疊的分佈的「交點」的高度對應於由二次函數獲得的近似曲線的最小值h。舉例而言,可假定「交點」的高度(即記憶體胞元的數目)是h/2,如圖10C所示。此外,目標頁面資料中的錯誤位元的數目被認為與分佈的「交點」的高度成比例。因此,最小值h被設置為FBC估計值。
如上所述,由FBC估計值產生電路16A計算的FBC估計值是二次函數的最小值h。最小值h可利用約2位元組的資料來表示。相較於目標追蹤資料的大小,最小值h的資料大小極小(例如,16K位元組等於頁面資料的大小)。因此,當最小值h自NAND記憶體晶片傳送至記憶體控制器20時,相較於目標追蹤資料自NAND記憶體晶片傳送至記憶體控制器20時的情形,可減少傳送的資料量。因此,可縮短自NAND記憶體晶片至記憶體控制器20的資料傳送時間。
1.2.2.2 FBC估計值的計算操作(3點讀取方法)
接下來,闡述了使用三個讀取電壓自藉由資料讀取操作所獲得的導通胞元的數目來計算FBC估計值的方法。此後,使用三個讀取電壓來計算FBC估計值的方法被稱為3點讀取方法。
在3點讀取方法中,FBC估計值產生電路16A基於自目標胞元單元獲得的導通胞元的數目而獲得二個線性函數。然後,FBC估計值產生電路16A計算二個線性函數的交點作為FBC估計值。
參照圖11A、圖11B及圖11C來闡述3點讀取方法的操作。圖11A、圖11B及圖11C示出根據第一實施例的3點讀取方法。
首先,如圖11A所示,控制電路16的FBC估計值產生電路16A將三個讀取電壓R1、R2及R3設置於例如位於「Er」狀態的臨限電壓與「A」狀態的臨限電壓之間的電壓中。讀取電壓R1至R3彼此不同,並且讀取電壓R1與R2之差以及讀取電壓R2與R3之差被設置為相同的恆定電壓差。此處,闡述了將該些電壓差設置為相同電壓差的情形。應注意,該些電壓差亦可不相同。
接下來,FBC估計值產生電路16A藉由分別使用NAND記憶體晶片10_1中的目標胞元單元的讀取電壓R1、R2及R3來執行資料讀取操作,以獲取目標追蹤資料。如圖11B所示,藉由該些資料讀取操作,FBC估計值產生電路16A分別獲得讀取電壓R1、R2及R3中的導通胞元的數目O1、O2及O3。
導通胞元的數目O1、O2及O3是藉由分別使用讀取電壓R1、R2及R3的資料讀取操作而導通的記憶體胞元的數目。
接下來,如圖11C所示,FBC估計值產生電路16A分別獲得導通胞元的數目O1、O2及O3中二個相鄰的導通胞元的數目之差以及相鄰讀取電壓的算術平均數,以獲得差異點P1及P2。
類似於4點讀取方法,差異點P1(x, y)由P1((R1+R2)/2, O2-O1)表示,且差異點P2(x, y)由P2((R2+R3)/2, O3-O2)表示。如由圖11C中的斜線所示,自差異點P1及P2獲得直方圖。
接下來,如圖11C所示,FBC估計值產生電路16A獲得連接以下四個點的矩形:差異點P1及P2、差異點P1至X軸的正交投影(即,((R1+R2)/2,0)、以及差異點P2至X軸的正交投影(即,((R2+R3)/2,0))。此外,FBC估計值產生電路16A將矩形的對角線視為線性函數。接下來,FBC估計值產生電路16A計算二條對角線(即,二個線性函數)的交點。
此處,可假定其中「Er」狀態的臨限電壓分佈與「A」狀態的臨限電壓分佈交疊的分佈的「交點」的高度對應於二個線性函數的交點,所述二個線性函數的Y坐標是J的值,如圖11C所示。此外,目標頁面資料中的錯誤位元的數目被認為與分佈的「交點」的高度成比例。因此,在二個線性函數的交點處的Y坐標的值J被設置為FBC估計值。
如上所述,由FBC估計值產生電路16A計算的FBC估計值是二個線性函數的交點處的Y坐標的值J。值J可利用約2位元組的資料來表示。相較於目標追蹤資料的大小,值J的資料大小極小。因此,當值J自NAND記憶體晶片傳送至記憶體控制器20時,相較於目標追蹤資料自NAND記憶體晶片傳送至記憶體控制器20時的情形,可減少傳送的資料量。因此,可縮短自NAND記憶體晶片至記憶體控制器20的資料傳送時間。
1.2.2.3 FBC估計值的計算操作(1點讀取方法)
接下來,闡述了使用一個讀取電壓自藉由資料讀取操作所獲得的關斷記憶體胞元的數目來計算FBC估計值的方法。此後,使用一個讀取電壓來計算FBC估計值的方法被稱為1點讀取方法。由使用特定讀取電壓的資料讀取操作而關斷的記憶體胞元的數目被稱為讀取電壓中的關斷胞元(off-cell)的數目。
在1點讀取方法中,獲得目標胞元單元中關斷胞元的數目對記憶體胞元的數目的比率。然後,基於關斷胞元的數目的比率來計算FBC估計值。
參照圖12來闡述1點讀取方法的操作。圖12示出根據第一實施例的1點讀取方法。
首先,如圖12所示,控制電路16中的FBC估計值產生電路16A設置例如用於「G」狀態的讀取電壓GR。讀取電壓GR是用於在具有最高臨限電壓分佈的「G」狀態與其他「Er」至「F」狀態之間進行確定的讀取電壓。具體而言,當在資料寫入操作之後經過的時間較少時,即當不需要過多擔心資料保持誤差(data retention error)時,讀取電壓GR是適合於資料讀取操作的讀取電壓。此讀取電壓被稱為正常讀取電壓,並且此讀取電壓例如在製造NAND記憶體晶片時被設置。對於正常讀取電壓而言,例如,當執行在下述第五實施例中闡述的追蹤操作時,可使用由追蹤操作確定的適當讀取電壓。
接下來,FBC估計值產生電路16A使用讀取電壓GR來對NAND記憶體晶片10_1中的目標胞元單元執行資料讀取操作。藉由此資料讀取操作,FBC估計值產生電路16A獲得讀取電壓GR中的導通胞元的數目CG,如圖12所示。在圖12所示的實例中,導通胞元的數目CG是藉由將處於「Er」狀態的導通胞元的數目累加至「G」狀態的一部分而獲得的數目。
接下來,FBC估計值產生電路16A自設置於目標胞元單元中的記憶體胞元的數目M1減去導通胞元的數目CG,以獲得目標胞元單元中的關斷胞元的數目M2。此外,FBC估計值產生電路16A計算目標胞元單元中的關斷胞元的數目M2對記憶體胞元的數目M1的比率K1。
此處,認為目標頁面資料中的錯誤位元的數目與關斷胞元的數目的比率K1相關。「G」狀態是自「Er」狀態至「G」狀態的八個狀態中的一者。因此,當隨機化資料被寫入目標胞元單元中時,處於「G」狀態的記憶體胞元的數目對目標胞元單元中的記憶體胞元的數目的比率的期望值為1/8(=12.5%)。當關斷胞元的數目的比率K1與期望值之差為大時,目標胞元單元的臨限電壓分佈很可能偏離理想狀態(即,每一狀態中的記憶體胞元的數目對目標胞元單元中的記憶體胞元的數目的比率為12.5%的狀態)。當目標胞元單元的臨限電壓分佈偏離理想狀態時,關斷胞元的數目的比率K1可能大於或小於預期值。因此,在1點讀取方法中,關斷胞元的數目的比率(K1)與期望值(12.5%)之差被設置為FBC估計值。
如上所述,由FBC估計值產生電路16A計算的FBC估計值是關斷胞元的數目的比率K1與期望值之差。比率K1與期望值之差可利用約2位元組的資料來表示。舉例而言,相較於目標追蹤資料的大小,比率K1與期望值之差的資料大小極小。因此,當比率K1與期望值之差自NAND記憶體晶片傳送至記憶體控制器20時,相較於目標追蹤資料自NAND記憶體晶片傳送至記憶體控制器20時的情形,可減少傳送的資料量。因此,可縮短自NAND記憶體晶片至記憶體控制器20的資料傳送時間。
接下來,參照圖13來闡述1點讀取方法的另一操作實例。圖13是示出根據第一實施例的1點讀取方法的另一實例的圖式。
在1點讀取方法中,藉由使用「G」狀態的讀取電壓GR的資料讀取操作來計算FBC估計值。作為另外一種選擇,可藉由使用「A」狀態的讀取電壓AR的資料讀取操作來計算FBC估計值。
如圖13所示,控制電路16中的FBC估計值產生電路16A將讀取電壓AR設置為「A」狀態。讀取電壓AR是用於在具有最低臨限電壓分佈的「Er」狀態與其他「A」至「G」狀態之間進行確定的讀取電壓。
接下來,FBC估計值產生電路16A使用讀取電壓AR來對NAND記憶體晶片10_1中的目標胞元單元執行資料讀取操作。根據資料讀取操作,FBC估計值產生電路16A獲得讀取電壓AR中的導通胞元的數目CA,如圖13所示。在圖13所示的實例中,導通胞元的數目CA是藉由將處於「Er」狀態的導通胞元的數目與「A」狀態的一部分相加而獲得的數目。
接下來,FBC估計值產生電路16A自設置於目標胞元單元中的記憶體胞元的數目M1減去導通胞元的數目CA,以獲得目標胞元單元中的關斷胞元的數目M3。此外,FBC估計值產生電路16A計算目標胞元單元中的關斷胞元的數目M3對記憶體胞元的數目M1的比率K2。
此處,認為目標頁面資料中的錯誤位元的數目與關斷胞元的數目的比率K2相關。「Er」狀態是自「Er」狀態至「G」狀態的八種狀態中的一者。因此,當隨機化資料被寫入目標胞元單元中時,處於除「Er」狀態之外的狀態中的記憶體胞元的數目(即,處於「A」至「G」狀態中的記憶體胞元的數目)對目標胞元單元中的記憶體胞元的數目的比率的期望值為7/8(=87.5%)。在此1點讀取方法中,關斷胞元的數目的比率K2與期望值(87.5%)之差被設置為FBC估計值。
如在以上實例中,當獲得讀取電壓AR中的導通胞元的數目CA時,處於「Er」狀態的記憶體胞元的數目對目標胞元單元中的記憶體胞元的數目M1的比率K3的期望值為1/8(=12.5%)。FBC估計值產生電路16A可將導通胞元的數目CA的比率K3與期望值(12.5%)之差設置為FBC估計值。
1.3.第一實施例的效果
根據第一實施例,可提供一種能夠減少巡檢操作所需時間的記憶體系統。
在第一實施例的配置中,NAND記憶體晶片包括用於計算FBC估計值的FBC估計值產生電路16A。FBC估計值產生電路16A使用目標胞元單元的一或多個讀取電壓來執行資料讀取操作,以基於所獲得的導通胞元的數目或關斷胞元的數目來計算FBC估計值。FBC估計值是用於估計目標頁面資料中的錯誤位元的數目的值。所計算的FBC估計值被自NAND記憶體晶片傳送至記憶體控制器20。記憶體控制器20將FBC估計值與參考值C1進行比較,並根據比較結果來判斷是否執行刷新處理。NAND記憶體晶片僅需要傳輸FBC估計值,而無需傳輸目標追蹤資料。因此,可減小自NAND記憶體晶片傳送至記憶體控制器20的資料的大小。因此,可減少自目標胞元單元的資料讀取操作獲得用於確定在巡檢操作中執行刷新處理的資料(即,FBC估計值)所需的時間。
2.第二實施例
對第二實施例的記憶體系統進行了闡述。在第二實施例中,NAND記憶體晶片10_1不計算FBC估計值,並且NAND記憶體晶片10_1向記憶體控制器20輸出用於計算FBC估計值的分量。記憶體控制器20基於所接收到的分量來計算FBC估計值。在第二實施例中,主要闡述與第一實施例不同的點。
2.1配置
2.1.1記憶體系統
對第二實施例的記憶體系統的配置進行闡述。圖14是示出根據第二實施例的記憶體系統的配置的方塊圖。
記憶體系統1包括半導體記憶體10及記憶體控制器20。
2.1.2記憶體控制器
接下來,參照圖14闡述記憶體控制器20的配置。記憶體控制器20包括處理器21、記憶體22、ECC電路23_1及23_2、NAND介面電路24_1及24_2、以及主機介面電路25。
處理器21包括刷新確定電路21A及FBC估計值產生電路21B。刷新確定電路21A基於FBC估計值來判斷是否執行刷新處理。FBC估計值產生電路21B基於FBC估計值的分量來計算FBC估計值。以下闡述FBC估計值產生電路21B。本說明書中闡述的處理器21(以及刷新確定電路21A及FBC估計值產生電路21B)的功能可藉由由處理器21執行軟體(或韌體)來實施,或者可藉由硬體(或專用電路)來實施。
記憶體控制器20的其他配置相同於上述第一實施例。
2.1.3半導體記憶體
接下來,對設置於半導體記憶體10中的NAND記憶體晶片10_1至10_4的配置進行闡述。以下闡述NAND記憶體晶片10_1的配置。其他NAND記憶體晶片10_2至10_4中的每一者的配置相同於NAND記憶體晶片10_1的配置。
圖15是示出根據第二實施例的NAND記憶體晶片10_1的配置的圖式。
NAND記憶體晶片10_1包括記憶體胞元陣列11、輸入/輸出電路12、邏輯控制電路13、就緒/忙碌電路14、暫存器組15、控制電路16、電壓產生電路17、列解碼器18、行解碼器19A、資料暫存器19B及感測放大器19C。
控制電路16包括分量產生電路16B。分量產生電路16B產生用於計算FBC估計值的分量。稍後闡述分量產生電路16B。本說明書中闡述的控制電路(及分量產生電路16B)的功能可由執行軟體(或韌體)的控制電路16來實施,或者可由硬體(或專用電路)來實施。
NAND記憶體晶片10_1的其他配置相同於上述第一實施例。
2.2操作
闡述第二實施例的記憶體系統1中的操作。
2.2.1巡檢操作
對第二實施例的記憶體系統1中的巡檢操作進行闡述。圖16是示出根據第二實施例的巡檢操作的流程圖,並且與圖6所示的第一實施例相同。圖17是示出巡檢操作中的巡讀操作的流程圖。藉由該些流程圖中所示的過程進行的操作由記憶體控制器20或控制電路16指示或執行。圖18是示出巡檢操作中記憶體控制器20及NAND記憶體晶片10_1的操作、以及指令及資料的傳輸及接收的圖式。
如圖16所示,記憶體控制器20開始巡檢操作。定期地(或不定期地)開始巡檢操作。
當開始巡檢操作時,執行巡讀(S1)。亦即,如圖18所示,記憶體控制器20指示NAND記憶體晶片10_1執行巡讀(S1_1)。當接收到執行巡讀的指令時,NAND記憶體晶片10_1開始巡讀。
參照圖17及圖18來闡述巡讀操作。第二實施例的巡讀是以下操作:NAND記憶體晶片10_1對目標胞元單元執行資料讀取操作,以獲取用於計算FBC估計值的分量,並將所述分量傳輸至記憶體控制器20。因此,亦可將執行巡讀的指令解譯為獲得FBC估計值的分量的指令。
當巡讀開始時,NAND記憶體晶片10_1的控制電路16對目標胞元單元執行資料讀取操作(S1_2)。
接下來,設置於NAND記憶體晶片10_1的控制電路16中的分量產生電路16B獲取用於計算FBC估計值的分量(S1_5)。FBC估計值的分量包括例如多個讀取電壓及每一讀取電壓中的導通胞元的數目。作為另外一種選擇,FBC估計值的分量包括多個讀取電壓中的一個最低(或最高)讀取電壓的讀取電壓、讀取電壓與另一讀取電壓之間的電壓差、以及每一讀取電壓中的導通胞元的數目。
然後,控制電路16將FBC估計值的分量傳輸至記憶體控制器20(S1_6)。
接下來,設置於記憶體控制器20的處理器21中的FBC估計值產生電路21B基於所接收到的FBC估計值的分量來計算目標頁面資料的FBC估計值(S1_7)。在FBC估計值的計算中,由設置於記憶體控制器20中的FBC估計值產生電路21B計算FBC估計值,而無需NAND記憶體晶片10_1將所讀取的目標頁面資料傳送至記憶體控制器20,即無需由設置於記憶體控制器20中的ECC電路23_1來校正目標頁面資料的錯誤。稍後闡述FBC估計值的計算操作。因此,巡讀結束。
接下來,如圖16及圖18所示,設置於記憶體控制器20的處理器21中的刷新確定電路21A基於FBC估計值來判斷是否有必要執行刷新處理(S2)。圖16及圖18的步驟S3中所示的刷新處理相同於圖6及圖8的步驟S3中所示的第一實施例的刷新處理。此外,用於確定刷新處理的執行的參考值C1相同於第一實施例。
2.2.2 FBC估計值的計算
接下來,闡述在巡讀中計算FBC估計值。如上所述,在第二實施例的記憶體系統1中,在NAND記憶體晶片中獲取FBC估計值的分量,並且將所述分量傳送至記憶體控制器20。記憶體控制器20基於FBC估計值的分量來計算FBC估計值。以下闡述兩種方法作為由記憶體控制器20計算FBC估計值的操作。
2.2.2.1 FBC估計值的計算操作(4點讀取方法)
首先,對第二實施例的記憶體系統1中的4點讀取方法的操作進行闡述。在4點讀取方法中,設置於處理器21中的FBC估計值產生電路21B基於自目標胞元單元獲得的導通胞元的數目藉由二次函數來獲得近似曲線。然後,FBC估計值產生電路21B藉由二次函數來計算近似曲線中的最小值h以作為FBC估計值。
除了由記憶體控制器20的處理器21的FBC估計值產生電路21B產生FBC估計值、並且FBC估計值產生電路21B使用由設置於控制電路16中的分量產生電路16B所獲取的FBC估計值的分量之外,第二實施例中的4點讀取方法的操作相同於參照圖10A至圖10C闡述的第一實施例的操作。
2.2.2.2 FBC估計值的計算操作(3點讀取方法)
接下來,對第二實施例的記憶體系統1中的3點讀取方法的操作進行闡述。在3點讀取方法中,FBC估計值產生電路21B基於自目標胞元單元獲得的導通胞元的數目來獲得二個線性函數。然後,FBC估計值產生電路21B計算所述二個線性函數的交點作為FBC估計值。
除了由記憶體控制器20的處理器21的FBC估計值產生電路21B產生FBC估計值、並且FBC估計值產生電路21B使用由設置於控制電路16中的分量產生電路16B所獲取的FBC估計值的分量之外,第二實施例中的3點讀取方法的操作相同於參照圖11A至圖11C闡述的第一實施例的操作。
2.3.第二實施例的效果
根據第二實施例,可提供一種能夠減少巡檢操作所需時間的記憶體系統。
在第二實施例的配置中,NAND記憶體晶片包括分量產生電路16B,並且記憶體控制器20包括FBC估計值產生電路21B。分量產生電路16B產生用於計算FBC估計值的分量。分量產生電路16B使用目標胞元單元的多個讀取電壓來執行資料讀取操作,並將分量(例如,讀取電壓及導通胞元的數目)傳輸至記憶體控制器20。記憶體控制器20基於所接收的分量來計算FBC估計值。記憶體控制器20將FBC估計值與參考值C1進行比較,並根據比較結果來判斷是否執行刷新處理。NAND記憶體晶片僅需要傳輸所述分量,而無需傳輸目標追蹤資料。因此,可減少自NAND記憶體晶片傳送至記憶體控制器20的資料量。因此,可減少自目標胞元單元的資料讀取操作獲得用於確定在巡檢操作中執行刷新處理的資料(即,FBC估計值)所需的時間。
3.第三實施例
對第三實施例的記憶體系統進行了闡述。在第三實施例中,執行具有不同目的的第一階段巡讀及第二階段巡讀。在第一階段巡讀中,判斷是否執行第二階段巡讀。在第二階段巡讀中,判斷是否使用目標頁面資料來執行刷新處理。此外,在第一階段巡讀中,類似於第一實施例,NAND記憶體晶片10_1計算FBC估計值。在第三實施例中,主要闡述與第一實施例不同的點。
3.1配置
設置於第三實施例的記憶體系統1中的記憶體控制器20及半導體記憶體10的配置及結構相同於上述第一實施例的配置及結構。
3.2操作
對第三實施例的記憶體系統1中的操作進行闡述。
3.2.1巡檢操作
對第三實施例的記憶體系統1中的巡檢操作進行闡述。在第三實施例的巡檢操作中,NAND記憶體晶片10_1在第一階段巡讀中計算FBC估計值,並且記憶體控制器20使用FBC估計值來判斷是否執行第二階段巡讀。此外,記憶體控制器20判斷是否在第二階段巡讀中執行刷新處理。在下文中,第一階段巡讀亦被稱為第一巡讀,並且第二階段巡讀亦被稱為第二巡讀。
圖19是示出根據第三實施例的巡檢操作的流程圖。圖20是示出巡檢操作中的第一巡讀操作的流程圖。圖21是示出巡檢操作中的第二巡讀操作的流程圖。藉由該些流程圖中所示的過程進行的操作由記憶體控制器20或控制電路16指示或執行。圖22是示出巡檢操作中記憶體控制器20及NAND記憶體晶片10_1的操作、以及指令及資料的傳輸及接收的圖式。
如圖19所示,記憶體控制器20開始巡檢操作。定期地(或不定期地)開始巡檢操作。
當開始巡檢操作時,執行第一巡讀(S11)。圖20及圖22的步驟S11_2、S11_3及S11_4中所示的第一巡讀相同於圖7及圖8的步驟S1_2、S1_3及S1_4中所示的第一實施例的巡讀。
接下來,如圖19及圖22所示,記憶體控制器20的處理器21基於FBC估計值來判斷是否有必要執行第二巡讀(S12)。
具體而言,當FBC估計值大於參考值(或臨限值)C1a時,記憶體控制器20確定有必要執行第二巡讀。當有必要執行第二巡讀時(圖19的S12中的是),記憶體控制器20指示NAND記憶體晶片10_1執行第二巡讀(圖22中的S13_1)。當接收到執行第二巡讀的指令時,NAND記憶體晶片10_1執行第二巡讀(圖19中的S13)。另一方面,當FBC估計值等於或小於參考值C1a時,記憶體控制器20確定沒有必要執行第二巡讀。當沒有必要執行第二巡讀時(圖19的S12中的否),記憶體控制器20結束巡檢操作。
此處,將詳細闡述用於確定第二巡讀的執行的參考值C1a。圖19示出參考值C1a與參考值C2之間的量值關係。參考值C1a是將與FBC估計值進行比較的參考值。如上所述,FBC估計值是對目標頁面資料中的錯誤位元的數目的估計值。因此,作為FBC估計值而計算的錯誤位元的數目可能具有誤差。參考值C2是將與如下所述的目標頁面資料中的錯誤位元的確切數目進行比較的參考值。因此,為了防止儘管需要執行第二巡讀卻未執行第二巡讀的問題,具有誤差的估計值的參考值C1a被設置為小於參考值C2的值。
相較於第一實施例中的參考值C1,參考值C1a在量值上並非特別相關。舉例而言,參考值C1a被設置為與參考值C1相同的值或者較參考值C1高的值。
參照圖21及圖22闡述第二巡讀操作。當開始第二巡讀時,NAND記憶體晶片10_1的控制電路16使用用於NAND記憶體晶片10_1中的目標胞元單元的讀取電壓AR、BR、CR、DR、ER、FR及GR來執行資料讀取操作(S13_2)。然後,控制電路16將藉由資料讀取操作所獲得的目標頁面資料傳輸至記憶體控制器20(S13_3)。然後,記憶體控制器20利用ECC電路23_1來校正目標頁面資料的錯誤,以計算錯誤位元的數目(S13_4)。因此,第二巡讀結束。
接下來,如圖19及圖22所示,設置於記憶體控制器20的處理器21中的刷新確定電路21A基於錯誤位元的數目來判斷是否有必要執行刷新處理(S14)。亦即,刷新確定電路21A基於錯誤位元的數目來判斷是否重寫目標頁面資料。
具體而言,當錯誤位元的數目大於參考值(或臨限值)C2時,記憶體控制器20確定有必要執行刷新處理。當有必要執行刷新處理時(圖19的S14中的是),執行刷新處理(S15)。圖19及圖22的步驟S15中所示的刷新處理相同於圖6及圖8的步驟S3中所示的第一實施例的刷新處理。
另一方面,當錯誤位元的數目等於或小於參考值C2時,記憶體控制器20確定沒有必要執行刷新處理。當沒有必要執行刷新處理時(圖19的S14中的否),記憶體控制器20結束巡檢操作。
3.2.2 FBC估計值的計算
接下來,闡述第一巡讀中的FBC估計值的計算。在第三實施例的記憶體系統1中,如上所述,NAND記憶體晶片10_1在第一巡讀中計算FBC估計值。
使用在第一實施例中闡述的三種方法(即4點讀取方法、3點讀取方法及1點讀取方法)作為計算FBC估計值的操作。該些方法的操作相同於第一實施例的操作。
3.3.第三實施例的效果
根據第三實施例,可提供一種能夠減少巡檢時間的記憶體系統。
在第三實施例的配置中,除了第一實施例的效果之外,巡檢操作還分二個階段執行,即第一階段巡讀及第二階段巡讀,藉此減少了巡檢操作所需的時間。此外,在第二階段巡讀中,ECC電路對目標頁面資料的錯誤進行校正並獲取錯誤位元的數目,藉此保持高度可靠的資料保持特性。
4.第四實施例
對第四實施例的記憶體系統進行闡述。在第四實施例中,類似於第三實施例,執行第一階段巡讀及第二階段巡讀。此外,在第一階段巡讀中,類似於第二實施例,NAND記憶體晶片10_1將FBC估計值的分量傳送至記憶體控制器20。記憶體控制器20使用FBC估計值的分量來計算FBC估計值。在第四實施例中,主要闡述與第二實施例及第三實施例不同的點。
4.1配置
設置於第四實施例的記憶體系統1中的記憶體控制器20及半導體記憶體10的配置及結構相同於上述第二實施例的配置及結構。
4.2操作
對第四實施例的記憶體系統1中的操作進行闡述。
4.2.1巡檢操作
對第四實施例的記憶體系統1中的巡檢操作進行闡述。在第四實施例的巡檢操作中,NAND記憶體晶片10_1在第一巡讀中將FBC估計值的分量傳送至記憶體控制器20,記憶體控制器20計算FBC估計值,並且記憶體控制器20使用FBC估計值來判斷是否執行第二巡讀。此外,記憶體控制器20判斷是否在第二巡讀中執行刷新處理。
圖23是示出根據第四實施例的巡檢操作的流程圖。圖24是示出巡檢操作中的第一巡讀操作的流程圖。圖25是示出巡檢操作中的第二巡讀操作的流程圖。藉由該些流程圖中所示的過程進行的操作由記憶體控制器20或控制電路16指示或執行。圖26是示出巡檢操作中記憶體控制器20及NAND記憶體晶片10_1的操作、以及指令及資料的傳輸及接收的圖式。
如圖23所示,記憶體控制器20開始巡檢操作。定期地(或不定期地)開始巡檢操作。
當開始巡檢操作時,執行第一巡讀(S11)。圖24及圖26的步驟S11_2、S11_5、S11_6及S11_7中所示的第一巡讀相同於圖17及圖18的步驟S1_2、S1_5、S1_6及S1_7中所示的第二實施例的巡讀。
接下來,如圖23及圖26所示,記憶體控制器20的處理器21基於FBC估計值來判斷是否有必要執行第二巡讀(S12)。圖23及圖26的步驟S12中所示的判斷處理相同於圖19及圖22的步驟S12中所示的第三實施例的判斷處理。
當有必要執行第二巡讀時(圖23的S12中的是),記憶體控制器20指示NAND記憶體晶片10_1執行第二巡讀(圖26中的S13_1)。圖25及圖26的步驟S13_2、S13_3及S13_4中所示的第二巡讀相同於圖21及圖22的步驟S13_2、S13_3及S3_4中所示的第三實施例的第二巡讀。此外,用於確定第二巡讀的執行的參考值C1a相同於第三實施例。
接下來,如圖23及圖26所示,設置於記憶體控制器20的處理器21中的刷新確定電路21A基於錯誤位元的數目來判斷是否有必要執行刷新處理(S14)。圖23及圖26的步驟S14中所示的判斷處理相同於圖19及圖22的步驟S14中所示的第三實施例的判斷處理。
當有必要執行刷新處理時(圖23的S14中的是),執行刷新處理(S15)。圖23及圖26的步驟S15中所示的刷新處理相同於圖6及圖8的步驟S3中所示的第一實施例的刷新處理。
4.2.2 FBC估計值的計算
接下來,闡述第一巡讀中的FBC估計值的計算。如上所述,在第四實施例的記憶體系統1中,NAND記憶體晶片10_1在第一巡讀中將FBC估計值的分量傳輸至記憶體控制器20,並且記憶體控制器20計算FBC估計值。
使用在第二實施例中闡述的兩種方法(即4點讀取方法及3點讀取方法)作為計算FBC估計值的操作。該些方法的操作相同於第二實施例的操作。
4.3第四實施例的效果
根據第四實施例,可提供一種能夠減少巡檢時間的記憶體系統。
在第四實施例的配置中,除了第二實施例的效果之外,巡檢操作還分二個階段執行,即達成了與第三實施例相同的效果。
5.第五實施例
對第五實施例的記憶體系統進行闡述。在第五實施例中,基於由記憶體控制器20管理的資訊來計算FBC估計值,而無需自NAND記憶體晶片讀取資料。在第五實施例中,主要闡述與第一實施例不同的點。
5.1配置
5.1.1記憶體系統
對第五實施例的記憶體系統的配置進行闡述。圖27是示出根據第五實施例的記憶體系統的配置的方塊圖。
記憶體系統1包括半導體記憶體10及記憶體控制器20。
5.1.2記憶體控制器
接下來,參照圖27來闡述記憶體控制器20的配置。記憶體控制器20包括處理器21、記憶體22、ECC電路23_1及23_2、NAND介面電路24_1及24_2、以及主機介面電路25。
處理器21包括刷新確定電路21A及FBC估計值產生電路21B。刷新確定電路21A基於FBC估計值來判斷是否執行刷新處理。FBC估計值產生電路21B基於FBC估計值的分量來計算FBC估計值。
記憶體22儲存歷史值表22A。歷史值表22A儲存將在資料讀取操作中使用的讀取電壓的更新值及初始值。稍後將闡述歷史值表22A的細節。此處,示出了其中歷史值表22A儲存更新值及初始值的實例,但歷史值表22A可僅儲存更新值。在此種情形中,例如,更新值是指示相對於初始值的偏移量的值。
記憶體控制器20的其他配置相同於第一實施例。
5.1.3半導體記憶體
除了NAND記憶體晶片10_1至10_4不具有FBC估計值產生電路16A之外,設置於第五實施例的記憶體系統1中的半導體記憶體10及記憶體胞元陣列11的配置及結構相同於第一實施例的配置及結構。
5.2操作
對第五實施例的記憶體系統1中的操作進行闡述。
5.2.1巡檢操作
對第五實施例的記憶體系統1中的巡檢操作進行闡述。在第五實施例的巡檢操作中,記憶體控制器20獲得歷史值表22A中所包括的讀取電壓的更新值與初始值之差,以基於所述差來計算FBC估計值。在下文中,使用由記憶體控制器20獲取的讀取電壓的更新值及初始值來計算FBC估計值而無需自NAND記憶體晶片10_1讀取資料的方法被稱為歷史值檢查(或0點讀取方法)。
圖28是示出根據第五實施例的巡檢操作的流程圖。圖29是示出巡檢操作中的歷史值檢查的操作的流程圖。藉由該些流程圖中所示的過程進行的操作由記憶體控制器20或控制電路16指示或執行。圖30是示出巡檢操作中記憶體控制器20及NAND記憶體晶片10_1的操作、以及指令及資料的傳輸及接收的圖式。
如圖28所示,記憶體控制器20開始巡檢操作。定期地(或不定期地)開始巡檢操作。
當開始巡檢操作時,執行歷史值檢查(S21)。
參照圖29及圖30闡述了歷史值檢查的操作。第五實施例中的歷史值檢查是其中記憶體控制器20基於與歷史值表22A中所提供的目標胞元單元相對應的讀取電壓來計算目標頁面資料中的FBC估計值的操作。歷史值表22A包括錯誤位元的數目預期最小的讀取電壓。
記憶體控制器20的處理器21執行歷史值檢查(S21)。
更具體而言,處理器21例如自儲存於記憶體22中的歷史值表22A中獲取「G」狀態的讀取電壓的更新值及初始值(S21_1)。稍後將闡述歷史值表22A的細節。
接下來,處理器21計算所獲取的讀取電壓的更新值與初始值之差。此外,處理器21基於所計算的差來計算目標頁面資料的FBC估計值(S21_2)。在FBC估計值的計算中,由處理器21(具體而言,FBC估計值產生電路21B)計算FBC估計值,而無需NAND記憶體晶片10_1將目標頁面資料傳送至記憶體控制器20,即無需利用設置於記憶體控制器20中的ECC電路23_1來校正目標頁面資料的錯誤。稍後闡述FBC估計值的計算操作。因此,歷史值檢查結束。此處,示出了其中基於更新值與初始值之差來計算FBC估計值的實例。當更新值是指示相對於初始值的偏移量的值時,基於更新值來計算FBC估計值。
接下來,如圖28及圖30所示,設置於記憶體控制器20的處理器21中的刷新確定電路21A基於FBC估計值來判斷是否有必要執行刷新處理(S22)。亦即,刷新確定電路21A基於FBC估計值來判斷是否重寫目標頁面資料。
具體而言,當FBC估計值大於參考值(或臨限值)C3時,記憶體控制器20確定有必要執行刷新處理。當有必要執行刷新處理時(圖28的S22中的是),執行刷新處理(S23)。圖28及圖30的步驟S23中所示的刷新處理相同於圖6及圖8的步驟S3中所示的第一實施例的刷新處理。
另一方面,當FBC估計值等於或小於參考值C3時,記憶體控制器20確定沒有必要執行刷新處理。當沒有必要執行刷新處理時(圖28的S22中的否),記憶體控制器20結束巡檢操作。
類似於圖6所示的第一實施例的參考值C1,具有誤差的估計值的參考值C3被設置為小於參考值C0的值,以防止未對應被刷新的區塊執行刷新處理的問題。
5.2.2歷史值表
對儲存於記憶體22中的歷史值表22A進行闡述。如上所述,在第五實施例的記憶體系統1中,記憶體控制器20基於自記憶體22中的歷史值表22A獲取的更新值及初始值來計算FBC估計值,而無需自NAND記憶體晶片10_1讀取資料。
舉例而言,當資料被寫入NAND記憶體晶片10_1中的記憶體胞元時,存在以下趨勢:在寫入後隨著時間的流逝,記憶體胞元的臨限電壓收斂至電位的中性點。舉例而言,在寫入後隨著時間的流逝,記憶體胞元的每一狀態的臨限電壓分佈逐漸向低電壓側偏移。因此,在記憶體系統1中,記憶體控制器20根據每一狀態的臨限電壓分佈的偏移量來定期地更新在資料讀取操作中使用的讀取電壓,並且適當地設置讀取電壓。在此種情形中,緊接在寫入之後的讀取電壓被稱為初始值,並且根據每一狀態的臨限電壓分佈的偏移量而更新的讀取電壓被稱為更新值。歷史值表22A包括區塊BLKm的物理位址、對應於區塊BLKm的更新值及初始值、更新值被更新的時間(以下稱為更新時間)及初始值被儲存的時間(以下稱為產生時間)。
參照圖31對儲存於記憶體控制器20的記憶體22中的歷史值表22A進行闡述。圖31是示出歷史值表22A的實例的圖式。歷史值表22A具有包括讀取電壓的更新值的歷史值表22Au、以及包括初始值的歷史值表22Ai。
舉例而言,在歷史值表22Au中,指示區塊BLK0至BLKm的物理位置的物理位址BA0、BA1、...、BAm、每一物理位址的「A」狀態至「G」狀態的讀取電壓的更新值、以及該些更新值被更新的更新時間TU0、TU1、...、TUm是相關聯的。舉例而言,區塊BLK0的物理位址BA0的「G」狀態的讀取電壓的更新值是Xg,並且更新值Xg的更新時間是TU0。
舉例而言,在歷史值表22Ai中,物理位址BA0、BA1、...、BAm、每一物理位址的「A」狀態至「G」狀態的讀取電壓的初始值、以及儲存初始值的產生時間TI0、TI1、...、TIm是相關聯的。舉例而言,區塊BLK0的物理位址BA0的「G」狀態的讀取電壓的初始值是Ng,且初始值Ng的產生時間是TI0。
歷史值表22Au及22Ai中的「A」狀態至「G」狀態的讀取電壓分別對應於用於上述狀態確定的讀取電壓AR、BR、CR、DR、ER、FR及GR。
儲存於歷史值表22Au中的讀取電壓的更新值被定期地(或不定期地)更新為適當的讀取電壓。當讀取電壓的值自初始值更新時,歷史值表22Ai被複製為歷史值表22Au,並且歷史值表22Ai保持原樣。此處,更新值及初始值被闡述為儲存於不同的表中。作為另外一種選擇,更新值、更新時間、初始值及產生時間可一起儲存於一個表中。
參照圖32對定期地更新儲存於歷史值表22Au中的更新值的操作進行闡述。圖32是示出對歷史值表22Au中的更新值進行更新的操作的流程圖。藉由所述流程圖中所示的過程進行的操作由記憶體控制器20指示或執行。
當開始更新操作時,記憶體控制器20自歷史值表22Au獲取對應於物理位址的更新時間(S31)。接下來,記憶體控制器20獲取當前時間(S32)。
接下來,記憶體控制器20判斷自歷史值表22Au中的更新時間至當前時間是否已經過去了更新時間間隔(S33)。更新時間間隔是24小時,此為一個實例,且所述更新時間間隔亦可為任何其他時間。
當自更新時間起已經過去更新時間間隔時,記憶體控制器20對由物理位址指定的區塊的讀取電壓執行追蹤操作(S34)。在追蹤操作中,當二個相鄰狀態的臨限電壓分佈彼此交疊時,獲得接近錯誤位元的數目最小的點(即,二個臨限電壓分佈的交點)的讀取電壓。在追蹤操作中,當X軸被設置為臨限電壓並且Y軸被設置為記憶體胞元的數目時,獲得其中將二個狀態下的記憶體胞元的數目相加的分佈的谷(即,最小值),並且自所獲得的谷來計算適當的讀取電壓(或偏移量)。其中將二個狀態下的記憶體胞元的數目相加的分佈的谷通常被預期是與二個臨限電壓分佈的交點處的電壓接近的電壓。稍後將闡述追蹤操作的細節。記憶體控制器20根據藉由追蹤操作所計算的讀取電壓來對對應於物理位址的更新值及更新時間進行更新(S35)。
當自更新時間起未經過更新時間間隔時,記憶體控制器20原樣保持對應於物理位址的更新值及更新時間,並且不進行更新(S36)。
此後,記憶體控制器20返回至步驟S31,並對其他物理位址重複自步驟S31至步驟S35或S36的處理。
接下來,參照圖33闡述讀取電壓的追蹤操作。當X軸被設置為臨限電壓並且Y軸被設置為記憶體胞元的數目時,在追蹤操作中,自相鄰二個狀態中的記憶體胞元的數目形成分佈的谷的位置來計算適當的讀取電壓。以下實例示出計算分別對應於「F」狀態及「G」狀態的二個臨限電壓分佈的交點的情形。
圖33A及圖33B示出「F」狀態及「G」狀態的臨限電壓分佈。舉例而言,緊接在資料寫入操作之後的臨限電壓分佈如圖33A所示。亦即,緊接在資料寫入操作之後,「F」狀態的臨限電壓分佈與「G」狀態的臨限電壓分佈不交疊。然而,如圖33B所示,臨限電壓分佈的分佈寬度由於資料保持、干擾及類似因素而變寬,並且「F」狀態的臨限電壓分佈與「G」狀態的臨限電壓分佈交疊。然後,當利用讀取電壓GR來執行資料讀取操作時,與圖33B的斜線部分的區域對應的記憶體胞元變成錯誤位元。若所產生的錯誤位元的數目超過ECC電路23_1的可校正位元的數目,則難以正確讀取資料。因此,記憶體控制器20搜索其中將二個狀態下的記憶體胞元的數目相加的分佈的谷位置處的電壓,並且其附近的電壓被設置為適當的讀取電壓GRa。以上是追蹤操作。
藉由包括上述追蹤操作的歷史值表22Au的更新操作,區塊的讀取電壓的更新值被定期地更新為適當的讀取電壓。在本實施例中,使用讀取電壓的更新值來計算FBC估計值。
接下來,闡述儲存於歷史值表22Ai中的初始值。當區塊的狀態自抹除區塊轉變至寫入目的地區塊時、或者緊接在對寫入目的地區塊的資料寫入操作結束之後,產生初始值。
首先,參照圖34來闡述區塊的狀態轉變的循環。圖34示出區塊的狀態轉變。區塊的狀態按照有效區塊PA、空閒區塊PF、抹除區塊PE及寫入目的地區塊PW的次序進行轉變。記憶體控制器20管理該些區塊狀態中的哪一者是所述區塊狀態。
有效區塊PA是僅允許資料寫入操作及資料讀取操作中的資料讀取操作的區塊。換言之,有效區塊PA是不允許資料寫入操作但允許資料讀取操作的區塊。當儲存於有效區塊PA中的所有資料皆被無效化時,有效區塊PA轉變為空閒區塊PF。
空閒區塊PF是其中所儲存的所有資料皆為無效資料的區塊,並且其中的資料可被抹除。當儲存於空閒區塊PF中的資料被抹除時,空閒區塊PF轉變為抹除區塊PE。
抹除區塊PE是在對空閒區塊PF執行資料抹除操作並完成資料抹除操作之後的區塊。換言之,抹除區塊PE是資料被抹除並且不允許資料寫入操作或資料讀取操作的區塊。當抹除區塊PE被設置為允許資料寫入操作的區塊時,抹除區塊PE轉變為寫入目的地區塊PW。
寫入目的地區塊PW是允許資料寫入操作及資料讀取操作的區塊。當對設置於寫入目的地區塊PW中的所有胞元單元完成資料寫入操作時,或者當記憶體控制器20確定不再對所述區塊執行資料寫入操作而一些胞元單元處於未寫狀態時,寫入目的地區塊PW轉變為有效區塊PA。
當區塊的狀態如上所述轉變時,在圖34所示的定時T1處(即,當區塊的狀態自抹除區塊PE轉變至寫入目的地區塊PW時)產生儲存於歷史值表22Ai中的讀取電壓的初始值。作為另外一種選擇,在圖34所示的定時T2處(亦即,緊接在對寫入目的地區塊PW完成資料寫入操作之後)產生初始值。初始值例如為在設置於NAND記憶體晶片中的唯讀記憶體(read only memory,ROM)區塊中設置的讀取電壓。
在歷史值表22A中,更新值及初始值與每一區塊BLK相關聯。作為另外一種選擇,更新值及初始值可與小於區塊BLK的每一單元(例如,每一串單元SU或每一胞元單元(或字元線))相關聯,或者更新值及初始值可與包括多個胞元單元的每一胞元單元組相關聯。
5.2.3 FBC估算值
接下來,參照圖35來闡述使用歷史值檢查(或0點讀取方法)—即,設置於記憶體控制器20中的歷史值表22A的更新值及初始值—來計算FBC估計值的方法。在一些情形中,在「A」狀態至「G」狀態之間,隨著時間的流逝,「G」狀態的臨限電壓分佈的偏移量大於其他狀態的臨限電壓分佈。因此,在本實施例中,使用用於確定「G」狀態的讀取電壓的更新值及初始值來計算FBC估計值。
圖35示出設置於物理位址BA0的區塊中的目標胞元單元的臨限電壓分佈。在圖35中,由虛線指示緊接在資料寫入操作之後的「G」狀態及「F」狀態的臨限電壓分佈,且由實線指示在資料寫入操作之後經過一段時間的「G」狀態及「F」狀態的臨限電壓分佈。由虛線指示的「G」狀態的臨限電壓分佈與「F」狀態的臨限電壓分佈交疊的交點處的臨限電壓對應於初始值Ng。其中將由實線指示的處於「G」狀態的記憶體胞元的數目與處於「F」狀態的記憶體胞元的數目相加的分佈的谷(即最小值)處的臨限電壓對應於更新值Xg。
記憶體控制器20獲取歷史值表22A中所提供的更新值Xg及初始值Ng,並獲得更新值Xg與初始值Ng之差(即,圖35中所示的差值「a」)。此外,記憶體控制器20基於所述差值來計算FBC估計值。舉例而言,當差值為大時,FBC估計值亦增加。
FBC估計值增加的速率可根據針對區塊重複資料寫入操作及資料抹除操作的次數而改變。圖36示出(A)讀取電壓的更新值與初始值之間的差值與(B)FBC估計值之間的關係。圖36示出資料寫入操作及資料抹除操作重複1次、3,000次及5,000次的情形。
如圖36所示,根據差值「a」計算的FBC估計值隨著針對包括目標胞元單元的區塊重複資料寫入操作及資料抹除操作的次數的增加而增加。
當差值「b」大於差值「a」時,即使重複資料寫入操作及資料抹除操作的次數相同,對應於差值「b」計算的FBC估計值亦大於對應於差值「a」計算的FBC估計值。
5.3.第五實施例的效果
根據第五實施例,可提供一種能夠減少巡檢時間的記憶體系統。
在第五實施例的配置中,可僅使用由記憶體控制器20管理的資訊來計算FBC估計值,而無需自NAND記憶體晶片讀取資料。因此,可相較於在第一實施例至第四實施例中所需的時間進一步減少巡檢操作所需的時間。
6.第六實施例
對第六實施例的記憶體系統進行闡述。在第六實施例中,執行歷史值檢查及巡讀。在歷史值檢查中,判斷是否執行巡讀。在巡讀中,判斷是否使用目標頁面資料來執行刷新處理。此外,在歷史值檢查中,類似於第五實施例,基於由記憶體控制器20管理的資訊來計算FBC估計值,而無需自NAND記憶體晶片讀取資料。在第六實施例中,主要闡述與第三實施例及第五實施例不同的點。
6.1配置
設置於第六實施例的記憶體系統1中的記憶體控制器20及半導體記憶體10的配置及結構相同於上述第五實施例的配置及結構。
6.2操作
對第六實施例的記憶體系統1中的操作進行闡述。
6.2.1巡檢操作
對第六實施例的記憶體系統1中的巡檢操作進行闡述。在第六實施例的巡檢操作中,在歷史值檢查中,記憶體控制器20獲得歷史值表22A中提供的讀取電壓的更新值與初始值之差,以基於所述差來計算FBC估計值。記憶體控制器20基於FBC估計值來判斷是否執行巡讀。此外,在巡讀中,記憶體控制器20判斷是否執行刷新處理。
圖37是示出根據第六實施例的巡檢操作的流程圖。圖38是示出巡檢操作中的歷史值檢查的操作的流程圖。圖39是示出巡檢操作中的巡讀操作的流程圖。藉由該些流程圖中所示的過程進行的操作由記憶體控制器20或控制電路16指示或執行。圖40是示出巡檢操作中記憶體控制器20及NAND記憶體晶片10_1的操作、以及指令及資料的傳輸及接收的圖式。
如圖37所示,記憶體控制器20開始巡檢操作。定期地(或不定期地)開始巡檢操作。
當開始巡檢操作時,執行歷史值檢查(S41)。
圖38及圖40的步驟S41_1及S41_2中所示的歷史值檢查相同於圖29及圖30的步驟S21_1及S21_2中所示的第五實施例的歷史值檢查。
接下來,如圖37及圖40所示,記憶體控制器20的處理器21基於FBC估計值來判斷是否有必要執行巡讀(S42)。除了FBC估計值與參考值(或臨限值)C3a而非參考值C1a進行比較之外,圖37及圖40的步驟S42中所示的巡讀的判斷處理相同於圖19及圖22的步驟S12中所示的第三實施例的第二巡讀的判斷處理。當有必要執行巡讀時(圖37的S42中的是),記憶體控制器20指示NAND記憶體晶片10_1執行巡讀(圖40中的S43_1)。
類似於圖19所示的第三實施例的參考值C1a,具有誤差的估計值的參考值C3a被設置為小於參考值C2的值。
圖39及圖40的步驟S43_2、S43_3及S43_4中所示的巡讀相同於圖21及圖22的步驟S13_2、S13_3及S13_4中所示的第三實施例的第二巡讀。
接下來,如圖37及圖40所示,設置於記憶體控制器20的處理器21中的刷新確定電路21A基於錯誤位元的數目來判斷是否有必要執行刷新處理(S44)。圖27及圖40的步驟S44中所示的判斷處理相同於圖19及圖22的步驟S14中所示的第三實施例的判斷處理。
當有必要執行刷新處理時(圖37的S44中的是),執行刷新處理(S45)。圖37及圖40的步驟S45中所示的刷新處理相同於圖6及圖8的步驟S3中所示的第一實施例的刷新處理。
6.2.2 FBC估計值的計算
如上所述,在第六實施例的記憶體系統1中,記憶體控制器20在歷史值檢查中計算FBC估計值。歷史值檢查的操作細節相同於第五實施例中的操作細節。
6.3.第六實施例的效果
根據第六實施例,可提供一種能夠減少巡檢時間的記憶體系統。
在第六實施例的配置中,可僅使用由記憶體控制器20管理的資訊來計算FBC估計值,而無需自NAND記憶體晶片讀取資料。因此,可相較於在第一實施例至第四實施例中所需的時間進一步減少巡檢操作所需的時間。
此外,在第六實施例的配置中,巡檢操作分二個階段執行,即,歷史值檢查及巡讀,藉此減少了巡檢操作所需的時間。此外,在巡讀中,ECC電路對目標頁面資料的錯誤進行校正並獲取錯誤位元的數目,藉此保持高度可靠的資料保持特性。
儘管已經闡述了某些實施例,但該些實施例僅以舉例方式呈現,並且不旨在限制本揭露的範圍。實際上,在本文中所述的新穎實施例可以各種其他形式來實施;此外,在不背離本揭露的精神的情況下,可對本文中所述的實施例的形式進行各種省略、替換及改變。隨附申請專利範圍及其等效形式旨在覆蓋將落入本揭露的範圍及精神內的此類形式或潤飾。
1:記憶體系統
2:主機
10:半導體記憶體
10_1、10_2、10_3、10_4:NAND快閃記憶體晶片/NAND記憶體晶片
11:記憶體胞元陣列
12:輸入/輸出電路
13:邏輯控制電路
14:就緒/忙碌電路
15:暫存器組
15A:狀態暫存器
15B:位址暫存器
15C:命令暫存器
16:控制電路
16A、21B:FBC估計值產生電路
16B:分量產生電路
17:電壓產生電路
18:列解碼器
19A:行解碼器
19B:資料暫存器
19C:感測放大器
20:記憶體控制器
21:處理器
21A:刷新確定電路
22:記憶體
22A、22Ai、22Au:歷史值表
23_1、23_2:錯誤檢查及校正(ECC)電路
24_1、24_2:NAND介面電路
25:主機介面電路
30:半導體基板
31、32、33、34、35:導電層
40:區塊絕緣層
41:電荷儲存層
42:隧道絕緣層
43:半導體層
A、B、C、D、E、Er、F、G:狀態
a、b:差值
ADD:位址
ALE:位址鎖存賦能訊號
AR、BR、CR、DR、ER、FR、GR、GRa、R1、R2、R3、R4:讀取電壓
AV、BV、CV、DV、EV、FV、GV:驗證電壓
BA0、BA1~BAm:物理位址
BL0、BL1~BLr:位元線
BLK0、BLK1~BLKm:區塊
C0、C1、C1a、C2、C3、C3a:參考值
CA、CG、O1、O2、O3、O4:導通胞元的數目
CEn:晶片賦能訊號
CLE:命令鎖存賦能訊號
CMD:命令
CU:胞元單元
CV1:接觸插塞
DAT:資料
DQ0、DQ1~DQ7:輸入/輸出訊號(I/O訊號)DQ
ERA、ERB:區域
h:最小值
J:值
M1:記憶體胞元的數目
M2、M3:關斷胞元的數目
MP:記憶體柱
MT0~MT7:記憶體胞元電晶體
Ng:初始值
NS:NAND串
P1、P2、P3:差異點
PA:有效區塊
PF:空閒區塊
PE:抹除區塊
PW:寫入目的地區塊
R/Bn:就緒/忙碌訊號
REn:讀取賦能訊號
S1、S1_1、S1_2、S1_3、S1_4、S1_5、S1_6、S1_7、S2、S3、S3_1、S3_2、S3_3、S3_4、S3_5、S3_6、S11、S11_2、S11_3、S11_4、S11_5、S11_6、S11_7、S12、S13、S13_1、S13_2、S13_3、S13_4、S14、S15、S21、S21_1、S21_2、S22、S23、S31、S32、S33、S34、S35、S36、S41、S41_1、S41_2、S42、S43_1、S43_2、S43_3、S43_4、S44、S45:步驟
SGD、SGD0~SGD3、SGS:選擇閘極線
SL:源極線
SLT:狹縫
ST1、ST2:選擇電晶體
STS:狀態資訊
SU、SU0、SU1、SU2、SU3:串單元
T1、T2:定時
TI0、TI1~TIm:產生時間
TU0、TU1~TUm:更新時間
V-V:線
VDD:電源電壓
VREAD:電壓
VSS:接地電壓
WEn:寫入賦能訊號
WL0~WL7:字元線
WPn:寫入保護訊號
X、Y、Z:方向
Xg:更新值
圖1是示出根據第一實施例的記憶體系統的配置的方塊圖。
圖2是示出根據第一實施例的NAND快閃記憶體晶片的配置的圖式。
圖3是根據第一實施例的記憶體胞元陣列中的區塊的電路圖。
圖4A是根據第一實施例的記憶體胞元陣列的剖視圖。
圖4B是沿著圖4A的V-V線的剖視圖。
圖5是示出臨限電壓分佈與根據第一實施例的記憶體胞元電晶體可儲存的資料之間的關係的圖式。
圖6是示出根據第一實施例的巡檢操作的流程圖。
圖7是示出根據第一實施例的巡讀操作的流程圖。
圖8是示出根據第一實施例的巡檢操作的順序圖。
圖9是示出根據第一實施例的錯誤位元的數目的圖式。
圖10A、圖10B及圖10C是示出根據第一實施例的4點讀取方法的圖式。
圖11A、圖11B及圖11C是示出根據第一實施例的3點讀取方法的圖式。
圖12是示出根據第一實施例的1點讀取方法的圖式。
圖13是示出根據第一實施例的1點讀取方法的另一實例的圖式。
圖14是示出根據第二實施例的記憶體系統的配置的方塊圖。
圖15是示出根據第二實施例的NAND快閃記憶體晶片的配置的圖式。
圖16是示出根據第二實施例的巡檢操作的流程圖。
圖17是示出根據第二實施例的巡讀操作的流程圖。
圖18是示出根據第二實施例的巡檢操作的順序圖。
圖19是示出根據第三實施例的巡檢操作的流程圖。
圖20是示出根據第三實施例的第一巡讀操作的流程圖。
圖21是示出根據第三實施例的第二巡讀操作的流程圖。
圖22是示出根據第三實施例的巡檢操作的順序圖。
圖23是示出根據第四實施例的巡檢操作的流程圖。
圖24是示出根據第四實施例的第一巡讀操作的流程圖。
圖25是示出根據第四實施例的第二巡讀操作的流程圖。
圖26是示出根據第四實施例的巡檢操作的順序圖。
圖27是示出根據第五實施例的記憶體系統的配置的方塊圖。
圖28是示出根據第五實施例的巡檢操作的流程圖。
圖29是示出根據第五實施例的歷史值檢查操作的流程圖。
圖30是示出根據第五實施例的巡檢操作的順序圖。
圖31是示出根據第五實施例的歷史值表的實例的圖式。
圖32是示出根據第五實施例對歷史值表的更新值進行更新的操作的流程圖。
圖33A及圖33B是示出根據第五實施例在追蹤操作中二個狀態的臨限電壓分佈的圖式。
圖34是示出根據第五實施例的區塊的狀態轉變的圖式。
圖35是示出根據第五實施例的二個狀態的臨限電壓分佈的圖式。
圖36是示出根據第五實施例的(A)讀取電壓的更新值與初始值之間的差值與(B)失敗位元計數(FBC)估計值之間的關係的圖式。
圖37是示出根據第六實施例的巡檢操作的流程圖。
圖38是示出根據第六實施例的歷史值檢查操作的流程圖。
圖39是示出根據第六實施例的巡讀操作的流程圖。
圖40是示出根據第六實施例的巡檢操作的順序圖。
S1、S1_1、S1_2、S1_3、S1_4、S2、S3、S3_1、S3_2、S3_3、S3_4、S3_5、S3_6:步驟
Claims (20)
- 一種記憶體系統,包括: 半導體記憶體,包括具有多個記憶體胞元的胞元單元、以及用於控制所述多個記憶體胞元的控制電路;以及 控制器,被配置成控制所述半導體記憶體,其中 所述控制電路被配置成: 使用一或多個讀取電壓來對所述胞元單元執行資料讀取操作, 藉由所述資料讀取操作來獲取第一資料, 基於所述第一資料來產生具有較所述第一資料小的資料大小的第二資料,以及 將所述第二資料傳輸至所述控制器,且 所述控制器被配置成基於所述第二資料來判斷是否重寫寫入所述胞元單元中的頁面資料。
- 如請求項1所述的記憶體系統,其中 所述控制電路被配置成使用多個讀取電壓來對所述胞元單元執行所述資料讀取操作。
- 如請求項1所述的記憶體系統,其中 在對所述胞元單元執行的所述資料讀取操作中,所述控制電路使用用於所述胞元單元的第一讀取電壓、第二讀取電壓、第三讀取電壓及第四讀取電壓來執行讀取,以獲取分別對應於所述第一讀取電壓、所述第二讀取電壓、所述第三讀取電壓及所述第四讀取電壓的所述第一資料,所述第二讀取電壓高於所述第一讀取電壓,所述第三讀取電壓高於所述第二讀取電壓,所述第四讀取電壓高於所述第三讀取電壓,並且所述第一資料包括所述多個記憶體胞元中藉由分別使用所述第一讀取電壓、所述第二讀取電壓、所述第三讀取電壓及所述第四讀取電壓的所述資料讀取操作而導通的第一數目的記憶體胞元、第二數目的記憶體胞元、第三數目的記憶體胞元及第四數目的記憶體胞元, 所述控制電路基於所述第一讀取電壓、所述第二讀取電壓、所述第三讀取電壓及所述第四讀取電壓以及所述第一數目的記憶體胞元、所述第二數目的記憶體胞元、所述第三數目的記憶體胞元及所述第四數目的記憶體胞元來分別計算第一差異點、第二差異點及第三差異點, 所述第一差異點由第一平均值與第一值表示,所述第一平均值是所述第一讀取電壓與所述第二讀取電壓的算術平均數,所述第一值是所述第二數目的記憶體胞元與所述第一數目的記憶體胞元之差, 所述第二差異點由第二平均值與第二值表示,所述第二平均值是所述第二讀取電壓與所述第三讀取電壓的算術平均數,所述第二值是所述第三數目的記憶體胞元與所述第二數目的記憶體胞元之差, 所述第三差異點由第三平均值與第三值表示,所述第三平均值是所述第三讀取電壓與所述第四讀取電壓的算術平均數,所述第三值是所述第四數目的記憶體胞元與所述第三數目的記憶體胞元之差,並且 所述控制電路基於穿過所述第一差異點、所述第二差異點及所述第三差異點的近似曲線的最小值來產生所述第二資料。
- 如請求項3所述的記憶體系統,其中 所述近似曲線由二次函數表示。
- 如請求項1所述的記憶體系統,其中 在對所述胞元單元執行的所述資料讀取操作中,所述控制電路使用用於所述胞元單元的第一讀取電壓、第二讀取電壓及第三讀取電壓來執行讀取,以獲取分別對應於所述第一讀取電壓、所述第二讀取電壓及所述第三讀取電壓的所述第一資料,所述第二讀取電壓高於所述第一讀取電壓,所述第三讀取電壓高於所述第二讀取電壓,並且所述第一資料包括所述多個記憶體胞元中藉由分別使用所述第一讀取電壓、所述第二讀取電壓及所述第三讀取電壓的所述資料讀取操作而導通的第一數目的記憶體胞元、第二數目的記憶體胞元及第三數目的記憶體胞元, 所述控制電路基於所述第一讀取電壓、所述第二讀取電壓及所述第三讀取電壓以及所述第一數目的記憶體胞元、所述第二數目的記憶體胞元及所述第三數目的記憶體胞元來分別獲取第一差異點及第二差異點, 所述第一差異點由第一平均值與第一差值表示,所述第一平均值是所述第一讀取電壓與所述第二讀取電壓的算術平均數,所述第一差值是所述第二數目的記憶體胞元與所述第一數目的記憶體胞元之差, 所述第二差異點由第二平均值與第二差值表示,所述第二平均值是所述第二讀取電壓與所述第三讀取電壓的算術平均數,所述第二差值是所述第三數目的記憶體胞元與所述第二數目的記憶體胞元之差,並且 在將所述多個記憶體胞元中的每一者的臨限電壓表示在水平軸上並且將記憶體胞元數目表示在垂直軸上時,所述控制電路計算第一對角線與第二對角線的交點,並且將對應於所述交點的記憶體胞元數目設置為所述第二資料,所述第一對角線連接所述第二差異點與對應於所述第一平均值的第一臨限電壓,所述第二對角線連接所述第一差異點與對應於所述第二平均值的第二臨限電壓。
- 如請求項1所述的記憶體系統,其中 所述多個記憶體胞元中的每一者儲存具有與多個臨限電壓對應的不同值的資料, 所述控制電路設置第一讀取電壓,用於確定第一資料及第二資料,所述第一資料儲存於所述多個記憶體胞元中臨限電壓等於或高於所述多個臨限電壓中最高的第一臨限電壓的記憶體胞元中,所述第二資料儲存於所述多個記憶體胞元中臨限電壓低於所述第一臨限電壓的記憶體胞元中, 在對所述胞元單元執行的所述資料讀取操作中,所述控制電路使用用於所述胞元單元的所述第一讀取電壓來執行讀取,以獲取對應於所述第一讀取電壓的所述第一資料,所述第一資料包括所述多個記憶體胞元中藉由使用所述第一讀取電壓的所述資料讀取操作而關斷的第一數目的記憶體胞元,且 所述控制電路計算所述第一數目的記憶體胞元對設置於所述胞元單元中的所述多個記憶體胞元的數目的比率,並基於所述比率來產生所述第二資料。
- 如請求項1所述的記憶體系統,其中 當所述第二資料高於第一臨限值時,所述控制器執行對寫入所述胞元單元中的所述頁面資料的重寫,並且當所述第二資料等於或小於所述第一臨限值時,所述控制器不執行對寫入所述胞元單元中的所述頁面資料的所述重寫。
- 如請求項1所述的記憶體系統,其中 所述多個記憶體胞元中的每一者儲存具有與多個臨限電壓對應的不同值的資料,並且所述一或多個讀取電壓中的每一者是用於確定儲存於所述多個記憶體胞元中的一個記憶體胞元中的資料的值的電壓。
- 如請求項1所述的記憶體系統,其中 所述半導體記憶體更包括字元線,並且設置於所述胞元單元中的所述多個記憶體胞元連接至所述字元線。
- 如請求項1所述的記憶體系統,其中 所述第二資料是藉由對所述胞元單元執行的所述資料讀取操作而獲得的所述頁面資料中的錯誤位元數目的估計值。
- 一種記憶體系統,包括: 第一記憶體,包括具有多個記憶體胞元的胞元單元; 第二記憶體;以及 控制器,被配置成: 在所述第二記憶體中儲存與對應於所述胞元單元的讀取電壓相關的第一值, 基於自所述第二記憶體讀取的所述第一值來計算第一資料,以及 基於所述第一資料來判斷是否重寫寫入所述胞元單元中的頁面資料。
- 如請求項11所述的記憶體系統,其中 所述第一值是在第一時間的第一讀取電壓與在所述第一時間之後的第二時間的第二讀取電壓之間的差值,並且 所述第一讀取電壓是在所述第一時間為所述多個記憶體胞元設置的讀取電壓,且所述第二讀取電壓是在對所述多個記憶體胞元執行的第一操作期間在所述第二時間偵測到的讀取電壓。
- 如請求項12所述的記憶體系統,其中 所述多個記憶體胞元中的每一者儲存具有與多個臨限電壓對應的不同值的資料,並且所述第一操作是用於以下目的的操作:偵測用於確定儲存於所述多個記憶體胞元中的一個記憶體胞元中的資料的值的電壓。
- 如請求項12所述的記憶體系統,其中 所述控制器電路被配置成因應於所述第一值大於第一臨限值而確定重寫寫入所述胞元單元中的所述頁面資料。
- 如請求項12所述的記憶體系統,其中 所述控制器電路被配置成藉由追蹤操作而獲得所述第二讀取電壓。
- 如請求項11所述的記憶體系統,其中 所述第一資料是藉由對所述胞元單元執行的資料讀取操作而獲得的所述頁面資料中的錯誤位元數目的估計值。
- 一種記憶體系統,包括: 半導體記憶體,包括具有多個記憶體胞元的胞元單元、以及用於控制所述多個記憶體胞元的控制電路;以及 控制器,被配置成控制所述半導體記憶體,其中 所述控制電路被配置成: 使用一或多個讀取電壓來對所述胞元單元執行第一資料讀取操作, 藉由所述第一資料讀取操作來獲取第一資料, 基於所述第一資料來產生具有較所述第一資料小的資料大小的第二資料,以及 將所述第二資料傳輸至所述控制器, 所述控制器基於所述第二資料來判斷所述控制電路是否將對所述胞元單元執行第二資料讀取操作, 因應於來自所述控制器的對所述胞元單元執行所述第二資料讀取操作的指令,所述控制電路對所述胞元單元執行所述第二資料讀取操作,藉由所述第二資料讀取操作來獲取頁面資料,並將所述頁面資料傳輸至所述控制器,並且 所述控制器基於所述頁面資料來判斷是否重寫寫入所述胞元單元中的所述頁面資料。
- 如請求項17所述的記憶體系統,其中 所述第二資料是藉由對所述胞元單元執行的所述第一資料讀取操作而獲得的所述頁面資料中的錯誤位元數目的估計值。
- 如請求項17所述的記憶體系統,其中 在對所述胞元單元執行的所述第一資料讀取操作中,所述控制電路使用用於所述胞元單元的第一讀取電壓、第二讀取電壓、第三讀取電壓及第四讀取電壓來執行讀取,以獲取分別對應於所述第一讀取電壓、所述第二讀取電壓、所述第三讀取電壓及所述第四讀取電壓的所述第一資料,所述第二讀取電壓高於所述第一讀取電壓,所述第三讀取電壓高於所述第二讀取電壓,所述第四讀取電壓高於所述第三讀取電壓,並且所述第一資料包括所述多個記憶體胞元中藉由分別使用所述第一讀取電壓、所述第二讀取電壓、所述第三讀取電壓及所述第四讀取電壓的所述第一資料讀取操作而導通的第一數目的記憶體胞元、第二數目的記憶體胞元、第三數目的記憶體胞元及第四數目的記憶體胞元, 所述控制電路基於所述第一讀取電壓、所述第二讀取電壓、所述第三讀取電壓及所述第四讀取電壓以及所述第一數目的記憶體胞元、所述第二數目的記憶體胞元、所述第三數目的記憶體胞元及所述第四數目的記憶體胞元來分別計算第一差異點、第二差異點及第三差異點, 所述第一差異點由第一平均值與第一值表示,所述第一平均值是所述第一讀取電壓與所述第二讀取電壓的算術平均數,所述第一值是所述第二數目的記憶體胞元與所述第一數目的記憶體胞元之差, 所述第二差異點由第二平均值與第二值表示,所述第二平均值是所述第二讀取電壓與所述第三讀取電壓的算術平均數,所述第二值是所述第三數目的記憶體胞元與所述第二數目的記憶體胞元之差, 所述第三差異點由第三平均值與第三值表示,所述第三平均值是所述第三讀取電壓與所述第四讀取電壓的算術平均數,所述第三值是所述第四數目的記憶體胞元與所述第三數目的記憶體胞元之差,並且 所述控制電路基於穿過所述第一差異點、所述第二差異點及所述第三差異點的近似曲線的最小值來產生所述第二資料。
- 如請求項17所述的記憶體系統,其中 在對所述胞元單元執行的所述第一資料讀取操作中,所述控制電路使用用於所述胞元單元的第一讀取電壓、第二讀取電壓及第三讀取電壓來執行讀取,以獲取分別對應於所述第一讀取電壓、所述第二讀取電壓及所述第三讀取電壓的所述第一資料,所述第二讀取電壓高於所述第一讀取電壓,所述第三讀取電壓高於所述第二讀取電壓,並且所述第一資料包括所述多個記憶體胞元中藉由分別使用所述第一讀取電壓、所述第二讀取電壓及所述第三讀取電壓的所述第一資料讀取操作而導通的第一數目的記憶體胞元、第二數目的記憶體胞元及第三數目的記憶體胞元, 所述控制電路基於所述第一讀取電壓、所述第二讀取電壓及所述第三讀取電壓以及所述第一數目的記憶體胞元、所述第二數目的記憶體胞元及所述第三數目的記憶體胞元來分別獲取第一差異點及第二差異點, 所述第一差異點由第一平均值與第一差值表示,所述第一平均值是所述第一讀取電壓與所述第二讀取電壓的算術平均數,所述第一差值是所述第二數目的記憶體胞元與所述第一數目的記憶體胞元之差, 所述第二差異點由第二平均值與第二差值表示,所述第二平均值是所述第二讀取電壓與所述第三讀取電壓的算術平均數,所述第二差值是所述第三數目的記憶體胞元與所述第二數目的記憶體胞元之差,並且 在將所述多個記憶體胞元中的每一者的臨限電壓表示在水平軸上並且將記憶體胞元數目表示在垂直軸上時,所述控制電路計算第一對角線與第二對角線的交點,並且將對應於所述交點的記憶體胞元數目設置為所述第二資料,所述第一對角線連接所述第二差異點與對應於所述第一平均值的第一臨限電壓,所述第二對角線連接所述第一差異點與對應於所述第二平均值的第二臨限電壓。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022-149189 | 2022-09-20 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202414414A true TW202414414A (zh) | 2024-04-01 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10573394B2 (en) | Memory system | |
US11139007B2 (en) | Semiconductor storage device and memory system | |
US11461044B2 (en) | Nonvolatile memory device controlling partical usage restriction for memory cell array | |
US10720219B2 (en) | Semiconductor memory device and memory system that performs a normal read operation or a special read operation including a tracking read followed by a shift read | |
US10141060B1 (en) | Memory system | |
KR102192910B1 (ko) | 반도체 장치, 메모리 시스템 및 이의 동작 방법 | |
JP4945183B2 (ja) | メモリコントローラ | |
US20230047861A1 (en) | Memory system and semiconductor memory device | |
JP2009140564A (ja) | Nand型フラッシュメモリおよびメモリシステム | |
US20150221380A1 (en) | Semiconductor device | |
KR20100104840A (ko) | 셀 패턴에 따라 추가 ecc가 가능한 반도체 메모리 장치,상기 장치를 포함하는 전자 시스템 | |
US9847135B2 (en) | Memory device and method of reading data | |
US10622079B2 (en) | Memory device and memory system | |
TW202414414A (zh) | 記憶體系統 | |
US20240096423A1 (en) | Memory system | |
US11594289B2 (en) | Semiconductor device, memory system and semiconductor memory device | |
US11694750B2 (en) | Memory system, memory device, and control method of memory system for generating information from a threshold voltage | |
US11948642B2 (en) | Semiconductor flash memory device with voltage control on completion of a program operation and subsequent to completion of the program operation | |
TWI764569B (zh) | 半導體記憶裝置 | |
JP2023023483A (ja) | メモリシステム |