專利名稱:解碼設(shè)備和方法以及程序的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及解碼設(shè)備和方法以及程序,并且更特別地涉及一種在采用代數(shù)過(guò)程的錯(cuò)誤校正碼技術(shù)中可提高解碼性能的解碼設(shè)備和方法以及程序。
背景技術(shù):
作為一種代數(shù)-幾何碼的解碼方法,例如Reed-Solomon碼或者是作為Reed-Solomon碼的子域部分碼的BCH(Bose-Chaudhuri-Hocquenghem)碼,公知的方法是利用代數(shù)屬性,它在性能開銷和計(jì)算開銷方面都很出眾。
例如,如果代碼長(zhǎng)度為n、信息長(zhǎng)度為k、定義體GF(q)(q=pm,p質(zhì)數(shù))并且最小距離d=n-k的Reed-Solomon碼由RS(n,k)來(lái)表示,那么將硬判決接收字解碼為具有最小Hamming距離的代碼字的一種臨界距離解碼方法作為一種確保校正t個(gè)錯(cuò)誤符號(hào)的方法已經(jīng)是公知的,這里t滿足t<d/2。而且,如1999年的IEEE Transactions on Information Theory第45卷,第1757-1767頁(yè)中V.Curuswami,M.Sudan的“Improved decoding of Reed-Solomon andAlgebraic-Geometry codes”所公開的,通過(guò)Guruswami-Sudan(以下稱為G-S列表解碼)方法進(jìn)行的列表解碼能確保校正t個(gè)錯(cuò)誤符號(hào),這里滿足T<nk。
作為上面描述的G-S列表解碼的擴(kuò)展版本,公知的使用軟判決接收字的Koetter-vardy列表解碼(這種列表解碼以下稱為K-V列表解碼)包括四個(gè)過(guò)程,包括從接收信息中對(duì)符號(hào)的可靠性值進(jìn)行計(jì)算、從該可靠性值中提取二變量多項(xiàng)式內(nèi)插條件、對(duì)二變量多項(xiàng)式進(jìn)行內(nèi)插以及通過(guò)內(nèi)插多項(xiàng)式的因式分解來(lái)產(chǎn)生解碼字列表。這樣,K-V列表解碼具有比硬判決解碼更高的性能。K-V列表解碼公開在,例如2001年的IEEE Transactions on Information Theory中R.Koetter,A.Vardy的“Algebraic soft-decision decoding of Reed-Solomon codes”中。還有一種通過(guò)再編碼將計(jì)算開銷降低到現(xiàn)實(shí)水平的方法也是已知的,并且公開在,例如Proceedings of ISIT 2003中R.Koetter,J.Ma,A.Vardy,A.Ahmed的“Efficient Interpolation and Factorization in Algebraic Soft-Decision Decodingof Reed-Solomon codes”中。
同時(shí),近來(lái)更加關(guān)注作為線性碼的低密度奇偶校驗(yàn)碼(LDPC),由此可以通過(guò)使用置信傳播(belief propagation)的重復(fù)解碼獲得接近于邊際性能的高性能。低密度奇偶校驗(yàn)碼公開于1999年的IEEE Transactions on InformationTheory中D.MacKay的“Good Error-Correcting Codes Based on Very SparseMatrices”中。
理論上已經(jīng)公知,在LDPC中使用的置信傳播通常只對(duì)具有低密度奇偶校驗(yàn)矩陣的線性碼有效。同時(shí),降低Reed-Solomon碼或BCH碼的奇偶校驗(yàn)矩陣的密度作為已知的NP-難問(wèn)題,公開于1978年5月的IEEE Transactions onInformation Theory,第24卷,第384-386頁(yè)Berlekamp,R.McEliece,H.vanTilborg的“On the inherent intractability of certain coding problems”中。
從前述可知,采用一種將置信傳播用于Reed-Solomon碼或BCH碼的解碼方法被認(rèn)為是困難的。
然而,如在2004年的Proceedings of IEEE International Symposium onInforamtion Theory中Jing Jiang,K.R.Narayanan的“Soft Decision Decoding ofRS Codes Using Adaptive Parity Check Matrices”中所公開的,在2004年由Narayanan等人征明了使用按照接收字的可靠性執(zhí)行了對(duì)角化的奇偶校驗(yàn)矩陣使得其中將置信傳播用于Reed-Solomon碼、BCH碼以及其它具有密度不低的奇偶校驗(yàn)矩陣的線性碼的解碼方法可以有效應(yīng)用。下面,描述了ABP(自適應(yīng)置信傳播)解碼方法。
例如,考慮具有代碼長(zhǎng)度n為6、信息長(zhǎng)度k為3以及編碼率r為1/2,并且具有如下面的表達(dá)式(1)所給出的3×6矩陣H作為奇偶校驗(yàn)矩陣的線性碼CH=101001110101011111---(1)]]>
這里代碼空間C由下述表達(dá)式(2)給出C={c=(c1,c2,...,c6),c1,c2,...,c6∈0,1|H·ct=0}......(2)假設(shè)某個(gè)代碼字經(jīng)過(guò)一個(gè)信道,例如,某個(gè)代碼字在BPSK(二進(jìn)制移相鍵控)調(diào)制之后經(jīng)過(guò)一個(gè)AWGN(自適應(yīng)白高斯噪聲)信道,然后由接收機(jī)接收為按下述表達(dá)式(3)所給出的接收字y=(y1,y2,...,y6)=(0.4,1.2,0.1,0.7,0.3,0.7) ......(3)剛才描述的這種實(shí)例的接收機(jī)中的解碼設(shè)備所執(zhí)行的解碼處理的流程將在下面參照?qǐng)D1的流程圖進(jìn)行描述。
首先在步驟S1,解碼設(shè)備搜索接收字的可靠性順序。該解碼設(shè)備通過(guò)將每個(gè)接收符號(hào)的絕對(duì)值的幅值確定為接收符號(hào)的可靠性高度,來(lái)對(duì)已接收的接收字的接收符號(hào)(上面表達(dá)式(3)的右邊的項(xiàng))進(jìn)行排序。特別地,解碼設(shè)備按可靠性升序?qū)⒕幪?hào)附加給接收符號(hào),例如,如在下列表達(dá)式(4)中以圓圈圍繞的數(shù)字所表示的③ ⑥ ① ④ ② ④y=(0.4,1.2,0.1,0.7,0.3,0.7) ...(4)然后,在步驟S2,解碼設(shè)備對(duì)這種排序的接收符號(hào)按照預(yù)定的規(guī)則進(jìn)行重排,以便轉(zhuǎn)換符號(hào)的優(yōu)先級(jí)排序順序。這一規(guī)則是預(yù)先準(zhǔn)備的,并包括多個(gè)互不相同并且等于隨后所述的外部重復(fù)次數(shù)的子規(guī)則,并且每次執(zhí)行外部重復(fù)的時(shí)候,就選擇一個(gè)不同的子規(guī)則。
在解碼設(shè)備轉(zhuǎn)換該順序之后,在步驟S3,按照順序?qū)ζ媾夹r?yàn)矩陣H執(zhí)行對(duì)角化。例如,當(dāng)通過(guò)對(duì)順序的轉(zhuǎn)換以可靠性升序?qū)?yōu)先級(jí)排序應(yīng)用到接收符號(hào)時(shí),按照從與可靠性最低的符號(hào)相對(duì)應(yīng)的一列開始的順序,該解碼對(duì)奇偶校驗(yàn)矩陣H執(zhí)行對(duì)角化。
例如,當(dāng)接收符號(hào)的可靠性排序例如是由上述的表達(dá)式(4)給出的,奇偶校驗(yàn)矩陣H中與可靠性最低的符號(hào)相對(duì)應(yīng)的列是第三列,并且奇偶校驗(yàn)矩陣H中與可靠性第二低的符號(hào)相對(duì)應(yīng)的列是第五列。而且,奇偶校驗(yàn)矩陣H中與可靠性第三低的符號(hào)相對(duì)應(yīng)的列是第一列,并且奇偶校驗(yàn)矩陣H中與可靠性第四低的符號(hào)相對(duì)應(yīng)的列是第四或第六列,而奇偶校驗(yàn)矩陣H中與可靠性最高的符號(hào)相對(duì)應(yīng)的列是第二列。解碼設(shè)備按照優(yōu)先級(jí)排序執(zhí)行奇偶校驗(yàn)矩陣H的對(duì)角化。
具體來(lái)說(shuō),解碼設(shè)備首先針對(duì)第三列執(zhí)行奇偶校驗(yàn)矩陣H的基本變換。更具體而言,解碼設(shè)備首先對(duì)第一行和第三行進(jìn)行“異或”,來(lái)獲得一個(gè)新的第三行以便使第三列為“100”,從而將奇偶校驗(yàn)矩陣H轉(zhuǎn)換為下列表達(dá)式(5)H=101001110101110110---(5)]]>然后,解碼設(shè)備針對(duì)第五列執(zhí)行奇偶校驗(yàn)矩陣H的基本變換。具體來(lái)說(shuō),解碼設(shè)備交換第二行和第三行,以便使第五列為“010”,從而將奇偶校驗(yàn)矩陣H轉(zhuǎn)換為下列表達(dá)式(6)H=101001110110110101---(6)]]>此后,解碼設(shè)備針對(duì)第一列執(zhí)行奇偶校驗(yàn)矩陣H的基本變換。具體來(lái)說(shuō),解碼設(shè)備將第一行和第三行的“異或”值替換到第一行中,并將第二行和第三行的“異或”值替換到第二行中,以使第一列為“001”,從而將奇偶校驗(yàn)矩陣H轉(zhuǎn)換為由下列表達(dá)式(7)所示的奇偶校驗(yàn)矩陣HnewH=011100000011110101---(7)]]>要注意的是,如果將要執(zhí)行對(duì)角化的列與先前已進(jìn)行對(duì)角化的列是線性相關(guān)的,那么解碼設(shè)備就對(duì)該列保持原狀并對(duì)下一排序的列進(jìn)行對(duì)角化。解碼設(shè)備以這種方式執(zhí)行與奇偶校驗(yàn)矩陣H的排序數(shù)相等次數(shù)的對(duì)角化,以獲得一個(gè)新的奇偶校驗(yàn)矩陣Hnew。然后,在步驟S4中,解碼設(shè)備使用得到的奇偶校驗(yàn)矩陣Hnew通過(guò)置信傳播來(lái)更新可靠性值。
圖2是與上面的表達(dá)式(7)所示的奇偶校驗(yàn)矩陣Hnew相對(duì)應(yīng)的Tanner圖。置信傳播是通過(guò)沿Tanner圖的邊傳播消息來(lái)實(shí)現(xiàn)的。參考圖2,可變節(jié)點(diǎn)11至16與矩陣(就圖2來(lái)說(shuō)是奇偶校驗(yàn)矩陣Hnew)的列相對(duì)應(yīng)。校驗(yàn)節(jié)點(diǎn)21至23與矩陣(就圖2來(lái)說(shuō)是奇偶校驗(yàn)矩陣Hnew)的行相對(duì)應(yīng)。
在下面的描述中,i和j是自然數(shù),從第i個(gè)可變節(jié)點(diǎn)到第j個(gè)校驗(yàn)節(jié)點(diǎn)的消息由Ri,j來(lái)表示;從第j個(gè)校驗(yàn)節(jié)點(diǎn)到第i個(gè)可變節(jié)點(diǎn)的消息由Qi,j來(lái)表示;連接到第i個(gè)可變節(jié)點(diǎn)的校驗(yàn)節(jié)點(diǎn)的索引集由J(i)來(lái)表示;以及連接到第j個(gè)校驗(yàn)節(jié)點(diǎn)的可變節(jié)點(diǎn)的索引集由I(j)來(lái)表示。
在這個(gè)實(shí)例中,消息Ri,j和消息Qi,j的更新表達(dá)式分別由下列表達(dá)式(8)和(9)來(lái)表示Ri,j=2tanh-1(∏l∈I(j)\itanh(Qi,j/2))...(8)Qi,j=ri+θ∑i∈J(i)\jRi,j...(9)這里系數(shù)θ是被稱為垂直步位(vertical step)阻尼因子的收斂因子,并且具有由0<θ≤1所定義的值。接收符號(hào)yj被設(shè)置為消息Qi,j的初始值,而外部信息的更新Λxj是按照下列的表達(dá)式(10)來(lái)執(zhí)行的Λix=Σi∈J(i)Ri,j---(10)]]>這樣,在圖1的步驟S5,解碼設(shè)備按照下列的表達(dá)式(11)對(duì)每個(gè)代碼符號(hào)的對(duì)數(shù)似然比(LLR)Λq進(jìn)行計(jì)算Λiq=ri+α1Λix---(11)]]>這里系數(shù)α1是被稱為自適應(yīng)置信傳播阻尼因子的收斂因子,并且具有由0<θ≤1所定義的值。
在解碼設(shè)備計(jì)算LLR值之后,將處理前進(jìn)到步驟S6,在這里搜索經(jīng)計(jì)算的LLR值的可靠性順序。特別地,解碼設(shè)備將所計(jì)算的LLR值的絕對(duì)值的幅值確定為可靠性值,并且搜索可靠性值的順序。如下面所述的,重復(fù)執(zhí)行LLR值的更新,直至滿足預(yù)定的條件后為止。為下一次更新(奇偶校驗(yàn)矩陣H的對(duì)角化)來(lái)執(zhí)行搜索可靠性順序。
然后在步驟S7,解碼設(shè)備對(duì)按照上面描述的這種方式所計(jì)算出(更新)的LLR值來(lái)進(jìn)行解碼,以獲得解碼字。解碼方法可以是例如硬判決解碼、臨界距離解碼或K-V列表解碼。然后在步驟S8,解碼設(shè)備判斷是否已滿足作為預(yù)先確定的條件的內(nèi)部重復(fù)解碼停止條件SC1。
重復(fù)通過(guò)置信傳播來(lái)更新LLR值,直至滿足預(yù)先準(zhǔn)備的重復(fù)解碼停止條件SC后為止。解碼設(shè)備使用置信傳播所更新的LLR值的可靠性值,來(lái)再次更新LLR值。特別地,解碼設(shè)備通過(guò)將作為結(jié)果的LLR值的絕對(duì)值的幅值確定為可靠性值,并按照相應(yīng)的符號(hào)的可靠性值的升序?qū)ζ媾夹r?yàn)矩陣的列執(zhí)行對(duì)角化,來(lái)通過(guò)新的置信傳播更新LLR值。然后,每當(dāng)解碼設(shè)備更新LLR值的時(shí)候,就使用作為結(jié)果的LLR值來(lái)執(zhí)行解碼(重復(fù)執(zhí)行解碼)。這在下面被稱為內(nèi)部重復(fù)解碼。解碼設(shè)備重復(fù)內(nèi)部重復(fù)解碼,直至滿足預(yù)先準(zhǔn)備的重復(fù)解碼停止條件SC1后為止。
特別地,如果解碼設(shè)備在圖1的步驟S8判定沒(méi)有滿足該內(nèi)部重復(fù)解碼停止條件SC1,那么就將處理返回到步驟S3以便從步驟S3開始重復(fù)處理。另一方面,如果解碼設(shè)備在步驟S8判定已滿足該內(nèi)部重復(fù)解碼停止條件SC1,那么就將處理前進(jìn)到步驟S9。
在步驟S9,解碼設(shè)備判斷是否滿足外部重復(fù)解碼停止條件SC2。如果解碼設(shè)備判定沒(méi)有滿足該外部重復(fù)解碼停止條件SC2,那么就將處理返回到步驟S2以便從步驟S2開始重復(fù)處理。
更特別地,除了這種將接收值的可靠性值用作奇偶校驗(yàn)矩陣H的列的對(duì)角化優(yōu)先級(jí)排序的初始值的排序方法之外,解碼設(shè)備還準(zhǔn)備了多種互不相同的排序方法。然后,解碼設(shè)備使用多種排序方法串行地或并行地多次執(zhí)行上述的內(nèi)部重復(fù)解碼(重復(fù)執(zhí)行內(nèi)部重復(fù)解碼)。這在下面被稱為外部重復(fù)解碼。解碼設(shè)備重復(fù)該外部重復(fù)解碼直至滿足預(yù)先準(zhǔn)備的外部重復(fù)解碼停止條件SC2后為止。
下面描述目標(biāo)線性碼是Reed-Solomon碼的重復(fù)解碼停止條件SC的例子。
例如,假設(shè)預(yù)先確定的重復(fù)的最大次數(shù)是N并且Λq的硬判決結(jié)果是d=(d1,d2,...,d6)。這里,硬判決結(jié)果di由下列表達(dá)式(12)來(lái)表示 在這種情況下,解碼設(shè)備能夠?qū)⒗?,奇偶校?yàn)矩陣H和硬判決結(jié)果d的乘積的值是0(H·d=0)或者重復(fù)數(shù)t大于等于預(yù)先確定的重復(fù)的最大次數(shù)N(t≥N)(也就是滿足所描述的兩個(gè)條件中的至少一個(gè))設(shè)置為重復(fù)解碼停止條件SC(內(nèi)部重復(fù)解碼停止條件SC1或外部重復(fù)解碼停止條件SC2)。
可選擇地,解碼設(shè)備也可將例如,成功進(jìn)行了臨界距離解碼或者重復(fù)數(shù)t大于等于預(yù)先確定的重復(fù)的最大次數(shù)N(t≥N)(也就是滿足所描述的兩個(gè)條件中的至少一個(gè))設(shè)置為重復(fù)解碼停止條件SC(內(nèi)部重復(fù)解碼停止條件SC1或者外部解碼停止條件SC2)。另外,解碼設(shè)備也可以將例如,成功進(jìn)行了K-V列表解碼或者重復(fù)數(shù)t大于等于預(yù)先確定的重復(fù)的最大次數(shù)N(t≥N)(也就是滿足所描述的兩個(gè)條件中的至少一個(gè))設(shè)置為重復(fù)解碼停止條件SC(內(nèi)部重復(fù)解碼停止條件SC1或外部重復(fù)解碼停止條件SC2)。也或者,解碼設(shè)備可以例如,僅僅將重復(fù)數(shù)t大于等于預(yù)先確定的重復(fù)的最大次數(shù)N(t≥N)設(shè)置為重復(fù)解碼停止條件SC(內(nèi)部重復(fù)解碼停止條件SC1或外部重復(fù)解碼停止條件SC2)。
在執(zhí)行上述這種外部重復(fù)解碼之后,如果解碼設(shè)備在步驟S9判定已滿足該外部重復(fù)解碼停止條件SC2,那么就結(jié)束解碼處理。
發(fā)明內(nèi)容
然而,在使用上述任意一種現(xiàn)有技術(shù)的自適應(yīng)置信傳播的方法來(lái)進(jìn)行解碼的時(shí)候,解碼器錯(cuò)誤,即解碼設(shè)備一側(cè)不能將其識(shí)別為錯(cuò)誤的錯(cuò)誤的存在具有不可忽視的可能性,從而不能獲得解碼設(shè)備的優(yōu)異的解碼性能。
希望提供一種解碼設(shè)備和方法以及程序,來(lái)抑制解碼器錯(cuò)誤出現(xiàn)的可能性并能夠獲得較高的解碼性能。
為了達(dá)到上述目的,根據(jù)本發(fā)明,在自適應(yīng)置信傳播所更新的可能性值被用于執(zhí)行重復(fù)解碼的情況下,解碼設(shè)備保持在中間所獲得的候選解碼字的列表,并且最后從該列表中選擇最可能的候選解碼字作為解碼字。
特別地,根據(jù)本發(fā)明的一個(gè)實(shí)施例,提供一種對(duì)環(huán)R上的線性碼執(zhí)行解碼處理的解碼設(shè)備,包括重復(fù)解碼裝置,用于執(zhí)行重復(fù)解碼,其中對(duì)提供進(jìn)來(lái)的代碼字使用置信傳播;解碼字列表產(chǎn)生裝置,用于產(chǎn)生并保持由重復(fù)解碼裝置進(jìn)行重復(fù)解碼所獲得的解碼字的列表;以及解碼字選擇裝置,用于從解碼字列表產(chǎn)生裝置產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
根據(jù)本發(fā)明的另一實(shí)施例,提供一種用于解碼設(shè)備的解碼方法,用于對(duì)環(huán)R上的線性碼執(zhí)行解碼處理,包括如下步驟執(zhí)行重復(fù)解碼,其中對(duì)提供進(jìn)來(lái)的代碼字使用置信傳播;產(chǎn)生在重復(fù)解碼步驟的處理中所獲得的解碼字的列表并將產(chǎn)生的解碼字列表放置在保持部分;以及從解碼字列表產(chǎn)生步驟的處理中所產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
根據(jù)本發(fā)明的進(jìn)一步實(shí)施例,提供一種程序,使計(jì)算機(jī)對(duì)環(huán)R上的線性碼執(zhí)行解碼處理,該程序包括以下步驟執(zhí)行重復(fù)解碼,其中對(duì)提供進(jìn)來(lái)的代碼字使用置信傳播;產(chǎn)生在重復(fù)解碼步驟的處理中所獲得的解碼字的列表并將產(chǎn)生的解碼字列表放置在保持部分;以及從解碼字列表產(chǎn)生步驟的處理中所產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
在解碼設(shè)備和方法以及程序中,對(duì)所提供的代碼字執(zhí)行使用置信傳播的重復(fù)解碼,并且產(chǎn)生和保持由重復(fù)解碼所獲得的解碼字的列表。然后,從所產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
通過(guò)該解碼設(shè)備和方法以及程序,可以實(shí)現(xiàn)使用代數(shù)過(guò)程的錯(cuò)誤校正碼技術(shù)。特別地,能夠抑制解碼器錯(cuò)誤發(fā)生的可能性,并且能夠達(dá)到更高的解碼性能。
本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)通過(guò)下面結(jié)合附圖進(jìn)行的描述和所附的權(quán)利要求書變得更加清楚,其中相似的部分或元件由相似的附圖標(biāo)記來(lái)表示。
圖1是示出傳統(tǒng)的解碼處理流程的流程圖;圖2是示出與傳統(tǒng)解碼處理相對(duì)應(yīng)的Tanner圖的一個(gè)實(shí)例的示意圖;圖3是應(yīng)用本發(fā)明的解碼設(shè)備的配置的一個(gè)實(shí)例的方框圖;圖4是示出由圖3的解碼設(shè)備所執(zhí)行的解碼處理流程的流程圖;圖5是示出將傳統(tǒng)解碼處理和圖3的解碼設(shè)備的解碼處理的幀錯(cuò)誤率之間進(jìn)行比較的圖表;圖6是示出應(yīng)用本發(fā)明的錯(cuò)誤校正系統(tǒng)的配置的一個(gè)實(shí)例的方框圖;
圖7至圖9是相似的視圖,示出了應(yīng)用本發(fā)明的錯(cuò)誤校正系統(tǒng)的配置的不同的實(shí)例;以及圖10是示出應(yīng)用本發(fā)明的個(gè)人計(jì)算機(jī)的配置的一個(gè)實(shí)例的方框圖。
具體實(shí)施例方式
在詳細(xì)描述本發(fā)明的優(yōu)選實(shí)施例之前,先描述在所附權(quán)利要求書中列舉的一些特征與下述優(yōu)選實(shí)施例的特定元件之間的對(duì)應(yīng)關(guān)系。然而,該描述僅僅是用于確認(rèn)在權(quán)利要求書中列舉的用來(lái)支持本發(fā)明的特定元件已經(jīng)在對(duì)本發(fā)明實(shí)施例進(jìn)行的描述中公開了。因此,即使某個(gè)在實(shí)施例的描述中列舉的特定元件沒(méi)有在下面的描述中作為一個(gè)特征來(lái)列舉,也不表示該特定的元件不與該特征相對(duì)應(yīng)。相反,即使某個(gè)特定元件作為與特征中的一個(gè)特征相對(duì)應(yīng)的元件來(lái)列舉,也不表示該元件不與該元件的特征之外的任何其它特征相對(duì)應(yīng)。
而且,下面的描述不表示與在本發(fā)明的實(shí)施例中描述的特定元件相對(duì)應(yīng)的本發(fā)明都在權(quán)利要求書中描述了。換句話說(shuō),下面的描述不否認(rèn)存在著一個(gè)發(fā)明,其與本發(fā)明實(shí)施例中描述過(guò)的、但沒(méi)有在權(quán)利要求書中列舉一個(gè)特定元件相對(duì)應(yīng),也就是,這些描述不否認(rèn)存在著一個(gè)發(fā)明,作為對(duì)權(quán)利要求后續(xù)修改的結(jié)果,可以作為分案專利申請(qǐng)來(lái)提交或者附加地包含在本專利申請(qǐng)中。
根據(jù)本發(fā)明,提供一種解碼設(shè)備(例如,圖3的ABP解碼設(shè)備),用于對(duì)環(huán)R上的線性碼執(zhí)行解碼處理。解碼設(shè)備包括重復(fù)解碼裝置(例如,圖3的解碼控制部分、接收字保持部分、奇偶校驗(yàn)矩陣對(duì)角化部分、置信傳播部分、LLR計(jì)算部分、LLR可靠性順序搜索部分以及解碼部分),用于執(zhí)行重復(fù)解碼,其中為提供進(jìn)來(lái)的代碼字使用置信傳播;解碼字列表產(chǎn)生裝置(例如,圖3的解碼字附加部分),用于產(chǎn)生并保持由重復(fù)解碼裝置重復(fù)解碼而獲得的解碼字的列表;以及解碼字選擇裝置(例如,圖3的解碼字選擇部分),用于從由解碼字列表產(chǎn)生裝置所產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
重復(fù)解碼裝置包括保持裝置(例如,圖3的接收字保持部分),用于保持代碼字和有關(guān)可靠性順序的信息,其中該可靠性順序是代碼字的符號(hào)值的可靠性值的順序;對(duì)角化裝置(例如,圖3的奇偶校驗(yàn)矩陣對(duì)角化部分),基于在該保持裝置中保持的有關(guān)可靠性順序的信息對(duì)奇偶校驗(yàn)矩陣進(jìn)行對(duì)角化;置信傳播裝置(例如,圖3的置信傳播部分),用于使用由該對(duì)角化裝置進(jìn)行對(duì)角化的奇偶校驗(yàn)矩陣執(zhí)行置信傳播以更新消息;對(duì)數(shù)似然比計(jì)算裝置(例如,圖3的LLR計(jì)算部分),用于使用置信傳播裝置執(zhí)行置信傳播所更新的消息,來(lái)計(jì)算每個(gè)代碼字符號(hào)的對(duì)數(shù)似然比;可靠性順序搜索裝置(例如,圖3的LLR可靠性順序搜索部分),用于搜索由對(duì)數(shù)似然比計(jì)算裝置所計(jì)算的對(duì)數(shù)似然比的可靠性順序,并使用對(duì)數(shù)似然比和對(duì)數(shù)似然比的可靠性順序的信息,更新代碼字和在保持裝置中保持的有關(guān)可靠性順序的信息;解碼裝置(例如,圖3的解碼部分),用于使用對(duì)數(shù)似然比計(jì)算裝置所計(jì)算的對(duì)數(shù)似然比來(lái)執(zhí)行解碼;以及解碼控制裝置(例如,圖3的解碼控制部分),用于控制對(duì)角化裝置、置信傳播裝置、對(duì)數(shù)似然比計(jì)算裝置、可靠性順序搜索裝置和解碼裝置,以便分別地、按照預(yù)定次數(shù)重復(fù)奇偶校驗(yàn)矩陣的對(duì)角化、置信傳播、對(duì)數(shù)似然比的計(jì)算、可靠性順序的搜索和解碼。
該預(yù)定次數(shù)可以具有一個(gè)預(yù)先確定的值(例如,圖4的最大內(nèi)部重復(fù)次數(shù)N1和最大外部重復(fù)次數(shù)N2)。
對(duì)角化裝置可以優(yōu)先地按照從與具有最低可靠性值的接收符號(hào)相對(duì)應(yīng)奇偶校驗(yàn)矩陣的列開始的順序執(zhí)行對(duì)角化(例如,圖4的步驟S23)。
對(duì)角化裝置可按照與列相對(duì)應(yīng)的接收符號(hào)的可靠性的升序,排列奇偶校驗(yàn)矩陣的列,根據(jù)預(yù)定的方法重排該順序的一部分,以及以重排的順序?qū)ζ媾夹r?yàn)矩陣的列執(zhí)行對(duì)角化(例如,圖4的步驟S22)。
對(duì)角化裝置可預(yù)先準(zhǔn)備多個(gè)不同的確定方法,用于為待執(zhí)行對(duì)角化的奇偶校驗(yàn)矩陣的列的優(yōu)先級(jí)排序確定初始值,并在每次啟動(dòng)優(yōu)先級(jí)順序排序的時(shí)候改變要使用的確定方法(例如,圖4的步驟S22)。
解碼裝置可使用對(duì)數(shù)似然比計(jì)算裝置所計(jì)算的對(duì)數(shù)似然比來(lái)執(zhí)行硬定義解碼(例如,圖4的步驟S27)。
解碼裝置可使用有限域Fq(q=pm)代數(shù)-幾何碼或同構(gòu)(isomorphic)碼,并對(duì)作為輸入而接收的多次更新所獲得的可靠性值進(jìn)行解碼,這里p是質(zhì)數(shù)(例如,圖4的步驟S27)。
解碼裝置可接收由多次更新所獲得的可靠性值作為輸入,來(lái)根據(jù)Sudan算法、Grusuwami-Sudan算法或用于代數(shù)-幾何碼的Reed-Solomon碼、BCH碼或同構(gòu)碼的其它算法來(lái)執(zhí)行硬判決列表解碼(例如,圖4的步驟S27)。
解碼裝置可接收由多次更新所獲得的可靠性值作為輸入,以便根據(jù)Koetter-Vardy算法或用于代數(shù)-幾何碼的Reed-Solomon碼、BCH碼或同構(gòu)碼的其它算法來(lái)執(zhí)行冗余設(shè)置和軟判決列表解碼(例如,圖4的步驟S27)。
解碼字選擇裝置可對(duì)寄存在解碼字列表中的解碼字執(zhí)行最大后驗(yàn)(posteriori)概率解碼,以便選擇一個(gè)解碼字(例如,圖4的步驟S35)。
根據(jù)本發(fā)明,提供一種解碼設(shè)備的解碼方法,用于對(duì)環(huán)R上的線性碼執(zhí)行解碼處理。解碼方法包括重復(fù)解碼步驟(例如,圖4的步驟S23至S27),其中對(duì)提供進(jìn)來(lái)的代碼字使用置信傳播來(lái)執(zhí)行重復(fù)解碼;解碼字列表產(chǎn)生步驟(例如,圖4的步驟S28),用于產(chǎn)生一個(gè)在重復(fù)解碼步驟的處理中所獲得的解碼字的列表,并將所產(chǎn)生的解碼字列表放置在保持部分中;以及解碼字選擇步驟(例如,圖4的步驟S35),用于從在解碼字列表產(chǎn)生步驟的處理中所產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
另外,本發(fā)明的程序包括與根據(jù)本發(fā)明的上述解碼方法相同的步驟。
現(xiàn)在,參考附圖對(duì)本發(fā)明的優(yōu)選實(shí)施例進(jìn)行描述。
首先參考圖3,其示出了應(yīng)用本發(fā)明的解碼設(shè)備的配置的一個(gè)實(shí)例。
圖3所示的解碼設(shè)備整體由31標(biāo)記,并構(gòu)成一個(gè)ABP(自適應(yīng)置信傳播)解碼設(shè)備,它接收一個(gè)接收字作為輸入并輸出通過(guò)解碼該輸入的接收字而獲得的解碼字。ABP解碼設(shè)備31包括解碼控制部分41、接收字保持部分42、可靠性順序搜索部分43、順序轉(zhuǎn)換部分44、奇偶校驗(yàn)矩陣對(duì)角化部分45、置信傳播部分46以及LLR計(jì)算部分47。ABP解碼設(shè)備31還包括LLR可靠性順序搜索部分48、解碼部分49、解碼字附加部分50、內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51、外部重復(fù)次數(shù)計(jì)數(shù)部分52以及解碼字選擇部分53。
解碼控制部分41控制ABP解碼設(shè)備31的相關(guān)組件,以便執(zhí)行與控制由ABP解碼設(shè)備31所執(zhí)行的解碼處理相關(guān)的處理。接收字保持部分42從ABP解碼設(shè)備31的外部獲取提供進(jìn)來(lái)的接收字(代碼字),并臨時(shí)保持所獲取的接收字。此外,如果響應(yīng)于可靠性順序搜索部分43的接收符號(hào)的可靠性程度,對(duì)這種接收字的接收符號(hào)執(zhí)行優(yōu)先級(jí)排序,那么接收字保持部分42就按照與接收符號(hào)的相應(yīng)關(guān)系保持優(yōu)先級(jí)排序信息。而且,接收字保持部分42獲取從LLR可靠性順序搜索部分48提供進(jìn)來(lái)的更新的LLR值以及該LLR值的可靠性排序(優(yōu)先級(jí)排序)信息(更新所保持的信息)。接收字保持部分42將以這種方式保持的接收符號(hào)的優(yōu)先級(jí)排序信息提供給順序轉(zhuǎn)換部分44。
可靠性順序搜索部分43按照接收符號(hào)的絕對(duì)值幅值,對(duì)保持在接收字保持部分42中的接收字(代碼字)的接收符號(hào)的可靠性進(jìn)行排序。例如,可靠性順序搜索部分43以可靠性順序升序(從最低的絕對(duì)值開始的順序)對(duì)接收符號(hào)應(yīng)用優(yōu)先級(jí)排序,以便確定隨著接收符號(hào)的絕對(duì)值變得越高,可靠性變得越高。
順序轉(zhuǎn)換部分44由解碼控制部分41進(jìn)行控制,以便按照預(yù)定的算法對(duì)從接收字保持部分42提供進(jìn)來(lái)的接收字(接收符號(hào))的優(yōu)先級(jí)排序信息進(jìn)行轉(zhuǎn)換,以便重排該信息。特別地,順序轉(zhuǎn)換部分44按照由解碼控制部分41所選擇的預(yù)先準(zhǔn)備的多個(gè)預(yù)定方法中的一種方法,對(duì)接收字(接收符號(hào))的優(yōu)先級(jí)排序進(jìn)行轉(zhuǎn)換,并將通過(guò)轉(zhuǎn)換而獲得的信息提供給奇偶校驗(yàn)矩陣對(duì)角化部分45。
奇偶校驗(yàn)矩陣對(duì)角化部分45由解碼控制部分41進(jìn)行控制,以便基于由順序轉(zhuǎn)換部分44提供的轉(zhuǎn)換后的接收字(接收符號(hào))的優(yōu)先級(jí)排序信息或者由接收字保持部分42提供的接收字(接收符號(hào))的優(yōu)先級(jí)排序信息,對(duì)奇偶校驗(yàn)矩陣H的列的執(zhí)行對(duì)角化。奇偶校驗(yàn)矩陣對(duì)角化部分45將對(duì)角化之后的奇偶校驗(yàn)矩陣Hnew提供給置信傳播部分46。
置信傳播部分46使用從奇偶校驗(yàn)矩陣對(duì)角化部分45提供進(jìn)來(lái)的奇偶校驗(yàn)矩陣Hnew來(lái)執(zhí)行置信傳播,以便更新消息并將更新的消息提供給LLR計(jì)算部分47。LLR計(jì)算部分47基于提供進(jìn)來(lái)的消息計(jì)算LLR值,來(lái)更新LLR值。LLR計(jì)算部分47將更新的LLR值提供給LLR可靠性順序搜索部分48。
LLR可靠性搜索部分48搜索由LLR計(jì)算部分47更新的LLR值的可靠性順序,并將搜索出的信息(更新的LLR值和有關(guān)該LLR值的可靠性順序信息)提供給接收字保持部分42和解碼部分49。解碼部分49對(duì)提供進(jìn)來(lái)的LLR值進(jìn)行解碼,并將得到的解碼字提供給解碼字附加部分50。要注意的是,解碼部分49的解碼方法可以是,例如臨界距離解碼、硬判決解碼、K-V列表解碼或任意其它方法。
解碼字附加部分50對(duì)從解碼部分49提供進(jìn)來(lái)的作為解碼結(jié)果的解碼字編制列表,并保持結(jié)果解碼字列表50A(產(chǎn)生并保持解碼字列表)。特別地,解碼字附加部分50包括在其內(nèi)部的例如半導(dǎo)體存儲(chǔ)器或硬盤的存儲(chǔ)介質(zhì)上形成的存儲(chǔ)區(qū)域,并將作為結(jié)果的解碼字作為解碼字列表(解碼字列表50A)保持在該存儲(chǔ)區(qū)域中。當(dāng)從解碼部分49提供新的解碼字時(shí),解碼字附加部分50將該解碼字附加存儲(chǔ)在解碼字列表50A中。然后,解碼字附加部分50將一個(gè)表示結(jié)束處理的處理結(jié)束通知提供給內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51。
內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51在其內(nèi)部具有一個(gè)計(jì)數(shù)器,它對(duì)內(nèi)部重復(fù)解碼的次數(shù)進(jìn)行計(jì)數(shù)并保持計(jì)數(shù)值。特別地,每當(dāng)從解碼字附加部分50接收到處理結(jié)束通知時(shí),該內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51就計(jì)數(shù)接收到這種通知的次數(shù),并將作為結(jié)果的計(jì)數(shù)值(關(guān)于直到那時(shí)所執(zhí)行的內(nèi)部重復(fù)解碼次數(shù)的信息)提供給解碼控制部分41。解碼控制部分41基于該計(jì)數(shù)值判斷是否應(yīng)當(dāng)結(jié)束內(nèi)部重復(fù)解碼。當(dāng)應(yīng)當(dāng)結(jié)束內(nèi)部重復(fù)解碼的時(shí)候,解碼控制部分41控制順序轉(zhuǎn)換部分44來(lái)執(zhí)行接收符號(hào)的優(yōu)先級(jí)排序的轉(zhuǎn)換處理,并重置內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51的計(jì)數(shù)值。此外,解碼控制部分41控制外部重復(fù)次數(shù)計(jì)數(shù)部分52,以便遞增外部重復(fù)次數(shù)計(jì)數(shù)部分52的計(jì)數(shù)值。當(dāng)不應(yīng)當(dāng)結(jié)束外部重復(fù)解碼的時(shí)候,解碼控制部分41控制奇偶校驗(yàn)矩陣對(duì)角化部分45來(lái)執(zhí)行奇偶校驗(yàn)矩陣H的對(duì)角化。
外部重復(fù)次數(shù)計(jì)數(shù)部分52在其內(nèi)部具有一個(gè)計(jì)數(shù)器,它對(duì)外部重復(fù)解碼的次數(shù)進(jìn)行計(jì)數(shù)并保持計(jì)數(shù)值。特別地,外部重復(fù)次數(shù)計(jì)數(shù)部分52在解碼控制部分41的控制下遞增其計(jì)數(shù)值,以便計(jì)數(shù)外部重復(fù)解碼的次數(shù)。然后,每當(dāng)外部重復(fù)次數(shù)計(jì)數(shù)部分52計(jì)數(shù)的時(shí)候,它就控制解碼字選擇部分53來(lái)執(zhí)行解碼字的選擇。
解碼字選擇部分53由外部重復(fù)次數(shù)計(jì)數(shù)部分52來(lái)控制,以便從解碼字附加部分50獲取解碼字列表50A,并從寄存在解碼字列表50A中的解碼字中選擇一個(gè)最優(yōu)的解碼字(最可能的解碼字)。這時(shí),解碼字選擇部分53對(duì)解碼字列表50A的解碼字執(zhí)行例如MAP(最大A后驗(yàn)概率)解碼,以便選擇一個(gè)最優(yōu)的解碼字。解碼字選擇部分53將所選擇的解碼字輸出到ABP解碼設(shè)備31之外。
下面參考圖4的流程圖描述上述這種解碼處理的流程。要注意的是,這里是對(duì)適當(dāng)應(yīng)用的特定實(shí)例給出的描述。特別地,以一個(gè)特定實(shí)例來(lái)描述如下解碼處理,這里,有限域?yàn)镕23,并且線性碼c是具有代碼長(zhǎng)度為7、信息長(zhǎng)度為3的Reed-Solomon碼的RS(7,3)。
在描述解碼處理的流程之前,描述奇偶校驗(yàn)矩陣H。這里值得注意的是,F(xiàn)23的原根(primitive root)由α來(lái)表示,并且本原多項(xiàng)式由下列表達(dá)式(13)來(lái)表示α3+α+1=0......(13)同時(shí),代碼形式的生成多項(xiàng)式由下列表達(dá)式(14)來(lái)表示
g(x)=(x+1)(x+α)(x+α2)(x+α3) ......(14)在這種情況下,代碼空間C的奇偶校驗(yàn)矩陣H由下列表達(dá)式(15)給出H=11111111αα2α3α4α5α61α2α4α6α8α10α121α3α6α9α12α15α18---(15)]]>從表達(dá)式(15)可見(jiàn),奇偶校驗(yàn)矩陣H是4行×7列的矩陣。
順帶地,由于有限域F23是F2的三元擴(kuò)展,因此就可以在四維空間上展開所有的矩陣。特別地,如果由上述表達(dá)式(15)給出的奇偶校驗(yàn)矩陣H是三維展開的,那么就可以基于F2獲得如下列表達(dá)式(16)所表示的12行×21列的奇偶校驗(yàn)矩陣HexpHexp=100100100100100100100010010010010010010010001001001001001001001100010101110111011001010101110111011001100001100010101110111011100101111001010110011010110011100101111001001010110011100101111100110001101011010111010111100110001101011001101011010111100110---(16)]]>在這種情況下,與奇偶校驗(yàn)矩陣H的情況類似,在F2上將相應(yīng)的代碼字展開成21位,如下列表達(dá)式(17)所示c=(c1,c2,c3,c4,...,c21)=(0,1,0,1,1,0,0,0,1,1,0,0,0,0,0,1,1,0,0,0,1) ...(17)假設(shè),通過(guò)BPSK調(diào)制代碼字并在AWGN信道上傳輸該BPSK調(diào)制的代碼字,例如獲得如下列表達(dá)式(18)所表示的接收字y作為L(zhǎng)LR
y=(-1.54,0.89,0.25,-0.17,2.49,-0.18,-1.31,-1.82,2.25,1.32,-2.69,0.95,-1.55,-0.34,1.26,4.08,3.28,-2.40,-1.71,-1.36,3.79)...(18)當(dāng)把上面給出的這種接收字y提供給ABP解碼設(shè)備31并且接收字保持部分42保持該接收字y時(shí),開始解碼處理。在解碼處理開始之后,首先在步驟S21,可靠性順序搜索部分43搜索保持在接收字保持部分42中的接收字y(也就是LLR)的接收符號(hào)的可靠性順序。
例如,如果可靠性順序搜索部分43對(duì)由上述表達(dá)式(18)所表示的接收字y的可靠性順序進(jìn)行搜索,以便按可靠性升序?qū)邮辗?hào)進(jìn)行排序,那么就獲得了下列表達(dá)式(19) 簡(jiǎn)而言之,在這種情況下,待對(duì)角化的奇偶校驗(yàn)矩陣Hexp(表達(dá)式(16))的列索引的順序是按下面所給定的,這里按照從左開始的優(yōu)先級(jí)排序的升序來(lái)排隊(duì)4,6,3,14,2,12,15,7,10,20,1,13,19,8,9,18,5,11,17,21,16在步驟S22中,遇到必要時(shí),順序轉(zhuǎn)換部分44以這種方式轉(zhuǎn)換接收符號(hào)的優(yōu)先級(jí)排序的順序(也就是,奇偶校驗(yàn)矩陣Hexp中待對(duì)角化的列的優(yōu)先級(jí)順序)。例如,當(dāng)以可靠性升序?qū)?yōu)先級(jí)排序應(yīng)用到接收符號(hào)時(shí),順序轉(zhuǎn)換部分44以上述順序設(shè)置(或改變)接收符號(hào)的優(yōu)先級(jí)排序。
然后在步驟S23,奇偶校驗(yàn)矩陣對(duì)角化部分45按照步驟S22所沒(méi)置(改變)的順序執(zhí)行奇偶校驗(yàn)矩陣Hexp的對(duì)角化。
例如,如果奇偶校驗(yàn)矩陣對(duì)角化部分45按照上述接收符號(hào)的優(yōu)先級(jí)排序的順序,對(duì)由表達(dá)式(16)慚的奇偶校驗(yàn)矩陣Hexp的列進(jìn)行對(duì)角化,那么就獲得了由下列表達(dá)式(20)所表示的奇偶校驗(yàn)矩陣Hnew
在上面的表達(dá)式(20)中,每個(gè)包括由方框表示的奇偶校驗(yàn)矩陣Hnew的因子的列都是應(yīng)用了對(duì)角化的列。在步驟S24,置信傳播部分46使用由上述表達(dá)式(20)表示的奇偶校驗(yàn)矩陣Hnew來(lái)執(zhí)行置信傳播以便更新消息。然后在步驟S25,LLR計(jì)算部分47使用更新的消息來(lái)更新外部信息,并進(jìn)一步計(jì)算LLR值(更新該LLR值)。在步驟S26,LLR可靠性順序搜索部分48搜索LLR值的可靠性順序。由于置信傳播部分46、LLR計(jì)算部分47和LLR可靠性順序搜索部分48使用由上面給出的表達(dá)式(20)所表示的奇偶校驗(yàn)矩陣Hnew,來(lái)以這種方式執(zhí)行與更新LLR值有關(guān)的處理,例如就能夠獲得由下列表達(dá)式(21)所表示的這種新的LLR值和該LLR值的可靠性排序 LLR可靠性順序搜索部分48將該信息放置在接收字保持部分42中,并且還將該信息提供給解碼部分49。在步驟S27,解碼部分49對(duì)更新的新LLR值(表達(dá)式(21))執(zhí)行諸如硬判決解碼、臨界距離解碼或K-V列表解碼的解碼,以便獲得解碼字。要注意的是,解碼部分49可使用任意方法作為解碼方法。
在以這種方式獲得解碼字之后,解碼字附加部分50在步驟S28將最近獲得的解碼字添加到解碼字列表50A中。在步驟S29,內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51對(duì)作為內(nèi)部重復(fù)解碼的次數(shù)的內(nèi)部重復(fù)數(shù)Tin進(jìn)行計(jì)數(shù)(遞增該計(jì)數(shù)值)。
在步驟S30,解碼控制部分41判斷內(nèi)部重復(fù)數(shù)Tin(也就是由內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51所計(jì)數(shù)的計(jì)數(shù)值)是否大于等于一個(gè)最大內(nèi)部重復(fù)次數(shù)N1(達(dá)到該最大內(nèi)部重復(fù)次數(shù)N1),其中該最大內(nèi)部重復(fù)次數(shù)N1是作為內(nèi)部重復(fù)解碼停止條件SC1而預(yù)先確定的預(yù)定閾值。
如果解碼控制部分41判斷該內(nèi)部重復(fù)數(shù)Tin低于該最大內(nèi)部重復(fù)次數(shù)N1(也就是,該內(nèi)部重復(fù)數(shù)Tin沒(méi)有達(dá)到該最大內(nèi)部重復(fù)次數(shù)N1),那么該解碼控制部分41就使處理返回到步驟S23,以便執(zhí)行從步驟S23開始的處理。特別是,在這種情況下,該解碼控制部分41控制奇偶校驗(yàn)矩陣對(duì)角化部分45。奇偶校驗(yàn)矩陣對(duì)角化部分45從接收字保持部分42獲取最近的LLR值,以便執(zhí)行奇偶校驗(yàn)矩陣H的對(duì)角化。
重復(fù)步驟S23到S30的處理,來(lái)執(zhí)行上述內(nèi)部重復(fù)解碼。如果在步驟S30判定該內(nèi)部重復(fù)數(shù)Tin大于等于該最大內(nèi)部重復(fù)次數(shù)N1(也就是,內(nèi)部重復(fù)數(shù)Tin達(dá)到最大內(nèi)部重復(fù)次數(shù)N1),那么解碼控制部分41使處理前進(jìn)到步驟S31。
在步驟S31,內(nèi)部重復(fù)次數(shù)計(jì)數(shù)部分51在解碼控制部分41的控制下重置該內(nèi)部重復(fù)數(shù)Tin,以便還原其初始值。在步驟S32,外部重復(fù)次數(shù)計(jì)數(shù)部分52在解碼控制部分41的控制下對(duì)作為外部重復(fù)解碼次數(shù)的外部重復(fù)數(shù)Tout進(jìn)行計(jì)數(shù)(遞增計(jì)數(shù)值)。
然后在步驟S33,解碼控制部分41判斷該外部重復(fù)數(shù)Tout(也就是,外部重復(fù)次數(shù)計(jì)數(shù)部分52所計(jì)數(shù)的計(jì)數(shù)值)是否大于等于一個(gè)最大外部重復(fù)次數(shù)N2(達(dá)到該最大外部重復(fù)次數(shù)N2),其中該最大外部重復(fù)次數(shù)N2是作為外部重復(fù)解碼停止條件SC2而預(yù)先確定的預(yù)定閾值。
如果解碼控制部分41判定該外部重復(fù)數(shù)Tout小于該最大外部重復(fù)次數(shù)N2(外部重復(fù)數(shù)Tout沒(méi)有達(dá)到該最大外部重復(fù)次數(shù)N2),那么它就將處理返回到步驟S22,以便執(zhí)行從步驟S22開始的處理。換句話說(shuō),在這種情況下,解碼控制部分41控制順序轉(zhuǎn)換部分44。順序轉(zhuǎn)換部分44從接收字保持部分42獲得最近的LLR值,并按照預(yù)定的方法對(duì)LLR值的接收符號(hào)的優(yōu)先級(jí)順序進(jìn)行轉(zhuǎn)換。
特別地,順序轉(zhuǎn)換部分44預(yù)先準(zhǔn)備多個(gè)彼此不同的方法(設(shè)置順序的方法)作為奇偶校驗(yàn)矩陣的對(duì)角化優(yōu)先級(jí)排序的設(shè)置方法(對(duì)內(nèi)部重復(fù)解碼中的優(yōu)先級(jí)排序設(shè)置初始值)。解碼控制部分41從這些方法中選擇一個(gè)尚未使用的方法,并發(fā)出一條指令來(lái)執(zhí)行所選擇的方法。順序轉(zhuǎn)換部分44在解碼控制部分41的控制下(使用所選擇的方法)對(duì)奇偶校驗(yàn)矩陣的對(duì)角化優(yōu)先級(jí)排序進(jìn)行設(shè)置(轉(zhuǎn)換其順序)。
例如,假設(shè)順序轉(zhuǎn)換部分44采用接收字的LLR值的可靠性值的升序作為內(nèi)部重復(fù)解碼的第一周期中的優(yōu)先級(jí)排序的初始值(在第一次外部重復(fù)中由順序轉(zhuǎn)換部分44所設(shè)置的優(yōu)先級(jí)排序)。這時(shí),由上述表達(dá)式(19)所表示的接收字y中的奇偶校驗(yàn)矩陣的對(duì)角化優(yōu)先級(jí)排序的索引按下面給出的從左開始的順序排隊(duì)[4,6,3,14,2,12,15],[7,10,20,1,13,19,8],[9,18,5,11,17,21,16]相反,在第二次內(nèi)部重復(fù)解碼中對(duì)優(yōu)先級(jí)排序設(shè)置初始值時(shí)(當(dāng)順序轉(zhuǎn)換部分44在第二次外部重復(fù)解碼中設(shè)置優(yōu)先級(jí)排序時(shí)),順序轉(zhuǎn)換部分44采用不同于上述方法的一種方法。例如,順序轉(zhuǎn)換部分44改變上述的索引的順序,以便執(zhí)行如下的21/N2=21/3=7列的交換[7,10,20,1,13,19,18],[4,6,3,14,2,12,15],[9,18,5,11,17,21,16]特別地,在這種情況下,在第一次內(nèi)部重復(fù)解碼中的優(yōu)先級(jí)排序的初始值順序中,在第1至第7優(yōu)先級(jí)排序的接收符號(hào)和第8至第14優(yōu)先級(jí)排序的接收符號(hào)之間交換優(yōu)先級(jí)排序。此外,順序轉(zhuǎn)換部分44為第二次內(nèi)部重復(fù)解碼中的優(yōu)先級(jí)排序的初始值,采用如下的另一種7位交換方法[9,18,5,11,17,21,16],[4,6,3,14,2,12,15],[7,10,20,1,13,19,8]特別地,在這種情況下,第二次內(nèi)部重復(fù)解碼中優(yōu)先級(jí)排序的初始值順序中的優(yōu)先級(jí)排序在第1至第7優(yōu)先級(jí)排序的接收符號(hào)和第15至第21優(yōu)先級(jí)排序的接收符號(hào)之間交換。
結(jié)果,順序轉(zhuǎn)換部分44可以在每個(gè)互相不同的內(nèi)部重復(fù)解碼周期中,為優(yōu)先級(jí)排序產(chǎn)生初始值。在第一個(gè)內(nèi)部重復(fù)周期中,奇偶校驗(yàn)矩陣對(duì)角化部分45獲取由順序轉(zhuǎn)換部分44按這種方式所設(shè)置的初始值,并按照初始值的順序執(zhí)行奇偶校驗(yàn)矩陣的對(duì)角化。
以上述這種方式重復(fù)步驟S22至S33的處理,來(lái)執(zhí)行外部重復(fù)解碼。然后,如果解碼控制部分41在步驟S33判定該外部重復(fù)數(shù)Tout大于等于最大外部重復(fù)次數(shù)N2(外部重復(fù)數(shù)Tout達(dá)到最大外部重復(fù)次數(shù)N2),那么處理就前進(jìn)到步驟S34。
在步驟S34,外部重復(fù)次數(shù)計(jì)數(shù)部分52在解碼控制部分41的控制下,重置外部重復(fù)數(shù)Tout以便還原其初始值。然后在步驟S35,解碼字選擇部分53執(zhí)行MAP解碼等,以便從解碼字附加部分50所產(chǎn)生的解碼字列表中選擇一個(gè)可能是最優(yōu)的解碼字(最可能的解碼字),并將所選擇的解碼字作為解碼字輸出到ABP解碼設(shè)備31的外部。
在完成步驟S35的處理之后,解碼字選擇部分53結(jié)束解碼處理。ABP解碼設(shè)備31為每個(gè)接收的接收字執(zhí)行如上所述的這種解碼處理。
圖5是示出對(duì)由上述傳統(tǒng)ABP解碼方法所解碼的簡(jiǎn)縮Reed-Solomon碼RS(7,3)的解碼性能與由應(yīng)用本發(fā)明的上述ABP解碼方法所解碼的簡(jiǎn)縮Reed-Solomon碼RS(7,3)的解碼性能之間進(jìn)行比較的圖表。
參考圖5,由曲線61表示的圖形表示應(yīng)用傳統(tǒng)ABP解碼方法的解碼性能,由曲線62表示的另一個(gè)圖形表示使用應(yīng)用本發(fā)明的ABP解碼方法的解碼性能。要注意的是,在傳統(tǒng)ABP解碼方法中,成功進(jìn)行了臨界距離解碼作為內(nèi)部重復(fù)解碼停止條件SC1和SC2,并且該臨界距離解碼是基于更新的LLR值來(lái)執(zhí)行的。然而,在應(yīng)用本發(fā)明的ABP解碼方法中,最大內(nèi)部重復(fù)次數(shù)N1設(shè)置為5,而最大外部重復(fù)次數(shù)N2設(shè)置為1,在每一次重復(fù)中解碼的解碼字被保存為一個(gè)列表,并最后執(zhí)行MAP解碼。如圖5所示,在應(yīng)用本發(fā)明的ABP解碼方法(曲線62)的情況下,縱軸所表示的幀錯(cuò)誤率(FER)低于傳統(tǒng)ABP解碼方法(曲線61)情況下的幀錯(cuò)誤率。因此,可以看出錯(cuò)誤校正能力提高了。
如上所述,ABP解碼設(shè)備31為重復(fù)解碼所獲得的解碼字編制列表(將解碼字添加到解碼字列表中),并在分別重復(fù)執(zhí)行了內(nèi)部重復(fù)解碼次數(shù)的內(nèi)部重復(fù)解碼和外部重復(fù)解碼次數(shù)的外部重復(fù)解碼之后,按照預(yù)定方法從作為結(jié)果的解碼字列表中選擇一個(gè)最優(yōu)的解碼字,其中上述內(nèi)部重復(fù)解碼次數(shù)和外部重復(fù)解碼次數(shù)是預(yù)先設(shè)置的預(yù)定次數(shù)。因此,就可以抑制出現(xiàn)不被認(rèn)為是解碼中出現(xiàn)的錯(cuò)誤的數(shù)據(jù)錯(cuò)誤的可能性,從而實(shí)現(xiàn)更高的解碼性能。
另外,ABP解碼設(shè)備31不是在開始而是在執(zhí)行重復(fù)解碼之后為接收字執(zhí)行MAP解碼,以便減少候選解碼字。因此,不僅可以降低解碼處理的負(fù)荷并以較高的速度執(zhí)行解碼處理,而且還可以降低生產(chǎn)成本以及操作成本。
要注意的是,當(dāng)如上所述的執(zhí)行自適應(yīng)置信傳播來(lái)更新LLR值時(shí),不必在所有的重復(fù)處理中執(zhí)行解碼或者將候選字添加到解碼字列表中,而是可以部分地執(zhí)行這些處理。例如,可以在內(nèi)部重復(fù)解碼的最后一個(gè)周期中執(zhí)行解碼,來(lái)將候選字添加到解碼字列表中。
此外,當(dāng)從作為結(jié)果的解碼字列表中選擇一個(gè)可能是最優(yōu)的解碼字的時(shí)候,可以不應(yīng)用MAP解碼,而應(yīng)用任意的選擇方法。例如,可通過(guò)這樣一個(gè)過(guò)程來(lái)選擇解碼字,即比較單個(gè)位(接收符號(hào))的可靠性值以便從列表中移走一個(gè)具有不小于預(yù)定數(shù)目的、可靠性小于等于預(yù)定的閾值的位的代碼字。
此外,雖然在前面的描述中,ABP解碼設(shè)備31對(duì)Reed-Solomon碼進(jìn)行解碼,但待解碼的編碼不限于此,而是,例如可對(duì)BCH碼進(jìn)行解碼或采用任意一種解碼方法進(jìn)行解碼。
現(xiàn)在,描述將上述這種ABP解碼應(yīng)用到錯(cuò)誤校正系統(tǒng)的方法的特定實(shí)例。圖6示出了將本發(fā)明的ABP解碼應(yīng)用到錯(cuò)誤校正系統(tǒng)的一個(gè)實(shí)例。參考圖6,所示的錯(cuò)誤校正系統(tǒng)100是一個(gè)用于電視廣播等的數(shù)字信號(hào)傳輸和接收系統(tǒng),它包括編碼設(shè)備101、信道102和解碼設(shè)備103。
編碼設(shè)備101作為一個(gè)傳輸設(shè)備,例如在廣播站等之中,傳輸數(shù)字信號(hào)形式的電視信號(hào)。編碼設(shè)備101包括Reed-Solomon編碼部分(RS編碼部分)111、交織器(interleaver)112和卷積編碼部分113。
RS編碼部分111使用Reed-Solomon碼對(duì)輸入進(jìn)來(lái)的信息進(jìn)行編碼,并且輸出結(jié)果編碼。交織器112對(duì)輸入進(jìn)來(lái)的數(shù)字信息執(zhí)行重排,并輸出結(jié)果數(shù)字信息。卷積編碼部分113對(duì)輸入進(jìn)來(lái)的數(shù)字信息執(zhí)行卷積編碼并輸出結(jié)果碼。
從編碼設(shè)備101外部提供的用于傳輸?shù)臄?shù)字信息由編碼設(shè)備101的RS編碼部分111進(jìn)行Reed-Solomon編碼,然后提供給交織器112。交織器112對(duì)信息進(jìn)行重排(交織),以便分散主要出現(xiàn)在作為通信線路的信道102中的突發(fā)錯(cuò)誤(burst error)。由于Reed-Solomon編碼涉及一個(gè)符號(hào)的多個(gè)位的錯(cuò)誤校正,因此交織器112以一個(gè)符號(hào)為單位為分散突發(fā)錯(cuò)誤執(zhí)行符號(hào)交織。
用于傳輸?shù)囊褕?zhí)行交織的數(shù)字信息還要由卷積編碼部分113進(jìn)行卷積編碼,這樣就基于多個(gè)信息塊順序地確定了代碼序列。例如,如果從交織器112為每個(gè)k位的信息塊提供數(shù)字信息,那么具有約束長(zhǎng)度K的卷積編碼部分113就基于K個(gè)信息塊將該數(shù)字信息編碼成n位代碼塊,其中該K個(gè)信息塊不僅包括當(dāng)前周期提供的信息塊還包括過(guò)去提供的信息塊。
然后,經(jīng)卷積編碼的數(shù)字信息被轉(zhuǎn)換為一種數(shù)據(jù)格式的數(shù)據(jù),其中該數(shù)據(jù)可由一個(gè)未示出的通信部分在信道102上傳輸并發(fā)出信號(hào)。換句話說(shuō),編碼設(shè)備101對(duì)提供進(jìn)來(lái)的電視信號(hào)進(jìn)行編碼和傳輸(廣播)。所傳輸?shù)膫鬏斪滞ㄟ^(guò)信道102提供到解碼設(shè)備103。換言之,信道102是電視信號(hào)沿其傳輸?shù)挠芯€或無(wú)線傳輸線路。
解碼設(shè)備103形成,例如一個(gè)接收設(shè)備(數(shù)字電視接收機(jī)等),接收從廣播站(編碼設(shè)備101)傳輸?shù)碾娨曅盘?hào)。解碼設(shè)備103包括卷積解碼部分121、解交織器122和ABP解碼部分131。
卷積解碼部分121對(duì)提供進(jìn)來(lái)的輸入執(zhí)行卷積碼的軟判決解碼,例如通過(guò)BCJR(Bahl、Cocke、Jelinek和Raviv)算法或SOVA(軟輸出維特比算法)解碼,并輸出作為結(jié)果的解碼字。解交織器122將交織的信息返回到原始順序的信息。ABP解碼部分131與圖3所示的ABP解碼設(shè)備31相對(duì)應(yīng),它適用于錯(cuò)誤校正系統(tǒng)100,并具有基本上與ABP解碼設(shè)備31相似的配置并執(zhí)行與ABP解碼設(shè)備31相似的處理。因此,上面給出的對(duì)ABP解碼設(shè)備31的描述可以應(yīng)用到對(duì)ABP解碼部分131的配置和處理內(nèi)容的描述上,因此,為避免冗長(zhǎng)這里省略了對(duì)它們的詳細(xì)描述。然而,ABP解碼部分131通常對(duì)從解交織器122提供進(jìn)來(lái)的信息(軟判決解碼的解交織結(jié)果)執(zhí)行ABP重復(fù)解碼處理,通過(guò)MAP解碼等從由ABP重復(fù)解碼處理產(chǎn)生的解碼字列表中選擇一個(gè)的最優(yōu)的解碼字,并輸出所選擇的解碼字。
解碼設(shè)備103解碼所接收的電視信號(hào)。特別地,解碼設(shè)備103通過(guò)未示出的通信部分接收在信道102上傳輸?shù)膫鬏斪?。該所接收的傳輸?也就是,接收字)被提供給卷積解碼部分121,這樣就可以執(zhí)行卷積碼的軟判決解碼。解交織器122獲取卷積解碼接收字,并按照與編碼設(shè)備101的交織器112所執(zhí)行的交織方法相對(duì)應(yīng)的方法,對(duì)信息進(jìn)行解交織,以便還原交織信息的原始順序。ABP解碼部分131按照上述方法對(duì)還原了順序的數(shù)字信息執(zhí)行ABP重復(fù)解碼,并在由ABP更新可靠性值之后,執(zhí)行硬判決后的臨界距離解碼、列表解碼或軟判決列表解碼,其中軟值被原樣輸入。然后,ABP解碼部分131將作為結(jié)果的解碼字(重新產(chǎn)生的與編碼設(shè)備101編碼之前的數(shù)字信息相同的數(shù)字信息)輸出到解碼設(shè)備103的外部。
圖6的錯(cuò)誤校正系統(tǒng)100中的解碼設(shè)備103可按上述方式容易地執(zhí)行高性能的解碼處理,并能獲得較高精確度的通信。此外,由于在ABP解碼部分131執(zhí)行MAP解碼之前解碼設(shè)備103執(zhí)行重復(fù)解碼來(lái)減少候選解碼字,因此就能減少解碼處理的負(fù)荷,并且可以抑制解碼設(shè)備103的生產(chǎn)成本和操作成本。
要注意的是,雖然上面描述的錯(cuò)誤校正系統(tǒng)100使用Reed-Solomon碼,但所使用的編碼不限于此,例如可以采用BCH碼或使用任意其它的編碼方法。
圖7示出了將本發(fā)明的ABP解碼應(yīng)用于另一錯(cuò)誤校正系統(tǒng)的另一實(shí)例。參考圖7,所示的錯(cuò)誤校正系統(tǒng)150包括編碼設(shè)備151、信道152和解碼設(shè)備153,它用于諸如數(shù)字電視系統(tǒng)的數(shù)字通信系統(tǒng)。
編碼設(shè)備151是一個(gè)與圖6的編碼設(shè)備101相似的設(shè)備,它具有基本上與編碼設(shè)備101相似的配置,并執(zhí)行與編碼設(shè)備101相似的處理。特別地,編碼設(shè)備151包括RS編碼部分111、交織器112和卷積編碼部分113。編碼設(shè)備151的組件與編碼設(shè)備101的組件相似,因此在這里省略它們的重復(fù)描述以避免冗余。
信道152與圖6的信道102相似,是電視信號(hào)沿其傳輸?shù)臒o(wú)線或有線的傳輸線路。
解碼設(shè)備153包括卷積編碼部分161、解交織器122、ABP解碼部分131、以及交織器112。卷積解碼部分161獲取通過(guò)一個(gè)未示出的通信部分接收到的一個(gè)接收字(通過(guò)信道152從編碼設(shè)備151傳輸?shù)膫鬏斪?,并使用例如BCJR算法或SOVA對(duì)接收字執(zhí)行軟判決解碼。然后,卷積解碼部分161將經(jīng)軟判決解碼的接收字提供給解交織器122。而且,再次對(duì)由ABP解碼部分131執(zhí)行ABP重復(fù)解碼的接收字進(jìn)行交織,并且從交織器112提供到卷積解碼部分161。與未示出的通信部分所提供的接收字的情況相似,ABP解碼部分131還使用例如BCJR算法或SOVA,對(duì)接收字執(zhí)行軟判決解碼,并將經(jīng)解碼的接收字提供給解交織器122。
解交織器122與圖6的解碼設(shè)備103中的操作相似,它對(duì)從卷積解碼部分161提供進(jìn)來(lái)的軟判決解碼結(jié)果進(jìn)行解交織,并將解交織結(jié)果提供給ABP解碼部分131。
ABP解碼部分131與圖6的解碼設(shè)備103中的操作相似,它對(duì)從解交織器122提供進(jìn)來(lái)的信息(解交織的軟判決結(jié)果)執(zhí)行ABP重復(fù)解碼處理。然后,ABP解碼部分131通過(guò)MAP解碼等從ABP重復(fù)解碼處理所產(chǎn)生的解碼字列表中選擇一個(gè)最優(yōu)的解碼字,并輸出所選擇的解碼字。此外,ABP解碼部分131將該解碼字提供給交織器112。
交織器112與編碼設(shè)備151中的操作相似,將從ABP解碼部分131提供進(jìn)來(lái)的信息(解碼字)交織為預(yù)定順序的信息。交織器112的交織模式與編碼設(shè)備151中的情形相似。以這種方式交織的數(shù)字信息提供給卷積解碼部分161。
如上所述,解碼設(shè)備153對(duì)通過(guò)解交織器122和交織器112對(duì)經(jīng)由未示出的通信部分而獲得的接收字,重復(fù)執(zhí)行由卷積解碼部分161執(zhí)行的軟判決解碼,以及由ABP解碼部分131執(zhí)行的重復(fù)解碼,以便連續(xù)地降低解碼處理中的解碼錯(cuò)誤可能性。要注意的是,整個(gè)解碼設(shè)備153重復(fù)解碼的次數(shù)可以是預(yù)先確定的,或者可以基于預(yù)定條件,例如應(yīng)當(dāng)執(zhí)行錯(cuò)誤校正的位置的數(shù)目來(lái)判斷是否應(yīng)當(dāng)停止這種重復(fù)。
以這種方式,在圖7的錯(cuò)誤校正系統(tǒng)150中,解碼設(shè)備153可以容易地執(zhí)行高性能的解碼處理,并能夠以高精確度進(jìn)行通信。此外,由于在ABP解碼部分131執(zhí)行MAP解碼之前,解碼設(shè)備103通過(guò)執(zhí)行重復(fù)解碼減少了候選解碼字,因此就能降低解碼處理的負(fù)荷,并能夠抑制解碼設(shè)備103的生產(chǎn)成本和操作成本。
要注意的是,雖然上面描述的錯(cuò)誤校正系統(tǒng)150使用Reed-Solomon碼,但所使用的編碼不限于此,例如可以采用BCH碼或使用任意其它的編碼方法。
圖8示出了將本發(fā)明的ABP解碼應(yīng)用于另一錯(cuò)誤校正系統(tǒng)的另一實(shí)例。參考圖8,所示出的錯(cuò)誤校正系統(tǒng)200包括編碼設(shè)備201、信道202和解碼設(shè)備203,并用在數(shù)字記錄介質(zhì)記錄和再現(xiàn)設(shè)備中,例如DVD(數(shù)字多功能光盤)唱機(jī)。
特別地,記錄和再現(xiàn)設(shè)備(錯(cuò)誤校正系統(tǒng)200)通過(guò)編碼處理部分(201)對(duì)從外部提供進(jìn)來(lái)的數(shù)字信息進(jìn)行編碼,并通過(guò)未示出的記錄和再現(xiàn)處理部分將經(jīng)編碼的數(shù)字信息記錄在記錄介質(zhì)(信道202)上。此外,記錄和再現(xiàn)設(shè)備(錯(cuò)誤校正系統(tǒng)200)通過(guò)該記錄和再現(xiàn)部分對(duì)記錄在記錄介質(zhì)(信道202)上的數(shù)字信息進(jìn)行再現(xiàn),通過(guò)解碼處理部分(解碼裝置203)對(duì)再現(xiàn)的數(shù)字信息執(zhí)行解碼處理,以便獲取原始數(shù)字信息,并向外輸出數(shù)字信息。
編碼設(shè)備201包括Reed-Solomon編碼部分(RS編碼部分)211-1至211-n(n是自然數(shù)),它對(duì)數(shù)字信息執(zhí)行彼此不同維數(shù)的Reed-Solomon編碼。
例如,來(lái)自編碼設(shè)備201外部的數(shù)字信息通過(guò)RS編碼部分211-1進(jìn)行第1維的Reed-Solomon編碼。然后,數(shù)字信息分別由RS編碼部分211-2至211-n連續(xù)進(jìn)行從第2維到第n維的Reed-Solomon編碼。當(dāng)RS編碼部分211-n的編碼完成時(shí),編碼設(shè)備201將經(jīng)編碼的數(shù)字信息提供給記錄和再現(xiàn)處理部分(未示出)。
記錄和再現(xiàn)處理部分對(duì)從編碼設(shè)備201提供進(jìn)來(lái)的信息采用諸如NRZI(不歸零反轉(zhuǎn))轉(zhuǎn)換(NRZI編碼)的轉(zhuǎn)換,并將經(jīng)轉(zhuǎn)換的信息記錄在記錄介質(zhì)(信道202)上。此外,記錄和再現(xiàn)處理部分對(duì)記錄在記錄介質(zhì)(信道202)上的數(shù)字信息(Reed-Solomon編碼的數(shù)字信息)進(jìn)行再現(xiàn),對(duì)再現(xiàn)的數(shù)字信息進(jìn)行逆NRZI轉(zhuǎn)換(解碼),并將經(jīng)解碼的數(shù)字信息提供給解碼設(shè)備203。
解碼設(shè)備203是與編碼設(shè)備201相對(duì)應(yīng)的解碼器,它包括n個(gè)ABP解碼部分(ABP解碼部分231-1至231-n),ABP解碼部分對(duì)數(shù)字信息執(zhí)行與不同維數(shù)有關(guān)的ABP重復(fù)解碼處理。
ABP解碼部分231-1至231-n分別與編碼設(shè)備201的RS編碼部分211-1至211-n相對(duì)應(yīng),并執(zhí)行重復(fù)解碼處理和選擇處理,其中重復(fù)解碼處理中使用了ABP,選擇處理是從通過(guò)對(duì)有關(guān)維數(shù)的Reed-Solomon碼進(jìn)行重復(fù)解碼處理而獲得的解碼字列表中選擇一個(gè)最優(yōu)的解碼字。ABP解碼部分231-1至231-n具有與圖3所示的ABP解碼設(shè)備31基本上相似的配置,并執(zhí)行與ABP解碼設(shè)備31基本上相似的操作。因此,解碼設(shè)備203的ABP解碼部分可與圖6或7的ABP解碼部分131的情況相似,采用圖3的方框圖和圖4的流程圖。
特別地,在解碼設(shè)備203中,ABP解碼部分(ABP解碼部分231-1至231-n)執(zhí)行如上所述的重復(fù)解碼處理等。于是,如圖8所示,解碼設(shè)備203執(zhí)行與編碼設(shè)備201的操作相反的操作。特別地,在解碼設(shè)備203中,ABP解碼部分231-n先執(zhí)行有關(guān)第n維的解碼處理,然后串聯(lián)連接的ABP解碼部分通過(guò)連續(xù)降低維數(shù)到第n-1維、第n-2維等來(lái)執(zhí)行解碼處理。最后,ABP解碼部分231-1執(zhí)行有關(guān)第1維的解碼處理。解碼設(shè)備201將以這種方式還原的原始數(shù)字信息輸出到記錄和再現(xiàn)設(shè)備(錯(cuò)誤校正系統(tǒng)200)的外部。
具有上述配置的錯(cuò)誤校正系統(tǒng)200的解碼設(shè)備203可以容易地執(zhí)行高性能的解碼處理。換句話說(shuō),作為記錄和再現(xiàn)設(shè)備的錯(cuò)誤校正系統(tǒng)200能夠以較高的精確度記錄和再現(xiàn)數(shù)字信息。此外,由于在ABP解碼部分231-1至231-n執(zhí)行MAP解碼(選擇一個(gè)解碼字)之前,解碼設(shè)備203執(zhí)行重復(fù)解碼來(lái)減少候選解碼字,因此就能降低解碼處理的負(fù)荷,并抑制解碼設(shè)備203的生產(chǎn)成本和操作成本。
要注意的是,雖然上面描述的錯(cuò)誤校正系統(tǒng)200使用Reed-Solomon碼,但所使用的編碼不限于此,例如可以采用BCH碼或使用任意其它的編碼方法。
圖9示出了將本發(fā)明的ABP解碼應(yīng)用于又一個(gè)錯(cuò)誤校正系統(tǒng)的又一實(shí)例。參考圖9,所示出的錯(cuò)誤校正系統(tǒng)250包括編碼設(shè)備251、信道252和解碼設(shè)備253,并用在數(shù)字記錄介質(zhì)記錄和再現(xiàn)設(shè)備中,例如DVD唱機(jī)。
特別地,類似于圖8所示的錯(cuò)誤校正系統(tǒng)200,記錄和再現(xiàn)設(shè)備(錯(cuò)誤校正系統(tǒng)250)通過(guò)編碼處理部分(編碼設(shè)備251)對(duì)從外部提供進(jìn)來(lái)的數(shù)字信息進(jìn)行編碼,并通過(guò)未示出的記錄和再現(xiàn)處理部分將所編碼的數(shù)字信息記錄在記錄介質(zhì)(信道252)上。此外,記錄和再現(xiàn)設(shè)備(錯(cuò)誤校正系統(tǒng)250)通過(guò)記錄和再現(xiàn)部分對(duì)記錄在記錄介質(zhì)(信道252)上的數(shù)字信息進(jìn)行再現(xiàn),通過(guò)解碼處理部分(解碼設(shè)備253)對(duì)再現(xiàn)的數(shù)字信息進(jìn)行解碼處理以便獲得原始數(shù)字信息,并向外輸出該數(shù)字信息。
編碼設(shè)備251是與圖8的編碼設(shè)備201相似的編碼設(shè)備,它具有與編碼設(shè)備201相似的配置并執(zhí)行相似處理。特別地,從編碼設(shè)備251外部提供的數(shù)字信息經(jīng)過(guò)RS編碼部分211-1進(jìn)行有關(guān)第1維的Reed-Solomon編碼。然后,數(shù)字信息分別通過(guò)RS編碼部分211-2至211-n,連續(xù)經(jīng)過(guò)有關(guān)第2維到第n維的Reed-Solomon編碼。當(dāng)RS編碼部分211-n的編碼完成時(shí),編碼設(shè)備251將經(jīng)編碼的數(shù)字信息提供給記錄和再現(xiàn)處理部分(未示出)。
記錄和再現(xiàn)處理部分對(duì)從編碼設(shè)備251提供進(jìn)來(lái)的信息采用諸如NRZI(不歸零反轉(zhuǎn))轉(zhuǎn)換(NRZI編碼)的轉(zhuǎn)換,并將經(jīng)轉(zhuǎn)換的信息記錄在記錄介質(zhì)(信道252)上。此外,記錄和再現(xiàn)處理部分對(duì)記錄在記錄介質(zhì)(信道252)上的數(shù)字信息(Reed-Solomon編碼的數(shù)字信息)進(jìn)行再現(xiàn),對(duì)再現(xiàn)的數(shù)字信息進(jìn)行逆NRZI轉(zhuǎn)換(解碼),并將經(jīng)解碼的數(shù)字信提供給解碼設(shè)備253。
解碼設(shè)備253是與編碼設(shè)備251相對(duì)應(yīng)的解碼器,它包括m個(gè)串聯(lián)連接的、并具有與上面參照?qǐng)D8描述的解碼設(shè)備203相似配置的解碼部分261-1至261-m,它們用于執(zhí)行與解碼設(shè)備203相似的解碼處理。
解碼部分261-1至261-m中的每一個(gè)都包括n個(gè)ABP解碼部分231-1至231-n,它們分別與編碼設(shè)備251的RS編碼部分211-1至211-n相對(duì)應(yīng),并串聯(lián)連接以便與圖8的解碼設(shè)備203的情況相似地對(duì)有關(guān)維數(shù)的Reed-Solomon碼執(zhí)行使用ABP的重復(fù)解碼處理。
特別地,在解碼設(shè)備253中,解碼部分261-1的ABP解碼部分231-1至231-n首先執(zhí)行使用ABP的重復(fù)解碼處理以及選擇處理,該選擇處理對(duì)從記錄和再現(xiàn)處理部分(未示出)提供進(jìn)來(lái)的數(shù)字信息(經(jīng)由信道252提供進(jìn)來(lái)的數(shù)字信息)從作為結(jié)果的解碼字列表中選擇一個(gè)解碼字。
此后,解碼部分261-1執(zhí)行與編碼設(shè)備251的操作相反的操作。特別地,在解碼部分261-1中,ABP解碼部分231-n首先執(zhí)行有關(guān)第n維的解碼處理,然后串聯(lián)連接的ABP解碼部分通過(guò)連續(xù)降低維數(shù)到第n-1維、第n-2維等來(lái)執(zhí)行解碼處理。最后,ABP解碼部分231-1執(zhí)行有關(guān)第1維的解碼處理。
在解碼處理結(jié)束之后,解碼部分261-1將經(jīng)解碼的數(shù)字信息提供給解碼部分261-2。解碼部分261-2與解碼部分261-1的情況相似,使用ABP解碼部分231-1至231-n連續(xù)地一個(gè)接一個(gè)地降低維數(shù),來(lái)執(zhí)行為每一維數(shù)使用ABP的重復(fù)解碼處理,并將經(jīng)解碼的數(shù)字信息提供給下一解碼部分。解碼處理以這種方式按照直至第m個(gè)解碼部分261-m的順序連續(xù)地執(zhí)行。當(dāng)解碼部分261-m的解碼處理完成時(shí),解碼設(shè)備253將經(jīng)解碼的數(shù)字信息輸出到記錄和再現(xiàn)設(shè)備(錯(cuò)誤校正系統(tǒng)250)的外部。
具有上述配置的解碼設(shè)備253可以容易地執(zhí)行高性能的解碼處理,并且作為記錄和再現(xiàn)設(shè)備的錯(cuò)誤校正系統(tǒng)250能夠以較高的精確度記錄并再現(xiàn)數(shù)字信息。此外,由于在ABP解碼部分231-1至231-n執(zhí)行MAP解碼(解碼字的選擇)之前,解碼設(shè)備253執(zhí)行重復(fù)解碼來(lái)減少侯選解碼字,因此,就可以減少解碼處理的負(fù)荷,并抑制解碼設(shè)備253的生產(chǎn)成本和操作成本。
要注意的是,雖然上面描述的錯(cuò)誤校正系統(tǒng)250使用Reed-Solomon碼,但所使用的編碼不限于此,例如可以采用BCH碼或使用任意其它的編碼方法。
雖然上述的一系列處理可由硬件來(lái)執(zhí)行,但也可以由軟件來(lái)執(zhí)行。在這種情況下,例如上述解碼設(shè)備和錯(cuò)誤校正系統(tǒng)的每一個(gè)都可由圖10所示的個(gè)人計(jì)算機(jī)來(lái)構(gòu)成。
參考圖10,個(gè)人計(jì)算機(jī)300的中央處理器(CPU)301按照存儲(chǔ)在ROM(只讀存儲(chǔ)器)302中的程序或從存儲(chǔ)部分313加載到RAM(隨機(jī)訪問(wèn)存儲(chǔ)器)303上的程序執(zhí)行各種處理。CPU 301執(zhí)行處理所必須的數(shù)據(jù)等還適當(dāng)?shù)卮鎯?chǔ)在RAM 303中。
CPU 301、ROM 302和RAM 303通過(guò)總線304互相連接。輸入/輸出接口310也連接到總線304。
包括鍵盤、鼠標(biāo)等的輸入部分311,包括顯示單元、揚(yáng)聲器等的輸出部分312,由硬盤等構(gòu)成的存儲(chǔ)部分313,包括調(diào)制解調(diào)器等的通信部分314都連接到該輸入/輸出接口310,其中顯示單元可以是CRT(陰極射線管)或LCD(液晶顯示器)單元。通信部分314通過(guò)包括因特網(wǎng)在內(nèi)的網(wǎng)絡(luò)執(zhí)行通信處理。
此外,必要時(shí),驅(qū)動(dòng)器315連接到輸入/輸出接口310??梢苿?dòng)介質(zhì)321,諸如磁盤、光盤、磁光盤、半導(dǎo)體存儲(chǔ)器等適當(dāng)?shù)丶虞d到驅(qū)動(dòng)器315中,并且,必要時(shí),從該加載的可移動(dòng)介質(zhì)321上讀取的計(jì)算機(jī)程序安裝到存儲(chǔ)部分313中。
在由軟件執(zhí)行上述一系列處理時(shí),構(gòu)成該軟件的程序就從網(wǎng)絡(luò)或記錄介質(zhì)上安裝。
該記錄介質(zhì)例如,如圖10所示,由可移動(dòng)介質(zhì)321構(gòu)成,可移動(dòng)介質(zhì)321被分配以便向與設(shè)備體分離的用戶提供程序,并且它可以是在其上或其中記錄了程序的磁盤(包括軟盤)、光盤(包括CD-ROM(只讀光盤存儲(chǔ)器)和DVD(數(shù)字多功能光盤)),或者磁光盤(包括MD(Mini Disk)(注冊(cè)商標(biāo)))或半導(dǎo)體存儲(chǔ)器。另外,記錄介質(zhì)可以由ROM 302、包括在存儲(chǔ)部分313中的硬盤等來(lái)構(gòu)成,在它們中記錄了程序并在該程序合并到一個(gè)設(shè)備體中的狀態(tài)下將該程序分配給一個(gè)用戶。
要注意的是,在當(dāng)前說(shuō)明書中,描述了記錄在記錄介質(zhì)中的程序的步驟可以是但不是必須要按照上述順序的時(shí)間序列來(lái)執(zhí)行,并且這些步驟包括并行或單獨(dú)執(zhí)行的處理而不需要以時(shí)間序列進(jìn)行處理。
此外,在當(dāng)前說(shuō)明書中,術(shù)語(yǔ)“系統(tǒng)”用于表示由多個(gè)裝置(設(shè)備)構(gòu)成的整個(gè)設(shè)備。要注意的是,上面作為一個(gè)設(shè)備來(lái)描述的任意組件都可被分成多個(gè)設(shè)備。相反地,作為不同設(shè)備來(lái)描述的多個(gè)組件也可以組合成一個(gè)單個(gè)設(shè)備。此外,任何其它的裝置或設(shè)備都可以自然地添加到上述設(shè)備的任意組件當(dāng)中。而且,如果整個(gè)系統(tǒng)的配置或操作實(shí)質(zhì)上是相同的,那么某個(gè)設(shè)備的組件就可以包括在另一設(shè)備中。
雖然本發(fā)明的優(yōu)選實(shí)施例已經(jīng)使用特定術(shù)語(yǔ)進(jìn)行了描述,但這種說(shuō)明只是出于解釋說(shuō)明的目的,可以理解,在不背離下面的權(quán)利要求書的精神或范圍的情況下可以作出改變和變化。
權(quán)利要求
1.一種對(duì)環(huán)R上的線性碼執(zhí)行解碼處理的解碼設(shè)備,所述解碼設(shè)備包括重復(fù)解碼裝置,用于對(duì)提供的代碼字使用置信傳播來(lái)執(zhí)行重復(fù)解碼;解碼字列表產(chǎn)生裝置,用于產(chǎn)生并保持由所述重復(fù)解碼裝置進(jìn)行重復(fù)解碼所獲得的解碼字的列表;以及解碼字選擇裝置,用于從所述解碼字列表產(chǎn)生裝置所產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
2.如權(quán)利要求1所述的解碼設(shè)備,其中所述重復(fù)解碼裝置包括保持裝置,用于保持代碼字以及與可靠性順序有關(guān)的信息,其中所述可靠性順序是代碼字的符號(hào)值的可靠性值的順序;對(duì)角化裝置,基于與在所述保持裝置中保持的可靠性順序有關(guān)的信息,對(duì)奇偶校驗(yàn)矩陣進(jìn)行對(duì)角化;置信傳播裝置,使用由所述對(duì)角化裝置進(jìn)行對(duì)角化的奇偶校驗(yàn)矩陣執(zhí)行置信傳播,以更新消息;對(duì)數(shù)似然比計(jì)算裝置,使用由所述置信傳播裝置執(zhí)行置信傳播所更新的消息,計(jì)算代碼字的每個(gè)符號(hào)的對(duì)數(shù)似然比;可靠性順序搜索裝置,用于搜索由所述對(duì)數(shù)似然比計(jì)算裝置計(jì)算的對(duì)數(shù)似然比的可靠性順序,并使用該對(duì)數(shù)似然比和該對(duì)數(shù)似然比的可靠性順序的信息,更新代碼字以及與保持在所述保持裝置中的可靠性順序有關(guān)的信息;解碼裝置,使用由所述對(duì)數(shù)似然比計(jì)算裝置所計(jì)算的對(duì)數(shù)似然比執(zhí)行解碼;以及解碼控制裝置,用于控制所述對(duì)角化裝置、置信傳播裝置、對(duì)數(shù)似然比計(jì)算裝置、可靠性順序搜索裝置和解碼裝置,以便分別以預(yù)定次數(shù)重復(fù)奇偶校驗(yàn)矩陣的對(duì)角化、置信傳播、對(duì)數(shù)似然比的計(jì)算、可靠性順序的搜索以及解碼。
3.如權(quán)利要求2所述的解碼設(shè)備,其中該預(yù)定次數(shù)是預(yù)先確定的值。
4.如權(quán)利要求2所述的解碼設(shè)備,其中所述對(duì)角化裝置優(yōu)選地按照從與具有最低可靠性值的接收符號(hào)相對(duì)應(yīng)的奇偶校驗(yàn)矩陣的列開始的順序執(zhí)行對(duì)角化。
5.如權(quán)利要求2所述的解碼設(shè)備,其中所述對(duì)角化裝置按照與列相對(duì)應(yīng)的接收符號(hào)的可靠性升序排列奇偶校驗(yàn)矩陣的列,按照預(yù)定的方法重排該順序的一部分,并以重排的順序執(zhí)行奇偶校驗(yàn)矩陣的列的對(duì)角化。
6.如權(quán)利要求2所述的解碼設(shè)備,其中所述對(duì)角化裝置預(yù)先準(zhǔn)備多個(gè)不同的確定方法,以用于為執(zhí)行對(duì)角化的奇偶校驗(yàn)矩陣的列的優(yōu)先級(jí)排序確定初始值,并在每次啟動(dòng)優(yōu)先級(jí)順序排序的時(shí)候改變要使用的確定方法。
7.如權(quán)利要求2所述的解碼設(shè)備,其中所述解碼裝置使用由所述對(duì)數(shù)似然比計(jì)算裝置所計(jì)算的對(duì)數(shù)似然比來(lái)執(zhí)行硬定義解碼。
8.如權(quán)利要求2所述的解碼設(shè)備,其中所述解碼裝置使用有限域Fq(q=pm)代數(shù)-幾何碼或同構(gòu)碼,并對(duì)作為輸入而接收的多次更新所獲得的可靠性值進(jìn)行解碼,其中p是質(zhì)數(shù)。
9.如權(quán)利要求8所述的解碼設(shè)備,其中所述解碼裝置接收由多次更新所獲得的可靠性值作為輸入,來(lái)根據(jù)Sudan算法、Grusuwami-Sudan算法或用于代數(shù)-幾何碼的Reed-Solomon碼、BCH碼或同構(gòu)碼的其它算法來(lái)執(zhí)行硬判決列表解碼。
10.如權(quán)利要求8所述的解碼設(shè)備,其中所述解碼裝置接收由多次更新所獲得的可靠性值作為輸入,來(lái)根據(jù)Sudan算法、Koetter-Vardy算法或用于代數(shù)-幾何碼的Reed-Solomon碼、BCH碼或同構(gòu)碼的其它算法來(lái)執(zhí)行冗余設(shè)置和軟判決列表解碼。
11.如權(quán)利要求1所述的解碼設(shè)備,其中所述解碼字選擇裝置對(duì)寄存在解碼字列表中的解碼字執(zhí)行最大后驗(yàn)概率解碼,以便選擇一個(gè)解碼字。
12.一種用于解碼設(shè)備的解碼方法,該解碼設(shè)備對(duì)環(huán)R上的線性碼執(zhí)行解碼處理,該方法包括步驟執(zhí)行重復(fù)解碼,其中對(duì)提供的代碼字使用置信傳播;產(chǎn)生在重復(fù)解碼步驟的處理中所獲得的解碼字的列表,并將產(chǎn)生的解碼字列表放置在保持部分中;以及從在解碼字列表產(chǎn)生步驟的處理中產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
13.一種程序,使計(jì)算機(jī)對(duì)環(huán)R上的線性碼執(zhí)行解碼處理,所述程序包括步驟執(zhí)行重復(fù)解碼,其中對(duì)提供的代碼字使用置信傳播;產(chǎn)生在重復(fù)解碼步驟的處理中所獲得的解碼字的列表,并將產(chǎn)生的解碼字列表放置在保持部分中;以及從在解碼字列表產(chǎn)生步驟的處理中產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
14.一種解碼設(shè)備,其對(duì)環(huán)R上的線性碼執(zhí)行解碼處理,所述解碼設(shè)備包括重復(fù)解碼裝置,用于對(duì)提供的代碼字使用置信傳播來(lái)執(zhí)行重復(fù)解碼;解碼字列表產(chǎn)生裝置,用于產(chǎn)生并保持由所述重復(fù)解碼裝置進(jìn)行重復(fù)解碼所獲得的解碼字的列表;以及解碼字選擇裝置,用于從所述解碼字列表產(chǎn)生裝置所產(chǎn)生的解碼字列表中選擇一個(gè)解碼字。
全文摘要
本發(fā)明公開了一種解碼設(shè)備和方法,能夠抑制解碼器錯(cuò)誤出現(xiàn)的概率并能獲得高解碼性能。ABP解碼設(shè)備對(duì)角化一個(gè)奇偶校驗(yàn)矩陣,更新LLR值,解碼該LLR值,然后將通過(guò)解碼獲得的解碼字添加到解碼字列表中。ABP解碼設(shè)備以預(yù)定次數(shù)重復(fù)該解碼過(guò)程作為內(nèi)部重復(fù)解碼。此外,隨著ABP解碼設(shè)備連續(xù)地為L(zhǎng)LR值的優(yōu)先級(jí)排序改變初始值,它以預(yù)定次數(shù)重復(fù)該內(nèi)部重復(fù)解碼作為外部重復(fù)解碼。然后,ABP解碼設(shè)備從重復(fù)的內(nèi)部重復(fù)解碼所獲得的解碼字列表中選擇一個(gè)最優(yōu)的解碼字。本發(fā)明應(yīng)用于錯(cuò)誤校正系統(tǒng)。
文檔編號(hào)H03M13/00GK1838542SQ20061007936
公開日2006年9月27日 申請(qǐng)日期2006年2月7日 優(yōu)先權(quán)日2005年2月7日
發(fā)明者菅真紀(jì)子, 宮內(nèi)俊之 申請(qǐng)人:索尼株式會(huì)社