專利名稱:Ldpc碼的解碼的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)科學(xué)領(lǐng)域,具體地說,涉及解碼低密度奇偶校驗(yàn)碼的領(lǐng)域。
背景技術(shù):
低密度奇偶校驗(yàn)(LDPC)碼最初由Gallager提出并通過MacKay和Meal變得重要起來,此類代碼是強(qiáng)大的代碼,允許快速且可靠地檢索使用可接受的冗余級別編碼的信息。因此,LDPC碼廣泛用于在存儲器上存儲信息或傳輸信息,因?yàn)樗鼈冃枰男畔⑷哂嘁约凹m正在寫入和讀取之間或發(fā)送和接收之間在信息中引入的錯(cuò)誤所需的時(shí)間不會令人望而卻
止/J/ O
在存儲器存儲中,通道模型(廣泛用于信息和編碼理論的術(shù)語)是一種用于描述在讀取的編碼數(shù)據(jù)和要寫入的編碼數(shù)據(jù)之間觀察到的錯(cuò)誤的模型。根據(jù)此模型,當(dāng)錯(cuò)誤被引入數(shù)據(jù)時(shí),一個(gè)數(shù)據(jù)塊采用一個(gè)通道。通常,當(dāng)數(shù)據(jù)塊包括要在存儲器上寫入然后讀取的位序列時(shí),可以在寫入期間或存儲期間或甚至讀取期間修改位的真實(shí)值(即,要寫入的位的值)??梢允褂貌煌耐ǖ滥P?,具體取決于應(yīng)用以及對錯(cuò)誤原因做出的假設(shè)。廣泛使用的通道包括加性白高斯通道(AWGN)和二進(jìn)制對稱通道(BSC)。單層單元(SLC)閃存是包括可以在其上寫入位的獨(dú)立單元的存儲器。因此每個(gè)單元表示一個(gè)位。閃存單元基于浮柵晶體管技術(shù)。換言之,在閃存單元的晶體管柵極上“捕獲”的電荷確定在閃存單元上讀取的邏輯級別(即,位的值)。稍微簡單地說,閃存的工作方式可以描述為如下當(dāng)“擦除”單元時(shí),將電荷放在柵極上并將單元讀取為邏輯I (即,位的值是I)。在單元上“編程(即,寫入)0”相當(dāng)于對柵極進(jìn)行放電,使邏輯值達(dá)到O。只可以對已被擦除(對應(yīng)被充電)的單元進(jìn)行編程(對應(yīng)放電)。閃存以頁面和塊布置,并且一個(gè)頁面通常包括多個(gè)閃存單元(例如,4096個(gè)字節(jié)用于存儲信息位,128個(gè)字節(jié)用于存儲冗余位),一個(gè)塊包括多個(gè)頁面(例如64)。讀取和寫入操作通常針對頁面級別執(zhí)行,而擦除操作針對整個(gè)塊執(zhí)行。因?yàn)橹粚Ρ粚懭隣的位進(jìn)行放電,所以剩余的位仍然保持充電。這意味著對于任何特定單元/位而言,導(dǎo)致的實(shí)際耗損與曾經(jīng)在其上寫入的O的數(shù)量成比例。通常,閃存單元具有10,000次擦除/寫入循環(huán)的持久性規(guī)范,即,每個(gè)單元可以擦除和寫入10,000次O。因?yàn)槌潆?放電過程是閃存讀取/寫入/擦除操作固有的,所以可以認(rèn)識到最常見的錯(cuò)誤模式是不需要的I到O轉(zhuǎn)換。這可以通過圖I中所示的所謂二進(jìn)制非對稱通道(BAC)建模。參考圖1,寫入的I可以讀出為I的概率是l_a,讀出為O的錯(cuò)誤概率是a,而存儲的O可以讀出為O的概率是Ι-a/b,讀出為I的錯(cuò)誤概率是Ι-a/b,其中a是小數(shù),范圍從10_3到10_5,b是大于I的實(shí)數(shù),例如10。通過忽略從O到I的錯(cuò)誤模式,閃存有時(shí)可以備選地通過如圖2中所示的Z通道建模,但這是當(dāng)b趨于無窮大時(shí)的BAC的特殊情況。正如在其他通道模型上,可以在閃存上寫入通過LDPC碼編碼的位序列。以下文檔介紹非對稱通道的LDPC編碼- “LDPC codes for binary asymmetric channels (二進(jìn)制非對稱通道的 LDPC碼)”,作者]^1^的,1,ICT 2008。2008年度國際電信會議。2008年6月16-19日,第1-7頁;-“Does the Performance of LDPC Codes Depend on the Channel (LDPC 碼的性能依賴于通道嗎?)”,作者 Franceschini, Μ· >Ferrari, G.、Raheli,R. , IEEE 通信匯刊,第54 卷第 12 期,2006 年 12 月,第 2129-2132 頁;- “Maximum Likelihood Decoding of Codes on the Z-channel (Z 通道上的代碼最大似然解碼),,,作者 Barbero, A. ;Ellingsen, P. ;Spinsante, S. ;Ytrehus, 0· , 2006 年度IEEE國際通信會議,第3卷,2006年6月,第1200-1205頁;以及-“Density evolution for asymmetric memory I ess channels (非對稱無記憶通道的密度演化)”,作者Wang, C. -C. ;Kulkarni, S. R.、Poor, H. V.,IEEE信息理論匯刊,第51卷第12期,2005年12月,第4216-4236頁。
使用實(shí)際解碼算法對采用LDPC碼編碼的信息解碼。這些算法包括諸如位翻轉(zhuǎn)、Gallager A/Β、置信度傳播以及和-積之類的算法,它們針對長LDPC碼執(zhí)行,并證明可提供卓越的錯(cuò)誤保護(hù)。在這些解碼算法中,位翻轉(zhuǎn)最簡單并且易于實(shí)現(xiàn)。位翻轉(zhuǎn)算法的優(yōu)點(diǎn)是關(guān)聯(lián)的解碼復(fù)雜性明顯低于其他算法。將簡要討論例如通過Feng Guo 和 Lajos Hanzol 的標(biāo)題為 “Reliability Ratio Basedffeighted Bit-FlippingDecoding for LDPC codes (LDPC碼的基于可靠性比的加權(quán)位翻轉(zhuǎn)解碼)”的文檔所公開的與和-積算法的比較。對于每個(gè)編碼位的每次迭代,和-積算法需要2jq數(shù)量的加法和7jq/log2(q)次乘法,其中q是解碼字段的大小,在此二進(jìn)制方案中是2。如果塊長度為1000個(gè)位并且最多為10次迭代,所需的算術(shù)運(yùn)算的數(shù)量是200,000次加法和700,000次乘法。此夕卜,位翻轉(zhuǎn)算法不需要任何成本高昂的加法和乘法。位翻轉(zhuǎn)算法通過評估校驗(yàn)子只需要邏輯運(yùn)算,這需要很少的數(shù)字邏輯并可以極其快速。以下文檔涉及LDPC碼迭代解碼的各種版本的位翻轉(zhuǎn)算法- “An improvement on the modified weighted bit flippingdecodingalgorithm for LDPC codes(有關(guān)LDPC碼的已修改加權(quán)位翻轉(zhuǎn)解碼算法的改進(jìn))”,作者 Ming Jiang ;Chunming Zhao ;Zhihua Shi ;Yu Chen, IEEE 通信快訊,第 9 卷第 9 期,2005 年 9 月,第 814-816 頁;- “On the Error Correction of Regular LDPC Codes Using theFlippingAlgorithm (使用翻轉(zhuǎn)算法對常規(guī)LDPC碼進(jìn)行錯(cuò)誤糾正)”,作者Burshtein,D.,IEEE信息理論匯刊,第54卷第2期,2008年2月,第517-530頁;- “A Modification to Weighted Bit-Flipping Decoding Algorithm forLDPCCodes Based on Reliability Adjustment (根據(jù)可靠性調(diào)整對LDPC碼的加權(quán)位翻轉(zhuǎn)解碼算法的修改)”,作者 Dajun, Qian ;Ming Jiang ;Chunming Zhao ;Xiaofu Wu, 2008 年度 IEEE國際通信會議。ICC’08,2008年5月19-23日,第1161-1165頁。以下描述位翻轉(zhuǎn)算法的大概情況。具有長度N和維度K的二進(jìn)制(N,K) LDPC碼通常由奇偶校驗(yàn)矩陣H定義。H具有N個(gè)列和M個(gè)行,并且M > = N-K0 H的每個(gè)列對應(yīng)于信息位或奇偶校驗(yàn)位,每個(gè)行對應(yīng)于校驗(yàn)和。對于任何暫定位決策向量b,校驗(yàn)和或校驗(yàn)子的集合是向量s=bHT。在位翻轉(zhuǎn)算法中,解碼器使用二進(jìn)制輸入序列b (即,讀出的閃存頁面)通過簡單的“異或”運(yùn)算(即s=bHT)計(jì)算每個(gè)奇偶校驗(yàn)。如果s中的對應(yīng)位是O,則滿足奇偶校驗(yàn),如果對應(yīng)位是1,則不滿足。如果涉及位的不滿足的校驗(yàn)的數(shù)量超過固定翻轉(zhuǎn)閾值t,則計(jì)劃翻轉(zhuǎn)此位。然后在解碼過程的下一次迭代中使用翻轉(zhuǎn)后的位。當(dāng)滿足所有奇偶校驗(yàn)或達(dá)到預(yù)定最大迭代限制時(shí),解碼算法將停止。因此,生成的位翻轉(zhuǎn)算法的偽代碼可以包括以下步驟i.使用s=bHT計(jì)算奇偶校驗(yàn)。如果滿足所有這些奇偶校驗(yàn),則停止解碼。ii.否則,針對每個(gè)位找到不滿足的奇偶校驗(yàn)的數(shù)量。依次將每個(gè)位視為目標(biāo)。iii.如果不滿足目標(biāo)位的大多數(shù)奇偶校驗(yàn)等式,則在下一次解碼迭代之前翻轉(zhuǎn)此位。iv.重復(fù)步驟(i)到(iii)。上述算法提供了在二進(jìn)制對稱通道上寫入的LDPC碼的滿意解碼結(jié)果。然而,需要提供一種改進(jìn)LDPC碼解碼的方法。
發(fā)明內(nèi)容
根據(jù)第一方面,本發(fā)明體現(xiàn)為一種用于對在諸如閃存的采用二進(jìn)制非對稱通道的存儲器上寫入的位序列進(jìn)行解碼的方法,所述位序列通過低密度奇偶校驗(yàn)碼或LDPC碼編碼,由此所述序列的每個(gè)位具有通過所述LDPC碼定義的對應(yīng)奇偶校驗(yàn),所述方法包括-提供包括第一狀態(tài)和第二狀態(tài)的位狀態(tài)集合以及條件集合,其中當(dāng)滿足條件時(shí),更改位狀態(tài),所述條件集合包括用于將位狀態(tài)從所述第一狀態(tài)更改為所述第二狀態(tài)的第一條件和用于將位狀態(tài)從所述第二狀態(tài)更改為所述第一狀態(tài)的第二條件,其中所述第一條件和所述第二條件不同,-讀取所述位序列的每個(gè)位的值,并根據(jù)所讀取的值將每個(gè)位關(guān)聯(lián)到所述集合的相應(yīng)狀態(tài),-對于所述位序列的目標(biāo)位,評估條件,其中■根據(jù)所述目標(biāo)位的狀態(tài)從所述條件集合中選擇條件,以及■使用計(jì)算與所述目標(biāo)位對應(yīng)的奇偶校驗(yàn)的結(jié)果來評估所述條件,-確定滿足所述條件,-作為滿足所述條件的結(jié)果而更改所述目標(biāo)位的狀態(tài),以及-根據(jù)所述目標(biāo)位的狀態(tài)設(shè)置所述目標(biāo)位的值。在各實(shí)施例中,所述方法可以包括以下一個(gè)或多個(gè)特征 -重復(fù)評估步驟,在所述評估步驟的每次重復(fù)中,所述目標(biāo)位是所述序列的不同位;-重復(fù)所述評估步驟,直到計(jì)算所述奇偶校驗(yàn)的結(jié)果指示滿足所有奇偶校驗(yàn)或達(dá)到最大重復(fù)數(shù)為止;-所述位狀態(tài)集合包括所述第一狀態(tài)和所述第二狀態(tài),所述條件集合包括所述第一條件和所述第二條件,在關(guān)聯(lián)每個(gè)位的步驟中,如果讀取的位的值是0,則將位關(guān)聯(lián)到所述第一狀態(tài),如果讀取的位的值是1,則關(guān)聯(lián)到所述第二狀態(tài),在設(shè)置所述目標(biāo)位的值的步驟中,如果所述目標(biāo)位關(guān)聯(lián)到所述第一狀態(tài),則將所述目標(biāo)位的值設(shè)置為0,如果所述目標(biāo)位關(guān)聯(lián)到所述第二狀態(tài),則設(shè)置為I;
-只要不滿足對應(yīng)于所述目標(biāo)位的大多數(shù)奇偶校驗(yàn),則滿足所述第一條件,而只要不滿足對應(yīng)于所述目標(biāo)位的所有奇偶校驗(yàn),則滿足所述第二條件;-只要不滿足的對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的數(shù)量高于第一閾值,則滿足所述第一條件,而只要不滿足的對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的數(shù)量高于第二閾值,則滿足所述第二條件,所述第一閾值和所述第二閾值不同;-所述位狀態(tài)集合還包括第三狀態(tài)和第四狀態(tài),所述條件集合包括條件對的第一子集,其中對的一個(gè)條件是用于將位狀態(tài)從第i狀態(tài)更改為第j狀態(tài)的條件,該對的另一條件是用于將位狀態(tài)從所述第j狀態(tài)更改為所述第i狀態(tài)的條件,對的所述條件不同,并且所述第一條件和所述第二條件形成一對所述第一子集,所述條件集合還包括條件對的第二子集,其中對的一個(gè)條件是用于將位狀態(tài)從第k狀態(tài)更改為第I狀態(tài)的條件,該對的另一條件是用于將位狀態(tài)從所述第I狀態(tài)更改為所述第k狀態(tài)的條件,并且一對所述第二子集的所述條件相同;-所述條件集合針對在所述條件集合中沒有用于將位狀態(tài)從第m狀態(tài)更改為第η·狀態(tài)的條件還包括第三子集,所述第三子集包括用于將位狀態(tài)從所述第m狀態(tài)更改為所述第η狀態(tài)的至少一個(gè)條件;-其中只要不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)中的全部或至少一個(gè)但少于大多數(shù)或大多數(shù)奇偶校驗(yàn),或者滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn),則滿足條件;-所述第一位狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是O的高置信度,所述第二狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是O的低置信度,所述第三狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是I的高置信度,所述第四狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是I的低置信度,并且條件的所述第一子集包括當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)中的至少一個(gè)但少于大多數(shù)奇偶校驗(yàn)時(shí)滿足的所述第一條件、當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)時(shí)滿足的所述第二條件、當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)中的至少一個(gè)但少于大多數(shù)奇偶校驗(yàn)時(shí)滿足的用于將位從所述第三狀態(tài)更改為所述第四狀態(tài)的第三條件、當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)時(shí)滿足的用于將位從所述第四狀態(tài)更改為所述第三狀態(tài)的第四條件,并且條件的所述第二子集包括當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第二狀態(tài)更改為所述第四狀態(tài)的第五條件、當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第四狀態(tài)更改為所述第二狀態(tài)的第六條件,并且條件的所述第三子集包括當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第一狀態(tài)更改為所述第四狀態(tài)的第七條件、當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第三狀態(tài)更改為所述第二狀態(tài)的第八條件;-根據(jù)通過對應(yīng)位狀態(tài)確定的所述序列的位的值來執(zhí)行計(jì)算與所述目標(biāo)位對應(yīng)的奇偶校驗(yàn)。根據(jù)另一方面,本發(fā)明體現(xiàn)為一種具有記錄在其上的計(jì)算機(jī)程序的計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)程序包括指令以便由計(jì)算機(jī)執(zhí)行,所述指令包括用于執(zhí)行上述方法的
>J-U ρ α裝直。根據(jù)另一方面,本發(fā)明體現(xiàn)為一種系統(tǒng),包括-適合于寫入通過LDPC碼編碼的位序列的存儲器,以及
-用于執(zhí)行上述方法的裝置。在各實(shí)施例中,所述存儲器是優(yōu)選地基于浮柵晶體管技術(shù)的閃存。參考下面列出的附圖,從以下對作為非限制性實(shí)例提供的本發(fā)明的實(shí)施例的說明,本發(fā)明的進(jìn)一步特性和優(yōu)點(diǎn)將顯而易見。
圖1-2示出了二進(jìn)制非對稱通道的實(shí)例;圖3示出了用于對位序列進(jìn)行解碼的方法的一個(gè)實(shí)例的流程圖;圖4-5示出了用于對位序列進(jìn)行解碼的方法的兩個(gè)實(shí)例的狀態(tài)集合以及條件集合的表不;
圖6示出了用于對位序列進(jìn)行解碼的方法的仿真結(jié)果;圖7是根據(jù)本發(fā)明的一個(gè)實(shí)施例的計(jì)算機(jī)硬件的方塊圖。
具體實(shí)施例方式提供了一種用于對在存儲器上寫入的位序列進(jìn)行解碼的計(jì)算機(jī)實(shí)現(xiàn)的方法。所述位序列通過低密度奇偶校驗(yàn)(或LDPC)碼編碼,由此所述序列的位具有通過所述LDPC碼定義的對應(yīng)奇偶校驗(yàn)。所述方法包括提供包括第一狀態(tài)和第二狀態(tài)的位狀態(tài)集合以及條件集合。當(dāng)滿足條件時(shí),更改位狀態(tài)。所述條件集合包括至少第一條件和第二條件。所述第一條件用于將位狀態(tài)從所述第一狀態(tài)更改為所述第二狀態(tài)。所述第二條件用于將位狀態(tài)從所述第二狀態(tài)更改為所述第一狀態(tài)。所述第一條件和所述第二條件不同。所述方法包括讀取所述存儲器上的寫入位序列的每個(gè)位的值,以及根據(jù)所讀取的值將每個(gè)位關(guān)聯(lián)到所述集合的相應(yīng)狀態(tài)。所述方法包括針對所述位序列的目標(biāo)位評估條件。根據(jù)所述目標(biāo)位的狀態(tài)從所述條件集合中選擇要評估的條件。所述評估步驟利用計(jì)算對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的結(jié)果。所述方法包括確定滿足所述條件以及作為滿足所述條件的結(jié)果而更改所述目標(biāo)位的狀態(tài)的步驟。所述方法然后可以根據(jù)所述目標(biāo)的狀態(tài)設(shè)置所述目標(biāo)的值。針對讀取的位序列的每個(gè)位優(yōu)選地重復(fù)所述方法。最后,根據(jù)每個(gè)位的相應(yīng)狀態(tài)設(shè)置所述序列的每個(gè)位的值。與傳統(tǒng)的位翻轉(zhuǎn)算法相比,此類方法為用于對通過LDPC碼編碼的位序列進(jìn)行解碼的解決方案提供更好的性能,且只是略微增加了復(fù)雜性。通過對在存儲器上寫入的位序列進(jìn)行解碼,意味著所述方法盡可能接近要寫入的位序列。所述解碼方法可以是更廣泛的方法的一部分,所述更廣泛的方法不僅包括所述位序列的解碼,而且還包括解碼之后例如借助將所述LDPC碼的位序列關(guān)聯(lián)到字的字典來對所述位序列進(jìn)行解釋。因?yàn)樗鑫恍蛄型ㄟ^LDPC碼編碼,這意味著要寫入的位序列的值序列是由所述LDPC碼授權(quán)的序列,所以所述序列的位具有由所述LDPC碼定義的對應(yīng)奇偶校驗(yàn),如從LDPC編碼本身所知道的那樣。在下面,所述序列由(V…、bN)表示。對于所述序列的至少某些位bi;存在涉及IDi和其他位的運(yùn)算(即,奇偶校驗(yàn)),例如J個(gè)運(yùn)算,每個(gè)運(yùn)算涉及k(j)個(gè)其他位(b/、…、bk(/)并具有預(yù)期結(jié)果,并且j從I到J。運(yùn)算是“異或”運(yùn)算,它們可以寫成h+b/+…+bk‘并預(yù)計(jì)等于O。在下面,奇偶校驗(yàn)可以指運(yùn)算的結(jié)果。當(dāng)?shù)扔陬A(yù)期值時(shí),認(rèn)為滿足奇偶校驗(yàn),當(dāng)?shù)扔谝馔庵禃r(shí),認(rèn)為不滿足奇偶校驗(yàn)。
所述方法包括提供位狀態(tài)集合以及條件集合,所述位狀態(tài)集合具有包括第一狀態(tài)和第二狀態(tài)的至少兩個(gè)不同狀態(tài)。當(dāng)滿足條件時(shí),更改位狀態(tài)。所述條件集合包括包含第一條件和第二條件的至少兩個(gè)條件。所述第一條件是用于將位狀態(tài)從所述第一狀態(tài)更改為所述第二狀態(tài)的條件。所述第二條件是用于將位狀態(tài)從所述第二狀態(tài)更改為所述第一狀態(tài)的條件。所述第一條件和所述第二條件不同。狀態(tài)是在所述方法中使用的中間變量并與位關(guān)聯(lián)。位的狀態(tài)鏈接到位的值,因此允許檢索位的值,如在下面說明的那樣。條件是用于更改位狀態(tài)的先決條件。當(dāng)評估為滿足(即,履行)條件時(shí),將位的狀態(tài)從一個(gè)狀態(tài)更改為另一個(gè)狀態(tài)。對于狀態(tài)為Si的位bi;條件可以是布爾函數(shù),具體取決于匕和/或Si。當(dāng)函數(shù)的求值結(jié)果是true (對應(yīng)false)時(shí),則認(rèn)為滿足(對應(yīng)不滿足)條件。在這種情況下,所述第一條件和所述第二條件不同的事實(shí)暗示至少兩個(gè)函數(shù)是這樣的函數(shù)針對相同的輸入,它們將提供不同的結(jié)果。所述方法包括讀取所述存儲器上的寫入位序列的每個(gè)位的值,以及根據(jù)所讀取的值將每個(gè)位關(guān)聯(lián)到所述集合的相應(yīng)狀態(tài)。位的值以傳統(tǒng)方式定義它是其邏輯級別并等于I或O。后面將提供有關(guān)如何執(zhí)行關(guān)聯(lián)的實(shí)例。 所述方法包括根據(jù)目標(biāo)位^的狀態(tài)評估從所述條件集合選擇的條件,所述目標(biāo)位是所述序列的一個(gè)位,例如所述序列的第一位。根據(jù)所述目標(biāo)位的狀態(tài)s/執(zhí)行所述選擇將確保不評估沒有將狀態(tài)s/更改為另一個(gè)狀態(tài)的條件,即,將狀態(tài)S= 6 S*/更改為另一個(gè)狀態(tài)的條件。這將防止評估不必要的條件并加快所述方法的速度。在各實(shí)施例中,所述評估步驟包括計(jì)算對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)。通常,在選擇針對其評估條件的目標(biāo)位之后執(zhí)行計(jì)算所述奇偶校驗(yàn)。然而,在其他實(shí)施例中,計(jì)算與所述序列的所有位對應(yīng)的奇偶校驗(yàn)可以在選擇給定目標(biāo)位之前執(zhí)行,即基于由所涉及的位的對應(yīng)狀態(tài)確定的當(dāng)前位值執(zhí)行。因此,通常所述評估步驟可以被認(rèn)為利用計(jì)算對應(yīng)于(至少)所述目標(biāo)位的奇偶校驗(yàn)的結(jié)果。具體地說,可以進(jìn)行涉及不滿足和/或滿足的奇偶校驗(yàn)的數(shù)量的比較。例如,可以將不滿足的奇偶校驗(yàn)和/或滿足的奇偶校驗(yàn)的數(shù)量與閾值比較。以此方式,所述評估允許快速執(zhí)行解碼。當(dāng)評估為滿足條件時(shí),所述方法作為滿足所述條件的結(jié)果而更改所述目標(biāo)位的狀態(tài)。這確保在所述方法結(jié)束時(shí)將最適當(dāng)?shù)臓顟B(tài)關(guān)聯(lián)到所述目標(biāo)位。所述方法然后可以根據(jù)相應(yīng)位的狀態(tài)設(shè)置所述目標(biāo)位(可能是所述序列的每個(gè)位)的值。此步驟實(shí)際上是確定要寫入的位的值,而無論讀取的內(nèi)容為何。更改位以及將最適當(dāng)?shù)臓顟B(tài)關(guān)聯(lián)到位的可能性允許在設(shè)置每個(gè)位的值時(shí),(至少部分地)檢索位的“正確”值。可以根據(jù)所述目標(biāo)位的狀態(tài)以及對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)中涉及的其他位的狀態(tài)來執(zhí)行奇偶校驗(yàn)的計(jì)算。在上面針對計(jì)算奇偶校驗(yàn)提供的公式h+b/+…+bk(j)i中,使用的值bpb/、…、bk(^可以是要根據(jù)對應(yīng)位狀態(tài)針對每個(gè)位設(shè)置的值。這將在后面進(jìn)行說明。如可以看到的,不需要求解復(fù)雜的方程。因此,與現(xiàn)有技術(shù)的位翻轉(zhuǎn)算法相比,所述方法具有低復(fù)雜性并且尤其快速。在現(xiàn)有技術(shù)的傳統(tǒng)位翻轉(zhuǎn)算法中,只要不滿足對應(yīng)于所述目標(biāo)位的大多數(shù)奇偶校驗(yàn),則翻轉(zhuǎn)位的值。換言之,只存在一個(gè)條件。在本方法中,提供了一個(gè)條件集合,其具有至少兩個(gè)不同的條件。具有不同的條件例如允許從通道的非對稱性中受益。因此,根據(jù)位的當(dāng)前狀態(tài),是否翻轉(zhuǎn)位的決定是不同的。當(dāng)針對位重復(fù)時(shí),所述方法確保最后觀察到的錯(cuò)誤率(錯(cuò)誤率表示在設(shè)置所述序列的目標(biāo)位和/或其他位的值的步驟之后由所述方法輸出的位序列與要寫入的位序列之間的差異)低于傳統(tǒng)的位翻轉(zhuǎn)算法。因此,所述方法改進(jìn)了位翻轉(zhuǎn)算法(即,減少錯(cuò)誤率),只是在復(fù)雜性方面具有線性變化。如上所述,存儲器可以采用二進(jìn)制非對稱通道。它例如可以是閃存。在這種情況下,參考圖I和2,所述方法的非對稱性(S卩,所述集合的兩個(gè)條件不同的事實(shí))尤其減少錯(cuò)誤率。因此,條件可以適應(yīng)于位的狀態(tài)。其理念是,當(dāng)讀取I時(shí),意味著要寫入的位是I的可能性高。實(shí)際上,通道將O錯(cuò)誤地轉(zhuǎn)換為I的概率很低。在通常情況下,更好的是用于將I更改為O的條件不同于用于將O更改為I的條件。具有兩個(gè)不同條件的條件集合確保已對此進(jìn)行驗(yàn)證。原則上,可以在二進(jìn)制非對稱通道(BAC)上使用位翻轉(zhuǎn)算法而無需修改,但由于BAC的特殊性質(zhì)會出現(xiàn)明顯的性能下降,尤其是在b相對較大時(shí)(如閃存的情況)。參考圖3,其示出本發(fā)明的一個(gè)實(shí)施例的流程圖。首先,提供位狀態(tài)集合10,其例如包括第一狀態(tài)和第二狀態(tài)。而且,提供條件集合20。如所述的那樣,如此設(shè)計(jì)條件,以便在評估為滿足條件時(shí),更改位狀態(tài)。條件至少包括
-第一條件,即,關(guān)于是否將位狀態(tài)從所述第一狀態(tài)更改為所述第二狀態(tài),以及-第二條件,用于將位狀態(tài)從所述第二狀態(tài)更改為所述第一狀態(tài)。然而所述第二條件不同于所述第一條件。如示出的,讀取寫入的位序列的每個(gè)位的值。然后根據(jù)所讀取的位的值將對應(yīng)的位關(guān)聯(lián)到相應(yīng)狀態(tài)(步驟SlOO)。然后,對于所述序列的給定目標(biāo)位30,將評估條件(步驟S200)。要指出的是-根據(jù)所述目標(biāo)位的狀態(tài),從條件集合20中選擇所述條件;以及-評估所述條件利用計(jì)算對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的結(jié)果,如前所述。要指出的是,可以在選擇目標(biāo)位30之前計(jì)算所有奇偶校驗(yàn)。相反,可以在選擇所述目標(biāo)位之后、在評估所述條件本身之前計(jì)算對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)。這將下面更詳細(xì)地討論。接下來,如果確定(步驟S300)滿足選定條件,則相應(yīng)地更改所述目標(biāo)位的狀態(tài)(步驟S400)。否則,不更改所述目標(biāo)位的狀態(tài)(步驟S300a)。最后,可以根據(jù)所述目標(biāo)位的相應(yīng)狀態(tài)設(shè)置所述目標(biāo)位的值(步驟S500 )。優(yōu)選地,重復(fù)所述過程,如圖3中所示(步驟S600)。于是在每次重復(fù)中目標(biāo)位30都不同(例如,所述序列中的下一位),以便例如處理所述序列中的所有位。每次重復(fù)包括評估適當(dāng)選擇的條件、確定是否滿足所述條件以及更改當(dāng)前處理的位的狀態(tài)(如有必要)。在一個(gè)實(shí)施例中,每次重復(fù)需要計(jì)算對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)。如所述的那樣,計(jì)算奇偶校驗(yàn)涉及可以從所述序列的位的當(dāng)前狀態(tài)中檢索的位值。然后,可以根據(jù)目標(biāo)位的當(dāng)前狀態(tài)(在完成所述重復(fù)時(shí)獲得)設(shè)置當(dāng)前目標(biāo)位的值(如有必要)。此類實(shí)施例對應(yīng)于圖3的流程圖。在一種變型中,首先根據(jù)所述序列中的位的當(dāng)前值計(jì)算奇偶校驗(yàn),這些位的當(dāng)前值自身通過對應(yīng)狀態(tài)確定。然后,可以重復(fù)地處理所述序列的所有位,即,每次重復(fù)包括評估適當(dāng)選擇的條件、確定是否滿足所述條件以及更改當(dāng)前處理的位的狀態(tài)(如有必要)。最后,完成所述位重復(fù)時(shí),根據(jù)每個(gè)位的當(dāng)前狀態(tài)設(shè)置所述序列的每個(gè)位的值。這具有的優(yōu)點(diǎn)是不需要在所述位重復(fù)中針對每個(gè)位重復(fù)計(jì)算奇偶檢驗(yàn),從而節(jié)省時(shí)間。
在所有情況下,所述評估步驟都利用計(jì)算對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的結(jié)果。在各實(shí)施例中,進(jìn)一步重復(fù)所述過程直到滿足所有奇偶校驗(yàn),即,如奇偶校驗(yàn)計(jì)算的結(jié)果所指示的那樣。在變型中,重復(fù)所述過程直到達(dá)到最大重復(fù)數(shù)量,以便確保收斂。因此,所述重復(fù)確保最后將所述序列的大多數(shù)位關(guān)聯(lián)到最適當(dāng)?shù)臓顟B(tài)。因此,在設(shè)置位的值的步驟中,設(shè)置的值可能是最準(zhǔn)確的。以下參考圖4和5討論所述方法的兩個(gè)實(shí)施例,這兩個(gè)實(shí)施例說明了相應(yīng)的位狀態(tài)集合以及條件集合的實(shí)際實(shí)施方式。在圖4的實(shí)例(也稱為“修改的位翻轉(zhuǎn)算法”)中,所述狀態(tài)集合包括第一狀態(tài)SI和第二狀態(tài)S2。換言之,在此只有兩個(gè)位狀態(tài)。這允許位的狀態(tài)和值之間的雙射對應(yīng),假設(shè)位具有二進(jìn)制值,例如I或O (這是在下面考慮的內(nèi)容)。例如,SI對應(yīng)于0,S2對應(yīng)于I。所述條件集合包括第一條件Cl和第二條件C2。將每個(gè)位關(guān)聯(lián)到相應(yīng)狀態(tài)時(shí),如果讀取的位的值是0,則將位關(guān)聯(lián)到第一狀態(tài)SI,如果讀取的位的值是1,則將位關(guān)聯(lián)到第二狀態(tài)S2。如 上所述,依賴于兩個(gè)條件。第一條件Cl用于將位狀態(tài)從SI更改為S2,第二條件C2用于將位狀態(tài)從S2更改為SI。然而,所述第一條件和所述第二條件不同,例如以便從通道的非對稱性中受益。完成評估過程時(shí),如果所述目標(biāo)位的狀態(tài)是第一狀態(tài)SI,則將所述目標(biāo)位的值設(shè)置為0,如果所述目標(biāo)位的狀態(tài)是第二狀態(tài)S2,則將所述目標(biāo)位的值設(shè)置為I。此類解碼方法具有尤其低的復(fù)雜性。因此,在此實(shí)例中,狀態(tài)SI和S2是中間變量,并且在位值和狀態(tài)之間具有完美對應(yīng)。更詳細(xì)地說,只要不滿足對應(yīng)于所述目標(biāo)位的大多數(shù)奇偶校驗(yàn),或者只要不滿足的對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的數(shù)量高于第一閾值,則可滿足第一條件Cl。只要不滿足對應(yīng)于所述目標(biāo)位的所有奇偶校驗(yàn),或者只要不滿足的對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的數(shù)量高于第二閾值t2,則可滿足第二條件C2。如果使用,則第一閾值和第二閾值t2不同。通常,因?yàn)镾I對應(yīng)于O而S2對應(yīng)于1,所以h <t2。備選地,可以將比例用于比較??梢栽谏鲜龇椒ǖ姆秶鷥?nèi)構(gòu)想許多其他適合的條件。通常,只要不滿足對應(yīng)于所述目標(biāo)位的所有奇偶校驗(yàn)的全部或至少一個(gè)但少于大多數(shù)或大多數(shù),或者滿足對應(yīng)于所述目標(biāo)位的所有奇偶校驗(yàn),則也可滿足條件。參考第二實(shí)例討論其他類型的條件。應(yīng)用于兩個(gè)實(shí)例中任意一個(gè)的條件同樣可以應(yīng)用于另一實(shí)例。所述閾值的值可以依賴于通道的值a和b。這確保依賴于在其上執(zhí)行所述方法的存儲器而改變所述方法。參考圖5討論執(zhí)行所述方法的第二實(shí)例(也稱為“2位-位翻轉(zhuǎn)算法”)。如圖5中所示,所述位狀態(tài)集合還可以包括第三狀態(tài)S3和第四狀態(tài)S4。所述條件集合例如可以包括條件對的第一子集,例如KC1,C2),(C3,C4)}。正式地說,一對(Cl, C2)或(C3, C4)的一個(gè)條件(Cl或C2)是用于將位狀態(tài)從第i狀態(tài)更改為第j狀態(tài)的條件。該對的另一條件(C2或C4)是用于將位狀態(tài)從所述第j狀態(tài)更改為所述第i狀態(tài)的條件。在此,一對的所述條件不同;第一條件Cl和第二條件C2形成第一子集{(Cl, C2),(C3, C4)}的一對(Cl, C2)。所述第i狀態(tài)可以是SI或S3,所述第j狀態(tài)可以是S2或S4。在圖5的實(shí)例中,所述條件集合還包括條件對的第二子集,例如{(C5,C6)},其中對{(C5,C6)}的一個(gè)條件C5是用于將位狀態(tài)從第k狀態(tài)(例如S2)更改為第I狀態(tài)(例如S4)的條件,另一條件C6是用于將位狀態(tài)從所述第I狀態(tài)更改為所述第k狀態(tài)的條件。與所述條件對的第一子集不同,在此所述條件相同。在圖5的情況中,第二子集只有一對(C5,C6)。因此,在此情況中參數(shù)k和I可以取值5或6。然而,所述第二子集通??梢跃哂卸鄠€(gè)對,例如如果存在多于四個(gè)狀態(tài)。此類方法通過引入中間狀態(tài)改善了狀態(tài)之間的轉(zhuǎn)變。所述第一子集在不同狀態(tài)之間引入非對稱性。非對稱性和中間狀態(tài)的組合允許達(dá)到更接近要寫入的序列的最終結(jié)果。所述條件集合還可以包括諸如{(C7,CS)}之類的第三子集,其包括用于將位狀態(tài)從第m狀態(tài)(例如SI或S3)更改為第η狀態(tài)(例如分別為S4或S2)的至少一個(gè)條件C7或CS。要指出的是,在此情況中沒有對應(yīng)條件,即,用于將位狀態(tài)從所述第m狀態(tài)更改為所述第η狀態(tài)的條件。這為所述方法引入進(jìn)一步的非對稱性,并進(jìn)一步改進(jìn)實(shí)踐中的準(zhǔn)確性。如下表I和圖6中的情況,第一位狀態(tài)SI可以對應(yīng)于要在存儲器上寫入的位的值是O的高置信度。第二狀態(tài)S2可以對應(yīng)于要在存儲器上寫入的位的值是O的低置信度。第三狀態(tài)S3可以對應(yīng)于要在存儲器上寫入的位的值是I的高置信度。第四狀態(tài)S4可以對應(yīng)于要在存儲器上寫入的位的值是I的低置信度。在此類情況下,將每個(gè)位關(guān)聯(lián)到所述集合的相應(yīng)狀態(tài)時(shí),如果讀取的位值是0,則可以將位關(guān)聯(lián)到狀態(tài)SI或S2,如果讀取的位值是1, 則關(guān)聯(lián)到S3或S4。在設(shè)置所述序列的每個(gè)位的值的步驟中,如果位的狀態(tài)是SI或S2,則可以將值設(shè)置為0,如果狀態(tài)是S3或S4,則設(shè)置為I。如在圖4的實(shí)例中,因此可以在位可以采取的狀態(tài)和兩個(gè)值O或I之間具有對應(yīng)(通常將是這種情況)。此對應(yīng)可以進(jìn)一步用于上面針對計(jì)算奇偶校驗(yàn)提供的公式bjb/+…+bk(j)i中。實(shí)際上,如果位bpb/、···的狀態(tài)是SI或S2,則使用的值可以是0,如果位bpb/、…、Κ(/的狀態(tài)是S3或S4,則可以是I。如此第二實(shí)例和所述第一實(shí)例中所示,因此在通常情況下,可以根據(jù)例如由對應(yīng)位狀態(tài)確定的所述序列的位的值來執(zhí)行計(jì)算對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)。在所述方法的第二實(shí)例中,所述狀態(tài)集合可以包括四個(gè)狀態(tài),在這種情況下,對于每個(gè)狀態(tài),可以通過兩位邏輯實(shí)現(xiàn)位狀態(tài),從而與所述第一實(shí)例相比產(chǎn)生開銷。應(yīng)指出,所述方法的第二實(shí)例可以通過相應(yīng)地修改所述條件集合而用于諸如二進(jìn)制對稱通道(BSC)之類的其他通道模型。下表I針對特定實(shí)例提供了廣泛的條件集合以及對應(yīng)的狀態(tài)集合。再次地,實(shí)現(xiàn)此類狀態(tài)集合以及條件集合具有相對低的復(fù)雜性,并在實(shí)踐中獲得良好的效果。
權(quán)利要求
1.一種用于對在諸如閃存的采用二進(jìn)制非對稱通道的存儲器上寫入的位序列進(jìn)行解碼的方法,所述位序列通過低密度奇偶校驗(yàn)碼或LDPC碼編碼,由此所述序列的每個(gè)位具有通過所述LDPC碼定義的對應(yīng)奇偶校驗(yàn),所述方法包括 -提供包括第一狀態(tài)(SI)和第二狀態(tài)(S2)的位狀態(tài)集合(10)以及條件集合(20),其中當(dāng)滿足條件時(shí),更改位狀態(tài),所述條件集合包括用于將位狀態(tài)從所述第一狀態(tài)更改為所述第二狀態(tài)的第一條件(Cl)和用于將位狀態(tài)從所述第二狀態(tài)更改為所述第一狀態(tài)的第二條件(C2 ),其中所述第一條件和所述第二條件不同, -讀取所述位序列的每個(gè)位的值,并根據(jù)所讀取的值將每個(gè)位關(guān)聯(lián)到所述集合的相應(yīng)狀態(tài)(S100), -對于所述位序列的目標(biāo)位(30 ),評估(S200 )條件,其中 ■根據(jù)所述目標(biāo)位的狀態(tài)從所述條件集合中選擇條件,以及 ■使用計(jì)算與所述目標(biāo)位對應(yīng)的奇偶校驗(yàn)的結(jié)果來評估所述條件, -確定(S300)滿足所述條件, -作為滿足所述條件的結(jié)果而更改(S400)所述目標(biāo)位的狀態(tài),以及 -根據(jù)所述目標(biāo)位的狀態(tài)設(shè)置(S500)所述目標(biāo)位的值。
2.根據(jù)權(quán)利要求I的方法,其中重復(fù)(S600)評估步驟,在所述評估步驟的每次重復(fù)中,所述目標(biāo)位(30)是所述序列的不同位。
3.根據(jù)權(quán)利要求2的方法,其中重復(fù)所述評估步驟,直到計(jì)算所述奇偶校驗(yàn)的結(jié)果指示滿足所有奇偶校驗(yàn)或達(dá)到最大重復(fù)數(shù)為止。
4.根據(jù)權(quán)利要求1-3中的任一權(quán)利要求的方法,其中 -所述位狀態(tài)集合包括所述第一狀態(tài)和所述第二狀態(tài), -所述條件集合包括所述第一條件和所述第二條件, -在關(guān)聯(lián)每個(gè)位的步驟中,將位關(guān)聯(lián)到 ■所述第一狀態(tài),如果讀取的位的值是0, ■所述第二狀態(tài),如果讀取的位的值是1, -在設(shè)置所述目標(biāo)位的值的步驟中,將所述目標(biāo)位的值設(shè)置為 ■0,如果所述目標(biāo)位關(guān)聯(lián)到所述第一狀態(tài), ■1,如果所述目標(biāo)位關(guān)聯(lián)到所述第二狀態(tài)。
5.根據(jù)權(quán)利要求4的方法,其中只要不滿足對應(yīng)于所述目標(biāo)位的大多數(shù)奇偶校驗(yàn),則滿足所述第一條件,而只要不滿足對應(yīng)于所述目標(biāo)位的所有奇偶校驗(yàn),則滿足所述第二條件。
6.根據(jù)權(quán)利要求4的方法,其中只要不滿足的對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的數(shù)量高于第一閾值,則滿足所述第一條件,而只要不滿足的對應(yīng)于所述目標(biāo)位的奇偶校驗(yàn)的數(shù)量高于第二閾值,則滿足所述第二條件,所述第一閾值和所述第二閾值不同。
7.根據(jù)權(quán)利要求1-3中的任一權(quán)利要求的方法,其中 -所述位狀態(tài)集合還包括第三狀態(tài)(S3 )和第四狀態(tài)(S4 ), -所述條件集合包括條件對的第一子集,其中 ■對的一個(gè)條件是用于將位狀態(tài)從第i狀態(tài)更改為第j狀態(tài)的條件, ■該對的另一條件是用于將位狀態(tài)從所述第j狀態(tài)更改為所述第i狀態(tài)的條件,■對的所述條件不同,以及 ■所述第一條件和所述第二條件形成一對所述第一子集, -所述條件集合還包括條件對的第二子集,其中 ■對的一個(gè)條件是用于將位狀態(tài)從第k狀態(tài)更改為第I狀態(tài)的條件, ■該對的另一條件是用于將位狀態(tài)從所述第I狀態(tài)更改為所述第k狀態(tài)的條件,以及 ■一對所述第二子集的所述條件相同。
8.根據(jù)權(quán)利要求7的方法,其中所述條件集合針對在所述條件集合中沒有用于將位狀態(tài)從第m狀態(tài)更改為第η狀態(tài)的條件還包括第三子集,所述第三子集包括用于將位狀態(tài)從所述第m狀態(tài)更改為所述第η狀態(tài)的至少一個(gè)條件。
9.根據(jù)權(quán)利要求8的方法,其中只要不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)中的全部或至少一個(gè)但少于大多數(shù)或大多數(shù)奇偶校驗(yàn),或者滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn),則滿足條件。
10.根據(jù)權(quán)利要求8的方法,其中 -所述第一位狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是O的高置信度, -所述第二狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是O的低置信度, -所述第三狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是I的高置信度, -所述第四狀態(tài)對應(yīng)于要在所述存儲器上寫入的位的值是I的低置信度, 并且條件的所述第一子集包括 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)中的至少一個(gè)但少于大多數(shù)奇偶校驗(yàn)時(shí)滿足的所述第一條件、 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)時(shí)滿足的所述第二條件、 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)中的至少一個(gè)但少于大多數(shù)奇偶校驗(yàn)時(shí)滿足的用于將位從所述第三狀態(tài)更改為所述第四狀態(tài)的第三條件、 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)時(shí)滿足的用于將位從所述第四狀態(tài)更改為所述第三狀態(tài)的第四條件, 并且條件的所述第二子集包括 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第二狀態(tài)更改為所述第四狀態(tài)的第五條件、 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第四狀態(tài)更改為所述第二狀態(tài)的第六條件, 并且條件的所述第三子集包括 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第一狀態(tài)更改為所述第四狀態(tài)的第七條件、 -當(dāng)不滿足與所述目標(biāo)位對應(yīng)的所有奇偶校驗(yàn)的大多數(shù)時(shí)滿足的用于將位狀態(tài)從所述第三狀態(tài)更改為所述第二狀態(tài)的第八條件。
11.根據(jù)權(quán)利要求1-10中的任一權(quán)利要求的方法,其中根據(jù)通過對應(yīng)位狀態(tài)確定的所述序列的位的值來執(zhí)行計(jì)算與所述目標(biāo)位對應(yīng)的奇偶校驗(yàn)。
12.—種具有記錄在其上的計(jì)算機(jī)程序的計(jì)算機(jī)可讀存儲介質(zhì),所述計(jì)算機(jī)程序包括指令以便由計(jì)算機(jī)執(zhí)行,所述指令包括用于執(zhí)行權(quán)利要求1-11中的任一權(quán)利要求的方法的裝置。
13.—種系統(tǒng),包括 -適合于寫入通過LDPC碼編碼的位序列的存儲器;以及 -用于執(zhí)行根據(jù)權(quán)利要求1-11中的任一權(quán)利要求的方法的裝置。
14.根據(jù)權(quán)利要求13的系統(tǒng),其中所述存儲器是優(yōu)選地基于浮柵晶體管技術(shù)的閃存。
全文摘要
提供了一種用于對通過LDPC碼編碼的位序列進(jìn)行解碼的方法。所述方法包括提供包括第一狀態(tài)和第二狀態(tài)的位狀態(tài)集合,以及包括第一條件和第二條件的用于更改位狀態(tài)的條件集合。所述第一條件和所述第二條件不同。所述方法包括讀取所述序列的每個(gè)位的值、根據(jù)所讀取的值將每個(gè)位關(guān)聯(lián)到所述集合的相應(yīng)狀態(tài)、確定滿足評估的條件,以及作為滿足所述條件的結(jié)果而更改目標(biāo)位的狀態(tài)。所述方法然后可以根據(jù)目標(biāo)位的狀態(tài)設(shè)置所述序列的所述目標(biāo)位的值。與傳統(tǒng)的位翻轉(zhuǎn)算法相比,此類方法為用于對通過LDPC碼編碼的位序列進(jìn)行解碼的解決方案提供更好的性能,且只是略微增加了復(fù)雜性。
文檔編號H03M13/11GK102893529SQ201180024635
公開日2013年1月23日 申請日期2011年5月25日 優(yōu)先權(quán)日2010年5月31日
發(fā)明者E·S·埃萊夫特里烏, R·哈斯, 胡曉宇, D·V·源 申請人:國際商業(yè)機(jī)器公司