本發(fā)明涉及電力線工頻通信技術(shù)領(lǐng)域,特別是涉及電力線工頻通信編碼糾錯方法。
背景技術(shù):
電力線工頻通信利用電網(wǎng)電壓和電流波形的微小畸變攜帶信息來實現(xiàn)雙向通信,由于低頻畸變信號可以跨變壓器臺區(qū)直接傳輸,該技術(shù)有望在配電自動化等領(lǐng)域發(fā)揮重要作用;同時,由于電力線并非專門的通信線路,配電網(wǎng)的復(fù)雜結(jié)構(gòu)和各類用電負(fù)荷產(chǎn)生的干擾噪聲會造成工頻通信數(shù)據(jù)的誤碼,為了在強(qiáng)噪聲環(huán)境中提高通信性能,糾錯編碼是必須采用的技術(shù)手段。
糾錯編碼是提高信息傳輸可靠性的一種重要手段。目前在數(shù)據(jù)傳輸中,主要有自動請求重發(fā)(ARQ)、前向糾錯(FEC)、混合糾錯(HEC)、BCH糾錯編碼等方式。漢明碼只能糾正一位,但不能糾正多位隨機(jī)錯誤甚至突發(fā)錯誤。BCH碼可以糾正多位隨機(jī)錯誤,但不能糾正多個突發(fā)錯誤。局限于單一碼長及固定糾錯能力的信道編碼已經(jīng)不能滿足高效糾錯需求。
技術(shù)實現(xiàn)要素:
基于此,有必要針對傳統(tǒng)電力線工頻通信中編碼錯誤率高,準(zhǔn)確性低,效率低下的缺陷,提供一種電力線工頻通信編碼糾錯方法。
一種電力線工頻通信編碼糾錯方法,包括:
接收R(x)碼;
根據(jù)接收到的所述R(x)碼計算伴隨式S(x);
根據(jù)所述伴隨式S(x)計算獲取錯誤位置多項式σ(x);
解出所述多項式σ(x)的根,得到錯誤位置數(shù);
根據(jù)所述錯誤位置數(shù)計算獲得錯誤圖樣E(x);
通過所述R(x)碼和所述錯誤圖樣E(x)計算得出糾錯后的C(x)碼。
在一個實施例中,所述根據(jù)接收到的所述R(x)碼計算伴隨式S(x)步驟包括:
通過將校驗多項式代入所述R(x)碼,計算獲得所述伴隨式S(x)。
在一個實施例中,所述根據(jù)接收到的所述R(x)碼計算伴隨式S(x)的步驟之后還包括:
判斷伴隨式S(x)是否為0,若否,則執(zhí)行所述根據(jù)所述伴隨式S(x)計算獲取錯誤位置多項式σ(x)的步驟,若是,則輸出所述R(x)碼。
在一個實施例中,所述根據(jù)所述伴隨式S(x)計算獲取錯誤位置多項式σ(x)的步驟包括:
根據(jù)所述伴隨式S(x),采用BM迭代算法計算獲取所述錯誤位置多項式σ(x)。
在一個實施例中,所述解出所述多項式σ(x)的根,得到錯誤位置數(shù)的步驟之后還包括:
根據(jù)所述伴隨式S(x)和所述多項式σ(x)計算獲得差錯幅值;
所述根據(jù)所述錯誤位置數(shù)計算獲得錯誤圖樣E(x)的步驟包括:
根據(jù)所述錯誤位置數(shù)和所述差錯幅值計算獲得錯誤圖樣E(x)。
在一個實施例中,所述解出所述多項式σ(x)的根,得到錯誤位置數(shù)的步驟包括:
采用錢氏搜索法解出所述多項式σ(x)的根,得到所述錯誤位置數(shù)。
在一個實施例中,所述通過所述R(x)碼和所述錯誤圖樣E(x)計算得出糾錯后的C(x)碼的步驟包括:
對所述R(x)碼和所述錯誤圖樣E(x)進(jìn)行求差計算得出糾錯后的所述C(x)碼。
在一個實施例中,在所述接收R(x)碼的步驟之前還包括:
獲取本原多項式;
根據(jù)所述本原多項式計算獲取GF(q)域上的一個本原元;
根據(jù)所述本原元生成待發(fā)送的所述C(x)碼。
在一個實施例中,所述根據(jù)所述本原元生成待發(fā)送的多項式C(x)碼的步驟包括:
根據(jù)所述本原元,采用除法求余計算生成待發(fā)送的所述C(x)碼。
在一個實施例中,所述根據(jù)所述本原元,采用除法求余計算生成待發(fā)送的所述C(x)碼的步驟包括:
根據(jù)所述本原元,采用除法求余計算生成用于糾正t個符號錯誤的多項式g(x);
根據(jù)所述多項式g(x)計算生成待發(fā)送的所述C(x)碼。
上述電力線工頻通信編碼糾錯方法,通過接收R(x)碼,根據(jù)接收到的所述R(x)碼計算伴隨式S(x),根據(jù)所述伴隨式S(x)計算獲取錯誤位置多項式σ(x),解出所述多項式σ(x)的根,得到錯誤位置數(shù),根據(jù)所述錯誤位置數(shù)計算獲得錯誤圖樣E(x),通過所述R(x)碼和所述錯誤圖樣E(x)計算得出C(x)碼,從而獲取到放的C(x)碼,能夠糾正隨機(jī)錯誤和突發(fā)錯誤,有效提高了編碼的糾錯效率,有效提高電力線工頻通信的準(zhǔn)確性。
附圖說明
圖1為一實施例的電力線工頻通信編碼糾錯方法的流程示意圖;
圖2為另一實施例的電力線工頻通信編碼糾錯方法的流程示意圖;
圖3為另一實施例的電力線工頻通信編碼糾錯方法的流程示意圖
圖4為另一實施例的電力線工頻通信編碼糾錯方法的流程示意圖;
圖5為一實施例的RS編碼電路示意圖。
具體實施方式
為了便于理解本發(fā)明,下面將參照相關(guān)附圖對本發(fā)明進(jìn)行更全面的描述。附圖中給出了本發(fā)明的較佳實施例。但是,本發(fā)明可以以許多不同的形式來實現(xiàn),并不限于本文所描述的實施例。相反地,提供這些實施例的目標(biāo)是使對本發(fā)明的公開內(nèi)容的理解更加透徹全面。
在一個實施例中,如圖1所示,一實施例的一種電力線工頻通信編碼糾錯方法,包括以下步驟:
步驟104,接收R(x)碼。
具體地,該R(x)碼為多項式R(x),該多項式R(x)由接收端接收。例如,接收端接收數(shù)據(jù)包,該數(shù)據(jù)包包含多項式R(x)。
步驟106,根據(jù)接收到的所述R(x)碼計算伴隨式S(x)。
求伴隨式的方法是將校驗多項式代入,得到相應(yīng)的伴隨式S(x)。
步驟108,根據(jù)所述伴隨式S(x)計算獲取錯誤位置多項式σ(x)。
步驟110,解出所述多項式σ(x)的根,得到錯誤位置數(shù)。
具體地,求出錯位多項式σ(x)的根,這些根的倒數(shù)即差錯位置,進(jìn)而獲得錯誤位置數(shù)。
步驟112,根據(jù)所述錯誤位置數(shù)計算獲得錯誤圖樣E(x)。
步驟114,通過所述R(x)碼和所述錯誤圖樣E(x)計算得出糾錯后的C(x)碼。
具體地,該C(x)碼為多項式C(x),該多項式C(x)由發(fā)送端生成并發(fā)送,例如,發(fā)送端發(fā)送數(shù)據(jù)包,該數(shù)據(jù)包包含了多項式C(x),通過所述R(x)碼和所述錯誤圖樣E(x)即可計算得出發(fā)送端生成并發(fā)送的C(x)碼,從而能夠?qū)Πl(fā)送過程中發(fā)生的錯誤進(jìn)行有效糾錯。
通過接收R(x)碼,根據(jù)接收到的所述R(x)碼計算伴隨式S(x),根據(jù)所述伴隨式S(x)計算獲取錯誤位置多項式σ(x),解出所述多項式σ(x)的根,得到錯誤位置數(shù),根據(jù)所述錯誤位置數(shù)計算獲得錯誤圖樣E(x),通過所述R(x)碼和所述錯誤圖樣E(x)計算得出C(x)碼,從而獲取到放的C(x)碼,能夠糾正隨機(jī)錯誤和突發(fā)錯誤,有效提高了編碼的糾錯效率,有效提高電力線工頻通信的準(zhǔn)確性。
在一個實施例中,所述步驟106包括:
通過將校驗多項式代入所述R(x)碼,計算獲得所述伴隨式S(x)。
在一個實施例中,如圖2所示,所述步驟106之后還包括:
步驟107,判斷伴隨式是否為0,若否,則執(zhí)行步驟108,若是,則輸出所述R(x)碼。
具體地,如果伴隨式不為0,則信息在傳輸過程中有錯誤產(chǎn)生,需糾正;如果伴隨式為0,則說明信息接受正確無錯,則直接輸出R(x)碼,該接收到的R(x)碼與發(fā)送的C(x)碼完全一致。
在一個實施例中,所述步驟108包括:
根據(jù)所述伴隨式S(x),采用BM迭代算法計算獲取所述錯誤位置多項式σ(x)。
在一個實施例中,如圖2所示,所述步驟110之后還包括:
步驟111,根據(jù)所述伴隨式S(x)和所述多項式σ(x)計算獲得差錯幅值。
所述步驟112包括:根據(jù)所述錯誤位置數(shù)和所述差錯幅值計算獲得錯誤圖樣E(x)。
在一個實施例中,所述步驟110包括:
采用錢氏搜索法解出所述多項式σ(x)的根,得到所述錯誤位置數(shù)。
在一個實施例中,所述步驟114包括:
對所述R(x)碼和所述錯誤圖樣E(x)求差計算得出C(x)碼。
在一個實施例中,如圖3所示,在步驟104之前還包括:
步驟101,獲取本原多項式。
步驟102,根據(jù)所述本原多項式計算獲取GF(q)域上的一個本原元。
步驟103,根據(jù)所述本原元生成待發(fā)送的所述C(x)碼。
在一個實施例中,所述步驟102包括:根據(jù)所述本原元,采用除法求余計算生成待發(fā)送的所述C(x)碼。
在一個實施例中,步驟102包括:
步驟102a,根據(jù)所述本原元,采用除法求余計算生成用于糾正t個符號錯誤的多項式g(x)。
步驟102b,根據(jù)所述多項式g(x)計算生成待發(fā)送的所述C(x)碼。
本實施例為編碼過程,為發(fā)送端的C(x)碼生成過程:
RS編碼時,首先應(yīng)確定GF(q)域上一個本原元α,構(gòu)成生成多項式g(x)。編碼后生成大發(fā)送碼字c(x),其中m(x)為信息多項式。
RS譯碼時,若發(fā)送的碼字多項式為C(x),接收碼字多項式R(x),錯誤多項式E(x)。通過迭代算法從接收碼字多項式R(x)中求得錯誤位置數(shù)及錯誤幅值,最后用R(x)減去E(x),即得發(fā)送的碼字C(x)的估值。
RS編碼時,首先找出GF(q)域上一個本原元α,構(gòu)成生成多項式。以RS(31,15)編碼為例,RS(31,15)是伽羅華域GF(25)的多進(jìn)制碼,信息位k=15,本原碼長n=31,校驗位n-k=16,其中n=q-1=2m-1,m=5,即每一個RS碼符號含有5比特??杉m錯t=8個符號長的25進(jìn)制的隨機(jī)或突發(fā)性錯誤。
GF(25)域上元素的本原多項式為p(x)=x5+x2+1。設(shè)α為本原多項式為p(x)=x5+x2+1的根,即α5=α2+1。
具體地,RS碼是循環(huán)碼的一種它的編碼方法與一般循環(huán)碼的編碼方法完全一致。設(shè)輸入信息碼為m(x),編碼后的碼組為c(x),生成多項式為g(x)。
一般的循環(huán)碼可以用一個多項式乘法器產(chǎn)生,α5=α2+1。對于系統(tǒng)循環(huán)碼,碼字的前k位是信息位本身,后n-k位是校驗位,是m(x)xn-k除以g(x)的余式r(x)。這樣,RS編碼也可以用一個多項式除法器實現(xiàn)。因此RS碼的編碼變成用除法求余的過程由于糾t個符號錯誤的生成多項式為:
g(x)=g2tx2t+g2t-1x2t-1+...+g1x+g0(g2t=1) (公式16)
該除法電路最后輸出結(jié)果為:
c(x)=m(x)xn-k+[m(x)xn-k]modg(x) (公式17)
其中:
m(x)xn-k=mkxn-1+mk-1xn-2+...+m1xn-k+0xn-k-1+...+0x+0 (公式18)
RS(31,15)編碼時,要求輸入信息位k=15,輸出RS碼碼長n=31,校驗位n-k=16,可糾錯t=8。其生成多項式為:
根據(jù)公式2,編碼后生成待發(fā)送碼字c(x)可表示為:
c(x)=m(x)x16+[m(x)x16]modg(x) (公式20)
下面是一個具體的實施例:RS碼,即Reed-solomon codes,是一種特殊的非二進(jìn)制前向糾錯的信道編碼,對由校正過采樣數(shù)據(jù)所產(chǎn)生的多項式有效。當(dāng)接收器正確地收到足夠的點(diǎn)后,它就可以恢復(fù)原來的多項式,即使接收到的多項式上有很多點(diǎn)被噪聲干擾失真。RS碼具有良好的檢錯和糾錯能力,不但能夠糾正一般的隨機(jī)差錯,而且擅長糾正突發(fā)差錯。
對于一個能糾正t個錯誤的RS碼(n,k),具體由如下參數(shù):碼長為n=q-1,校驗位為n-k=2t,最小距離為dmin=2t+1,生成多項式為g(x)=(x-α)(x-α2)...(x-α2t),其中α為GF(q)域上的本原元。
RS碼碼長為n=q-1,監(jiān)督元數(shù)目為r=2t,能糾正t個錯誤。若每個q禁止碼元用其對應(yīng)的m位二進(jìn)制碼元表示,那么可得到一個二進(jìn)制碼參數(shù):碼長為n=m(2m-1)個二進(jìn)元,監(jiān)督元數(shù)目為r=2tm個碼元。RS碼具有如下性質(zhì):
(1)任何一個GF(q)上的(n,k)RS碼,對于任何k個符號位置,將只有一個與這個位置內(nèi)qk中符號組合之一的碼字。
(2)RS碼最小碼距是dmin=2t+1=n-k+1,由于(n,k)線性分組碼的最小距離必定小于等于n-k+1,即RS碼的最小距離達(dá)到了所能到達(dá)的最大值,其設(shè)計距離和設(shè)計距離一致,故它是糾錯能力最佳的線性分組碼。
基于矩陣RS碼可描述為:發(fā)碼C=(cn-1,...c1,c0),收碼R=(rn-1,...r1,r0),差錯圖案E=(en-1,...e1,e0),伴隨式S=(sn-k-1,...s1,s0)及關(guān)系式R=C+E和S=RHT=EHT。
多項式RS碼可描述為:碼多項式C(x)=cn-1xn-1+cn-2xn-2+...+c1x+c0,收碼R(x)=rn-1xn-1+rn-2xn-2+...+r1x+0r,差錯圖案E(x)=en-1xn-1+en-2xn-2+...+e1x+e0,
伴隨式S(x)=sn-k-1xn-k-1+sn-k-2xn-k-2+...+e1x+e以及關(guān)系式C(x)+E(x)=R(x),S(x)=R(x)modg(x)=E(x)modg(x)。
RS編碼時,首先應(yīng)確定GF(q)域上一個本原元α,構(gòu)成生成多項式g(x)。編碼后生成大發(fā)送碼字c(x),其中m(x)為信息多項式。
RS譯碼時,若發(fā)送的碼字多項式為C(x),接收碼字多項式R(x),錯誤多項式E(x)。通過迭代算法從接收碼字多項式R(x)中求得錯誤位置數(shù)及錯誤幅值,最后用R(x)減去E(x),即得發(fā)送的碼字C(x)的估值。
RS編碼時,首先找出GF(q)域上一個本原元α,構(gòu)成生成多項式。以RS(31,15)編碼為例,RS(31,15)是伽羅華域GF(25)的多進(jìn)制碼,信息位k=15,本原碼長n=31,校驗位n-k=16,其中n=q-1=2m-1,m=5,即每一個RS碼符號含有5比特??杉m錯t=8個符號長的25進(jìn)制的隨機(jī)或突發(fā)性錯誤。
GF(25)域上元素的本原多項式為p(x)=x5+x2+1。設(shè)α為本原多項式為p(x)=x5+x2+1的根,即α5=α2+1。
RS碼是循環(huán)碼的一種它的編碼方法與一般循環(huán)碼的編碼方法完全一致。設(shè)輸入信息碼為m(x),編碼后的碼組為c(x),生成多項式為g(x)。
一般的循環(huán)碼可以用一個多項式乘法器產(chǎn)生,α5=α2+1。對于系統(tǒng)循環(huán)碼,碼字的前k位是信息位本身,后n-k位是校驗位,是m(x)xn-k除以g(x)的余式r(x)。這樣,RS編碼也可以用一個多項式除法器實現(xiàn)。由此RS碼的編碼變成用除法求余的過程,由于糾正t個符號錯誤的生成多項式為:
g(x)=g2tx2t+g2t-1x2t-1+...+g1x+g0(g2t=1) (公式1)
該除法電路最后輸出結(jié)果為:
c(x)=m(x)xn-k+[m(x)xn-k]modg(x) (公式2)
其中:
m(x)xn-k=mkxn-1+mk-1xn-2+...+m1xn-k+0xn-k-1+...+0x+0 (公式3)
RS(31,15)編碼時,要求輸入信息位k=15,輸出RS碼碼長n=31,校驗位n-k=16,可糾錯t=8。其生成多項式為:
根據(jù)公式2,編碼后生成待發(fā)送碼字c(x)可表示為:
c(x)=m(x)x16+[m(x)x16]modg(x) (公式5)
至此RS(31,15)碼編碼結(jié)束。
RS編碼時,當(dāng)發(fā)送數(shù)據(jù)為14字節(jié)(112bit)時釆用RS(31,23)編碼;發(fā)送8字節(jié)(64bit)數(shù)據(jù)時采用RS(31,15)編碼。發(fā)送14字節(jié)(112bit)數(shù)據(jù)時,則112bit在后加入3位二進(jìn)制0,使其組成23位碼字長度(115bit)的信息段。滿足RS(31,23)編碼信息位位數(shù)之后即可進(jìn)行編碼。
在接收端,譯碼方法同RS(31,23),譯碼后將添加到信息位后面的3位二進(jìn)制0去掉后即得到原始數(shù)據(jù)。
對于8字節(jié)(64bit)長度的數(shù)據(jù)編譯碼,采用相同的方法,在64bit的信息位后面添加11bit二進(jìn)制0,得到15個碼字符號(75bit)后進(jìn)行RS(31,15)編碼,譯碼后將添加的零刪除即可。
工頻通信傳輸數(shù)據(jù)采用RS(127,115)編碼時:當(dāng)發(fā)送數(shù)據(jù)為k(98≤k≤100)個字節(jié)時,則在k個字節(jié)后通過加入全零bit,組成115個碼字長度的信息段,滿足相應(yīng)編碼器信息位長度后再進(jìn)行RS(127,115)編碼。在接收端,譯碼方法同RS(127,115),譯碼結(jié)束后將信息位后面的0去掉后即得到k位原始數(shù)據(jù)。
根據(jù)RS碼的生成多項式得到各碼的生成多項式:
RS(31,15)碼:
RS(31,23)碼:
g(x)=x8+α3x7+α22x6+α19x5+α21x4+α16x3+α24x2+α29x+α5 (公式7)
RS(127,115)碼:
根據(jù)公式6,RS編碼電路即是完成信息位多項式m(x)×n-k的乘法運(yùn)算及[m(x)×n-k]modg(x)的求余運(yùn)算。
三種不同長度的RS編碼器電路可分為三部分,如圖5所示,第一部分(Ⅰ)為計數(shù)及控制選擇器,通過計數(shù)器前的選擇端選擇該對其進(jìn)行哪一種RS編碼;第二部分(Ⅱ)為基于GF(25)上的乘除法電路,該電路實現(xiàn)短數(shù)據(jù)RS(31,23)及RS(31,15)編碼;第三部分(Ⅲ)為基于GF(27)上的乘除法電路,該電路實現(xiàn)長數(shù)據(jù)RS(127,115)編碼。
該編碼電路的原理是RS編碼電路的求余運(yùn)算用n-k級的移位寄存器來實現(xiàn),因此可以選取n-k級移位寄存器。電路的工作原理描述如下:
計數(shù)器counter前加一選擇端sel,控制進(jìn)入哪一種RS編碼。信息輸入接counter后,由于計數(shù)器counter與selector2相連,則輸入的信息計數(shù)后從selector2輸出,同時counter輸出一個控制信號,該信號控制信息位與校驗位的輸出。selector2輸出端將k個信息碼字送入求余運(yùn)算電路,進(jìn)行相應(yīng)的RS編碼。求余后得到n-k位監(jiān)督碼由selector1送入selector2,與原k位信息碼字一起通過out輸出,即生成n位RS碼。
要對15位碼字進(jìn)行編碼,則選擇sel端置為01,編碼電路進(jìn)入RS(31,15)碼的編碼狀態(tài);對23位碼字進(jìn)行編碼則sel置為10,編碼電路進(jìn)行RS(31,23)碼編碼,這時由于該編碼求余運(yùn)算只需8級移位寄存器來實現(xiàn),于是選擇端sel1控制后面8級移位寄存器(D8...D15)不參加工作。對115位長數(shù)據(jù)碼字編碼時,sel置為11,進(jìn)行RS(127,115)碼編碼,編碼電路選擇GF(27)的12級的移位寄存器(D16...D27)來實現(xiàn)。
在本實施例中,RS碼的譯碼算法包括:Peterson-Gorensten-Zierler譯碼算法,Berlekamp-Massey譯碼算法,F(xiàn)orney算法,歐幾里德譯碼算法,對于碼字長度較大、碼率高的RS碼,例如,RS碼的譯碼算法為采用BM算法和Euclid算法譯碼,BM算法和Euclid算法譯長碼具有性能好,結(jié)構(gòu)較為規(guī)則的特點(diǎn)。
接收端接收到RS碼后,對其解碼,如圖4所示,解碼過程包括:
(1)由接收到的R(x)計算伴隨式S(x)。
(2)由伴隨式S(x)求得錯誤位置多項式σ(x)。
(3)用錢搜索解出σ(x)的根,得到錯誤位置數(shù),從而確定錯誤位置。
(4)由錯誤位置數(shù)求得錯誤值,從而得到錯誤圖樣E(x)。
(5)通過計算R(x)-E(x),完成糾錯。
發(fā)送的碼多項式為C(x),信道造成的差錯多項式為E(x),接收碼多項式為R(x),具體譯碼步驟為:
計算伴隨式:
求伴隨式的方法是將校驗多項式代入,得到相應(yīng)的伴隨式。如果伴隨式不為0,則信息在傳輸過程中有錯誤產(chǎn)生,需糾正;反之信息接受正確無錯。
其中,
把x=α代入R(x)可得s1,把x=α2代入R(x)可得s2,依次類推,把x=α2t代入R(x)可得s2t。以及S=RHT=[R(α),R(α2),..R(α2t)],或表示為Sj=R(αj)j=1,2,...,2t。
確定錯位位置多項式:
糾錯不僅要考慮差錯位置還要考慮差錯幅值。假設(shè)有v個差錯分布在j1,j2...jv位上,其中,0≤j1≤j2<...<jv≤n-1,ji表示第i個差錯所在的位置。差錯幅值分別是ej1,ej2,...,ejv,則
E(x)=ej1xj1+ej2xj2+...+ejvxjv (公式11)
令xji=βi,(i=1,2,...,v),代入(公式3)式得:
E(x)=ej1β1+ej2β2+...+ejvβv (公式12)
將2t個連續(xù)根依次代入生成多項式,可得2t個伴隨式元素:
根據(jù)第一步求出的伴隨式元素S1,S2,...S2t,即可解方程求出這2v個未知數(shù)。即2v個差錯位置S1,S2,...S2t和2v個差錯幅值ej1,ej2,...,ejv。
求錯位位置及差錯幅值:
令錯誤位置多項式為:
σ(x)=1+σ1x+σ2x2+...+σvxv=(1-β1x)(1-β2x)...(1-βvx) (公式14)
采用BM迭代算法求解σ(x):
根據(jù)迭代法得到可得σ1,σ2,...,σv,進(jìn)而求出β1,β2,...,βv。這里采用錢氏搜索來求σ(x)的根,具體地,把“求根”變?yōu)椤膀灨?。即把GF(2m)中所有元素α0,α1,...,αn-1逐一代入σ(x)中檢驗,判斷是否是根,從而得出差錯位置數(shù)。若是錯誤位置多項式的根,表明有錯;反之,若不是錯誤位置多項式的根,則無錯。這樣逐一進(jìn)行檢驗后,即得到了σ(x)的根,所得出的結(jié)果就是錯誤發(fā)生的位置。
經(jīng)過上一步計算,差錯個數(shù)v和差錯位置數(shù)β1,β2,...,βv已成為巳知數(shù)。根據(jù)伴隨式和σ(x)的系數(shù)求出差錯幅值ej1,ej2,...,ejv。即:
求錯誤圖樣E(x),得出C(x):
求出錯位多項式σ(x)的根,這些根的倒數(shù)即差錯位置,進(jìn)而求得錯誤圖樣多項式E(x)。E(x)與接收到的碼字R(x)疊加,得到最后譯碼估值
在譯碼前首先對輸入信息長度計數(shù),若信息長度大于31位,則進(jìn)入RS(127,115)譯碼。若信息長度等于31,進(jìn)入RS(31,15)和RS(31,23)譯碼程序,根據(jù)有效信息本身攜帶的控制位C及數(shù)據(jù)長度L判斷原信息是15位或者是23位,若不是這兩種信息則糾錯失敗,丟棄該數(shù)據(jù)包。
以上所述實施例的各技術(shù)特征可以進(jìn)行任意的組合,為使描述簡潔,未對上述實施例中的各個技術(shù)特征所有可能的組合都進(jìn)行描述,然而,只要這些技術(shù)特征的組合不存在矛盾,都應(yīng)當(dāng)認(rèn)為是本說明書記載的范圍。
以上所述實施例僅表達(dá)了本發(fā)明的幾種實施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對于本領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。