TW201939508A - 用於決定非揮發性記憶體中位元值的方法與系統 - Google Patents
用於決定非揮發性記憶體中位元值的方法與系統 Download PDFInfo
- Publication number
- TW201939508A TW201939508A TW107107412A TW107107412A TW201939508A TW 201939508 A TW201939508 A TW 201939508A TW 107107412 A TW107107412 A TW 107107412A TW 107107412 A TW107107412 A TW 107107412A TW 201939508 A TW201939508 A TW 201939508A
- Authority
- TW
- Taiwan
- Prior art keywords
- voltage
- memory
- sensing voltage
- memory unit
- logic
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C29/30—Accessing single arrays
- G11C29/34—Accessing multiple bits simultaneously
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C29/50004—Marginal testing, e.g. race, voltage or current testing of threshold voltage
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/50—Marginal testing, e.g. race, voltage or current testing
- G11C2029/5004—Voltage
Landscapes
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
本發明揭露一種用於決定具有數個記憶單元的一非揮發性記憶體位元值的方法與系統,其中每一記憶單元用於儲存一位元值。該方法包含步驟:a)提供一第一測試感測電壓至該些記憶單元並計算單元計數;b)提供另一測試感測電壓至該些記憶單元並計算本步驟與前步驟間單元計數的一差異量;c)提供再另一測試感測電壓並計算本步驟與前步驟間單元計數的另一差異量;d)執行步驟c)N次;e)計算單元計數差額並指定索引數給每一群記憶單元;f)選擇一電壓為更新感測電壓。
Description
本發明關於一種用於決定非揮發性記憶體中位元值的方法與系統,特別是一種藉由數個感測電壓來使位元值包含軟決定資料,以決定非揮發性記憶體中位元值的方法與系統。
非揮發性記憶體,諸如硬碟、EEPROM或快閃記憶體,是最常用,可於一段時間儲存資料而無須電力的硬體。尤其是快閃記憶體,其廣泛用於可攜式設備,便利人們的日常生活。我們可以在筆記型電腦、智能手機,甚至是多功能電子手錶上看到它。快閃記憶體有兩大類,NAND快閃記憶體和NOR快閃記憶體。儘管這些快閃記憶體的性能不同,但是維持資訊,即位元的邏輯0或邏輯1的基礎是相同的。快閃記憶體將資訊儲存在一陣列的記憶單元中,該些記憶單元由浮柵晶體管或電荷陷阱晶體管所構成。物理實體上,記憶單元有許多電子注入並由每個記憶單元的浮柵或電荷陷阱層保留。當需要讀取該資訊時,應施加感測電壓到記憶單元的控制柵極。如果記憶單元的閥值電壓低於該感測電壓,儲存在該記憶單元中的資料為邏輯1,反之則為邏輯0。
以上的描述是關於一個記憶單元的操作。在一個快閃記憶體中,可能有成千上萬個記憶單元排列於數塊的頁中。因製造過程和使用情況的差異,每個記憶單元的閥值電壓可能不會相同。換句話說,當一個感測電壓施加到所有記憶單元時,具有位元邏輯0的記憶單元可能會被認定為邏輯1,反之亦然。另一方面,為了確定是否該位元正確地儲存,即沒有被翻轉,在該資訊進一步送出前將需要ECC(錯誤糾正碼)來檢查資訊或局部資訊。在讀取運作後應可得到軟決定資料。因此,獲取儲存位元的軟決定資料的技術是必需的。
請參閱圖1,該圖顯示了一個快閃記憶體的閥值電壓分佈圖。理想上,當施加一感測電壓1時,具有閥值電壓低於感測電壓1的某些記憶單元會被確認為邏輯1(左側的實心分佈曲線),而其它具有閥值電壓高於感測電壓1的記憶單元會被確認為邏輯0(已程式化,左側的實心分佈曲線)。然而,一個真實的情況將會像兩條虛線分佈曲線間的重疊部分(虛線區域)。重疊部分意味施加的感測電壓1將被用來得知某些記憶單元中的不正確邏輯值(通過計算虛線區域可以得到不確定的記憶單元的個數)。可以看出,虛線區間由表示感測電壓1的線分開。如果是均等地分開,也就是說,該線左側的面積與該線右側的面積相同,提供最佳軟決定資料的一個精準的感測電壓將可用於ECC操作,這是上述需求常用的技術。經過一段時間的使用後,記憶單元閥值電壓的分佈曲線可能會發生變化,例如,改變為圖1中的點狀分佈曲線。如果仍然使用感測電壓1,則無法得到用於ECC操作的最佳軟決定資料。在圖1中,已知對於改變情況的精準的感測電壓是一個感測電壓2。然而,因為記憶單元閥值電壓的分佈曲線隨時變動,難以動態掌握感測電壓2。關於這個問題的研究不多。
因此,需要一種用於決定非揮發性記憶體中位元值軟決定資料的創新方法與系統。同時,也能找到施加的精準感測電壓。
本段文字提取和編譯本發明的某些特點。其它特點將被揭露於後續段落中。其目的在涵蓋附加的申請專利範圍之精神和範圍中,各式的修改和類似的排列。
為了滿足上述需求,本發明揭露一種用於決定具有數個記憶單元的一非揮發性記憶體位元值的方法,其中每一記憶單元用於儲存一位元值。該方法 包含步驟:a)提供一第一測試感測電壓至該些記憶單元並計算該些記憶單元的一單元計數,該些記憶單元的具有的閥值電壓高於該第一測試感測電壓;b)提供另一測試感測電壓至該些記憶單元並計算本步驟與前步驟間單元計數的一差異量;c)如果前步驟中單元計數的該差異量是正值,提供高於前些步驟中最高的測試感測電壓的再另一測試感測電壓至該些記憶單元,或者如果前步驟中單元計數的該差異量是負值,提供低於前些步驟中最低的測試感測電壓的再另一測試感測電壓至該些記憶單元,並計算本步驟與前步驟間單元計數的另一差異量;d)執行步驟c)N次;e)計算相鄰二測試感測電壓之單元計數的差額並指定一索引數給每一群具有閥值電壓介於相同的相鄰二測試感測電壓間、高於最高的測試感測電壓或低於最低的測試感測電壓的記憶單元;f)選擇介於在步驟e)中產生最少差額的相鄰二測試感測電壓間的一電壓為一更新感測電壓;及g)當記憶單元的閥值電壓低於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯1,或當記憶單元的閥值電壓高於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯0。
該方法進一步包含步驟:h)檢查基於步驟g)中邏輯1與0的資訊是否能由一ECC解碼程序解碼;及i)如果步驟h)的答案為否,選擇介於步驟e)中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓。
最好,當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料,且當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。N可為奇數,該些索引數作可為LLR(Log-Likelihood Ratio)值。
本發明亦揭露另一種用於決定具有數個記憶單元的一非揮發性記憶體位元值的方法,其中每一記憶單元用於儲存一位元值。該方法 包含步驟: a)提供一第一測試感測電壓至該些記憶單元並計算該些記憶單元的一單元計數,該些記憶單元的具有的閥值電壓低於該第一測試感測電壓;b)提供另一測試感測電壓至該些記憶單元並計算本步驟與前步驟間單元計數的一差異量;c)如果前步驟中單元計數的該差異量是負值,提供高於前些步驟中最高的測試感測電壓的再另一測試感測電壓至該些記憶單元,或者如果前步驟中單元計數的該差異量是正值,提供低於前些步驟中最低的測試感測電壓的再另一測試感測電壓至該些記憶單元,並計算本步驟與前步驟間單元計數的另一差異量;d)執行步驟c)N次;e)計算相鄰二測試感測電壓之單元計數的差額並指定一索引數給每一群具有閥值電壓介於相同的相鄰二測試感測電壓間、高於最高的測試感測電壓或低於最低的測試感測電壓的記憶單元;f)選擇介於在步驟e)中產生最少差額的相鄰二測試感測電壓間的一電壓為一更新感測電壓;及g)當記憶單元的閥值電壓低於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯1,或當記憶單元的閥值電壓高於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯0。
該方法進一步包含步驟:h)檢查基於步驟g)中邏輯1與0的資訊是否能由一ECC解碼程序解碼;及i)如果步驟h)的答案為否,選擇介於步驟e)中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓。
最好,當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料,且當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。N可為奇數,該些索引數作可為LLR值。
本發明亦揭露一種用於決定具有數個記憶單元的一非揮發性記憶體位元值的系統,每一記憶單元用於儲存一位元值。該系統包含:一數位訊號執行單元,用於當接收到一讀取命令時控制提供給記憶單元以偵測其閥值電壓的感測電壓、執行上述其一的方法,與提供儲存於記憶單元中帶有索引數的資訊;及一糾錯碼單元,用於糾正該資訊中的錯誤位元並從該資訊中產生一正確訊息。
該方法進一步包含步驟:h)檢查基於步驟g)中邏輯1與0的資訊是否能由一ECC解碼程序解碼;及i)如果步驟h)的答案為否,選擇介於步驟e)中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓。
最好,當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料,且當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。N可為奇數,該些索引數作可為LLR值。
藉由施加不同的測試感測電壓來偵測記憶單元的閥值電壓,索引數形式的軟決定資料能被提供於進一步的ECC解碼。同時,也可以找到精準的感測電壓。上述的需求可以滿足。
本發明將藉由參照下列的實施方式而更具體地描述。
請參閱圖2,該圖為顯示一電子設備架構的方框圖,該電子設備需要資料儲存的功能。因而,該電子設備可以是智慧型手機、平板電腦、數位相機,甚至可攜式儲存設備(隨身碟)。該電子設備通常有幾個關鍵組件:一主機10、一記憶體控制器20及一NAND快閃記憶體30。主機10負責電子設備的特徵功能的運作,例如數位相機的拍照功能。主機10產生大量的資料儲存在NAND快閃記憶體30中並可自其中讀取資料。記憶體控制器20,包含用於決定一個具有數個記憶單元的非揮發性記憶體的位元值的一系統200,用來作為橋接主機10與NAND快閃記憶體30間資料流的工具。NAND快閃記憶體30包含大量的記憶單元而每一個記憶單元用來儲存一個位元值,邏輯1或邏輯0。一定數量的記憶單元安排在一頁(page)中,數頁形成一塊(block)。塊是基本擦除資料以複寫的單元,頁是執行寫入的基本單元。為了說明起見,在本實施例中,NAND快閃記憶體30是一個單層單元(Single-Level Cell,SLC)NAND快閃記憶體。
記憶體控制器20具有一執行單元201、一輸入與輸出單元202、一唯讀記憶體單元203、一暫存單元204、一數位訊號執行單元205與一糾錯碼單元206。執行單元201是記憶體控制器20中的基本元件,它可以控制和協調記憶體控制器20中所有其它元件的運作以便滿足來自主機10的讀寫命令,它還可以控制提供給NAND快閃記憶體30中記憶單元的感測電壓以獲取記憶單元的狀態。輸入與輸出單元202負責主機10與NAND快閃記憶體30間資料的傳輸,前述資料的資料型態為位元1與0。唯讀記憶體單元203為執行單元201保存必要的韌體來調整記憶體控制器20的運作。暫存單元204用來暫時地儲存由NAND快閃記憶體30讀來的資料,該資料可能包含翻轉位元,需要執行ECC解碼後才能通過輸入與輸出單元202發送給主機10。實作上,它可以是一個隨機存取記憶體(Random Access Memory,RAM)模組。
依照本發明,用於決定具有數個記憶單元的一非揮發性記憶體中位元值的系統200包含該數位訊號執行單元205與糾錯碼單元206,前述每一記憶單元儲存一個位元值。由另一觀點觀之,因為一個積體晶片可以包含本發明所揭露的全部特徵,數位訊號執行單元205與糾錯碼單元206是嵌設於記憶體控制器20中的。然而,系統200也可以是分離設置的模組,協助現有的記憶體控制器進行位元值辨識和ECC解碼,本發明未限定其形態。
數位訊號執行單元205可以當從主機10接收到讀取命令時,控制記憶體控制器20提供記憶單元用以偵測憶單元閥值電壓的感測電壓,它也可以執行一個位元值決定的程序。此外,數位訊號執行單元205能由位元值決定程序提供儲存於記憶單元中,帶有索引數的資訊。該位元值決定程序為本發明所揭露的方法。為了更好地理解該方法,請參閱圖3與圖4。圖3為該方法的流程圖,圖4說明感測電壓如何提供以決定NAND快閃記憶體30中記憶單元的邏輯1與邏輯0。
本方法的第一步驟為提供一第一測試感測電壓至該些記憶單元並計算該些記憶單元的一單元計數,該些記憶單元的具有的閥值電壓高於該第一測試感測電壓(S01)。如圖4所示,提供的第一測試感測電壓標示為Vt1。如上所述,每一個記憶單元可能具有與其它記憶單元不同的閥值電壓。因而,當施加Vt1時,每一個記憶單元將回應本身閥值電壓的狀態:高於或低於前述的第一測試感測電壓。依照步驟S01,僅具有閥值電壓高於第一測試感測電壓的記憶單元列入計數。例如,單元計數的數量可能為70,000。在剛情況下記憶單元可被定義為邏輯0狀態。邏輯0狀態意味一個記憶單元已被程式化,而邏輯1狀態意味該記憶單元未被程式化。每一個記憶單元與其它記憶單元有不同閥值電壓的原因也可能是製程上的差異。此外,熱電子注入的程度也起著重要的作用。在NAND快閃記憶體30出廠時,Vt1可以使用預設的感測電壓。Vt1粗略地將具有較高閥值電壓之邏輯1的記憶單元與具有較低閥值電壓之邏輯0的記憶單元分開,儘管事實上如果一個實際感測電壓偏離Vt1的話,某些邏輯值會翻轉。當本方法應用時,本實施例中NAND快閃記憶體30的有數量相近的邏輯1與邏輯0記憶單元,且所有的頁都需要被使用(寫入)過很多次;至少,所有的頁應該被使用過一次,這是應用本方法的前提。最好,NAND快閃記憶體30已經被均衡寫入了幾個週期,並且滿足老化條件。
本方法的第二步驟為提供另一測試感測電壓至該些記憶單元並計算本步驟與前步驟間單元計數的一差異量(S02)。雖然Vt1可能不是將邏輯1和邏輯0記憶單元分開的真正的感測電壓,當給定第二個測試測電壓Vt2時,必定有大量的邏輯1變為邏輯0。在本實施例中,Vt2低於Vt1。指出Vt1與Vt2的線之間用點標記的區域代表施加Vt1時的單元計數與施加Vt2時的單元計數間的一差額,這是一個正數。然而,步驟S02中單元計數的差異量指的是通過從後步驟單元計數減去前步驟單元計數而獲得的數值。因而,單元計數的差異量可能是正值或負值。正值的單元計數差異量意味當施加Vt2時,單元計數增加,更多的記憶單元被確認為邏輯0。相反地,負值的單元計數差異量意味單元計數減少,較少的記憶單元被確認為邏輯0。在圖4中,Vt1與Vt2間單元計數的差異量為+500,差額因此為500。對以下所述任意相鄰二測試感測電壓來說,其間的單元計數的差額在虛線區域內以一數字表示。如果該差額為負值,該數字包含於一對括號內。
接著,依照本發明,一步驟為如果前步驟中單元計數的該差異量是正值,提供高於前些步驟中最高的測試感測電壓的再另一測試感測電壓至該些記憶單元,或者如果前步驟中單元計數的該差異量是負值,提供低於前些步驟中最低的測試感測電壓的再另一測試感測電壓至該些記憶單元,並計算本步驟與前步驟間單元計數的另一差異量(S03)。在圖4中,提供了一第三測試感測電壓,標記為Vt3。因為步驟S02中的差異量是正值,Vt3高於最高的測試感測電壓,Vt1。除此之外,在其它實施例中,則會看起來像圖5中發生的一般。在圖5中,由Vt2與Vt1所導致的單元計數的差異量是負值(-1000)。因而,Vt3變成低於最低的測試感測電壓,Vt1。此時,單元計數的另一差異量便可得到。新的單元計數的差異量(施加Vt3時的單元計數減去施加Vt2時的單元計數;實作上,只能獲得單元計數的差異量)便可被計算,其值為-1500。要注意的是因為得到單元計數的第二個差異量,Vt1與Vt3間的差額可因此得到:其為-1000,由-1500+500計算得來(新的單元計數的差異量+前一次計算的差額)。
接著,執行步驟S03N次(S04)。包含使用於步驟S01中的Vt1與使用於步驟S02中的Vt2,共計有N+2個測試感測電壓被用來執行一次讀取操作。測試感測電壓的數量是用來各別地分群邏輯1記憶單元與邏輯0記憶單元,邏輯1記憶單元分群的數量與邏輯0記憶單元分群的數量相同。因而,N+2應為奇數;也就是說,N為奇數。例如,在本實施例中N為5。施加了7個測試感測電壓(依序為Vt1、Vt2、Vt3、Vt4、Vt5、Vt6與Vt7),步驟S03重複了5次。因為本步驟第一實施時單元計數差異量是負值,當第二次重複步驟S03時,Vt4低於最低的測試感測電壓,Vt2。測試感測電壓的施加方式是交替地使用二極端方向外的電壓,即Vt6 < Vt4 < Vt2而Vt3 < Vt5 < Vt7。如果還有兩個測試感測電壓,Vt8與Vt9,那麼Vt8應低於Vt6,Vt9應高於Vt7。在其它實施例中,施加順序可以改變。Vt2與Vt3可能為兩端極值,其它的測試感測電壓交替地落於兩極端值之間,例如,Vt2 < Vt4 < Vt6 < Vt1 < Vt7 < Vt5 < Vt3。要注意的是,在本實施例中,任意相鄰二測試感測電壓間的電壓差異相同,例如0.05V。在其它實施例中,其間差異可能會變化而不是個固定值。
本方法的第五步驟為計算相鄰二測試感測電壓之單元計數的差額並指定一索引數給每一群具有閥值電壓介於相同的相鄰二測試感測電壓間、高於最高的測試感測電壓或低於最低的測試感測電壓的記憶單元(S05)。如圖4所示,隨閥值電壓的增加,記憶單元的群被賦予0到7的索引數。在本實施例中,索引數成為一個上升序列。在其它實施例中,也可以是下降序列;整數可以不是連續的,例如0、2、4、6、8、10、12與14,也可以是負數,例如-8、-6、-4、-2、0、2、4 與6,甚至是隨機的,例如4、7、5、6、1、3、2與0。索引數被用來描述一個位元值是邏輯1或邏輯0的可能性。換句話說,索引數被用作決定一個位元值的軟決定資料。
本方法的第六步驟為選擇介於在步驟(S05)中產生最少差額的相鄰二測試感測電壓間的一電壓為一更新感測電壓(S06)。以圖4為例,最少差額發生於Vt1與Vt2之間。如果Vt1為1.65V且Vt2為1.70V,從而,1.65V、1.66V、1.67V、1.68V、1.69V與1.70V中之一者可被選為更新感測電壓。如果允許,電壓值可以包含小數點下第三位,例如1.688V,或甚至更小的位數。
本方法的最後一個步驟為當記憶單元的閥值電壓低於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯1,或當記憶單元的閥值電壓高於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯0(S07)。如上所述,在本實施例中以Vt1作為更新感測電壓,參照區間I的記憶單元為帶有索引數0軟決定資料的邏輯1,參照區間II的記憶單元為帶有索引數1軟決定資料的邏輯1,參照區間III的記憶單元為帶有索引數2軟決定資料的邏輯1,參照區間IV的記憶單元為帶有索引數3軟決定資料的邏輯1,參照區間V的記憶單元為帶有索引數4軟決定資料的邏輯0,參照區間VI的記憶單元為帶有索引數5軟決定資料的邏輯0,參照區間VII的記憶單元為帶有索引數6軟決定資料的邏輯0,及參照區間VIII的記憶單元為帶有索引數7軟決定資料的邏輯0。軟決定資料提供於ECC解碼之用,比如LDPC(Low Density Parity Check)解碼。
在一例子中,當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料。如果記憶單元具有的閥值電壓等於更新感測電壓(此意味當施加更新感測電壓時,記憶單元難以由其閥值電壓確認為邏輯1或邏輯0;它們有機會成為邏輯1或邏輯0,例如50%的邏輯1與50%的邏輯0),記憶單元的位元值可選擇為1或0依賴ECC解碼的結果。這意味具有索引數0的記憶單元有最強的邏輯1特性(無疑可被決定為邏輯1),具有索引數1的記憶單元有第二強的邏輯1特性(可被決定為邏輯1,但在ECC解碼後有非常低的可能性是邏輯0)。具有索引數2的記憶單元有第二弱的邏輯1特性(可被決定為邏輯1,但在ECC解碼後有低的可能性是邏輯0)。具有索引數3的記憶單元有最弱的邏輯1特性(可被決定為邏輯1,但在ECC解碼後有較高的可能性是邏輯0)。相似地,在其它例子中,當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。也就是說,具有索引數4的記憶單元有最弱的邏輯0特性(可被決定為邏輯0,但在ECC解碼後有較高的可能性是邏輯1),具有索引數5的記憶單元有第二弱的邏輯0特性(可被決定為邏輯0,但在ECC解碼後有低的可能性是邏輯1),具有索引數6的記憶單元有第二強的邏輯0特性(可被決定為邏輯0,但在ECC解碼後有非常低的可能性是邏輯1),及具有索引數7的記憶單元有最強的邏輯0特性(無疑可被決定為邏輯0)。最好,該些索引數用作為LLR(Log-Likelihood Ratio)值。
如果兩對相鄰二感測電壓具有相同的差額,其最高與最低的感測電壓間任何的電壓都能被選為更新感測電壓。例如,如果區間IV與區間V都為相同的差額,500,Vt2與Vt3間任何的電壓都能被選為更新感測電壓。
這裡,更新感測電壓可以是一個精準的感測電壓來定義邏輯1與邏輯0,並可以作為下一回讀取運作時的第一測試感測電壓。當接收到讀取命令時,本方法可使用一次。對於之後的讀取,因為所有記憶單元的物理狀況不會在短時間內改變,該精準的感測電壓可能不會改變。然而,當本方法第一次應用時,可能無法得到第一測試感測電壓,只需遵循製造商提供的製作NAND快閃記憶體30時的參考值。在此情況下,第一感測電壓會飄移,較多的記憶單元將會被決定為它們可能不是的邏輯0或邏輯1。為此,需要多兩個步驟來處理。
在步驟S07後的步驟為檢查基於步驟S07中邏輯1與0的資訊是否能由一ECC解碼程序解碼(S08)。該ECC解碼程序由糾錯碼單元206所執行。接著,如果步驟S08的答案為否,選擇介於步驟S05中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓(S08)。無論如何,更新感測電壓確實存在於帶來最少差額的相鄰二測試感測電壓間。
在其它實施例中,在步驟S01中的單元計數可以是具有閥值電壓高於第一測試感測電壓的記憶單元的,而非具有閥值電壓低於第一測試感測電壓的記憶單元的,其差異來自前實施例的步驟S03。步驟03將變為“如果前步驟中單元計數的該差異量是負值,提供高於前些步驟中最高的測試感測電壓的再另一測試感測電壓至該些記憶單元,或者如果前步驟中單元計數的該差異量是正值,提供低於前些步驟中最低的測試感測電壓的再另一測試感測電壓至該些記憶單元,並計算本步驟與前步驟間單元計數的另一差異量”。除了步驟S01與S03外,其它步驟不變。為了有較好的理解,請參閱圖6。很顯然,當測試感測電壓低於可能的更新感測電壓(介於Vt1與Vt3間的電壓)時,任二相鄰測試感測電壓間的差額是負值,而非如圖4與圖5所示的正值。
糾錯碼單元206用於糾正資訊中的錯誤位元並從該資訊中產生一正確訊息。在本實施例中,如果使用軟決定資料,ECC解碼演算法可以是LDPC。然而,依照本發明,也可使用硬決定資料。因而,數位訊號執行單元205發出的邏輯1與邏輯0的結果不帶有索引數。ECC解碼演算法最好是BCH。對於軟決定或硬決定資料而言,糾錯碼單元206應要設計對應軟決定或硬決定的軟解碼器或硬解碼器。
要強調的是雖然實施例的系統200用於單層單元NAND快閃記憶體30,它可以應用於其他類型,諸如雙層單元(Multi-Level Cell,MLC)與三層單元(Triple-Level Cell,TLC)快閃記憶體。因為單一記憶單元具有2或3個位元及數個感測電壓,本發明提供的方法用於確定不同運算回合中所有記憶單元來自最高有效位元到最低有效位元的邏輯1或0。此外,依照本發明,系統200可應用到其它非揮發性記憶體。也就是說,NOR快閃記憶體能取代NAND快閃記憶體30而被應用。
雖然本發明已以實施方式揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
1‧‧‧感測電壓
2‧‧‧感測電壓
10‧‧‧主機
20‧‧‧記憶體控制器
200‧‧‧系統
201‧‧‧執行單元
202‧‧‧輸入與輸出單元
203‧‧‧唯讀記憶體單元
204‧‧‧暫存單元
205‧‧‧數位訊號執行單元
206‧‧‧糾錯碼單元
30‧‧‧NAND 快閃記憶體
圖1顯示一快閃記憶體的閥值電壓分佈圖。 圖2為顯示一電子設備架構的方框圖。 圖3為本發明提出的一種方法的流程圖。 圖4,圖5與圖6舉例說明感測電壓如何提供以決定NAND快閃記憶體記憶單元的邏輯1與邏輯0。
Claims (20)
- 一種用於決定具有複數個記憶單元的一非揮發性記憶體位元值的方法,每一記憶單元用於儲存一位元值,該方法包含步驟: a) 提供一第一測試感測電壓至該些記憶單元並計算該些記憶單元的一單元計數,該些記憶單元的具有的閥值電壓高於該第一測試感測電壓; b) 提供另一測試感測電壓至該些記憶單元並計算本步驟與前步驟間單元計數的一差異量; c) 如果前步驟中單元計數的該差異量是正值,提供高於前些步驟中最高的測試感測電壓的再另一測試感測電壓至該些記憶單元,或者如果前步驟中單元計數的該差異量是負值,提供低於前些步驟中最低的測試感測電壓的再另一測試感測電壓至該些記憶單元,並計算本步驟與前步驟間單元計數的另一差異量; d) 執行步驟c)N次; e) 計算相鄰二測試感測電壓之單元計數的差額並指定一索引數給每一群具有閥值電壓介於相同的相鄰二測試感測電壓間、高於最高的測試感測電壓或低於最低的測試感測電壓的記憶單元; f) 選擇介於在步驟e)中產生最少差額的相鄰二測試感測電壓間的一電壓為一更新感測電壓;及 g) 當記憶單元的閥值電壓低於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯1,或當記憶單元的閥值電壓高於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯0。
- 如申請專利範圍第1項所述的方法,進一步包含步驟: h) 檢查基於步驟g)中邏輯1與0的資訊是否能由一ECC解碼程序解碼;及 i) 如果步驟h)的答案為否,選擇介於步驟e)中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓。
- 如申請專利範圍第1項所述的方法,其中當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料,且當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。
- 如申請專利範圍第1項所述的方法,其中N為奇數。
- 如申請專利範圍第1項所述的方法,其中該些索引數作為LLR(Log-Likelihood Ratio)值。
- 一種用於決定具有複數個記憶單元的一非揮發性記憶體位元值的方法,每一記憶單元用於儲存一位元值,該方法包含步驟: a) 提供一第一測試感測電壓至該些記憶單元並計算該些記憶單元的一單元計數,該些記憶單元的具有的閥值電壓低於該第一測試感測電壓; b) 提供另一測試感測電壓至該些記憶單元並計算本步驟與前步驟間單元計數的一差異量; c) 如果前步驟中單元計數的該差異量是負值,提供高於前些步驟中最高的測試感測電壓的再另一測試感測電壓至該些記憶單元,或者如果前步驟中單元計數的該差異量是正值,提供低於前些步驟中最低的測試感測電壓的再另一測試感測電壓至該些記憶單元,並計算本步驟與前步驟間單元計數的另一差異量; d) 執行步驟c)N次; e) 計算相鄰二測試感測電壓之單元計數的差額並指定一索引數給每一群具有閥值電壓介於相同的相鄰二測試感測電壓間、高於最高的測試感測電壓或低於最低的測試感測電壓的記憶單元; f) 選擇介於在步驟e)中產生最少差額的相鄰二測試感測電壓間的一電壓為一更新感測電壓;及 g) 當記憶單元的閥值電壓低於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯1,或當記憶單元的閥值電壓高於該更新感測電壓時,決定該記憶單元的位元值為帶有對應索引數的邏輯0。
- 如申請專利範圍第6項所述的方法,進一步包含步驟: h) 檢查基於步驟g)中邏輯1與0的資訊是否能由一ECC解碼程序解碼;及 i) 如果步驟h)的答案為否,選擇介於步驟e)中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓。
- 如申請專利範圍第6項所述的方法,其中當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料,且當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。
- 如申請專利範圍第6項所述的方法,其中N為奇數。
- 如申請專利範圍第6項所述的方法,其中該些索引數作為LLR值。
- 一種用於決定具有複數個記憶單元的一非揮發性記憶體位元值的系統,每一記憶單元用於儲存一位元值,該系統包含: 一數位訊號執行單元,用於當接收到一讀取命令時控制提供給記憶單元以偵測其閥值電壓的感測電壓、執行如申請專利範圍第1項所述的方法,與提供儲存於記憶單元中帶有索引數的資訊;及 一糾錯碼單元,用於糾正該資訊中的錯誤位元並從該資訊中產生一正確訊息。
- 如申請專利範圍第11項所述的系統,其中該方法進一步包含步驟: h) 檢查基於步驟g)中邏輯1與0的資訊是否能由一ECC解碼程序解碼;及 i) 如果步驟h)的答案為否,選擇介於步驟e)中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓。
- 如申請專利範圍第11項所述的系統,其中當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料,且當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。
- 如申請專利範圍第11項所述的系統,其中N為奇數。
- 如申請專利範圍第11項所述的系統,其中該些索引數作為LLR值。
- 一種用於決定具有複數個記憶單元的一非揮發性記憶體位元值的系統,每一記憶單元用於儲存一位元值,該系統包含: 一數位訊號執行單元,用於當接收到一讀取命令時控制提供給記憶單元以偵測其閥值電壓的感測電壓、執行如申請專利範圍第6項所述的方法,與提供儲存於記憶單元中帶有索引數的資訊;及 一糾錯碼單元,用於糾正該資訊中的錯誤位元並從該資訊中產生一正確訊息。
- 如申請專利範圍第16項所述的系統,其中該方法進一步包含步驟: h) 檢查基於步驟g)中邏輯1與0的資訊是否能由一ECC解碼程序解碼;及 i) 如果步驟h)的答案為否,選擇介於步驟e)中產生最少差額的相鄰二測試感測電壓間的另一電壓為該更新感測電壓。
- 如申請專利範圍第16項所述的系統,其中當記憶單元的閥值電壓較低且低於該更新感測電壓時,該記憶單元的位元值具有較強邏輯1特性的軟決定資料,且當記憶單元的閥值電壓較高且高於該更新感測電壓時,該記憶單元的位元值具有較強邏輯0特性的軟決定資料。
- 如申請專利範圍第16項所述的系統,其中N為奇數。
- 如申請專利範圍第16項所述的系統,其中該些索引數作為LLR值。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107107412A TWI693604B (zh) | 2018-03-06 | 2018-03-06 | 用於決定非揮發性記憶體中位元值的方法與系統 |
US15/923,247 US10340023B1 (en) | 2018-03-06 | 2018-03-16 | Method and system for determining bit values in non-volatile memory |
CN201810238819.XA CN110232947B (zh) | 2018-03-06 | 2018-03-22 | 用于决定非挥发性内存中位值的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107107412A TWI693604B (zh) | 2018-03-06 | 2018-03-06 | 用於決定非揮發性記憶體中位元值的方法與系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201939508A true TW201939508A (zh) | 2019-10-01 |
TWI693604B TWI693604B (zh) | 2020-05-11 |
Family
ID=67069685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107107412A TWI693604B (zh) | 2018-03-06 | 2018-03-06 | 用於決定非揮發性記憶體中位元值的方法與系統 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10340023B1 (zh) |
CN (1) | CN110232947B (zh) |
TW (1) | TWI693604B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11177013B1 (en) * | 2020-05-07 | 2021-11-16 | Micron Technology, Inc. | Determine signal and noise characteristics centered at an optimized read voltage |
US11024401B1 (en) * | 2020-05-07 | 2021-06-01 | Micron Technology, Inc. | Compute an optimized read voltage |
US11049582B1 (en) | 2020-05-07 | 2021-06-29 | Micron Technology, Inc. | Detection of an incorrectly located read voltage |
US11238953B2 (en) | 2020-05-07 | 2022-02-01 | Micron Technology, Inc. | Determine bit error count based on signal and noise characteristics centered at an optimized read voltage |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7372730B2 (en) * | 2004-01-26 | 2008-05-13 | Sandisk Corporation | Method of reading NAND memory to compensate for coupling between storage elements |
US9378835B2 (en) * | 2008-09-30 | 2016-06-28 | Seagate Technology Llc | Methods and apparatus for soft data generation for memory devices based using reference cells |
JP5197544B2 (ja) * | 2009-10-05 | 2013-05-15 | 株式会社東芝 | メモリシステム |
US8238166B2 (en) * | 2009-10-12 | 2012-08-07 | Macronix International Co., Ltd. | Methods of programming and reading single-level trapped-charge memory cells using second-bit threshold detection |
US8854880B2 (en) * | 2011-01-04 | 2014-10-07 | Lsi Corporation | Inter-cell interference cancellation in flash memories |
US8665650B2 (en) * | 2011-02-18 | 2014-03-04 | Marvell World Trade Ltd. | Reliability metrics management for soft decoding |
US8582381B2 (en) * | 2012-02-23 | 2013-11-12 | SanDisk Technologies, Inc. | Temperature based compensation during verify operations for non-volatile storage |
US8514646B1 (en) * | 2012-05-09 | 2013-08-20 | Storart Technology Co. Ltd. | Method for improving performance when flash memory storage device works in wide temperature range |
US9306600B2 (en) * | 2014-01-06 | 2016-04-05 | Micron Technology, Inc. | Read threshold calibration for LDPC |
KR102265220B1 (ko) * | 2015-03-09 | 2021-06-16 | 에스케이하이닉스 주식회사 | 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법 |
ITUB20152310A1 (it) * | 2015-07-20 | 2017-01-20 | Sk Hynix Inc | Regolatore per polarizzare un elemento interruttore di un buffer di pagina di una memoria non volatile |
CN106981308B (zh) * | 2017-03-20 | 2020-04-28 | 记忆科技(深圳)有限公司 | 一种精准获取llr信息的应用方法 |
-
2018
- 2018-03-06 TW TW107107412A patent/TWI693604B/zh active
- 2018-03-16 US US15/923,247 patent/US10340023B1/en active Active
- 2018-03-22 CN CN201810238819.XA patent/CN110232947B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110232947B (zh) | 2021-05-18 |
TWI693604B (zh) | 2020-05-11 |
US10340023B1 (en) | 2019-07-02 |
CN110232947A (zh) | 2019-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9535620B2 (en) | Flash memory system and method controlling same | |
US9502137B2 (en) | Method and device for optimizing log likelihood ratio (LLR) used for nonvolatile memory device and for correcting errors in nonvolatile memory device | |
US8332726B2 (en) | Non-volatile semiconductor memory device | |
JP4856110B2 (ja) | チェンサーチ装置およびチェンサーチ方法 | |
TWI517172B (zh) | 用於資料感測之方法、裝置及系統 | |
TWI498898B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
US9159437B2 (en) | Device and method for resolving an LM flag issue | |
US11450400B2 (en) | Controller and operating method thereof | |
TWI693604B (zh) | 用於決定非揮發性記憶體中位元值的方法與系統 | |
US11211950B2 (en) | Decoding device and decoding method | |
US9542258B1 (en) | System and method for error-minimizing voltage threshold selection | |
US8547743B2 (en) | Read error recovery for solid-state memory based on cumulative background charges | |
US20140269071A1 (en) | Preserving data from adjacent word lines while programming binary non-volatile storage elements | |
JP2015524137A (ja) | 複数のメモリ状態を有する不揮発性メモリセルでの動作を実行するための機器及び方法 | |
TW201316341A (zh) | 在非揮發性記憶體陣列之程式化期間用於缺陷字元線的資料回復 | |
US9412472B2 (en) | Determining soft data from a hard read | |
US9478298B2 (en) | Memory system and method of reading data thereof | |
US10629269B2 (en) | Solid state storage device and read table management method thereof | |
CN111354402A (zh) | 用于艰苦装置条件的动态存储器编程电压阶跃 | |
US20200218596A1 (en) | Soft-Decision Input Generation for Data Storage Systems | |
US11095310B2 (en) | Error correction apparatus, operation method thereof and memory system using the same | |
US11532364B2 (en) | Controller and operation method thereof | |
US10084487B2 (en) | Apparatuses and methods for erasure-assisted ECC decoding | |
US11146295B1 (en) | Decoding method, memory storage device, and memory controlling circuit unit |