專利名稱:基于解碼器的數(shù)據(jù)恢復(fù)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)恢復(fù)領(lǐng)域,特別是涉及基于解碼器的數(shù)據(jù)恢復(fù)。
背景技術(shù):
許多數(shù)據(jù)存儲(chǔ)系統(tǒng)采用某些類型的編碼系統(tǒng),在這些編碼系統(tǒng)中,將所存儲(chǔ)的數(shù)據(jù)與錯(cuò)誤校驗(yàn)信息進(jìn)行組合或者編碼,以形成滿足事先建立的約束的碼字。將從存儲(chǔ)器檢索的碼字相對(duì)于約束進(jìn)行校驗(yàn)。如果碼字不滿足這些約束,則可以使用迭代技術(shù)來嘗試校正該碼字。通常,如果在一定數(shù)目的迭代之后,還未恢復(fù)有效的碼字,則解碼過程停止并且宣布解碼失敗。
發(fā)明內(nèi)容
在一個(gè)實(shí)施方式中,一種裝置包括解碼器,該解碼器被配置用于對(duì)碼字執(zhí)行解碼過程,以驗(yàn)證該碼字符合編碼約束。該解碼器包括恢復(fù)單元,該恢復(fù)單元被配置用于存儲(chǔ)用于執(zhí)行修改的解碼過程的恢復(fù)指令。該恢復(fù)單元進(jìn)一步被配置用于當(dāng)經(jīng)解碼的碼字未能符合編碼約束時(shí),執(zhí)行所存儲(chǔ)的恢復(fù)指令。在一個(gè)實(shí)施方式中,該解碼器是低密度奇偶校驗(yàn)解碼器并且其中該恢復(fù)單元被配置用于存儲(chǔ)和處理恢復(fù)指令,該恢復(fù)指令在由恢復(fù)單元執(zhí)行時(shí)使得該解碼器執(zhí)行附加的碼字校正迭代。在一個(gè)實(shí)施方式中,該恢復(fù)單元被配置用于存儲(chǔ)和處理恢復(fù)指令,該恢復(fù)指令在由恢復(fù)單元執(zhí)行時(shí)使得解碼器利用不同的解碼參數(shù)集合來執(zhí)行附加的解碼。在一個(gè)實(shí)施方式中,恢復(fù)單元被配置用于存儲(chǔ)和處理恢復(fù)指令,該恢復(fù)指令在由恢復(fù)單元執(zhí)行時(shí)使得解碼器調(diào)節(jié)碼字?jǐn)?shù)據(jù)并且對(duì)經(jīng)調(diào)節(jié)的碼字?jǐn)?shù)據(jù)進(jìn)行解碼。在一個(gè)實(shí)施方式中,恢復(fù)單元被配置用于在存儲(chǔ)器設(shè)備準(zhǔn)備從存儲(chǔ)器設(shè)備重新讀取解碼失敗的碼字時(shí),執(zhí)行所存儲(chǔ)的恢復(fù)指令。該恢復(fù)單元可以被配置用于如果碼字在恢復(fù)指令的執(zhí)行期間被校正,則取消即將進(jìn)行的碼字的重新讀取。在另一實(shí)施方式中,一種方法包括檢測(cè)碼字解碼失敗以及執(zhí)行存儲(chǔ)在解碼器中的恢復(fù)指令。該恢復(fù)指令修改針對(duì)碼字的解碼過程。該方法還包括返回執(zhí)行該恢復(fù)指令的結(jié)果。在一個(gè)實(shí)施方式中,該方法包括在檢測(cè)碼字失敗之前將恢復(fù)指令存儲(chǔ)在解碼器存儲(chǔ)器中。在一個(gè)實(shí)施方式中,該方法包括如果恢復(fù)指令的執(zhí)行并沒有產(chǎn)生有效的碼字,則從解碼器外部的計(jì)算組件接收恢復(fù)指令,并且執(zhí)行所接收的恢復(fù)指令。在一個(gè)實(shí)施方式中,一種設(shè)備包括存儲(chǔ)器設(shè)備,其被配置用于存儲(chǔ)被編碼為碼字的數(shù)據(jù);以及編碼器,其被配置用于根據(jù)解碼約束接收數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行編碼,并且將經(jīng)編碼的數(shù)據(jù)作為碼字存儲(chǔ)在存儲(chǔ)器設(shè)備中。該設(shè)備還包括解碼器,該解碼器被配置用于對(duì)從存儲(chǔ)器設(shè)備檢索的碼字進(jìn)行解碼。該解碼器包括恢復(fù)單元,該恢復(fù)單元被配置用于存儲(chǔ)恢復(fù)指令以及在發(fā)生碼字解碼失敗時(shí)執(zhí)行所存儲(chǔ)的恢復(fù)指令。對(duì)所存儲(chǔ)的恢復(fù)指令的執(zhí)行在由存儲(chǔ)器設(shè)備進(jìn)行的失敗碼字的重新讀取之前發(fā)生。
并入說明書并且構(gòu)成說明書一部分的附示了本公開的各種系統(tǒng)、方法和其他實(shí)施方式。應(yīng)當(dāng)理解,在附圖中所圖示的元件邊界(例如,框、框的群組或者其他形狀)表示邊界的一個(gè)示例。本領(lǐng)域普通技術(shù)人員將理解,在某些示例中,一個(gè)元件可以被設(shè)計(jì)成多個(gè)元件,或者多個(gè)元件可以被設(shè)計(jì)成一個(gè)元件。在某些示例中,被示為另一個(gè)元件的內(nèi)部組件的元件可以被實(shí)現(xiàn)為外部部件,并且反之亦然。此外,元件可以不按比例繪制。圖1圖示了與基于解碼器的數(shù)據(jù)恢復(fù)相關(guān)聯(lián)的裝置的一個(gè)實(shí)施方式。圖2圖示了與基于解碼器的數(shù)據(jù)恢復(fù)相關(guān)聯(lián)的串行連接解碼器的一個(gè)實(shí)施方式。圖3圖示了與基于解碼器的數(shù)據(jù)恢復(fù)相關(guān)聯(lián)的指令集的一個(gè)實(shí)施方式。圖4圖示了與基于解碼器的數(shù)據(jù)恢復(fù)相關(guān)聯(lián)的方法的一個(gè)實(shí)施方式。圖5圖示了與基于解碼器的數(shù)據(jù)恢復(fù)相關(guān)聯(lián)的方法的一個(gè)實(shí)施方式。
具體實(shí)施例方式在此,描述了與基于解碼器的數(shù)據(jù)恢復(fù)相關(guān)聯(lián)的方法、系統(tǒng)和其他實(shí)施方式的示例。在存儲(chǔ)器通道系統(tǒng)中,運(yùn)行時(shí)約束以及面積、吞吐量、功耗和糾錯(cuò)性能要求之間的折衷決定了最大可允許的即時(shí)(on-the-fly)解碼延遲。例如,磁存儲(chǔ)記錄中使用的處理流水線開始于讀取與位的匯集相關(guān)聯(lián)的所有數(shù)據(jù)位,通常稱為扇區(qū)。低密度奇偶校驗(yàn)(LDPC)解碼可以在接收到整個(gè)扇區(qū)之后立即開始。解碼器重復(fù)地運(yùn)行以校正碼字,直到獲得有效的碼字(即要求滿足所有編碼約束的條件),或者直到超過了預(yù)先指定的解碼延遲時(shí)間為止。如果解碼器在達(dá)到最大延遲之后還未能找到有效的碼字,則宣布解碼失敗。在解碼失敗的情況下,編碼系統(tǒng)可以忽略該錯(cuò)誤、執(zhí)行重試過程和/或請(qǐng)求對(duì)未能解碼的碼字的重新讀取或者重新傳遞。如果請(qǐng)求了重新讀取,則在存儲(chǔ)器讀取設(shè)備訪問包含有碼字的扇區(qū)時(shí),存在一定量的周轉(zhuǎn)時(shí)間。周轉(zhuǎn)時(shí)間可以在存儲(chǔ)器盤旋轉(zhuǎn)到讀取頭之下的位置期間發(fā)生。在一個(gè)實(shí)施方式中,在此公開的基于解碼器的數(shù)據(jù)恢復(fù)裝置和方法使得編碼系統(tǒng)能夠請(qǐng)求對(duì)碼字的重新讀取以及執(zhí)行恢復(fù)指令以在存儲(chǔ)器讀取設(shè)備的周轉(zhuǎn)時(shí)間期間重試對(duì)碼字的解碼。參照?qǐng)D1,其示意性地圖示了存儲(chǔ)器編碼系統(tǒng)100的一個(gè)實(shí)施方式。編碼系統(tǒng)100 包括將經(jīng)編碼數(shù)據(jù)(即,碼字)存儲(chǔ)在存儲(chǔ)器扇區(qū)(這些扇區(qū)的一部分被標(biāo)記為A到N)中的存儲(chǔ)器設(shè)備110。存儲(chǔ)器設(shè)備110被示為在讀取頭(未示出)之下按照箭頭的方向旋轉(zhuǎn)的盤。在此描述的基于解碼器的數(shù)據(jù)恢復(fù)可以與作為存儲(chǔ)器編碼系統(tǒng)的一部分的任何存儲(chǔ)器設(shè)備一起使用。編碼系統(tǒng)還包括編碼通道120,該編碼通道120在數(shù)據(jù)和對(duì)存儲(chǔ)在存儲(chǔ)器設(shè)備110上的數(shù)據(jù)進(jìn)行編碼的碼字之間進(jìn)行翻譯。編碼器130可以使用前饋處理,以根據(jù)編碼約束將待寫入到存儲(chǔ)器設(shè)備110的進(jìn)入數(shù)據(jù)與附加的錯(cuò)誤校驗(yàn)信息進(jìn)行組合,以形成碼字。碼字存儲(chǔ)在存儲(chǔ)器110上的扇區(qū)中。以下將更詳細(xì)地描述包括低密度奇偶校驗(yàn)(LDPC) 編碼的一個(gè)示例編碼方法。
5
當(dāng)從存儲(chǔ)器設(shè)備110讀取數(shù)據(jù)時(shí),包含有所請(qǐng)求數(shù)據(jù)的碼字被傳遞到編碼通道120。通常,對(duì)所傳遞的碼字執(zhí)行某些種類的前端處理140 (例如,過濾),并且將經(jīng)處理的碼字輸入到解碼器150。解碼器150將碼字相對(duì)于編碼約束進(jìn)行校驗(yàn),以確定碼字是否有效(即,滿足編碼約束,并且因此被推定為正確的)。解碼器150可以使用諸如 Berlekamp-Massey算法之類的前饋解碼算法,該算法具有檢測(cè)和校正錯(cuò)誤的能力。如果碼字并不滿足編碼約束,則解碼器150嘗試校正碼字,從而使得碼字滿足編碼約束。通常這是迭代過程,在該過程中,對(duì)碼字進(jìn)行調(diào)節(jié)(例如,選擇性擦除或者數(shù)據(jù)再同步),并且將經(jīng)修改的碼字相對(duì)于編碼約束進(jìn)行校驗(yàn)。如果獲得了有效的碼字,則解碼器150繼而對(duì)碼字進(jìn)行解碼,以恢復(fù)所請(qǐng)求的數(shù)據(jù)。編碼通道120繼而輸出所請(qǐng)求的數(shù)據(jù)。在一個(gè)實(shí)施方式中,編碼通道120使用LDPC編碼技術(shù)。LDPC編碼技術(shù)由于其高效率和可靠性而在磁數(shù)據(jù)存儲(chǔ)應(yīng)用、無線、有線以及其他通信應(yīng)用中廣泛使用。在LDPC編碼中,將待編碼的位串與稀疏生成矩陣相乘以產(chǎn)生碼字。將從存儲(chǔ)器讀取的碼字與稀疏奇偶校驗(yàn)矩陣相乘。如果相乘的結(jié)果(稱為校驗(yàn)子)等于零,則碼字有效。如果校驗(yàn)子不等于零,則碼字無效,并且通過迭代地改變一個(gè)或者多個(gè)位的值和將經(jīng)修改的碼字相對(duì)于約束進(jìn)行校驗(yàn)以修改碼字。在一定數(shù)目的迭代之后,如果還未獲得有效的碼字,則宣布解碼失敗。在某些實(shí)施方式中,解碼器150被實(shí)現(xiàn)為串行連接解碼器。圖2圖示了串行連接解碼器250,該解碼器250包括與LDPC解碼器270相結(jié)合的軟輸出維特比算法(SOVA)通道解碼器沈0。SOVA解碼器向LDPC解碼器提供估計(jì)的碼字,該估計(jì)的碼字包括針對(duì)碼字中的位的置信水平。SOVA解碼器260可以執(zhí)行迭代,以獲得將要相對(duì)于編碼約束進(jìn)行校驗(yàn)并且可能由LDPC解碼器270進(jìn)行校正的估計(jì)的碼字。SOVA解碼器260通常被稱為“內(nèi)部”解碼器,而LDPC解碼器270被稱為“外部”解碼器。由SOVA解碼器260執(zhí)行的“內(nèi)部迭代”的數(shù)目與由LDPC解碼器270執(zhí)行的“外部迭代”的數(shù)目的比值可以影響解碼結(jié)果。在一個(gè)實(shí)施方式中,作為默認(rèn)的是,針對(duì)每個(gè)內(nèi)部迭代執(zhí)行5個(gè)外部迭代?;氐綀D1,解碼器150包括恢復(fù)單元160,該恢復(fù)單元160存儲(chǔ)可以由解碼器150 在解碼失敗的情況下執(zhí)行的恢復(fù)指令163的選集。由于恢復(fù)指令163存儲(chǔ)在解碼器中,所以恢復(fù)單元160可以在不與解碼器150外部的計(jì)算組件(例如,解碼器固件170)進(jìn)行交互的情況下執(zhí)行恢復(fù)指令。將參照?qǐng)D3提供恢復(fù)指令的示例。在某些實(shí)施方式中,恢復(fù)單元160能夠在存儲(chǔ)器設(shè)備110準(zhǔn)備重新讀取解碼失敗的碼字時(shí)執(zhí)行所存儲(chǔ)的恢復(fù)指令163。例如,如果失敗的碼字存儲(chǔ)在扇區(qū)A中,并且存儲(chǔ)器設(shè)備110 (即,盤)已經(jīng)旋轉(zhuǎn)到讀取扇區(qū)B,則所存儲(chǔ)的恢復(fù)指令163可以由恢復(fù)單元160執(zhí)行,而同時(shí)盤一直旋轉(zhuǎn)經(jīng)過扇區(qū)N到達(dá)位置扇區(qū)A以用于讀取。如果碼字在恢復(fù)指令的執(zhí)行期間被校正,則恢復(fù)單元160可以取消即將發(fā)生的對(duì)扇區(qū)的重新讀取。解碼器150可以被配置用于使得由用戶啟用或者禁用這種“擴(kuò)展的讀取模式”(即,在重新讀取失敗的碼字之前自動(dòng)執(zhí)行恢復(fù)指令)?;謴?fù)單元160還可以包括恢復(fù)接口 167,該恢復(fù)接口 167被配置用于從解碼器外部的計(jì)算組件(例如,解碼器固件170)接收恢復(fù)指令,并且向計(jì)算組件輸出恢復(fù)指令結(jié)果。 恢復(fù)接口 167可以用于借助于從解碼器固件170向解碼器150提供的指令來執(zhí)行附加的重試操作。恢復(fù)接口 167可以是診斷總線,在該診斷總線上可以寫入指令并且可以讀取結(jié)果。在某些實(shí)施方式中,解碼器被配置用于進(jìn)入這種“重試模式”,在該模式中,如果在擴(kuò)展的讀取模式期間并未獲得有效的碼字,則借助于恢復(fù)接口自動(dòng)地接收恢復(fù)指令。通常,重試對(duì)碼字進(jìn)行解碼包括解碼器寄存器編程、信號(hào)輪詢以及中斷管理的序列,該序列需要時(shí)間和編程專門技術(shù)。在此描述的恢復(fù)指令集提供了用于執(zhí)行編碼器的低層級(jí)編程的接口,以供采取各種方式重試進(jìn)行編碼?;謴?fù)指令對(duì)應(yīng)于原語操作,這些原語操作對(duì)用于解碼的基本解碼器操作進(jìn)行控制?;謴?fù)指令可以被視為與對(duì)微處理器操作的匯編語言類似?;謴?fù)指令集因而在不需要對(duì)解碼器的內(nèi)部工作的專門知識(shí)的情況下提供供用戶執(zhí)行各種重試過程的更直觀的方式?;謴?fù)指令的選集可以存儲(chǔ)在解碼器中,以供由解碼器在解碼失敗的情況下自動(dòng)執(zhí)行。所存儲(chǔ)的恢復(fù)指令可以由解碼器在不與外部計(jì)算組件(例如,解碼固件)交互的情況下執(zhí)行。這種自包含的、基于解碼器的方法極大地減小了執(zhí)行重試所需的時(shí)間量。這是由于典型的解碼器按照以下速度的大約10倍運(yùn)行,該速度為從這些外部計(jì)算組件檢索恢復(fù)指令所需的與固件或者微處理器通信的速度。在某些實(shí)施方式中,所存儲(chǔ)的恢復(fù)指令可以在當(dāng)存儲(chǔ)器盤準(zhǔn)備重新讀取扇區(qū)時(shí)該存儲(chǔ)器盤旋轉(zhuǎn)一周所需的時(shí)間內(nèi)開始和完成。如果所存儲(chǔ)的指令的執(zhí)行產(chǎn)生有效的碼字,則可以取消重新讀取。圖3圖示針對(duì)16位總線配置的恢復(fù)指令的集合300的一個(gè)實(shí)施方式的一般格式。 來自該恢復(fù)指令集合300的選集可以存儲(chǔ)在恢復(fù)單元中,以供由解碼器在解碼失敗時(shí)自動(dòng)執(zhí)行?;謴?fù)指令還可以由解碼器外部的解碼器固件或者其他計(jì)算組件提供。在解碼器配置期間,編碼系統(tǒng)用戶可以選擇在針對(duì)解碼器中的存儲(chǔ)的特定環(huán)境中工作最佳的特定恢復(fù)指令。如果執(zhí)行存儲(chǔ)在解碼器中的恢復(fù)指令未能產(chǎn)生有效的碼字,則用戶可以利用恢復(fù)接口來向解碼器提供附加的恢復(fù)指令?;謴?fù)單元被配置用于識(shí)別和執(zhí)行借助于恢復(fù)接口輸入的恢復(fù)指令。恢復(fù)指令用來在訴諸于從存儲(chǔ)器設(shè)備重新讀取數(shù)據(jù)之前對(duì)失敗的碼字執(zhí)行附加的解碼操作。為了執(zhí)行這些解碼操作,恢復(fù)指令允許對(duì)寄存器位的讀取和寫入、執(zhí)行所選擇的解碼操作以及傳遞解碼指令的結(jié)果。可以選擇恢復(fù)指令的集合以實(shí)現(xiàn)旨在對(duì)失敗的碼字進(jìn)行解碼的任何數(shù)目的恢復(fù)算法?;謴?fù)指令的前三位對(duì)應(yīng)于操作碼。如果前三位為000,則指令為無操作指令(在圖3中未示出)。參照指令310,寄存器寫入由操作碼001指定,并且最后8個(gè)位中的數(shù)據(jù)被寫入到地址被包含在位3-7中的寄存器。如指令320中所示,操作碼010請(qǐng)求對(duì)其地址包含在位3-7中的寄存器的讀取。響應(yīng)于該讀取請(qǐng)求,由解碼器提供由操作碼101指定的返回指令(指令330)。返回指令將其地址包含在位3-7中的寄存器中的所請(qǐng)求的數(shù)據(jù)返回到最后8個(gè)位中。指令340 (操作碼100)指定忙碌狀態(tài)。指令350 (操作碼350)指定恢復(fù)單元為空閑。如果第四和第五個(gè)位被設(shè)置為01,則這意味著上一命令并未返回錯(cuò)誤(例如,解碼失敗)。因此,指令350將傳達(dá)恢復(fù)單元已經(jīng)完成了恢復(fù)努力,并且碼字被成功地解碼。指令360(操作碼350)指定恢復(fù)單元為空閑。如果第四和第五個(gè)位被設(shè)置為01,則這意味著上一命令確實(shí)返回了錯(cuò)誤。因此,指令360傳達(dá)恢復(fù)單元已經(jīng)完成了恢復(fù)努力,并且碼字未被解碼。指令370(操作碼011)允許選擇在位3-6中識(shí)別的恢復(fù)算法。如果指令為恢復(fù)努力中的最后一個(gè)指令,則位7被設(shè)置為1。在執(zhí)行最后一個(gè)指令之后,解碼器寄存器被復(fù)位到它們?cè)趫?zhí)行第一個(gè)恢復(fù)指令之前所保持的值?;謴?fù)指令可以被構(gòu)建成執(zhí)行包含旨在重試對(duì)碼字進(jìn)行解碼的任何數(shù)目的操作的恢復(fù)算法。現(xiàn)在將出于說明的目的描述若干示例指令。一種典型的恢復(fù)指令為“從存儲(chǔ)器解碼”算法。這提示解碼器重新啟動(dòng)對(duì)與初始失敗的解碼對(duì)應(yīng)的經(jīng)緩存的數(shù)據(jù)的解碼。單獨(dú)使用時(shí),簡(jiǎn)單地再次從存儲(chǔ)器解碼將通常不會(huì)產(chǎn)生改善的解碼。因此,這種指令將通常與改變解碼過程中參數(shù)的其他指令一起使用,該解碼過程將在重解碼操作期間執(zhí)行。例如,回想圖2的串行連接解碼器,“從存儲(chǔ)器解碼”指令可以與改變外部迭代與內(nèi)部迭代的比值的“設(shè)置外部迭代”指令和“設(shè)置內(nèi)部迭代”指令進(jìn)行組合。源自改變?cè)摫戎档母淖兊膭?dòng)態(tài)通常有助于LDPC解碼器移出趨向碼字收斂的局部最小值。恢復(fù)指令可以包括硬件原語指令,該硬件原語指令開始硬件中的某一事件鏈。這些指令可以是以下指令用于重新啟動(dòng)解碼器硬件的各種元件的指令、執(zhí)行診斷評(píng)估的指令、或者對(duì)收集的數(shù)據(jù)做出調(diào)節(jié)的指令。一些恢復(fù)指令重新啟動(dòng)解碼過程的一個(gè)方面。重新啟動(dòng)指令包括“從存儲(chǔ)器解碼”指令和“再同步”指令,該“再同步”指令重新啟動(dòng)同步器和解碼器。其他指令執(zhí)行診斷操作,例如“計(jì)算校驗(yàn)子權(quán)重”指令和“計(jì)算校驗(yàn)子”指令。某些指令可以調(diào)節(jié)正在被解碼的數(shù)據(jù),諸如“執(zhí)行噪聲偏置”指令和“執(zhí)行位反轉(zhuǎn)”指令。恢復(fù)指令還可以被設(shè)計(jì)用于改變通常由解碼器固件控制的解碼器參數(shù)的值。響應(yīng)于進(jìn)入重試模式,對(duì)用戶可編程的解碼參數(shù)進(jìn)行寄存。這些參數(shù)可以由恢復(fù)指令改變,但是它們將響應(yīng)于退出重試模式而被恢復(fù)。這提供了用于在正常解碼和重試模式解碼之間來回切換解碼過程的快速且明確的方式??梢愿淖兊膮?shù)的一些示例包括內(nèi)部或者外部迭代的數(shù)目、數(shù)據(jù)縮放因子、數(shù)據(jù)飽和限制以及用于診斷的閾值?;謴?fù)指令集還限定了指示當(dāng)解碼器對(duì)每個(gè)指令做出反應(yīng)并且完成每個(gè)指令時(shí)解碼器硬件的各種狀態(tài)的響應(yīng)。固件在等待關(guān)于下一步發(fā)布什么指令的指示時(shí)可以輪詢恢復(fù)接口(例如,診斷總線)。圖4是概述了基于解碼器的恢復(fù)方法400的一個(gè)實(shí)施方式的流程圖。在410處,該方法包括檢測(cè)碼字解碼失敗。在420處,該方法包括執(zhí)行存儲(chǔ)在解碼器中的恢復(fù)指令。在 430處,該方法包括返回執(zhí)行恢復(fù)指令的結(jié)果。該方法400還可以包括在解碼器配置期間將恢復(fù)指令存儲(chǔ)在解碼器中?;诮獯a器的恢復(fù)方法400可以由解碼器在不需要與解碼器外部的計(jì)算組件交互的情況下在準(zhǔn)備重新讀取碼字期間執(zhí)行。圖5是概述了基于解碼器的恢復(fù)方法500的一個(gè)實(shí)施方式的流程圖。在510處, 該方法包括檢測(cè)碼字解碼失敗。在520處,該方法包括執(zhí)行存儲(chǔ)在解碼器中的恢復(fù)指令。 在530處,該方法包括返回執(zhí)行恢復(fù)指令的結(jié)果。在540處,該方法包括確定是否已經(jīng)獲得了有效的碼字,并且如果已經(jīng)獲得了有效的碼字,則方法500結(jié)束。如果還未獲得有效的碼字,則在550處,該方法包括進(jìn)入重試模式,在該重試模式中,從解碼器外部的計(jì)算組件接收恢復(fù)指令并且由解碼器執(zhí)行恢復(fù)指令。在560處,該方法包括返回執(zhí)行恢復(fù)指令的結(jié)果。在方法400和方法500中,恢復(fù)指令可以使得解碼器對(duì)碼字執(zhí)行附加的校正迭代。 恢復(fù)指令可以使得解碼器對(duì)碼字執(zhí)行診斷過程?;謴?fù)指令可以使得解碼器調(diào)節(jié)碼字?jǐn)?shù)據(jù), 并且對(duì)經(jīng)調(diào)節(jié)的碼字?jǐn)?shù)據(jù)進(jìn)行解碼。恢復(fù)指令可以使得解碼器調(diào)節(jié)解碼器參數(shù)。恢復(fù)指令可以使得解碼器輸出響應(yīng),該響應(yīng)將解碼器狀態(tài)傳遞給解碼器外部的計(jì)算組件。以下包括對(duì)在此采用的所選擇的術(shù)語的定義。定義包括落入術(shù)語范圍并且可以用于實(shí)現(xiàn)的組件的各種示例和/或形式。示例并非旨在限制。術(shù)語的單數(shù)形式和復(fù)數(shù)形式兩者都在定義之內(nèi)。對(duì)“一個(gè)實(shí)施方式”、“實(shí)施方式”、“一個(gè)示例”、“示例”等的參考指示所描述的實(shí)施方式或者示例可以包括特定特征、結(jié)構(gòu)、特性、屬性、元件或者限定,但是并非每個(gè)實(shí)施方式或者示例都必須包括該特定特征、結(jié)構(gòu)、特性、屬性、元件或者限定。此外,重復(fù)使用短語“在一個(gè)實(shí)施方式中”并不必要地指代同一實(shí)施方式,盡管其可以指代同一實(shí)施方式。盡管為了便于說明的目的,將所圖示的方法示出并且描述為一系列塊。但是該方法并不被這些塊的順序所限制,而是某些塊可以按照與所示出和描述的塊的不同的順序發(fā)生和/或與其他塊并行發(fā)生。此外,可以使用少于所有所圖示的塊來實(shí)現(xiàn)該方法。這些塊可以被組合或者分隔到多個(gè)組件中。此外,附加的和/或備選的方法可以采用附加的但是未圖示的塊。就術(shù)語“包括”在詳細(xì)描述中或者權(quán)利要求中所使用的程度而言,其旨在以與如下類似的方式包括,該方式為在術(shù)語“包括”用作權(quán)利要求中的過渡詞時(shí)的解釋方式。盡管已經(jīng)通過描述示例圖示了系統(tǒng)、方法等的示例,并且盡管已經(jīng)以相當(dāng)詳細(xì)的方式描述了這些示例,但是申請(qǐng)人并不旨在將所附權(quán)利要求的范圍限制或者以任何方式限定到這樣的細(xì)節(jié)。當(dāng)然,為了描述在此所描述的系統(tǒng)、方法等,不可能描述組件或者方法的每個(gè)可行組合。因此,本公開并不限于所示出和描述的具體細(xì)節(jié)、代表性的裝置和說明性的示例。因此,本申請(qǐng)旨在涵蓋落入所附權(quán)利要求范圍內(nèi)的各種改變、修改和變形。
權(quán)利要求
1.一種裝置,包括解碼器,其被配置用于對(duì)碼字執(zhí)行解碼過程,以驗(yàn)證所述碼字符合編碼約束;以及其中所述解碼器包括恢復(fù)單元,所述恢復(fù)單元被配置用于存儲(chǔ)用于執(zhí)行修改的解碼過程的恢復(fù)指令,其中所述恢復(fù)單元還被配置用于當(dāng)經(jīng)解碼的碼字不符合所述編碼約束時(shí)執(zhí)行所存儲(chǔ)的恢復(fù)指令。
2.根據(jù)權(quán)利要求1所述的裝置,其中在對(duì)所述碼字執(zhí)行所述解碼過程之前將所述恢復(fù)指令存儲(chǔ)在所述解碼器上。
3.根據(jù)權(quán)利要求1所述的裝置,其中所述恢復(fù)單元還包括恢復(fù)接口,所述恢復(fù)接口被配置用于從所述解碼器外部的計(jì)算組件接收恢復(fù)指令并且向所述計(jì)算組件輸出恢復(fù)指令結(jié)果。
4.根據(jù)權(quán)利要求1所述的裝置,其中所述解碼器包括低密度奇偶校驗(yàn)解碼器并且進(jìn)一步其中所述恢復(fù)單元被配置用于存儲(chǔ)和處理恢復(fù)指令,所述恢復(fù)指令在由所述恢復(fù)單元執(zhí)行時(shí)使得所述解碼器執(zhí)行附加的碼字校正迭代。
5.根據(jù)權(quán)利要求1所述的裝置,其中所述解碼器包括低密度奇偶校驗(yàn)解碼器并且進(jìn)一步其中所述恢復(fù)單元被配置用于存儲(chǔ)和處理恢復(fù)指令,所述恢復(fù)指令在由所述恢復(fù)單元執(zhí)行時(shí)使得所述解碼器利用不同的解碼參數(shù)集合來執(zhí)行附加的解碼。
6.根據(jù)權(quán)利要求1所述的裝置,其中所述解碼器包括低密度奇偶校驗(yàn)解碼器并且進(jìn)一步其中所述恢復(fù)單元被配置用于存儲(chǔ)和處理恢復(fù)指令,所述恢復(fù)指令在由所述恢復(fù)單元執(zhí)行時(shí)使得所述解碼器調(diào)節(jié)碼字?jǐn)?shù)據(jù)并且對(duì)經(jīng)調(diào)節(jié)的碼字?jǐn)?shù)據(jù)進(jìn)行解碼。
7.根據(jù)權(quán)利要求1所述的裝置,其中所述恢復(fù)單元被配置用于在存儲(chǔ)器設(shè)備準(zhǔn)備從存儲(chǔ)器介質(zhì)重新讀取解碼失敗的所述碼字時(shí)執(zhí)行所述所存儲(chǔ)的恢復(fù)指令。
8.根據(jù)權(quán)利要求1所述的裝置,其中所述恢復(fù)單元被配置用于如果所述碼字在所述恢復(fù)指令的執(zhí)行期間被校正,則取消即將進(jìn)行的對(duì)于所述碼字的重新讀取。
9.一種方法,包括檢測(cè)碼字解碼失??;執(zhí)行存儲(chǔ)在解碼器中的恢復(fù)指令,其中所述恢復(fù)指令修改針對(duì)碼字的解碼過程;以及返回執(zhí)行所述恢復(fù)指令的結(jié)果。
10.根據(jù)權(quán)利要求9所述的方法,還包括在檢測(cè)所述碼字失敗之前將所述恢復(fù)指令存儲(chǔ)在解碼器存儲(chǔ)器中。
11.根據(jù)權(quán)利要求9所述的方法,還包括如果所述恢復(fù)指令的執(zhí)行并不產(chǎn)生有效的碼字,則從所述解碼器外部的計(jì)算組件接收恢復(fù)指令,并且執(zhí)行所接收的恢復(fù)指令。
12.根據(jù)權(quán)利要求9所述的方法,其中執(zhí)行所述恢復(fù)指令包括對(duì)所述碼字執(zhí)行附加的校正迭代。
13.根據(jù)權(quán)利要求9所述的方法,其中執(zhí)行所述恢復(fù)指令包括對(duì)所述碼字執(zhí)行診斷過程。
14.根據(jù)權(quán)利要求9所述的方法,其中執(zhí)行所述恢復(fù)指令包括調(diào)節(jié)所述碼字并且對(duì)經(jīng)調(diào)節(jié)的碼字進(jìn)行解碼。
15.根據(jù)權(quán)利要求9所述的方法,其中執(zhí)行所述恢復(fù)指令包括調(diào)節(jié)解碼器參數(shù)。
16.根據(jù)權(quán)利要求9所述的方法,其中執(zhí)行所述恢復(fù)指令包括輸出響應(yīng),所述響應(yīng)向所述解碼器外部的計(jì)算組件傳遞解碼器狀態(tài)。
17.一種設(shè)備,包括存儲(chǔ)器設(shè)備,其被配置用于存儲(chǔ)被編碼為碼字的數(shù)據(jù);編碼器,其被配置用于根據(jù)解碼約束接收數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行編碼,并且將經(jīng)編碼的數(shù)據(jù)作為碼字存儲(chǔ)在所述存儲(chǔ)器設(shè)備中;解碼器,其配置用于對(duì)從所述存儲(chǔ)器設(shè)備檢索的碼字進(jìn)行解碼;以及其中所述解碼器包括恢復(fù)單元,所述恢復(fù)單元被配置用于存儲(chǔ)恢復(fù)指令并且在發(fā)生碼字解碼失敗時(shí)執(zhí)行所存儲(chǔ)的恢復(fù)指令,并且進(jìn)一步其中所述所存儲(chǔ)的恢復(fù)指令的執(zhí)行在由所述存儲(chǔ)器設(shè)備進(jìn)行的失敗碼字的重新讀取之前發(fā)生。
18.根據(jù)權(quán)利要求17所述的設(shè)備,其中所述恢復(fù)單元還包括恢復(fù)接口,所述恢復(fù)接口被配置用于從所述解碼器外部的計(jì)算組件接收恢復(fù)指令并且向所述計(jì)算組件輸出恢復(fù)指令結(jié)果。
19.根據(jù)權(quán)利要求17所述的設(shè)備,其中所述解碼器包括低密度奇偶校驗(yàn)解碼器并且進(jìn)一步其中所述恢復(fù)單元被配置用于存儲(chǔ)和處理恢復(fù)指令,所述恢復(fù)指令在由所述恢復(fù)單元執(zhí)行時(shí)使得所述解碼器執(zhí)行附加的碼字校正迭代。
全文摘要
本發(fā)明涉及基于解碼器的數(shù)據(jù)恢復(fù)。描述了與基于解碼器的數(shù)據(jù)恢復(fù)相關(guān)聯(lián)的系統(tǒng)、方法和其他實(shí)施方式。根據(jù)一個(gè)實(shí)施方式,一種裝置包括解碼器,該解碼器被配置用于對(duì)碼字執(zhí)行解碼過程,以驗(yàn)證碼字符合編碼約束。該解碼器包括配置用于存儲(chǔ)用于執(zhí)行修改的解碼過程的恢復(fù)指令的恢復(fù)單元。該恢復(fù)單元還被配置用于當(dāng)經(jīng)解碼的碼字不符合編碼約束時(shí)執(zhí)行所存儲(chǔ)的恢復(fù)指令。
文檔編號(hào)H03M13/11GK102420615SQ201110280519
公開日2012年4月18日 申請(qǐng)日期2011年9月7日 優(yōu)先權(quán)日2010年9月8日
發(fā)明者E·楊 申請(qǐng)人:馬維爾國際貿(mào)易有限公司