本發(fā)明屬于非合作通信和合作通信的智能通信領(lǐng)域,尤其涉及一種容誤碼的rs碼快速參數(shù)盲估計(jì)方法。
背景技術(shù):
在非合作通信以及智能通信領(lǐng)域中,通常需要對(duì)解調(diào)后的數(shù)據(jù)進(jìn)行信息恢復(fù)。然而,為了保證信息能夠在信道中準(zhǔn)確傳輸,需要應(yīng)用差錯(cuò)控制編碼技術(shù)對(duì)信息經(jīng)過編碼和交織,尤其在非合作通信中,通過編碼和交織后的信息具有“加密”作用,一定程度上阻礙了信息的恢復(fù)。因此,如何從解調(diào)后的數(shù)據(jù)中準(zhǔn)確恢復(fù)信息,關(guān)鍵是對(duì)截獲到的碼元序列進(jìn)行編碼類型識(shí)別和編碼參數(shù)估計(jì)。
rs碼作為一種常用的信道編碼方式,其糾錯(cuò)性能好,抗突發(fā)錯(cuò)誤能力強(qiáng),在無線通信領(lǐng)域運(yùn)用廣泛。目前對(duì)rs碼參數(shù)盲估計(jì)的研究主要有以下幾類:利用在有限域擴(kuò)域上進(jìn)行快速離散傅里葉變換估計(jì)參數(shù),但此算法需要多次運(yùn)用矩陣乘法,當(dāng)碼長(zhǎng)較長(zhǎng)時(shí),計(jì)算量急劇增大;利用中國剩余定理估計(jì)rs碼參數(shù),通過各分量碼間的關(guān)聯(lián)性估計(jì)分組碼長(zhǎng)和本原多項(xiàng)式,此算法雖然只需要少量數(shù)據(jù)就能完成參數(shù)估計(jì),但運(yùn)算過程中循環(huán)次數(shù)較多,耗時(shí)較長(zhǎng);利用秩準(zhǔn)則法估計(jì)rs碼參數(shù),此方法是把每個(gè)碼字按行排列入數(shù)據(jù)矩陣,然后對(duì)矩陣求秩,為了保證算法的抗誤碼性,需要對(duì)不同數(shù)據(jù)矩陣求秩取平均值;利用比特頻率檢測(cè)分布估計(jì)rs碼參數(shù),但此方法針對(duì)二進(jìn)制分組碼效果較好,對(duì)于高階分組碼估計(jì)效果不太理想。因此,提出一種快速、高效的rs碼參數(shù)盲估計(jì)方法具有十分重要的現(xiàn)實(shí)意義。
技術(shù)實(shí)現(xiàn)要素:
為解決現(xiàn)有技術(shù)的缺陷,本發(fā)明的提供一種基于抽取部分碼字的rs碼快速參數(shù)盲估計(jì)方法,該方法特點(diǎn)是運(yùn)算速度快,容易實(shí)現(xiàn)。本發(fā)明方法利用rs碼在二元域上映射的結(jié)構(gòu)特征,構(gòu)造出與原碼一一對(duì)應(yīng)的抽取碼字,計(jì)算該抽取碼字在gf(2)上的歸一化秩,通過尋找最小歸一化秩完成對(duì)rs碼碼長(zhǎng)的估計(jì),再通過快速離散傅里葉變換估計(jì)本原多項(xiàng)式和生成多項(xiàng)式。
一種基于抽取部分碼字的rs碼快速參數(shù)盲估計(jì)方法,具體步驟如下:
s1、截獲一段長(zhǎng)為l的含誤碼二進(jìn)制碼元序列,設(shè)編碼域維數(shù)初值為m;
s2、根據(jù)二進(jìn)制分組碼長(zhǎng)nb與m的關(guān)系nb=m·(2m-1),求出二進(jìn)制分組碼長(zhǎng)nb。根據(jù)所述二進(jìn)制分組碼長(zhǎng)nb將截獲到的二進(jìn)制碼元序列l(wèi)劃分成n個(gè)二進(jìn)制碼字,其中,
s3、令k等于1到
s4、將s3中得到的n個(gè)抽取碼字依次放入維數(shù)為(n'+5)·n'的矩陣a中,求得矩陣a在gf(2)上的歸一化秩ρa(bǔ),若m<8,則m=m+1跳轉(zhuǎn)至s2;
s5、統(tǒng)計(jì)所有歸一化秩ρa(bǔ),最小的歸一化秩值對(duì)應(yīng)的編碼域維數(shù)為估計(jì)值mest,通過式
s6、根據(jù)符號(hào)分組碼長(zhǎng)nest將二進(jìn)制碼元序列l(wèi)劃分為符號(hào)碼字;
s7、選取此編碼域維數(shù)mest下所有本原多項(xiàng)式,構(gòu)造一個(gè)有限域擴(kuò)域
s8、根據(jù)ms多項(xiàng)式連續(xù)零值的個(gè)數(shù)和位置,可求得生成多項(xiàng)式估計(jì)值,則基于抽取部分碼字的rs碼參數(shù)盲估計(jì)完成。
進(jìn)一步地,s3所述映射具體過程如下:
s31、設(shè)c=(c0,0,c0,1,…c0,m-1,c1,0,…,c1,m-1,…,cn-1,0,…,cn-1,m-1)為二元碼字空間中的任一碼字,其中,碼元ci,j代表第i個(gè)循環(huán)塊中的第j比特,其中,i=0,1,2,...,n-1,j=0,1,2,...,m-1,n為符號(hào)碼長(zhǎng);
s32、定義與原碼c一一對(duì)應(yīng)的抽取碼字多項(xiàng)式φ(c)=(c0′(x)+c1′(x)+…+cm-1′(x)),其中,
進(jìn)一步地,s1和s31所述m=3。
進(jìn)一步地,s4中求得抽取碼字排列矩陣的歸一化秩具體方法如下:
s41、將抽取碼字按行依次放入維數(shù)為(n+5)'·n'的矩陣a中,求得矩陣a在gf(2)上的秩,記為rank(a);
s42、數(shù)據(jù)矩陣的歸一化秩ρa(bǔ)為:
進(jìn)一步地,s7所述在有限域做快速離散傅里葉變換的具體過程如下所述:
s71、設(shè)a=(a0,a1,…,an-1)是有限域
s72、對(duì)a(x)在有限域擴(kuò)域上做快速離散傅里葉變換,為
a(x)=a0+a1x+a2x2+…+an-1xn-1(2),
其中,a(x)稱為譜(ms)多項(xiàng)式,在有限域上進(jìn)行的快速離散傅里葉變換算法,簡(jiǎn)稱為gfft算法;
s73、設(shè)α是有限擴(kuò)域
本發(fā)明的有益效果是:
算法簡(jiǎn)單,運(yùn)算速度快,性能穩(wěn)定,并且在含誤碼的情況下仍然可行。
附圖說明
圖1為rs碼參數(shù)盲估計(jì)方法流程圖。
圖2為碼字多項(xiàng)式映射為抽取碼字示意圖。
圖3為不同編碼域維數(shù)和抽取個(gè)數(shù)下的矩陣歸一化秩分布圖。
圖4為不同本原多項(xiàng)式下ms多項(xiàng)式系數(shù)分布圖。
圖5為本專利方法和單純使用gfft算法運(yùn)行時(shí)間比較圖。
具體實(shí)施方式
下面結(jié)合附圖對(duì)本發(fā)明進(jìn)行說明。
假設(shè)碼字起點(diǎn)已知,截獲到一段長(zhǎng)為l=75600比特的(63,51)rs碼二進(jìn)制碼流,其中,符號(hào)碼長(zhǎng)n=63,信息位長(zhǎng)k=51;編碼域維數(shù)m=6,二進(jìn)制碼長(zhǎng)nb=378。
設(shè)定其本原多項(xiàng)式為p(x)=1+x+x3+x4+x6,生成多項(xiàng)式g(x)=x12+48x11+34x10+56x9+46x8+2x7+40x6+18x5+35x4+45x3+13x2+45x+36,比特誤碼率pe=0.0001。
識(shí)別步驟如下:
(1)假設(shè)初始編碼域維數(shù)m0=3。
(2)根據(jù)編碼域維數(shù)m0求得對(duì)應(yīng)符號(hào)碼長(zhǎng)
(3)令k從1到
(4)將步驟(3)中得到的抽取碼字依次放入維數(shù)為(n'+5)·n'的矩陣a中。求得矩陣a在gf(2)上的秩rank(a)=7,其歸一化秩ρa(bǔ)=rank(a)/n'=7/7=1。再令k=2映射得到新的抽取碼字,再放入矩陣中求其歸一化秩,直到k遍歷完。若m0<8,則m0=m0+1跳轉(zhuǎn)至步驟(2)。
(5)統(tǒng)計(jì)所有歸一化秩ρa(bǔ),最小的歸一化秩值對(duì)應(yīng)的編碼域維數(shù)為估計(jì)值mest,通過式
(6)編碼域維數(shù)mest=6下的本原多項(xiàng)式庫p={[67],[91],[97],[103],[109],[115]},遍歷所有本原多項(xiàng)式,構(gòu)造一個(gè)有限域擴(kuò)域gf(26)。再將劃分出的符號(hào)碼字在擴(kuò)域上做快速離散傅里葉變換。仿真結(jié)果如附圖4所示,為了方便觀察,令所有ms多項(xiàng)式系數(shù)取反(即0值變?yōu)?,非0值變?yōu)?),多項(xiàng)式系數(shù)截取1~31。當(dāng)本原多項(xiàng)式p(x)=1+x+x3+x4+x6=91時(shí),符號(hào)碼字的譜多項(xiàng)式系數(shù)出現(xiàn)了位置相同的連續(xù)零值,則本原多項(xiàng)式估計(jì)值為pest(x)=1+x+x3+x4+x6=91。
(7)從附圖4可以看出,ms多項(xiàng)式系數(shù)分量從1~12位置出現(xiàn)了連續(xù)零值,可以求出生成多項(xiàng)式估計(jì)值g(x)=x12+48x11+34x10+56x9+46x8+2x7+40x6+18x5+
35x4+45x3+13x2+45x+36。
單純使用快速傅里葉變換的參數(shù)估計(jì)算法在每個(gè)假設(shè)碼長(zhǎng)下需要在有限域頻譜進(jìn)行n×n次gf(2m)上的乘法,和n×(n-1)次gf(2m)上的加法。而采用本發(fā)明最多只需(n·m/2+5)×(n·m/2)的矩陣在gf(2)上求秩。在pentium(r)dual-corecpu,內(nèi)存8g的計(jì)算機(jī)上,使用matlab軟件仿真,選取的碼字個(gè)數(shù)n=500,比較本發(fā)明和快速傅里葉變換算法耗時(shí)如附圖5所示。