專利名稱:超強(qiáng)前向糾錯(cuò)的硬件譯碼方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及光通信系統(tǒng)中的信道糾錯(cuò)編譯碼領(lǐng)域,特別是涉及一種超強(qiáng)前向糾錯(cuò)的硬件譯碼方法及裝置。
背景技術(shù):
隨著hternet的普及與迅速發(fā)展,通信業(yè)務(wù)量大增,因而需要采用 WDM(ffavelength Division Multiplexing, ^ ^v S; ffl ) # DWDM(Dense Wavelength Division Multiplexing,密集波分復(fù)用)技術(shù),使線路速率提高到10(ib/S、40(;b/S甚至更
尚ο在長(zhǎng)距離、超長(zhǎng)距離或者大容量DWDM光纖通信系統(tǒng)中,由于光纖的色散和長(zhǎng)距離傳輸會(huì)引起信號(hào)衰減、信道噪聲,而信號(hào)衰減、信道噪聲、以及一根光纖中多個(gè)波長(zhǎng)之間的干擾,均會(huì)使系統(tǒng)的性能大大下降,因此,在光纖干線上,大約每隔80公里就必須進(jìn)行一次光中繼,大約每隔400公里就必須進(jìn)行一次電信號(hào)的再生,從而使建網(wǎng)和運(yùn)營(yíng)的成本劇增。由于入纖光功率每增加3dB,可以將傳輸距離延長(zhǎng)一倍,因此,為了使傳輸距離更長(zhǎng),同時(shí)又保持足夠的0SNR(0ptical Signal Noise Ratio,光信噪比),可以增加入纖光功率,然而入纖光功率的一味提高,會(huì)引發(fā)較大的光纖非線性效應(yīng),反而不利于實(shí)現(xiàn)超長(zhǎng)距離傳輸。FEC (Forward Error Correction,前向糾錯(cuò))技術(shù)是解決上述問(wèn)題的關(guān)鍵技術(shù)之一。FEC技術(shù)通過(guò)在傳輸碼列中加入冗余糾錯(cuò)碼,可以降低接收端的OSNR容限,減小所需的發(fā)射功率。采用FEC所獲得的譯碼增益,大大降低了誤碼率,有效地提高了通信的可靠性,從而達(dá)到了改善系統(tǒng)性能、降低系統(tǒng)成本的目的,因此隨著未來(lái)光纖通信速率的越來(lái)越高,F(xiàn)EC技術(shù)將是這一領(lǐng)域的核心技術(shù)之一,有較強(qiáng)的技術(shù)生命周期,而且,目前在無(wú)線通信、數(shù)據(jù)接入通信等領(lǐng)域中,例如GPON(Gigabit-Capable PON,G比特以太網(wǎng)無(wú)源光網(wǎng)絡(luò))/ EPON(Ethernet Passive Optical Network,以太網(wǎng)無(wú)源光網(wǎng)絡(luò)),F(xiàn)EC技術(shù)也得到了廣泛的應(yīng)用。SFEC (Super Forward Error Correction,超強(qiáng)前向糾錯(cuò))是針對(duì) G. 709 和 G. 975 所規(guī)定的標(biāo)準(zhǔn)FEC而言的,它對(duì)標(biāo)準(zhǔn)前向糾錯(cuò)的Reed-Solomon (255,239)算法做了改進(jìn),采用了具有更加強(qiáng)大糾錯(cuò)能力的前向糾錯(cuò)編解碼方式,所獲得的編碼增益更高,能夠大幅度降低系統(tǒng)對(duì)OSNR的要求。由于現(xiàn)在沒(méi)有統(tǒng)一的標(biāo)準(zhǔn),各個(gè)廠家采用超強(qiáng)前向糾錯(cuò)的算法各不相同。從現(xiàn)狀看,實(shí)現(xiàn)超強(qiáng)前向糾錯(cuò)的方法可以大致分為以下兩種一是完全突破了 G. 709所規(guī)定的幀結(jié)構(gòu),采用兩級(jí)矩陣式編碼,如RS-RS、RS_BCH、 BCH-BCH編碼等;二是保留G. 709所規(guī)定的幀結(jié)構(gòu),只是將幀結(jié)構(gòu)中冗碼部分的計(jì)算由 Reed-Solomon (255,239)算法換為其他算法。前一種方法可以獲得很高的凈編碼增益(7 8dB),但是付出的帶寬代價(jià)也很高(15% 25%),現(xiàn)在已經(jīng)開(kāi)始實(shí)用。后一種方法保持7%的冗碼比例不變,通過(guò)算法的優(yōu)化來(lái)獲得比標(biāo)準(zhǔn)前向糾錯(cuò)更優(yōu)的編碼增益。相對(duì)于前一種方法,后一種方法獲得的編碼增益略低。由于超強(qiáng)前向糾錯(cuò)涉及到比較復(fù)雜的交織、解交織以及編解碼算法,再加上目前超強(qiáng)前向糾錯(cuò)技術(shù)處在非標(biāo)準(zhǔn)化和非透明化的狀態(tài)下,因此,如何用高效的硬件電路來(lái)正確實(shí)現(xiàn)整個(gè)算法,并獲得較高的硬件時(shí)序速度,是實(shí)現(xiàn)超強(qiáng)前向糾錯(cuò)的一個(gè)難點(diǎn)。
發(fā)明內(nèi)容
本發(fā)明的目的是為了克服上述背景技術(shù)的不足,提供一種超強(qiáng)前向糾錯(cuò)的硬件譯碼方法及裝置,能夠用較小規(guī)模的硬件電路來(lái)正確實(shí)現(xiàn)整個(gè)算法,并提高超強(qiáng)前向糾錯(cuò)的硬件實(shí)現(xiàn)時(shí)序速度。本發(fā)明提供的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,包括以下步驟:A、首先對(duì)接收信道輸出的數(shù)據(jù)采用BQK2040,195》碼計(jì)算其伴隨式,然后對(duì)計(jì)算所得BCH碼伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式的求解,再根據(jù)求得的錯(cuò)誤位置多項(xiàng)式進(jìn)行錢搜索,確定BCH碼字中的碼元錯(cuò)誤位置并進(jìn)行糾錯(cuò),完成BCH碼字中逐個(gè)碼元的譯碼處理;B、每處理完一個(gè)內(nèi)碼BCH碼元的譯碼后,先進(jìn)行交織處理,再對(duì)譯碼結(jié)果進(jìn)行RS碼字伴隨式的計(jì)算,然后對(duì)計(jì)算所得 RS碼字伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式的求解,根據(jù)求得的錯(cuò)誤位置多項(xiàng)式進(jìn)行錢搜索,確定RS碼字中的碼元錯(cuò)誤位置,根據(jù)求得的錯(cuò)誤值多項(xiàng)式計(jì)算差錯(cuò)值并進(jìn)行糾錯(cuò),完成RS碼字中逐個(gè)碼元的譯碼處理;最后將其輸出數(shù)據(jù)進(jìn)行解交織,得到超強(qiáng)前向糾錯(cuò)的譯碼結(jié)果。在上述技術(shù)方案中,步驟A中每路BCH碼的伴隨式有16個(gè)。在上述技術(shù)方案中,步驟A中所述對(duì)計(jì)算所得BCH碼伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式的求解之前包括以下步驟將計(jì)算所得BCH碼伴隨式結(jié)果發(fā)送到BCH碼BM算法單元。在上述技術(shù)方案中,步驟A中所述對(duì)計(jì)算所得BCH碼伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式的求解之后包括以下步驟將求解結(jié)果發(fā)送到BCH碼錢搜索和糾錯(cuò)單元進(jìn)行處理。在上述技術(shù)方案中,步驟B中每路RS碼的伴隨式有16個(gè)。在上述技術(shù)方案中,步驟B中所述對(duì)計(jì)算所得RS碼字伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式的求解之前包括以下步驟將計(jì)算所得RS碼伴隨式結(jié)果發(fā)送到RS碼 BM算法單元。在上述技術(shù)方案中,步驟B中所述對(duì)計(jì)算所得RS碼字伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式的求解之后包括以下步驟將求解結(jié)果發(fā)送到RS碼錢搜索和糾錯(cuò)單元進(jìn)行處理。本發(fā)明提供的超強(qiáng)前向糾錯(cuò)的硬件譯碼裝置,它包括BCH碼伴隨式計(jì)算單元,用于完成BCH碼的16個(gè)伴隨式的計(jì)算,并將求得的BCH碼伴隨式結(jié)果保存待用;BCH碼BM算法單元,用于根據(jù)已得到的BCH碼伴隨式結(jié)果,求解BCH碼錯(cuò)誤位置多項(xiàng)式的表達(dá)式,進(jìn)而得到BCH碼錯(cuò)誤位置多項(xiàng)式所有系數(shù)的值,多個(gè)BCH碼共用一個(gè)BCH碼 BM算法單元;BCH碼錢搜索和糾錯(cuò)單元,用于求解所述BCH碼BM算法單元發(fā)送來(lái)的錯(cuò)誤位置多項(xiàng)式的根,定位出每個(gè)BCH碼字中的錯(cuò)誤碼元位置,并完成BCH碼字中的錯(cuò)誤碼元的糾錯(cuò);BCH碼復(fù)用存儲(chǔ)單元,用于對(duì)多路BCH碼進(jìn)行存儲(chǔ)、處理,以及對(duì)BCH碼伴隨式分量和錯(cuò)誤位置多項(xiàng)式進(jìn)行調(diào)度;BCH碼總線變換單元,用于完成總線從BCH碼型到RS碼型的變換,以滿足后續(xù)RS 碼在GF域上的要求;RS碼伴隨式計(jì)算單元,用于完成RS碼的16個(gè)伴隨式的計(jì)算,并將求得的RS碼伴隨式結(jié)果保存待用;RS碼BM算法單元,用于根據(jù)已得到的RS碼伴隨式結(jié)果,計(jì)算RS碼錯(cuò)誤位置多項(xiàng)式和RS碼錯(cuò)誤值多項(xiàng)式的表達(dá)式,進(jìn)而得到RS碼錯(cuò)誤位置多項(xiàng)式的所有系數(shù)及RS碼錯(cuò)誤值多項(xiàng)式的所有系數(shù),多個(gè)RS碼字共用一個(gè)RS碼BM算法單元;RS碼錢搜索和糾錯(cuò)單元,用于通過(guò)錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式分別確定RS 碼字中的錯(cuò)誤位置和錯(cuò)誤值,并完成RS碼元糾錯(cuò);RS碼復(fù)用存儲(chǔ)單元,用于對(duì)多路RS碼字進(jìn)行存儲(chǔ)、處理,以及對(duì)RS碼伴隨式分量、 錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式進(jìn)行調(diào)度;RS碼總線變換單元,用于完成入口多路RS碼字的并行譯碼輸出到出口位寬的變換,并發(fā)送幀的起始位置指示信號(hào)。在上述技術(shù)方案中,它還包括數(shù)據(jù)緩沖單元,所述數(shù)據(jù)緩沖單元用于緩存數(shù)據(jù),并產(chǎn)生延遲一定拍數(shù)的幀起始脈沖信號(hào)。在上述技術(shù)方案中,它還包括譯碼性能監(jiān)控單元,所述譯碼性能監(jiān)控單元用于監(jiān)控RS碼和BCH碼的性能。與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)點(diǎn)如下本發(fā)明中采用多個(gè)BCH碼字共用一個(gè)BCH碼BM算法單元,以及多個(gè)RS碼字共用一個(gè)RS碼BM算法單元,以盡可能減小硬件電路的設(shè)計(jì)規(guī)模,使得本發(fā)明的硬件電路實(shí)現(xiàn)規(guī)模相對(duì)較小,并能獲得較高的硬件時(shí)序速度。
圖1為本發(fā)明實(shí)施例中的方法流程圖;圖2為本發(fā)明實(shí)施例中的裝置結(jié)構(gòu)示意圖;圖3為本發(fā)明實(shí)施例中BCH碼BM算法的電路圖;圖4為本發(fā)明實(shí)施例中BCH碼錢搜索與糾錯(cuò)單元的結(jié)構(gòu)示意圖;圖5為本發(fā)明實(shí)施例中RS碼BM算法的流程圖;圖6為本發(fā)明實(shí)施例中RS碼錢搜索與糾錯(cuò)單元的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。參見(jiàn)圖1所示,本發(fā)明實(shí)施例提供的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,包括以下步驟首先對(duì)接收信道輸出的數(shù)據(jù)采用BCH碼計(jì)算其伴隨式,每路BCH碼的伴隨式有16個(gè), 然后將計(jì)算所得的BCH碼伴隨式結(jié)果發(fā)送到BCH碼BM算法單元,進(jìn)行錯(cuò)誤位置多項(xiàng)式的求解,接著將求解結(jié)果送入BCH碼錢搜索和糾錯(cuò)單元進(jìn)行處理,根據(jù)求得的錯(cuò)誤位置多項(xiàng)式進(jìn)行錢搜索,確定BCH碼字中具體的碼元錯(cuò)誤位置并進(jìn)行糾錯(cuò),從而完成BCH碼字的逐個(gè)碼元的譯碼處理;每處理完一個(gè)內(nèi)碼BCH碼元的譯碼后,先通過(guò)交織處理,再將其譯碼結(jié)果再進(jìn)行RS碼字伴隨式的計(jì)算,每路RS碼的伴隨式有16個(gè),然后將計(jì)算所得到的RS碼伴隨式結(jié)果發(fā)送到RS碼BM算法單元進(jìn)行計(jì)算,求解該RS碼字的錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式,接著將求解結(jié)果送入RS碼錢搜索和糾錯(cuò)單元進(jìn)行處理,根據(jù)求得的錯(cuò)誤位置多項(xiàng)式進(jìn)行錢搜索,確定RS碼字中具體的碼元錯(cuò)誤位置,根據(jù)錯(cuò)誤值多項(xiàng)式計(jì)算差錯(cuò)值并進(jìn)行糾錯(cuò),從而完成RS碼字的逐個(gè)碼元的譯碼處理,最后將其輸出數(shù)據(jù)進(jìn)行解交織,即得到最終的超強(qiáng)前向糾錯(cuò)譯碼結(jié)果。參見(jiàn)圖2所示,本發(fā)明實(shí)施例提供的超強(qiáng)前向糾錯(cuò)的硬件譯碼裝置,它包括數(shù)據(jù)緩沖單元,用于緩存數(shù)據(jù),并產(chǎn)生延遲一定拍數(shù)的幀起始脈沖信號(hào);BCH碼伴隨式計(jì)算單元,用于完成BCH碼的16個(gè)伴隨式的計(jì)算,并將求得的BCH碼伴隨式結(jié)果保存待用;BCH碼BM算法單元,用于根據(jù)已得到的BCH碼伴隨式結(jié)果,求解BCH碼錯(cuò)誤位置多項(xiàng)式的表達(dá)式,進(jìn)而得到BCH碼錯(cuò)誤位置多項(xiàng)式所有系數(shù)的值,多個(gè)BCH碼共用一個(gè)BCH碼 BM算法單元;BCH碼錢搜索和糾錯(cuò)單元,用于求解所述BCH碼BM算法單元發(fā)送來(lái)的錯(cuò)誤位置多項(xiàng)式的根,定位出每個(gè)BCH碼字中的錯(cuò)誤碼元位置,并完成BCH碼字中的錯(cuò)誤碼元的糾錯(cuò);BCH碼復(fù)用存儲(chǔ)單元,用于對(duì)多路BCH碼進(jìn)行存儲(chǔ)、處理,以及對(duì)BCH碼伴隨式分量和錯(cuò)誤位置多項(xiàng)式進(jìn)行調(diào)度;BCH碼總線變換單元,用于完成總線從BCH碼型到RS碼型的變換,以滿足后續(xù)RS 碼在GF域上的要求;RS碼伴隨式計(jì)算單元,用于完成RS碼的16個(gè)伴隨式的計(jì)算,并將求得的RS碼伴隨式結(jié)果保存待用;RS碼BM算法單元,用于根據(jù)已得到的RS碼伴隨式結(jié)果,計(jì)算RS碼錯(cuò)誤位置多項(xiàng)式和RS碼錯(cuò)誤值多項(xiàng)式的表達(dá)式,進(jìn)而得到RS碼錯(cuò)誤位置多項(xiàng)式的所有系數(shù)及RS碼錯(cuò)誤值多項(xiàng)式的所有系數(shù),多個(gè)RS碼字共用一個(gè)RS碼BM算法單元;RS碼錢搜索和糾錯(cuò)單元,用于通過(guò)錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式分別確定RS 碼字中的錯(cuò)誤位置和錯(cuò)誤值,并完成RS碼元糾錯(cuò);RS碼復(fù)用存儲(chǔ)單元,用于對(duì)多路RS碼字進(jìn)行存儲(chǔ)、處理,以及對(duì)RS碼伴隨式分量、 錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式進(jìn)行調(diào)度;RS碼總線變換單元,用于完成入口多路RS碼字的并行譯碼輸出到出口位寬的變換,并發(fā)送幀的起始位置指示信號(hào);譯碼性能監(jiān)控單元,用于監(jiān)控RS碼和BCH碼的性能。下面詳細(xì)闡述本發(fā)明實(shí)施例的方法步驟步驟10 計(jì)算接收信道輸出數(shù)據(jù)的BCH碼的伴隨式。因?yàn)檩斎胛粚挒?4,而每個(gè)BCH碼中都包含一個(gè)BCH碼伴隨式計(jì)算單元,所以64 個(gè)BCH碼中包含有64個(gè)這樣的BCH碼伴隨式計(jì)算單元,每個(gè)BCH碼伴隨式計(jì)算單元采用脈動(dòng)(Systolic)陣列結(jié)構(gòu)實(shí)現(xiàn)BCH碼伴隨式的求解。步驟10具體包括下述子步驟101和102
子步驟101 計(jì)算出奇數(shù)序號(hào)的伴隨式,具體過(guò)程與現(xiàn)有技術(shù)相同,此處不贅述;子步驟102 由于二進(jìn)制BCH碼的伴隨式具有的、=(Sj)2的性質(zhì),偶數(shù)序號(hào)的伴隨式都可以根據(jù)此式來(lái)計(jì)算,而且由上面的關(guān)系可以進(jìn)一步推導(dǎo)出s2= (S1)2A4= (S1)4, S6 = (S3)2, S8 = (S1)8, S10 = (S5)2, S12 = (S3)4, S14 = (S7)2, S16 = (S1)16,采用 GF (211)域 (Galois Field,伽羅華域)上平方、4次方、8次方和16次方運(yùn)算電路,即可用奇數(shù)序號(hào)的伴隨式,計(jì)算出所有的偶數(shù)序號(hào)的伴隨式。步驟20 將64位寬的輸入數(shù)據(jù)放入緩存中,待BCH碼的伴隨式、BM算法求解完畢進(jìn)行錢搜索糾錯(cuò)時(shí),再?gòu)脑摼彺嬷型阶x出數(shù)據(jù),送入BCH碼錢搜索和糾錯(cuò)單元中,進(jìn)行同步糾錯(cuò)處理。步驟30 將步驟10中得到的64路BCH碼伴隨式,分別用兩個(gè)BCH碼復(fù)用存儲(chǔ)單元進(jìn)行存儲(chǔ)和調(diào)度,每個(gè)BCH碼復(fù)用存儲(chǔ)單元存儲(chǔ)32路BCH碼伴隨式數(shù)據(jù)。步驟40 根據(jù)步驟30輸出的BCH碼伴隨式的值,求解BCH碼錯(cuò)誤位置多項(xiàng)式的表達(dá)式,從而得到錯(cuò)誤位置多項(xiàng)式所有系數(shù)的值。本發(fā)明實(shí)施例中,64路BCH碼伴隨式中的每32路復(fù)用一個(gè)BM算法,因此只需要兩套BM算法,這樣就可以節(jié)省電路工作中消耗的功率和電路規(guī)模。在本步驟中,每計(jì)算出一個(gè)BCH碼錯(cuò)誤位置多項(xiàng)式以后,就向步驟30給出一個(gè)反饋信號(hào),表示本次BM算法計(jì)算完畢,可以傳遞下一個(gè)BCH碼伴隨式。具體硬件實(shí)現(xiàn)電路參見(jiàn)圖3所示。同時(shí),將計(jì)算得到的 BCH碼錯(cuò)誤位置多項(xiàng)式的值輸出到BCH碼復(fù)用存儲(chǔ)單元中進(jìn)行存儲(chǔ)。步驟50 將步驟40得到的BCH碼錯(cuò)誤位置多項(xiàng)式依次存儲(chǔ),當(dāng)所有32路BCH碼字的BM算法都計(jì)算完畢時(shí),將32路BCH碼錯(cuò)誤位置多項(xiàng)式的值同時(shí)輸出,并產(chǎn)生一個(gè)使能信號(hào),表示可以進(jìn)行下一步的BCH碼錢搜索和糾錯(cuò)功能。步驟60 根據(jù)步驟50送出的使能信號(hào)和錯(cuò)誤位置多項(xiàng)式的根,以及步驟20輸出的緩沖數(shù)據(jù),完成BCH碼字中的錯(cuò)誤碼元的糾錯(cuò)。本發(fā)明實(shí)施例中有64個(gè)BCH碼錢搜索和糾錯(cuò)單元,以實(shí)現(xiàn)64個(gè)BCH碼并行糾錯(cuò)處理。參見(jiàn)圖4所示,0(1,0l,…,ot是錯(cuò)誤位置多項(xiàng)式的系數(shù),MUX是二選一的選擇器, α是BCH碼的本元域元素,每個(gè)時(shí)鐘周期能夠糾正一個(gè)錯(cuò),完成糾錯(cuò)所需的時(shí)鐘周期與碼長(zhǎng)相等。圖4中i的變化范圍為1彡i彡2047,分別對(duì)應(yīng)于BQK2047,1959)碼字的的第 1號(hào)碼元r2Q46(i = 1)至2047號(hào)碼元rQ(i = 2047),BCH碼碼元編號(hào)順序?yàn)榇a字多項(xiàng)式中的最高系數(shù)2046算作第1號(hào)碼元,碼字多項(xiàng)式中的最低系數(shù)0算作第2047號(hào)碼元,當(dāng)電路運(yùn)算的結(jié)果σ (aO = %時(shí),即表示d是錯(cuò)誤位置多項(xiàng)式的根,并且錯(cuò)誤位置發(fā)生在BCH碼字的第i號(hào)碼元;此時(shí)從數(shù)據(jù)緩沖單元中讀出該BCH碼字的碼元,進(jìn)行反相后送出,即完成碼元錯(cuò)誤的糾正;如果運(yùn)算結(jié)果不滿足σ (d) = Otl,則表明該碼元位未發(fā)生錯(cuò)誤,將數(shù)據(jù)緩沖單元中讀出的BCH碼字的碼元直接送出即可。步驟70 將經(jīng)過(guò)BCH譯碼后的數(shù)據(jù),從64位寬總線變換到10位寬,以滿足后續(xù)的 RS碼的GF域上的要求,具體過(guò)程與現(xiàn)有技術(shù)相同,此處不贅述。步驟80 對(duì)于步驟70輸出的16個(gè)10位寬RS碼,通過(guò)16個(gè)相類似的計(jì)算電路分別計(jì)算其伴隨式分量,并同時(shí)輸出。步驟90 將步驟80中得到的16路RS碼伴隨式,分別用兩個(gè)RS碼復(fù)用存儲(chǔ)單元進(jìn)行存儲(chǔ)和調(diào)度,每個(gè)RS碼復(fù)用存儲(chǔ)單元存儲(chǔ)8路數(shù)據(jù)。
步驟100 求解錯(cuò)誤位置多項(xiàng)式σ (χ)的所有系數(shù)的值,具體實(shí)現(xiàn)過(guò)程參見(jiàn)圖5所示。錯(cuò)誤值多項(xiàng)式ω(χ)的計(jì)算方法和錯(cuò)誤位置多項(xiàng)式ο (χ)的計(jì)算方法完全一樣,它們可以共用同一套控制電路。根據(jù)步驟90輸出的RS碼伴隨式的值,求解RS碼錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式的表達(dá)式,從而得到錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式所有系數(shù)的值。此處采用了復(fù)用的形式,16路RS碼的伴隨式中的每8路復(fù)用一個(gè)BM算法,因此本發(fā)明實(shí)施例中只需要兩套R(shí)S碼BM算法,這樣可以減小硬件電路的實(shí)現(xiàn)規(guī)模,節(jié)省電路工作中消耗的功率。由于采用了復(fù)用的結(jié)構(gòu),因此在本步驟中,每計(jì)算出一個(gè)RS碼錯(cuò)誤位置多項(xiàng)式以后就向步驟90給出一個(gè)反饋信號(hào),表示本次BM算法計(jì)算完畢,可以傳遞下一個(gè)RS碼伴隨式。步驟110 通過(guò)步驟100得到的錯(cuò)誤位置多項(xiàng)式σ (χ)和錯(cuò)誤值多項(xiàng)式ω (χ),分別確定RS碼字中的錯(cuò)誤位置和錯(cuò)誤值,并完成RS碼元糾錯(cuò)。參見(jiàn)圖6所示,電路的上半部分為差錯(cuò)值多項(xiàng)式M的計(jì)算電路,ω寄存器的初
始值為ω^ω^……、《8(注意《(|為0)。接收RS碼字矢量r1(l22,7個(gè)常系數(shù)乘法器進(jìn)行乘法運(yùn)算,且將下列值存入相應(yīng)的RS碼復(fù)用存儲(chǔ)單元ω2 α,ω3α2,ω4α3,ω5α4,ω6α5, ω7α 6,ω8 α 7,累力口器 A 輸出計(jì)算結(jié)果,記為 numerator iQj+Q^+Qga^Q^^QgaVo 6α5+ω7α6+ω8α70下半部分為Chien搜索電路和求導(dǎo)電路。σ寄存器初始值為σ『ο工、 σ2、……、σ8。接收RS碼字矢量正要從緩沖器中讀出之前,8個(gè)常系數(shù)乘法器進(jìn)行乘法運(yùn)算,且將下列值存進(jìn)寄存器ο i a,ο 2 α 2,ο 3 α 3,ο 4 α 4,ο 5 α 5,ο 6 α 6,ο 7 α 7,ο 8 α 8, 并將這些值分奇偶送入累加器B和C,然后將累加器B和C的結(jié)果再相加,其結(jié)果為描述方便記為sum。同時(shí),將奇數(shù)項(xiàng)求和結(jié)果求逆,記為inversion。門的控制信號(hào)是sum和不可糾判斷輸出信號(hào)rs_word_uncorr。當(dāng)sum = 0,且不可糾信號(hào)rs_word_uncorr無(wú)效(在糾錯(cuò)能力內(nèi))時(shí)(rs_word_uncorr = 0),門將inversion輸出;否則,門輸出0。與BCH碼的Chien搜索電路相同,本發(fā)明實(shí)施例中的RS (781,765)碼和RS (778, 762)碼是RS (1023,1007)碼的截短碼,因此在得到錯(cuò)誤位置多項(xiàng)式σ (χ)后,只需從i等于 243開(kāi)始檢測(cè)到i等于1023為止,i等于243就對(duì)應(yīng)于輸入RS (781,765)碼字的第一個(gè)符號(hào)碼元r78Q,即RS (781,765)碼字第1號(hào)碼元,i等于1023對(duì)應(yīng)于輸入RS (781,765)碼字的最后一個(gè)符號(hào)碼元4,即RS碼字第781號(hào)符號(hào)碼元。本發(fā)明實(shí)施例中,每次在進(jìn)行RS (781, 765)碼字錢搜索開(kāi)始前,將圖6中的寄存器0ι、σ2>……、σ8的值初始化為以下的8個(gè)值,并計(jì)算該8個(gè)值的異或求和ο (aO,作為第一次判斷錯(cuò)誤位置多項(xiàng)式的根
Γηηιο ^ 243486729972192435678921
L0076」 σ 盧,σ 2a , σ 3a ,σ 4a , σ 5a , σ 6a ,σ 7a , σ 8a門的輸出信號(hào)和numerator相乘,得到差錯(cuò)值Eltl22,把差錯(cuò)值與緩沖器輸出值r1(122 相加,完成對(duì)r1Q22的糾錯(cuò)。r1(e2譯碼完成后,在將寄存器的內(nèi)容作常系數(shù)乘法,并重復(fù)進(jìn)行上述的相加運(yùn)算和檢驗(yàn),對(duì)r1(l21進(jìn)行糾錯(cuò)……直到整個(gè)碼字輸入完畢,完成一個(gè)RS碼字的糾錯(cuò)過(guò)程。用RS碼Chien搜索電路對(duì)錯(cuò)誤位置多項(xiàng)式的根進(jìn)行搜索,記錄下根的個(gè)數(shù)。當(dāng)根的個(gè)數(shù)和錯(cuò)誤位置多項(xiàng)式的次數(shù)不相等時(shí),判斷為產(chǎn)生了不可糾錯(cuò)誤。此時(shí),一個(gè)RS碼字中至少有9個(gè)符號(hào)產(chǎn)生了錯(cuò)誤,超過(guò)了糾錯(cuò)碼的譯碼門限,在這種情況下,關(guān)斷前向糾錯(cuò)功能。步驟120 完成入口 16路RS并行譯碼輸出160比特流到出口 64比特流的變換,并送出幀的起始位置指示信號(hào),具體過(guò)程與現(xiàn)有技術(shù)相同,此處不贅述。顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。本說(shuō)明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。
權(quán)利要求
1.一種超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,其特征在于包括以下步驟A、首先對(duì)接收信道輸出的數(shù)據(jù)采用BQK2040,195》碼計(jì)算其伴隨式,然后對(duì)計(jì)算所得BCH碼伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式的求解,再根據(jù)求得的錯(cuò)誤位置多項(xiàng)式進(jìn)行錢搜索,確定BCH碼字中的碼元錯(cuò)誤位置并進(jìn)行糾錯(cuò),完成BCH碼字中逐個(gè)碼元的譯碼處理;B、每處理完一個(gè)內(nèi)碼BCH碼元的譯碼后,先進(jìn)行交織處理,再對(duì)譯碼結(jié)果進(jìn)行RS碼字伴隨式的計(jì)算,然后對(duì)計(jì)算所得RS碼字伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式的求解,根據(jù)求得的錯(cuò)誤位置多項(xiàng)式進(jìn)行錢搜索,確定RS碼字中的碼元錯(cuò)誤位置,根據(jù)求得的錯(cuò)誤值多項(xiàng)式計(jì)算差錯(cuò)值并進(jìn)行糾錯(cuò),完成RS碼字中逐個(gè)碼元的譯碼處理;最后將其輸出數(shù)據(jù)進(jìn)行解交織,得到超強(qiáng)前向糾錯(cuò)的譯碼結(jié)果。
2.如權(quán)利要求1所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,其特征在于步驟A中每路BCH 碼的伴隨式有16個(gè)。
3.如權(quán)利要求1所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,其特征在于步驟A中所述對(duì)計(jì)算所得BCH碼伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式的求解之前包括以下步驟將計(jì)算所得 BCH碼伴隨式結(jié)果發(fā)送到BCH碼BM算法單元。
4.如權(quán)利要求1或2或3所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,其特征在于步驟A中所述對(duì)計(jì)算所得BCH碼伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式的求解之后包括以下步驟將求解結(jié)果發(fā)送到BCH碼錢搜索和糾錯(cuò)單元進(jìn)行處理。
5.如權(quán)利要求1所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,其特征在于步驟B中每路RS 碼的伴隨式有16個(gè)。
6.如權(quán)利要求1所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,其特征在于步驟B中所述對(duì)計(jì)算所得RS碼字伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式的求解之前包括以下步驟將計(jì)算所得RS碼伴隨式結(jié)果發(fā)送到RS碼BM算法單元。
7.如權(quán)利要求1或5或6所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼方法,其特征在于步驟B中所述對(duì)計(jì)算所得RS碼字伴隨式結(jié)果進(jìn)行錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式的求解之后包括以下步驟將求解結(jié)果發(fā)送到RS碼錢搜索和糾錯(cuò)單元進(jìn)行處理。
8.一種超強(qiáng)前向糾錯(cuò)的硬件譯碼裝置,其特征在于它包括BCH碼伴隨式計(jì)算單元,用于完成BCH碼的16個(gè)伴隨式的計(jì)算,并將求得的BCH碼伴隨式結(jié)果保存待用;BCH碼BM算法單元,用于根據(jù)已得到的BCH碼伴隨式結(jié)果,求解BCH碼錯(cuò)誤位置多項(xiàng)式的表達(dá)式,進(jìn)而得到BCH碼錯(cuò)誤位置多項(xiàng)式所有系數(shù)的值,多個(gè)BCH碼共用一個(gè)BCH碼BM 算法單元;BCH碼錢搜索和糾錯(cuò)單元,用于求解所述BCH碼BM算法單元發(fā)送來(lái)的錯(cuò)誤位置多項(xiàng)式的根,定位出每個(gè)BCH碼字中的錯(cuò)誤碼元位置,并完成BCH碼字中的錯(cuò)誤碼元的糾錯(cuò);BCH碼復(fù)用存儲(chǔ)單元,用于對(duì)多路BCH碼進(jìn)行存儲(chǔ)、處理,以及對(duì)BCH碼伴隨式分量和錯(cuò)誤位置多項(xiàng)式進(jìn)行調(diào)度;BCH碼總線變換單元,用于完成總線從BCH碼型到RS碼型的變換,以滿足后續(xù)RS碼在 GF域上的要求;RS碼伴隨式計(jì)算單元,用于完成RS碼的16個(gè)伴隨式的計(jì)算,并將求得的RS碼伴隨式結(jié)果保存待用;RS碼BM算法單元,用于根據(jù)已得到的RS碼伴隨式結(jié)果,計(jì)算RS碼錯(cuò)誤位置多項(xiàng)式和 RS碼錯(cuò)誤值多項(xiàng)式的表達(dá)式,進(jìn)而得到RS碼錯(cuò)誤位置多項(xiàng)式的所有系數(shù)及RS碼錯(cuò)誤值多項(xiàng)式的所有系數(shù),多個(gè)RS碼字共用一個(gè)RS碼BM算法單元;RS碼錢搜索和糾錯(cuò)單元,用于通過(guò)錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式分別確定RS碼字中的錯(cuò)誤位置和錯(cuò)誤值,并完成RS碼元糾錯(cuò);RS碼復(fù)用存儲(chǔ)單元,用于對(duì)多路RS碼字進(jìn)行存儲(chǔ)、處理,以及對(duì)RS碼伴隨式分量、錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式進(jìn)行調(diào)度;RS碼總線變換單元,用于完成入口多路RS碼字的并行譯碼輸出到出口位寬的變換,并發(fā)送幀的起始位置指示信號(hào)。
9.如權(quán)利要求8所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼裝置,其特征在于它還包括數(shù)據(jù)緩沖單元,所述數(shù)據(jù)緩沖單元用于緩存數(shù)據(jù),并產(chǎn)生延遲一定拍數(shù)的幀起始脈沖信號(hào)。
10.如權(quán)利要求8或9所述的超強(qiáng)前向糾錯(cuò)的硬件譯碼裝置,其特征在于它還包括譯碼性能監(jiān)控單元,所述譯碼性能監(jiān)控單元用于監(jiān)控RS碼和BCH碼的性能。
全文摘要
本發(fā)明公開(kāi)了一種超強(qiáng)前向糾錯(cuò)的硬件譯碼方法及裝置,方法包括步驟對(duì)接收信道輸出數(shù)據(jù)采用BCH(2040,1952)碼計(jì)算伴隨式,求解其錯(cuò)誤位置多項(xiàng)式,進(jìn)行錢搜索,確定BCH碼字中碼元錯(cuò)誤位置并糾錯(cuò),完成BCH碼字中逐個(gè)碼元的譯碼處理;每處理完一個(gè)內(nèi)碼BCH碼元的譯碼后進(jìn)行交織處理,計(jì)算譯碼結(jié)果的RS碼字伴隨式,求解其錯(cuò)誤位置多項(xiàng)式和錯(cuò)誤值多項(xiàng)式,根據(jù)錯(cuò)誤位置多項(xiàng)式進(jìn)行錢搜索,確定RS碼字中的碼元錯(cuò)誤位置,根據(jù)錯(cuò)誤值多項(xiàng)式計(jì)算差錯(cuò)值并糾錯(cuò),完成RS碼字中逐個(gè)碼元的譯碼;對(duì)輸出數(shù)據(jù)進(jìn)行解交織,得到SFEC譯碼結(jié)果。本發(fā)明能用較小規(guī)模的硬件電路正確實(shí)現(xiàn)整個(gè)算法,提高SFEC的硬件實(shí)現(xiàn)時(shí)序速度。
文檔編號(hào)H04L1/00GK102170327SQ20111008457
公開(kāi)日2011年8月31日 申請(qǐng)日期2011年4月6日 優(yōu)先權(quán)日2011年4月6日
發(fā)明者朱齊雄, 董航 申請(qǐng)人:烽火通信科技股份有限公司