改變讀取參考電流以存取具有讀取錯誤的非揮發存儲器的裝置與方法
2023-08-04 06:46:56 1
專利名稱:改變讀取參考電流以存取具有讀取錯誤的非揮發存儲器的裝置與方法
技術領域:
本發明相關於非揮發存儲集成電路,更確切地說,相關於自非 揮發存儲器所讀取出數據的錯誤檢測以及錯誤更正。
背景技術:
非揮發存儲器的目的是可靠地儲存數據,因此電源消失並 不會影響數據儲存的完整性。為了允許會影響非揮發存儲單元的 臨界電壓的不可預見的電荷獲得或是電荷流失的情況,邊界被用 來區隔代表不同邏輯級別的臨界電壓範圍。然而,雖然有此邊界, 錯誤仍不可避免地發生,例如一數據位編程至高邏輯級別被讀取 為低邏輯級別,或是相反。雖然錯誤更正和錯誤檢測演算法可以處理某些這樣的錯 誤,但是錯誤更正和錯誤檢測演算法只是設計用來處理有限的錯 誤位。當超過此極限後,錯誤更正和錯誤檢測演算法就不夠使用 了。此外,錯誤檢測僅會檢測但不會更正這樣的錯誤。
因此,需要一種改良使得非揮發存儲集成電路更能面對這 樣的錯誤
發明內容
本發明的一個目的在於提供一種讀取非揮發存儲器的方 法。其回應至接收讀取命令的非揮發存儲集成電路,該非揮發存
儲集成電路進行下列步驟根據存取儲存於該非揮發存儲集成電路中的多個非揮發
數據位來產生第一檢查碼。在不同的實施例中,此第一檢查碼是 錯誤檢測碼或是錯誤更正碼。存取儲存於該非揮發存儲集成電路中的第二檢査碼,其作 為與該多個數據位相關的多個非揮發檢查位。在範例實施例中, 此第二檢查碼在相關的數據位被編程至該非揮發存儲集成電路 時,被產生且被編程於該非揮發存儲集成電路中。在不同的實施 例中,此第二檢査碼是錯誤檢測碼或是錯誤更正碼。
檢查該第一檢查碼與該第二檢查碼是否相符。 [OOIO]於該產生與該檢查步驟之後,回應該第一檢查碼與該第二 檢査碼間的不相符,改變施加至存取儲存於該非揮發存儲集成電 路中的該多個非揮發位至少一個參考值,以區別該多個非揮發位 所代表的邏輯級別。此參考值可以是,例如, 一個在感應放大器 中決定由感應電流所代表的邏輯級別的參考電流。在另外的實施 例中,此參考值可以是, 一個介於兩個代表不同邏輯級別的臨界 電壓範圍之間的代表非揮發存儲臨界電壓所代表的邏輯級別的 參考電壓。在一個實施例中,該至少一個參考值區別該邏輯級別 的至少一個第一邏輯級別與一個第二邏輯級別,該第一邏輯級別 與相較於該第二邏輯級別為高的臨界電壓相關,且該改變至少一 個參考值使得與該第一邏輯級別相關的臨界電壓的第一範圍變 寬而與該第二邏輯級別相關的臨界電壓的第二範圍變窄。類似 地,在另一實施例中,改變至少一個參考值使得與該第一邏輯級 別相關的臨界電壓的第一範圍變窄而與該第二邏輯級別相關的 臨界電壓的第二範圍變寬。在某些實施例中,此非揮發存儲集成電路還進行於該改變至少一個參考值之後,根據存取儲存於該非揮發 存儲集成電路中的該多個非揮發數據位,使用該至少一個參考值 來產生更新第一檢查碼。在某些實施例中,於產生一更新第一檢查碼之後,此非揮
發存儲集成電路還進行檢查該第一檢查碼與該第二檢查碼是否相符。
在某些實施例中,於產生更新第一檢査碼與檢查該第一檢 查碼與該第二檢查碼是否相符之後,此非揮發存儲集成電路還進
行存取儲存於該非揮發存儲集成電路中的該第二檢查碼,其 作為與該多個數據位相關的多個非揮發檢査位。
在某些實施例中,於產生更新第一檢査碼,及利用改變後 的參考值存取該第二檢查碼與檢查該第一檢查碼與該第二檢查
碼是否相符之後,此非揮發存儲集成電路還進行回應該第一檢查碼與該第二檢查碼間的另一不相符,改變 施加至存取儲存於該非揮發存儲集成電路中的該多個非揮發位 該至少一個參考值,以區別該多個非揮發位所代表的邏輯級別。
在某些實施例中,於改變至少一個參考值之後,此非揮發
存儲集成電路還進行直到自一系列檢査該第一檢查碼與該第二檢查碼是否相 符得到成功地結果,反覆地改變施加至存取儲存於該非揮發存儲 集成電路中的該多個非揮發位該至少一個參考值,以區別該多個 非揮發位所代表的邏輯級別。本發明的另一目的在於提供一種非揮發存儲集成電路。此 非揮發存儲集成電路具有非揮發存儲陣列,以及控制電路耦接至 該非揮發存儲陣列。此控制電路進行下列步驟來回應給該非揮發 存儲集成電路所接收的讀取命令。根據存取儲存於該非揮發存儲集成電路中的多個非揮發 數據位來產生第一檢査碼;存取儲存於該非揮發存儲集成電路中的第二檢査碼,其作 為與該多個數據位相關的多個非揮發檢查位;
檢査該第一檢查碼與該第二檢查碼是否相符;
於該產生與該檢查步驟之後,回應該第一檢查碼與該第二 檢查碼間的不相符,改變施加至存取儲存於該非揮發存儲集成電 路中的該多個非揮發位至少一個參考值,以區別該多個非揮發位 所代表的邏輯級別。
圖1為編程命令的範例流程圖,顯示編程數據以及根據該 數據的檢查碼;圖2為讀取命令的範例流程圖,顯示讀取參考電流改變以 回應先前產生及編程檢査碼與新檢査碼之間的不一致;
圖3為顯示例示的臨界電壓演算法;圖4顯示另一例示的臨界電壓演算法,其類似於圖3但是 具有改變後的參考電流,不同於圖3對低臨界電壓分布較為有 利;圖5顯示另一例示的臨界電壓演算法,其類似於圖3但是 具有另一改變後的參考電流,不同於圖3對高臨界電壓分布較為 有利;圖6為根據本發明的一個實施例的非揮發存儲集成電路的 簡化例示方塊示意圖,其回應一個錯誤而改變讀取參考值,例如 是前述的檢査碼間的不相符。
主要元件符號說明
301 低臨界電壓分布Bl的低邊界
302 低臨界電壓分布B2的高邊界
305 '高臨界電壓分布B3的低邊界
306 高臨界電壓分布B4的高邊界
307 正常參考電流normal—Iref
310 高臨界電壓單元的電荷損失邊界D1
311 低臨界電壓單元的電荷損失邊界D2
314 漏極區域
315 本體區域
407 改變後的參考電流Changed—Iref
410 高臨界電壓單元的電荷損失邊界D1'
411 低臨界電壓單元的電荷損失邊界D2' 507 改變後的參考電流Changed—Iref
510 高臨界電壓單元的電荷損失邊界D1"
511 低臨界電壓單元的電荷損失邊界D2"
600 非揮發存儲陣列
601 列解碼器
602 字線
603 行解碼器
604 位線
605 匯流排
606 感應放大器/數據輸入結構
607 數據匯流排
608 偏壓安排供應電壓
609 偏壓安排狀態機器 611 數據輸入線
615 數據輸出線
650 集成電路
具體實施例方式圖1為編程命令的範例流程圖,顯示編程數據以及根據該 數據的檢查碼。在步驟100,此非揮發存儲集成電路接收編程命令。在步 驟IIO,根據將被該編程命令所編程的數據產生檢查碼。在不同 的實施例中,此檢查碼可以是錯誤更正碼或是許多錯誤更正碼。
這些檢查碼的範例有區塊碼(漢明、裡德-所羅門、裡德-穆勒、 高發、波斯-巧亨利-漢克琨瀚、低密度同位檢査),迴旋碼(渦輪 增壓、吉列),連鎖碼以及插入碼。其他的例子也可以是單一錯 誤更正雙重錯誤檢測碼、單一錯誤更正雙重錯誤檢測單一位 組錯誤碼、單一位組錯誤更正雙重位組錯誤檢測以及雙重錯誤 更正三重錯誤檢測。這些實施例用來檢測或更正錯誤的合用性 部分取決於特定實施例的碼演算法。在步驟120,編程位以及在步驟IIO所產生的檢查碼位組 兩者皆被編程至此非揮發存儲集成電路中。在步驟120寫入的檢 查碼會被用做讀取命令,如圖2所示。圖2為讀取命令的範例流程圖,顯示讀取參考電流改變以 回應一先前產生及編程檢查碼與新檢査碼之間的不一致。
在步驟200此非揮發存儲集成電路接收讀取命令。在步驟 210,存取在圖1步驟120中被編程至此非揮發存儲集成電路內 的數據位,使用參考值來決定這些數據位所代表的邏輯級別。在 步驟220,根據在步驟210中所存取的數據位來產生第一檢查碼。 在步驟230,第二檢查碼被存取。此第二檢查碼與在步驟210中 所讀取出的數據位相關。此第二檢査碼在圖l步驟120中被編程 至此非揮發存儲集成電路內。在步驟240,檢查在步驟220所產生的第一檢查碼與在步 驟230所產生的第二檢查碼是否相符。假如第一檢査碼與第二檢 查碼相符,則在步驟260做出成功讀取的結論。然而,假如第一 檢查碼與第二檢查碼不相符,則改變使用於步驟210的參考值, 且此流程重新回到步驟210。為了回應持續地錯誤,此迴圈可以 重複多達3到10次。假如此參考值是感應放大器用來比較自存 儲單元中位線電流的參考電流,則此參考電流可以通過改變此參 考單元的柵極電壓或是改變此感應放大器電路的時序來改變。在 一個參考電流的例示中電流改變幅度為約1微安培。在不同的實 施例中,此改變後的參考值可以使用或不使用於存取此第二檢查 碼。圖1和圖2中的流程圖僅是作為範例之用。在其他的實施 例中,這些所顯示的步驟可以被重新排序、修改、刪除或是加入。 例如,存取數據位和存取第二檢查碼的步驟可以被合併為單一步 驟。圖3顯示一個例示的臨界電壓演算法。301是低臨界電壓分布Bl的低邊界。302是低臨界電壓分
布B2的高邊界。305是高臨界電壓分布B3的低邊界。306是高
臨界電壓分布B4的高邊界。感應放大器會使用正常參考電流
normal—Iref 307來感測存儲數據,且其具有對於高臨界電壓單元
的電荷損失邊界D1 310及對於低臨界電壓單元的電荷損失邊界
D2 3U。雖然顯示了兩個邏輯級別,但是在其他的實施例中四個
或更多的邏輯級別可以用來代表兩個或更多位。
圖4顯示另一例示的臨界電壓演算法,其類似於圖3但是
具有改變後的參考電流,不同於圖3對低臨界電壓分布較為有利。此改變後的參考電流Changed—Iref 407被改變以回應圖2 中的檢査碼的不相符狀況,例如在圖2中的步驟240。改變後的 參考電流Changed一I^ 407具有相較於Dl 310較窄的感應邊界 Dl, 410,及相較於D2 311較寬的感應邊界D2, 411,因此改變 後的參考電流Changed—I^ 407對高臨界電壓單元具有較窄的感 應區間而對低臨界電壓單元具有較寬的感應區間。在此非揮發存 儲單元的電荷儲存材料獲取過多淨負電荷的情況下,此臨界電壓 會不正確地被提升。因此,改變後的參考電流Changed—Iref 407 會較有可能對所代表的邏輯級別產生正確的決定。
圖5顯示另一例示的臨界電壓演算法,其類似於圖3但是 具有另一改變後的參考電流,不同於圖3對高臨界電壓分布較為 有利。相似於但與圖4相反,此改變後的參考電流Changed_Iref 507具有相較於Dl 310較寬的感應邊界Dl" 510,及相較於D2 311較窄的感應邊界D2" 511,因此改變後的參考電流Changed—I^ 507對低臨界電壓單元具有較窄的感應區間而對高 臨界電壓單元具有較寬的感應區間。在此非揮發存儲單元的電荷 儲存材料獲取過多淨正電荷的情況下,此臨界電壓會不正確地被 降低。因此,改變後的參考電流Changed—Uf 507會較有可能對 所代表的邏輯級別產生正確的決定。在其他的實施例中,淨正電荷獲得會使得改變參考值對低 臨界電壓存儲單元較為有利,而淨負電荷獲得會使得改變參考值 對高臨界電壓存儲單元較為有利。圖6為根據本發明的一個實施例的非揮發存儲集成電路的 簡化例示方塊示意圖,其回應一個錯誤而改變讀取參考值,例如 是前述的檢查碼間的不相符。此集成電路650包括在半導體基板上的非揮發存儲單元構 成的存儲陣列600。此存儲單元陣列600可以是單獨的存儲單元, 交錯構成陣列或是多個陣列。列解碼器601耦接於在該存儲陣列 600中成列排列的多個字線602。行解碼器603耦接至在該存儲 陣列600中成行排列的多條位線604。在匯流排605上提供位址 到行解碼器603與列解碼器601。在區塊606中感測放大器與數 據輸入結構通過數據匯流排607而耦接至該行解碼器603。通過 該數據輸入線611從在該集成電路650上的輸入/輸出埠提供 數據,或從其他在集成電路650內部或外部數據源提供數據到區 塊606的數據輸入結構。在區塊606中通過該數據輸出線615從 這些感測放大器提供數據至集成電路650上的輸入/輸出埠, 或提供數據至在集成電路650內部或外部的其他數據目的地。偏 壓安排狀態機器609控制偏壓安排供應電壓608的應用,例如擦 除確認以及編程確認電壓,和編程、擦除及讀取此存儲單元的安 排。此偏壓安排狀態機器609導致使用於區塊606中感應放大器 的參考值為了回應先前所描述的檢查碼比較的錯誤而改變。
在本發明已通過參考詳述於上的該較佳實施例與例示而 披露的同時,需了解的是,這些實施例與例示僅為例示性之用而 為非用以限制本發明,對於本領域技術人員而言,可輕易地達成
各種的修飾與結合,而這些修飾與結合應落入本發明的精神和所 附權利要求書所限定的範圍中。
權利要求
1、一種讀取非揮發存儲器的方法,包括回應至接收讀取命令的非揮發存儲集成電路,該非揮發存儲集成電路進行根據存取儲存於該非揮發存儲集成電路中的多個非揮發數據位來產生第一檢查碼;存取儲存於該非揮發存儲集成電路中的第二檢查碼,其作為與該多個(非揮發)數據位相關的多個非揮發(數據)檢查位;檢查該第一檢查碼與該第二檢查碼是否相符;於該產生與該檢查步驟之後,回應該第一檢查碼與該第二檢查碼間的不相符,改變施加至存取儲存於該非揮發存儲集成電路中的該多個非揮發(數據)位的至少一個參考值,以區別該多個非揮發(數據)位所代表的邏輯級別。
2、 如權利要求1所述的方法,其中該至少一個參考值是參 考電流。
3、 如權利要求l所述的方法,其中該至少一個參考值是參 考電壓。
4、 如權利要求1所述的方法,其中該第一檢查碼與該第二 撿査碼是錯誤更正碼。
5、 如權利要求l所述的方法,其中該第一檢查碼與該第二 檢査碼是錯誤檢測碼。,
6、 如權利要求1所述的方法,其中該非揮發存儲集成電路 還進行 於該改變至少一個參考值之後,根據存取儲存於該非揮發存 儲集成電路中的該多個非揮發數據位,使用該至少一個參考值來 產生更新的第一檢查碼。
7、 如權利要求1所述的方法,其中該非揮發存儲集成電路 還迸行於該改變至少一個參考值之後,進行根據存取儲存於該非揮發存儲集成電路中的該多個非 揮發數據位,使用該至少一個參考值來產生該第一檢查碼;以及 檢查該第一檢查碼與該第二檢查碼是否相符。
8、 如權利要求l所述的方法,其中該非揮發存儲集成電路 還進行於該改變至少一個參考值之後,進行-根據存取儲存於該非揮發存儲集成電路中的該多個非揮發數據位,使用該至少一個參考值來產生該第一檢查碼;使用該至少一個參考值,存取儲存於該非揮發存儲集成 電路中的該第二檢查碼,其作為與該多個(非揮發)數據位相關的多個非揮發(數據)檢查位;以及檢查該第一檢查碼與該第二檢查碼是否相符。
9、 如權利要求1所述的方法,其中該非揮發存儲集成電路還進行於該改變至少一個參考值之後,進行-根據存取儲存於該非揮發存儲集成電路中的該多個非揮發數據位,使用該至少一個參考值來產生該第一檢查碼;使用該至少一個參考值,存取儲存於該非揮發存儲集成電路中的該第二檢查碼,其作為與該多個(非揮發)數據位相關的多個非揮發(數據)檢查位;檢查該第一檢查碼與該第二檢查碼是否相符;以及 回應該第一撿查碼與該第二檢查碼間的另一不相符,改 變施加至存取儲存於該非揮發存儲集成電路中的該多個非揮發 (數據)位該至少一個參考值,以區別該多個非揮發(數據)位所代 表的邏輯級別。
10、 如權利要求l所述的方法,其中該非揮發存儲集成電路 還進行於該改變至少一個參考值之後,進行直到自一系列檢查該第一檢查碼與該第二檢查碼是否 相符得到成功的結果,反覆地改變施加至存取儲存於該非揮發存 儲集成電路中的該多個非揮發(數據)位該至少一個參考值,以區 別該多個非揮發(數據)位所代表的邏輯級別。
11、 如權利要求l所述的方法,其中該至少一個參考值區別該邏輯級別的至少一個第一邏輯級別與一個第二邏輯級別,該第一邏輯級別與相較於該第二邏輯級別為高的臨界電壓相關,且該 改變至少一個參考值包括改變至少一個參考值,使得與該第一邏輯級別相關的臨界電 壓的第一範圍變寬而與該第二邏輯級別相關的臨界電壓的第二 範圍變窄。
12、 如權利要求l所述的方法,其中該至少一個參考值區別該邏輯級別的至少一個第一邏輯級別與一個第二邏輯級別,該第一邏輯級別與相較於該第二邏輯級別為高的臨界電壓相關,且該 改變至少一個參考值包括改變至少一個參考值,使得與該第一邏輯級別相關的臨界電 壓的第一範圍變窄而與該第二邏輯級別相關的臨界電壓的第二 範圍變寬。
13、 一種非揮發存儲集成電路,包括非揮發存儲陣列;以及控制電路耦接至該非揮發存儲陣列,該控制電路進行下列步驟來回應給該非揮發存儲集成電路所接收的讀取命令根據存取儲存於該非揮發存儲集成電路中的多個非揮發數據位來產生第一檢查碼;存取儲存於該非揮發存儲集成電路中的第二檢查碼,其作為與該多個(非揮發)數據位相關的多個非揮發(數據)檢查位; 檢查該第一檢查碼與該第二檢查碼是否相符; 於該產生與該檢查步驟之後,回應該第一檢查碼與該第二檢查碼間的不相符,改變施加至存取儲存於該非揮發存儲集成電路中的該多個非揮發(數據)位的至少一個參考值,以區別該多個非揮發(數據)位所代表的邏輯級別。
14、 如權利要求13所述的集成電路,其中該至少一個參考 值是參考電流。
15、 如權利要求13所述的集成電路,其中該至少一個參考 值是參考電壓。
16、 如權利要求13所述的集成電路,其中該第一檢查碼與 該第二檢查碼是錯誤更正碼。
17、 如權利要求13所述的集成電路,其中該第一檢查碼與 該第二檢査碼是錯誤檢測碼。
18、 如權利要求13所述的集成電路,其中該控制電路還進 行下列步驟來回應至接收該讀取命令的該非揮發存儲集成電路於改變至少一個參考值之後,根據存取儲存於該非揮發存儲 集成電路中的該多個非揮發數據位,使用該至少一個參考值來產 生更新第一檢查碼。
19、 如權利要求13所述的集成電路,其中該控制電路還進 行下列步驟來回應至接收該讀取命令的該非揮發存儲集成電路.-於該改變至少一個參考值之後,進行根據存取儲存於該非揮發存儲集成電路中的該多個非 揮發數據位,使用該至少一個參考值來產生該第一檢查碼;以及 檢查該第一檢查碼與該第二檢查碼是否相符。
20、 如權利要求13所述的集成電路,其中該控制電路還進 行下列步驟來回應至接收該讀取命令的該非揮發存儲集成電路於該改變至少一個參考值之後,進行根據存取儲存於該非揮發存儲集成電路中的該多個非 揮發數據位,使用該至少一個參考值來產生該第一檢查碼;使用該至少一個參考值,存取儲存於該非揮發存儲集成 電路中的該第二檢査碼,其作為與該多個(非揮發)數據位相關的 多個非揮發(數據)檢査位;以及檢查該第一檢查碼與該第二檢査碼是否相符。
21、 如權利要求13所述的集成電路,其中該控制電路還進 行下列步驟來回應至接收該讀取命令的該非揮發存儲集成電路於該改變至少一個參考值之後,進行根據存取儲存於該非揮發存儲集成電路中的該多個非揮發數據位,使用該至少一個參考值來產生該第一檢查碼;使用該至少一個參考值,存取儲存於該非揮發存儲集成電路中的該第二檢查碼,其作為與該多個(非揮發)數據位相關的多個非揮發(數據)檢查位;檢查該第一檢查碼與該第二檢查碼是否相符;以及 回應該第一檢査碼與該第二檢查碼間的另一不相符,改變施加至存取儲存於該非揮發存儲集成電路中的該多個非揮發(數據)位該至少一個參考值,以區別該多個非揮發(數據)位所代表的邏輯級別。
22、 如權利要求13所述的集成電路,其中該控制電路還進行下列步驟來回應至接收該讀取命令的該非揮發存儲集成電路 於該改變至少一個參考值之後,進行直到自一系列檢査該第一檢査碼與該第二檢查碼是否 相符得到成功的結果,反覆地改變施加至存取儲存於該非揮發存 儲集成電路中的該多個非揮發(數據)位該至少一個參考值,以區 別該多個非揮發(數據)位所代表的邏輯級別。
23、 如權利要求13所述的集成電路,其中該至少一個參考值區別該邏輯級別的至少一個第一邏輯級別與一個第二邏輯級 別,該第一邏輯級別與相較於該第二邏輯級別為高的臨界電壓相關,且該改變至少一個參考值包括改變至少一個參考值,使得與該第一邏輯級別相關的臨界電 壓的第一範圍變寬而與該第二邏輯級別相關的臨界電壓的第二 範圍變窄。
24、 如權利要求13所述的集成電路,其中該至少一個參考值區別該邏輯級別的至少一個第一邏輯級別與一個第二邏輯級 別,該第一邏輯級別與相較於該第二邏輯級別為高的臨界電壓相關,且該改變至少一個參考值包括改變至少一個參考值,使得與該第一邏輯級別相關的臨界電 壓的第一範圍變窄而與該第二邏輯級別相關的臨界電壓的第二 範圍變寬。
25、 一種非揮發存儲集成電路,包括非揮發存儲陣列功能手段;以及控制電路功能手段耦接至該非揮發存儲陣列功能手段,該控 制電路功能手段回應給該非揮發存儲集成電路所接收的讀取命 令,包括- 產生第一檢查碼功能手段,根據存取儲存於該非揮發存儲集成電路中的多個非揮發數據位;存取儲存於該非揮發存儲集成電路中的第二檢查碼功 能手段,其作為與該多個數據位相關的多個非揮發(數據)檢查 位;檢査該第一檢查碼與該第二撿査碼是否相符功能手段; 回應該第一檢查碼與該第二檢查碼間的不相符功能手 段,以改變施加至存取儲存於該非揮發存儲集成電路中的該多個非揮發(數據)位的至少一個參考值,以區別該多個非揮發(數據) 位所代表的邏輯級別。
全文摘要
本發明披露一種非揮發存儲集成電路的讀取參考值的改變,以回應與先前編程數據位相關的先前產生的檢查碼與回應讀取命令而產生的新檢查碼之間的不一致。
文檔編號G11C29/42GK101114530SQ20071010341
公開日2008年1月30日 申請日期2007年5月8日 優先權日2006年5月8日
發明者洪俊雄, 陳漢松 申請人:旺宏電子股份有限公司