資源描述:
《實驗五漢明碼的編譯碼》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、《數(shù)據(jù)通信原理》實驗報告實驗題目:漢明碼的編譯碼專業(yè)班級:信息工程2班姓名學(xué)號:趙星敏201342351李明陽201342300指導(dǎo)教師:劉鈺實驗五漢明碼的編譯碼一、實驗?zāi)康?、理解漢明碼的編碼原理2、掌握利用simulink進行漢明碼編譯碼仿真的方法3、掌握利用matlab指令進行漢明碼編譯碼的方法二、實驗原理在數(shù)字通信系統(tǒng)中,為了實現(xiàn)信息的可靠傳輸,需要采用差錯控制來發(fā)現(xiàn)并糾正錯誤。進行差錯控制的方法就是對信息進行差錯控制編碼,差錯控制編碼種類較多,其中線性分組碼是常用的一類編碼,具有編碼效率高,實現(xiàn)較簡單以及檢糾錯能力較強等特點。一般數(shù)字通信系統(tǒng)模型由信源信宿、加解密
2、、編解碼、調(diào)制解調(diào)等模塊組成,其中有些通信模塊是組成整個通信系統(tǒng)所必不可少的,有些模塊是可以不需要的。差錯控制編解碼屬于編解碼器通信模塊,為了方便分析差錯控制編碼性能,通過將通信系統(tǒng)簡化為如圖5-1所示的信息傳輸系統(tǒng)來搭建仿真實驗平臺進行分析研究。信源差錯控制編碼器差錯控制解碼器信宿信道圖5-1編碼,有時也稱為糾錯編碼。不同的編碼方法,有不同的檢錯或糾錯能力,有的編碼只能檢錯,不能糾錯。一般說來,付出的代價越大,檢糾錯的能力就越強。在選擇差錯控制編碼時需要考慮到編碼效率、檢糾錯的能力等方面因素的影響。按照是否將信息碼元進行分組可以將差錯控制編碼分為分組碼和非分組碼,線性碼是
3、指信息位和監(jiān)督位滿足一組線性方程的碼,任一(n,k)線性分組碼的編碼效率為k/n。Simulink通信模塊中提供了二進制線性分組碼編解碼器:BinaryLinearEncoder和BinaryLinearDecoder。漢明碼是漢明(Hamming)于1950年提出的能糾正一位錯碼且編碼效率較高的線性分組碼,它可以用一種簡潔有效的方法進行解碼。漢明碼不是僅指某一種碼,而是指一類碼。二進制漢明碼應(yīng)滿足條件:2n-k=1+n,令m=n-k,漢明碼n和k服從關(guān)系式:碼長n=2m-1;信息位k=2m-1-m;最小距離dmin=3(指漢明距離)。當m=3,4,5,6,7,8,…時,分
4、別有(7,4),(15,11),(31,26),(63,57),(127,120),(255,247),…漢明碼。漢明碼的基本思想:在k個信息位上加r個校驗位,構(gòu)成n=k+r位的碼字,其中每個校驗位和某幾個特定的信息位構(gòu)成偶校驗的關(guān)系。接收端對這r個偶關(guān)系進行校驗,即將每個校驗位與它關(guān)聯(lián)的信息位進行異或加,相異或的結(jié)果稱為校正因子。如果沒有錯的話,這r個校正因子都為0;如果有一個錯則校正因子不會全為0,根據(jù)校正因子的不同取值,可以知道錯誤發(fā)生在碼字的哪一個位置上。線性分組碼的生成原理與Hamming碼基本一致,下面以(7,4)Hamming碼為例簡單地介紹一下漢明碼的構(gòu)造過
5、程。構(gòu)造一個(7,4)漢明碼,就是求出它的生成矩陣,或等效地,求出它的監(jiān)督矩陣(也叫校驗矩陣)。由于(7,4)漢明碼的校驗矩陣是矩陣,而監(jiān)督矩陣的列矢量不能為全零(零與任何碼元的乘積為零,失去檢驗功能),因此監(jiān)督矩陣H的7個列矢量正好是除全零矢量外3重矢量的全部可能組合。將[001]T、[010]T、[011]T、[100]T、[101]T、[110]T、[111]T排列起來就是監(jiān)督矩陣,排列順序不同,所得矩陣也就不同,說明H不是唯一的。由于交換列不會影響最小距離,所以可以通過列置換將最初的H變換為系統(tǒng)形式的H(若信息組以不變的形式,在碼字的任意k位中出現(xiàn),則稱該碼為系統(tǒng)碼
6、。否則,稱為非系統(tǒng)碼),成為系統(tǒng)漢明碼:經(jīng)過變換,整理為典型監(jiān)督矩陣形式為根據(jù)校驗矩陣與生成矩陣的轉(zhuǎn)換關(guān)系式得到系統(tǒng)漢明碼的生成矩陣G為:這樣輸入信息組m=[m3,m2,m1,m0],將m與G相乘即得到編碼后的碼字A。當數(shù)字信號編碼成漢明碼形式后在信道中傳輸,由于信道中噪聲的干擾,可能由于干擾引入差錯,使得接收端收到錯碼,因此在接收端進行漢明碼糾錯,以提高通信系統(tǒng)的抗干擾能力及可靠性。解碼的時候?qū)⒔邮盏降男畔⒔Mr與HT相乘,如果rHT=0,接收碼組無錯;如果rHT≠0,則根據(jù)譯碼圖樣進行糾錯。Simulink通信模塊中提供了Hamming碼編解碼器:HammingEncod
7、er和HammingDecoder。三、實驗內(nèi)容1、simulink仿真漢明碼編譯碼過程漢明碼編譯碼仿真的模型圖如圖5-2所示。圖5-2漢明碼編譯碼仿真各模塊參數(shù)及說明:①BernoulliBinaryGenerator(伯努利二進制隨機數(shù)產(chǎn)生器)模塊描述:產(chǎn)生服從伯努利分布的隨機二進制序列,模塊的輸出可以是幀結(jié)構(gòu)的矩陣,也可以是數(shù)據(jù)流形式的行或列向量或一維數(shù)組。模塊位置:CommunicationsBlockset-CommSources-RandomDataSources-BernoulliBinaryGene