專利名稱::使用多校驗(yàn)節(jié)點(diǎn)算法的糾錯解碼器的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及信號處理,并具體地,涉及諸如低密度奇偶校驗(yàn)(LDPC)編碼和解碼的糾錯編碼和解碼技術(shù)。
背景技術(shù):
:在對碼字解碼時(shí),低密度奇偶校驗(yàn)(LDPC)解碼器可能遇到一個或更多個陷阱集(trappingset),其阻礙解碼器正確地對碼字解碼。陷阱集表示LDPC碼的Tarmer圖中的子圖,由于陷阱集可迫使解碼器收斂于不正確的結(jié)果,因此陷阱集典型地對LDPC碼的錯誤平層(error-floor)特性有強(qiáng)烈的影響。為了改進(jìn)錯誤平層特性,LDPC解碼器可以使用不同的技術(shù)打破主陷阱集(即典型地對錯誤平層特性有最顯著的影響的陷阱集)。這些主陷阱集基于諸如解碼器字符表(decoderalphabet)、解碼器算法、解碼器校驗(yàn)節(jié)點(diǎn)單元更新、信道條件和信號條件等解碼器的操作條件而廣泛地變化。
發(fā)明內(nèi)容在一個實(shí)施例中,本發(fā)明是一種用于對糾錯(EC)編碼的碼字解碼以恢復(fù)正確碼字的方法。該方法選擇縮放因子和偏移值,以及從上游處理器接收初始值的初始集合。初始值的初始集合對應(yīng)于EC編碼的碼字,并且初始集合中的每個初始值對應(yīng)于EC編碼的碼字的不同比特?;诔跏贾档某跏技仙傻谝幌⒓?,以及基于縮放因子和偏移值將第一消息集合轉(zhuǎn)換為經(jīng)縮放和偏移的消息。在另一實(shí)施例中,本發(fā)明是一種用于執(zhí)行上述方法的裝置。該裝置包括糾錯(EC)解碼器,用于對EC編碼的碼字解碼以恢復(fù)正確碼字。解碼器生成第一消息集合,并包括(i)一個或更多個模塊,適于基于縮放因子和偏移值將第一消息集合轉(zhuǎn)換為經(jīng)縮放和偏移的消息,以及(ii)控制器,適于選擇縮放因子和偏移值。通過以下詳細(xì)描述、所附權(quán)利要求和附圖,本發(fā)明的其他方面、特征和優(yōu)點(diǎn)將變得更加明顯,在附圖中相同的附圖標(biāo)記表示相似或相同的要素。圖1示出了可用于實(shí)現(xiàn)正則的、準(zhǔn)循環(huán)(quasi-cyclic,QC)低密度奇偶校驗(yàn)(LDPC)碼的奇偶校驗(yàn)H矩陣的一個實(shí)現(xiàn)方案;圖2示出了根據(jù)本發(fā)明的一個實(shí)施例的LDPC解碼器的簡化框圖,該解碼器可用于對使用H矩陣(諸如圖1的H矩陣)編碼的信號進(jìn)行解碼;以及圖3示出了校驗(yàn)節(jié)點(diǎn)單元(CNU)的一個實(shí)現(xiàn)方案的簡化框圖,該校驗(yàn)節(jié)點(diǎn)單元可用于實(shí)現(xiàn)圖2的LDPC解碼器的每個CNU。具體實(shí)施例方式此處提到“一個實(shí)施例”或“實(shí)施例”意指結(jié)合實(shí)施例描述的特定特征、結(jié)構(gòu)或特性可包括在本發(fā)明的至少一個實(shí)施例中。在本說明書各處出現(xiàn)的用語“在一個實(shí)施例中”并不必然都意指同一實(shí)施例,分立的或替選的實(shí)施例也并不必然互相排斥其他的實(shí)施例。這同樣適用于術(shù)語“實(shí)現(xiàn)方案”。通過改變LDPC解碼器使用的校驗(yàn)節(jié)點(diǎn)算法可以改進(jìn)LDPC解碼器的錯誤平層特性。典型地,使用特定的校驗(yàn)節(jié)點(diǎn)算法導(dǎo)致的陷阱集不同于使用其他校驗(yàn)節(jié)點(diǎn)算法導(dǎo)致的陷阱集。因此,例如,可以通過使校驗(yàn)節(jié)點(diǎn)算法從偏移最小和(offsetmin-sum)算法改變?yōu)榭s放最小和(scaledmin-sum)算法,獲得不同的陷阱集。也可以通過改變偏移最小和算法使用的偏移值,或者通過改變縮放最小和算法使用的縮放因子,獲得不同的陷阱集。圖1示出了可用于實(shí)現(xiàn)正則的、準(zhǔn)循環(huán)(QC)低密度奇偶校驗(yàn)(LDPC)碼的奇偶校驗(yàn)矩陣100的一個實(shí)現(xiàn)方案。奇偶校驗(yàn)矩陣100通常被稱為H矩陣,包括40個循環(huán)矩陣(CirCulant)Bj,k,它們被排列為r=4個循環(huán)矩陣行(即,塊行),其中j=1.....r,和c=10個循環(huán)矩陣列(即,塊列),其中k=1.....C。循環(huán)矩陣是子矩陣,該子矩陣是單位矩陣或者是通過對單位矩陣循環(huán)移位而獲得的,并且準(zhǔn)循環(huán)LDPC碼是其中所有子矩陣均為循環(huán)矩陣的LDPC碼。在H矩陣100中,每個循環(huán)矩陣Bjik是ρXp的子矩陣,其可以通過對單個pXp單位矩陣循環(huán)移位而獲得。出于這里討論的目的,假設(shè)P=72,從而使H矩陣100具有總共PXr=72X4=288個行以及總共pXc=72X10=720個列。由于每個循環(huán)矩陣B^t是單位矩陣的置換,因此循環(huán)矩陣中的每個列的漢明權(quán)重(S卩,具有值1的元的數(shù)目)以及循環(huán)矩陣中的每個行的漢明權(quán)重均等于1。因此,H矩陣100的每個行的總漢明權(quán)重K等于IXc=1X10=10,并且H矩陣100的每個列的總漢明權(quán)重W。等于1Xr=1X4=4。η矩陣100的288個行中的每個行對應(yīng)于第m個校驗(yàn)節(jié)點(diǎn),其中m的范圍是0.....287,并且H矩陣100的720個列中的每個列對應(yīng)于第η個變量節(jié)點(diǎn)(也被稱為比特節(jié)點(diǎn)),其中η的范圍是0.....719。再者,每個校驗(yàn)節(jié)點(diǎn)連接到如行中的1所表示的^=10個變量節(jié)點(diǎn),并且每個變量節(jié)點(diǎn)連接到如列中的1表示的W。=4個校驗(yàn)節(jié)點(diǎn)。由于H矩陣100的所有行具有相同的漢明權(quán)重W,并且H矩陣100的所有列具有相同的漢明權(quán)重W。,因此H矩陣100可被描述為正則LDPC碼。圖2示出了根據(jù)本發(fā)明的一個實(shí)施例的LDPC解碼器200的簡化框圖,該解碼器可用于對使用H矩陣(諸如圖1的H矩陣100)編碼的碼字進(jìn)行解碼。對于接收到的每個碼字,LDPC解碼器200(i)從可以執(zhí)行例如射頻處理、模數(shù)轉(zhuǎn)換、均衡、諸如Viterbi檢測的信道檢測、或適于生成軟輸出值的其他處理的上游處理器接收720個軟值(例如,對數(shù)似然比(LLR))Ln(°),并且(ii)將這些軟值Ln(°)存儲在軟值存儲器202中。上游處理器執(zhí)行的處理可以取決于其中實(shí)現(xiàn)LDPC解碼器200的特定應(yīng)用。每個軟值1^(°)對應(yīng)于碼字的一個比特,并且使用消息傳遞算法迭代地對每個碼字解碼。對于這里的討論,假設(shè)每個軟值Ln(°)具有五個比特,包括一個硬判決比特和四比特的置信值。通常,LDPC解碼器200使用塊串行消息傳遞方案(block-serialmessage-passingschedule)對720個軟值Ln(°)(即,消息)解碼。使用以下更新消息(i)288個校驗(yàn)節(jié)點(diǎn)單元(CNU)210,其中每個CNU210執(zhí)行關(guān)于H矩陣100的一個行(即,第m個校驗(yàn)節(jié)點(diǎn))的校驗(yàn)節(jié)點(diǎn)更新,和(ii)72個五比特的變量節(jié)點(diǎn)單元(VNU)204,其中每個VNU204執(zhí)行關(guān)于H矩陣100的十個列(即,第η個變量節(jié)點(diǎn))的變量節(jié)點(diǎn)更新。CNU210(0).....210(287)一次一個塊列地執(zhí)行對于H矩陣100的288個行的校驗(yàn)節(jié)點(diǎn)(即,行)更新,從而執(zhí)行對于第一塊列(即,循環(huán)矩陣B^B2il^“和^的校驗(yàn)節(jié)點(diǎn)更新,隨后執(zhí)行對于第二塊列(即,循環(huán)矩陣Β1>2、B2,2、B3,2和B4,2)的校驗(yàn)節(jié)點(diǎn)更新,隨后執(zhí)行對于第三塊列(即,循環(huán)矩陣B1,3、B2,3、B3,jPB4,3)的校驗(yàn)節(jié)點(diǎn)更新,以此類推。然后VNU204(0).....204(71)一次一個塊列地執(zhí)行對于H矩陣100的720個列的變量節(jié)點(diǎn)(即,列)更新,從而執(zhí)行對于第一塊列(即,循環(huán)矩陣B1,ρB2,ρB3a和B4J的變量節(jié)點(diǎn)更新,隨后執(zhí)行對于第二塊列(即,循環(huán)矩陣B1>2、B2,2、B3,2和B4,2)的變量節(jié)點(diǎn)更新,隨后執(zhí)行對于第三塊列(即,循環(huán)矩陣B1,3、B2,3、B3,3和B4,3)的變量節(jié)點(diǎn)更新,以此類推。在所有校驗(yàn)節(jié)點(diǎn)更新和變量節(jié)點(diǎn)更新均被執(zhí)行之后,LDPC解碼器200的迭代(即,局部迭代)完成。在最初時(shí),以每個時(shí)鐘周期72個軟值Ln的速率向四個多路復(fù)用器206(0).....206(3)提供720個五比特的軟值Ln(°),從而使每個多路復(fù)用器206接收集合中的所有72個軟值Ln(°)。每個多路復(fù)用器206還從VNU204(0).....204(71)接收72個五比特的變量節(jié)點(diǎn)消息(在此處被稱為Q消息),該消息是如下文更詳細(xì)討論的而生成的。在LDPC解碼器200的首次迭代期間,多路復(fù)用器206(0).....206(3)分別選擇它們接收的72個五比特的軟值Ln的集合,以分別向72路循環(huán)移位器208(0).....208(3)輸出。未被選擇的初始的Q消息可以是針對先前考慮的碼字而生成的Q消息。在LDPC解碼器200的隨后的迭代期間,多路復(fù)用器206(0).....206(3)分別選擇它們從VNU204(0).....204(71)接收的72個五比特的Q消息的集合,以分別向72路循環(huán)移位器208(0).....208(3)輸出。對于后面的討論,將理解,任何對Q消息的引用適用于在LDPC解碼器200的首次迭代期間的軟值Ln(0)。循環(huán)移位器208(0).....208(3)基于可以從例如控制器214接收的循環(huán)移位信號,使它們接收的72個五比特的Q消息的集合循環(huán)移位。該循環(huán)移位信號對應(yīng)于圖1的H矩陣100的循環(huán)矩陣的循環(huán)移位因子。例如,在LDPC解碼器200的迭代的首個時(shí)鐘周期期間,循環(huán)移位器208(0).....208(3)可以分別基于圖1的H矩陣100的循環(huán)矩陣B1,ρB2,ρB3a和B4il的移位因子,使它們各自的72個五比特的Q消息的集合移位。在LDPC解碼器200的迭代的第二個時(shí)鐘周期期間,循環(huán)移位器208(0).....208(3)分別基于循環(huán)矩陣B1,2、B2,2、B3,2和B4,2的移位因子,使它們各自的72個五比特的Q消息的集合移位。循環(huán)移位器208(0).....208(3)隨后向CNU210(0).....210(287)提供它們各自的72個經(jīng)循環(huán)移位的五比特的Q消息,從而使每個CNU210接收Q消息中的不同的一個Q消息。每個CNU210(i)以每個時(shí)鐘周期一個Q消息的速率接收數(shù)目等于H矩陣100的行的漢明權(quán)重例如,10)的五比特的Q消息,并且(ii)生成^個五比特的校驗(yàn)節(jié)點(diǎn)消息(此處被稱為R消息)。每個CNU210是可有選擇地配置為使用如下算法生成R消息的(i)偏移最小和校驗(yàn)節(jié)點(diǎn)算法、()縮放最小和校驗(yàn)節(jié)點(diǎn)算法、或(iii)應(yīng)用于偏移和縮放兩者的最小和校驗(yàn)節(jié)點(diǎn)算法。每個R消息可被表示為如下所示的式(1)、(2)和(3)(1)<formula>formulaseeoriginaldocumentpage8</formula>(2)<formula>formulaseeoriginaldocumentpage8</formula>(3)其中(i)R(i)表示用于LDPC解碼器200的第i次迭代的與圖1的H矩陣100的第m個校驗(yàn)節(jié)點(diǎn)(即,行)和第η個變量節(jié)點(diǎn)(即,列)對應(yīng)的R消息,(U)Qnm(H)表示用于第(i-1)次迭代的與H矩陣100第η個變量節(jié)點(diǎn)和第m個校驗(yàn)節(jié)點(diǎn)對應(yīng)的Q消息,(iii)α表示縮放因子,其范圍為Ol,(iv)i3表示偏移值,其范圍是O15,以及(ν)函數(shù)sign表示對Qnm(H)消息的符號執(zhí)行乘法運(yùn)算(即,II)。假設(shè)η'是除了第η個變量節(jié)點(diǎn)外的連接到第m個校驗(yàn)節(jié)點(diǎn)的所有變量節(jié)點(diǎn)的集合N(m)/n中的變量節(jié)點(diǎn)(S卩,n'eN(m)/n)。對應(yīng)于第m個校驗(yàn)節(jié)點(diǎn)(S卩,行)的CNU210基于在先前的第(i_l)次迭代期間從集合N(m)/η接收的所有Q消息生成消息Rmn(i)。因此,在圖2的實(shí)施例中,基于N(m)/n=9個Q消息(即,Wr-i=10-1)生成每個R消息。應(yīng)當(dāng)注意,對于首次迭代,在式(2)和(3)中使用從軟值存儲器202接收到的軟值Ln(°)代替用于前一次迭代的Q消息(即,Q2=Cm)。例如,可由控制器214選擇每個CNU210使用的特定算法。例如,為了實(shí)現(xiàn)無縮放的偏移最小和校驗(yàn)節(jié)點(diǎn)算法,控制器214可以選擇1的縮放因子α,從而使CNU210不執(zhí)行縮放,并且選擇除O以外的偏移值β。為了實(shí)現(xiàn)無偏移的縮放最小和校驗(yàn)節(jié)點(diǎn)算法,控制器214可以選擇O的偏移值β,從而使CNU210不執(zhí)行偏移,并且選擇除1以外的縮放因子α。為了實(shí)現(xiàn)執(zhí)行縮放和偏移兩者的最小和校驗(yàn)節(jié)點(diǎn)算法,控制器214可以選擇除O以外的偏移值β和除1以外的縮放因子α。在最初時(shí),控制器214選擇所期望的偏移和縮放因子。隨后,控制器214可以例如從LDPC解碼器200的一次迭代(即,一次局部迭代)到下一次迭代地,從LDPC碼的一個層到下一個層地,從一個碼字到下一個碼字地,以及從一次全局迭代(下文進(jìn)一步描述)到下一次全局迭代地,改變偏移和縮放因子。圖3示出了根據(jù)本發(fā)明的一個實(shí)施例的CNU300的簡化框圖,其可用于實(shí)現(xiàn)圖2的LDPC解碼器200的每個CNU210。通常,CNU300生成10個五比特的R消息,其中每個五比特的R消息是使用N(m)/n=9個Q消息(如上文所述排除了一個消息)的集合而生成的。對于這10個五比特的R消息中的9個消息,使用式⑵生成的Q消息的最小幅度(magnitude)是相同的。對于這些R消息中的一個消息,由于Q消息的最小幅度將被如上所述從計(jì)算排除,因此Q消息的最小幅度將是Q消息的第二小幅度。不同于執(zhí)行式(2)10次,對于10個五比特的R消息中的每個R消息執(zhí)行一次,CNU300實(shí)現(xiàn)了值再利用技術(shù),其中CNU300(i)使用M1_M2尋找器302確定具有最小和第二小的幅度的Q消息并且(ii)基于最小和第二小的幅度生成10個五比特的R消息。在最初的10個時(shí)鐘周期中的每個時(shí)鐘周期期間,M1_M2尋找器302接收具有2的補(bǔ)碼格式的五比特的Q消息??梢允褂每s放和偏移邏輯模塊310來使五比特的Q消息縮放和/或偏移??梢栽贑NU300中的多種位置應(yīng)用縮放和/或偏移。例如,可以由縮放和偏移邏輯模塊334或346應(yīng)用縮放和/或偏移,替代由縮放和偏移邏輯模塊310執(zhí)行的縮放和/或偏移??商孢x地,可以由縮放和偏移邏輯模塊310、334和346中的兩個或更多個縮放和偏移邏輯模塊應(yīng)用縮放和/或偏移。縮放因子(例如,αι、a2、Ci3)和/或偏移值(例如,βρβ2、β3)可由例如圖2的控制器214提供。當(dāng)使用縮放和偏移邏輯模塊310、334和346中的兩個或更多個縮放和偏移邏輯模塊時(shí),從一個縮放和偏移邏輯模塊到下一個縮放和偏移邏輯模塊,縮放因子和偏移值可以是不同的。作為另一替選方案,可以在與偏移不同的位置應(yīng)用縮放。當(dāng)在不同位置中由不同模塊執(zhí)行縮放和偏移時(shí),可以稱之為,不同的模塊基于縮放因子和偏移值將消息轉(zhuǎn)換為經(jīng)縮放和偏移的消息。例如,如果模塊310執(zhí)行縮放并且模塊346執(zhí)行偏移,則模塊310和346可被稱為將Q消息轉(zhuǎn)換為經(jīng)縮放和偏移的R消息。Μ1_Μ2尋找器302使用2的補(bǔ)碼到符號-幅度(2TSM)轉(zhuǎn)換器312將每個可能經(jīng)縮放和/或偏移的Q消息從2的補(bǔ)碼格式轉(zhuǎn)換為五比特的符號_幅度值。符號_幅度值的符號比特326被提供給符號處理邏輯328,該符號處理邏輯328(i)生成所有10個Q消息的符號比特326的積并且(ii)將每個符號比特326乘以該積以對于10個R消息中的每個R消息生成不同的符號比特332。五比特的符號_幅度值Q[4:0]的四比特的幅度IQl[3:0]連同分別存儲在部分狀態(tài)存儲器304的部分狀態(tài)寄存器330(0)和330(1)中的四比特的最小幅度值Ml和四比特的第二小幅度值M2被一起提供給多路復(fù)用器(MUX)320。此外,四比特的幅度值IQI[3:0]被提供給觸發(fā)器(FF)314,該FF314使CNU300的時(shí)序與LDPC解碼器200的時(shí)鐘信號同步。最小值運(yùn)算器316(0)將幅度值IQl與寄存器330(0)中存儲的最小幅度值Ml比較。如果幅度值IQl小于最小幅度值M1,則最小值運(yùn)算器316(0)斷言(assert)控制信號318(0)(S卩,將318(0)設(shè)定為等于1)。否則,最小值運(yùn)算器316(0)去斷言(de-assert)控制信號318(0)(S卩,將318(0)設(shè)定為等于0)。類似地,最小值運(yùn)算器316(1)將幅度值|Q|與寄存器330(1)中存儲的第二小幅度值M2比較。如果幅度值IQl小于M2,則斷言控制信號318(1)。否則,將控制信號318(1)去斷言。應(yīng)當(dāng)注意,出于本申請的目的,最小幅度值Ml和第二小幅度值M2被認(rèn)為是消息。為了進(jìn)一步理解MUX320的操作,考慮用于幅度值IQI的表I的邏輯表。表I:多路復(fù)用器320邏輯表__控制信號控制信號對330(0)對330(1)318(0)318(1)__的輸出的輸出Q(|Q1>M1)0(|Q1>M2)MlM2_0(|Q1>M1)1(1Q|<M2)Ml|Q丨_1(|Q1<M1)0(|Q1>M2)Ν/ΑN/A1(1Q1<M1)11(1Q|<M2)|Q|Ml表I示出了,如果控制信號318(0)和318(1)均被去斷言(即,Q彡Ml和M2),則幅度值IQI被丟棄,并且先前存儲的最小和第二小的幅度值Ml和M2被分別存儲在Ml寄存器330(O)和M2寄存器330(1)中。如果控制信號318(0)被去斷言并且控制信號318(1)被斷言(即,M2>IQl彡Ml),則⑴最小幅度值Ml被存儲在Ml寄存器330(0)中,(ii)幅度值IQl被存儲在M2寄存器330(1)中,并且(iii)先前存儲的第二小幅度值M2被丟棄。如果控制信號318(0)和318(1)均被斷言(即,IQl<M1*M2),PJ⑴幅度值Ql被存儲在Ml寄存器330(0)中,(ii)先前存儲的最小值Ml被存儲在M2寄存器330(1)中,并且(iii)第二小值M2被丟棄。除了在Ml寄存器330(0)中存儲幅度值|Q|之外,還將機(jī)_索引寄存器330(2)使能,與新的最小值Ml對應(yīng)的計(jì)數(shù)器值324(由計(jì)數(shù)器322生成)被存儲在Ml_索引寄存器330(2)中,并且先前存儲在Ml_索引寄存器330(2)中的計(jì)數(shù)器值被丟棄。應(yīng)當(dāng)注意,控制信號318(0)將被斷言并且控制信號318(1)將被去斷言的情況是不可能的,這是因?yàn)檫@將指示幅度值IQI小于最小幅度值Ml且大于第二小幅度值M2。此外,在首個時(shí)鐘周期之前,最小和第二小的幅度值Ml和M2被初始化為適當(dāng)大的值(例如,二進(jìn)制1111),并且Ml_索引被初始化為0。在所有10個Q消息均已被考慮之后,可以通過縮放和偏移邏輯模塊334使最小幅度值Ml和第二小幅度值M2縮放和/或偏移。符號-幅度到2的補(bǔ)碼(SMT2)轉(zhuǎn)換器338通過將正的符號比特附加到四比特的值Ml‘,來將可能經(jīng)縮放和偏移的四比特的最小幅度值Ml'轉(zhuǎn)換為五比特的正的2的補(bǔ)碼值,并且將五比特的結(jié)果(+Ml')存儲在最終狀態(tài)處理器306的寄存器336(0)中。SMT2轉(zhuǎn)換器338還通過將負(fù)的符號比特附加到四比特的值Ml',來將可能經(jīng)縮放和/或偏移的四比特的偏移最小幅度值ΜΓ轉(zhuǎn)換為五比特的負(fù)的2補(bǔ)碼值,并且將該五比特的結(jié)果(-Ml')存儲寄存器336(1)中。此外,如果來自符號處理邏輯328的符號比特332是正的符號比特(0),則SMT2轉(zhuǎn)換器338將可能經(jīng)縮放和/或偏移的四比特的第二小幅度值M2'轉(zhuǎn)換為五比特的正的2補(bǔ)碼值(+M2'),以存儲在寄存器336(2)中。如果來自符號處理邏輯328的符號比特332是負(fù)的符號比特(1),則SMT2轉(zhuǎn)換器338將可能經(jīng)縮放和/或偏移的四比特的第二小幅度值M2'轉(zhuǎn)換為五比特的負(fù)的2補(bǔ)碼值(-M2'),以存儲在寄存器336(2)中。最終狀態(tài)處理器306的寄存器336(3)存儲來自Ml_索引寄存器330(2)的計(jì)數(shù)器值M1_INDEX。在緊接的10個時(shí)鐘周期中的每個時(shí)鐘周期期間,R選擇器308的MUX344基于以下來輸出五比特的R消息(1)正的值(+Ml')、(2)負(fù)的值(-Ml')、(3)正的或負(fù)的值(士M2')、(4)來自比較運(yùn)算器340的比較比特342、和(5)符號處理邏輯328中存儲的對應(yīng)符號比特326。通過將當(dāng)前的計(jì)數(shù)器值324與寄存器336(3)中存儲的Ml_索引值比較,生成了每個比較比特342。當(dāng)兩者相等時(shí),比較比特342被斷言,并且當(dāng)兩者不相等時(shí),比較比特342被去斷言??梢允褂檬?3)將每個符號比特332生成為δJi),或者可替選地,在使用FIFO實(shí)現(xiàn)符號處理邏輯328的情況中,通過將所存儲的符號比特326在其從FIFO輸出時(shí)乘以符號處理邏輯328中存儲的所有符號比特326的積,來將每個符號比特332生成為Smn(i)。為了進(jìn)一步理解如何從MUX344輸出R消息,考慮表II的邏輯表。<table>tableseeoriginaldocumentpage11</column></row><table>表II示出了,如果比較比特342和符號比特332均被去斷言,則寄存器336(0)中存儲的正的值(+ΜΓ)將被輸出作為五比特的R消息。如果比較比特342被去斷言并且符號比特332被斷言,則寄存器336(1)中存儲的負(fù)的值(-Ml')將被輸出作為五比特的R消息。如果比較比特342被斷言并且符號比特332被去斷言,則正的值(+M2')將已被存儲在存儲器336(2)中,并且現(xiàn)將被輸出作為五比特的R消息。如果比較比特342和符號比特332均被斷言,則負(fù)的值(-M2')將已被存儲在存儲器336(3)中,并且現(xiàn)將被輸出作為五比特的R消息。隨后可通過縮放和偏移邏輯346來使R消息縮放和/或偏移?;貋韰⒄請D2,循環(huán)移位器212(0).....212(3)從它們各自的CNU210接收72個五比特的R消息的集合,并且根據(jù)圖1的H矩陣的循環(huán)矩陣Bj,k的循環(huán)移位來使72個五比特的R消息的集合循環(huán)移位?;旧?,循環(huán)移位器212(0).....212(3)將循環(huán)移位器208(0).....208(3)的循環(huán)移位反轉(zhuǎn)。例如,如果循環(huán)移位器208(0).....208(3)執(zhí)行循環(huán)上移位,則循環(huán)移位器212(0).....212(3)執(zhí)行循環(huán)下移位。循環(huán)移位器212(0)、...、212(3)向VNU204(0)、···、204(71)提供4X72個循環(huán)移位的五比特的R消息,從而使每個VNU204接收四個R消息,即從每個循環(huán)移位器212接收一個R消息。每個VNU204更新如式(4)中所示生成的4個五比特的Q消息中的每個Q消息<formula>formulaseeoriginaldocumentpage11</formula>其中m'是除了第m個校驗(yàn)節(jié)點(diǎn)以外的連接到第η個變量節(jié)點(diǎn)的所有校驗(yàn)節(jié)點(diǎn)的集合M(n)/m中的校驗(yàn)節(jié)點(diǎn)(即,m'eM(n)/m)。第η個變量節(jié)點(diǎn)基于⑴在先前第(i_l)次迭代期間從集合M(n)/m接收的所有R消息和(ii)從與第η個變量節(jié)點(diǎn)對應(yīng)的軟值存儲器202接收的初始軟值1^(°),生成消息0^)??梢允褂眉臃ㄆ麟娐穼?shí)現(xiàn)每個VNU204,每個VNU204輸出其生成的4個更新的五比特的Q消息,從而向不同的對應(yīng)的MUX206提供四個消息中的不同的一個消息。除輸出4個更新的五比特的Q消息之外,每個VNU204還輸出(i)七比特的非本征(extrinsic)LLR值、(ii)硬判決輸出比特、和(iii)八比特的P值。每個七比特的非本征LLR值可被表示為如式(5)中所示的<formula>formulaseeoriginaldocumentpage11</formula>其中m是連接到第η個變量節(jié)點(diǎn)的所有校驗(yàn)節(jié)點(diǎn)的集合M(n)中的校驗(yàn)節(jié)點(diǎn)(即,meM(n))??梢允褂萌缦率?6)生成每個八比特的P值<formula>formulaseeoriginaldocumentpage12</formula>,并且(6)可以基于下式(7)和⑶生成每個硬判決比特毛如果<formula>formulaseeoriginaldocumentpage12</formula>(7)如果Pn<0,則<formula>formulaseeoriginaldocumentpage12</formula>(8)通過將來自式(5)的非本征值添加到從與第η個變量節(jié)點(diǎn)對應(yīng)的軟值存儲器202接收的初始軟值1^(°),確定關(guān)于每個變量節(jié)點(diǎn)的Ρη。如式(7)中所示,如果Pn大于或等于0,則硬判決比特毛等于0。如式(8)中所示,如果Pn小于0,則硬判決比特夂等于1。隨后由例如控制器214利用硬判決值執(zhí)行奇偶校驗(yàn),以確定LDPC解碼器200是否已收斂在有效碼字。特別地,由在10個時(shí)鐘周期期間從VNU204(0).....204(71)輸出的720個硬判決比特毛形成的720元素的向量;^與圖1的H矩陣100的轉(zhuǎn)置矩陣Ht相乘以生成288比特的向量,其中288比特的向量中的每個比特對應(yīng)于H矩陣100的288個校驗(yàn)節(jié)點(diǎn)(即,行)中的一個。如果得到的288比特的向量的每個元素等于0(即,JiZ^=O),則LDPC解碼器200已收斂在有效碼字。另一方面,如果得到的288比特的向量的一個或更多個元素等于1(即,;/^#0),則LDPC解碼器200尚未收斂在有效碼字。具有1的值的288比特的向量的每個元素被視為不滿意的校驗(yàn)節(jié)點(diǎn)。如果并且當(dāng)LDPC解碼器200收斂在有效碼字,則可由例如控制器214執(zhí)行循環(huán)冗余校驗(yàn)(CRC)。如果CRC成功,則LDPC解碼器200已收斂在有效的正確碼字。如果CRC不成功,則LDPC解碼器200已收斂在有效但不正確的碼字。如果LDPC解碼器200未收斂在有效碼字或收斂在有效但不正確的碼字,則需要進(jìn)一步的行動以恰當(dāng)?shù)鼗謴?fù)正確碼字。例如,可以執(zhí)行LDPC解碼器200的隨后的局部迭代以收斂在有效的正確碼字。作為另一示例,可以執(zhí)行全局迭代,由此(i)非本征LLR值被饋送回上游處理器,(ii)檢測器生成新的720個五比特的軟值1^(°)的集合,以及(iii)LDPC解碼器200嘗試從該新的720個五比特的軟值1^(°)的集合恢復(fù)正確的碼字。如果在預(yù)先限定的局部和/或全局迭代次數(shù)內(nèi)LDPC解碼器200未收斂在有效的正確碼字,則接收器和/或LDPC解碼器可以采取進(jìn)一步的行動以恢復(fù)有效碼字,諸如執(zhí)行被設(shè)計(jì)用于打破陷阱集的其他方法。在一些情況中,LDPC解碼器200可能不能恢復(fù)正確碼字。作為另一示例,LDPC解碼器200駐留其中的接收器可以請求數(shù)據(jù)重傳。對于每次隨后的對碼字解碼的嘗試(例如,每次隨后的局部迭代、隨后的全局迭代、或者重傳),控制器214可以選擇一個或更多個不同的縮放因子α、一個或更多個不同的偏移值β,或者一個或更多個不同的縮放因子α和一個或更多個不同的偏移值β。可以使用任何適當(dāng)?shù)姆椒ㄟx擇縮放因子α和偏移值β。例如,可以基于在奇偶校驗(yàn)期間識別到的不滿意的校驗(yàn)節(jié)點(diǎn)的數(shù)目來選擇縮放因子α和偏移值β。當(dāng)不滿意的校驗(yàn)節(jié)點(diǎn)的數(shù)目相對小的時(shí)候,可以選擇相對接近1的縮放因子α和相對接近0的偏移值β,以引發(fā)校驗(yàn)節(jié)點(diǎn)消息中相對小的改變。當(dāng)不滿意的校驗(yàn)節(jié)點(diǎn)的數(shù)目相對大的時(shí)候,可以選擇較小的縮放因子α和/或較大的偏移值β,以引發(fā)校驗(yàn)節(jié)點(diǎn)消息中相對大的改變。隨著縮放因子α從1減小,并且隨著偏移值β從0增加,對校驗(yàn)節(jié)點(diǎn)消息的改變增加。作為另一示例,在預(yù)定次數(shù)的迭代之后可以使縮放因子α和偏移值β漸增??梢园蠢?.2的增量來調(diào)節(jié)縮放因子α,并且可以按例如1的增量來調(diào)節(jié)偏移值β。通過改變縮放因子α和/或偏移值β,較之僅實(shí)現(xiàn)固定的縮放因子或沒有縮放因子或者僅實(shí)現(xiàn)固定的偏移因子或沒有偏移因子的LDPC解碼器,本發(fā)明的LDPC解碼器能夠改進(jìn)錯誤平層特性。當(dāng)本發(fā)明的LDPC解碼器遇到陷阱集時(shí),解碼器可以改變一個或更多個縮放因子α和/或一個或更多個偏移值β以嘗試打破陷阱集,從而使LDPC解碼器具有對碼字正確解碼的另一機(jī)會。盡管已經(jīng)針對圖2的特定的非分層LDPC解碼器配置200描述了本發(fā)明,但是本發(fā)明不限于此。對于使用消息傳遞的其他LDPC解碼器結(jié)構(gòu),也可以設(shè)想本發(fā)明的各種實(shí)施例。例如,本發(fā)明可被實(shí)現(xiàn)用于其他非分層的或分層的解碼器結(jié)構(gòu),以及使用不同于塊串行消息傳遞方案的消息傳遞方案的解碼器。作為另一示例,可以在不使用循環(huán)移位器的情況下實(shí)現(xiàn)本發(fā)明的LDPC解碼器。在該實(shí)施例中,可以通過直接連接或使用執(zhí)行非循環(huán)移位的排列器(permutator)在CNU和VNU之間傳遞消息。根據(jù)各種實(shí)施例,可以使用不同于最小和算法的校驗(yàn)節(jié)點(diǎn)算法實(shí)現(xiàn)本發(fā)明。在這些實(shí)施例中,可以分別通過與縮放和偏移邏輯模塊346和310類似的方式,將縮放和/或偏移應(yīng)用于校驗(yàn)節(jié)點(diǎn)消息和/或變量節(jié)點(diǎn)消息。此外,與縮放和偏移邏輯模塊334類似地,可以在生成校驗(yàn)節(jié)點(diǎn)消息之前通過校驗(yàn)節(jié)點(diǎn)算法應(yīng)用縮放和/或偏移。盡管已經(jīng)針對圖1的特定的H矩陣100描述了本發(fā)明,但是本發(fā)明不限于此。本發(fā)明可被實(shí)現(xiàn)用于具有與圖ι的矩陣100相同或不同的大小(size)的各種H矩陣。例如,本發(fā)明可被實(shí)現(xiàn)用于如下H矩陣,在該H矩陣中,列、塊列、行、塊行、層(包括僅具有一個層的實(shí)現(xiàn)方案)、每時(shí)鐘周期處理的消息的數(shù)目,子矩陣的大小,層的大小,和/或列和/或行的漢明權(quán)重不同于H矩陣100的。該H矩陣可以是例如,循環(huán)、準(zhǔn)循環(huán)、非循環(huán)、正則、或非正則H矩陣。此外,該H矩陣可以包括不同于循環(huán)矩陣的子矩陣,包括零矩陣。應(yīng)當(dāng)注意,VNU、桶式移位器(barrelshifter)和/或CNU的數(shù)目可以根據(jù)H矩陣的特性變化。將進(jìn)一步理解,本領(lǐng)域的技術(shù)人員可以對用以解釋本發(fā)明的本質(zhì)而描述和示出的部件的布置、細(xì)節(jié)、和材料進(jìn)行各種變更,而不偏離如所附權(quán)利要求中表達(dá)的本發(fā)明的范圍。例如,縮放和偏移邏輯模塊可以在不同于圖3中示出的三個位置(例如,不同于310、334,346)的位置實(shí)現(xiàn),諸如在多路復(fù)用器320的幅度|Q|輸入處或者在SMT2轉(zhuǎn)換器338與最終狀態(tài)寄存器336(0).....336(2)之間實(shí)現(xiàn)??s放和偏移邏輯模塊310還可以位于VNU(或者生成變量節(jié)點(diǎn)消息的加法器)的輸出處,而不是作為CNU300的部件,并且縮放和偏移邏輯模塊346還可以位于VNU(或者生成變量節(jié)點(diǎn)消息的加法器)的輸入處,而不是作為CNU300的部件。作為另一示例,不同于使用2的補(bǔ)碼格式接收Q消息和輸出R消息,CNU300可以以另一格式(諸如,符號-幅度格式)來接收和輸出消息。此外,2的補(bǔ)碼到符號-幅度轉(zhuǎn)換可由例如VNU執(zhí)行。作為另一示例,本發(fā)明的LDPC解碼器可以處理大小不是五比特的消息。盡管已經(jīng)在LDPC碼的背景下描述了本發(fā)明的實(shí)施例,但是本發(fā)明不限于此。本發(fā)明的實(shí)施例可被實(shí)現(xiàn)用于可由圖定義的任何碼,例如tornado碼和結(jié)構(gòu)化IRA碼,這是因?yàn)閳D定義的碼受到陷阱集的困擾。盡管已經(jīng)針對電路的處理過程描述了本發(fā)明的示例性實(shí)施例,包括作為單個集成電路、多芯片模塊、單個卡或多卡電路組件的可能的實(shí)現(xiàn)方案,但是本發(fā)明不限于此。如本領(lǐng)域的技術(shù)人員將認(rèn)識到的,電路元件的各種功能也可被實(shí)現(xiàn)為軟件程序中的處理模塊。可以在例如數(shù)字信號處理器、微控制器或通用計(jì)算機(jī)中使用該軟件。此外,本發(fā)明不限于接收和處理對數(shù)似然比??梢栽O(shè)想其中處理諸如似然比的其他軟值或者硬比特判決的本發(fā)明的各種實(shí)施例。如說明書和權(quán)利要求書中使用的術(shù)語“漸增”應(yīng)被理解為包括使值增加的情形和使值減小的情形。例如,使縮放因子漸增指定的縮放因子增量包括使縮放因子增加指定的縮放因子增量的情形和使縮放因子減小指定的縮放因子增量的情形。如說明書和權(quán)利要求中使用的,即使在第一和第二值之間生成了中間值,但是第二值仍可被稱為是“基于”第一值生成的。例如,即使在接收軟值1^(°)和生成校驗(yàn)節(jié)點(diǎn)消息之間生成了校驗(yàn)節(jié)點(diǎn)消息,但是變量節(jié)點(diǎn)消息仍可被稱為是“基于”解碼器接收的軟值Ln生成的。作為另一示例,在LDPC解碼器的第二次局部迭代期間生成的校驗(yàn)節(jié)點(diǎn)消息可被稱為是“基于”在第一次局部迭代期間接收的軟值Ln(°)生成的,即使在接收軟值Ln(°)和生成用于第二次局部迭代的校驗(yàn)節(jié)點(diǎn)消息之間生成了變量節(jié)點(diǎn)消息和其他校驗(yàn)節(jié)點(diǎn)消息。本發(fā)明可被具體化為方法和用于實(shí)踐這些方法的裝置的形式。本發(fā)明還可被具體化為程序代碼的形式,該程序代碼在諸如磁記錄介質(zhì)、光記錄介質(zhì)、固態(tài)存儲器、軟盤、CD-ROM、硬盤驅(qū)動器或者任何其他機(jī)器可讀存儲介質(zhì)的有形介質(zhì)中具體化,其中,當(dāng)該程序代碼被加載到機(jī)器(諸如,計(jì)算機(jī))中并由該機(jī)器執(zhí)行時(shí),該機(jī)器成為用于實(shí)踐本發(fā)明的裝置。本發(fā)明還可被具體化為程序代碼的形式,而不管例如是存儲在存儲介質(zhì)中的,加載到機(jī)器中和/或由機(jī)器執(zhí)行的,或者在一些傳送介質(zhì)或載體上傳送(諸如在電導(dǎo)線或線纜上傳送、通過光纖傳送或者經(jīng)由電磁輻射傳送)的,其中,當(dāng)該程序代碼被加載到機(jī)器(諸如,計(jì)算機(jī))中并由該機(jī)器執(zhí)行時(shí),該機(jī)器成為用于實(shí)踐本發(fā)明的裝置。當(dāng)在通用處理器上實(shí)現(xiàn)時(shí),程序代碼段與處理器組合以提供類似特定邏輯電路操作的唯一性的設(shè)備。本發(fā)明還可以具體化為使用本發(fā)明的方法和/或裝置生成的通過介質(zhì)電傳送或光傳送的比特流或者其他信號值序列、存儲在磁記錄介質(zhì)中的磁場變化等形式。除非另外明確說明,否則每個數(shù)值和范圍應(yīng)被解釋為是大致的,如同在該值或范圍的值之前具有詞“約”或“大致”。在權(quán)利要求中使用附圖數(shù)字和/或附圖參考標(biāo)記,用于標(biāo)識所要求保護(hù)的主題內(nèi)容的一個或更多個可能的實(shí)施例,以便易于解釋權(quán)利要求。該使用不應(yīng)被解釋為必須將這些權(quán)利要求的范圍限制于對應(yīng)附圖中示出的實(shí)施例。應(yīng)當(dāng)理解,此處闡述的示例性方法的步驟并不必須按照所描述的順序執(zhí)行,并且這些方法的步驟的順序應(yīng)被理解為僅是示例性的。同樣地,這些方法中可以包括另外的步驟,并且在符合本發(fā)明的實(shí)施例的方法中,某些步驟可被省略或組合。盡管按照具有相應(yīng)標(biāo)記的特定順序敘述了所附方法權(quán)利要求中的要素,但是除非權(quán)利要求敘述另外指出用于實(shí)現(xiàn)一些或所有這些要素的特定順序,否則這些要素并不必然限于按照該特定順序?qū)崿F(xiàn)。權(quán)利要求一種裝置,包括用于對糾錯(EC)編碼的碼字解碼以恢復(fù)正確碼字的EC解碼器,其中所述解碼器適于基于上游處理器所生成的初始值的初始集合生成第一消息集合,其中所述初始集合對應(yīng)于所述EC編碼的碼字;以及所述初始集合中的每個初始值對應(yīng)于所述EC編碼的碼字的不同比特;以及所述解碼器包括一個或更多個模塊,其適于基于縮放因子和偏移值將所述第一消息集合轉(zhuǎn)換為經(jīng)縮放和偏移的消息;以及控制器,適于選擇所述縮放因子和所述偏移值。2.如權(quán)利要求1所述的裝置,其中所述EC解碼器包括變量節(jié)點(diǎn)單元,其適于生成變量節(jié)點(diǎn)消息;所述第一消息集合是所述變量節(jié)點(diǎn)消息;以及所述一個或更多個模塊(例如,310)適于基于所述縮放因子和所述偏移值將所述變量節(jié)點(diǎn)消息轉(zhuǎn)換為經(jīng)縮放和偏移的變量節(jié)點(diǎn)消息。3.如權(quán)利要求1所述的裝置,其中所述EC解碼器包括校驗(yàn)節(jié)點(diǎn)單元,其適于生成校驗(yàn)節(jié)點(diǎn)消息;所述第一消息集合是所述校驗(yàn)節(jié)點(diǎn)消息;以及所述一個或更多個模塊(例如,346)適于基于所述縮放因子和所述偏移值將所述校驗(yàn)節(jié)點(diǎn)消息轉(zhuǎn)換為經(jīng)縮放和偏移的校驗(yàn)節(jié)點(diǎn)消息。4.如權(quán)利要求1所述的裝置,其中所述EC解碼器實(shí)現(xiàn)最小和算法;所述EC解碼器包括校驗(yàn)節(jié)點(diǎn)單元,其適于生成最小和算法的第一最小和第二最小幅度值;所述第一消息集合是所述第一最小和第二最小幅度值;以及所述一個或更多個模塊(例如,334)適于基于所述縮放因子和所述偏移值將所述第一最小和第二最小幅度值轉(zhuǎn)換為經(jīng)縮放和偏移的第一最小和第二最小幅度值。5如權(quán)利要求1所述的裝置,其中所述控制器能夠?qū)⑺隹s放因子設(shè)定為1;以及所述控制器能夠?qū)⑺銎浦翟O(shè)定為0。6.如權(quán)利要求1所述的裝置,其中,所述一個或更多個模塊包括執(zhí)行縮放和偏移的縮放和偏移模塊。7.如權(quán)利要求1所述的裝置,其中所述解碼器是低密度奇偶校驗(yàn)(LDPC)解碼器;以及從所述上游處理器接收的所述值是具有硬判決比特和一個或更多個置信值比特的軟輸出值。8.如權(quán)利要求1所述的裝置,其中,所述控制器適于(i)選擇初始縮放因子和初始偏移值,以及(ii)隨后修改所述初始縮放因子和所述初始偏移值中的至少一個。9.如權(quán)利要求8所述的裝置,其中,在所述控制器確定在預(yù)定的解碼迭代次數(shù)內(nèi)所述EC解碼器未收斂在正確的碼字之后,所述控制器修改所述初始縮放因子和所述初始偏移值中的至少一個。10.如權(quán)利要求8所述的裝置,其中,所述控制器適于修改所述初始縮放因子和所述初始偏移值。11.如權(quán)利要求8所述的裝置,其中,所述控制器適于通過使所述初始縮放因子漸增指定的縮放因子增量來修改所述初始縮放因子。12.如權(quán)利要求8所述的裝置,其中,所述控制器適于通過使所述初始偏移值漸增指定的偏移值增量來修改所述初始偏移值。13.一種用于對糾錯(EC)編碼的碼字解碼以恢復(fù)正確碼字的方法,所述方法包括(a)選擇縮放因子和偏移值;(b)從上游處理器接收初始值的初始集合,其中所述初始集合對應(yīng)于所述EC編碼的碼字;以及所述初始集合中的每個初始值對應(yīng)于所述EC編碼的碼字的不同比特;(c)基于所述初始值的初始集合生成第一消息集合;以及(d)基于所述縮放因子和所述偏移值將所述第一消息集合轉(zhuǎn)換為經(jīng)縮放和偏移的消息o14.如權(quán)利要求13所述的方法,其中步驟(c)包括生成變量節(jié)點(diǎn)消息作為所述第一消息集合;以及步驟(d)包括基于所述縮放因子和所述偏移值將所述變量節(jié)點(diǎn)消息轉(zhuǎn)換為經(jīng)縮放和偏移的變量節(jié)點(diǎn)消息。15.如權(quán)利要求13所述的方法,其中步驟(c)包括生成校驗(yàn)節(jié)點(diǎn)消息作為所述第一消息集合;以及步驟(d)包括基于所述縮放因子和所述偏移值將所述校驗(yàn)節(jié)點(diǎn)消息轉(zhuǎn)換為經(jīng)縮放和偏移的校驗(yàn)節(jié)點(diǎn)消息。16.如權(quán)利要求13所述的方法,其中步驟(c)包括生成最小和算法的第一最小和第二最小幅度值作為所述第一消息集合;以及步驟(d)包括基于所述縮放因子和所述偏移值將所述第一最小和第二最小幅度值轉(zhuǎn)換為經(jīng)縮放和偏移的第一最小和第二最小幅度值。17.如權(quán)利要求13所述的方法,其中步驟(a)包括選擇初始縮放因子和初始偏移值;步驟(d)包括基于所述初始縮放因子和所述初始偏移值將所述第一消息集合轉(zhuǎn)換為經(jīng)縮放和偏移的消息;以及所述方法進(jìn)一步包括(e)隨后修改所述初始縮放因子和所述初始偏移值中的至少一個;(f)生成第二消息集合;以及(g)基于如步驟(e)中修改了的所述初始縮放因子和所述初始偏移值將所述第二消息集合轉(zhuǎn)換為經(jīng)縮放和偏移的消息。18.如權(quán)利要求17所述的方法,其中,在確定在預(yù)定的解碼迭代次數(shù)內(nèi)所述方法未收斂在正確的碼字之后,修改所述初始縮放因子和所述初始偏移值中所述至少一個。19.如權(quán)利要求13所述的方法,其中所述EC編碼的碼字是LDPC編碼的碼字;以及從所述上游處理器接收的所述值是具有硬判決比特和一個或更多個置信值比特的軟輸出值。20.一種用于對糾錯(EC)編碼的碼字解碼以恢復(fù)正確碼字的裝置,所述方法包括(a)用于選擇縮放因子和偏移值的裝置;(b)用于從上游處理器接收初始值的初始集合的裝置,其中所述初始集合對應(yīng)于所述EC編碼的碼字;以及所述初始集合中的每個初始值對應(yīng)于所述EC編碼的碼字的不同比特;(c)用于基于所述初始值的初始集合生成第一消息集合的裝置;以及(d)用于基于所述縮放因子和所述偏移值將所述第一消息集合轉(zhuǎn)換為經(jīng)縮放和偏移的消息的裝置。全文摘要在一個實(shí)施例中,一種LDPC解碼器具有控制器和一個或更多個校驗(yàn)節(jié)點(diǎn)單元(CNU)。CNU使用縮放最小和算法、偏移最小和算法、或縮放和偏移最小和算法來生成校驗(yàn)節(jié)點(diǎn)消息。在最初時(shí),控制器選擇縮放因子和偏移值。對于無縮放,縮放因子可被設(shè)定為1,并且對于無偏移,偏移值可被設(shè)定為0。如果解碼器未能正確地對碼字解碼,則(i)控制器選擇新的縮放因子和/或偏移值,以及(ii)解碼器嘗試使用新的縮放和偏移值來對碼字正確解碼。通過改變縮放因子和/或偏移值,較之僅使用固定的縮放因子或沒有縮放因子或者僅使用固定的偏移因子或沒有偏移因子的LDPC解碼器,本發(fā)明的LDPC解碼器能夠改進(jìn)錯誤平層特性。文檔編號G06F11/00GK101836191SQ200980100811公開日2010年9月15日申請日期2009年4月8日優(yōu)先權(quán)日2008年8月15日發(fā)明者K·關(guān)納姆申請人:Lsi公司