合工大 74漢明碼 通信編碼_第1頁
合工大 74漢明碼 通信編碼_第2頁
合工大 74漢明碼 通信編碼_第3頁
合工大 74漢明碼 通信編碼_第4頁
合工大 74漢明碼 通信編碼_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、74漢明碼編碼譯碼姓 名: 學(xué) 號: 班 級: 指導(dǎo)老師: 丁志中 2017年10月25日一、編碼原理(1)74漢明碼表74漢明碼表序號信息碼元冗余元序號信息碼元冗余元00000000810001111000101191001100200101011010100103001111011101100140100110121100001501011011311010106011001114111010070111000151111111(2)主要參數(shù)校驗(yàn)位:=7-4=3碼長:=23-1=7信息位:=23-1-3=4最小距離:(3)生成矩陣(4)編碼原理v=uG=a6,a5,a4,a31000110

2、010001100101110001101=(a6,a5,a4,a3,a2,a1,a0) 其中,冗余位 a2=a6a4a3 a1=a6 a5a4 a0=a5 a4 a3校正子S2 S1 S0,監(jiān)督關(guān)系式如下:S2=a6a5a4a2S1=a6a5a3a1S0=a6a4a3a0校正子與誤碼位置S2 S1 S0誤碼位置S2 S1 S0誤碼位置 001101 010 110 100 111 011000無錯(cuò)碼(5)編碼模塊的代碼:%編碼模塊G=1 0 0 0 1 1 1;0 1 0 0 1 1 0;0 0 1 0 1 0 1;0 0 0 1 0 1 1; %生成矩陣 a=input('輸入待編

3、碼序列(1×4的0,1矩陣):'); c=mod(a*G,2); %計(jì)算出編碼后的序列(74漢明碼)disp('編碼后序列為:'); disp(c); %打印輸出編碼后的序列二、產(chǎn)生隨機(jī)誤碼(1)代碼:x=c; %將c矩陣的值賦給XJ=input('請輸入一位出現(xiàn)誤碼的概率'); %設(shè)置一位誤碼發(fā)生的概率if unifrnd(0,1)<J %通過均勻分布產(chǎn)生的隨機(jī)數(shù)來判斷在誤碼率J下,是否發(fā)生誤碼L=unidrnd(7); %產(chǎn)生從1到7的隨機(jī)整數(shù),設(shè)置第幾位出錯(cuò)x(1,L)=xor(x(1,L),1); %通過將矩陣x的第L位與1異或,

4、從而實(shí)現(xiàn)取反,進(jìn)而產(chǎn)生誤碼enddisp('經(jīng)過傳輸后,接收到的序列為');disp(x); %打印輸出誤碼后的模塊(2)原理分析在任意長碼字的情況下,差錯(cuò)控制的最小碼距Dmin與其檢錯(cuò)、糾錯(cuò)能力1、在一個(gè)碼集中檢測e個(gè)錯(cuò)誤,要求最小碼距滿足:Dmin>=e+12、在一個(gè)碼集中糾正t個(gè)錯(cuò)誤,要求最小碼距滿足:Dmin>=2t+13、在一種碼集中糾正t個(gè)錯(cuò)誤的同時(shí)檢測e(e>=t)個(gè)錯(cuò)誤,要求最小碼距滿足:Dmin>=t+e+1由于74漢明碼的最小碼距Dmin=3,所以可糾錯(cuò)一位,檢錯(cuò)兩位。通常來說,系統(tǒng)發(fā)生一位誤碼概率p1較小,發(fā)生兩位誤碼的概率p2更小

5、,即p2<<p1,所以在這里我們只討論發(fā)生一位誤碼的情況。三、譯碼原理(1)74漢明碼糾錯(cuò)表及流程圖序號譯碼輸入譯碼輸出校正子S錯(cuò)誤碼位錯(cuò)碼位置a6 a5 a4 a3 a2 a1 a0a6 a5 a4 a3C000000100000010a12100011110001100a23200101010010000無錯(cuò)0300111100011000無錯(cuò)0401011100100011a34501001010101011a34600100110110100a56701110000111000無錯(cuò)0810001111000000無錯(cuò)0910011011001001a011010100001

6、010010a121110111011011100a231211010011100011a341311110001101101a451410101001110110a561501111111111111a67開始譯碼輸入七位碼a6 a5 a4 a3 a2 a1 a0b2b1b0求出校正子S校正子S=0?輸出四位信息碼a6 a5 a4 a3結(jié)束根據(jù)S與E的關(guān)系糾正錯(cuò)碼NY(2)譯碼模塊的代碼%譯碼模塊H=1 1 1 0 1 0 0 ;1 1 0 1 0 1 0;1 0 1 1 0 0 1; %校驗(yàn)矩陣HB=x; %將誤碼序列x賦給BS=mod(B*H',2); %計(jì)算出校正子S2 S1

7、S0的序列if S=0 %如果S=【0 0 0】,則不發(fā)生誤碼 disp('接收到的碼字無錯(cuò)誤。'); E=dec2bin(0,7); %E是傳輸中產(chǎn)生的錯(cuò)碼行矩陣,E=B-A=【0 0 0 0 0 0 0】end for i=1:1:7if S=H(:,i)' %通過S2 S1 S0序列來判斷第幾位出錯(cuò) E=dec2bin(2(7-i),7); %計(jì)算出錯(cuò)碼行矩陣E fprintf('錯(cuò)誤出現(xiàn)在第%1.0f位n',i); break; end end a=mod(B-E,2); %計(jì)算原發(fā)送碼序列 disp('原發(fā)送碼字為:'); di

8、sp(a) F=a(1:4); %取出前四位信息位 disp('原信息序列為'); disp(F);四、實(shí)驗(yàn)截圖五、心得體會(huì)通過這次編程作業(yè),我學(xué)到了很多知識,不僅對74漢明碼的編碼譯碼的原理爛熟于心,還熟悉了Matlab軟件的操作以及Matlab的一些語法。一開始編程的時(shí)候,碰到了很多問題,比如Matlab軟件不會(huì)用,搞不清楚生成矩陣、校驗(yàn)矩陣、校正子等概念,通過翻書、查閱資料,終于把概念理清了。在編程過程中,我知道74漢明碼的最小碼距是3,可糾錯(cuò)1位,檢錯(cuò)2位。于是我就思考,如何實(shí)現(xiàn)檢錯(cuò)兩位并報(bào)錯(cuò)呢?經(jīng)過我的思考,我認(rèn)識到自己的思維的錯(cuò)誤。當(dāng)發(fā)生兩位錯(cuò)碼時(shí),由于最小碼距是3

9、,無法判斷到底是錯(cuò)了一位還是錯(cuò)了兩位。又由于錯(cuò)兩位的概率遠(yuǎn)遠(yuǎn)小于錯(cuò)一位的概率,所以我們只討論錯(cuò)一位的情況。六、源代碼function fun1()%編碼模塊G=1 0 0 0 1 1 1;0 1 0 0 1 1 0;0 0 1 0 1 0 1;0 0 0 1 0 1 1; %生成矩陣 a=input('輸入待編碼序列(1×4的0,1矩陣):'); c=mod(a*G,2); %計(jì)算出編碼后的序列(74漢明碼)disp('編碼后序列為:'); disp(c); %打印輸出編碼后的序列%產(chǎn)生誤碼模塊x=c; %將c矩陣的值賦給XJ=input('請

10、輸入一位出現(xiàn)誤碼的概率'); %設(shè)置一位誤碼發(fā)生的概率if unifrnd(0,1)<J %通過均勻分布產(chǎn)生的隨機(jī)數(shù)來判斷在誤碼率J下,是否發(fā)生誤碼L=unidrnd(7); %產(chǎn)生從1到7的隨機(jī)整數(shù),設(shè)置第幾位出錯(cuò)x(1,L)=xor(x(1,L),1); %通過將矩陣x的第L位與1異或,從而實(shí)現(xiàn)取反,進(jìn)而產(chǎn)生誤碼enddisp('經(jīng)過傳輸后,接收到的序列為');disp(x); %打印輸出誤碼后的模塊%譯碼模塊H=1 1 1 0 1 0 0 ;1 1 0 1 0 1 0;1 0 1 1 0 0 1; %校驗(yàn)矩陣HB=x; %將誤碼序列x賦給BS=mod(B*H',2); %計(jì)算出校正子S2 S1 S0的序列if S=0 %如果S=【0 0 0】,則不發(fā)生誤碼 disp('接收到的碼字無錯(cuò)誤。'); E=dec2bin(0,7); %E是傳輸中產(chǎn)生的錯(cuò)碼行矩陣,E=B-A=【0 0 0 0 0 0 0】end for i=1:1:7if S=H(:,i)' %通過S2 S1 S0序列來判斷第幾位出錯(cuò) E=dec2bin(2(7-i),7); %計(jì)算出錯(cuò)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論