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

?

引信裝定編碼譯碼方法分析*

2015-03-14 09:26霍智杰
艦船電子工程 2015年6期
關鍵詞:碼元譯碼誤碼率

霍智杰 周 浩

(海軍工程大學兵器工程系 武漢 430033)

?

引信裝定編碼譯碼方法分析*

霍智杰 周 浩

(海軍工程大學兵器工程系 武漢 430033)

引信的裝定過程需要對時間信息進行數(shù)字編碼,以保證數(shù)據(jù)傳輸?shù)挠行院涂垢蓴_能力,而在接收時需要對編碼信號進行譯碼和糾錯。介紹了GF(7,4)Hamming碼的理論基礎,分析了其編碼譯碼過程,利用Matlab編程對編碼、譯碼過程進行了仿真分析,并驗證了Hamming碼實現(xiàn)檢錯和糾錯的能力,從而證明了其作為信道編碼方法的有效性。

引信裝定; Hamming碼; 編碼譯碼; 糾錯

Class Number TN911.3

1 引言

電子時間引信裝定單元與引信之間的通信是通過信號的編碼、調(diào)制、傳輸、解調(diào)、譯碼和識別等過程完成的[1~2]。引信裝定單元采用高頻調(diào)制的循環(huán)GF(7,4) Hamming碼對發(fā)送信號進行編碼,引信接收裝定信號并對接收信號進行解碼和反饋。Hamming碼是一種可以糾正單個隨機錯誤的線性分組碼[3~4],是一種編碼效率很高的完備碼,它具有抗干擾能力強、編譯碼簡單易于實現(xiàn)的優(yōu)點[5]。

2 Hamming碼編碼

引信裝定單元采用循環(huán)(7,4) Hamming碼進行編碼。編碼位數(shù)有三位:十位、個位、十分位。如圖1所示。

圖1 十位、個位、十分位Hamming碼編碼

對于每一位,將十進制設定數(shù)據(jù)轉換為4位的二進制數(shù)據(jù),然后利用Hamming碼對二進制數(shù)據(jù)進行編碼、發(fā)送、譯碼、接收和糾錯。對于(7,4) Hamming碼,其碼組長度為n=7,信息碼元的位數(shù)為k=4,監(jiān)督碼元的位數(shù)為r=n-k=3,最小碼距為d0=3,糾錯能力為t=1,共24=16碼字[3],編碼效率η=1-r/n=57.1%。

現(xiàn)用A=(a6a5a4a3a2a1a0)表示(7,4) Hamming碼的一個碼字,其中前四位a6a5a4a3為信息碼元,后三位a2a1a0為監(jiān)督碼元,它們之間的關系可用下面的監(jiān)督方程[5]表示:

(1)

式(1)等價于

(2)

其中,“⊕”表示邏輯“異或”運算。由以上監(jiān)督方程可得(7,4) Hamming碼的16個許用碼組,如表1所示。

表1 (7,4) Hamming碼的許用碼組

監(jiān)督方程也可用矩陣的形式表示為

(3)

式(3)可簡記為HAT=0T,其中,將H稱為監(jiān)督矩陣,它可以分塊為

(4)

式中,P為r×k階矩陣,Ir×r為r×r階單位矩陣。

此外,也可將式(2)表示為

=(a6a5a4a3)Q

(5)

上式中,Q為k×r階矩陣,且Q=PT。在Q的左邊加上一個k×k階單位方陣,可構成矩陣

(6)

G成為生成矩陣,由它可得到整個碼組[6]。

簡單地講,(7,4) Hamming碼的編碼是通過加入三位監(jiān)督位將位數(shù)為四位的信息編碼成位數(shù)為七位的Hamming碼[7],得到碼組A=(a6a5a4a3a2a1a0)。其流程圖如圖2所示。

圖2 編碼流程圖

在編碼時,采用的是循環(huán)(7,4) Hamming碼。所謂循環(huán)碼就是具有循環(huán)特性的線性分組碼,根據(jù)碼組長度n及生成多項式g(x)可完全確定循環(huán)碼。在引信的編碼設計中,采用生成多項式為g(x)=x3+x+1的循環(huán)碼[3]。上述循環(huán)(7,4) Hamming碼編碼過程可用下面的Matlab程序[8]實現(xiàn):

clear all;

close all;

H = hammgen(3, [1 0 1 1]) % 根據(jù)生成多項式求監(jiān)督矩陣H

G=gen2par(H) % 調(diào)用函數(shù)gen2par()求H的生成矩陣G

Msg=[0 0 0 0;0 0 0 1;0 0 1 0;0 0 1 1;0 1 0 0; 0 1 0 1;0 1 1 0;0 1 1 1;1 0 0 0;1 0 0 1; 1 0 1 0;1 0 1 1;1 1 0 0;1 1 0 1;1 1 1 0; 1 1 1 1]; % 輸入16組信息碼

Code=rem(Msg*G,2); % 求異或和,得到Hamming編碼disp( '(7,4)Hamming碼的編碼結果: ' ) % 結果顯示

disp(Code)

程序運行結果如下

H =

1 0 0 1 1 1 0

0 1 0 0 1 1 1

0 0 1 1 1 0 1

G =

1 0 1 1 0 0 0

1 1 0 1 0 0 0

1 1 0 0 0 1 0

0 1 1 0 0 0 1

(7,4)Hamming碼的編碼結果:

0 0 0 0 0 0 0

0 1 1 0 0 0 1

1 1 0 0 0 1 0

1 0 1 0 0 1 1

1 1 1 0 1 0 0

1 0 0 0 1 0 1

0 0 1 0 1 1 0

0 1 0 0 1 1 1

1 0 1 1 0 0 0

1 1 0 1 0 0 1

0 1 1 1 0 1 0

0 0 0 1 0 1 1

0 1 0 1 1 0 0

0 0 1 1 1 0 1

1 0 0 1 1 1 0

1 1 1 1 1 1 1

由以上程序所得結果與表1一致。

3 Hamming碼譯碼

發(fā)送碼組A=(a6a5a4a3a2a1a0)在信道傳輸過程中由于受到干擾或噪聲等因素的影響可能會產(chǎn)生錯碼。假定接收到的碼組為B=(b6b5b4b3b2b1b0),則接收碼組與發(fā)送碼組之差稱為錯誤圖樣[9],即

E=B-A=(e6e5e4e3e2e1e0)

(7)

其中ei為B與A的對應位之差,令

(8)

式(7)表示,若接收無誤,則ei為0;接收有誤,ei為1。

定義伴隨式(也稱校正子)[5]為

S=BHT=(A+E)HT=AHT+EHT=EHT

(9)

由于(7,4) Hamming碼有三個監(jiān)督位r,故有三個伴隨式,記為S1、S2、S3,共有八種組合,可以表述七種錯誤情形和一種正確情形[3],如表2所示。

表2 伴隨式與誤碼位置的對應關系

由表2可知,當誤碼位置在a6、a5、a4、a2時,伴隨式S1=0;否則,S1≠0;從而有S1=a6⊕a5⊕a4⊕a2。同理可得S2=a5⊕a4⊕a3⊕a1,S3=a6⊕a5⊕a3⊕a0。如果沒有錯誤信息,則S1、S2、S3均為0。信道接收端收到每個碼組后,計算出S1、S2、S3,如果不全為0,則根據(jù)表2確定錯誤的位置并糾錯。

(7,4) Hamming碼的譯碼是將七位Hamming碼解碼成四位的信息碼,并糾正其中可能出現(xiàn)的一位錯誤[10],其流程圖可表示為

圖3 譯碼流程圖

譯碼過程可實現(xiàn)如下:

N=7; % Hamming碼數(shù)據(jù)長度

Msg=[0 0 0 0;0 0 0 1;0 0 1 0;0 0 1 1; 0 1 0 0;0 1 0 1;0 1 1 0;0 1 1 1; 1 0 0 0;1 0 0 1;1 0 1 0;1 0 1 1; 1 1 0 0;1 1 0 1;1 1 1 0;1 1 1 1]; % 16組信息碼

[r,c]=size(Msg); % 求矩陣的行數(shù)r和列數(shù)c

code=encode(Msg,N,c,'hamming');

code_noise=rem(code+rand(r,N)>0.95,2) % 加入噪聲,rand()用于產(chǎn)生r行N列的隨機矩陣

rcv=decode(code_noise,N,c,'hamming') % 利用decode()函數(shù)產(chǎn)生譯碼

disp([ '接收碼的誤碼率:' num2str(symerr(code,code_noise)/length(code))])

% 計算接收到的數(shù)據(jù)的誤碼率

disp([ '解碼后的誤碼率:' num2str(symerr(Msg,rcv)/length(Msg))])

% 計算譯碼后的誤碼率

code_noise = rcv =

0 0 0 0 1 0 0 0 0 0 0

1 0 1 1 0 0 1 0 0 0 1

1 1 1 0 0 1 0 0 0 1 0

0 1 0 0 0 1 1 0 0 1 1

0 1 1 0 1 0 0 0 1 0 0

1 1 0 0 1 0 1 0 1 0 1

1 0 0 0 1 1 0 0 1 1 0

0 0 1 0 1 1 1 0 1 1 11 1 0 1 0 0 0 1 0 0 0

0 1 1 1 0 0 1 1 0 0 1

0 0 1 1 0 1 0 1 0 1 0

1 0 0 1 0 1 1 1 0 1 1

1 0 1 1 1 0 0 1 1 0 0

0 0 0 1 1 0 1 1 1 0 1

0 1 0 1 1 1 0 1 1 1 0

1 1 1 1 1 1 1 1 1 1 1

接收碼的誤碼率:0.125

解碼后的誤碼率:0

從以上結果看,在隨機噪聲影響下,接收信號碼組的前兩個碼字出現(xiàn)了錯誤,接收信號誤碼率為0.125;經(jīng)譯碼后,前兩個碼字的錯誤得到了糾正,誤碼率為0,由此可見Hamming碼譯碼降低了信道傳輸?shù)恼`碼率。

4 結語

對引信裝定過程中的(7,4) Hamming碼編碼、譯碼過程進行了分析,利用Matlab程序進行了仿真。在噪聲條件下,接收數(shù)據(jù)可能會發(fā)生錯誤,而Hamming碼能夠檢查出錯誤并進行糾錯,降低數(shù)據(jù)傳輸?shù)恼`碼率,初步證明了它作為信道編碼方法的有效性。本文為引信裝定編碼解碼模塊的設計提供了思路和指引。

[1] 曲秀杰,李喆,李杰.電子時間引信裝定技術研究[J].探測與控制學報,2001,23(3):21-24.

[2] 張合.引信與武器系統(tǒng)交聯(lián)理論及技術[M].北京:國防工業(yè)出版社,2010.

[3] 郝瀟,王曉峰.漢明碼的Matlab設計[J].信息技術,2011(3):135-137.

[4] 盛孟剛.漢明碼編譯碼的FPGA設計與實現(xiàn)[J].山西電子技術,2007(6):43-44,47.

[5] 粟向軍,趙娟.通信原理[M].北京:清華大學出版社,2011.

[6] 劉燎原.基于VHDL語言的漢明碼編碼器和譯碼器的設計[J].安徽職業(yè)技術學院學報,2006,5(4):5-7.

[7] 蔣婷,徐睿,周昕杰.漢明碼的改進及在存儲器中的實現(xiàn)[J].電子與封裝,2011,11(5):19-22.

[8] 李永忠,徐靜.現(xiàn)代通信原理、技術與仿真[M].西安:西安電子科技大學出版社,2010.

[9] 章學靜,薛琳等.漢明碼及其編譯碼算法的研究與實現(xiàn)[J].北京聯(lián)合大學學報,2008,22(1):46-49.

[10] 代永紅,鄭建生,劉彥飛.通信原理仿真、設計與實訓[M].北京:國防工業(yè)出版社,2011.

Analysis of Encoding and Decoding Method in Fuse Setting

HUO Zhijie ZHOU Hao

(Department of Weaponry Engineering, Naval University of Engineering, Wuhan 430033)

The fuse setting process requires encoding of the time information to guarantee the effectiveness and capability of anti-interference, and decoding and error correction needs to be undertaken when the code is received. A brief introduction to the theoretical principle of (7,4) Hamming code is given, and the encoding and decoding process is introduced. Simulations are undertaken aided by Matlab program to study on the encoding and decoding process, which verifies the ability of Hamming code to detect and correct errors, thus proving its effectiveness to serve as a method of channel encoding.

fuse setting, Hamming code, encoding and decoding, error correction

2014年12月10日,

2015年1月17日

霍智杰,男,碩士研究生,研究方向:武器系統(tǒng)與運用工程。周浩,男,副教授,研究方向:武器系統(tǒng)與運用工程。

TN911.3

10.3969/j.issn1672-9730.2015.06.025

猜你喜歡
碼元譯碼誤碼率
極化碼自適應信道譯碼算法
面向通信系統(tǒng)的誤碼率計算方法
基于參數(shù)預估計和滑動FFT的MFSK信號類內(nèi)識別方法*
基于擴大候選碼元范圍的非二元LDPC加權迭代硬可靠度譯碼算法
基于ZYNQ的IRIG-B(DC)碼設計與實現(xiàn)
分段CRC 輔助極化碼SCL 比特翻轉譯碼算法
基于校正搜索寬度的極化碼譯碼算法研究
LFM-BPSK復合調(diào)制參數(shù)快速估計及碼元恢復
利用混合RF-FSO 系統(tǒng)改善深空通信的研究
一種快速同步統(tǒng)計高階調(diào)制下PN 碼誤碼率的方法?