李春暉
(大連海洋大學(xué)信息工程學(xué)院,遼寧大連116023)
基于System View的BCH編碼器的誤碼率研究
李春暉
(大連海洋大學(xué)信息工程學(xué)院,遼寧大連116023)
BCH碼是一類循環(huán)碼。它是由博斯、查德胡里和霍昆格姆三個人獨(dú)立發(fā)現(xiàn)的。BCH碼是糾錯碼中的一種編碼方法,用于改正多個隨機(jī)出現(xiàn)的、突發(fā)的錯誤的不等長的數(shù)字編碼。文中利用System View對BCH編碼器的誤碼率進(jìn)行仿真,并分析仿真結(jié)果。
System View;BCH;循環(huán)碼
1950年漢明發(fā)表了糾正單個隨機(jī)錯誤的碼,1959年由霍昆格姆(Hocquenghem),1960年由博斯(Bose)和雷-查德胡里(Ray-Chaudhuri)分別提出了糾正多個隨機(jī)錯誤的循環(huán)碼——BCH碼(Bose、Ray-Chaudhuri與Hocquenghem的首字母縮寫)的構(gòu)造方法。BCH碼是一種多級循環(huán)、錯誤校正的交長數(shù)字編碼,就目前所使用的最好的一類線性糾錯碼,主要用于多個隨機(jī)錯誤模式的校正。BCH碼的實(shí)用性很強(qiáng),編碼簡便,結(jié)構(gòu)方便,尤其是對于中短碼,它的糾錯率接近理論值。最主要的是BCH碼的代數(shù)結(jié)構(gòu)非常嚴(yán)格,對于編碼理論研究有著非常重要的作用。
System View由美國的ELANIX公司首次發(fā)行,它的運(yùn)行環(huán)境是Windows,就一種主要用于系統(tǒng)仿真分析的可視化的軟件工具,對于程序的描述主要是通過功能模塊。借助System View軟件,我們可以構(gòu)造多種多速率系統(tǒng),還可以構(gòu)造更加復(fù)雜的數(shù)字、模擬,甚至是數(shù)?;旌舷到y(tǒng)。所以,一般情況下,我們用System View來處理各種非線性或是線性控制系統(tǒng)的仿真和設(shè)計。在進(jìn)行系統(tǒng)的構(gòu)造設(shè)計時,用戶只要將有關(guān)圖標(biāo)從System View早已配置好的圖標(biāo)庫中調(diào)出,設(shè)置好參數(shù),把圖標(biāo)進(jìn)行連線,就可以開展仿真操作,并以眼圖、時域波形或是功率譜等形式把仿真分析結(jié)果系統(tǒng)分析出來。
作為一個動態(tài)系統(tǒng)分析平臺,System View主要作用于現(xiàn)代工程與科學(xué)系統(tǒng)設(shè)計和仿真。System View提供了一整套精密的嵌入式的分析工具,既可以建立一般的系統(tǒng)數(shù)學(xué)模型,又可以實(shí)現(xiàn)濾波器設(shè)計、信號處理、完整通信系統(tǒng)的設(shè)計與仿真等復(fù)雜工序。
BCH碼是循環(huán)碼的一個重要子類。BCH碼可以分為兩類,即本原BCH碼和非本原BCH碼。
2.1BCH碼的構(gòu)建
2.1.1本原BCH碼
設(shè)BCH碼的碼長為n,信息位個數(shù)為k,則監(jiān)督位為n-k,糾錯個數(shù)為t。則它們的關(guān)系如下:對于正整數(shù)m和糾錯個數(shù)t,必然存在一個碼長為n=2^m-1,信息位為k>=n-mt,能糾正所有小于等于t個隨機(jī)錯誤的BCH碼。例如(7,4)漢明碼,碼長為n=7=2^3-1,即m=3,信息位k=4,t>=1,它是以g1(x)=x^3+x+1或g12(x)=x^3+x^2+1生成的BCH碼。
2.1.2非本原BCH碼
非本原BCH碼的生成多項(xiàng)式中不含本原多項(xiàng)式,且碼長n是(2^m-1)的一個因子,即i=(2^m-1)/n,其中:i>1,且除得盡2^m-1。例如,碼長為n=17,信息位為k=9,t=2時,通過查表可知g(x)=(727)8,因?yàn)?27的8進(jìn)制對應(yīng)的2進(jìn)制為111010111,則111010111為g(x)的各項(xiàng)系數(shù)。
2.2BCH碼的編碼
因?yàn)锽CH碼屬于循環(huán)碼,所以它滿足循環(huán)碼的編碼方法。設(shè)(n,k)碼的生成多項(xiàng)式為g(x),設(shè)信息碼多項(xiàng)式為m(x),其編碼步驟如下:1)在監(jiān)督位填n-k個“0”,即用xn-k乘以m(x);2)用g(x)除以第一步的計算結(jié)果,得到商Q(x)和余式r(x);3)用余式r(x)替換監(jiān)督位的n-k個“0”。
2.3BCH碼的解碼
BCH的解碼過程可分為以下五步:
1)由余式r(x)計算伴隨矩陣;
2)求解錯位多項(xiàng)式;
3)用試根法求錯位多項(xiàng)式,得到錯誤位置;
4)求解錯誤圖樣e(x),糾正錯誤;
5)如果不是二進(jìn)制BCH碼,就計算錯誤位置的誤差值。
3.1系統(tǒng)定時
System View系統(tǒng)是一個離散時間系統(tǒng)。換言之,每次在運(yùn)行系統(tǒng)前,先要對系統(tǒng)頻率進(jìn)行設(shè)定。系統(tǒng)在進(jìn)行仿真時,要事先對信號的系統(tǒng)頻率采樣,再根據(jù)系統(tǒng)處理信號的結(jié)果對每個采樣點(diǎn)的值進(jìn)行計算,最后輸出的時候,在觀察窗內(nèi)根據(jù)要求依次畫出每一個點(diǎn)的位置或擬合曲線。
正常情況下,為了使傳真波形更理想,對于采樣頻率的設(shè)定一般是最高信號頻率的5到7倍,而當(dāng)采樣頻率達(dá)到系統(tǒng)最高頻率10倍以上的時候,仿真波形幾乎完美。采樣頻率和運(yùn)行時間共同決定了系統(tǒng)采樣點(diǎn)數(shù),這三者之間的關(guān)系可以表示如下:
采樣點(diǎn)數(shù)=(終止時間-起始時間)×采樣頻率+1
系統(tǒng)每循環(huán)運(yùn)行一次,都計算一次某一信噪比下的誤碼率[1]。
3.2系統(tǒng)搭建
設(shè)計一個BCH編碼器,碼長n=7,信息位k=4,糾錯能力t=1。輸入信號為1Hz,幅度為1 V的PN碼,為了保證每個比特對應(yīng)一個采樣,在信號源的后面加入了一個采樣器,采樣頻率設(shè)為1Hz,信號源的時間偏移設(shè)為0,即數(shù)據(jù)從0時刻開始輸出。編碼方式選擇BCH。信道為加性高斯白噪聲信道。接收端采用匹配濾波器作最佳接收機(jī),這里采用一個積分清洗算子作為匹配濾波器。
3.3仿真結(jié)果
信噪比為3 dB時,誤碼率BER為40e-3;信噪比為4 dB時,誤碼率約為18e-3;即隨著信噪比的增加,誤碼率減小。且當(dāng)信噪比為7 dB時,誤碼率為0。誤碼計數(shù)器兩路輸入信號的卷積峰值剛好對準(zhǔn)0點(diǎn),準(zhǔn)確同步。
BCH碼解決了生成多項(xiàng)式與糾錯能力的關(guān)系問題,可以在給定糾錯能力要求的條件下尋找到碼的生成多項(xiàng)式。在同樣的信道條件下BCH(7,4)對數(shù)據(jù)傳輸中的隨機(jī)差錯具有明顯的編碼增益。
[1]楊亮,齊林,劉艷霞.基于System View的比特誤碼率測試的仿真[J].現(xiàn)代電子技術(shù),2005(2):109-114.
(編輯:王鋼)
BER Study BCH Encoder Based on System view
Li Chunhui
(Information Engineering,Dalian Ocean University,Dalian Liaoning 116023)
BCH code is a quasi-cyclic code.It is composed of Booz,Chad Hu and Huokungemu three independent discovery.BCH code is an error correcting code in a coding method used to correctmultiple random,sudden unequal number of coding errors.The authors use the System View for BCH encoder BER simulation and analysis of simulation results.
Systemview View;BCH;cyclic code
TN911
A
2095-0748(2016)17-0097-02
10.16525/j.cnki.14-1362/n.2016.17.40
2016-08-06
李春暉(1979—),女,遼寧彰武人,本科,講師,研究方向:移動通信。