国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

北斗衛(wèi)星導(dǎo)航糾錯(cuò)碼BCH(15,11)快速譯碼算法及實(shí)現(xiàn)結(jié)構(gòu) ①

2021-04-09 09:35:34
空間電子技術(shù) 2021年1期
關(guān)鍵詞:電文圖樣譯碼

江 寶 安

(重慶郵電大學(xué)移通學(xué)院,重慶 401520 )

0 引言

北斗衛(wèi)星導(dǎo)航系統(tǒng)(BDS)是中國獨(dú)立自主研制的全球衛(wèi)星導(dǎo)航系統(tǒng),可在全球范圍內(nèi)全天候、全天時(shí)地提供各類高精度、高可靠定位、導(dǎo)航、授時(shí)服務(wù),并具短報(bào)文通信能力。目前,我國正在實(shí)施北斗三號系統(tǒng)建設(shè),2020年將完成30顆衛(wèi)星發(fā)射組網(wǎng),全面建成北斗三號系統(tǒng)。

對衛(wèi)星導(dǎo)航接收機(jī)而言,導(dǎo)航電文的準(zhǔn)確性至關(guān)重要,其含有的衛(wèi)星導(dǎo)航基本信息直接決定了接收機(jī)的定位精度[1]。為了增強(qiáng)導(dǎo)航電文的準(zhǔn)確性,北斗系統(tǒng)采用了循環(huán)碼BCH(15,11)作為導(dǎo)航電文的前向糾錯(cuò)碼[2]。因此,設(shè)計(jì)該BCH碼的高效譯碼方案具有重要的意義。 BCH一般譯碼算法主要分為兩類:硬判決譯碼算法[3]和軟判決譯碼算法[4,5]。 硬判決譯碼算法具有簡單、易于實(shí)現(xiàn)的優(yōu)點(diǎn),也是北斗系統(tǒng)接口控制文件中推薦的譯碼算法,但是其譯碼性能相對較差。軟判決譯碼算法的性能雖然得到一定的提高,但是在實(shí)際應(yīng)用中由于復(fù)雜度的增加,會增大軟硬件實(shí)現(xiàn)成本,譯碼延遲等的不利影響。基于實(shí)際應(yīng)用,硬判決譯碼算法得到優(yōu)先考慮。本文提出了一種基于長除法 的北斗系統(tǒng)BCH(15,11)碼的高效硬判決譯碼算法及實(shí)現(xiàn)結(jié)構(gòu)。本算法不需要存儲錯(cuò)誤圖樣,也不需要解BM方程,只需要循環(huán)移位和模2相加,軟硬件實(shí)現(xiàn)簡單易行,適合接收機(jī)工程化實(shí)現(xiàn)和應(yīng)用。

1 北斗導(dǎo)航電文數(shù)據(jù)碼糾錯(cuò)編碼方式[2]

導(dǎo)航電文采取BCH(15,11)碼加交織方式進(jìn)行糾錯(cuò)。BCH(15,11)碼長為15比特,信息位為11比特,糾錯(cuò)能力為1比特,生成多項(xiàng)式為g(x)=x4+x+1。

BCH(15,11)碼是循環(huán)碼,可以通過線性移位寄存器電路有效實(shí)現(xiàn)其編碼[8]

編碼框圖如圖1所示,文獻(xiàn)[2]有詳細(xì)論述。

文獻(xiàn)[2]中給出了BCH(15,11)硬判決譯碼算法,譯碼框圖見圖2,主要步驟如下:

(1)用接收碼r(x)除以生成多項(xiàng)式g(x)得余式,此余式即為校正子。

(2)由校正子查錯(cuò)誤圖樣表1,得錯(cuò)誤碼e(x)。

(3)由接收碼r(x)模2相加e(x)得原碼。

綜上所述,譯碼算法采用的是錯(cuò)誤圖樣查表法,需要預(yù)先存儲錯(cuò)誤圖樣,譯碼時(shí),查找,匹配費(fèi)時(shí),效率不高。

圖1 BCH(15,11,1)編碼框圖

圖2 BCH(15,11,1)譯碼框圖

表1 糾錯(cuò)信號的 ROM 表

2 本文提出的基于長除法的BCH(15,11)譯碼算法

BCH(15,11)生成多項(xiàng)式為g(x)=x4+x+1。

信息多項(xiàng)式為:m(x)=m10x10+m9x9+…+m1x+m0,(mi取0或1,i=0,1,…,10)

則,BCH(15,11)編碼多項(xiàng)式為:c(x)=m(x)·g(x)。

此譯碼算法分為以下 2 步:

(1)由接收到的含有錯(cuò)誤的r(x)=c(x)+e(x)循環(huán)長除g(x)得余式,若余式項(xiàng)數(shù)小于等于 1,即為錯(cuò)誤多項(xiàng)式。

(2)錯(cuò)誤多項(xiàng)式模2相加r(x)得原碼。

證明:r(x)=m(x)g(x)+e(x)?e(x)≡r(x)mod(g(x)),故只要r(x)mod(g(x))余式相數(shù)小于等于1必為錯(cuò)誤多項(xiàng)式。證畢。

例1:設(shè)發(fā)送碼是:c(x)=m(x)·g(x)=(x10+x9+x7+x)·(x4+x+1)=x14+x13+x9+x8+x7+x5+x2+x

假設(shè)接收碼是:r(x)=m(x)·g(x)=x14+x13+x9+x8+x7+x5+x4+x2+x,有 1位錯(cuò)誤e(x)=x4,當(dāng)然接收端是不知道有這 1位錯(cuò)誤的。由循環(huán)長除法得錯(cuò)誤多項(xiàng)式如 圖 3 所示,得錯(cuò)誤多項(xiàng)式e(x)=x4,糾錯(cuò)得原碼。

圖3 例1長除法得e(x)

例2:實(shí)際應(yīng)用中通常采用系統(tǒng)碼形式,編碼方程為

c(x)=xn-km(x)+xn-km(x))mod(g(x))

設(shè)發(fā)送信息為:m(x)=x10+x8+x7+x+1

則,發(fā)送碼是:

c(x)=x15-11m(x)+(xn-km(x))mod(g(x))

=x14+x12+x11+x5+x4+x3+x2+1

假設(shè)接收碼是:

r(x)=c(x)+e(x)=x14+x11+x5+

x4+x3+x2+1

錯(cuò)誤位e(x)=x12,當(dāng)然接收端是不知道有這 1位錯(cuò)誤的。由循環(huán)長除法得錯(cuò)誤多項(xiàng)式如 圖 4 所示,得錯(cuò)誤多項(xiàng)式e(x)=x-3=x12,糾錯(cuò)得原碼。

圖4 例2長除法得e(x)

3 新算法軟硬件實(shí)現(xiàn)結(jié)構(gòu)

循環(huán)長除法軟硬件實(shí)現(xiàn)如圖5所示,主要包括循環(huán)移位,模2相加,判斷r(x)不為0的個(gè)數(shù)。

①先寄存接收碼r(x),e(x)←r(x)。

②判斷e(x)不為0的個(gè)數(shù)s,若s<2,則c=e+r結(jié)束。

③若當(dāng)前e(x)第一位為1,則g(x)和e(x)分別對應(yīng)的5位數(shù)據(jù)模2相加,g(x)逆時(shí)針移動一位;若當(dāng)前e(x)第一位為0,則g(x)直接逆時(shí)針移動直到e(x)第一位對應(yīng)位為1,g(x)和e(x)分別對應(yīng)的5位數(shù)據(jù)模2相加,g(x)逆時(shí)針移動一位;轉(zhuǎn)②。(g(x)最多逆時(shí)針移動25位)

由以上算法結(jié)構(gòu)說明可得如下結(jié)論:本算法結(jié)構(gòu)簡單,只需要15位移位寄存器存儲接收碼,由生成多項(xiàng)式循環(huán)模2相加接收碼,當(dāng)錯(cuò)誤位數(shù)小于等于1時(shí),即得錯(cuò)誤位,類似打地鼠游戲。相對文獻(xiàn)[2]中給出了BCH(15,11)錯(cuò)誤圖樣查表法,不需要預(yù)先存儲錯(cuò)誤圖樣;譯碼時(shí),不需要查找,匹配,速度快,資源占用少,效率較高。

4 MATLAB仿真

仿真程序如下:

%BCH(15,11,1)

msg=gf(randint(1,11),1):%information code

c=bchenc(msg,15,11);%encode

n=gf([010000000000000],1);%1bit error

r=c+n;%receive code

e=r;

g=gf([1 0 0 1 1]);%generator polynomial

m=sum(e~=0);k=0;

while m>1 & k<2

k=k+1;

for j=1:11

if e(j)==1

e(j)=0;e(j+3)= e(j+3)+1; e(j+4)= e(j+4)+1;

end

if sum(e~=0)<2

disp('OK r(x)=e(x) mod(g(x))');e,

return

end

end

for j=12:15

if e(j)==1

e(j)=0; j1=mod(j+3,15); j2=mod(j+4,15);

e(j1)=e(j1)+1; e(j2)=e(j2)+1;

end

if sum(e~=0)<2

disp('OK r(x)=e(x) mod(g(x))');e,

return

end

end

end

disp('OK c=r+e');c=r+e;

圖5 BCH(15,11)循環(huán)長除法實(shí)現(xiàn)結(jié)構(gòu)圖

仿真分析:運(yùn)用本仿真程序?qū)λ?11=1024個(gè)原碼,及211·15=15360個(gè)含有1個(gè)錯(cuò)誤位的接收碼進(jìn)行仿真驗(yàn)算,均能正確糾錯(cuò),由此可證明本算法有效可行。

5 結(jié)束語

隨著北斗導(dǎo)航系統(tǒng)的逐步完善和全面提供各種應(yīng)用服務(wù),設(shè)計(jì)體積小,功耗低的接收機(jī)芯片至關(guān)重要,而BCH(15,11)譯碼算法在研制接收機(jī)中具有重要作用。本文提出的基于循環(huán)長除法的BCH(15,11)譯碼算法操作簡單,易于軟硬件實(shí)現(xiàn),非常適合在北斗系統(tǒng)導(dǎo)航接收機(jī)中工程化應(yīng)用。

猜你喜歡
電文圖樣譯碼
ADS-B延遲轉(zhuǎn)發(fā)電文檢測及干擾臺定位方法
基于校正搜索寬度的極化碼譯碼算法研究
從霍爾的編碼譯碼理論看彈幕的譯碼
新聞傳播(2016年3期)2016-07-12 12:55:27
越南電站EPC項(xiàng)目設(shè)計(jì)圖樣審批管理
衛(wèi)星導(dǎo)航系統(tǒng)導(dǎo)航電文編排結(jié)構(gòu)研究
LDPC 碼改進(jìn)高速譯碼算法
遙測遙控(2015年2期)2015-04-23 08:15:19
“機(jī)械圖樣的繪制與識讀”課程開發(fā)與實(shí)施
裝修圖樣:清代宮廷建筑內(nèi)檐裝修設(shè)計(jì)媒介
基于概率裁剪的球形譯碼算法
《一定摸到紅球嗎》教學(xué)設(shè)計(jì)方案
浑源县| 尤溪县| 常德市| 康乐县| 当阳市| 翁牛特旗| 宁陕县| 民权县| 疏附县| 新泰市| 民和| 崇明县| 武夷山市| 得荣县| 湾仔区| 泽州县| 黑河市| 古交市| 绥中县| 井冈山市| 汝州市| 玉溪市| 手机| 故城县| 曲松县| 衡阳县| 天长市| 本溪| 海门市| 乌兰县| 克拉玛依市| 松桃| 宿州市| 巴塘县| 扶余县| 邵阳市| 桃园县| 怀柔区| 襄垣县| 漳平市| 新安县|