避免對渦輪乘積碼誤校正的方案的制作方法
【專利摘要】一種方法,包括識別包括失敗的成員碼的被卡住錯誤圖案以及通過以下步驟來解碼被卡住錯誤圖案:進行針對失敗的成員碼的可能的翻轉圖案;在進行可能的翻轉圖案之后獲得若干成功解碼的碼字;以及從若干成功解碼的碼字選擇最可能的碼字。
【專利說明】
避免對渦輪乘積碼誤校正的方案
[0001] 相關申請的交叉引用
[0002] 本申請要求2015年2月25日提交的申請號為62/120627、名稱為"避免對渦輪乘積 碼誤校正的方案(SCHEME TO AVOID MISC0RRECTI0N FOR TURBO PRODUCT CODES)" 的美國 臨時申請的權益,其全部內容通過引用合并于此。
技術領域
[0003] 本公開的示例性實施例涉及信號處理和編碼技術。
【背景技術】
[0004] 磁儲存技術最常用于儲存數據,但是當前電子設備的較小重量和更快讀取/寫入 操作需求使磁儲存技術不太令人滿意。基于NAND的技術能夠滿足高密度數據儲存設備的要 求,但是這種技術是昂貴的。存在降低基于NAND的技術的成本同時保持性能水平的需求。
【發明內容】
[0005] 本發明的方面包括方法,所述方法包括識別包括失敗的成員碼的被卡住錯誤圖案 以及通過以下步驟來解碼被卡住錯誤圖案:進行針對失敗的成員碼的可能的翻轉圖案;在 進行可能的翻轉圖案之后獲得若干成功解碼的碼字;以及從若干成功解碼的碼字選擇最可 能的碼字。
[0006] 本發明的另外方面包括系統,所述系統可以包括用于校正數據的后處理器,其被 配置為:進行針對被卡住錯誤圖案的失敗的成員碼的可能的翻轉圖案;在進行可能的翻轉 圖案之后獲得若干成功解碼的碼字;以及從若干成功解碼的碼字選擇最可能的碼字。所述 系統還可以包括被卡住渦輪乘積碼解碼器,其被配置為接收由后處理器校正的數據。
[0007] 本發明的附加方面包括存儲器件。所述存儲器件可以包括具有后處理器的控制 器,其被配置為:進行針對被卡住錯誤圖案的失敗的成員碼的可能的翻轉圖案;在進行可能 的翻轉圖案之后獲得若干成功解碼的碼字;以及從若干成功解碼的碼字選擇最可能的碼 字。
【附圖說明】
[0008] 圖1圖示包括應用本發明的實施例的存儲系統的數據處理系統。
[0009] 圖2是根據本發明的實施例的包括編碼器和解碼器的存儲系統的框圖。
[0010] 圖3是圖示根據本發明的方面的誤校正避免(miscorrection avoidance)的示圖。
[0011] 圖4、圖5、圖6A、圖6B和圖7圖示根據本發明的方面的被卡住錯誤模式的示例。
[0012] 圖8是圖示根據本發明的方面的誤校正避免的示圖。
[0013] 圖9是根據本發明的方面的用于解碼的步驟的流程圖。
[0014] 圖10是根據本發明的方面的用于識別解碼的碼字(codeword)的步驟的流程圖。
[0015] 圖11是圖示根據本發明的方面的公開的誤校正避免方案的性能的圖表。
【具體實施方式】
[0016] 以下將參照附圖來更詳細地描述各種實施例。然而,本發明可以以不同的形式實 施,且不應被解釋為局限于本文所闡述的實施例。更確切地說,這些實施例被提供使得本公 開將是徹底和完整的,并且這些實施例將把本發明的范圍充分傳達給本領域技術人員。貫 穿本公開,相同的附圖標記在本發明的各種圖和實施例中指示相同的部分。
[0017] 本發明可以以許多方式來實施,包括作為過程、裝置、系統、事物的組合、在計算機 可讀儲存介質上實施的計算機程序產品、和/或處理器(諸如被配置為執行儲存在耦接至處 理器的存儲器上的指令和/或由耦接至處理器的存儲器提供的指令的處理器)。在本說明書 中,這些實施方式或本發明可采取的任何其它形式可以被稱為技術。一般地,公開的過程的 步驟的順序在本發明的范圍內可以變化。除非另外說明,否則描述為被配置為執行任務的 部件(諸如處理器或存儲器)可以被實施為被臨時配置為在給定時間執行任務的通用部件 或被制造為執行任務的特定部件。如本文所使用的,術語"處理器"是指被配置為處理數據 (諸如計算機程序指令)的一個或更多個器件、電路和/或處理核心。
[0018] 降低基于NAND的技術的成本的一種方法包括按比例縮小該過程,但是按比例縮小 的過程使性能退化。這種性能損失可以通過使用先進的信號處理和編碼技術來補償。博斯_ 喬赫里-霍克文黑姆(Bose-Chaudhuri-Hocquenghem,BCH)碼和低密度奇偶校驗(LDPC)碼已 被用于確保數據完整性。對于BCH碼,主要缺點在于它們不能用于軟判決解碼,使得這些碼 不理想。LDPC碼提供良好的硬判決解碼性能和軟判決解碼性能。然而,LDPC解碼器的復雜度 相當高,這使得這種方案對于硬件實施是昂貴的。以下公開和描述一種可以在較低硬件復 雜度情況下提供高性能增益的先進編碼技術。
[0019] 禍輪乘積碼(turbo product code,TPC)被認為是與LDPC碼相比可以以更低的硬 件復雜度提供顯著增益的先進編碼技術。在硬判決解碼中,TPC提供與BCH碼和LDPC碼相比 而言顯著的性能增益。在軟判決解碼中,TPC實現與LDPC碼接近的性能增益。
[0020] TPC被認為是與LDPC碼相比可以以更低的硬件復雜度提供顯著增益的先進編碼技 術。在硬判決解碼中,TPC提供與BCH碼和LDPC碼相比而言顯著的性能增益。在軟判決解碼 中,TPC實現與LDPC碼接近的性能增益。
[0021] 對于各種類型的儲存器(諸如基于NAND的儲存器),總是期望可以在低編碼/解碼 復雜度情況下提供更好的性能增益的更好的錯誤校正碼。在整個數據儲存產業中,為了數 據完整性最常使用低密度奇偶校驗(LDPC)碼和BCH碼。在過去,已經探索渦輪乘積碼的使 用,并且已經顯示這些碼可以在低編碼/解碼復雜度情況下提供顯著的性能增益。在渦輪乘 積碼中,在解碼期間的誤校正是主要問題。在解碼器解碼成不是正確碼字的碼字時發生誤 校正。對成員碼(constituent code)(例如,BCH碼)的這些誤校正將更多的錯誤引入接收到 的碼字(例如,4KB大小的碼字)中,這使得碼字解碼不成功。
[0022]如果可以從數據中移除這些誤校正,則可以容易地用常規迭代解碼器來成功地解 碼碼字。然而,不使用任何奇偶校驗的誤校正避免是相當困難的,且不存在能夠保證對BCH 碼避免誤校正的已知技術。本文描述用于在不使用任何奇偶檢驗的情況下在硬判決解碼中 避免誤校正的技術。本公開的方案提供接近精靈(genie)誤校正避免(即,精靈知道所有信 息)的性能增益。
[0023]結果,需要一種先進編碼技術來在使用渦輪乘積碼的系統中在性能和吞吐量方面 提供增益。
[0024]在一些實施例中,本發明將應用至圖1中所示的數據處理系統。
[0025] 圖1圖示包括應用本發明的實施例的存儲系統的數據處理系統100。圖1中所示的 數據處理系統100僅用于說明。在不脫離本公開的范圍的情況下,可以使用數據處理系統 100的其他結構。雖然圖1圖示數據處理系統100的一個示例,但是可以對圖1作出各種改變。 例如,數據處理系統1 〇〇可以包括元件中的任一元件,或者可以在任何合適的布置中不包括 元件中的任一元件。
[0026] 參照圖1,數據處理系統100可以包括主機102和存儲系統110。
[0027] 例如,主機102可以包括諸如移動電話、MP3播放器和膝上型計算機的便攜式電子 設備或者諸如臺式計算機、游戲機、TV和投影儀的電子設備。
[0028] 存儲系統110可以響應于來自主機102的請求而操作,具體地,儲存要被主機102訪 問的數據。換句話說,存儲系統110可以用作主機102的主存儲系統或輔助存儲系統。存儲系 統110可以根據要與主機102電耦接的主機接口的協議而用各種類型的儲存設備中的任意 一種來實施。存儲系統110可以用諸如固態驅動器(SSD)、多媒體卡(MMC)、嵌入式MMC (e麗C )、縮小尺寸麗C (RS-MMC)和微型麗C、安全數字(SD)卡、迷你 SD和微型SD、通用串行總 線(USB)儲存設備、通用快閃儲存(UFS)設備、緊湊型快閃(CF)卡、智能媒體(SM)卡、記憶棒 等的各種類型的儲存設備中的任意一種來實施。
[0029] 用于存儲系統110的儲存設備可以用易失性存儲器件(諸如動態隨機存取存儲器 (DRAM)和靜態隨機存取存儲器(SRAM))或非易失性存儲器件(諸如只讀存儲器(R0M)、掩模 ROM (MROM )、可編程ROM (PROM )、可擦除可編程ROM (EPROM )、電可擦除可編程ROM (EEPROM )、鐵 電隨機存取存儲器(FRAM)、相變RAM(PRAM)、磁阻RAM(MRAM)和電阻式RAM(RRAM))來實施。
[0030] 存儲系統110可以包括存儲器件150和控制器130,存儲器件150儲存要被主機102 訪問的數據,控制器130控制數據在存儲器件150中的儲存。
[0031] 控制器130和存儲器件150可以被集成至一個半導體器件中。例如,控制器130和存 儲器件150可以被集成至一個半導體器件中并且配置固態驅動器(SSD)。當存儲系統110用 作SSD時,可以顯著地提高與存儲系統110電耦接的主機102的操作速度。
[0032] 控制器130和存儲器件150可以被集成至一個半導體器件中并且配置存儲卡。控制 器130和存儲器件150可以被集成至一個半導體器件中,并且配置諸如個人計算機存儲卡國 際協會(PCMCIA)卡、緊湊型快閃(CF)卡、智能媒體(SM)卡(SMC)、記憶棒、多媒體卡(麗C)、 RS-MMC和微型MMC、安全數字(SD)卡、迷你 SD、微型SD和SDHC以及通用快閃儲存(UFS)設備的 存儲卡。
[0033] 又如,存儲系統110可以配置計算機、超移動PC(UMPC)、工作站、上網本、個人數字 助理(PDA)、便攜式計算機、網絡平板、平板電腦、無線電話、移動電話、智能電話、電子書、便 攜式多媒體播放器(PMP)、便攜式游戲機、導航儀、黑匣子、數字照相機、數字多媒體廣播 (DMB)播放器、三維(3D)電視、智能電視、數字錄音機、數字音頻播放器、數字圖片記錄器、數 字圖片播放器、數字錄像機、數字視頻播放器、配置數據中心的儲存器、能夠在無線環境下 收發信息的設備、配置家庭網絡的各種電子設備中的一種、配置計算機網絡的各種電子設 備中的一種、配置遠程信息處理網絡的各種電子設備中的一種、RFID設備或配置計算系統 的各種組成元件中的一種。
[0034] 存儲系統110的存儲器件150可以在電源中斷時保持儲存的數據,具體地,在寫入 操作期間儲存從主機102提供的數據,以及在讀取操作期間將儲存的數據提供給主機102。 存儲器件150可以包括多個存儲塊152、154和156。存儲塊152、154和156中的每個可以包括 多個頁。每個頁可以包括多個存儲單元,多個字線(WL)電耦接至多個存儲單元。存儲器件 150可以是非易失性存儲器件,例如,快閃存儲器。快閃存儲器可以具有三維(3D)層疊結構。
[0035] 存儲系統110的控制器130可以響應于來自主機102的請求來控制存儲器件150。控 制器130可以將從存儲器件150讀取的數據提供給主機102,以及將從主機102提供的數據儲 存在存儲器件150中。為此,控制器130可以控制存儲器件150的總體操作,諸如讀取操作、寫 入操作、編程操作和擦除操作。
[0036] 詳細地,控制器130可以包括主機接口單元132、處理器134、錯誤校正碼(ECC)單元 138、電源管理單元(PMU) 140、存儲器控制器(MC) 142和存儲器144。
[0037] 主機接口單元132可以處理從主機102提供的命令和數據,以及可以通過諸如通用 串行總線(USB )、多媒體卡(MMC )、外圍組件互連快速(PC I-E )、串行附件SCSI (SAS )、串行高 級技術附件(SATA)、并行高級技術附件(PATA)、小型計算機系統接mSCSI)、增強型小盤接 口(ESDI)和集成驅動電路(IDE)的各種接口協議中的至少一種來與主機102通信。
[0038] ECC單元138可以在讀取操作期間檢測和校正從存儲器件150讀取的數據中的錯 誤。當錯誤位的數量大于或等于可校正錯誤位的閾值數量時,ECC單元138可以不校正錯誤 位,ECC單元138可以輸出表示校正錯誤位失敗的錯誤校正失敗信號。
[0039] ECC單元138可以基于諸如低密度奇偶校驗(LDPC)碼、博斯-喬赫里-霍克文黑姆 (BCH)碼、禍輪碼(turbo code)、禍輪乘積碼(TPC)、里德-所羅門(RS,Reed-Solomon)碼、卷 積碼、遞歸系統碼(RSC)、格形編碼調制(TCM)、塊編碼調制(BCM)等的編碼調制來執行錯誤 校正操作。ECC單元138可以包括用于錯誤校正操作的所有電路、系統或設備。
[0040] PMU 140可以提供和管理用于控制器130的電源,即,用于包括在控制器130中的組 成元件的電源。
[0041] MC 142可以用作控制器130與存儲器件150之間的存儲器接口,以允許控制器130 響應于來自主機102的請求來控制存儲器件1501(: 142可以產生用于存儲器件150的控制 信號以及在處理器134的控制下處理數據。當存儲器件150是快閃存儲器(諸如NAND快閃存 儲器)時,MC 142可以產生用于NAND快閃存儲器150的控制信號以及在處理器134的控制下 處理數據。
[0042] 存儲器144可以用作存儲系統110和控制器130的工作存儲器,以及儲存用于驅動 存儲系統110和控制器130的數據。控制器130可以響應于來自主機102的請求來控制存儲器 件150。例如,控制器130可以將從存儲器件150讀取的數據提供給主機102,以及將從主機 102提供的數據儲存在存儲器件150中。當控制器130控制存儲器件150的操作時,存儲器144 可以儲存由控制器130和存儲器件150使用的數據以用于諸如讀取操作、寫入操作、編程操 作和擦除操作的操作。
[0043] 存儲器144可以利用易失性存儲器來實施。存儲器144可以利用靜態隨機存取存儲 器(SRAM)或動態隨機存取存儲器(DRAM)來實施。如上所述,存儲器144可以儲存由主機102 和存儲器件150使用的數據以用于讀取操作和寫入操作。為了儲存數據,存儲器144可以包 括程序存儲器、數據存儲器、寫入緩沖器、讀取緩沖器、映射緩沖器等。
[0044]處理器134可以控制存儲系統110的常規操作,以及響應于來自主機102的寫入請 求或讀取請求來控制針對存儲器件150的寫入操作或讀取操作。處理器134可以驅動被稱為 閃存轉換層(FTL)的固件來控制存儲系統110的常規操作。處理器134可以利用微處理器或 中央處理單元(CPU)來實施。
[0045]管理單元(未示出)可以被包括在處理器134中,以及可以執行存儲器件150的壞塊 管理。管理單元可以找到包括在存儲器件150中的壞存儲塊(其不滿足進一步使用的條件), 并且對壞存儲塊執行壞塊管理。當存儲器件150是快閃存儲器(例如,NAND快閃存儲器)時, 在寫入操作期間(例如,在編程操作期間)可能因 NAND邏輯功能的特性而發生編程失敗。在 壞塊管理期間,編程失敗的存儲塊或壞存儲塊的數據可以被編程至新存儲塊中。此外,因編 程失敗而導致的壞塊使具有3D層疊結構的存儲器件150的利用效率以及存儲系統100的可 靠性嚴重劣化,從而需要可靠的壞塊管理。
[0046]圖2是根據本發明的實施例的包括編碼器和解碼器的存儲系統200的框圖。例如, 存儲系統200對應于圖1中所示的存儲系統110。為了簡潔,在此沒有示出圖1的直接涉及本 發明實施例的部件。
[0047] 參照圖2,存儲系統200包括儲存器210、寫入控制器220和讀取控制器230。例如,儲 存器210對應于圖1中所示的存儲器件150,寫入控制器220和讀取控制器230對應于圖1中所 示的ECC單元138。
[0048] 儲存器210可以包括諸如NAND閃存的固態儲存器。寫入控制器220從圖1中的主機 102接收數據,以及處理儲存器210上的數據。讀取控制器230讀取儲存器210上的數據,以及 處理數據。寫入控制器220包括TPC編碼器222以及讀取控制器230包括TPC解碼器232來分別 作為用于TPC方案的部件。
[0049] 在本文描述的實施例中,渦輪乘積碼結構使用BCH碼用于成員碼。解碼是迭代的。 即,在列成員碼解碼之后解碼行成員碼,該過程被重復直到碼字被成功解碼。
[0050] 圖3示出用于誤校正避免的過程的示例。圖4示出在列/行交叉400、402、404和406 處的被卡住(Stuck)錯誤圖案40。在圖4中示出的被卡住錯誤圖案40不能使用常規迭代解碼 來解碼,并且在解碼中被卡住,從而導致不成功解碼的碼字。在這里描述的示例中,行碼字 和列碼字的校正能力被假設為3,然而,這僅僅用于說明,本領域技術人員將理解的是,本文 描述的過程和技術可以用于具有其他校正能力值的碼字。被卡住錯誤圖案40包含致使解碼 不成功的誤校正。
[0051] 返回參照圖3,在300處,將數據輸入并發送至后處理塊1302(例如,PP塊IhPP塊 302可以用于解碼被卡住錯誤圖案,諸如圖案40。在PP塊302中,使用失敗的成員碼字信息來 定位錯誤交叉(例如,交叉400、402、404和406),以及將交叉中的數據位與從信道中觀察到 的對應數據位進行比較。在該示例中,錯誤交叉400、402、404和406是對應的行碼字和列碼 字失敗的交叉。
[0052]當由于解碼器而引入誤校正時,來自信道的數據300可以用于檢測這些誤校正。可 以進一步移除這些誤校正(例如,使得被卡住錯誤圖案類似于圖5的被卡住錯誤圖案50),以 及將數據傳入到被卡住渦輪乘積碼(STPC)解碼器304。在誤校正移除之后,可以容易地解碼 錯誤圖案50。因此,在被校正數據穿過STPC解碼器304之前,可以進行該后處理以移除所有 行碼字和列碼字中的誤校正。
[0053]在常規解碼器中,每行和列成員碼以迭代方式被解碼,且解碼的數據被輸出306。 在STPC解碼器304中,將失敗的行/列成員碼解碼,并且僅對錯誤交叉(例如,交叉400、402、 404和406)進行校正。
[0054]接著參照圖6A和6B,在圖6A中示出不能使用上面關于圖3-圖5描述的技術來解碼 的被卡住錯誤圖案60。在這些實例中,在通過解碼器解碼的交叉(例如,交叉600、602、604、 606)中存在一些錯誤位。雖然上面關于圖3-圖5描述的技術移除誤校正,但是可能引入如圖 6B的錯誤圖案62處所示的信道錯誤。在圖6B中,雖然誤校正被移除,但是信道錯誤被引入。 圖7中所示的圖案70不能用圖3所示的過程來解碼。
[0055]因此,為了解碼諸如圖案70的圖案,可以利用圖8中的可替代的后處理塊(例如,PP 塊2802)。
[0056]在PP塊1302中,所有位被翻轉一次,從而將更多的信道錯誤引入到被卡住錯誤圖 案。然而,在PP塊2802中,對于失敗的成員碼,可以嘗試若干可能的翻轉圖案。在實施例中, 可以嘗試/利用所有可能的翻轉圖案。例如,使n k成為從來自第k成員碼的信道的數據檢測 到的位的數量。可以嘗試所有可能的翻轉圖案來解碼每個失敗的成員碼。
[0057] 接著參照圖9和圖10中的流程圖900和1000中所示的方法,描述PP塊2802的功能。 在步驟902處,識別失敗的成員碼并且進行針對失敗的成員碼的可能的翻轉圖案。在示例 中,進行所有可能的翻轉圖案。可以通過PP塊2802來執行步驟902。
[0058]在步驟903處,獲得若干成功解碼的碼字。當僅獲得一個成功解碼的碼字時,可以 選擇該獲得的一個成功解碼的碼字作為最可能的碼字,以及可以省略步驟904-步驟910。 [0059]在步驟904處,可以構建包含在步驟903處的翻轉之后獲得的成功解碼的碼字的列 表。根據系統的部件的結構,當僅獲得一個成功解碼的碼字時可以省略列表的構建。然而, 可預期的是,在步驟904處可以構建列表,而不管獲得的成功解碼的碼字的數量如何。
[0060]在于步驟904處構建列表的實施例中,在步驟906處,判斷列表是否包括多于一個 成功解碼的碼字。如果確定列表不包括多于一個成功解碼的碼字(例如,列表包含一個成功 解碼的碼字,列表不包含成功解碼的碼字),則在步驟908處停止PP塊2802的解碼過程。如果 確定列表包括多于一個成功解碼的碼字,則在步驟910處確定最可能的碼字。
[0061 ]為了說明的目的,用圖10的流程圖1000來進一步描述步驟910。當在列表中包括多 于一個成功解碼的碼字時,可以基于一組預定準則來執行確定最可能的碼字和選擇最可能 的碼字。在此描述的準則 (例如,步驟1002、1004、1006)以及它們被執行的順序是示例性的 且不是唯一的。這里,本領域技術人員將從本公開理解這些步驟的可替代的準則和順序。 [0062]在流程圖1000中的步驟期間的任何時間,如果確定僅一個碼字滿足準則,則可以 選擇該碼字作為最可能的碼字。
[0063] 在步驟1002處,判斷每個解碼的碼字是否具有在錯誤交叉區中作出的所有位校 正。如果僅一個碼字滿足步驟1002的準則,則可以選擇該碼字作為最可能的碼字。
[0064] 如果兩個或更多個碼字具有在錯誤交叉區中作出的所有位校正(例如,多于一個 碼字通過第一準則)作為在步驟1002處所確定的,則在步驟1004處,可以確定具有最少數量 校正位的碼字(通過第一準則的碼字中的碼字)。如果僅這些碼字中的一個滿足步驟1004的 準則,則可以選擇該碼字作為最可能的碼字。
[0065]如果在滿足步驟1002的準則的碼字之中,兩個或更多個碼字包括是最少數量的校 正位數量(例如,兩個或更多個碼字滿足步驟1002的準則和步驟1004的準則),則在步驟 1006處解碼校正位所位于的對應列/行。
[0066]在步驟1008處,確定來自步驟1006的具有最大數量的成功解碼的列/行的碼字。如 果在步驟1008處確定僅一個碼字具有最大數量的成功解碼的行/列(例如,僅一個碼字滿足 步驟1002、1004和1008的準則),則選擇該碼字作為最可能的碼字。在一些示例中,將成功解 碼的行/列的最大數量設置為成功解碼的行/列的最大可能數量。
[0067] 在步驟1010處,如果多于一個碼字滿足步驟1002、1004和1008的準則,則可以跳過 成員碼的解碼。
[0068] 在大多數情況下,執行步驟1002足以確定最可能的碼字,意味著在位翻轉之后僅 一個碼字具有對錯誤交叉的校正。PP塊2802處理所有失敗的行/成員碼,并且將被校正數據 傳遞到STPC解碼器804以用于解碼的數據輸出806。
[0069] 圖11是示出本文公開的過程的性能的圖表1100。公開過程的性能接近精靈誤校正 避免。有利地,在沒有使用任何額外奇偶校驗的情況下實現性能增益。
[0070] 雖然已經參考本發明的示例性實施例具體地示出和描述了本發明,但是本領域技 術人員將理解的是,在不脫離如所附權利要求限定的本發明的精神和范圍的情況下,在此 可以作出形式和細節上的各種改變。因此,上述僅是示例并不意在限定。例如,本文圖示和 描述的元件的任何數量僅是示例。本發明僅如所附權利要求和其等同物限定的那樣被限 制。
【主權項】
1. 一種方法,包括: 識別包括失敗的成員碼的被卡住錯誤圖案;以及 通過以下步驟來解碼被卡住錯誤圖案: 進行針對失敗的成員碼的可能的翻轉圖案, 在進行可能的翻轉圖案之后獲得若干成功解碼的碼字,以及 從所述若干成功解碼的碼字選擇最可能的碼字。2. 如權利要求1所述的方法,其中,進行針對失敗的成員碼的可能的翻轉圖案的步驟包 括進行針對失敗的成員碼的所有可能的翻轉圖案。3. 如權利要求1所述的方法,其中,獲得的成功解碼的碼字的數量等于1。4. 如權利要求1所述的方法,其中,從所述若干成功解碼的碼字選擇最可能的碼字的步 驟包括: 將滿足預定數量的準則的碼字確定為最可能的碼字。5. 如權利要求4所述的方法,其中,準則包括具有在錯誤交叉區中作出的所有位校正、 具有最少數量的校正位以及具有最大數量的成功解碼的列/行中的至少一個。6. 如權利要求4所述的方法,還包括:當不滿足所述預定數量的準則時跳過成員碼的解 碼。7. 如權利要求1所述的方法,還包括:構建包括所述若干成功解碼的碼字的列表。8. 一種系統,包括: 用于校正數據的后處理器,被配置為: 進行針對被卡住錯誤圖案的失敗的成員碼的可能的翻轉圖案, 在進行可能的翻轉圖案之后獲得若干成功解碼的碼字,以及 從所述若干成功解碼的碼字選擇最可能的碼字;以及 被卡住渦輪乘積碼解碼器,被配置為接收由后處理器校正的數據。9. 如權利要求8所述的系統,其中,后處理器還被配置為進行針對失敗的成員碼的所有 可能的翻轉圖案。10. 如權利要求8所述的系統,其中,獲得的成功解碼的碼字的數量等于1。11. 如權利要求8所述的系統,其中,后處理器還被配置為通過確定滿足預定數量的準 則的碼字作為最可能的碼字來從所述若干成功解碼的碼字選擇最可能的碼字。12. 如權利要求11所述的系統,其中,準則包括具有在錯誤交叉區中作出的所有位校 正、具有最少數量的校正位以及具有最大數量的成功解碼的列/行中的至少一個。13. 如權利要求11所述的系統,其中,后處理器還被配置為在不滿足所述預定數量的準 則時跳過成員碼的解碼。14. 如權利要求8所述的系統,其中,控制器還被配置為構建包括所述若干成功解碼的 碼字的列表。15. -種存儲器件,包括: 具有后處理器的控制器,被配置為: 進行針對被卡住錯誤圖案的失敗的成員碼的可能的翻轉圖案, 在進行可能的翻轉圖案之后獲得若干成功解碼的碼字,以及 從所述若干成功解碼的碼字選擇最可能的碼字。16. 如權利要求15所述的存儲器件,其中,控制器被配置為通過確定滿足預定數量的準 則的碼字作為最可能的碼字來從所述若干成功解碼的碼字選擇最可能的碼字。17. 如權利要求16所述的存儲器件,其中,準則包括具有在錯誤交叉區中作出的所有位 校正、具有最少數量的校正位以及具有最大數量的成功解碼的列/行中的至少一個。18. 如權利要求16所述的存儲器件,其中,控制器被配置為在不滿足所述預定數量的準 則時跳過成員碼的解碼。
【文檔編號】H03M13/29GK105915234SQ201610104606
【公開日】2016年8月31日
【申請日】2016年2月25日
【發明人】納威恩·庫瑪, 阿曼·巴迪亞, 曾令琪
【申請人】愛思開海力士有限公司