TWI692767B - 具有錯誤更正功能的記憶體及相關記憶體系統 - Google Patents
具有錯誤更正功能的記憶體及相關記憶體系統 Download PDFInfo
- Publication number
- TWI692767B TWI692767B TW107145693A TW107145693A TWI692767B TW I692767 B TWI692767 B TW I692767B TW 107145693 A TW107145693 A TW 107145693A TW 107145693 A TW107145693 A TW 107145693A TW I692767 B TWI692767 B TW I692767B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- memory
- controller
- storage area
- general storage
- Prior art date
Links
- 238000012937 correction Methods 0.000 title claims abstract description 52
- 230000006870 function Effects 0.000 title claims abstract description 52
- 238000000034 method Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/52—Protection of memory contents; Detection of errors in memory contents
-
- 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/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/74—Masking faults in memories by using spares or by reconfiguring using duplex memories, i.e. using dual copies
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
具有錯誤更正功能的記憶體包含一控制器及一記憶單元陣列。該控制器選擇性地寫入一寫入資料至該記憶單元陣列中的一一般儲存區和一備份區,以及當該控制器從該一般儲存區讀出對應該寫入資料的一第一資料時,如果該第一資料出現至少二個錯誤,則該控制器讀取該備份區以輸出該備份區中對應該寫入資料的一第二資料。
Description
本發明是有關於一種記憶體及相關記憶體系統,尤指一種具有錯誤更正功能的記憶體及相關記憶體系統。
當一資料儲存在記憶體時,如果該資料是重要的資料時,則該資料儲存於該記憶體時必須不能存在錯誤。因此,具有錯誤更正(error correcting)功能的記憶體是記憶體設計者的一設計方向。現有技術在該記憶體所儲存的資料出現一個錯誤時,可利用一錯誤更正碼(Error-Correcting Code,ECC)功能更正該錯誤。在該記憶體所儲存的該資料出現錯誤的機率增加的狀況下,例如隨著記憶體的製程技術愈來愈先進,該記憶體所儲存的該資料出現軟錯誤(soft error)的發生機率也愈來愈高,針對該記憶體所儲存的該資料上的多個錯誤進行更正的需求就愈來愈大。然而,具有多錯誤更正(multi-error correcting)功能的記憶體在設計上過於複雜且有過高成本,因此,如何針對該記憶體所儲存的該資料上的多個錯誤進行更正,是該記憶體設計者的一項重要課題。
本發明的一實施例提供一種具有錯誤更正(error correcting)功能的記
憶體。該記憶體包含一控制器和一記憶單元陣列。該控制器選擇性地寫入一寫入資料至該記憶單元陣列中的一一般儲存區(normal storage area)和一備份區(backup area),以及當該控制器從該一般儲存區讀出對應該寫入資料的一第一資料時,如果該第一資料出現至少二個錯誤,則該控制器讀取該備份區以輸出該備份區中對應該寫入資料的一第二資料。
本發明的另一實施例提供一種具有錯誤更正功能的記憶體系統。該記憶體系統包含一控制器、一一般儲存記憶體和一備份記憶體。該控制器選擇性地寫入一寫入資料至該一般儲存記憶體和該備份記憶體,以及當該控制器從該正常記憶體讀出對應該寫入資料的一第一資料時,如果該第一資料出現至少二個錯誤,則該控制器讀取該備份記憶體以輸出儲存於該備份記憶體中對應該寫入資料的一第二資料。
本發明的另一實施例提供一種具有錯誤更正功能的記憶體。該記憶體包含一記憶單元陣列,包括一一般儲存區和一備份區;及一控制器,耦接該記憶單元陣列,選擇性地寫入一寫入資料至該一般儲存區和該備份區,其中當該控制器從該一般儲存區讀出對應該寫入資料的一第一資料出現至少一錯誤時,該控制器選擇性地利用一錯誤更正碼功能更正該第一資料,或是讀取該備份區以輸出儲存於該備份區中對應該寫入資料的一第二資料。
本發明提供一種具有錯誤更正功能的記憶體及相關記憶體系統。因為該記憶體是利用該記憶體的一控制器選擇性地寫入一寫入資料至該記憶體的一記憶單元陣列中的一一般儲存區和一備份區,所以當該一般儲存區中對應該寫入資料的一第一資料出現至少二個錯誤時,該控制器可讀取該備份區中對應
該寫入資料的一第二資料。另外,因為該記憶體系統是利用該記憶體系統的一控制器選擇性地寫入該寫入資料至該記憶體系統的一般儲存記憶體和備份記憶體,所以當該一般儲存記憶體中對應該寫入資料的一第一資料出現至少二個錯誤時,該控制器可讀取該備份記憶體中對應該寫入資料的一第二資料。因此,相較於現有技術,本發明可對該一般儲存區所儲存的資料和該一般儲存記憶體所儲存的資料上的多個錯誤進行更正。
100:記憶體
102:控制器
104:記憶單元陣列
B1-B5:記憶區塊
S1-S16:記憶區段
300:記憶體系統
304:一般儲存記憶體
306:備份記憶體
400-410、500-520、600-612、700-724:步驟
第1圖是本發明的第一實施例所公開的一種具有錯誤更正功能的記憶體的示意圖。
第2圖是本發明的另一實施例所公開的一種具有錯誤更正功能的記憶體的示意圖。
第3圖是本發明的第二實施例所公開的一種具有錯誤更正功能的記憶體系統的示意圖。
第4圖是本發明的第三實施例所公開的一種具有錯誤更正功能的記憶體的寫入資料的方法的流程圖。
第5圖是本發明的第四實施例所公開的一種具有錯誤更正功能的記憶體的讀出資料的方法的流程圖。
第6圖是本發明的第五實施例所公開的一種具有錯誤更正功能的記憶體的寫入資料的方法的流程圖
第7圖是本發明的第六實施例所公開的一種具有錯誤更正功能的記憶體的讀出資料的方法的流程圖。
請參照第1圖,第1圖是本發明的第一實施例所公開的一種具有錯誤更正(error correcting)功能的記憶體100的示意圖。如第1圖所示,記憶體100包含一控制器102和一記憶單元陣列104,其中記憶單元陣列104包含複數個記憶區塊(bank),該複數個記憶區塊中的每一記憶區塊包含複數個記憶區段(section),該複數個記憶區段中的每一記憶區段包含複數個記憶單元(cell),以及記憶體100是一動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)。例如,如第1圖所示,記憶單元陣列104包含4個記憶區塊B1-B4,以及記憶區塊B1包含16記憶區段S1-S16。但本發明並不受限於記憶單元陣列104只包含4個記憶區塊B1-B4,也就是說記憶單元陣列104可包含複數個記憶區塊。另外,本發明也不受限於記憶區塊B1包含16記憶區段S1-S16,也就是說記憶區塊B1可包含複數個記憶區段。
如第1圖所示,在控制器102將一寫入資料寫入該記憶單元陣列104前,控制器102會先產生對應該寫入資料的錯誤更正碼的奇偶校驗位元(parity bit),其中該錯誤更正碼利用該奇偶校驗位元對該寫入資料進行校正的方法是本發明領域具有熟知技藝者所熟知的現有技術,所以在此不再贅述。如果該寫入資料不是重要的資料時,控制器102將該寫入資料和該奇偶校驗位元寫入該記憶單元陣列104中的一一般儲存區(normal storage area)。而如果該寫入資料是重要的資料時,例如該寫入資料為自動駕駛的行車資料,或者是航空飛行的飛行資料時,控制器102將該寫入資料和該奇偶校驗位元同時寫入該一般儲存區與該記憶單元陣列104中的一備份區(backup area)。例如,如果該寫入資料是重要的資料時,控制器102將該寫入資料同時寫入記憶區塊B1和記憶區塊B4,其中記憶區塊B1-B3是該一般儲存區以及記憶區塊B4是該備份區。但本發明並不受限於記憶區塊B1-B3是該一般儲存區以及記憶區塊B4是該備份區。另外,在本發明的另一
實施例中,記憶區塊B1-B4的每一記憶區塊中的記憶區段S2-S15是該一般儲存區以及該每一記憶區塊中的記憶區段S1是該備份區。但本發明並不受限於該每一記憶區塊中的記憶區段S2-S15是該一般儲存區以及該每一記憶區塊中的記憶區段S1是該備份區。另外,如果記憶區塊B1-B3是該一般儲存區以及記憶區塊B4是該備份區,且記憶體100的記憶容量為1G,則該一般儲存區的記憶容量為750M以及該備份區的記憶容量為250M,也就是說該一般儲存區的記憶容量(750M)和該備份區的記憶容量(250M)等於該記憶體100的記憶容量(1G)。但本發明並不受限於記憶體100的記憶容量為1G,該一般儲存區的記憶容量為750M,以及該備份區的記憶容量為250M。在本發明的另一實施例中,如第2圖所示,記憶單元陣列104包含5個記憶區塊B1-B5,其中如果記憶區塊B1-B4是該一般儲存區以及記憶區塊B5是該備份區,且記憶體100的記憶容量為1G,則該一般儲存區的記憶容量為1G以及該備份區的記憶容量為250M,也就是說該一般儲存區的記憶容量(1G)等於記憶體100的記憶容量(1G),且該備份區的記憶容量(250M)是記憶體100的記憶容量(1G)外的記憶容量。
如果該寫入資料不是重要的資料時,控制器102將從該一般儲存區讀出該一般儲存區所儲存的資料(即一第一資料,其中該第一資料對應該寫入資料),利用一錯誤更正碼功能偵測該一般儲存區所儲存的該資料是否出現錯誤,以及輸出該一般儲存區所儲存的資料。而如果該寫入資料是重要的資料時,控制器102同時從該一般儲存區讀出該一般儲存區所儲存的資料和從該備份區讀出該備份區所儲存的資料(即一第二資料,其中該第二資料對應該寫入資料),並同時利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料和該備份區所儲存的資料是否出現錯誤,其中該一般儲存區所儲存的資料和該備份區所儲存的資料對應該寫入資料。如果該一般儲存區所儲存的資料沒有任何錯誤,控制器102
直接輸出該一般儲存區所儲存的資料;如果該一般儲存區所儲存的資料出現一個錯誤,控制器102直接利用該錯誤更正碼功能更正該錯誤並輸出一更正後的資料;如果該一般儲存區所儲存的資料出現至少二個錯誤,則控制器102從該備份區輸出該備份區所儲存的資料。
但在本發明的另一實施例中,如果該寫入資料是重要的資料時,控制器102依序寫入該寫入資料和該奇偶校驗位元至該一般儲存區和該備份區。在控制器102依序寫入該寫入資料至該一般儲存區和該備份區後,當控制器102需要讀出該一般儲存區所儲存的資料時,控制器102從該一般儲存區讀出該一般儲存區所儲存的資料,並利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料是否出現錯誤。如果該一般儲存區所儲存的資料沒有任何錯誤,控制器102直接輸出該一般儲存區所儲存的資料;如果該一般儲存區所儲存的資料出現一個錯誤,控制器102直接利用該錯誤更正碼功能更正該錯誤並輸出一更正後的資料;如果該一般儲存區所儲存的資料出現至少二個錯誤,則控制器102不更正該至少二個錯誤,從該備份區讀出該備份區所儲存的資料,利用該錯誤更正碼功能偵測該備份區所儲存的資料是否出現錯誤,以及控制器102從該備份區輸出該備份區所儲存的資料。
請參照第3圖,第3圖是本發明的第二實施例所公開的一種具有錯誤更正功能的記憶體系統300的示意圖。如第3圖所示,記憶體系統300包含一控制器102、一一般儲存記憶體304和一備份記憶體306,其中記憶體系統300和記憶體100的差別在於記憶體系統300利用一般儲存記憶體304取代記憶體100的該一般儲存區以及利用備份記憶體306取代記憶體100的該備份區。另外,一般儲存記憶體304和備份記憶體306的操作原理可分別參照記憶體100的該一般儲存區
以及記憶體100的該備份區的操作原理,在此不再贅述。
請參照第4圖,第4圖是本發明的第三實施例所公開的一種具有錯誤更正功能的記憶體100的寫入資料的操作方法的流程圖。第4圖的操作方法是利用第1圖的記憶體100說明,詳細步驟如下:步驟400:開始;步驟402:控制器102產生對應該寫入資料的錯誤更正碼的奇偶校驗位元;步驟404:該寫入資料是否是重要的資料;如果否,進行步驟406;如果是,進行步驟408;步驟406:控制器102將該寫入資料和該奇偶校驗位元寫入該一般儲存區;步驟408:控制器102將該寫入資料和該奇偶校驗位元同時寫入該一般儲存區與該備份區;步驟410:結束。
在步驟402中,在控制器102將該寫入資料寫入該記憶單元陣列104前,控制器102會先產生對應該寫入資料的錯誤更正碼的奇偶校驗位元。在步驟408中,如果該寫入資料是重要的資料時,例如該寫入資料為自動駕駛的行車資料,或者是航空飛行的飛行資料時,控制器102將該寫入資料和該奇偶校驗位元同時寫入該一般儲存區與該備份區。例如,如果該寫入資料是重要的資料時,控制器102將該寫入資料同時寫入記憶區塊B1和記憶區塊B4,其中記憶區塊B1-B3是該一般儲存區以及記憶區塊B4是該備份區。
請參照第5圖,第5圖是本發明的第四實施例所公開的一種具有錯誤更正功能的記憶體100的讀出資料的操作方法的流程圖。第5圖的操作方法是利用第1圖的記憶體100說明,詳細步驟如下:
步驟500:開始;步驟502:該寫入資料是否是重要的資料;如果否,進行步驟504;如果是,進行步驟510;步驟504:控制器102從該一般儲存區讀出該一般儲存區所儲存的資料;步驟506:控制器102利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料是否出現錯誤;步驟508:控制器102輸出該一般儲存區所儲存的資料;步驟510:控制器102同時從該一般儲存區讀出該一般儲存區所儲存的資料和從該備份區讀出該備份區所儲存的資料;步驟512:控制器102同時利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料和該備份區所儲存的資料是否出現錯誤;步驟514:如果該一般儲存區所儲存的資料沒有任何錯誤時,進行步驟515;如果該一般儲存區所儲存的資料出現一個錯誤時,進行步驟516;如果該一般儲存區所儲存的資料出現至少二個錯誤時,進行步驟518;步驟515:控制器102直接輸出該一般儲存區所儲存的資料;步驟516:控制器102利用該錯誤更正碼功能更正該錯誤並輸出一更正後的資料;步驟518:控制器102從該備份區輸出該備份區所儲存的資料;
步驟520:結束。
在步驟510中,如果該寫入資料是重要的資料時,控制器102同時從該一般儲存區讀出該一般儲存區所儲存的資料和從該備份區讀出該備份區所儲存的資料。在步驟512中,控制器102同時利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料和該備份區所儲存的資料是否出現錯誤。在步驟515中,因為該一般儲存區所儲存的資料沒有任何錯誤,所以控制器102可直接輸出該一般儲存區所儲存的資料。在步驟516中,如果該一般儲存區所儲存的資料出現一個錯誤,控制器102利用該錯誤更正碼功能更正該錯誤並輸出該更正後的資料。在步驟518中,如果該一般儲存區所儲存的資料出現至少二個錯誤,控制器102不更正該至少二個錯誤,且從該備份區輸出該備份區所儲存的資料。
請參照第6圖,第6圖是本發明的第五實施例所公開的一種具有錯誤更正功能的記憶體100的寫入資料的操作方法的流程圖。第6圖的操作方法是利用第1圖的記憶體100說明,詳細步驟如下:步驟600:開始;步驟602:控制器102產生對應該寫入資料的錯誤更正碼的奇偶校驗位元;步驟604:該寫入資料是否是重要的資料;如果否,進行步驟606;如果是,進行步驟608;步驟606:控制器102將該寫入資料和該奇偶校驗位元寫入該一般儲存區;步驟608:控制器102將該寫入資料和該奇偶校驗位元寫入該一般
儲存區;步驟610:控制器102將該寫入資料和該奇偶校驗位元寫入該備份區;步驟612:結束。
第6圖的第五實施例和第4圖的第三實施例的差別在於如果該寫入資料是重要的資料時,控制器102會依序在步驟108將該寫入資料和該奇偶校驗位元寫入該一般儲存區以及在步驟610將該寫入資料和該奇偶校驗位元寫入該備份區。
請參照第7圖,第7圖是本發明的第六實施例所公開的一種具有錯誤更正功能的記憶體100的讀出資料的操作方法的流程圖。第7圖的操作方法是利用第1圖的記憶體100說明,詳細步驟如下:步驟700:開始;步驟702:該寫入資料是否是重要的資料;如果否,進行步驟704;如果是,進行步驟710;步驟704:控制器102從該一般儲存區讀出該一般儲存區所儲存的資料;步驟706:控制器102利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料是否出現錯誤;步驟708:控制器102輸出該一般儲存區所儲存的資料;步驟710:控制器102從該一般儲存區讀出該一般儲存區所儲存的資料;
步驟712:控制器102利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料是否出現錯誤;步驟714:如果該一般儲存區所儲存的資料沒有任何錯誤時,進行步驟715;如果該一般儲存區所儲存的資料出現一個錯誤時,進行步驟716;如果該一般儲存區所儲存的資料出現至少二個錯誤時,進行步驟718;步驟715:控制器102直接輸出該一般儲存區所儲存的資料;步驟716:控制器102利用該錯誤更正碼功能更正該錯誤並輸出一更正後的資料;步驟718:控制器102從該備份區讀出該備份區所儲存的資料;步驟720:控制器102利用該錯誤更正碼功能偵測該備份區所儲存的資料是否出現錯誤;步驟722:控制器102從該備份區輸出該備份區所儲存的資料;步驟724:結束。
第7圖的第六實施例和第5圖的第四實施例的差別在於如果該寫入資料是重要的資料時,控制器102先在步驟710中從該一般儲存區讀出該一般儲存區所儲存的資料;在步驟712中,控制器102利用該錯誤更正碼功能偵測該一般儲存區所儲存的資料是否出現錯誤;在步驟715中,因為該一般儲存區所儲存的資料沒有任何錯誤,所以控制器102可直接輸出該一般儲存區所儲存的資料;在步驟716中,如果該一般儲存區所儲存的資料出現一個錯誤,控制器102利用該錯誤更正碼功能更正該錯誤並輸出該更正後的資料;在步驟718中,如果資料出現至少二個錯誤時,控制器102不更正該至少二個錯誤,從該備份區讀出該備份區所儲存的資料;在步驟720中,控制器102利用該錯誤更正碼功能偵測該備份區所儲存的資料是否出現錯誤;在步驟722中,控制器102從該備份區輸出該備
份區所儲存的資料。
另外,記憶體系統300也可根據第4-7圖有關記憶體100的寫入資料的方法和讀出資料的方法操作,所以在此不再贅述。
綜上所述,本發明提供一種具有錯誤更正功能的記憶體及相關的操作方法和記憶體系統。因為該記憶體和該操作方法是利用該控制器選擇性地寫入該寫入資料至該一般儲存區和該備份區,所以如果該一般儲存區所儲存的資料出現至少二個錯誤時,該控制器可讀取該備份區所儲存的資料。另外,因為該記憶體系統是利用該記憶體系統的該控制器選擇性地寫入該寫入資料至該記憶體系統的一般儲存記憶體和備份記憶體,所以如果該一般儲存記憶體所儲存的資料出現至少二個錯誤時,該控制器可讀取該備份記憶體所儲存的資料。因此,相較於現有技術,本發明可對該一般儲存區所儲存的資料和該一般儲存記憶體所儲存的資料上的多個錯誤進行更正。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100:記憶體
102:控制器
104:記憶單元陣列
B1-B4:記憶區塊
S1-S16:記憶區段
Claims (10)
- 一種具有錯誤更正(error correcting)功能的記憶體,包含:一控制器;及一記憶單元陣列,其中該控制器選擇性地寫入一寫入資料至該記憶單元陣列中的一一般儲存區(normal storage area)和一備份區(backup area),以及當該控制器從該一般儲存區讀出對應該寫入資料的一第一資料時,該控制器偵測該第一資料以選擇性地讀取該備份區;其中如果該第一資料出現至少二個錯誤,則該控制器讀取該備份區以輸出該備份區中對應該寫入資料的一第二資料。
- 如請求項1所述的記憶體,其中該一般儲存區的記憶容量和該備份區的記憶容量等於該記憶體的記憶容量。
- 如請求項1所述的記憶體,其中該一般儲存區的記憶容量等於該記憶體的記憶容量,且該備份區的記憶容量是該記憶體的記憶容量外的記憶容量。
- 如請求項1所述的記憶體,其中該控制器同時寫入該寫入資料至該一般儲存區和該備份區。
- 如請求項1所述的記憶體,其中該控制器從該一般儲存區讀出該第一資料,利用一錯誤更正碼功能偵測該第一資料是否出現錯誤,如果該第一資料出現一錯誤時,該控制器直接利用該錯誤更正碼功能更正該錯誤並輸出一更正後的資料,如果該第一資料出現該至少二個錯誤,則該控制器從 該備份區讀出該第二資料並輸出該第二資料。
- 如請求項5所述的記憶體,其中當該第一資料出現該至少二個錯誤時,該控制器更利用該錯誤更正碼功能偵測該第二資料是否出現錯誤。
- 一種具有錯誤更正功能的記憶體系統,包含:一控制器;一一般儲存記憶體;及一備份記憶體,其中該控制器選擇性地寫入一寫入資料至該一般儲存記憶體和該備份記憶體,以及當該控制器從該一般儲存記憶體讀出對應該寫入資料的一第一資料時,該控制器偵測該第一資料以選擇性地讀取該備份記憶體;其中如果該第一資料出現至少二個錯誤,則該控制器讀取該備份記憶體以輸出儲存於該備份記憶體中對應該寫入資料的一第二資料。
- 一種具有錯誤更正功能的記憶體,包含:一記憶單元陣列,包括一一般儲存區和一備份區;及一控制器,耦接該記憶單元陣列,選擇性地寫入一寫入資料至該一般儲存區和該備份區,其中該控制器從該一般儲存區讀出對應該寫入資料的一第一資料並偵測該第一資料,當該第一資料出現至少一錯誤時,該控制器選擇性地利用一錯誤更正碼功能更正該第一資料,或是讀取該備份區以輸出儲存於該備份區中對應該寫入資料的一第二資料。
- 如請求項8所述的記憶體,其中該控制器依據該第一資料出現的錯誤 數量決定更正該第一資料或是讀取該備份區以輸出該第二資料。
- 如請求項8所述的記憶體,其中該控制器利用該錯誤更正碼功能偵測該第一資料是否出現錯誤,當該第一資料出現一個錯誤時,該控制器利用該錯誤更正碼功能更正該錯誤並輸出更正後的該第一資料,以及當該第一資料出現至少兩個錯誤時,該控制器不更正該至少兩個錯誤,以及讀取該備份區以輸出該第二資料。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762607291P | 2017-12-18 | 2017-12-18 | |
US62/607,291 | 2017-12-18 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201928985A TW201928985A (zh) | 2019-07-16 |
TWI692767B true TWI692767B (zh) | 2020-05-01 |
Family
ID=66816034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107145693A TWI692767B (zh) | 2017-12-18 | 2018-12-18 | 具有錯誤更正功能的記憶體及相關記憶體系統 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11494260B2 (zh) |
CN (1) | CN110058955B (zh) |
TW (1) | TWI692767B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12019884B2 (en) * | 2022-02-15 | 2024-06-25 | Micron Technology, Inc. | Identification and storage of boot information at a memory system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080263429A1 (en) * | 2005-12-09 | 2008-10-23 | Jong-Sik Jeong | Method and Device for Correcting Code Data Error |
TW200907995A (en) * | 2007-08-06 | 2009-02-16 | Ind Tech Res Inst | Method and system of defect management for storage medium |
TW200923957A (en) * | 2007-11-29 | 2009-06-01 | Ind Tech Res Inst | Recoding medium structure capable of displaying defect rate |
TW201035983A (en) * | 2009-03-26 | 2010-10-01 | Mediatek Inc | Decoding method, encoding method and boot control system |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3146075B2 (ja) * | 1992-10-14 | 2001-03-12 | 三菱電機株式会社 | 多重化メモリ装置 |
JP2005107839A (ja) * | 2003-09-30 | 2005-04-21 | Toshiba Corp | アレイコントローラ及びディスクアレイ再構築方法 |
CN102043725B (zh) * | 2009-10-20 | 2013-01-09 | 群联电子股份有限公司 | 用于闪存的数据写入方法及其控制器与储存系统 |
CN103631721A (zh) * | 2012-08-23 | 2014-03-12 | 华为技术有限公司 | 一种隔离内存中坏块的方法及系统 |
CN103092728A (zh) * | 2013-01-22 | 2013-05-08 | 清华大学 | 一种非易失性内存的磨损错误恢复方法和装置 |
KR20170075065A (ko) * | 2015-12-22 | 2017-07-03 | 에스케이하이닉스 주식회사 | 메모리 시스템 동작 방법 |
-
2018
- 2018-12-18 TW TW107145693A patent/TWI692767B/zh active
- 2018-12-18 US US16/223,136 patent/US11494260B2/en active Active
- 2018-12-18 CN CN201811550056.9A patent/CN110058955B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080263429A1 (en) * | 2005-12-09 | 2008-10-23 | Jong-Sik Jeong | Method and Device for Correcting Code Data Error |
TW200907995A (en) * | 2007-08-06 | 2009-02-16 | Ind Tech Res Inst | Method and system of defect management for storage medium |
TW200923957A (en) * | 2007-11-29 | 2009-06-01 | Ind Tech Res Inst | Recoding medium structure capable of displaying defect rate |
TW201035983A (en) * | 2009-03-26 | 2010-10-01 | Mediatek Inc | Decoding method, encoding method and boot control system |
Also Published As
Publication number | Publication date |
---|---|
US20190188076A1 (en) | 2019-06-20 |
CN110058955B (zh) | 2024-04-09 |
TW201928985A (zh) | 2019-07-16 |
US11494260B2 (en) | 2022-11-08 |
CN110058955A (zh) | 2019-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11334413B2 (en) | Estimating an error rate associated with memory | |
KR102648774B1 (ko) | 랜더마이즈 동작을 수행하는 반도체 메모리 장치 | |
CN107391026B (zh) | 闪存装置及闪存存储管理方法 | |
EP2106587B1 (en) | Programming management data for nand memories | |
KR101616100B1 (ko) | 메모리 시스템 및 그것의 동작 방법 | |
KR101860809B1 (ko) | 메모리 시스템 및 메모리 에러 정정 방법 | |
US9436398B2 (en) | Memory interface supporting both ECC and per-byte data masking | |
JP2013089082A (ja) | メモリコントローラ、半導体記憶システムおよびメモリ制御方法 | |
JP2015018451A (ja) | メモリコントローラ、記憶装置およびメモリ制御方法 | |
TWI806649B (zh) | 快閃記憶體裝置及快閃記憶體儲存管理方法 | |
US11301319B2 (en) | Memory device and memory system having multiple error correction functions, and operating method thereof | |
US20140053041A1 (en) | Nonvolatile semiconductor memory system error correction capability of which is improved | |
US9754682B2 (en) | Implementing enhanced performance with read before write to phase change memory | |
US11216331B2 (en) | Memory system and operating method thereof | |
KR20150090414A (ko) | 에러 정정 동작을 수행하는 반도체 장치 | |
CN111048140A (zh) | 错误校正电路、存储器控制器及存储器系统 | |
KR20210099895A (ko) | 메모리 시스템 및 그것의 동작방법 | |
JP2008262325A (ja) | メモリ制御装置、メモリ制御方法、情報処理システム、そのプログラム及び記憶媒体 | |
CN103218271A (zh) | 一种数据纠错方法及装置 | |
JP2010079856A (ja) | 記憶装置およびメモリ制御方法 | |
KR20160110774A (ko) | 메모리 장치 및 이를 포함하는 시스템 | |
TWI692767B (zh) | 具有錯誤更正功能的記憶體及相關記憶體系統 | |
JP2014534539A (ja) | 妥当性マスクを記憶する装置および方法ならびに操作装置 | |
US9104596B2 (en) | Memory system | |
US20210019082A1 (en) | Nonvolatile memory bad row management |