TWI587302B - 記憶體編程方法以及記憶體裝置 - Google Patents
記憶體編程方法以及記憶體裝置 Download PDFInfo
- Publication number
- TWI587302B TWI587302B TW103142740A TW103142740A TWI587302B TW I587302 B TWI587302 B TW I587302B TW 103142740 A TW103142740 A TW 103142740A TW 103142740 A TW103142740 A TW 103142740A TW I587302 B TWI587302 B TW I587302B
- Authority
- TW
- Taiwan
- Prior art keywords
- page
- programming
- register
- error correction
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 40
- 238000012937 correction Methods 0.000 claims description 80
- 239000000872 buffer Substances 0.000 claims description 37
- 230000006870 function Effects 0.000 claims description 8
- 239000000463 material Substances 0.000 claims description 2
- 230000002093 peripheral effect Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 11
- 238000012546 transfer Methods 0.000 description 6
- 230000009977 dual effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101000637326 Homo sapiens Neuroguidin Proteins 0.000 description 1
- 102100032139 Neuroguidin Human genes 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
本發明係有關於數位記憶體裝置,特別係有關於編輯能夠執行錯誤更正碼(ECC)之非及閘快閃式記憶體。
因為非及閘快閃式記憶體顯著的成本優勢,已經使其變得越來越流行。再者,非及閘快閃式記憶體目前可於許多不同的介面取得,從傳統的非及閘介面至低針腳數之序列周邊介面。然而,非及閘快閃式記憶體易受損毀區塊的影響而偶而讀取錯誤,使得損毀區塊管理以及錯誤更正碼的處理通常皆是使用於這種類型的記憶體。
在編輯操作中之錯誤更正碼以及損毀區塊管理的一種實現,係描述於由台灣新竹華邦電子於2013年11月26日所公開之W25N01GV之初步版本B,其為具有雙/四序列周邊匯流排以及連續讀取之3V 1G位元串列SLC非及閘快閃式記憶體。該編輯操作允許一字節至2112字節(即一頁面)之資料於先前抹除(FFh)之記憶體位址上編輯。由寫入致能指令開始之一編輯操作包括兩個步驟:(1)載入編輯檔案至資料緩衝器;以及(2)從資料緩衝器傳送資料至特定記憶體頁面。
載入編輯資料至資料緩衝器之指令的一範例,係為由驅動/CS針腳至低邏輯位準而開始之載入編輯資料指令,
隨後在16位元欄位址以及8位元虛擬時脈之後的指令碼「02h」中移動,並且至少一字節之資料。
將資料緩衝器之資料傳送至特定記憶體頁面之指令之一範例,係為由驅動/CS針腳至低邏輯位準而開始之編輯執行指令,隨後在8位元虛擬時脈以及16位元頁面位址之後的指令碼「10h」中移動。驅動/CS針腳至高邏輯位準而完成指令週期之後,自定時編碼執行指令開始計時時間區間tPP,時間區間tPP係為時間密集任務之所需,時間密集任務如頁面編程、一次性編程鎖定以及故障區塊管理。時間區間tPP通常約為250微秒,但最長可為700微秒。當編程執行週期進行時,讀取狀態暫存器指令可作為確認忙碌位元之狀態,忙碌位元在編程執行週期時係為邏輯1,而在編程執行週期完成且裝置準備好接收指令時時,忙碌位元變為邏輯0。當編程執行週期完成時,在狀態暫存器中之寫入致能閂鎖位元被清除為邏輯0。
若內部錯誤更正碼被啟動,該頁面之資料的所有字元組以及額外的64字元組段落(備用區域)被接受,但指定為在額外的64字元組段落中之錯誤更正碼的字元組將由錯誤更正碼計算所覆寫。
若另一頁面要被編程時,另一編程操作會經由在另一讀取編程資料指令以及另一編程執行指令之後而發出另一寫入致能指令而執行。
根據本發明之一實施例,本發明提出一種記憶體編程方法,適用於利用一記憶體裝置之一資料暫存器以及一快
取暫存器作為一非及閘快閃式記憶體陣列之一頁面緩衝器,而將來自於一資料匯流排之一編程資料之頁面編程至上述記憶體裝置之上述非及閘快閃式記憶體陣列,包括:將來自上述資料匯流排之上述編程資料之一第一頁面儲存於上述快取暫存器;對儲存於上述快取暫存器之上述編程資料之上述第一頁面執行一錯誤更正碼操作,而建立經上述錯誤更正碼操作處理之上述第一頁面於上述快取暫存器;從上述快取暫存器將經上述錯誤更正碼操作處理之上述第一頁面儲存於上述資料暫存器;將經上述錯誤更正碼操作處理之上述第一頁面自上述資料暫存器編程至上述非及閘快閃式記憶體陣列;在與編程上述第一頁面步驟相重疊之時間中,自上述資料匯流排將上述編程資料之一第二資料頁面儲存於上述快取暫存器;以及在與編程上述第一頁面步驟相重疊之時間中,對儲存於上述快取暫存器之上述編程資料之上述第二頁面進行上述錯誤更正碼操作,而建立經上述錯誤更正碼操作處理之上述第二頁面於上述快取暫存器。
根據本發明之另一實施例,本發明提出一種記憶體裝置,包括:一非及閘快閃式記憶體陣列、一列解碼器、一資料暫存器、一快取暫存器、一錯誤更正碼電路、一欄解碼器以及一控制電路。上述列解碼器耦接至上述非及閘快閃式記憶體陣列。上述資料暫存器耦接至上述非及閘快閃式記憶體陣列。上述快取暫存器耦接至上述資料暫存器。上述錯誤更正碼電路耦接至上述快取暫存器。上述欄解碼器耦接至上述快取暫存器。上述控制電路耦接至上述列解碼器、上述欄解碼器、上
述資料暫存器、上述快取暫存器以及上述錯誤更正碼電路,其中上述控制電路包括用以執行以下功能之複數邏輯以及暫存器元件:將一編程資料之一第一頁面儲存於上述快取暫存器;利用上述錯誤更正碼電路對儲存於上述快取暫存器之上述編程資料之上述第一頁面執行一錯誤更正碼操作,以建立上述快取暫存器中之經過上述錯誤更正碼操作之上述第一頁面;在與編程上述非及閘快閃式記憶體陣列相重疊之時間中,將上述編程資料之一第二頁面儲存於上述快取暫存器;以及在與編程上述非及閘快閃式記憶體陣列相重疊之時間中,對儲存於上述快取暫存器之上述編程資料之上述第二頁面執行上述錯誤更正碼操作,以建立經上述錯誤更正碼操作之上述第二頁面於上述快取暫存器。
100‧‧‧非及閘快閃式記憶體裝置
110‧‧‧資料匯流排
120‧‧‧錯誤更正碼電路
130‧‧‧頁面緩衝器
132‧‧‧快取暫存器
134‧‧‧資料暫存器
140‧‧‧非及閘快閃式記憶體陣列
142‧‧‧第一頁面
144‧‧‧第二頁面
150‧‧‧第一箭頭
152‧‧‧第二箭頭
154‧‧‧第三箭頭
156‧‧‧第四箭頭
158‧‧‧第五箭頭
510‧‧‧快取暫存器
520‧‧‧資料暫存器
530‧‧‧非及閘快閃式記憶體陣列
540‧‧‧快取忙碌位元
561‧‧‧第一載入編程資料指令
562‧‧‧第一快取編程執行指令
563‧‧‧第二載入編程資料指令
564‧‧‧第二快取編程執行指令
600‧‧‧非及閘快閃式記憶體
622‧‧‧輸入/輸出控制
623‧‧‧狀態暫存器
624‧‧‧連續頁面讀取位址暫存器
625‧‧‧命令暫存器
626‧‧‧位址暫存器
627‧‧‧查找表暫存器
630‧‧‧控制邏輯
631‧‧‧連續頁面讀取故障區塊邏輯
632‧‧‧連續頁面讀取故障區塊暫存器
633‧‧‧高電壓產生器
634‧‧‧列解碼器
635‧‧‧通電偵測器
636‧‧‧欄解碼器
638‧‧‧頁面緩衝器
640‧‧‧非及閘快閃式記憶體陣列
642‧‧‧使用者可定址區域
644‧‧‧冗餘區塊區域
646‧‧‧查找表資訊區塊
647‧‧‧緩衝器模式旗標
648‧‧‧ECC-E旗標
650‧‧‧第一錯誤更正碼狀態位元
651‧‧‧第二錯誤更正碼狀態位元
652‧‧‧忙碌位元
653‧‧‧快取忙碌位元
654‧‧‧串列位元
CLK‧‧‧時脈信號
/CS‧‧‧反相之晶片選擇信號
DI‧‧‧串列資料輸入信號
DO‧‧‧串列資料輸出信號
/WP‧‧‧反相之寫入保護信號
/HOLD‧‧‧反相之維持信號
VCC‧‧‧電源線
GND‧‧‧接地端
200~274‧‧‧步驟流程
301-305、307-310、401-405、407-410‧‧‧時間序列
306、312、406、412‧‧‧頁面編程
第1圖係顯示根據本發明之一實例所述之非及閘快閃式記憶體裝置之方塊圖;第2A、2B圖係顯示根據本發明之一實施例所述之編程操作之流程圖;第3圖係顯示根據本發明之一實施例所述之利用快取編程執行技術之編程操作之時序圖;第4圖係顯示根據本發明之一實施例所述之利用編程執行技術之編程操作之時序圖;第5圖係顯示根據本發明之一實施例所述之利用非及閘記憶體裝置之特定資源在編程操作時使用快取編程執行技
術之示意圖;第6圖係顯示根據本發明之一實施例所述之串列非及閘快閃式記憶體之功能性方塊圖。
快速讀取以及編程的效能係為非閘極快閃式記憶體裝置所令人滿意的地方。快速編程效能可利用快取編程執行技術而達成,快取編程執行技術係如第1圖所示之用以解釋目的之簡化型式。非及閘快閃式記憶體裝置100包括非及閘快閃式記憶體陣列140、頁面緩衝器130以及錯誤更正碼電路120。故障區塊管理電路也可包含於第1圖,但為了清楚說明本發明之目的而予以省略。非及閘快閃式記憶體陣列140具有用於數位儲存之許多頁面(如第1圖所示之第一頁面142以及第二頁面144),也面緩衝器130具有兩個非常快的暫存器,分別為快取暫存器132以及資料暫存器134。為了達到快速編程的目的,在資料匯流排110之初始資料可被載入致快取暫存器132(第一箭頭150)。此後,來自快取暫存器132之資料可因錯誤更正電路120所實現之特殊錯誤更正碼演算法所要求,而被複製至錯誤更正碼電路120(第二箭頭152),以便計算錯誤更正碼。錯誤更正碼被寫入至快取暫存器(第三箭頭154),特別是寫入至儲存於快取暫存器132之資料頁面的備用區域。此後,快取暫存器132中被錯誤更正碼處理過的資料可被複製至資料暫存器(第四箭頭156)。非及閘快閃式記憶體陣列140(以第一頁面142作為說明)可以資料暫存器134中經錯誤更正碼處理之資料而編程,並使用任何合適的查找表技術用以故障區塊管理。
有利的是,在快取暫存器132中錯誤更正碼處理過之資料複製至資料暫存器134(第四箭頭156),快取暫存器132可用於其他操作。有利的是,當編程資料之第一頁面正被編程至非及閘快閃式記憶體陣列140時(第五箭頭158),編程資料之第二頁面可被載入至非及閘快閃式記憶體裝置100以及錯誤更正碼處理(第一箭頭150、第二箭頭152以及第三箭頭154)。
第2A、2B圖係顯示根據本發明之一實例之執行第1圖所示之技巧之編程操作200之流程圖。接收且執行讀取致能指令(步驟202),隨後接收並執行一載入編程資料指令(步驟204而放置編程資料至快取暫存器132(第1圖)。完全載入編程資料指令所需之總時間係為可變的,且根據許多不同的因素而改變,如使用之序列周邊介面協議(例如,單一、雙或四位元)以及操作頻率,但由在適當時候可發出快取編程執行指令之控制器將其列入考慮。由非及閘快閃式記憶體裝置100接收快取編程執行指令(步驟206),快取編程執行指令執行許多內部操作且回應有限數目之指令。舉例來說,非及閘快閃式記憶體裝置100可設定裝置忙碌位元以及快取忙碌位元(步驟208)、執行錯誤更正碼處理(步驟210)、自快取暫存器132複製資料至資料暫存器134(步驟212)、重設快取忙碌位元(步驟214)以及自快取暫存器132初始編程非及閘快閃式記憶體陣列140之頁面(步驟216)。
在快取忙碌位元設定之後(步驟208),非及閘快閃式記憶體裝置100可回應讀取狀態暫存器指令(步驟220),以便記憶體控制器(圖中未顯示)可偵測是否快取忙碌位元被清除(步驟214)。若快取忙碌位元被清除(重設)且有更多編程非及閘
快閃式記憶體陣列之需求(步驟222為是),編程操作可與第2B圖所示之許多操作一同進行。若沒有進一步對非及閘快閃式記憶體陣列編程之需求(步驟272為否),其他操作可在忙碌位元被清除後而執行(步驟224)。
當頁面編程正在進行中,非及閘快閃式記憶體裝置100可與頁面編程並列執行許多其他操作,改善編程操作之整體吞吐量。非及閘快閃式記憶體裝置100可被致能而於頁面編程至寫入致能指令、載入編程資料指令以及快取編程執行指令時,以下列方式回應,即使當裝置忙碌位元被設定時亦如此。
如第2B圖所示,確認連續位元(步驟226)以決定是否編程操作係用於特定的頁面或是用於連續編程操作。在前述的事件中(步驟226為否),接收以及執行寫入致能指令(步驟230)、接收以及執行載入編程資料指令(步驟232)而放置編程資料至快取暫存器132(第1圖)以及由非及閘快閃式記憶體裝置100接收快取編程執行指令(步驟234)。在後來的事件中(步驟226為是),接收或執行寫入致能指令(步驟240)、接收或執行載入編程資料指令(步驟242)而放置編程資料至快取暫存器132(第1圖)以及由非及閘快閃式記憶體裝置100接收第二快取編程執行指令(步驟244)。第二快取編程執行不需要指定頁面位址,因為在執行連續編程時,頁面位址係為內部決定。有利的是,非及閘快閃式記憶體裝置100可執行許多內部操作來回硬第二快取編程執行指令,儘管編程正在執行以回應第一快取編程執行指令。舉例來說,非及閘快閃式記憶體裝置100可設定裝置忙碌位元以及快取忙碌位元(步驟250),且執行錯誤更正碼
程序(步驟252)。
不論是否非及閘快閃式記憶體陣列之頁面編程正在執行,非及閘快閃式記憶體裝置100可回應讀取狀態暫存器指令(步驟270),以便記憶體控制器(圖中並未顯示)可偵測是否暫存器忙碌位元是否清除(重置)。當非及閘快閃式記憶體陣列之頁面編程完成時,那時許多其他內部操作可能繼續進行;舉例來說,自快取暫存器132複製資料至資料暫存器134(步驟254),重設快取忙碌位元(步驟256)、自快取暫存器132初始編程非及閘快閃式記憶體陣列140之更多頁面(步驟258)以及若沒有接收到寫入致能指令,則重設寫入致能閂鎖位元以及裝置忙碌位元(步驟260)。若快取忙碌位元被清除且非及閘快閃式記憶體陣列有其他編程之需求時(步驟272為是),與步驟226一同開始之許多操作會被重複。若沒有其他編程非及閘快閃式記憶體陣列之需求時(步驟272為否),其他操作可在忙碌位元清除後而執行(步驟274)。
使用快取編程執行技術之編程操作200之吞吐量相對於標準編程執行技術之優點,可利用比較代表前者之第3圖之時序圖以及代表後者之第4圖之時序圖而瞭解。時間序列301-305(第3圖)以及時間序列401-405(第4圖)並非為本質上相異。然而,對於標準編程執行技術,時間序列407-410係為等待頁面編程406之完成後才發生。相反的且有利的是,當頁面編程306發生時,快取編程執行技術之時間序列307-310也正在發生,因此這些操作所使用之時間隱藏於頁面編程306所使用之時間之下。多頁面編程事件之吞吐量之優點顯而易見,對於
快取編程執行技術,編程頁面312與編程頁面306之間隔僅為自快取暫存器132傳輸編程資料至資料暫存器134所需之時間(時間序列311),其中對於標準編程執行技術,編程頁面412落後編程頁面406不僅僅只是自快取暫存器132傳輸編程資料至資料暫存器134所需之時間(時間序列411),而是分別對應讀取致能指令、載入編程資料指令、編程執行指令以及錯誤更正碼計算之時間序列407-410。
效能增進的原因係為在大多編程操作時,本質上完權利用非及閘快閃式記憶體裝置100之資源所產生的。如第5圖所示,資料暫存器520以及非及閘快閃式記憶體陣列530並非一開始就被第一載入編程資料指令(LPD)561以及第一快取編程執行指令(CPE)562所採用。然而,在清除快取忙碌位元540且回應第二載入編程資料指令(RSR(CB)LPD)563以及第二快取編程執行指令(CPE)564之後,在使用資料暫存器520以及非及閘快閃式記憶體陣列530進行頁面編程(CPE-1(PR))的時候,在此同時,快取暫存器510被用以接收編程資料(LPD-2),隨後用以錯誤更正碼處理(CPE-2(ECC))。本質上的完全利用持續至隨後的載入編程資料以及快取編程執行指令序列,不論是依序或是對指定的頁面。
快取編程執行技術可與許多其他技術合併使用,以實現具有快讀取以及包括快速連續讀取之快編程能力之非及閘快閃式記憶體裝置。第6圖係顯示根據本發明之一實例所述之能夠提供跨頁面邊界以及自邏輯連續記憶體位置之連續讀取而不需等待時間之串列非及閘快閃式記憶體600之功能方
塊圖。錯誤更正碼程序以及利用故障區塊查找表之故障區塊管理,可在記憶體裝置之晶片上實現,也就是在相同的晶粒上之額外的電路,或者是實現於記憶體裝置之命令以及控制邏輯中且與命令以及控制邏輯之其他功能緊緊地整合在一起,隨著使用快取編程執行技術之快速操作而致能快速且有效率的連續讀取操作。合適的非及閘快閃式記憶體架構係詳細地描述於,例如Gupta於2014年3月4日公開之美國專利編號8,667,368之標題為「Method and Apparatus for Reading NAND Flash Memory」、Michael於2013年12月26日公開之美國專利公開號2013/0346671之標題為「On-Chip Bad Block Management for NAND Flash Memory」以及Jigour於2013年3月13日申請之美國專利申請號13/799,215之標題為「NAND Flash Memory」,在此謹將上述所有的參考文獻之內容併入至此。
串列非及閘快閃式記憶體600包括非及閘快閃式記憶體以及相關的頁面緩衝器638。非及閘快閃式記憶體陣列640包括字元(列)線以及位元(欄)線,且配置為使用者可定址區域642、冗餘區塊區域644以及查找表資訊區塊646。任何所需之快閃式記憶體單元技術可用於非及閘快閃式記憶體陣列640之快閃式記憶體單元。串列非及閘快閃式記憶體600可包括許多其他電路來支持記憶體編程、抹除以及讀取,如列解碼器634、欄解碼器636、輸入/輸出控制622、狀態暫存器623、連續頁面讀取(continuous page read,CPR)位址暫存器(CPR BB ADDR REG)624、命令暫存器625、位址暫存器626、查找表暫存器627、控制邏輯630、連續頁面讀取故障區塊邏輯(CPR BB
LOGIC)631、連續頁面讀取故障區塊暫存器(BB REG)632以及高電壓產生器(HV GEN)633。列解碼器634在使用者控制之下,在某些實施例中係為在內部控制之下,選擇使用者可定址區域642之列;並在內部控制之下選擇冗餘區塊區域644以及查找表資訊區塊646之列。電源係藉由電源線VCC以及接地端GND,提供至整個串列非及閘快閃式記憶體600之所有電路(圖中為顯示)。當非及閘快閃記憶體600可以任何所預支方式封裝,且可具有任何型式之介面,包括一班非及閘快閃式記憶體介面,第6圖之控制邏輯630事例地實現序列周邊介面/快速通道互聯(SPI/QPI)協定,包括多輸入輸出序列周邊介面介面。其他關於序列周邊介面/快速通道互聯介面之細節以及記憶體之各種電路,可參考Jigour於2009年7月7日發行之美國專利號7,558,900之標題為「Serial Flash Semiconductor Memory」,以及前述華邦電子於2013年11月26日中華民國台灣新竹所提出之初步版本B中,具有二/四串列周邊介面以及連續讀取之3V 1G位元串列單層式NAND快閃式記憶體之W25N01GV,在此將其全部內容引用於此。
若模式需要切換,可提供緩衝器模式旗標647。可提供緩衝器模式旗標647代表狀態暫存器623之一位元。位於控制邏輯630之通電偵測器635,用以初始化在通電時特定模式之設定以及預設頁面之載入。
忙碌位元652係為唯讀裝置忙碌位元,當裝置通電或執行不同指令(包括頁面資料讀取指令以及連續讀取指令)時,忙碌位元652設定為邏輯1狀態。此時,裝置忽略除了特定
指令(如讀取狀態暫存器、讀取JEDEC識別指令及用以快取編程執行技術之目的、載入編程資料指令)之其他指令。當執行指令完成時,忙碌位元652被清除至邏輯0狀態,代表裝置準備好接收其他指令。忙碌位元652可作為狀態暫存器623之部分。
當頁面緩衝器638之快取暫存器在執行載入編程資料指令或快取編程執行指令時被使用,為唯讀快取忙碌位元之快取忙碌位元653被設定為邏輯1狀態。當頁面緩衝器638之快取暫存器不再忙碌時,快取忙碌位元653被清除為邏輯0狀態,代表快取暫存器準備好接受其他指令。快取忙碌位元653可作為狀態暫存器623之一部分。
頁面緩衝器638示例性地包括單頁資料暫存器(圖中並未顯示)、單頁快取暫存器(圖中並未顯示)以及用以自資料暫存器複製資料至快取暫存器之閘的一頁(圖中並未顯示)。任何合適的閂鎖或記憶體技術可用於資料暫存器以及快取暫存器,任何適合的閘技術可用以自資料暫存器複製資料至快取暫存器。資料暫存器以及快取暫存器可安排於任何期望數目之各部份,例如這些閘皆以此方式接線以及用來控制資料的複製。舉例來說,資料暫存器以及快取暫存器可安排於個別對應DR-0以及DR-1與CR-0以及CR-1之部分,並利用由對應控制線控制之閘所對應之群組而交替操作。頁面緩衝器638之資料暫存器以及快取暫存器可操作於一般方式,該一般方式相當適合藉由施加相同控制信號至對應的閘控制線之快取編程執行技術,且可交替操作這種技術而進行藉由施加適當時脈的控制信號至閘控制線之連續讀取。舉例來說,在兩部份實施中,其中一頁
係為2K字元組,半頁(1K)之閘可藉由一控制線而被控制,另一半之半頁(1K)之閘可藉由另一控制線而被控制,因此安排資料暫存器以及快取暫存器於兩個半頁(1K)可當作兩個半頁方式操作或是一個單頁(2K)方式操作。因為兩個部份交替操作,頁面緩衝器638之兩部份實施可稱為「乒乓」緩衝器。錯誤更正碼電路(圖中並未顯示)可根據ECC-E旗標(ECC-E)648之狀態,而對快取暫存器之內容執行錯誤更正碼程序。第一錯誤更正碼狀態位元(ECC-0)650以及第二錯誤更正碼狀態位元(ECC-1)651可用以代表錯誤更正碼程序之狀態,在完成讀取操作後可用以確認資料的完整性。若有需要,ECC-E旗標648、第一錯誤更正碼狀態位元(ECC-0)650及第二錯誤更正碼狀態位元(ECC-1)651可作部份狀態暫存器623。
可使用不同尺寸之頁面緩衝器,及/或若有需要也可將頁面緩衝器分割為兩個以上之部份或分割為不相等尺寸之部分,而不影響快取編程執行技術之效用。再者,邏輯性的以及物理性的非及閘快閃式記憶體陣列之差異,並不影響本發明在此所述之教示。舉例來說,物理性的陣列在一字元線上可具有二頁面(偶數頁面為2KB,奇數頁面為2KB),因此一字元線可為4KB之非及閘位元單元。為說明清楚起見,在此之說明以及圖式係根據邏輯性的非及閘快閃式記憶體陣列。錯誤更正電路邏輯上可視為具有提供快取暫存器之一半(CR-0部份)之內容錯誤更正的ECC-0部份,以及提供快取暫存器之另一半(CR-1部份)之內容錯誤更正之ECC-1部份。各種的ECC演算法都能使用,包括如漢明錯誤更正演算法、BCH ECC algorithm、
Reed-Solomon ECC algorithm以及其他演算法。為求詳細說明,當兩個邏輯性ECC部份ECC-0以及ECC-1分別作為CR-0以及CR-1之接口,兩個物理性的ECC區塊或單一物理性區塊可用以接口CR-0以及CR-1。將資料暫存器以及快取暫存器劃分為複數區塊且對複數區塊執行錯誤更正碼程序之方式係用以說明之舉例,若有需要也可使用其他技術。
當組織與運作非及閘快閃式記憶體600來執行各種讀取操作,包括在單一平面上之非及閘架構中連續頁面讀取操作以及晶粒上錯誤更正碼程序,該非及閘架構僅作說明解釋之用,而其變形亦可被預期。要知道,2KB頁面尺寸以及特定區塊尺寸之實施例係用以說明解釋之用,若有需要可做修改。再者,特定尺寸參考並非依字面上所限制,因為實際的頁面尺寸會根據設計考量而有所不同;舉例來說,該項目包括2048字元組之主要區域以及額外的64KB備用區域,其中備用區域用以儲存錯誤更正碼以及其他資訊,例如中介資料。以相同的方式,1KB代表1024字元組主要區域以及32字元組備用區域。當在此之描述係根據單一平面架構以利詳細說明,在此所教示者也可相同應用至多平面架構。當使用多個物理性平面時,會共用一或多字組線以便記憶體系統能同時服務多個輸入/輸出之要求。每一平面提供一頁面之資料,且包括為一頁尺寸的對應之資料暫存器以及為一頁尺寸的對應之快取暫存器。在此所述之技術可分別應用至每一平面,使得每一資料暫存器以及快取暫存器係劃分為多個部份,或可應用至多個平面,使得每一資料暫存器以及快取暫存器之本身係為多頁面資料暫存器以及
快取暫存器之一部分。
第6圖也顯示用於串列周邊介面之反相之晶片選擇信號/CS、時脈信號CLK、串列資料輸入信號DI、串列資料輸出信號DO、反相之寫入保護信號/WP以及反相之維持信號/HOLD。標準的串列周邊介面快閃式介面隨著可選的反相之寫入保護信號/WP以及反相之維持信號/HOLD,提供反相之晶片選擇信號/CS、時脈信號CLK、串列資料輸入信號DI以及串列資料輸出信號DO。當在標準串列周邊介面中的一位元串列資料匯流排(資料輸入經由串列資料輸入信號DI,而資料輸出經由串列資料輸出信號DO)提供簡單介面以及與啟動於單一串列周邊介面模式之許多控制器之相容性時,其限制了達到更高的吞吐量之可能性。多位元串列周邊介面之介面因而加入,並額外地支援雙通道(二位元介面)及/或四通道(四位元介面)以增加讀取之吞吐量。第11圖也顯示雙通道串列周邊介面以及四通道串列周邊介面操作之額外的資料匯流排信號,也就是藉由選擇性地重新定義I/O(0),I/O(1),I/O(2),and I/O(3)這四根腳位之功能。在一說明之實施例之四通道串列周邊介面讀取操作(其他實施例中亦可考慮),可利用一位元標準串列周邊介面經由I/O(0)而給出適當的讀取指令,但位址以及輸出資料之介面可為四通道(也就是四位元資料匯流排)。與在標準串列周邊介面讀取操作中輸出一位元之資料相比,四通道串列周邊介面讀取操作可在一時脈週期內輸出四位元之資料,因而四通道串列周邊介面讀取操作可提供四倍高的讀取吞吐量。在此之四通道串列周邊介面讀取操作僅用於說明之用,在此之教示也可相同
地應用至其他操作模式,包括但不限於單一串列周邊匯流排、雙通道串列周邊匯流排、四周邊介面以及雙倍傳輸速率等讀取模式。在四周邊介面協定中,完整介面(操作碼、位址以及資料輸出)係以四位元為基礎。在雙倍傳輸速率協定中,輸出資料係提供於時脈信號CLK之正觸發緣以及負觸發緣,而非如單一傳輸速率讀取模式中,僅於時脈信號CLK之負觸發緣提供輸出資料。
快取編程執行技術可包括故障區塊管理。要被編程之頁面的位址被取得後,存放在位址暫存器626。編程程序藉由在查找表暫存器627中查找之動作,而繼續判斷位址暫存器626中之位址是否符合在查找表暫存器627中之任何邏輯區塊位址。因為查找表暫存器627可為能夠利用控制邏輯630於本地存取之一快速靜態存取記憶體,該查找之動作可快速執行而不會顯著影響編程時間。若沒有找到任何符合的對象,邏輯區塊位址則用以編程記憶體之一頁。若找到符合的對象時,則指出故障區塊,並且使用替代區塊之PBA而非位址暫存器626之邏輯區塊位址來編程所欲編程之頁面。一旦取得正確的頁面位址,實際的頁面編程程序以及確認編程錯誤之程序會以任何所欲的方式執行。根據本發明之一實施例,一合適的技巧係為一般編程驗證操作,該編程驗證操作通常在狀態暫存器中設定通過/失敗位元。在確認編程錯誤後,若有需要會執行故障區塊管理。故障區塊管理可以各種方式執行,例如在使用者控制下藉由主機或控制器而執行、半自動地回應由主機或控制器所標記之故障區塊、經由非及閘快閃式記憶體裝置之控制邏輯自動
地執行、或以任何其他合適的方式。
因為使用者可能在沒有助益到故障區塊的情況下跨越實體區塊邊界而編程,故對於串列編程操作時之編程吞吐量之維持,故障區塊管理係特別有用。使用者可藉由設定串列位元(SEQ)654,而啟動串列編程模式。
本發明之敘述包括其在此所提之應用以及優點僅為說明之用,並非用以限制本發明於申請專利範圍中之範圍。在此所述之實施例之變形以及修改皆為可能,且該領域具有通常知識者也都知道實際替代以及等同於本發明之各種元件,可經由研究本專利說明書而得。舉例來說,儘管在此所述之許多實施例係用於串列非及閘快閃式記憶體,在此所述之特定技巧例如通電順序、模式選擇以及跨越頁面邊界與自邏輯性地連續記憶體位址而不用等待時間連續資料輸出等,可用於並列非及閘快閃式記憶體。再者,在此所給訂之特定數值係為說明之用,若有需要可自行修改。語彙如「第一」以及「第二」等,係為區別語彙而非解釋為隱含一順序或一整體之特定部份。這些或其他在此所述之實施例之變形以及調整,包括在此所述之實施例之替代以及等同物,可在不悖離本發明之範圍以及精神下得到,包括本發明以下所述之申請專利範圍。
200~274‧‧‧步驟流程
Claims (8)
- 一種記憶體編程方法,適用於利用一記憶體裝置之一資料暫存器以及一快取暫存器作為一非及閘快閃式記憶體陣列之一頁面緩衝器,而將來自於一資料匯流排之一編程資料之頁面編程至上述記憶體裝置之上述非及閘快閃式記憶體陣列,包括:將來自上述資料匯流排之上述編程資料之一第一頁面儲存於上述快取暫存器;對儲存於上述快取暫存器之上述編程資料之上述第一頁面執行一錯誤更正碼操作,而建立經上述錯誤更正碼操作處理之上述第一頁面於上述快取暫存器;從上述快取暫存器將經上述錯誤更正碼操作處理之上述第一頁面儲存於上述資料暫存器;將經上述錯誤更正碼操作處理之上述第一頁面自上述資料暫存器編程至上述非及閘快閃式記憶體陣列;在與編程上述第一頁面步驟相重疊之時間中,自上述資料匯流排將上述編程資料之一第二資料頁面儲存於上述快取暫存器;以及在與編程上述第一頁面步驟相重疊之時間中,對儲存於上述快取暫存器之上述編程資料之上述第二頁面進行上述錯誤更正碼操作,而建立經上述錯誤更正碼操作處理之上述第二頁面於上述快取暫存器,其中:上述快取暫存器包括複數分離式可控制部份;對上述第一頁面執行上述錯誤更正碼操作步驟包括對儲存 於上述快取暫存器之上述編程資料之上述第一頁面執行上述錯誤更正碼操作,其中上述快取暫存器之上述分離式可控制部份被控制為單一頁面;以及對上述第二頁面執行上述錯誤更正碼操作步驟包括對儲存於上述快取暫存器之上述編程資料之上述第二頁面執行上述錯誤更正碼操作,其中上述快取暫存器之上述分離式可控制部份被控制為單一頁面。
- 如申請專利範圍第1項所述之記憶體編程方法,更包括:將經上述錯誤更正碼操作之上述第二頁面自上述快取暫存器儲存於上述資料暫存器;將經上述錯誤更正碼操作之上述第二頁面自上述資料暫存器編程至上述非及閘快閃式記憶體陣列;在與編程上述第二頁面步驟相重疊之時間中,自上述資料匯流排將上述編程資料之一第三頁面儲存於上述快取暫存器;以及在與編程上述第二頁面步驟相重疊之時間中,對儲存於上述快取暫存器之上述編程資料之上述第三頁面進行上述錯誤更正碼操作,而建立經上述錯誤更正碼操作處理之上述第三頁面於上述快取暫存器。
- 如申請專利範圍第1項所述之記憶體編程方法,其中:上述快取暫存器包括複數分離式可控制部份;對上述第一頁面執行上述錯誤更正碼操作步驟包括分別對儲存於上述快取暫存器之上述分離式可控制部份之上述編程資料之上述第一頁面之複數部份執行上述錯誤更正碼操 作;以及對上述第二頁面執行上述錯誤更正碼操作步驟包括分別對儲存於上述快取暫存器之上述分離式可控制部份之上述編程資料之上述第二頁面之複數部份執行上述錯誤更正碼操作。
- 如申請專利範圍第1項所述之記憶體編程方法,其中:上述快取暫存器係控制為單一頁面;對上述第一頁面執行上述錯誤更正碼操作步驟包括對儲存於上述快取暫存器之上述編程資料之上述第一頁面執行上述錯誤更正碼操作;以及對上述第二頁面執行上述錯誤更正碼操作步驟包括對儲存於上述快取暫存器之上述編程資料之上述第二頁面執行上述錯誤更正碼操作。
- 如申請專利範圍第1項所述之記憶體編程方法,其中在編程步驟之前更包括:取得要被編程之一頁面的一位址;在上述記憶體裝置中之一查找表暫存器中查找,其中上述查找表暫存器用以維持複數故障區塊之複數邏輯區塊位址與複數實體區塊位址之對應關係,以確認要被編程之上述頁面之上述位址是否與上述查找表暫存器中之任何邏輯區塊位址相符合;以及當上述查找步驟無法找到與要被編程之上述頁面之上述位址相符合之邏輯區塊位址時,利用要被編程之上述頁面之上述位址來建立一編程位址,當上述查找步驟找到與要被 編程之上述頁面之上述位址相符合之邏輯區塊位址時,利用上述查找表暫存器中對應符合之邏輯區塊位址之一實體區塊位址來建立上述編程位址;其中上述編程步驟包括,利用上述編程位址將來自上述資料暫存器之經過上述錯誤更正碼操作之上述第一頁面編程至上述非及閘快閃式記憶體陣列。
- 一種記憶體裝置,包括:一非及閘快閃式記憶體陣列;一列解碼器,耦接至上述非及閘快閃式記憶體陣列;一資料暫存器,耦接至上述非及閘快閃式記憶體陣列;一快取暫存器,耦接至上述資料暫存器且包括複數分離式可控制部份,其中上述快取暫存器之上述分離式可控制部份被控制為單一頁面;一錯誤更正碼電路,耦接至上述快取暫存器;一欄解碼器,耦接至上述快取暫存器;以及一控制電路,耦接至上述列解碼器、上述欄解碼器、上述資料暫存器、上述快取暫存器以及上述錯誤更正碼電路,其中上述控制電路包括用以執行以下功能之複數邏輯以及暫存器元件:將一編程資料之一第一頁面儲存於上述快取暫存器;利用上述錯誤更正碼電路對儲存於上述快取暫存器之上述編程資料之上述第一頁面執行一錯誤更正碼操作,以建立上述快取暫存器中之經過上述錯誤更正碼操作之上述第一頁面; 從上述快取暫存器將經上述錯誤更正碼電路處理之上述第一頁面儲存於上述資料暫存器;將經上述錯誤更正碼電路處理之上述第一頁面自上述資料暫存器編程至上述非及閘快閃式記憶體陣列;在與編程上述非及閘快閃式記憶體陣列相重疊之時間中,將上述編程資料之一第二頁面儲存於上述快取暫存器;以及在與編程上述非及閘快閃式記憶體陣列相重疊之時間中,對儲存於上述快取暫存器之上述編程資料之上述第二頁面執行上述錯誤更正碼操作,以建立經上述錯誤更正碼操作之上述第二頁面於上述快取暫存器。
- 如申請專利範圍第6項所述之記憶體裝置,其中上述控制電路更包括用以執行以下功能之複數邏輯以及暫存器元件:自上述快取暫存器將經上述錯誤更正碼操作之上述第二頁面儲存於上述資料暫存器;自上述資料暫存器將經上述錯誤更正碼操作之上述第二頁面編程至上述非及閘快閃式記憶體陣列;在與編程上述第二頁面步驟相重疊之時間中,自上述資料匯流排將上述編程資料之一第三頁面儲存於上述快取暫存器;以及在與編程上述第二頁面步驟相重疊之時間中,對儲存於上述快取暫存器之上述編程資料之上述第三頁面執行上述錯誤更正碼操作,以建立儲存於快取暫存器之經上述錯誤更 正碼操作之上述第三頁面。
- 如申請專利範圍第6項所述之記憶體裝置,更包括一查找表暫存器,其中上述查找表暫存器用以維持複數故障區塊之複數邏輯區塊位址與複數實體區塊位址之對應關係,其中上述控制電路更包括用以執行下列功能之複數邏輯以及暫存器元件:取得要被編程之一頁面的一位址;在上述查找表暫存器中查找,以確認要被編程之上述頁面之上述位址是否與上述查找表暫存器中之任何邏輯區塊位址相符合;以及當上述查找步驟無法找到與要被編程之上述頁面之上述位址相符合之邏輯區塊位址時,利用要被編程之上述頁面之上述位址來建立一編程位址,當上述查找功能找到與要被編程之上述頁面之上述位址相符合之邏輯區塊位址時,利用上述查找表暫存器中對應符合之邏輯區塊位址之一實體區塊位址來建立上述編程位址;其中上述編程功能包括,利用上述編程位址將來自上述資料暫存器之經過上述錯誤更正碼操作之上述第一頁面編程至上述非及閘快閃式記憶體陣列。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW103142740A TWI587302B (zh) | 2014-12-09 | 2014-12-09 | 記憶體編程方法以及記憶體裝置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW103142740A TWI587302B (zh) | 2014-12-09 | 2014-12-09 | 記憶體編程方法以及記憶體裝置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW201621910A TW201621910A (zh) | 2016-06-16 |
| TWI587302B true TWI587302B (zh) | 2017-06-11 |
Family
ID=56755568
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW103142740A TWI587302B (zh) | 2014-12-09 | 2014-12-09 | 記憶體編程方法以及記憶體裝置 |
Country Status (1)
| Country | Link |
|---|---|
| TW (1) | TWI587302B (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI646430B (zh) * | 2017-08-31 | 2019-01-01 | 華邦電子股份有限公司 | 字節編程方法以及頁面編程方法 |
| US10593407B2 (en) | 2017-08-31 | 2020-03-17 | Winbond Electronics Corp. | Fast programming methods for flash memory devices |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10566040B2 (en) * | 2016-07-29 | 2020-02-18 | Micron Technology, Inc. | Variable page size architecture |
| JP2018049387A (ja) * | 2016-09-20 | 2018-03-29 | 東芝メモリ株式会社 | メモリシステム及びプロセッサシステム |
| US10956318B2 (en) * | 2018-06-19 | 2021-03-23 | Macronix International Co., Ltd. | Overlapping ranges of pages in memory systems |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003249082A (ja) * | 2001-12-19 | 2003-09-05 | Toshiba Corp | 半導体集積回路 |
| US20090024904A1 (en) * | 2007-07-19 | 2009-01-22 | Micron Technology, Inc. | Refresh of non-volatile memory cells based on fatigue conditions |
| US20100103734A1 (en) * | 2008-10-24 | 2010-04-29 | Gerrit Jan Hemink | Programming non-volatile memory with high resolution variable initial programming pulse |
| US20130336060A1 (en) * | 2012-06-13 | 2013-12-19 | Winbond Electronics Corp. | Memory device and redundancy method thereof |
| TW201403605A (zh) * | 2012-07-02 | 2014-01-16 | Winbond Electronics Corp | 用於讀取nand快閃記憶體的方法和設備 |
| TW201419295A (zh) * | 2012-11-14 | 2014-05-16 | Winbond Electronics Corp | 晶片上之反及閘快閃記憶體及其損壞區塊管理方法 |
| US20140258811A1 (en) * | 2013-03-11 | 2014-09-11 | Macronix International Co., Ltd. | Storage scheme for built-in ecc operations |
-
2014
- 2014-12-09 TW TW103142740A patent/TWI587302B/zh active
Patent Citations (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003249082A (ja) * | 2001-12-19 | 2003-09-05 | Toshiba Corp | 半導体集積回路 |
| US20090024904A1 (en) * | 2007-07-19 | 2009-01-22 | Micron Technology, Inc. | Refresh of non-volatile memory cells based on fatigue conditions |
| US20100103734A1 (en) * | 2008-10-24 | 2010-04-29 | Gerrit Jan Hemink | Programming non-volatile memory with high resolution variable initial programming pulse |
| US20130336060A1 (en) * | 2012-06-13 | 2013-12-19 | Winbond Electronics Corp. | Memory device and redundancy method thereof |
| TW201403605A (zh) * | 2012-07-02 | 2014-01-16 | Winbond Electronics Corp | 用於讀取nand快閃記憶體的方法和設備 |
| TW201419295A (zh) * | 2012-11-14 | 2014-05-16 | Winbond Electronics Corp | 晶片上之反及閘快閃記憶體及其損壞區塊管理方法 |
| US20140258811A1 (en) * | 2013-03-11 | 2014-09-11 | Macronix International Co., Ltd. | Storage scheme for built-in ecc operations |
| TW201435893A (zh) * | 2013-03-11 | 2014-09-16 | Macronix Int Co Ltd | 用於內建錯誤更正的儲存架構 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI646430B (zh) * | 2017-08-31 | 2019-01-01 | 華邦電子股份有限公司 | 字節編程方法以及頁面編程方法 |
| US10593407B2 (en) | 2017-08-31 | 2020-03-17 | Winbond Electronics Corp. | Fast programming methods for flash memory devices |
Also Published As
| Publication number | Publication date |
|---|---|
| TW201621910A (zh) | 2016-06-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9971647B2 (en) | Apparatus and method for programming ECC-enabled NAND flash memory | |
| US9367392B2 (en) | NAND flash memory having internal ECC processing and method of operation thereof | |
| JP4129381B2 (ja) | 不揮発性半導体記憶装置 | |
| US9128822B2 (en) | On-chip bad block management for NAND flash memory | |
| TWI703499B (zh) | 資料儲存裝置及其共享控制器中記憶體的方法 | |
| CN103871447B (zh) | 与非门快闪存储器阵列及芯片及其存取、读取及管理方法 | |
| TWI489466B (zh) | 記憶體抹除方法、記憶體控制器與記憶體儲存裝置 | |
| TWI587302B (zh) | 記憶體編程方法以及記憶體裝置 | |
| TWI592799B (zh) | 映射表更新方法、記憶體控制電路單元及記憶體儲存裝置 | |
| TWI554886B (zh) | 資料保護方法、記憶體控制電路單元及記憶體儲存裝置 | |
| TWI668570B (zh) | 資料整併方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI606333B (zh) | 資料處理方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI640865B (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
| US10199108B2 (en) | Methods for read retries and apparatuses using the same | |
| TWI678621B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TW202040370A (zh) | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 | |
| TWI631460B (zh) | 資料讀取方法、記憶體控制電路單元與記憶體儲存裝置 | |
| TW201419295A (zh) | 晶片上之反及閘快閃記憶體及其損壞區塊管理方法 | |
| CN108664350B (zh) | 数据保护方法、存储器存储装置及存储器控制电路单元 | |
| TWI634561B (zh) | 資料保護方法、記憶體儲存裝置及記憶體控制電路單元 | |
| JP2008251154A (ja) | 不揮発性半導体記憶装置 | |
| CN105825890B (zh) | 存储器编程方法以及存储器装置 | |
| TWI813362B (zh) | 部分抹除管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TW202324433A (zh) | 記憶體控制器與資料處理方法 | |
| US20250156113A1 (en) | Storage device initializing e-fuse region, and method of operating the same |