處理迭代解碼器的初級檢驗(yàn)節(jié)點(diǎn)的制作方法
【專利摘要】本發(fā)明公開的實(shí)施例描述用于以節(jié)省計算資源的方式處理與迭代解碼器關(guān)聯(lián)的初級檢驗(yàn)節(jié)點(diǎn)的裝置、設(shè)備、方法、計算機(jī)可讀介質(zhì)和系統(tǒng)配置。在多種實(shí)施例中,可以接收m個元組的第一和第二集合,例如作為初級檢驗(yàn)節(jié)點(diǎn)的輸入。每個元組可以包括符號和該符號為正確的概率,以及可以按其相應(yīng)概率將m個元組的第一和第二集合排序。在多種實(shí)施例中,可以計算m個元組的第一和第二集合的少于全部的組合用于考慮作為初級檢驗(yàn)節(jié)點(diǎn)的輸出,并且可以從作為輸出的考慮中去除一些計算的組合。在多種實(shí)施例中,初級檢驗(yàn)節(jié)點(diǎn)可以輸出具有最高概率的m個輸出元組的集合??擅枋龊?或要求保護(hù)其它實(shí)施例。
【專利說明】處理迭代解碼器的初級檢驗(yàn)節(jié)點(diǎn)
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明的實(shí)施例一般涉及數(shù)據(jù)處理的領(lǐng)域;并且更具體地來說,涉及處理迭代解碼器的初級檢驗(yàn)節(jié)點(diǎn)。
[0003]
【背景技術(shù)】
[0004]本文中提供的背景描述出于一般地呈現(xiàn)本公開的上下文的目的。當(dāng)前指名的
【發(fā)明者】的工作,到其在這個背景部分被描述的程度,以及在提交時可以不以其它方式取得現(xiàn)有技術(shù)資格的描述的方面,既沒有明確地也沒有隱含地被承認(rèn)為針對本公開的現(xiàn)有技術(shù)。除非在本文中以其它方式指示,這個部分中描述的方法對于本公開中的權(quán)利要求不是現(xiàn)有技術(shù),并且也沒有通過包含在這個部分中而被承認(rèn)是現(xiàn)有技術(shù)。
[0005]糾錯碼(“ECC”)解碼器可以用來在信道上對可包括一個或多個“碼字”的編碼數(shù)據(jù)進(jìn)行解碼。例如,存儲器控制器可以使用ECC解碼器來處理比特錯誤,并且恢復(fù)與在非易失存儲器(“NVM”)的管芯中存儲的ECC碼字相關(guān)聯(lián)的數(shù)據(jù)。作為另一示例,ECC解碼器可以被用來處理比特錯誤并且恢復(fù)與有線或者無線通信信道上的編碼的入局?jǐn)?shù)據(jù)相關(guān)聯(lián)的數(shù)據(jù)。
[0006]迭代解碼器,例如非二進(jìn)制低密度奇偶校驗(yàn)(“LDPC”)解碼器,可以處理碼字多次,其中每次迭代使碼字更接近原始數(shù)據(jù)。在稱為“擴(kuò)展的最小和”的迭代解碼的一種形式中,符號和符號正確的相關(guān)聯(lián)概率可以在可變節(jié)點(diǎn)和對應(yīng)于可變節(jié)點(diǎn)間關(guān)系的校驗(yàn)節(jié)點(diǎn)之間傳遞。可以使用前向后向算法來使涉及單個檢驗(yàn)節(jié)點(diǎn)的計算分解成涉及多個初級檢驗(yàn)節(jié)點(diǎn)的計算。
【專利附圖】
【附圖說明】
[0007]實(shí)施例通過結(jié)合附圖的以下詳細(xì)描述將易于被理解。為了便于這個描述,相似參考標(biāo)號標(biāo)明相似結(jié)構(gòu)要素。實(shí)施例在附圖中以示例的方式而不是以限制的方式進(jìn)行說明。
[0008]圖1以示意圖形式示出根據(jù)多種實(shí)施例的示例迭代解碼器。
[0009]圖2以示意圖形式示出根據(jù)多種實(shí)施例的與示例初級檢驗(yàn)節(jié)點(diǎn)關(guān)聯(lián)的示例概念矩陣。
[0010]圖3以示意圖形式示出根據(jù)多種實(shí)施例的如何可以存儲圖1的概念矩陣的邊。
[0011]圖4以示意圖形式示出根據(jù)多種實(shí)施例的可以考慮用于輸出的圖1和圖2的概念矩陣的元素。
[0012]圖5以示意圖形式示出根據(jù)多種實(shí)施例的示例方法。
[0013]圖6以示意圖形式示出根據(jù)多種實(shí)施例的示例系統(tǒng)。
[0014]
【具體實(shí)施方式】
[0015]在以下的詳細(xì)描述中,對形成其一部分的附圖進(jìn)行參考,其中相似標(biāo)號通篇標(biāo)明相似部分,并且在附圖中以說明的方式示出可以實(shí)踐的實(shí)施例。要理解,可以使用其它實(shí)施例并且可以實(shí)施結(jié)構(gòu)或邏輯的改變。因此,以下的詳細(xì)描述不以限制的意義理解。
[0016]各種操作可以以最有助于理解所要求保護(hù)的主題的方式被依次描述為多個分立的動作或操作。但是,描述的順序應(yīng)該不被解釋為意味著這些操作必然是順序相關(guān)的。具體來說,可以不以陳述的順序執(zhí)行這些操作。描述的操作可以以不同于所述實(shí)施例的順序來執(zhí)行??梢詧?zhí)行各個附加操作,并且/或者所述操作可以在附加實(shí)施例中省略。
[0017]出于本公開的目的,短語“A和/或B”意味著(A)、(B)或者(A和B)。出于本公開的目的,短語“A、B和/或C,,意味著(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或者(A、B和C)。
[0018]本描述可以使用短語“在實(shí)施例中”或者“在多個實(shí)施例中”,它們可以各自指的是相同或不同實(shí)施例中的一個或多個。此外,術(shù)語“包括”、“包含”、“具有”等在針對本公開的實(shí)施例使用時,是同義的。
[0019]在本文中使用時,術(shù)語“模塊”可以指或者包括專用集成電路(“ASIC”)、電子電路、執(zhí)行一個或多個軟件或固件程序的處理器(共享的、專用的或者組)和/或存儲器(共享的、專用的或者組)、組合邏輯電路、和/或提供所述功能性的其它合適組件,或者是其一部分。在本文中使用時,“計算機(jī)實(shí)現(xiàn)的方法”可以指由一個或多個處理器、具有一個或多個處理器的計算機(jī)系統(tǒng)、例如智能電話的移動裝置(其可以包括一個或多個處理器)、平板計算機(jī)、膝上型計算機(jī)、機(jī)頂盒、游戲控制臺等執(zhí)行的任何方法。
[0020]初級檢驗(yàn)節(jié)點(diǎn)的計算可以包括初級檢驗(yàn)節(jié)點(diǎn)內(nèi)的排序元組(〈符號,概率 > )。執(zhí)行非二進(jìn)制低密度奇偶校驗(yàn)(“LDPC”)解碼器時涉及的所有操作中,與初級檢驗(yàn)節(jié)點(diǎn)的計算關(guān)聯(lián)的操作可能需要最多資源,例如硅面積。相應(yīng)地,本文描述了多種技術(shù)以用于減少與初級檢驗(yàn)節(jié)點(diǎn)的計算關(guān)聯(lián)的操作的數(shù)量,以便節(jié)省計算資源。
[0021]現(xiàn)在參考圖1,存儲裝置10,這里以固態(tài)驅(qū)動器(“SSD”)的形式示出,可以包括存儲器控制器12和非易失性存儲器(“NVM”)14。在一些實(shí)施例中,NVM 14可以是NAND閃存存儲器。在多種實(shí)施例中,NVM 14可以是其它類型的NVM,如鐵電隨機(jī)存取存儲器(“FeTRAM”)、基于納米線的NVM、相變存儲器(“PCM”)、具有開關(guān)的PCM (“PCMS”)等。在多種實(shí)施例中,存儲裝置10可以是其它類型的存儲裝置,如硬盤驅(qū)動器(“HDD”)。
[0022]存儲器控制器還可以包括迭代解碼器16,迭代解碼器16可以配置成將存儲在NVM14的信道18上的編碼數(shù)據(jù)或“碼字”解碼。在多種實(shí)施例中,迭代解碼器16可以是LDPC解碼器,以及碼字可以利用LDPC編碼器(未示出)編碼的。還可以使用其它迭代編碼/解碼方案。在一些實(shí)施例中,存儲器控制器12和迭代解碼器16可以是分開的,但是在操作上耦合的。
[0023]在多種實(shí)施例中,存儲裝置10可以配置成耦合到主機(jī)計算裝置(未示出),如多種計算和/或消費(fèi)電子設(shè)備/電器,包括但不限于桌上型、膝上型或平板計算機(jī)。為此,接口26可以包括用于將存儲裝置10耦合到主機(jī)計算裝置的任何適合的接口,例如但不限于,串行高級技術(shù)附連(“SATA”)接口、串行附連的SCSI (“SAS”)接口、通用串行總線(“USB”)接口、外圍控制接口(“PCI”)或其它適合的設(shè)備接口。在多種實(shí)施例中,接口 26可操作地將存儲裝置10耦合到總線28,總線28又可操作地耦合到主機(jī)計算裝置的其它組件。在多種實(shí)施例中,總線28可以是SATA總線。
[0024]除了存儲器的信道外,在多種其它實(shí)施例中,信道18可以是能夠存儲或傳送數(shù)據(jù)的任何介質(zhì),包括但不限于有線或無線通信信道。例如,LDPC解碼可以用在多種無線通信標(biāo)準(zhǔn)中,如 W1-Fi (IEEE 802.11 系列)、WiMAX (IEEE 802.16 系列)、10 吉比特以太網(wǎng)(“10GE”或“l(fā)OGbE”)等。LDPC解碼還可以與其它無線標(biāo)準(zhǔn),如長期演進(jìn)(“LTE”)、3G、4G、5G以及以外一起使用。在此類情況中,信道18可以保存通過此類無線介質(zhì)接收的LDPC編碼的數(shù)據(jù)。
[0025]不考慮信道18的性質(zhì),迭代解碼器16可以配置成將碼字拆分在多個變量節(jié)點(diǎn)20之間。在二進(jìn)制LDPC解碼器中,每個變量節(jié)點(diǎn)可以是用于存儲邏輯I或邏輯O的單個位。在非二進(jìn)制LDPC解碼器中,如圖1中的迭代解碼器16中,每個變量節(jié)點(diǎn)20可以表示一組位,以及每組可以形成q進(jìn)制符號。在任一情況中,變量節(jié)點(diǎn)可以通過多個檢驗(yàn)節(jié)點(diǎn)22(圖1中僅示出其中一個)彼此相關(guān)或彼此可相關(guān)。
[0026]處理檢驗(yàn)節(jié)點(diǎn)22可以包括處理多個初級檢驗(yàn)節(jié)點(diǎn)24。初級檢驗(yàn)節(jié)點(diǎn)24可以從兩個或更多個變量節(jié)點(diǎn)20或檢驗(yàn)節(jié)點(diǎn)22接收輸入。在圖1中,頂部的初級檢驗(yàn)節(jié)點(diǎn)24從頂部的兩個變量節(jié)點(diǎn)20接收輸入。迭代解碼器16可以提供輸出元組的集合O作為初級檢驗(yàn)節(jié)點(diǎn)24的輸出。
[0027]元組可以包括符號和符號正確的概率(〈符號,概率 >)。在多種實(shí)施例中,概率可以用對數(shù)形式來表示,例如,表示為對數(shù)密度比(“LDR”)。
[0028]在多種實(shí)施例中,可以通過使用一個元組的符號和/或概率以及另一個元組的符號和/或概率作為輸入來執(zhí)行操作以計算結(jié)果元組。例如,迭代解碼器可以通過執(zhí)行與元組的符號的XOR操作、通過乘以元組的概率和/或通過將元組的LDR的對數(shù)相加來基于兩個輸入元組計算結(jié)果元組。
[0029]在多種實(shí)施例中,可以是具有初級檢驗(yàn)節(jié)點(diǎn)最終輸出的最聞概率的兀組的數(shù)量。在多種實(shí)施例中,》可以是大于O的整數(shù)O? e Z〉)。在多種實(shí)施例中,初級檢驗(yàn)節(jié)點(diǎn)24的每個輸入可以包括?個元組的集合??梢圆捎枚喾N組合使用?個元組的兩個集合來計算mXm個可能的結(jié)果元組。但是,這些結(jié)果元組的一些可能具有低的概率(例如,它們不太可能是正確的),所以計算它們可能對于計算資源是不值得的。相應(yīng)地,在多種實(shí)施例中,迭代解碼器I6可以選擇性地計算個可能組合的子集,且當(dāng)將初級檢驗(yàn)節(jié)點(diǎn)24排序時,僅考慮該子集內(nèi)的元組。
[0030]圖2以示意圖形式示出對應(yīng)于在初級節(jié)點(diǎn)(例如,圖1中的16)處用作輸入的》個元組的兩個集合的個元組組合的個元素的概念矩陣200。概念矩陣200演示可以如何使用公開的技術(shù)來處理初級節(jié)點(diǎn)。但是,公開的技術(shù)可能不要求構(gòu)造實(shí)際二維矩陣作為數(shù)據(jù)結(jié)構(gòu)或另外的。
[0031]在圖2中,?設(shè)為4,但是在其它實(shí)施例中,?可以設(shè)為其它正整數(shù)。示出?個元組的兩個輸入集合:第一集合A和第二集合B。在多種實(shí)施例中,概念矩陣200的每個元素可以表示將由使用來自第一集合A中對應(yīng)于包含該元素的列的元組和來自第二集合B中對應(yīng)于包含該元素的行的元組作為輸入計算產(chǎn)生的元組。
[0032]當(dāng)接收到集合A和B作為初級檢驗(yàn)節(jié)點(diǎn)24的輸入時,迭代解碼器16可以通過其相應(yīng)的概率將這些輸入集合排序。這在圖2中可見,其中概念矩陣200的》個列對應(yīng)于排序的第一集合A的》個元組:{〈1,6>,〈3,5>,〈2,2>,〈O,O〉}。類似地,概念矩陣200的?個行對應(yīng)于元祖的排序的第二集合B的《個元組:{〈2,3>,〈3,1>,〈0,0>,〈1,-5>}。
[0033]雖然圖2中示出概念矩陣200的所有個元素,以計算來自集合A和B的元組的所有可能組合的結(jié)果來填充,但是這僅是出于說明的目的。使用本文描述的技術(shù),可以避免計算概念矩陣200的所有元組。替代地,可以計算個元組的子集并將其排序以選擇初級檢驗(yàn)節(jié)點(diǎn)的?個輸出元組。
[0034]在多種實(shí)施例中,可以選擇來自最外行(圖2中的頂行)和最外列(圖2中的最左列)的組合中的至少《個結(jié)果元組考慮作為輸出。迭代解碼器,如圖1中的迭代解碼器16,可以計算對應(yīng)于概念矩陣200的最外行和最外列的元素的2m-\個元組的中間集合C。最外行和最外列一起可以形成概念矩陣200的“邊”,在圖2中指示為“邊A”。圖2中還示出其它邊。邊B包含直接與邊A相鄰且位于其內(nèi)側(cè)的行和列中的5個元素。邊C包含直接與邊B相鄰且位于其內(nèi)側(cè)的行和列中的3個元素。邊D包含單個最內(nèi)的元素。
[0035]在多種實(shí)施例中,可以通過執(zhí)行至少如下操作來計算邊A中的2?-1個元組的中間集合C:
V元組Axe第一集合A,其中Z e Z且O ( x < ?_1,使用Ax和第二集合B中具有最高概率的元組Bi7作為輸入來計算結(jié)果元組C;,。在圖2中,例如,Bff是〈2,3>以及a =O0
[0036]V元組Bye第二集合B,其中7 e Z且I彡<?_1,使用By和第一集合A中具有最高概率的元組A#作為輸入來計算結(jié)果元組Caji。在圖2中,例如,是〈1,6>以及β = O。
[0037]在多種實(shí)施例中,然后,可以由例如迭代解碼器16從作為輸出的考慮中去除集合C中具有最低概率的2?_1個計算的元組的至少《-1個元組。在多種實(shí)施例中,可以使用奇偶合并排序算法(例如,Batcher合并排序)從作為輸出的考慮中去除中間集合C的至少個元組。
[0038]圖3中示出此情況的一個示例,圖3僅示出圖2的概念矩陣200中對應(yīng)于中間集合C/邊A的那些元素。對奇偶合并排序算法的第一輸入可以是中間集合C的第一子集Ct,
其中Cfi= H一在圖2中,第一輸入可以包含概念矩陣200的最頂行中左邊的第二、第三和第四元素/元組。對奇偶合并排序算法的第二輸入可以是中間集合C的第二子集Cv,其中Cv =…?!?。在圖2中,第二輸入可以包含概念矩陣200
的最左列中頂部的第二、第三和第四元素/元組。
[0039]為了執(zhí)行奇偶合并,可以將來自G中的第一元素與Ck的第三元素比較,可以將G的第二元素與Ck的第二元素比較,可以將G的第三元素與Ck的第一元素比較,并依此類推。在多種實(shí)施例中,可以將每個比較中具有較低概率的元組從作為輸出的考慮中去除。在多種實(shí)施例中,迭代解碼器,如圖1中的迭代解碼器,可以提供包含奇偶排序之后從中間集合C的2?_1個元組中余下的?個元組中的至少一些的?個輸出元組的集合O作為初級檢驗(yàn)節(jié)點(diǎn)的輸出。
[0040]對于概念矩陣200的余下元素(邊B-D),迭代解碼器,如圖1中的迭代解碼器16,除了奇偶排序后余下的來自邊A的元素/元組之外,還可以選擇應(yīng)該考慮用于輸出的那些元素/元組。在圖2中,可以保證給定元素上方和左邊的所有元素具有更高概率。由此,如果給定元素上方和左邊有《或更多個元素,則該給定元素可以不需要考慮用于輸出。相應(yīng)地,在多種實(shí)施例中,迭代解碼器,如圖1中的迭代解碼器16,可以計算元組的另一個中間集合D,其對應(yīng)于集合C的2?-l個元組以外的概念矩陣200的元素(如圖1中的邊B-D),其具有概念矩陣上方和左邊的少于?個元素。
[0041]可以采用多種方式來計算中間集合D。例如,假定對于概念矩陣200中的給定元素,i表示元素的列。還假定將列編號,開始于最外列P,其對應(yīng)于集合A中具有最高概率的輸入元組(圖2中的〈1,6>),到《-1-盧。圖2中示出這一點(diǎn),其中最外列是最左列,并且這些列從左向右編號為0-3。類似地,假定表示元素的行,并且將行編號,開始于最外n A其對應(yīng)于具有最高概率的輸入元組,JA J.=-到ff1-Ι- α。在圖2的示例中,O并且從上向下將這些行編號為0-3。在這些假定下,可以有可保證具有高于給定元素Eu的概率的(i+l)X C/+l)_l 個元素。
[0042]在圖2中,這些元素可以位于給定元素上方和左邊。但是,可以采用不同方式將輸入集合排序。例如,對應(yīng)于具有最聞概率的輸入兀組的列可以是最右邊列(例如,β =?),以及對應(yīng)于具有最高概率的輸入元組的行可以是最底行(例如 =m\在此情況中,給定的元素,可以保證下方和右邊的元素具有更高概率。
[0043]相應(yīng)地,在多種實(shí)施例中,V ih j),其中l(wèi)'€Z? JsZt ?=0.β=?, I <i<勝t I <j < ?-1,且U+H、(/>1) -1 < W,迭代解碼器,如圖1中的迭代編解碼器16,可以使用Ai和By作為輸入來計算結(jié)果元組Dy。在多種實(shí)施例中,迭代解碼器可以包括中間集合D中的這些結(jié)果元組Dy。
[0044]將<2.和設(shè)為O不一定表不最左列和最頂行分別對應(yīng)于集合A和B中具有最聞概率的輸入元組。而是,這可以指示對應(yīng)于具有最高概率的輸入元組的無論什么列/行被編入索引0,并且可以從O開始將余下列/行編入索引(左到右、右到左、上到下或下到上)。例如,如果概率矩陣的最右列對應(yīng)于具有輸入元組的集合的最高概率的輸入元組,則可以從右到左,0、1、2、…、ff1-1將這些列編入索引。由此,無論輸入集合A和B如何排序,可以使用上文描述的技術(shù)來計算中間集合D。
[0045]在計算中間集合D的元組之后,在多種實(shí)施例中,迭代解碼器然后可以將來自中間集合C和D的元組合并到要輸出的集合O中。在多種實(shí)施例中,這可以包括從中間集合C和D選擇具有最高概率的《個元組以便包含在集合O中。例如,可以例如由迭代解碼器16將中間集合D中的元組組成對應(yīng)于概念矩陣200內(nèi)的邊(例如,B-D)的子集。然后可以將所述子集彼此合并以及與中間集合C (邊A)的2?-l個元組中的余下?個元組中的至少一些合并以獲得用于輸出集合O的《個元組的集合。在多種實(shí)施例中,可以將表示組合的邊的子集(例如,邊B和C)與其它子集(例如邊A)合并。
[0046]在多種實(shí)施例中,中間集合C和D的合并可以包括構(gòu)造具有中間集合D的多個子集和中間集合C的樹數(shù)據(jù)結(jié)構(gòu)作為節(jié)點(diǎn)。例如,并且再次參考圖2,如邊B和邊C的內(nèi)邊可以選為節(jié)點(diǎn)并與其它內(nèi)邊以及邊A合并。
[0047]在多種實(shí)施例中,s可以是包含兩個元組的兩個邊之間的邊的數(shù)量。例如,當(dāng)比較邊A和邊B中的元組時,5=0。換言之,對于概念矩陣200的兩個給定元素Ey和e
且s = I min (i, j) - min {x, y) | -1 (其中“min Cr, _f) ”表示z和7中的最小者)。在多種實(shí)施例中,一個邊(例如圖2的邊A)的(s + 2)2-1個元組可以具有比內(nèi)邊的任何元組更高的概率。相應(yīng)地,可以相對于集合C中具有最低概率的? - {s + 2Y +1個元組將集合D的一個或多個元組Dy選擇性地排序。在多種實(shí)施例中,可以相對于集合C的元組將集合D的一個或多個元組Dy選擇性地排序。在多種實(shí)施例中,可以考慮集合C中具有最高概率的Cs + 2)2-1個元組用于輸出而不與集合D的元組比較。
[0048]圖4中示出此情況的一個示例。計算的元組是邊A中奇偶排序之后余下的那些元組,以及來自具有小于上方和左邊m個元組的邊B的一個元組。由此,可以選擇邊A的Cs +2)2-1個元組以便包含在輸出集合O中而不與邊B中的元組進(jìn)行任何比較??梢韵鄬τ诩螦中具有最低概率的《 - {s + 2)2 +1個余下元組將來自集合B的一個元組選擇性地排序。在此示例中,》二4且5.=0,并且因此邊A的最頂部三個元組具有比來自邊B的一個元組更高的概率。由此,如圖4底部所示,相對于邊A中具有最低概率的一個元組將來自邊B的一個元組選擇性地排序。此處,概率(6)相等,并且因此可以選擇任一元組。否則,將選擇具有更高概率的元組以便包含在用于輸出的集合O的?個元組中。
[0049]圖5示出根據(jù)多種實(shí)施例的可以例如由迭代解碼器,如圖1的迭代解碼器16實(shí)現(xiàn)以將信道上的ECC碼字解碼的示例方法500。在框502處,迭代解碼器可以接收信道上的編碼數(shù)據(jù)作為輸入。例如,并且如上文論述,該迭代解碼器可以從非易失性存儲器的管芯或從有線或無線通信信道接收編碼數(shù)據(jù)。在框504處,可以例如由迭代解碼器將編碼數(shù)據(jù)拆分層多組位,且可以將每組與變量節(jié)點(diǎn)關(guān)聯(lián)。
[0050]在框506處,迭代解碼器可以提供個元組的兩個集合作為與檢驗(yàn)節(jié)點(diǎn)關(guān)聯(lián)的初級檢驗(yàn)節(jié)點(diǎn)的輸入。每個元組可以包括來自兩個變量節(jié)點(diǎn)的?個可能符號以及每個可能符號正確的關(guān)聯(lián)概率。在框508處,迭代解碼器可以通過其相應(yīng)的概率將?個元組的兩個輸入集合排序(例如,產(chǎn)生如圖2的第一集合A和第二集合B輸入集合)。
[0051]在框510處,迭代解碼器可以計算對應(yīng)于概念矩陣中最外行和最外列的元素的2?-l個元組(例如,上文描述的中間集合C/邊A)。在框512處,迭代解碼器可以從作為輸出的考慮去除(例如集合C)中具有最低概率的2m-\個元組的至少個元組。如上文描述,在多種實(shí)施例中,可以使用奇偶合并排序算法(例如,Batcher合并排序)來去除》-1個元組。
[0052]在框514處,該迭代解碼器可以計算對應(yīng)于概念矩陣的元素的2m_\個元組以外的元組的中間集合(例如,上文描述的集合D ),對于其概念矩陣中存在具有更高概率的少于》個元素。如上文描述,取決于輸入集合如何并入/排序成概念矩陣,對于給定元素,這可以包括上方和左邊、下方和右邊、上方和右邊或下方和左邊的元素。
[0053]在框516處,該迭代解碼器可以將框514處計算的中間集合D中的元組組織成對應(yīng)于概念矩陣內(nèi)的邊的子集。在框518處,迭代解碼器可以將所述子集彼此合并以及與2m~l個元組(例如,中間集合C)的余下?個元組的至少一些合并以獲得用于輸出的?個元組的集合O。在多種實(shí)施例中,迭代解碼器可以通過構(gòu)造樹數(shù)據(jù)結(jié)構(gòu)并將該樹排序來實(shí)現(xiàn)此合并,該樹數(shù)據(jù)結(jié)構(gòu)具有集合D的多個子集和集合C作為節(jié)點(diǎn)。在框520處,迭代解碼器可以輸出從框518的操作產(chǎn)生的個輸出元組的集合(例如,上文描述的集合O)。
[0054]圖6圖示根據(jù)多種實(shí)施例的計算裝置600。計算裝置600容納印刷電路板(“PCB”)602。PCB 602可以包括多個組件,包括但不限于處理器604和至少一個通信芯片606。處理器604可以物理和電耦合到PCB 602。在多種實(shí)施例中,至少一個通信芯片606也可以物理和電耦合到PCB 602。在又一些實(shí)現(xiàn)中,通信芯片606可以是處理器604的一部分。在多種實(shí)施例中,處理器604可以與其它組件集成在同一個管芯上以形成芯片上系統(tǒng)(“SoC”)。
[0055]取決于其應(yīng)用,計算裝置600可以包括可能或可能不物理和電耦合到PCB 602的其它組件。這些其它組件包括但不限于,易失性存儲器(例如,DRAM 608)、非易失性存儲器(例如,ROM 610)、閃存存儲器612、存儲器控制器613、圖形處理器614、數(shù)字信號處理器(未示出)、加密處理器(未示出)、芯片組616、天線618、顯示器(未示出)、觸摸屏顯示器620、觸摸屏控制器622、電池624;音頻編解碼器(未示出)、視頻編解碼器(未示出)、功率放大器626、全球定位系統(tǒng)(“GPS”)設(shè)備628、羅盤630、加速計(未示出)、陀螺儀(未示出)、揚(yáng)聲器632、照相機(jī)634、以及大容量存儲設(shè)備(如,硬盤驅(qū)動器、壓縮盤(“⑶”)、數(shù)字多功能盤(“DVD”))(未示出)等。
[0056]通信芯片606能夠?qū)崿F(xiàn)有線和/或無線通信以用于向計算裝置600和從計算裝置600傳遞數(shù)據(jù)。術(shù)語“無線”及其派生可以用于描述可以通過利用經(jīng)由非固體媒體的調(diào)制的電磁輻射傳送數(shù)據(jù)的電路、裝置、系統(tǒng)、方法、技術(shù)、通信信道等。所述術(shù)語不暗示著關(guān)聯(lián)的裝置不包含任何線,雖然在一些實(shí)施例中它們可能不包含。通信芯片606可以實(shí)現(xiàn)多種無線標(biāo)準(zhǔn)或協(xié)議中任一種,包括但不限于W1-Fi (IEEE 802.11系列)、WiMAX (IEEE 802.16系列)、IEEE 802.20、長期演進(jìn)(“LTE”)、Ev-DO, HSPA+, HSDPA+, HSUPA+, EDGE、GSM、GPRS、CDMA、TDMA、DECT、藍(lán)牙及其派生,以及命名為3G、4G、5G和以外的任何其它無線協(xié)議。計算裝置600可以包括多個通信芯片606。例如,第一通信芯片606可以專用于較短范圍的無線通信,如W1-Fi和藍(lán)牙,以及第二通信芯片606可以專用于較長范圍的無線通信,如GPS、EDGE、GPRS、CDMA、WiMAX、LTE、Ev-DO 等。
[0057]計算裝置600的處理器604可以包括封裝在處理器604內(nèi)的集成電路管芯。在多種實(shí)施例中,處理器604的集成電路管芯可以包括一個或多個裝置,如晶體管或金屬互連,它們形成以便于協(xié)助使用本文描述的一個或多個技術(shù)進(jìn)行ECC碼字的迭代解碼。術(shù)語“處理器”可以指處理來自寄存器和/或存儲器的電子數(shù)據(jù)以將該電子數(shù)據(jù)轉(zhuǎn)換成可以存儲在寄存器和/或存儲器中的其它電子數(shù)據(jù)的任何裝置或裝置的一部分。
[0058]通信芯片606還可以包括封裝在通信芯片606內(nèi)的集成電路管芯。在多種實(shí)施例中,通信芯片606的集成電路管芯可以包括一個或多個裝置,如晶體管或金屬互連,它們形成以便于協(xié)助進(jìn)行ECC碼字的迭代解碼。
[0059]在多種實(shí)現(xiàn)中,計算裝置600可以是膝上型計算機(jī)、上網(wǎng)本、筆記本、超級本、智能電話、平板計算機(jī)、個人數(shù)字助理(“PDA”)、超級移動PC、移動電話、桌上型計算機(jī)、服務(wù)器、打印機(jī)、掃描儀、監(jiān)視器、機(jī)頂盒、娛樂控制單元、數(shù)字照相機(jī)、便攜式音樂播放器或數(shù)字錄像機(jī)。在又一些實(shí)現(xiàn)中,計算裝置600可以是處理數(shù)據(jù)的任何其它電子設(shè)備。
[0060]如下段落描述多種實(shí)施例,其可以在裝置、設(shè)備、方法、計算機(jī)可讀介質(zhì)(瞬態(tài)和非瞬態(tài))、系統(tǒng)等中實(shí)現(xiàn)。
[0061]在多種實(shí)施例中,可以接收個元組的第一集合A和《個元組的第二集合B,每個兀組包括符號和該符號為正確的概率,其中e z>。在多種實(shí)施例中,可以將第一集合A按其元組的概率排序,并且可以將第二集合B按其元組的概率排序。在多種實(shí)施例中,可以執(zhí)行至少如下操作來計算2m-\個元組的集合C:
V元組Axe第一集合A,其中z e Z且O ( x < ?_1,使用Ax和第二集合B中具有最高概率的元組:Bh作為輸入來計算結(jié)果元組;以及
V元組Bye第二集合B,其中e Z且I < ?_1,使用By和第一集合A中具有最高概率的元組jS?作為輸入來計算結(jié)果元組。
[0062]在多種實(shí)施例中,可以從作為輸出的考慮中去除集合C中具有最低概率的至少ff1-Ι個元組。在多種實(shí)施例中,可以輸出包含集合C的至少一些余下元組的?個輸出元組的集合O。在多種實(shí)施例中,計算可以包括使用來自集合A的元組的符號與來自集合B的元組的符號執(zhí)行XOR操作。在多種實(shí)施例中,計算可以包括將來自集合A的元組的概率的對數(shù)與來自集合B的元組的概率的對數(shù)相加。
[0063]在多種實(shí)施例中,去除可以包括使用奇偶排序算法對集合C的元組進(jìn)行排序。在多種實(shí)施例中,對奇偶合并排序算法的第一輸入可以是C的第一子,其中Cf= Cia,
CfU,…以及對奇偶合并排序算法的第二輸入可以是C的第二子集Cv,其中Cv =
,U,...0
[0064]在多種實(shí)施例中,可以通過V iijh其中/€Z, /eZ.e=0,#=0, I <?
1.,且{?+Η> ^ C/'+D-1 ,使用AJP B7.作為輸入來計算結(jié)果元組DiJ,并將
Dy包含在集合D中來計算集合D。在多種實(shí)施例中,可以將來自集合C和D的元組合并到集合O中。在多種實(shí)施例中,還可以通過將來自集合C和D且具有最高概率的個元組包含到集合O來實(shí)現(xiàn)合并。在多種實(shí)施例中,合并可以包括相對于集合C中具有最低概率的《-{s + 2)2 +1個元組將集合D的元組Dy選擇性地排序,其中5.e 2&且8 = | min{i, j)-min{x,y) | _1。在多種實(shí)施例中,合并可以包括構(gòu)造具有集合D的多個子集和集合C的樹數(shù)據(jù)結(jié)構(gòu)作為節(jié)點(diǎn)。
[0065]雖然出于說明的目的,本文圖示和描述了某些實(shí)施例,但是可以利用計劃用于實(shí)現(xiàn)相同目的的各種備選和/或等效實(shí)施例或?qū)崿F(xiàn)來替代所示出和描述的實(shí)施例。本申請意圖涵蓋本文論述的實(shí)施例的任何修改或變化。因此,明顯意圖是本文描述的實(shí)施例僅由權(quán)利要求及其等同物來限制。
【權(quán)利要求】
1.一種初級檢驗(yàn)節(jié)點(diǎn)處理的計算機(jī)實(shí)現(xiàn)的方法,其包括: 接收?個元組的第一集合A和《個元組的第二集合B,每個元組包括符號和所述符號為正確的概率,其中》e Z> ; 將所述第一集合A按其元組的概率排序,以及將所述第二集合B按其元組的概率排序; 通過執(zhí)行至少如下操作來計算2m-\個元組的集合C: V元組Axe所述第一集合A,其中z e Z且O ( z < ?_1,使用Ax和所述第二集合B中具有最高概率的元組1^作為輸入來計算結(jié)果元組CK,? ;以及 ?元組Bye所述第二集合B, 其中7 e Z且I < y < ?_1,使用By和所述第一集合A中具有最高概率的元組^^作為輸入來計算結(jié)果元組; 從作為輸出的考慮中去除所述集合c中具有最低概率的至少?-ι個元組;以及 輸出包含所述集合c的至少一些余下元組的?個輸出元組的集合O。
2.如權(quán)利要求1所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述計算包括使用來自所述集合A的元組的符號與來自所述集合B的元組的符號執(zhí)行XOR操作。
3.如權(quán)利要求1所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述計算包括將來自所述集合A的元組的概率的對數(shù)與來自所述集合B的元組的概率的對數(shù)相加。
4.如權(quán)利要求1所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述去除包括使用奇偶合并排序算法對所述集合C的元組進(jìn)行排序,其中對所述奇偶合并排序算法的第一輸入是C的第一子集€;,其中f = H…,以及對所述奇偶合并排序算法的第二輸入是c的第二子集Q ,其中 Cv = Cm , C^2 ,…C”—'。
5.如權(quán)利要求1所述的計算機(jī)實(shí)現(xiàn)的方法,還包括通過V(Uh其中
,且(?+.11、(jf I) -1 < ?I,使用 Ai 和 By 作為輸入來計算結(jié)果元組Dy將Dy包含在集合D中來計算所述集合D。
6.如權(quán)利要求5所述的計算機(jī)實(shí)現(xiàn)的方法,還包括將來自所述集合C和D的元組合并到所述集合O中。
7.如權(quán)利要求6所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述合并包括將來自所述集合C和D中具有最高概率的》個元組包含到所述集合O中。
8.如權(quán)利要求6所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述合并包括相對于所述集合C中具有最低概率的? -、s + 2)2 +1個元組將所述集合D的元組Dy選擇性地排序,其中5 e Z&? s = I minij, j) - min{x, y) | -1。
9.如權(quán)利要求6所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述合并包括構(gòu)造具有所述集合D的多個子集和所述集合C的樹數(shù)據(jù)結(jié)構(gòu)作為節(jié)點(diǎn)。
10.至少一個包含多個指令的機(jī)器可讀介質(zhì),所述多個指令響應(yīng)于在計算裝置上執(zhí)行而促使所述計算裝置執(zhí)行如權(quán)利要求1-9中任一項(xiàng)所述的方法。
11.一種配置成執(zhí)行如權(quán)利要求1-9中任一項(xiàng)所述的方法的設(shè)備。
12.一種處理初級檢驗(yàn)節(jié)點(diǎn)的計算機(jī)實(shí)現(xiàn)的方法,其包括: 接收個元組的第一集合和個元組的第二集合,每個元組包括符號和所述符號為正確的概率; 按所述第一和第二集合的相應(yīng)概率將?個元組的所述第一和第二集合排序; 計算對應(yīng)于概念矩陣的最外行和最外列的元素的2m-\個元組,所述概念矩陣具有對應(yīng)于所述排序的第一集合的?個元組的?個行和對應(yīng)于所述排序的第二集合的?個元組的?個列,其中所述概念矩陣的每個元素表示由使用來自所述第一集合中對應(yīng)于包含所述元素的行的元組和來自所述第二集合中對應(yīng)于包含所述元素的列的元組作為輸入計算產(chǎn)生的元組; 從作為輸出的考慮中去除所述2?_1個計算的元組中具有最低概率的至少《-1個元組;以及 輸出包含所述2?_1個元組中的余下?個元組的至少一些的?個輸出元組的集合。
13.如權(quán)利要求12所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述最外行是所述概念矩陣的頂行,并且所述最外列是所述概念矩陣的最左列,所述方法還包括: 計算對應(yīng)于所述2?_1個元組以外的所述概念矩陣的元素的具有所述概念矩陣中上方和左邊少于?個元素的中間集合的元組。
14.如權(quán)利要求13所述的計算機(jī)實(shí)現(xiàn)的方法,還包括將所述中間集合中的元組組織成對應(yīng)于所述概念矩陣內(nèi)的邊的子集,并將所述子集彼此合并以及與所述2m-\個元組中的余下?個元組的至少一些合并以獲得用于輸出的?個元組的集合。
15.如權(quán)利要求12所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述計算包括將來自所述第一集合的元組的符號與來自所述第二集合的元組的符號執(zhí)行XOR操作。
16.如權(quán)利要求12所述的計算機(jī)實(shí)現(xiàn)的方法,其中所述計算包括使用來自所述第一集合的元組的概率的對數(shù)與來自所述第二集合的元組的概率的對數(shù)相加。
17.—種系統(tǒng),其包括: 處理器; 信道;以及 迭代解碼器,所述迭代解碼器被所述處理器操作且配置成將所述信道上的碼字解碼,其中所述迭代解碼器配置成通過多個檢驗(yàn)節(jié)點(diǎn)將所述碼字組織成彼此相關(guān)的多個變量節(jié)點(diǎn),所述迭代解碼器配置成: 向與所述多個檢驗(yàn)節(jié)點(diǎn)的檢驗(yàn)節(jié)點(diǎn)關(guān)聯(lián)的初級檢驗(yàn)節(jié)點(diǎn)提供《個元組的第一集合A和m個元組的第二集合B作為輸入,每個元組包括表示所述碼字中的一組位的可能值的符號和所述符號為正確的概率,其中? e Z> ; 將所述第一集合A按其元組的概率排序,以及將所述第二集合B按其元組的概率排序; 執(zhí)行至少如下操作來計算2?_1個元組的集合C: V元組Ar e所述第一集合A,其中Z e Z且O ( χ <?_1,使用Ar和所述第二集合B中具有最高概率的元組B?作為輸入來計算結(jié)果元組;以及 V元組By e所述第二集合B,其中7 e Z且I <?_1,使用By和所述第一集合a中具有最高概率的元組^^作為輸入來計算結(jié)果元組;以及從作為所述初級檢驗(yàn)節(jié)點(diǎn)的輸出的考慮中去除所述集合C中具有最低概率的至少ff1-1個元組;以及 提供包含所述集合C在所述去除之后余下的至少一些元組的?個輸出元組的集合O作為所述初級檢驗(yàn)節(jié)點(diǎn)的輸出。
18.如權(quán)利要求17所述的系統(tǒng),其中所述迭代解碼器配置成通過使用來自所述集合A的元組的符號與來自所述集合B的元組的符號執(zhí)行XOR操作來計算2m-l個元組的所述集合C的至少一個元組。
19.如權(quán)利要求17所述的系統(tǒng),其中所述迭代解碼器配置成通過將來自所述集合A的元組的概率的對數(shù)與來自所述集合B的元組的概率的對數(shù)相加來計算2m-\個元組的所述集合C的至少一個元組。
20.如權(quán)利要求17所述的系統(tǒng),其中所述解碼器還配置成使用奇偶合并排序算法對所述集合C的元組進(jìn)行排序,其中對所述奇偶合并排序算法的第一輸入是C的第一子集Ci,其中Ci= Cu , Cxct,…Ciu,以及對所述奇偶合并排序算法的第二輸入是C的第二子集其中Cv = CW2,…。
21.如權(quán)利要求17所述的系統(tǒng),其中所述解碼器還配置成¥(ijh其中
,使用Ai和作為輸入并將Dy包含在集合D中來計算結(jié)果元組Dy。
22.如權(quán)利要求21所述的系統(tǒng),其中所述解碼器還配置成將來自所述集合C和D的元組合并到所述集合O中。
23.如權(quán)利要求22所述的系統(tǒng),其中所述解碼器還配置成將來自所述集合C和D中具有最高概率的》個元組包括在所述集合O中。
24.如權(quán)利要求22所述的系統(tǒng),其中所述解碼器還配置成相對于所述集合C中具有最低概率的? - {s + 2)2 +1個元組Qjl將所述集合D的元組Dy選擇性地排序,其中且 s = I min U, J) - min {x, y) | -1。
25.如權(quán)利要求22所述的系統(tǒng),其中所述解碼器還配置成構(gòu)造具有所述集合D的多個子集和所述集合C的樹數(shù)據(jù)結(jié)構(gòu)作為節(jié)點(diǎn)。
26.如權(quán)利要求17所述的系統(tǒng),其中所述信道包括與非易失性存儲器關(guān)聯(lián)的管芯。
27.如權(quán)利要求17所述的系統(tǒng),其中所述信道包括通信信道。
28.如權(quán)利要求17所述的系統(tǒng),還包括觸摸屏顯示器。
29.如權(quán)利要求17所述的系統(tǒng),還包括照相機(jī)。
30.一種系統(tǒng),其包括:處理器; 信道;以及 迭代解碼器,所述迭代解碼器被所述處理器操作且配置成將所述信道上的碼字解碼,其中所述迭代解碼器配置成通過多個檢驗(yàn)節(jié)點(diǎn)將所述碼字組織成彼此相關(guān)的多個變量節(jié)點(diǎn),所述迭代解碼器配置成: 提供《個元組的第一集合和《個元組的第二集合作為與所述多個檢驗(yàn)節(jié)點(diǎn)的檢驗(yàn)節(jié)點(diǎn)關(guān)聯(lián)的初級檢驗(yàn)節(jié)點(diǎn)的輸入,每個元組包括符號和所述符號為正確的概率; 按所述第一和第二集合的相應(yīng)概率將?個元組的所述第一和第二集合排序; 計算對應(yīng)于概念矩陣的最外行和最外列的元素的2m-\個元組,所述概念矩陣具有對應(yīng)于所述排序的第一集合的?個元組的?個行和對應(yīng)于所述排序的第二集合的?個元組的?個列,其中所述概念矩陣的每個元素表示由使用來自所述第一集合中對應(yīng)于包含所述元素的行的元組和來自所述第二集合中對應(yīng)于包含所述元素的列的元組作為輸入計算產(chǎn)生的元組; 從作為輸出的考慮中去除所述2?_1個計算的元組中具有最低概率的至少《-1個元組;以及 提供包含所述2?-1個元組中的余下》個元組的至少一些的》個輸出元組的集合作為所述初級檢驗(yàn)節(jié)點(diǎn)的輸出。
31.如權(quán)利要求30所述的系統(tǒng),其中所述最外行是所述概念矩陣的頂行,并且所述最外列是所述概念矩陣的最左列,并且所述迭代解碼器還配置成: 計算對應(yīng)于所述2?_1個元組以外的所述概念矩陣的元素的具有所述概念矩陣中上方和左邊少于?個元素的中間集合的元組。
32.如權(quán)利要求31所述的系統(tǒng),其中所述迭代解碼器還配置成將所述中間集合中的元組組織成對應(yīng)于所述概念矩陣內(nèi)的邊的子集,并將所述子集彼此合并以及與所述2m-\個元組中的余下?個元組的所述至少一些合并以獲得提供作為所述初級檢驗(yàn)節(jié)點(diǎn)的輸出的》個元組的集合。
33.如權(quán)利要求31所述的系統(tǒng),還包括觸摸屏顯示器。
34.如權(quán)利要求31所述的系統(tǒng),還包括照相機(jī)。
【文檔編號】H03M13/00GK104185952SQ201280071915
【公開日】2014年12月3日 申請日期:2012年3月28日 優(yōu)先權(quán)日:2012年3月28日
【發(fā)明者】Z.S.郭 申請人:英特爾公司