漢明碼的性能分析(共25頁)_第1頁
漢明碼的性能分析(共25頁)_第2頁
漢明碼的性能分析(共25頁)_第3頁
漢明碼的性能分析(共25頁)_第4頁
漢明碼的性能分析(共25頁)_第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計任務(wù)書學(xué)生姓名: 專業(yè)班級: 通信0906班 指導(dǎo)教師: 尹勇 工作單位: 信息工程學(xué)院 題 目:漢明碼的性能分析初始條件:MATLAB軟件,電腦,通信原理知識要求完成的主要任務(wù):輸入信號:速率為100Bd的矩形信號信道:AWGN 要求:畫出編碼器輸入、輸出信號,信道的輸出信號,譯碼器的輸出信號的波形、頻譜以及誤碼率與譯碼器輸入信噪比的關(guān)系曲線參考書目:徐明遠主編MATLAB仿真在通信與電子工程中的應(yīng)用王興亮主編數(shù)字通信原理與技術(shù)  孫屹 吳磊主編Simulink通信仿真開發(fā)手冊葛哲學(xué)主編精通MATLAB樊昌信 曹麗娜主編通信原理時間安排:第1周,安排任務(wù)(鑒主15

2、樓實驗室)第1-17周,仿真設(shè)計(鑒主13樓計算機實驗室)第18周,完成(答辯,提交報告,演示)指導(dǎo)教師簽名: 年 月 日系主任(或責(zé)任教師)簽名: 年 月 日 目 錄摘要3Abstract41.引言52.設(shè)計原理62.1漢明碼編碼原理62.2漢明碼糾錯原理82.3程序函數(shù)及命令介紹93仿真與程序113.1仿真113.1.1 SIMULINK仿真113.1.2 模塊屬性設(shè)置123.1.3 M文件程序143.1.4仿真結(jié)果153.1.5調(diào)試203.1.6結(jié)果分析203.2程序203.2.1程序203.2.2調(diào)試結(jié)果213.2.3結(jié)果分析224.總結(jié)23參考文獻24摘要隨著信息時代和數(shù)字世界的到來

3、,通信原理已成為當(dāng)今一門極其重要的學(xué)科和技術(shù)領(lǐng)域。在通信原理中起著重要的作用并已獲得廣泛應(yīng)用的是漢明碼。漢明碼是一種能夠自動檢測并糾正一位錯碼的線性糾錯碼,即SEC碼,用于信道編碼與譯碼中,提高通信系統(tǒng)抗干擾的能力。MATLAB是英文MATrix LABoratory(矩陣實驗室)的縮寫。它是美國的MathWorks公司推出的一套用于科學(xué)計算和圖形處理可視化、高性能語言與軟件環(huán)境。它的信號處理工具箱包含了各種經(jīng)典的和現(xiàn)代的數(shù)字信號處理技術(shù),是一個非常優(yōu)秀的算法研究與輔助設(shè)計的工具。在設(shè)計漢明碼建模仿真時,通常采用MATLAB來進行輔助設(shè)計和仿真。 本文主要利用MATLAB中SIMULINK通信

4、系統(tǒng)仿真模型庫進行漢明碼建模仿真,并調(diào)用通信系統(tǒng)功能函數(shù)進行編程,繪制時域波形,頻譜及誤碼率與信噪比關(guān)系曲線圖。在此基礎(chǔ)上,對漢明碼的性能進行分析,得出結(jié)論。關(guān)鍵詞:通信原理 MATLAB 漢明碼 SIMULINK AbstractWith the information age and the advent of the digital world, communication principles has become an extremely important disciplines and technical fields. In communication principles p

5、lays an important role and has been widely used in Hamming Code. Hamming Code is a linear error-correcting code which can automatically detect and correct an error. It is belongs to SEC code and applied to channel encoding and decoding to improve the anti-jamming capacity of the communication system

6、. MATLAB is in English MATrix LABoratory (Matrix Laboratory) acronym. It is the United States, MathWorks has introduced a set of computing and graphics processing for scientific visualization, high-performance language and software environment. Its signal processing toolbox contains a variety of cla

7、ssic and modern digital signal processing technology, is a very good algorithm research and aided design tools. In the design ofhamming code model to simulate , it is usually carried out using MATLAB-aided design and simulation. In this paper, SIMULINK simulation model library of MATLAB is mainly us

8、ed to build hamming code model to simulate. At the same time, communication system functions is called to program. And time-domain waveform, spectrum, the relationship between BER and SNR curve is drawn. On this basis, the property of the hamming code is analyzed to get the conclusion.Keywords:Commu

9、nication Principles MATLAB Hamming Coding SIMULINK 1.引言 MATLAB是矩陣實驗室(Matrix Laboratory)的簡稱,是美國MathWorks公司出品的商業(yè),用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級技術(shù)計算語言和交互式環(huán)境,其中,MATLAB通信工具箱是一套用于在通信領(lǐng)域進行理論研究、系統(tǒng)開發(fā)、分析設(shè)計和仿真的專業(yè)化工具軟件包。主要包括MATLAB和Simulink兩大部分。MATLAB通信系統(tǒng)功能函數(shù)庫由七十多個函數(shù)組成,每個函數(shù)有多種選擇參數(shù)、函數(shù)功能覆蓋了現(xiàn)代通信系統(tǒng)的各個方面。這些函數(shù)包括:信號源產(chǎn)生函數(shù)、信源

10、編碼解碼函數(shù)、糾錯控制編碼解碼函數(shù)、調(diào)制解調(diào)函數(shù)(基帶和通帶)、濾波器函數(shù)、傳輸信道模型函數(shù)(基帶和通帶)、TDMA、FDMA、CDMA函數(shù)、同步函數(shù)、工具函數(shù)等。以糾錯控制編解碼函數(shù)為例:函數(shù)庫提供了線性分組碼、漢明碼、循環(huán)碼、BCH碼、里德一索洛蒙碼(REEDSOLOMON)、卷積碼等6種糾錯控制編碼,每種編碼又有編碼、解碼、矢量輸入輸出、序列輸入輸出等四種形式的函數(shù)表達。 Simulink是MATLAB中的一種可視化仿真工具,是一種基于MATLAB的框圖設(shè)計環(huán)境,是實現(xiàn)動態(tài)系統(tǒng)建模、仿真和分析的一個,被廣泛應(yīng)用于、非線性系統(tǒng)、數(shù)字控制及數(shù)字信號處理的建模和仿真中。Simulink是用于動

11、態(tài)系統(tǒng)和嵌入式系統(tǒng)的多領(lǐng)域仿真和基于模型的設(shè)計工具。對各種,包括通訊、控制、信號處理、視頻處理和,Simulink提供了交互式圖形化環(huán)境和可定制模塊庫來對其進行設(shè)計、仿真、執(zhí)行和測試。漢明碼是由Hamming首先構(gòu)造的,它是一種能夠自動檢測并糾正一重錯的線性糾錯碼,即SEC( Error Correcting)碼。漢明碼利用了的概念,通過在數(shù)據(jù)位后面增加一些比特,可以驗證數(shù)據(jù)的有效性。利用一個以上的校驗位,漢明碼不僅可以驗證數(shù)據(jù)是否有效,還能在數(shù)據(jù)出錯的情況下指明錯誤位置。它不僅性能好,而且編譯碼非常簡單,易于實現(xiàn)。從20世紀50年代問世以來,在提高系統(tǒng)可靠性方面獲得了廣泛的應(yīng)用。2.設(shè)計原理

12、2.1漢明碼編碼原理一般來說,若漢明碼長為n,信息位數(shù)為k,則監(jiān)督位數(shù)r=n-k。若希望用r個監(jiān)督位構(gòu)造出r個監(jiān)督關(guān)系式來指示一位錯碼的n種可能位置,則要求 或 (公式2-1)下面以(7,4)漢明碼為例說明原理: 設(shè)漢明碼(n,k)中k=4,為了糾正一位錯碼,由式(1)可知,要求監(jiān)督位數(shù)r3。若取r=3,則n=k+r=7。我們用來表示這7個碼元,用的值表示3個監(jiān)督關(guān)系式中的校正子,則的值與錯誤碼元位置的對應(yīng)關(guān)系可以規(guī)定如表2-1所列。表2-1 校正子和錯碼位置的關(guān)系錯碼位置錯碼位置 001101 010 110 100 111 011000無錯碼則由表1可得監(jiān)督關(guān)系式: (公式2-2) (公式

13、2-3) (公式2-4)在發(fā)送端編碼時,信息位的值決定于輸入信號,因此它們是隨機的。監(jiān)督位、應(yīng)根據(jù)信息位的取值按監(jiān)督關(guān)系來確定,即監(jiān)督位應(yīng)使式(2)式(4)中、的值為0(表示編成的碼組中應(yīng)無錯碼) (公式2-5)式(5)經(jīng)過移項運算,接觸監(jiān)督位 (公式2-6)式(5)其等價形式為: (公式2-7)式(6)還可以簡記為 或 (公式2-8)其中 所以有 (公式2-9) 式(6)等價于(公式2-10)其中Q為P的轉(zhuǎn)置,即 (公式2-11)式(10)表示,在信息位給定后,用信息位的行矩陣乘矩陣Q就產(chǎn)生出監(jiān)督位。我們將Q的左邊加上一個k×k階單位方陣,就構(gòu)成一個矩陣G (公式2-12)G稱為生

14、成矩陣,因為由它可以產(chǎn)生整個碼組,即有 (公式2-13)或者 (公式2-14)式(13)即漢明碼的編碼原理2.2漢明碼糾錯原理 當(dāng)數(shù)字信號編碼成漢明碼形式后在信道中傳輸,由于信道中噪聲的干擾,可能由于干擾引入差錯,使得接收端收到錯碼,因此在接收端進行漢明碼糾錯,以提高通信系統(tǒng)的抗干擾能力及可靠性。 一般來說接收碼組與A不一定相同。若設(shè)接收碼組為一n列的行矩陣B,即 (公式2-15)則發(fā)送碼組和接收碼組之差為 (公式2-16) E就是傳輸中產(chǎn)生的錯碼行矩陣 (公式2-17)若ei=0,表示接收碼元無錯誤,若ei=1,則表示該接收碼元有錯。式(16)可改寫成 (公式2-18) 若E=0,即接收碼組

15、無錯,則,將它代人式(8),該是仍成立,即有 (公式2-19)當(dāng)接收碼組有錯時,E0,將B帶入式(8)后,該式不一定成立。在未超過檢錯能力時,式(19)不成立。假設(shè)此時式(19)的右端為S,即 (公式2-20)將 代入式(20),可得由式(8)可知,所以 (公式2-21)此處S與前面的有著一一對應(yīng)關(guān)系,則S能代表錯碼位置。因此,糾錯原理即,接收端收到碼組后按式(20)計算出S,再根據(jù)表1判斷錯碼情況,進行差錯糾正。2.3程序函數(shù)及命令介紹 MATLAB中提供了漢明碼的編碼和譯碼函數(shù),本程序直接調(diào)用進行編程。(1)encode函數(shù)功能:編碼函數(shù)語法:code=encode(msg,N,K)說明:

16、對信息msg進行漢明編碼,K為信息位長度,N為碼字長度。msg是一個K列矩陣。(2)decode函數(shù)功能:譯碼函數(shù)語法:rcvcode=decode(code,N,K)說明:對接受碼字進行譯碼,恢復(fù)出原始信息。(3) rand函數(shù)功能:均勻分布用法:rand(m,n),說明:產(chǎn)生m×n均勻分布的隨機矩陣,rand產(chǎn)生的是0到1(不包括1)的偽隨機數(shù)。(4) rem函數(shù)功能:求整除余數(shù)用法:rem(x,y)說明:求整除x/y的余數(shù)(5) length命令:計算向量或矩陣長度(6) sim命令:開始進行仿真(7) disp命令:顯示結(jié)果,不顯示變量名3仿真與程序3.1仿真3.1.1 SI

17、MULINK仿真在設(shè)計中,本系統(tǒng)信號產(chǎn)生模塊選用伯努利二進制序列產(chǎn)生器(Bernoulli Binary Generator)來輸出速率為100Bd的隨機數(shù)字信號,進入Hamming encoder進行編碼,在送入AWGN信道(加入高斯白噪聲)傳輸,接收信號送入Hamming decoder進行差錯糾正,其后加一誤碼率計算模塊(Error Rate Calculation)計算誤碼率。再用示波器scope觀察波形,用spectrum scope觀測頻譜。由To Workspace模塊將運算結(jié)果送入M文件,并畫出信噪比與誤碼率關(guān)系的曲線。電路如圖3-6所示。 圖3-1 SIMULINK仿真電路圖

18、3.1.2 模塊屬性設(shè)置 圖3-2 Bernoulli Binary Generator 圖3-3 AWGNA Channel 圖3-4 Error Rate Calculation 圖3-5 To Workplace 圖3-6 Spectrum Scope3.1.3 M文件程序x=0:30 %定義信噪比的范圍 y=x;for i=1:length(x)xSNR=x(i); %輸入信噪比sim('hammingmat'); %運行Simulink仿真模型hammingmat ,運算結(jié)果保存在xerrorrate中y(i)=xerrorrate(1); %誤碼率endsemilo

19、gy(x,y); %對y取對數(shù)畫圖 grid on; %畫網(wǎng)格圖xlabel('高斯信道中的信噪比/dB'); ylabel('誤碼率');title('漢明碼誤碼率與信噪比的關(guān)系')3.1.4仿真結(jié)果圖3-7 Bernoulli Binary Generator輸出信號波形圖3-8 Bernoulli Binary Generator輸出信號頻譜圖3-9 Hamming Encoder輸出信號圖3-10 Hamming Encoder輸出信號頻譜圖3-11 AWGN Channel輸出信號圖3-12 AWGN Channel輸出信號頻譜圖3-1

20、3 Hamming decoder輸出信號圖3-14 Hamming decoder輸出信號頻譜圖3-15 SNR=10dB的誤碼率圖3-16 輸入信噪比與輸出誤碼率的關(guān)系曲線圖3.1.5調(diào)試 運行M文件后,畫出的信噪比和誤碼率關(guān)系的曲線為一條直線。 調(diào)試方法:將誤碼率計算模塊的屬性時延由1改為0,將to workplace'的屬性中的limit data points to last改為1,且sim函數(shù)括號中內(nèi)容應(yīng)與仿真模塊名相同,信道模塊的信噪比應(yīng)該設(shè)為變量,才能畫出表示信噪比和誤碼率關(guān)系的曲線。3.1.6結(jié)果分析通過仿真結(jié)果可知:(1) 漢明碼可以降低誤碼率,提高系統(tǒng)抗干擾能力。

21、(2) 隨著信噪比的增大,誤碼率逐漸減小,最終趨近于0。(3) 信源信號經(jīng)過信道加噪聲后,頻率分量增多,經(jīng)過譯碼器譯碼后,頻率分量減少,但還是比信源的多。 3.2程序3.2.1程序K=4; %信息位長N=7; %碼長msg=randint(100,4,2) %產(chǎn)生隨機二進制碼,100行4列code=encode(msg,N,K) %對msg漢明編碼code_noise=rem(code+rand(100,7)>0.95,2 ) %信道輸出(加噪后>0.95為1)rcv=decode(code_noise,N,K) %對信道輸出信號漢明譯碼disp('信道輸出誤碼率: 

22、9; num2str(symerr(code,code_noise)/length(code)disp('譯碼器輸出信號誤碼率: ' num2str(symerr(msg,rcv)/length(msg)%計算誤碼率3.2.2調(diào)試結(jié)果 圖3-17 信源信號 圖3-18 編碼器輸出信號 圖3-19 信道輸出信號 圖3-20 譯碼器輸出信號 圖3-21 誤碼率3.2.3結(jié)果分析 由實驗結(jié)果可知在四位信息位中加三位監(jiān)督碼,及漢明碼編碼、解碼,有一定的糾錯能力,能減少經(jīng)過信道加的噪聲的的影響,降低誤碼率,同時,漢明碼也增加了傳輸信號的帶寬。 4.總結(jié)通過本次課程設(shè)計,我收獲了很多:一、我對MATLAB軟件有了較深的了解,并且學(xué)會了SIMULINK仿真的基本方法。這次課程設(shè)計是我第一次接觸到SIMULINK ,剛開始我無從下手,不知所措,后來經(jīng)過問同學(xué)、去圖書館資查料、上網(wǎng)查資料,逐漸了解了SIMULLINK是MATLAB提供的用于對動態(tài)系統(tǒng)進行建模、仿真和分析的工具包,并且學(xué)會了它的基本使用方法。并在調(diào)試過程不斷出錯的過程中,不斷加強了對SIMULINK的掌握程度,能夠?qū)IMULINK仿真和M文件相結(jié)合,分析漢明碼信噪比與誤碼率的關(guān)系。二、本次課程設(shè)計鍛煉了我獨立解決問題的能力。剛看到題目時我一點

溫馨提示

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

最新文檔

評論

0/150

提交評論