




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、青 島 農(nóng) 業(yè) 大 學(xué)本 科 生 課 程 論 文論 文 題 目 MATLAB在編碼技術(shù)分析中的應(yīng)用 學(xué)生專業(yè)班級(jí) 信息與計(jì)算科學(xué)2009級(jí)2班 學(xué)生姓名(學(xué)號(hào)) (20094051) 指 導(dǎo) 教 師 吳 慧 完 成 時(shí) 間 2012年6月30日 2012 年 7 月 1 日課 程 論 文 任 務(wù) 書學(xué)生姓名 指導(dǎo)教師 吳慧 論文題目 MATLAB在編碼技術(shù)分析中的應(yīng)用 論文內(nèi)容(需明確列出研究的問(wèn)題):MATLAB是集數(shù)值計(jì)算、符號(hào)計(jì)算和圖形可視化三大基本能功能于一體的工程計(jì)算軟件。首先,本文以香農(nóng)編碼為例介紹信源編碼技術(shù)的MATLAB分析,對(duì)香農(nóng)編碼的編碼原理和步驟進(jìn)行說(shuō)明并給出了香農(nóng)編碼的
2、MATLAB參考程序。其次,以漢明碼為例介紹信道編碼技術(shù)的MATLAB編程與仿真,闡釋了漢明編碼的主要原理并給出了相應(yīng)的參考程序,對(duì)MATLAB中的SIMULINK仿真環(huán)境進(jìn)行簡(jiǎn)要介紹,并作出漢明碼的編解碼仿真系統(tǒng)。最后,給出三個(gè)具體實(shí)例對(duì)香農(nóng)編碼進(jìn)行結(jié)果分析,對(duì)簡(jiǎn)單的SIMULINK仿真模型作出介紹,對(duì)具體(7,4)漢明碼,設(shè)計(jì)出相應(yīng)的編碼程序和仿真模型電路圖并運(yùn)行輸出波形圖。 資料、數(shù)據(jù)、技術(shù)水平等方面的要求: 論文要符合一般學(xué)術(shù)論文的寫作規(guī)范,具備學(xué)術(shù)性、科學(xué)性和一定的創(chuàng)造性。文字要流暢、語(yǔ)言要準(zhǔn)確、論點(diǎn)要清楚、論據(jù)要準(zhǔn)確、論證要完整、嚴(yán)密,有獨(dú)立的觀點(diǎn)和見(jiàn)解。內(nèi)容要理論聯(lián)系實(shí)際,計(jì)算數(shù)
3、據(jù)要求準(zhǔn)確,涉及到他人的觀點(diǎn)、統(tǒng)計(jì)數(shù)據(jù)或計(jì)算公式等要標(biāo)明出處,結(jié)論要寫的概括簡(jiǎn)短。參考文獻(xiàn)的書寫按論文中引用的先后順序連續(xù)編碼。 發(fā)出任務(wù)書日期 2012.6.15 完成論文日期 2012.6.30 教研室意見(jiàn)(簽字) 院長(zhǎng)意見(jiàn)(簽字) 注:此表裝訂在課程論文之前。MATLAB在編碼技術(shù)分析中的應(yīng)用信息與計(jì)算科學(xué)專業(yè) 指導(dǎo)老師 吳 慧摘要: MATLAB是集數(shù)值計(jì)算、符號(hào)計(jì)算和圖形可視化三大基本能功能于一體的工程計(jì)算軟件。首先,本文以香農(nóng)編碼為例介紹信源編碼技術(shù)的MATLAB分析,對(duì)香農(nóng)編碼的編碼原理和步驟進(jìn)行說(shuō)明并給出了香農(nóng)編碼的MATLAB參考程序。其次,以漢明碼為例介紹信道編碼技術(shù)的MA
4、TLAB編程與仿真,闡釋了漢明編碼的主要原理并給出了相應(yīng)的參考程序,對(duì)MATLAB中的SIMULINK仿真環(huán)境進(jìn)行簡(jiǎn)要介紹,并作出漢明碼的編解碼仿真系統(tǒng)。最后,給出三個(gè)具體實(shí)例對(duì)香農(nóng)編碼進(jìn)行結(jié)果分析,對(duì)簡(jiǎn)單的SIMULINK仿真模型作出介紹,對(duì)具體(7,4)漢明碼,設(shè)計(jì)出相應(yīng)的編碼程序和仿真模型電路圖并運(yùn)行輸出波形圖。關(guān)鍵詞: MATLAB 香農(nóng)編碼 SIMULINK 漢明碼 仿真MATLAB in encoding technology application of analysisStudent majoring in Information and Computing Science Y
5、igang XuTutor Hui WuAbstract: MATLAB is an engineering calculation software which set numerical calculation, symbol computing and graphics visualization three basic function in the integration o f one body. First of all, the paper use Shannon coding for example to recommend the source coding technol
6、ogy of MATLAB analysis , explain the coding of Shannon encoding principle and process, give the Shannon coding of MATLAB reference program. Second, take the hamming plain code for example introduction channel coding technology of MATLAB programming and simulation, explaining the main principle of ha
7、mming coding and giving some reference program. This paper briefly introduces the MATLAB SIMULINK condition make hamming plain code codec simulation system. Last, the test give three specific examples to analysis the result of Shannon code, introduced the simple SIMULINK model. To the specific (7, 4
8、) hamming plain code, design corresponding coding procedure and simulation model circuit diagram and output waveform figure.Key words: MATLAB Shannon code SIMULINK hamming code simulat引言 MATLAB是由美國(guó)Mathworks公司開(kāi)發(fā)的集數(shù)值計(jì)算、符號(hào)計(jì)算和圖形可視化三大基本能功能于一體的工程計(jì)算軟件。經(jīng)過(guò)不斷完善,MATLAB已經(jīng)發(fā)展稱為適合多學(xué)科、功能強(qiáng)大的大型軟件。MATLAB已經(jīng)稱為線性代數(shù)、數(shù)值分析、
9、自動(dòng)控制理論、數(shù)字信號(hào)處理、信號(hào)系統(tǒng)、動(dòng)態(tài)系統(tǒng)仿真等多門課程的教學(xué)工具,稱為設(shè)計(jì)研究應(yīng)該和必須掌握的基本技能。幾乎在工程與科學(xué)研究的各個(gè)學(xué)科,都能在MATLAB里找到合適的功能。針對(duì)MATLAB在編碼技術(shù)分析中的應(yīng)用,本文以香農(nóng)編碼為例介紹信源編碼技術(shù)的MATLAB分析,以漢明碼為例介紹信道編碼技術(shù)的MATLAB編程與仿真。在對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行仿真和分析時(shí)利用MATLAB通信工具箱來(lái)完成。MATLAB通信工具箱由兩大部分組成:通信系統(tǒng)功能函數(shù)庫(kù)和SIMULINK通信系統(tǒng)仿真模型庫(kù)1。在SIMULINK仿真模型庫(kù)中,整個(gè)通信系統(tǒng)的流程圖被概括為:信號(hào)的產(chǎn)生與輸出、編碼與解碼、調(diào)制與解調(diào)。SIMULI
10、NK仿真的三個(gè)步驟:模型創(chuàng)建與定義、模型的分析、模型的修正。重復(fù)執(zhí)行上述三個(gè)步驟可以實(shí)現(xiàn)系統(tǒng)的最優(yōu)化。1. 信源編碼技術(shù)的MATLAB分析信源編碼的目的是要減少冗余,提高編碼效率,即針對(duì)信源輸出符號(hào)序列的統(tǒng)計(jì)特性,尋找合適的方法把信源輸出符號(hào)序列變換為最短的麻子序列。香農(nóng)編碼技術(shù)作為變長(zhǎng)信源編碼的重要方法之一,具有重要的理論指導(dǎo)意義。下面主要介紹香農(nóng)編碼的MATLAB實(shí)現(xiàn)進(jìn)而說(shuō)明MATLAB在信源編碼技術(shù)分析中的應(yīng)用。1.1 香農(nóng)編碼原理及編碼步驟 香農(nóng)第一定理指出了平均碼長(zhǎng)與信源之間的關(guān)系,同時(shí)也指出了可以通過(guò)編碼使平均碼長(zhǎng)達(dá)到極限值香農(nóng)第一定理2指出,可以選擇每個(gè)碼字的長(zhǎng)度滿足關(guān)系式 .式
11、(1)按上式選擇的碼長(zhǎng)構(gòu)成的碼稱為香農(nóng)碼。其編碼步驟如下:(1)將q個(gè)信源符號(hào)按概率遞減的方法進(jìn)行排列: (2)按式(1)計(jì)算出每個(gè)信源符號(hào)的碼長(zhǎng)。(3)為了編成唯一可譯碼,計(jì)算第i個(gè)信源符號(hào)的累加概率: (4)將累加概率Gi用二進(jìn)制數(shù)表示。(5)取Gi對(duì)應(yīng)的二進(jìn)制數(shù)的小數(shù)點(diǎn)后li位構(gòu)成該信源符號(hào)的二進(jìn)制碼字。1.2 二元香農(nóng)編碼的MATLAB程序利用MATLAB編程可以快速給出任意信源的香農(nóng)編碼,給出二元香農(nóng)編碼的參考程序如下:N=input('N='); %輸入信源符號(hào)的個(gè)數(shù)s=0;l=0;H=0;for i=1:N p(i)=input('p='); %輸
12、入信源符號(hào)概率分布矢量,p(i)<1 s=s+p(i) H=H+(-p(i)*log2(p(i); %計(jì)算信源信息熵I(i)=-log2(p(i); %計(jì)算自信息量endif abs(s-1)>0, error('不符合概率分布')end for i=1:N-1 for j=i+1:N if p(i)<p(j) m=p(j); p(j)=p(i); p(i)=m; end endend %按概率分布大小對(duì)信源排序for i=1:N a=-log2(p(i); if mod(a,1)=0 w=a; else w=fix(a+1); end %計(jì)算各信源符號(hào)的碼長(zhǎng)
13、 l=l+p(i)*w; %計(jì)算平均碼長(zhǎng)end l=l;n=H/l; %計(jì)算編碼效率P(1)=0for i=2:N P(i)=0; for j=1:i-1 P(i)=P(i)+p(j); endend %計(jì)算累加概率for i=1:N for j=1:w W(i,j)=fix(P(i)*2); P(i)=P(i)*2-fix(P(i)*2); endend %將累加概率轉(zhuǎn)化為L(zhǎng)(i)位二進(jìn)制碼字disp(W) %顯示碼字disp(l) %顯示平均碼長(zhǎng)disp(n) %顯示編碼效率 disp(I) %顯示自信息量 2. 信道編碼技術(shù)的MATLAB編程與仿真在數(shù)字通信系統(tǒng)中由于信道內(nèi)存在加性噪聲及
14、信道傳輸特性不理想等容易造成碼間串?dāng)_同時(shí)多用戶干擾、多徑傳播和功率限制等也導(dǎo)致錯(cuò)誤譯碼4。為了確保系統(tǒng)的誤比特率指標(biāo)通常采用信道編碼。信道編碼是為了保證信息傳輸?shù)目煽啃?、提高傳輸質(zhì)量而設(shè)計(jì)的一種編碼。它是在信息碼中增加一定數(shù)量的多余碼元,使碼字具有一定的抗干擾能力。信道編碼的實(shí)質(zhì)就是在信息碼中增加一定數(shù)量的多余碼元(稱為監(jiān)督碼元),使它們滿足一定的約束關(guān)系,這樣由信息碼元和監(jiān)督碼元共同組成一個(gè)由信道傳輸?shù)拇a字。舉例而言,欲傳輸k位信息,經(jīng)過(guò)編碼得到長(zhǎng)為n(n>k)的碼字,則增加了 n - k = r 位多余碼元,我們定義 R = k / n 為編碼效率。3下面主要以漢明碼為例介紹信道編碼
15、技術(shù)的MATLAB編程。2.1 漢明碼編碼原理及步驟 對(duì)于任意正整數(shù),存在具有碼長(zhǎng) ,信息位數(shù) ,監(jiān)督位數(shù) ,最小距離 等參數(shù)的二進(jìn)制漢明碼給定m后,即可構(gòu)造出具體的漢明碼,這可以從建立一致校驗(yàn)矩陣入手。我們知道,矩陣的列數(shù)就是碼長(zhǎng),行數(shù)等于。例如,若取,根據(jù)二進(jìn)制漢明碼的參數(shù)可算出,因而是(7,4)線性碼。其矩陣正是個(gè)非零三維列向量構(gòu)成的。如矩陣可為此時(shí),矩陣的列所對(duì)應(yīng)的十進(jìn)制數(shù)正好是,對(duì)于糾正一位差錯(cuò)來(lái)說(shuō),其伴隨式的值就等于對(duì)應(yīng)的矩陣的列矢量即錯(cuò)誤位置。所以,這種形式的矩陣構(gòu)成的碼很便于糾錯(cuò),但這是非系統(tǒng)的(7,4)漢明碼的一致校驗(yàn)矩陣。如果要得到系統(tǒng)碼,可通過(guò)調(diào)整各列的次序來(lái)實(shí)現(xiàn)有了,就
16、可得到系統(tǒng)碼的校驗(yàn)位,其相應(yīng)的生成矩陣為設(shè)碼字,根據(jù)(或)和關(guān)系式,有2.2 (7,4)漢明碼編碼的MATLAB程序 漢明碼是最小碼距為3,能糾正一位錯(cuò)的線性分組碼。漢明碼有許多很好的性質(zhì),它可以用一種簡(jiǎn)潔有效的方法進(jìn)行譯碼5。由于它的編、譯碼較簡(jiǎn)單,且較容易實(shí)現(xiàn)而在計(jì)算機(jī)系統(tǒng)中被廣泛采用。給出(7,4)漢明碼編碼的MATLAB參考程序及注釋如下:N=7;%N為總長(zhǎng),包括數(shù)據(jù)位和漢明碼位msg=input(此處輸入信息矩陣); %外部輸入信號(hào)m,n=size(msg);%返回矩陣的行數(shù)m(即幾組信號(hào)),列數(shù)n(即數(shù)據(jù)的位數(shù))T=(0:m-1)'t=(0:n-1)'msn=msg
17、(T+1,rem(t,n)+1)%從輸入的信息矩陣中抽出msn矩陣,作為輸入函數(shù)code=encode(msg,N,n,hamming) %直接調(diào)用MATLAB庫(kù)函數(shù)進(jìn)行漢明編碼code_noise=rem(code+rand(m,N)>0.95,2 ) %加噪聲,rand產(chǎn)生10行7列隨機(jī)矩陣rcv=decode(code_noise,N,n,hamming) %漢明譯碼disp('Error rate in the received code: ' num2str(symerr(code,code_noise)/length(code)%計(jì)算收到的數(shù)據(jù)的誤碼率disp
18、('Error rate after decode: ' num2str(symerr(msg,rcv)/length(msg)%計(jì)算譯碼后的誤碼率(即整個(gè)系統(tǒng)的誤碼率)%symerr比較兩個(gè)數(shù)據(jù)集計(jì)算出兩者的不同符號(hào)的個(gè)數(shù)和誤符號(hào)率。%number,ratio=symerr(x,y),其中number為符號(hào)不同的數(shù)目,ratio等于%number/min(x,y)%num2str函數(shù)將數(shù)字轉(zhuǎn)化為字符串x=0:20 %定義信噪比的范圍為120 for i=1:length(x)xSNR=x(i); %AWGN信道中的信噪比依次取x中的元素sim('fangzhen
19、9;);%運(yùn)行fangzhen 仿真文件得到誤碼率存在工作區(qū)變量xErrorRate中y(i)=mean(xErrorRate); %失算xRrrorRate的均值作為本次仿真的誤碼率endsemilogy(x,y,-p); %semilogy函數(shù)對(duì)y求對(duì)數(shù)畫圖,點(diǎn)顯示為星形 xlabel('高斯信道中的信噪比/dB');%寫x坐標(biāo)ylabel('誤碼率');%寫y坐標(biāo)gride on;%畫網(wǎng)格表2.3 SIMULINK環(huán)境簡(jiǎn)介SIMULINK 提供了圖形化用戶界面,只需單擊鼠標(biāo)就可以輕易地模型的創(chuàng)建、調(diào)試和仿真工作,用戶不需專門掌握一種程序設(shè)計(jì)語(yǔ)言6。SIMU
20、LINK可將系統(tǒng)分為從高級(jí)到低級(jí)的幾個(gè)層次,每層又可以細(xì)分為幾個(gè)部分,每層系統(tǒng)構(gòu)建完成后,將各層次連接起來(lái)就可以構(gòu)成一個(gè)完整的系統(tǒng)。模型創(chuàng)建完成后,可以啟動(dòng)系統(tǒng)的仿真功能分析系統(tǒng)的動(dòng)態(tài)特性,其內(nèi)置的分析工具包括各種仿真算法、系統(tǒng)線性化、尋求平衡點(diǎn)等。仿真結(jié)果可以用圖形方式在示波器窗口顯示,也可將輸出結(jié)果以變量形式保存起來(lái),并輸入到MATLAB中可以完成進(jìn)一步的分析。在SIMULINK系統(tǒng)仿真模型庫(kù)中,整個(gè)通信系統(tǒng)的流程圖被概括為:信號(hào)的產(chǎn)生與輸出、編碼與解碼、調(diào)制與解調(diào)。在SIMULINK中,通信系統(tǒng)仿真的一般模型如圖(1) 一般的通信系統(tǒng)仿真模型調(diào)制糾錯(cuò)控制編碼信源編碼信源接收機(jī)/濾波器 信
21、道發(fā)射機(jī)/濾波器多址復(fù)用糾錯(cuò)控制解碼解調(diào)多址復(fù)用信源解碼輸出 圖12.4 漢明碼編解碼的SIMULINK仿真在設(shè)計(jì)中,仿真系統(tǒng)由信號(hào)產(chǎn)生模塊、信號(hào)漢明編碼模塊、AWGN信道、信號(hào)漢明譯碼模塊、誤碼率計(jì)算模塊以及示波器圖形觀察模塊組成。系統(tǒng)信號(hào)產(chǎn)生模塊選用From workspace,從工作區(qū)調(diào)用msn矩陣(其實(shí)與輸入信息矩陣msg為同一矩陣,只不過(guò)為T的函數(shù)),進(jìn)入Hamming encoder進(jìn)行編碼,再送入AWGN信道(加入高斯白噪聲)傳輸,接收信號(hào)送入Hamming decoder進(jìn)行差錯(cuò)糾正,其后加一誤碼率計(jì)算模塊(Error Rate Calculation)計(jì)算誤碼率。再用示波器s
22、cope觀察波形。 3. 實(shí)例分析下面給出香農(nóng)編碼的MATLAB實(shí)現(xiàn)和簡(jiǎn)單的SIMULINK模型以及(7,4)漢明碼編解碼的MATLAB編程和仿真的具體實(shí)例。3.1 實(shí)例一:香農(nóng)編碼的實(shí)例分析根據(jù)二元香農(nóng)編碼的參考程序?qū)M(jìn)行香農(nóng)編碼結(jié)果如下:P =0 0.20 0.39 0.57 0.74 0.89 0.99 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 1 0 0 0 1 1 0 0 1 0 0 0 1 0 1 1 1 1 0 1 1 1 0 0 0 1 1 1 1 1 1 1 0 3.1400 0.8308 2.3219 2.3959 2.4739 2.5564 2.73
23、70 3.3219 6.6439結(jié)果分析:概率和S為1,符合概率分布。累加概率分別為0,0.20,0.39,0.57,0.74,0.89,0.99。自信息量分別為,。所以的碼字長(zhǎng)度分別為3,3,3,3,3,4,7;碼字分別為000,001,011,100,101,1110,1111110。3.2 實(shí)例二:簡(jiǎn)單的SIMULINK仿真模型創(chuàng)建一個(gè)簡(jiǎn)單的SIMULINK仿真模型正弦信號(hào)的仿真模型如下:在MATLAB的命令窗口運(yùn)行SIMULINK命令,打開(kāi)模塊庫(kù)瀏覽器窗口。新建一個(gè)名為untitled的空白模型窗口。在子模塊窗口選擇對(duì)應(yīng)的輸入和輸出信號(hào)源模塊,并作出電路圖開(kāi)始仿真結(jié)果如圖:正弦信號(hào)SIMULINK模型電路圖 圖2正弦信號(hào)波形圖 圖33.3 實(shí)例三(7,4)漢明碼編解碼的MATLAB編程和仿真用MATLAB軟件將(7,4)漢明碼編碼的MATL
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 咋樣寫供貨合同范本
- 發(fā)改ppp合同范本
- 買賣銅幣合同范本
- 可再生能源項(xiàng)目合同范本
- 品牌股權(quán)合同范本
- 啟東農(nóng)田流轉(zhuǎn)合同范本
- 廠房帶門面裝修合同范本
- 寫抖音合同范例
- 買房簽意向合同范例
- 動(dòng)物實(shí)驗(yàn)合同范本
- 雕版印刷術(shù)的發(fā)明《金剛經(jīng)》課件
- 國(guó)際合規(guī)要求與企業(yè)管理
- 巖腳煤礦智能化綜采工作面匯報(bào)材料2020.11.10.11.10
- 餐廳每日清潔計(jì)劃
- 數(shù)據(jù)湖構(gòu)建及應(yīng)用場(chǎng)景
- 切格瓦拉完整
- 高考小說(shuō)閱讀強(qiáng)化訓(xùn)練:孫犁小說(shuō)專題(附答案解析)
- 向云端二聲部五線正譜
- 部編版六年級(jí)下冊(cè)道德與法治全冊(cè)表格式教學(xué)設(shè)計(jì)
- 兵團(tuán)歷史與兵團(tuán)精神課件
評(píng)論
0/150
提交評(píng)論