TW201250462A - Method of data storage in non-volatile memory - Google Patents
Method of data storage in non-volatile memory Download PDFInfo
- Publication number
- TW201250462A TW201250462A TW101106339A TW101106339A TW201250462A TW 201250462 A TW201250462 A TW 201250462A TW 101106339 A TW101106339 A TW 101106339A TW 101106339 A TW101106339 A TW 101106339A TW 201250462 A TW201250462 A TW 201250462A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- code
- word
- codeword
- words
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; 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/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- 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/10—Programming or data input circuits
-
- 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/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
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Description
201250462 六、發明說明: 【發明所屬之技術領域】 存 本發明大體而言係關於一非揮發性記憶體中資料之儲 【先前技術】 當將資料儲存於快閃記憶體系統中時,f料可經儲存以 使得資料看起來為隨機的且具有均—散佈' 經儲存資料之 隨機化可有利地避免鄰近字線上之資料之間或鄰近 上之資料之間的相關性。舉例而t ’待儲存於非揮發性吃 憶體中之資料可經擾碼以便避免產生鄰近字線上之資料^ 間的相關性,且以便避免非揮發性記憶體之鄰近位元線上 之資枓之間的相關性。在儲存之前已經擾碼之資料可在擷 取之後隨即經解擾碼。 # 資:之擾:可藉由以下操作來執行:產生可用作偽隨機 ‘、子之串位7C (諸如,—串隨機位元);及接 :料與偽隨㈣字之一互斥〇r(x〇r)運算以產生經擾:: -枓。舉例而§ ’可藉由將-種子(seed)應用至偽隨機 元產生器而產生偽隨機擾褐字。該種子亦可用以重新:: 偽隨機擾碼字以解擾碼該經 字或具有該資料之種子的二=非=偽隨機擾碼 儲存空間之使用的低效。^致非揮發性記憶體内之 通常,快閃記憶體系統之程式設計單 有16千位元組_之大小。儲存於快閃記具 料的擾碼可在頁層級上進〜 己隐體系統中之資 層級上進仃以便避免資料 162488.doc 201250462 而’在讀取操作期間,可能需要以小於—頁 眘Μ版 只之増量來擷取 育枓。舉例而言,主機可請求擷取小量之資料(諸如 Β之單一區段),且儘管在快閃記憶體系統内 夕敕玄 磧取16 ΚΒ 之整頁’但傳送及解碼該整頁可為低效的。 ¥ ^ ^ bl 頁睛為,將該 貝之資料編碼於若干較小碼字内以使得在快 ^ ^ ^ u 閃S己憶體系統
讀取期間有可能僅傳送及解碼包括所請求資 干可為較佳的’該碼字具有諸如〇 5 KB、i KB 取2 KB之大 小。 此導致種子儲存及保護方面之兩個競爭因素❶一方 因為在頁層級上可能需要擾碼,所以將需要每頁具有2儲 存(藉由錯誤校正編碼(ECC)保護而可靠地儲存)之單一擾 碼種子以便避免浪費健存區域。另一方面,為了允許小量 資料之有效讀#’將需要藉㈣一碼字梅取種子之無錯誤 版本以便在解碼之後解擾碼該資料。 、曰 【發明内容】 一種儲存資料之方法包括組合後設資料位元之一集人 (諸如一擾碼種子)與多個資料字中之每__者以產生多^ 經擴展資料字及編碼等經擴展資料$以產生多個妈字。 在編碼之後’穿孔該等碼字中之一或多者且自待儲存之每 一經穿孔媽字移除後設資料位元之該集合。可藉由以下操 作來擷取資料:自儲存器件讀取該等後設資料位元及一或 多個經穿孔碼字’·組合該等後設資料位元與每一經穿孔碼 子以產生經擴展之碼字表示;及解碼每一經擴展之碼字表 示。該方法之優點包括單一碼字解碼操作之使用,與將後 162488.doc 201250462 設資料位元儲存於-單獨碼字中相比較而兮, 解碼操作節省了時間。—額外優點包括儲存於rt-碼字 設計中之冗餘資料的經減小量,此避免了需要針=緊密 子之單獨、專狀編碼H及解碼L 要針對擾碼種 【實施方式】 儲存擾碼種子及資料之一種方法為儲存 單-種子及使用其自已之Ecc 、多個碼子之 七安 單獨地保護此種子。此解決 方㈣點在於:1)種子需要單獨之咖核心,從而導致 較高之控制器複雜性;2)掏取資料 作--者針對資料且一者^資;需要兩個單獨之解碼操 時間;子二非常ΓΓ,'而導致較長… 細,日㈤列種子可僅包括四個位元 1種早並非有效的,此係因為需要更多冗餘以保 護種子,從而導致儲存區域之浪費。 文中所建4之改良方法使得能夠每頁储存單一擾碼 種子以避免浪費儲存區域,且使得能夠藉由每一碼字進行 種子之無錯誤版本之掏取以便在解碼之後解擾碼資料。該 方法亦提供了在複雜性、解碼時間及儲存空間方面之更有 解决方案。可使用一共同種子用於擾碼碼字中之每一 者—(或者’可藉由一自該共同種子產生之不同種子來擾 碼每石馬㉟共同種子彳串接至資料字中之每一者, 且可執行編碼以使得經計算之同位位元保護共同種子及資 料兩者。在程式設計之前,可藉由穿孔(puncture)碼字中 之每者而移除共同種子,且經穿孔碼字可連同共同種子 之單例項一起儲存於快閃記憶體系統中◊在經儲存碼字 I62488.doc 201250462 之讀取期間,共同種子可串接至 以恢復共Π锸;》达 °求碼字。可執行解碼 以疢復共同種子及資料之無錯誤 to m ^ 本。可使用共同種子以 解擾碼資料’從而擷取原始使于乂 句括· η留 育抖。該方法之優點可 包括.1)皁一 ECC核心之使用, a 從而降低了複雜性;2)用 以擷取資料之皁一解碼操作 吐. 而導致了減小之解碼潛 時,及3)保護資料及種子所需 錄工在“ 較少冗餘,因為資料及 種子係均使用單一長碼字進扞 ^子進仃保護’從而導致較高儲存效 〇 圖1描繪系統100,其包括—丨、,从 、栝以刼作方式可耦接至主機器 1 牛130之資料儲存器件1G2。資㈣存器請包括-記憶 104及一控制器106。記憶體1〇4可包括可形成複數個字 線(諸如’字、線108)之複數個資料健存元件(未圖示)。控制 器⑽可包括-資料字擴展器120、一錯誤校正碼(ECC)編 碼器122、一碼字穿孔器124及(視情況)-擾碼器126。資料 儲存器件如經組態以接受複數個f料字,且組合後設資 料位元144之-集合與複數個資料字中之每—者以產生複 數個經擴展資料字。在—些實施例中,後設資料位元可包 括資訊位元,心口 ’擾碼種子。f料儲存器件1〇2經組態 =編碼該複數個經擴展資料字中之每—者以產生複數個碼 字,該複數個碼字中之每一者包括後設資料位元】44 '一 資料字及同位位元。資料儲存器件1〇2經組態以藉由自每 一碼字移除後設資料位元144而穿孔複數個碼字中之一或 多個碼字以產生諸如經穿孔螞字丨7〇及i 72之複數個經穿孔 碼字,且儲存包括經穿孔碼字17〇及172之複數個經穿孔碼 162488.doc 201250462 字。資料儲存器件102之一優點在於,可以單一例項健存 與多個資料字相關聯之後設資料位元144,從而導致記憶 體空間之節省。 主機器件130可為經組態以操作方式耦接至資料儲存器 件1 02之器件,諸如,行動電話、音樂或視訊播放器、個 人數位助理(pDA)、遊戲器件、電子書閱讀器、相機、電 腦(諸如,膝上型或筆記型電腦)、任何其他電子器件,或 以上各者之任何組合。主機器件13〇經組態以將資料發送 至資料儲存器件1 02。 資料儲存器件102可為記憶卡,諸如,安全數位SD@ 卡、microSD®卡、miniSD.TM卡(Delaware,Wilmington , SD-3C LLC 之商標)、MuhiMediaCard.TM(MMC.TM)卡 (Virginia,Arlington,JEDEC固態技術協會之商標),或
CompactFlash®(CF)卡(California,Milpitas,SanDisk公司 之商標)。作為另一實例,資料儲存器件1〇2可為主機器件 1 30中之内嵌式s己憶體,諸如(作為說明性實例),eMMC⑧ (Virginia,Arlington,JEDEC固態技術協會之商標)及 eSD。 記憶體1 04可為非揮發性記憶體或經組態以儲存資料之 其他儲存器件。記憶體1〇4經組態以接收經穿孔碼字i 7〇及 172及後設資料位元.144,且儲存後設資料位元144及經穿 孔碼字170及172。 控制器106經組態以控制至主機器件13〇之介面,且執行 圯憶體104之管理。控制器1〇6包括一資料字擴展器12〇、 16248S.doc 201250462 -錯誤校正碼(ECC)編碼器122及一碼字穿孔器i24。控制 器106經組態以接收資料字(諸如,藉由資料儲存器件102 自主機器件130接收之資料字^且組合該等㈣“Μ 資料位元之-集合以形成經擴展資料字。控制器ι〇6亦經 組態以藉由使用ECC編碼器122來編碼經擴展資料字。在 -說明性實例中,可在編碼資料字之前藉由擾碼器126來 擾碼自主機130接收之資料字(例如,資料字14〇及142)。擾 碼器…可基於為後設資料位元144之集合之函數的種子而 擾碼每一資料字。或者,擾碼器126可基於可包括一共同 種子之後設資料位元144之集合來擾碼每一資料字,或擾 碼器126可基於可被用作共同種子之後設資料位元144之集 合來擾碼每一資料字。擾碼器126可包括用以產生一偽隨 機擾碼字以擾碼資料字14〇及142之線性回饋移位暫存器 (LFSR)。 。 資料字擴展器120經組態以接收資料字且組合後設資料 位το 144之集合與每一接收之資料字以形成經擴展資料 字。舉例而言,資料字擴展器120可接收第一資料字14〇且 組合後設資料位元144之集合與第一資料字14〇以產生第一 經擴展資料字150 ^資料字擴展器120可接收第二資料字 142且組合後設資料位元144之集合與第二資料字Μ]以產 生第二經擴展資料字152。資料字擴展器12〇經組態以將經 擴展資料字輸出至ECC編碼器122。在一特定實例中,控 制器106操作以在將經擴展資料字中的一或多者輸入至 ECC編碼器122之前將一特定變換應用至經擴展資料字中 162488.doc 201250462 的該一或多者。與仓 】心崔入 舉例而吕,該特定變換可為後設資料位元 站 ^ 。在一個實例巾,特定變換為-擾碼變 換。可藉由擾碼5§1<:)ίς>δ ra # ,^ ° 26應用特定變換。第二實例為「整 形」支換,其中將具有5〇%之零的資料序列變換為具有小 於5〇%之零(例如,僅3G%之零)的「經整形」資料序列。 後設資料可充當用於整形變換之映射表。應用至資料之整 形良換產生了 -具有較小百分比之零的序列,其可導致快 閃記憶體系統之較少磨損且可增強快閃記憶體系統之耐久 改從而允許更多寫入/抹除循環。在第三實例中,後設 資料可由快閃管理演算法用以使特定屬性與字線之資料相 關聯。在第三實射,資料字擴展器(諸如,資料字擴展 器120)不變換資料,而替代地將後設資料串接至該資料。 ECC編碼器122經組態以自資料字擴展器12〇接收經擴展 資料字且編碼每一經擴展資料字。舉例而言,ECC編碼器 122可使用博斯一查德胡里一霍昆格姆(B〇se Chaudhuri-Hocquenghem’ BCH)編碼、雷德索羅蒙(Reed_s〇1〇m〇n)編 碼、低也、度同位檢查(LDPC)編碼或使用另一類型之編碼來 編碼經擴展資料字。ECC編碼器122經組態以輸出碼字, 每一碼子包括後设資料位元144、一資料字,及對應於經 擴展資料字之同位位元。舉例而言,ECC編碼器122經組 態以輸出第一碼字160 ’該第一碼字160包括後設資料位元 144、第一資料字140及與第一經擴展資料字15〇相關聯之 第一同位位元164。在另一實例中,ECC編碼器122經組態 以輸出第二碼字162 ’該第二碼字162包括後設資料位元 I62488.doc 201250462 144、第二資料字142及與第二經擴展資料字i52相關聯之 第二同位位元166。 在另-說明性實例中,可藉由第二ECC編碼器(未圖示) 根據-可不同於ECC編碼器122之編碼方案的編碼方案來 編碼後設資料位元144,以產生經編碼(例如,經變換)之後 »又資料位元。在藉由第二ECC編碼器編碼後設資料位元以 形成經變換(亦即,經編碼)之後設資料位元之後,可將經 編碼之後設資料位元儲存於記憶體1〇4處。第二ecc編碼 器可為-專用ECC,其將額外保護添加至後設資料位元以 使得能夠獨立於經穿孔碍字17G、172來儲存後設資料位 元。 碼字穿孔器124操作以接收已自Ecc編碼器122輸出 字’且穿孔經接收碼字中之一或多者以自該碼字移除選定 資料位元舉例而§,碼字穿孔器^24可操作以穿孔每― 經接收碼字以移除冗餘後設資料位元。在-實例中,經接 黾子中之每者包括後設資料位元144,且碼字穿孔器 1 24自每一經接收碼字移除後設資料位元1。碼字穿礼器 124可經組態以輸出包括資料及同位位元但不包括後設資 料位7L之經穿孔碼字。舉例而言,碼字穿孔器⑶可操作 乂穿孔第-碼字16G以便自第—碼字i6Q移除後設資料位元 144從而輸出包括第一資料字14〇及第一同位位元⑹之 第經穿孔碼字1 70。作為另一實例,碼字穿孔器操作 以穿孔第二碼字162以便移除後設資料位元144,從而輸出 第資料子142及第二同位位元166之第二經穿孔碼字 162488.doc 201250462 172。在一特定實施例中’碼字穿孔器ι24亦操作以輸出與 經穿孔碼字170及172分離之後設資料位元144。 在一特定說明性實例中’可穿孔除一個碼字以外之所有 碼字。在此情形下,後設資料位元丨44可包括於待儲存於 記憶體104中之未經穿孔碼字中。結果,後設資料位元144 可經單次儲存,而非多次儲存於記憶體丨〇4中。舉例而 言’字線108包括後設資料位元144及多個經穿孔碼字之單 一複本。 在操作期間,資料字擴展器12 0可接收資料字(例如,第 一資料字140及第二資料字142) ’且可接收後設資料位元 144之集合,諸如擾碼種子。在一實例中,在藉由資料字 擴展器120進行之接收之前,已藉由資料擾碼器ι26使用基 於後设資料位元144之擾碼種子來擾碼資料字及142。 資料字擴展器120可輸出經擴展之資料字,諸如,第一經 擴展之資料字150及第二經擴展之資料字152。第一經擴展 之資料字150可包括第一資料字14〇及後設資料位元144。 第二經擴展之資料字1 52可包括第二資料字142及後設資料 位元1 44。 可將第一經擴展之資料字150及第二經擴展之資料字152 輸入至ECC編碼器122中。ECC編碼器122可輸出碼字,諸 如,第一碼字160及第二碼字162。第一碼字160可包括後 設資料位元144、第一資料字14〇及第一同位位元164。第 一碼子162可包括後設資料位元144、第二資料字142及第 二同位位元166。在一特定說明性實例中,ECC編碼器122 I62488.doc 201250462 所使用之代碼為一系統碼。 可將由ECC編碼器122輸出之第一碼字16〇及第二碼字 162輸入至碼字穿孔器124。在執行穿孔操作之後,碼字穿 孔器124之輸出可包括第一經穿孔碼字1 7〇、第二經穿孔碼 字172以及已自第一碼字16〇及自第二碼字162移除之後設 資料位元144 ^第一經穿孔碼字17〇可包括第一資料字14〇 及第一同位位元164 ’但不包括後設資料位元144。第二經 穿礼碼字172可包括第二資料字142及第二同位位元166之 資料,但不包括後設資料位元144。可將第一經穿孔碼字 170及第二經穿孔碼字! 72儲存於記憶體丨〇4中(例如,在字 線108中)。 控制器106之經說明實例串接後設資料位元之一集合與 每一資料字。舉例而言’後設資料位元144與第一資料字 140組合以產生第一經擴展之資料字15〇,且後設資料位元 144與第二資料字! 42組合以產生第二經擴展之資料字 152。資料字可在藉由ECC編碼器122編碼之前經擾碼。在 一特定說明中,資料字140及142中之每一者在經儲存於記 憶體104處之前藉由擾碼器126進行擾碼。舉例而言,可將 資料字140、142中之每一者輸入至擾碼器126,且可將偽 隨機擾碼字應用至資料字140、142中之每一者。在_實例 中,可根據由不同種子產生之不同擾碼字來擾碼每一資料 字。該等種子可藉由諸如後設資料位元144之共同種子之 預定義變換而產生。自該共同種子產生針對特定資料字之 種子可視資料字待儲存於記憶體104中之儲存位置而定。 162488.doc 201250462 在一特定實例中,可將—變換應用於共同種子以產生針對 特定資料字之種子。該變換可包括位元移位或旋轉諸 如,針對第-位置之零位元移位、針對第二位置之一位元 移位’或另一變換。 接著將經擾碼輸出發送至資料字擴展器12〇。對於每— 資料字(諸如’第-資料字14〇及第二資料字142)而言,控 制器106可產生-經擴展f料字,諸如,經擴展資料字⑼ 及152。可藉由錯誤校正碼(ECC)編碼器122編碼每一經擴 展資料字以產生多個碼字,諸如,碼字⑽及…。每一碼 字可包括後設資料位元144、資料字(例如,第一資料字 140或第二資料字142),及同位位元(例如,第一同位位元 164或第二同位位元166)。 圖2描繪系統200,其用以擷取經儲存資料且包括一耦接 至主機器件230之資料儲存器件2〇2β資料儲存器件2〇2包 括一記憶體204及一控制器2〇6。資料儲存器件2〇2經組態 以將碼字之複數個㉟字表示及I言史資料&元之一集合之一 後設資料表示儲存於記憶體綱處,且自記憶體咖讀取經 儲卉之碼字表示及後設資料表示。資料儲存器件202亦經 組態以:組合後設資料表示與複數個碼字表示中之每一者 以產生複數個經擴展之碼字表示;解碼該等經擴展之碼字 表不中之每一者以產生複數個經解碼之經擴展資料字;及 剖析經解碼之經擴展資料字以產生複數個經解碼資料字。 資料儲存器件202可對應於圖i之資料儲存器件1〇2。 主機器件230可為經組態以操作方式耦接至資料儲存器 162488.doc -13- 201250462 件202之器件’諸如,行動電話、音樂或視訊播放器、個 ^數位助理(PDA)、遊戲器件、電子書閱讀器、相機、電 腦(諸如,膝上型或筆記型電腦)、任何其他電子器件,或 '上各者之任何組合。主機器件23 〇經組態以將資料發送 至資料健存器件202 »
資料儲存器件202包括一控制器206,該控制器2〇6經組 態以控制至主機器件230之介面且執行記憶體2〇4之管理。 舉例而言,資料儲存器件202可為記憶卡,諸如,安全數 位 SD® 卡、microSD(g)卡、miniSD TM 卡(DA醫e, Wilmington,SD_3C LLC之商標)、MultiMediaCardTM (MMC.TM)卡(Virginia,Arlington,JEDEC 固態技術協會 之商標),或CompactFlash®(CF)卡(California, Milpitas,
SanDisk公司之商標)。作為另一實例,資料儲存器件2〇2 "T為主機器件230中之内嵌_式記憶體’諸如(作為說明性實 例)’ eMMC®(Virginia,Arlington,JEDEC 固態技術協會 之商彳ή〇及e S D * s己憶體2 0 4可為非揮發性記憶體或經組態 以儲存資料之其他儲存器件。記憶體204可經組態以將後 s又資料位元及一或多個碼字表不儲存於(諸如)代表性字線 208處。舉例而言’可將第一碼字表示270儲存於字線fog 之第一位置處,且可將第一碼子表不272儲存於字線208之 第二位置處。記憶體204可包括複數個字線(其包括字線 208)。 資料儲存器件202經組態以自記憶體204讀取經储存之碼 字表示(諸如,碼字表示270及272),且自記憶體2〇4讀取後 162488.doc 201250462 設資料位元之表示(諸如,後設資料表示246)。在一特定實 例中,資料儲存器件202經組態以解碼後設資料位元表示 246以便產生經解碼(亦即,經變換)之後設資料位元之一集 合(未圖示)。舉例而言,資料儲存器件202可藉由(例如)僅 解碼後設資料表示246之專用ECC解碼器(未圖示)來解碼後 設資料表示246。作為一特定說明性實例,後設資料位元 之變換為一識別碼變換,且在此情形下經變換之後設資料 位元之集合與後設資料位元之集合相同。 控制器206可包括一組合器224、一錯誤校正碼(ECC)解 碼器222,及一資料字剖析器220。控制器206為經組態以 接收碼字表示(諸如,碼字表示270及272)且接收後設資料 表示(諸如,後設資料表示246)的裝置。 組合器224經組態以組合碼字表示與後設資料位元以產 生經擴展之碼字表示。舉例而言,組合器224可組合碼字 表示270及272與後設資料表示246以產生經擴展之碼字表 示 260及262。 ECC解碼器222經組態以使用錯誤校正碼(ECC)來解碼經 擴展之碼字表示以產生經解碼之經擴展資料字。舉例而 言,ECC解碼器222可解碼經擴展之碼字表示260及262以 產生經解碼之經擴展資料字250及252。 資料字剖析器220經組態以剖析經解碼之經擴展資料字 以便產生經解碼資料字。舉例而言,資料字剖析器220可 藉由移除後設資料位元248之經解碼集合來剖析經解碼之 經擴展資料字250及252以產生經解碼資料字240及242。 162488.doc 15 201250462 控制器206可包括一解擾碼器226,該解擾碼器226經組 態以使用後設資料位元248之集合來解擾碼資料。舉例而 言,後設資料位元248之集合可為一可用以在將資料儲存 於記憶體204處之前擾碼資料的種子。在一特定實例中, 對經擴展之字表示執行ECC解碼及解擾碼以產生經解碼之 經擴展資料字,諸如,經解碼之經擴展資料字250及252。 在一特定實施例中,解擾碼作為解碼程序之一部分而執 行0 在操作期間,可藉由控制器206自記憶體204擷取第一碼 字表示270及第二碼字表示272。第一碼字表示270可包括 一代表性位元錯誤290。諸如位元錯誤290之一或多個位元 錯誤可包括於碼字表示之一部分中及/或碼字表示之同位 位元内及/或後設資料表示246内。如圖2中所展示,碼字 表示270包括一資料位元錯誤及一同位位元錯誤,且碼字 表示272包括一資料位元錯誤。 另外,可自記憶體204之字線208擷取後設資料位元之表 示。舉例而言,可自記憶體204之字線208擷取資料字表示 270及272及後設資料表示246。 控制器206可將資料字表示270、272及後設資料表示246 輸入至組合器224。組合器224可輸出經擴展之資料字表示 260及262。第一經擴展之碼字表示260可包括後設資料表 示246及第一碼字表示270。第二經擴展之碼字表示262可 包括後設資料表示246及第二碼字表示272。 可將經擴展之碼字表示260及262輸入至ECC解碼器 162488.doc .16- 201250462 222。ECC解碼器222可輸出經解碼之經擴展資料字25〇及 252。第一經解碼之經擴展資料字25〇可包括後設資料位元 248及第一資料240。第二經解碼之經擴展資料字252可包 括後設資料位元248及第二資料242。可將經解碼之經擴展 資料字250及252輸入至資料字剖析器22〇。資料字剖析器 220可輸出經解瑪資料字240及242。諸如關於圖5至圖8所 描述,可藉由解擾碼器226基於後設資料位元248來解擾碼 該等經解碼資料字240及242 ^在一特定實施例中,當解碼 其他碼字時,可使用在碼字中之-者之解碼期間經:正以 產生後設資料位元(諸如後設資料位元248)的特定後設資料 表示。舉例而言,當在第一經擴展碼字表示26〇之解碼期 間經由ECC解碼器222進行校正時,後設資料表示246可產 生後設資料位元248。可替代後設資料表示246而使用後設 資料位元248以形成第二經擴展之碼字表示262。因此,第 二經擴展之碼字表示262可具有較少錯誤,從而增大了成 功之機率且減少了解碼時間。 資料儲存器件202之一優點在於’以單一例項儲存於資 料儲存器件202之記憶體中且與多個資料字相關聯的後設 資料位元可經擷取且與多個資料字中之每一者組合,從而 導致記憶體空間之節省。另外,與編碼後設資料^元多次 或使用單獨ECC編碼後設資料位元的器件相比較而言資 料儲存器件202可減小資料讀取潛時。另外,因為資料及 種子兩者係制單-長料進行保護m料儲存器件 202可需要較少冗餘來保護資料及種子,從而導致較高儲 162488.doc 201250462 存效.率。 圖3描繪碼字表示之兩個集合。集合3〇2包括一第一碼字 表示304、一第二碼字表示306及一第三碼字表示3〇8。該 第一碼字表示304包括後設資料位元310、第一資料312及 第一同位位元314。該第二碼字表示306包括第二資料316 及第二同位位元3 1 8。第二碼字表示306不包括後設資料位 元310。第三碼字表示308包括第三資料320及第三同位位 元322。第二碼字表示308不包括後設資料位元31〇。 儲存於第一碼字表示304中之後設資料位元31〇可與第三 碼字表示308組合。所得經擴展之碼字表示包括後設資料 位元3 10、第二資料320及第三同位位元322。將後設資料 位兀3 10僅储存於碼字表示304中之一優點為記憶體空間之 潛在節省。舉例而言,當碼字表示3〇4、3〇6及3〇8中之每 一者與後設資料位元3 1 0相關聯時,僅藉由碼字表示中之 一者來儲存後設資料位元310導致了記憶體空間之節省。 圖3亦描繪碼字集合332,其包括一第一碼字表示334、 一第二碼字表示336及一第三碼字表示338。該第一碼字表 示334包括後設資料位元34〇。舉例而言,後設資料位元 340可為諸如後設資料位元3 1〇之後設資料位元之總集合的 第一部分。该第一碼字表示3 3 6可包括可為後設資料位元 310之第二部分的後設資料位元342之第二集合。該第三碼 字表示338可包括可為後設資料位元31〇之第三部分的後設 資料位元344之第三集合。第一碼字表示334可包括後設資 料位元3 10之第一部分34〇、第一資料346及第一同位位元 162488.doc • 18 201250462 348。第二碼字表示336可包括後設資料位元310之第二部 分342、第二資料316及第二同位位元318。第三碼字表示 338可包括後設資料位元310之第三部分344、第三資料320 及第三同位位元322。在一實例中,部分340、342及344可 經組合以產生後設資料位元3 10,且後設資料位元3 1 〇可與 該等表示中之任何一或多者串接,諸如,與第三資料320 及第三同位位元322串接。 在複數個碼字表示(諸如,碼字表示334、336及338)當 中散佈後設資料位元3 10之儲存的一優點為記憶體空間之 潛在節省。舉例而言’當碼字表示3〇4、306及308中之每 一者與相同後設資料位元31〇相關聯時且當在儲存中散佈 後設資料位元3 1 0之集合的所有位元以使得後設資料位元 31〇之集合僅被儲存一次時,可導致記憶體中之儲存空間 之節省。另外,與碼字表示304、3〇6及3〇8相比較而言, 碼字表示334、336及338中之每一者可為相等大小且可含 有相等量之資料。因此,可簡化ECC處理。 付疋貫施例的流程 圖4描繪對應於儲存資料之方法 圖。參看圖4 ’在402處’可自主機擷取資料。舉例而言, 圖1之資料儲存器件102可自主機器件13〇擷取資料。。 進行至404,可判定記憶體儲存器件之字線内之資料的 内部位置。舉例而言,參看^,可在資料儲存器件1〇2之 圯憶體104内判定字線1〇8之複數個内部位置中的一者。 應Γ=’:根據字線内之資料的内部位置將-變換 應用至共同種子。舉例而言’參看圖i,可將—變換應用 ]624S8.doc 201250462 至後設資料位元144之集合以形成後設資料位元之經變換 集s(未圖示)。該變換可視待儲存於字線(諸如,記憶體 104之字線108)中之資料之内部位置而定。 繼續至408,可產生一擾碼字。舉例而言,可使用經變 換種子(諸如,後設資料位元之經變換集合)而產生擾碼 字i基於位置之經變換種子可產生針對待儲存至記憶體之 碼字(例如,ECC頁)中之每—者的相異擾碼字。使用相異 擾碼字減小了經擾碼資料之間的可能資料相關性。 移動至410 ,可使用擾碼字來擾碼資料。舉例而言,在 圖1中,擾碼器126可使用擾碼字擾碼資料。擾碼器126可 包括一線性回饋移位暫存器,其用以藉由使用經變換種子 以產生擾碼字及應用資料與擾碼字之x〇R而擾碼資料。 前進至412,共同種子可與經擾碼資料字串接以形成經 擴展資料字。舉例而言,在圖1中,共同種子可為後設資 料位元144之集合。第一資料字140可與後設資料位元144 之集合串接以形成第一經擴展資料字15〇,且第二資料字 142可與後設資料位元144之集合串接以形成第二經擴展資 料字152。 繼續至414,可編碼經擴展字以形成碼字。舉例而言, 在圖1中,可藉由ECC編碼器122分別編碼經擴展資料字 150及152以形成碼字160及162。 進行至416 ’判定碼字是否經穿孔。當決定穿孔碼字 時,則在41 8處碼字可經穿孔。舉例而言,在圖1中,媽字 穿孔器124可分別穿孔碼字160及162中之每一者以產生經 162488.doc -20- 201250462 穿孔碼字170及172。或者’寸穿孔碼字16〇、ία中之至少 一者,從而自經穿孔碼字中移除後設資料位元中之至少一 者。作為一說明性實例,碼字1 62可經穿孔,從而移除後 設資料位元144中之至少一者,而同時碼字16〇未經穿孔。 是否自碼字移除至少一後設資料位元之決策可視碼字待儲 存於字線内之位置而定。舉例而言,可基於比較待儲存碼 字160之第一位置與記憶體1〇4之字線1〇8内的預定位置而 選擇性地穿孔第一碼字160 ^作為一額外實例,可基於比 較待儲存碼字162之第二位置與記憶體1〇4之字線1〇8内的 另一預定位置而選擇性地穿孔第二碼字162。 移動至420,可將經穿孔碼字連同共同種子一起儲存於 記憶體儲存器件中。舉例而t,在圖!中,將經穿孔碼字 17〇及172連同後設資料位元144—起儲存於資料儲存器件 1〇2之記憶體104中。後設資料位元144可與經穿孔碼字⑺ 及172兩者相關聯。在一說明性實例巾,後設資料位元唑 财子於記憶體儲存器件中,且後設資料位元不作為任何碼 子之—部分而經儲存。 这回至416’若碼字未經穿孔,則可將未經穿孔碼字健 體健存^件中°舉例而言’可將四個碼字儲存於 每1字於一共同種子對其擾碼。可藉由種子編碼 母馬子以作為_展碼字,且碼字巾之 碼::除種子可連同未經穿孔碼字-起經儲存但自經 圖4中所描繪之方法的 一優點在於可以單 一例項儲存用 162488.doc 201250462 以擾碼多個資料字之此回媒戚 /、门擾碼種子,從而導致記憶體空間 之節省。 在一特定實例中,該儲存資料之方法可包括·· 自主機獲得資料; 判定-字線(WL)内之經編碼資料經程式化的位置; 獲得-共同種子且根據該位置將一預定義變換應用至該 種子; 藉由使用該經變換種子以產生擾碼型樣而產生該擾碼型 樣; 使用该擾碼型樣來擾碼自主機接收之資料; 將共同種子串接至經擾碼字以產生經擴展字,· 編碼(藉由ECC)該經擴展字以產生一碼字; 判疋該碼字是否經穿孔;及 在包括共同種子之情況下穿孔該碼字。 圆5描繪將資料儲存於記憶體儲存器件中之另一方法。 在處,可自主機擁取資料。舉例而言,在圖!中,資料 儲存器件102可自主機器件130擷取資料。 ▲繼續至504,可判定字線内之資料之内部位置。舉例而 Ϊ ’參看圖1 ’可在資料儲存器件⑽之記憶體1〇4内判定 子線108之複數個内部位置中的一者。 前進至_,可根據字線内之資料的該内部位置將一變 用η同種子。舉例而言,參看圖1,可將-變換應 用至後設資料位元144之集合。該變換可視待儲存於字線 (诸如’記憶體1〇4之字線_中之資料的内部位置而定。 162488.doc •22· 201250462
位,或另一變換。
子不與其他字線相關,以使得同一位开 明性實例中,該共同種 位元線上之資料看起來 為隨機的且均一散佈的。 移動至508,可藉由使用經變換種子作為擾碼種子而產 生擾碼字。舉例而言,可在線性回饋移位暫存器處使用諸 如圖1之後設資料位元144之集合的種子來產生擾碼字。 進行至510,可根據擾碼字來擾碼資料。舉例而言在 圖1中,擾碼器126可使用擾碼字擾碼資料。擾碼器126可 應用一按位元XOR運算以擾碼資料。 繼續至5 1 2,共同種子可與經擾碼資料字串接以形成經 擴展予。舉例而s ’在圖1中,共同種子可為後設資料位 元144之集合。第一資料字14〇可與後設資料位元144之集 合串接以形成第一經擴展資料字150,且第二資料字142可 與後設資料位元144之集合串接以形成第二經擴展資料字 152 〇 移動至5 1 4,可編碼經擴展字以形成碼字。舉例而言, 在圖1中,可藉由ECC編碼器122分別編碼經擴展資料字 150及152以形成碼字160及162。 進行至516’碼字可經穿孔,從而自碼字中之每一者移 I62488.doc -23- 201250462 除共同種子。舉例而言’在圖丨中,碼字穿孔器124可分別 穿孔碼字160及162中之每一者以產生經穿孔碼字17〇及 172。或者,可穿孔每一碼字以產生經穿孔碼字,諸如, 經穿孔碼字332(如圖3中所展示)。 前進至518,可將經穿孔碼字及共_子之-個例項儲 存=記憶體儲存器件中。舉例而言,在圖】中將經穿孔 碼字170及172連同有可能經變換(亦即,經編碼)之後設資 料位元U4-起健存於資料儲存器件咖之記憶體刚中。 在一實例中,資料儲存器件102可為一快閃記憶體器件。 在圖5中所描繪之方法中,可與多個字十之每一者分離 地處置共同種子,而同時所有碼字皆經穿孔,亦即,在碼 字經儲存至記憶體器件之前自碼字移除共同種子。圖讨 所描繪之方法的-優點在於可以單一例項儲存與多個 字相關聯之後設資料位元,從而導致記憶體空間之節省。 圖6中所描繪之方法的一實施包括自記憶體(諸如,快閃 記憶體)讀取一經穿孔碼字連同與多個碼字中之每一者相 關聯的後設資料位元之集合。在一特定實例中,自儲存於 ,己憶體處之-個瑪字表示掏取後設資料位元之集人之 示的至少-位元’“储存於記憶體處之另一碼: 取後設資料位元之集合之-表示的至少-其他位:榻 二: 與每一經穿孔碼字串接以產生- 碼字。可藉由ECC解碼器解碼此 屋生 例中,後設資料位元之集合為一用於解U又說明性實 據記憶體之頁或字線’”種子,且根 ()内之碼字的位置將經解竭碼字與 162488.doc •24· 201250462 藉由種子之變換饋入的由偽隨機產生器產生之擾碼型樣進 行XOR運算。 圖6描綠自諸如快閃記憶體器件之資料储存器件榻取資 料之方法的流程圖。在6〇2處,自記憶體儲存器件讀取一 子及—共同種子。舉例而言’在圖2中’自資料儲存器件 2〇2之記憶體2〇4讀取碼字表示27〇及272。在一特定實例 中,自儲存於記憶體處之第一碼字表示擷取後設資料位元 之集σ的至少第一位元,且自儲存於記憶體處之第二碼字 表示擷取後設資料位元之集合的至少第二位元。在圖3之 332處所展示之說明性實例中,後設資料位元之第一部分 340儲存於碼字表示334處,後設資料位元之第二部分342 儲存於碼字表示336處,且後設資料位元之第三部分344儲 存於碼字表示338處。部分34〇、342及344經擷取以形成後 設資料位元310之集合。 繼續至604,共同種子可與碼字(或可含有一或多個錯誤 之碼字之表示)組合以形成一未經穿孔碼字。舉例而言, 在圖2中,組合器224可組合後設資料$元表示246與碼字 表示270及272中之每一者以分別產生經擴展之碼字表示 260及262 〇 前進至606,可解碼未經穿孔碼字。舉例而言,在圖2 中,ECC解碼器222可使用錯誤校正編碼(ECC)來解碼經擴 展之碼字表示(諸如,經擴展之碼字表示26〇及262)以產生 經解碼之經擴展資料字,諸如,經解碼之經擴展資料字 250及252 。 162488.doc -25- 201250462 言移自!解碼碼字榻取經解碼種子。舉例而 料字以·料子剖析器22()可剖析經解碼之經擴展資 字,且™如經解碼之資料字240及242的經解碼資料 子’且可操取經解碼之後設資料位元248。 進行至㈣,可判定碼字之内部位置。舉例而言,在圖2 ’可判定記憶體204之字線2G8内之第—碼字表示及第二 碼字表示的位置。 繼續至612 ’可根據碼字之内部位置將—變換應用至經 解馬之八同種子。舉例而言,在圖2中,可根據第一碼字 表不或第二碼字表示之位置將諸如位元移位或旋轉之變換 應用至後設資料位元248 » ΊΓ進至614可使用經變換之共同種子來產生擾碼型 樣舉例而5,在圖2中,解擾碼器226可基於後設資料位 疋248產生擾碼型樣。移動至616,可根據擾碼型樣解擾碼 經解碼資料字。舉例而言,在圖2中,解擾碼器226可根據 經產生之擾碼型樣解擾碼經解碼資料字240及242中之每一 者。 圖6中所描繪之方法的一優點為可以單一例項擷取與多 個碼字中之每一者相關聯之後設資料位元,從而導致記憶 體空間之節省》另外,使用單一 Ecc解碼操作進行解碼及 解擾碼可在比當分別解碼種子及碼字時短的時間段中實 現。此外,當使用單一 ECC引擎時,降低了控制器複雜 性。另外,當使用單一 ECC碼字來保護資料及種子兩者 時,可使用較少冗餘以達成相同之錯誤校正能力,從而導 162488.doc • 26 * 201250462 致儲存空間之更有效使用。 圖7描繪自記憶體儲存器件擷取資料之一替代方法。在 7〇2處,自記憶體儲存器件讀取_字及—共同種子。舉例 而言,在圖2中,控制器206自記憶體2〇4讀取第一碼字表 不270、第二碼字表示272及後設資料表示246。 繼續至704’可判定字線内之碼字之内部位置。舉例而 :’在圖2中’字線雇之第一位置可經判定為储存第—碼 子表不270之第一儲存位置’且字線2〇8之第二位置可經判 定為儲存字線208之第二碼字表示272之第二儲存位置。 前進至706’可讀取共同種子’且可根據碼字之内部位 置將-變換應用至共同種子1動至雇,可制經變換 種子來產生擾碼^進行至712,可根據擾碼字來解擾碼 資料。 與產生擾碼字及解擾碼同時進行,在71〇處可將共同種 子串接至碼字,且在714處可解碼資料且可找到錯誤位 置。舉例而言,在圖2中,組合器224可將後設資料位元 248串接至碼字表示270及272中之每一者以產生經擴展之 碼字表示260及262 ^ ECC解碼器222可解碼經擴展之碼字 表示260及262且找到錯誤位置。 進行至716’錯誤得以校正’且可自多個經解碼資料字 中之至少一者擷取經解碼種子,諸如,經錯誤校正之共同 種子在特疋實例中,經解碼種子為多個經解碼資料字 中之至少-者的一部分。舉例而·^ ’在圖2中,ecc解碼 器222可校正經擴展之碼字表示260及262中之錯誤且可擷 I62488.doc •27· 201250462 取後設資料位元246。 繼續至718,在718進行用以解擾碼資料字之共同種子θ 否匹配經解碼種子的判定。若共同種子等於經解碼種子疋 則種子中無錯誤,且該方法在726處結束。若共同種子中 存在錯誤,則在720處可藉由將對應變換應用至經解碼種 子而產生一擾碼型樣。 繼續至722 ’可根據已㈣經變換之經解碼種子所產生 之擾碼型樣來解擾碼資料。前進至724,使用在7丨4處所判 定之錯誤位置來校正錯誤。該方法在726處結束。 圖7中所描綠之方法的一優點在於解擾碼及解碼資料可 平订地進行且當無錯誤發生於種子中時可導致時 圖7中所描綠之方法的另-優點為可以單一例項操取與多 個碼子中之每一者相關聯之後設資料位元,
體空間之節省。 U 用以掏取經儲存資料之—特^說明性實例包括二進位博 斯一查德胡里-霍昆格姆碼(BCH)碼之使用。該特定說明 性方法可包括找到錯誤位置及在此等錯誤位置處之位元的 _值’或可使用找到錯誤且藉由在資料與錯誤值之間座 用XOR運算而校正資料的其他實施。在二進位瞻碼中, 因為,進位BCH碼為二進位碼’所以錯誤位置可足以執行 錯每校正,且校正等效於翻轉指定位置中之位元。在圖7 中所描繪之方法尹,可^ 在自a己憶體至控制器之傳送操作期 間平行地應用解擾碼操作712及解碼操作7丨4。 假认包括共同種子之位元經正確地自記憶體操取的一高 I62488.doc -28- 201250462 機率,平行地應用解擾碼操作712及解碼操作714可減小讀 取延遲,舉例而言’若位元錯誤率(BER)為〇 1%且共同種 子為32位元,則自記憶體擷取之共同種子將不具有錯誤存 在大約97°/。之機率。 當ECC碼為二進位BCH碼時,圖7中在no至μ]處之解 擾碼及在724處之校正可互換,此係因為關於二進位咖 I之錯誤校正等效於位元翻轉而與位元值無關之故。在— 特疋實例中’擾碼為:進位x〇R運算,且擾碼及解擾碼操 作為彼此之逆操作。在此㈣τ ,重複第-擾碼且接著藉 由正確種子進行解擾碼可為足夠的。在圖8中說明此實 圆8指繪自記憶體儲存器件(諸 取貝料之另-方法。在8〇2處,自記憶體儲存器件讀取一 碼字及一共同種子。舉例而言,在圖^,可 器件202之記憶體_讀取碼字表示27〇及272 β 储存 繼續至_ ’可判定字線内之碼字之内部位置 ^在圖2中’字線2G8之第—位置可經敎為儲存第一碼 二:Γ二Γ儲存位置’且字線2°8之第二位置可經判 1儲存子線208之第二碼字表示272之第二儲存位置。 刖進至806,可靖, 賣取共冋種子,且可根據字線中之 之内部位置將一變換膚 "、子 共同種子串接至碼二成至二種子。移動至可將 圖2Φ… 成未㈣孔碼字。舉例而言,在 圖2中,組合器以可組合後設資料位元表 示270及2?2中之每 ^興碼子表 母者以刀別產生經擴展之碼字表示26〇 162488.doc •29· 201250462 及 262。 進行至812’可解碼資料且找到錯誤位置。舉例而言, 在圖2中,ECC解碼器222可使用錯誤校正碼(ECC)來解碼 經擴展之碼字表示(諸如,經擴展之碼字表示26〇及262)以 產生、盈解碼之經擴展資料字,諸如,經解碼之經擴展資料 子50及252 ECC解碼器222可定位經擴展之碼字表示26〇 及262内之資料中的錯誤位置。 與串接資料及解碼資料同時進行,在議處可產生擾碼 型樣。舉例而言’在圖2中’解擾碼器226可基於後設資料 位元248產生解擾碼型樣。 進仃至814 ,可根據擾碼型樣來解擾碼資料❶舉例而 吕,在圖2中,解擾碼器226可解擾碼經解碼資料字及 242中之每一者。 繼續至816’錯誤得以校正,且可自多個經解碼資料字 中之至少—者操取經解碼種子,諸如,經錯誤校正之共同 種子纟特定實例中’經解碼種子為多個經解碼資料字 中之m的—部分°舉例而t ’在圖2中’在解擾碼 (在8M處)之後,ECC解碼器扣可使用經射之錯誤位置 (自814)翻轉第—資料24()及第二資料⑷之位元。 移動至818,判定用以擾碼資料之共同種子是否匹配經 ^碼種子。若在818處判^種子中無錯誤,則該方法在似 處結束。若在共同藉士士六士“ 子中存在錯誤,則在820處可藉由在 S I 0處產生之不正禮f亦g 卩錯决)擾碼型樣重新擾碼資料。 與重新擾碼資料同時進行, 在22處,可使用針對經解碼 162488.doc 201250462 種子(亦即,針對經解碼之後設資料位元)之對應變換產生 第二擾碼型樣。在822處產生之第二擾碼型樣將為基於經 錯誤校正之種子的正確擾碼型樣。在826處,可藉由執行 第二擾碼變換來解擾碼經重新擾碼之資料(自820),以根據 第二擾碼型樣產生一或多個第二經解擾碼之資料字。該方 法在828處結束。 當ECC碼為二進位bCH碼(其可藉由翻轉指定錯誤位置中 之位7L進行校正)時,且擾碼係藉由用在82〇處重新擾碼資 料之擾碼字與導致原始資料之在814處所使用的同一擾碼 字(在解擾碼之前)的X〇R運算來進行,但其中錯誤位置中 之位tl經翻轉。因此,圖8中在826處解擾碼資料可藉由將 導致原始資料字之正確擾碼字進行。此外,因為x〇R為可 交換運算,所以在82〇處重新擾碼及在826處解擾碼可互 一優點在於解擾碼及解碼資料可
一碼字表示擷取。 圖8中所描繪之方法的一優·· 平行地進行且可導致時間節省 一優點在於可以單一例項擷取 聯之後設資料位元,從而逡功·
162488.doc -31· 201250462 一經解碼資料字及經解碼之後設資料位元。在一個實施 中藉由使用錯誤校正碼解碼後設資料表示而解碼(亦 即變換)後設資料表示。在一特定說明性實例中,使用 -識別符變換來變換後設資料表示,其中經變換之後設資 料位兀之集合與後設資料位元之集合相同。 前進至906,可執行擾碼變換以解擾碼經解碼資料字。 經解碼之後設資料位元用以產生用於擾碼變換之種子。在 5玄方法之一個實施中,經解碼之後設資料位元包括-種 子。 解碼資料之方法的一實施包括自記憶體讀取一經穿孔碼 子連同與多個碼子中之每一者相關聯的後設資料位元之集 合。在-特定實例中,後設資料位元之集合構成一共同種 子。後設資料位元之該集合與經穿孔碼字串接以產生一可 藉由ECC解碼器解碼之碼字。當後設資料位S之集合為一 用於擾碼之種子時,可根據快閃記憶體之頁或字線(WL)内 馬子的位置將經解碼資料字與藉由種子之變換饋入的由 偽隨機產生器產生之擾碼型樣進行x〇R運算。 本文中所描述之方法及裝置可應用於以下情形:後設資 料位兀之集合與多個資料字中之每一者相關聯,且不需要 儲存後設資料位元之該集合連同多個字中之每一者或獨自 儲存於-專用嘴字中。本文中所描述之方法及裝置可應用 於編碼及解碼兩者。 儘管將本文中所描繪之各種組件說明為區塊組件且以通 用術語加以描述,但該等組件可包括一或多個微處理器、 162488.doc -32- 201250462 狀態機’或經組態以使 残妹咖切 存器件(諸如,資料儲存 =广資料儲存器件202)能夠執行歸因於該等組件之 特疋功其他電路’或以上各者之任何組合。 -’可使用專用電路或經程式化以將後設資料位 π之:合串接、附加或以其他方式組合至資料字刚、 纟的微處理器或微控制器來實施資料字擴展 H 120 1為另—實例’可使用專用電路或經程式化以選 擇性地自碼字160、162移除後設資料位元Μ4之集合中之 -或多:的微處理器或微控制器來實施碼字穿孔器 在一特定實施例中’資料字擴展器12〇、碼字穿孔器124或 以上各者之—組合包括域理器執行之可執行指令,且該 等指令儲存於記憶體104處。或者或另外,藉由可包括於 控制器1G6中之處理器執行的可執行指令可儲存於並非記 憶體104之-部分的單獨記憶體位置處,諸如,在控制器 1〇6(未圖示)之唯讀記憶體(R〇M)處。 在一特定實施例中,資料儲存器件1〇2或2〇2可為一攜帶 型器件,其經組態以選擇性地耦接至一或多個外部器件。 然而,在其他實施例中,資料儲存器件1〇2或2〇2可附接或 内嵌於一或多個主機器件内,諸如,在攜帶型通信器件之 外殼内。舉例而言,資料儲存器件1〇2可在諸如無線電 話、個人數位助理(PDA)、遊戲器件或控制台、攜帶型導 航器件或使用内部非揮發性記憶體之其他器件的已封裝裝 置内。在一特定實施例中,資料儲存器件1〇2包括一非揮 發性記憶體’諸如,快閃記憶體(例如,NAND、NOR、多 I62488.doc -33- 201250462 層級§己憶胞(MLC))、分割位元線n〇r(dINOR)、AND、高 電容性耦合比率(HiCR)、不對稱無接觸電晶體(ac乃或其 他快閃記憶體)、可抹除可程式化唯讀記憶體(EpR〇M)、 電可抹除可程式化唯讀記憶體(EEpR〇M)、唯讀記憶體 (ROM)、一次性可程式化記憶體(〇τρ),或另一類型之記 憶體。 ° 本文中所描述之實施例的說明意欲提供對各種實施例之 大體理解。可利用其他實施例並自本發明導出其他實施 例,以使得可在;f脫離本發明之料的情況下進行社構及 邏輯取代以及改變。本發明意欲涵蓋各種實施例之任何及 所有後續調適或變化。因此’本發明及諸圖將被視為說明 性而非限制性的。 以上所揭示之標的物應被視為說明性而非限制性的,且 附加申請專利範圍意欲涵蓋在本發明之料内的所有 修改、增強及其他實施例1此,在法律所允許之最切 度上’本發明之㈣應由以下巾請專利範圍及其均 最寬廣可容許解譯來判定,且 限制。 且不應戈前逃實施方式約束或 【圖式簡單說明】 資料之資料儲存器件之系統之 圖1為包括經組態以儲存 第一實施例的圖; 之系統之第二實施例的圖; 圖3為包括儲存於資料儲存器 干慝之共同後設資料 I62488.doc •34- 201250462 之碼字表示之一特定實施例的圖; 圖4為描繪將資料儲存於記憶體中之方法之第 的流程圖; 圖5為描繪將資料儲存於記憶體十之方法之第二 的流程圖; 圖6為描繪自記憶體擷取經編碼資料之方法之第 例的流程圖; 圖7為描繪自記憶體擷取經編碼資料之方法之 例的流程圖; 圖8為描繪自記憶體擷取經編碼資料之方法 例的流程圖;及 第 第 圖9為描繪自記憶體擷取經編碼資料 例的流程圖。【主要元件符號說明】 之方法之 第 實施例 實施例 一實施 二實施 三實施 四實施 100 系統 102 資料儲存器件 104 記憶體 106 控制器 108 字線 120 資料字擴展器 122 誤差校正碼(ECC)編碼器 124 碼字穿孔器 126 擾碼器 130 主機器件 162488.doc •35- 201250462 140 第一資料字 142 第二資料字 144 後設資料位元 150 第一經擴展資料字 152 第二經擴展資料字 160 第一碼字 162 第二碼字 164 第一同位位元 166 第二同位位元 170 第一經穿孔碼字 172 第二經穿孔碼字 200 系統 202 資料儲存器件 204 記憶體 206 控制器 208 字線 220 資料字剖析器 222 錯誤校正碼(ECC)解碼器 224 組合器 226 解擾碼器 230 主機器件 240 經解碼資料字/第一資料 242 經解碼資料字/第二資料 246 後設資料位元表示 •36- I62488.doc 201250462 248 後設資料位元 250 經解碼之經擴展資 252 經解碼之經擴展資 260 經擴展之碼字表示 262 經擴展之碼字表示 270 第一碼字表示 272 第二碼字表示 290 位元錯誤 302 集合 304 第一碼字表示 306 第二碼字表示 308 第三碼字表示 310 後設資料位元 312 第一資料 314 第一同位位元 316 第二資料 318 第二同位位元 320 第三資料 322 第三同位位元 332 碼字集合 334 第一碼字表示 336 第二碼字表示 338 第三碼字表示 340 後設資料位元/第一 •37- I62488.doc 201250462 342 後設 344 後設 346 第一 348 第一 資料位元/第二部分 資料位元/第三部分 資料 同位位元 162488.doc -38 *
Claims (1)
- 201250462 七、申請專利範圍: 1. 一種儲存與多個資料字中之每一 元之一集合的方法’該方法包含 者相關聯 之後設資料位 資料字中之每一 者以產生多個碼 組合後設資料位元之該集合與該多個 者以產生多個經擴展資料字· 編碼該多個經擴展資料字中之每— 字; 穿孔該多個碼字中之每一者以產生多個經穿孔碼字, 其中在該等經穿孔碼字中之每一者中後設資料位元之該 集合經移除; 將》亥夕個經穿孔碼字儲存於一储存器件處; 變換後設資料位元之該集合以產生經變換之後設資料 位元之一集合;及 將經變換之後設資料位元之該集合儲存於該儲存器件 2. 如請士項丨之方法’其中將一變換應用至該多個經擴展 資料子中之至少—者’且其中該變換為後設資料位元之 該集合的一函數。 3. 如峭求項2之方法,其中該變換為一擾碼變換,且其中 後°又貝料位70之該集合或後設資料位元之該集合的—函 數為—用於該擾碼變換之種子。 4 · 如晴求項1夕古、土 +4· 巧之方去’其中後設資料位元之該集合的該變 換匕括藉由一錯誤校正碼來編碼後設資料位元之該集 I62488.doc 201250462 5 ·如請求項1之方法,其中後設資料位元之該集合的該變 換使用一識別符變換且經變換之後設資料位元的該集合 與後設資料位元之該集合相同。 6. 一種自—储存器件讀取多個資料字之方法,該方法包 含: 對於該多個資料字中之每一者而言,自該儲存器件讀 取一對應碼字表示; 自該儲存器件讀取後設資料位元之一表示; 變換後設資料位元之該表示以產生經變換之後設資料 位元之—集合; σ ‘观雯換之後設資料位 示中之每一者以產生多個經擴展碼字;及 —解碼該多個經擴展碼字中之每—者以產生經解碼資料 子0 8. 9. 10. °請求項6之方法,其中 換使用-識別你㈣ 貞料位疋之該表不的言| 集合與後-資…、且其中經變換之後設資料位元的 谈叹轉位元之該表示相同。 如請求項6 $ + 合包括解’、中經變換之後設資料位元的該 用於解擾碼該等資稱 了項6之方法,該解媽包含之每一者的種子。 喝該多個經擴展碼字中之每一者以產生該多個㈣ 162488.doc 201250462 展碼字中之錯誤位置; 解擾碼β亥多個經擴展碼字以產生多個經解擾碼碼字, 其中經變換之後設資料位元之該集合用作一用於該解擾 碼之種子;及 藉由在該等錯誤位置處實行校正而校正該多個經解擾 碼碼字以產生多個經解碼資料字。 11. 12. 13. 如請求項10之方法,其進一步包含: 比較該等經變換之後設資料位元與該多個經解碼資料 字中之至少一者的一部分;及 回應於藉由比較該等經變換之後設資料位元與該等經 解碼貝料字中之至少—者的該部分所判定的—差異,使 用該部分作為用於該解擾碼之該種子而重複該解擾碼及 該校正。 -種用以儲存與複數個㈣帛中之每一者相關聯之後設 資料位元之-集合的裝置,該裝置操作以: 組合後言史資料&元之該集合與該複數個資料字中之每 一者以產生複數個經擴展資料字; 編碼該複數個經擴展資料字中之每一#以產生複數個 碼字; 穿孔該複數個碼字中之每一碼字以藉由自每一碼字移 除後設資料位元之該集合而產生複數個經穿孔碼字;及 儲存該複數個經穿孔碼字。 如青求項12之裝置,其中該裝置操作以將—特定變換應 用至該複數個經擴展資料字中之至少-者’且其中該特 I62488.doc 201250462 定變換為後設資料位元之該集合的一函數。 14. 如明求項13之裝置,其中該特定變換為—擾碼變換。 15. 如凊求項Μ之裝置,纟中後設資料位元之該集合包括一 用於該擾碼變換之種子。 16·如請求項12之裝置,其中㈣置操作以: 變換後設資料位元之該集合以產生經變換之後設資料 位元之一集合;及 儲存經變換之後設資料位元之該集合。 17.如請求項16之裝置,其中變換後設資料位元之該集合包 括藉由一錯誤校正碼來編碼後設資料位元之該集合。 18_如請求項16之裝置,其中後設資料位元之該集合係藉由 使用一識別符變換進行變換,其中經變換之後設資料位 元的該集合與後設資料位元之該集合相同。 19.種用以自一儲存器件讀取複數個資料字的裝置,該裝 置經組態以: 自該儲存器件讀取複數個碼字中之每一者之一碼字表 不 , 自該儲存器件讀取後設資料位元之一集合; 變換後設資料位元之該集合以產生經變換之後設資料 位元之一集合; 組合經變換之後設資料位元之該集合與該等碼字表示 中之每一者以產生複數個經擴展碼字;及 解碼該複數個經擴展碼字中之每一者以產生複數個經 解碼資料字。 162488.doc 201250462 20. 如δ月求項19之裝 換包括使用一錯 合。 置’其中後設資料位元之該集合 誤校正碼來解碼後設資料位元 的該變 之該集 21. 22. 23. 24. 珥求項19之裝置,其 換包括味 &中後a又資枓位凡之該集合的該變 括—識別符變換且其中經變換之後設資料位-變 集:與後設資料位元之該集合相同。4〜該 =項19之裝置’其中經變換之㈣資料位元的該 二、—可用以解擾碼該等資料字中之每-者的種子。、 月求項19之裝置,其中該複數個經擴展碼字 者係藉由以下操作來解碼: 之母― 岁J疋4複數個經擴展碼字中之錯誤位置; —解擾碼該複數個經擴展碼字以產生複數個經解擾 字’其中經變換之後設資料位元之該集合包括; 解擾碼之種子;及 级 *在對應於該複數個經擴展碼帛中之該等錯誤位置的該 等經解擾碼瑪字之錯誤位置處校正該複數個經解擾碼碼 字。 如請求項23之裝置,其中該裝置經組態以: 比較該等經變換之後言免資料纟元與該複數個經解碼資 料字中之至少一者的一部分;及 回應於藉由該等經變換之後設資料位元與該等經解碼 資料字t之該至少一者之該部分的該比較所判定之一差 異,重複該解擾碼及該校正,其中該解擾碼係使用該部 分作為一經校正種子而實行。 I62488.doc 201250462 25. 26. 27. 28. 29. 30. 一種方法,其包含: 自一記憶體擷取一資料字表示及後設資料位元,其中 該資料字表示對應於一經穿孔碼字,且其中該等後設資 斗4元中之至少一者係自另一資料字表示擁取;及 解碼對應於與該等後設資料位元組合之該經穿孔碼字 的:經擴展碼字’其中解碼該經擴展碼字產生—經解碼 資料字及經解碼之後設資料位元。 青戈項25之方法,其進一步包含執行一擾碼變換以解 擾碼心解碼資料字’其中該等經解碼之後設資料位元 用以產生一用於該擾碼變換之種子。 如凊求項26之方法,其中根據基於該記憶體之一字線内 之該碼字表示之-位置的—變換來修改該等經解碼之後 設資料位元。 如請求項27之方法’其進_步包含使用該等經修改之經 解碼之後設資料位元作為—擾碼種子而產生—擾碼型 樣。 如請求項25之方法’其中解碼該等經擴展資料字包括識 別該經擴展資料字之錯誤位置資訊,且進—步包含:日 執行一擾碼變換以解擾碼該碼字表示之至少一部分以 便產生-經解擾碼碼字,其中該等後設資料位元係用以 產生一用於該擾碼變換之種子;及 根據該錯誤位置資訊來校正該 以產生-經校正資料字。 解擾碼碼子内之錯誤 如請求項29之方法,其進一舟白人 再進纟包含回應於该測該等後設 I62488.doc •6· 201250462 資料位元不匹配該等經解碼之後設資料位元而進行以下 動作: 執行一第二擾碼變換以解擾碼該碼字表示之該部分以 便產生一第二經解擾碼碼字,其中該等經解碼之後設資 料位7L係用以產生一用於該第二擾碼變換之第二種子;及 根據該錯誤位置資訊來校正該第二經解擾碼碼字内之 錯誤。 31. 32. 如4求項29之方法,其進一步包含回應於偵測該等後設 資料位兀不匹配該等經解碼之後設資料位元而進行以下 動作: 執行一第二擾碼變換以使用該經產生之種子來重新擾 碼該經校正資料字;及 執行一第二擾碼變換以解擾碼該經重新擾碼之經校正 資料字,其中該經解碼之後設資料位元係用以產生一用 於s亥第二擾碼變換之第二種子。 一種方法,其包含: 編碼一第一經擴展資料字以產生一第一碼字,該第一 經擴展資料字對應於與後設資料位元組合之一第一資料 字; 編碼—第二經擴展資料字以產生一第二碼字,該第二 經擴展資料字對應於與該等後設資料位元組合之一第二 資料字;及 在儲存忒第一碼字及該第二碼字之前,藉由移除該等 後。又貝料位元中之至少—者來選擇性地穿孔該第-碼字 162488.doc 201250462 及該第二碼字中之至少一者。 33. .34. 如請求項32之方法,其中該第一碼字係儲存為一未經穿 孔碼字,且其中該第二碼字係儲存為一不包括該等後設 資料位元中之任一者之經穿孔碼字。 如請求項3 2之方法’其進一步包含: 自一主機器件接收對應於該第一資料字及該第二資料 字之資料;及 判疋對應於儲存該第一資料字之在一字線内之一第一 位置及對應於儲存該第二資料字之在該字線内之一第二 位置, 其中選擇性地穿孔該第一碼字及該第二碼字中之至少 者包括基於比較該第一位置及該第二位置與該字線内 之一預定位置而本丨x J疋疋否移除該等後設資料位元中之至 少一者。 I62488.doc
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/IB2011/000435 WO2012117263A1 (en) | 2011-03-02 | 2011-03-02 | Method of data storage in non-volatile memory |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| TW201250462A true TW201250462A (en) | 2012-12-16 |
Family
ID=44626216
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW101106339A TW201250462A (en) | 2011-03-02 | 2012-02-24 | Method of data storage in non-volatile memory |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US9195537B2 (zh) |
| KR (1) | KR101686980B1 (zh) |
| TW (1) | TW201250462A (zh) |
| WO (1) | WO2012117263A1 (zh) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106105219A (zh) * | 2014-04-01 | 2016-11-09 | 美国莱迪思半导体公司 | 用于在串行视频接口中进行检错与纠错的正交数据组织 |
| TWI654526B (zh) | 2017-06-30 | 2019-03-21 | 慧榮科技股份有限公司 | 降低快閃儲存介面中傳收資料錯誤方法以及使用該方法的裝置 |
| US10630424B2 (en) | 2017-06-30 | 2020-04-21 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
| US10630425B2 (en) | 2017-06-30 | 2020-04-21 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
| US10637509B2 (en) | 2017-06-30 | 2020-04-28 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
| US10848263B2 (en) | 2017-06-30 | 2020-11-24 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
Families Citing this family (28)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9459955B2 (en) | 2012-05-24 | 2016-10-04 | Sandisk Technologies Llc | System and method to scramble data based on a scramble key |
| US9402226B2 (en) * | 2012-11-12 | 2016-07-26 | Qualcomm Incorporated | Station, method, and apparatus for network detection in a wireless communications system |
| US9026888B2 (en) * | 2012-12-21 | 2015-05-05 | Intel Corporation | Method, system and apparatus for providing access to error correction information |
| US9276609B2 (en) * | 2013-11-16 | 2016-03-01 | Seagate Technology Llc | Systems and methods for soft decision generation in a solid state memory system |
| US9710326B2 (en) * | 2014-07-28 | 2017-07-18 | SK Hynix Inc. | Encoder by-pass with scrambler |
| US9984768B2 (en) | 2014-10-20 | 2018-05-29 | Sandisk Technologies Llc | Distributing storage of ECC code words |
| KR102466412B1 (ko) * | 2016-01-14 | 2022-11-15 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
| KR102438988B1 (ko) * | 2016-04-07 | 2022-09-02 | 삼성전자주식회사 | 랜덤화 연산을 수행하는 불휘발성 메모리 장치 |
| US10180875B2 (en) * | 2016-07-08 | 2019-01-15 | Toshiba Memory Corporation | Pool-level solid state drive error correction |
| US10740176B2 (en) * | 2016-09-19 | 2020-08-11 | Cnex Labs, Inc. | Computing system with shift adjustable coding mechanism and method of operation thereof |
| US10635400B2 (en) * | 2017-12-12 | 2020-04-28 | Western Digital Technologies, Inc. | Seed generation |
| US10742237B2 (en) * | 2018-06-21 | 2020-08-11 | Western Digital Technologies, Inc. | Memory device with adaptive descrambling |
| US10956259B2 (en) | 2019-01-18 | 2021-03-23 | Winbond Electronics Corp. | Error correction code memory device and codeword accessing method thereof |
| WO2021069942A1 (en) * | 2019-10-09 | 2021-04-15 | Micron Technology, Inc. | Memory device equipped with data protection scheme |
| US11537326B2 (en) | 2020-09-10 | 2022-12-27 | Western Digital Technologies, Inc. | Relocation flow using CbA technology |
| US11934263B2 (en) * | 2022-03-29 | 2024-03-19 | Ampere Computing Llc | Parity protected memory blocks merged with error correction code (ECC) protected blocks in a codeword for increased memory utilization |
| US12204410B2 (en) * | 2022-03-29 | 2025-01-21 | Ampere Computing Llc | Integrated error correction code (ECC) and parity protection in memory control circuits for increased memory utilization |
| US12182415B2 (en) | 2022-05-06 | 2024-12-31 | Microsoft Technology Licensing, Llc | Encoding system data in parity symbols |
| US12334138B2 (en) * | 2022-08-30 | 2025-06-17 | Micron Technology, Inc. | Dynamic address scramble |
| KR20240111641A (ko) * | 2023-01-10 | 2024-07-17 | 삼성전자주식회사 | 메모리 장치 및 그것의 동작 방법 |
| EP4400971A1 (en) * | 2023-01-10 | 2024-07-17 | Samsung Electronics Co., Ltd. | Memory device and operation method thereof |
| US12619496B2 (en) | 2023-01-31 | 2026-05-05 | Micron Technology, Inc. | Apparatuses and methods for bounded fault compliant metadata storage |
| CN118471314A (zh) | 2023-02-09 | 2024-08-09 | 美光科技公司 | 用于存储存储器元数据的设备、系统及方法 |
| US12261623B2 (en) | 2023-05-12 | 2025-03-25 | Microsoft Technology Licensing, Llc | Decoding metadata encoded in error correction codes |
| US12181971B1 (en) * | 2023-06-16 | 2024-12-31 | Microsoft Technology Licensing, Llc | Symbol rotation of cache line codewords for increased reliability with metadata |
| US12613769B2 (en) | 2023-10-03 | 2026-04-28 | Micron Technology, Inc. | Apparatuses and methods for read/modify/write single-pass metadata access operations |
| US12613774B2 (en) * | 2023-10-13 | 2026-04-28 | Micron Technology, Inc. | Apparatuses and methods for shared codeword in 2-pass access operations |
| US12451904B1 (en) * | 2024-04-15 | 2025-10-21 | SanDisk Technologies, Inc. | Data storage device with joint error correction code engines |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7284185B2 (en) * | 2004-10-08 | 2007-10-16 | Telefonaktiebolaget Lm Ericsson (Publ) | Puncturing/depuncturing using compressed differential puncturing pattern |
| US7900127B2 (en) * | 2005-01-10 | 2011-03-01 | Broadcom Corporation | LDPC (Low Density Parity Check) codes with corresponding parity check matrices selectively constructed with CSI (Cyclic Shifted Identity) and null sub-matrices |
| EP1684308A1 (en) * | 2005-01-19 | 2006-07-26 | Saifun Semiconductors Ltd. | Methods for preventing fixed pattern programming |
| RU2426254C2 (ru) * | 2006-11-06 | 2011-08-10 | Квэлкомм Инкорпорейтед | Скремблирование на уровне кодового слова для mimo-передачи |
| US8127200B2 (en) * | 2006-12-24 | 2012-02-28 | Sandisk Il Ltd. | Flash memory device and system with randomizing for suppressing errors |
| US7984360B2 (en) | 2006-12-31 | 2011-07-19 | Ramot At Tel Aviv University Ltd. | Avoiding errors in a flash memory by using substitution transformations |
| JP4498370B2 (ja) * | 2007-02-14 | 2010-07-07 | 株式会社東芝 | データ書き込み方法 |
| US8171383B2 (en) * | 2007-04-13 | 2012-05-01 | Broadcom Corporation | Method and system for data-rate control by randomized bit-puncturing in communication systems |
| US8301912B2 (en) * | 2007-12-31 | 2012-10-30 | Sandisk Technologies Inc. | System, method and memory device providing data scrambling compatible with on-chip copy operation |
| US8429330B2 (en) * | 2008-09-12 | 2013-04-23 | Sandisk Technologies Inc. | Method for scrambling data in which scrambling data and scrambled data are stored in corresponding non-volatile memory locations |
| KR101563647B1 (ko) * | 2009-02-24 | 2015-10-28 | 삼성전자주식회사 | 메모리 시스템 및 그것의 데이터 처리 방법 |
| JP5492679B2 (ja) * | 2009-06-30 | 2014-05-14 | パナソニック株式会社 | 記憶装置およびメモリコントローラ |
| US20110176603A1 (en) * | 2011-02-10 | 2011-07-21 | Comtech Ef Data Corp. | method for carrying meta-data over digital video broadcasting-satellite second generation (dvb-s2) streams over the physical-layer framing structure |
-
2011
- 2011-03-02 WO PCT/IB2011/000435 patent/WO2012117263A1/en not_active Ceased
- 2011-03-02 KR KR1020137022102A patent/KR101686980B1/ko not_active Expired - Fee Related
- 2011-03-02 US US13/390,855 patent/US9195537B2/en active Active
-
2012
- 2012-02-24 TW TW101106339A patent/TW201250462A/zh unknown
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN106105219A (zh) * | 2014-04-01 | 2016-11-09 | 美国莱迪思半导体公司 | 用于在串行视频接口中进行检错与纠错的正交数据组织 |
| TWI654526B (zh) | 2017-06-30 | 2019-03-21 | 慧榮科技股份有限公司 | 降低快閃儲存介面中傳收資料錯誤方法以及使用該方法的裝置 |
| US10630424B2 (en) | 2017-06-30 | 2020-04-21 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
| US10630425B2 (en) | 2017-06-30 | 2020-04-21 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
| US10637509B2 (en) | 2017-06-30 | 2020-04-28 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
| US10848263B2 (en) | 2017-06-30 | 2020-11-24 | Silicon Motion, Inc. | Methods for reducing data errors in transceiving of a flash storage interface and apparatuses using the same |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2012117263A1 (en) | 2012-09-07 |
| US20120278687A1 (en) | 2012-11-01 |
| KR101686980B1 (ko) | 2016-12-16 |
| KR20140005989A (ko) | 2014-01-15 |
| US9195537B2 (en) | 2015-11-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101686980B1 (ko) | 비휘발성 메모리 내의 데이터 저장 방법 | |
| US7865809B1 (en) | Data error detection and correction in non-volatile memory devices | |
| US9459955B2 (en) | System and method to scramble data based on a scramble key | |
| US8484542B2 (en) | Data recovery using additional error correction coding data | |
| US8719677B2 (en) | Using ECC encoding to verify an ECC decode operation | |
| US8645789B2 (en) | Multi-phase ECC encoding using algebraic codes | |
| US6757845B2 (en) | Method and apparatus for testing a storage device | |
| CN105340022B (zh) | 用于校正数据错误的电路、设备及方法 | |
| KR101576102B1 (ko) | 플래시 메모리의 블록으로부터 데이터를 판독하는 방법 및 관련 메모리 장치 | |
| TW201133501A (en) | System and method of error correction of control data at a memory device | |
| TWI631456B (zh) | 資料儲存裝置及資料維護方法 | |
| CN110768751B (zh) | 译码的方法与电路、存储器控制器、储存装置、控制器 | |
| TW200823910A (en) | Nonvolatile memory with adaptive operation | |
| CN114694739B (zh) | 闪存控制器及其中的编码电路 | |
| US10956259B2 (en) | Error correction code memory device and codeword accessing method thereof | |
| CN110309013A (zh) | 存取闪存模块的方法及相关的闪存控制器与电子装置 | |
| JP2004071012A5 (zh) | ||
| Van Zandwijk | A mathematical approach to NAND flash-memory descrambling and decoding | |
| CN107168816B (zh) | Ecc帧长调整方法及其装置 | |
| TW200839503A (en) | Nonvolatile memory with modulated error correction coding | |
| TW200839502A (en) | Flash memory system and method for controlling the same | |
| US10089189B2 (en) | Devices and methods for receiving a data file in a communication system | |
| JP7438859B2 (ja) | メモリシステムおよび方法 | |
| CN113921076A (zh) | 基于数据压缩的数据处理方法及ssd设备 | |
| CN112231734A (zh) | 一种存储器件数据无害化处理方法、系统及装置 |