版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
...wd......wd......wd...畢業(yè)論文〔設(shè)計(jì)〕題目:基于matlab的信道編碼仿真學(xué)號:姓名:年級:學(xué)院:信息科學(xué)技術(shù)學(xué)院系別:電子信息工程專業(yè):電子信息工程指導(dǎo)教師:完成日期:摘要通信技術(shù)的飛速開展,信道編碼已經(jīng)成功地應(yīng)用于各種通信系統(tǒng)中。以及各種傳輸方式對可靠性要求的不斷提高,信道編碼技術(shù)作為抗干擾技術(shù)的一種重要的手段,在數(shù)字通信技術(shù)領(lǐng)域和數(shù)字傳輸系統(tǒng)中顯示出越來越重要的作用。信道編碼的目的是為了改善通信系統(tǒng)的傳輸質(zhì)量。由于實(shí)際信道存在噪聲和干擾,使發(fā)送的碼字與信道傳輸后所接收的碼字之間存在差異,稱這種差異為過失。一般情況下,信道噪聲、干擾越大,碼字產(chǎn)生過失的概率也就越大。本文利用matlab對二進(jìn)制對稱信道(BSC),高斯白噪聲信道(AWGN)兩種信道的仿真,〔7,4〕Hamming碼對信道的仿真,通過誤碼率的曲線圖來了解信道的編碼。并利用matlab的simulink模塊仿真,運(yùn)用simulink里的卷積碼viterbi譯碼器來對二進(jìn)制對稱信道和高斯白噪聲信道的仿真,觀察誤碼率的曲線圖來了解2個信道的不同。關(guān)鍵字:matlab,信道,編碼,譯碼,Simulink。AbstractWiththerapiddevelopmentofcommunicationtechnology,channelcodinghasbeensuccessfullyappliedtovariouscommunicationssystems.Andavarietyoftransmissionofthecontinuousimprovementofreliabilityrequirements,anti-jammingchannelcodingtechnologyasanimportantmeansoftechnologyinthefieldofdigitalcommunicationstechnologyanddigitaltransmissionsystemsinamoreandmoreimportantrole.
Thepurposeofchannelcodingistoimprovethetransmissionqualityofcommunicationssystems.Astheactualexistenceofthechannelnoiseandinterference,thetransmittedcodewordsandchanneltransmissionreceivedafterthedifferencebetweencodewords,saidthisdifferenceiswrong.Undernormalcircumstances,channelnoise,thegreatertheinterference,thecodewordgeneratedthegreatertheprobabilityoferror.Inthispaper,matlabbinarysymmetricchannel(BSC),Gaussianwhitenoisechannel(AWGN)twochannelsimulation,(7,4)Hammingcodesimulationofthechannel,throughthebiterrorratecurvetounderstandthechannelcoding.Usingmatlabtosimulinkblocksimulation,usingsimulinkintheviterbidecodertoconvolutionalcodesonthebinarysymmetricchannelandGaussianwhitenoisechannelsimulation,observationerrorrategraphstounderstandthetwodifferentchannelsKeywords:matlab,channel,coding,decoding,Simulink.目錄TOC\o"1-4"\h\z\u1引言11.1選題的目的和意義11.2本選題的理論依據(jù)、研究內(nèi)容12.信道編碼以及其運(yùn)行環(huán)境MATLAB的介紹22.1信道編碼的概念及分類22.2信道編碼定理及信道編碼中所包含的各種碼類的簡介22.2.1卷積碼22.2.2線性分組碼32.2.3循環(huán)碼32.3MATLAB語言的簡介42.4Simulink53.信道53.1二進(jìn)制對稱信道〔BSC〕53.2二進(jìn)制刪除信道〔BEC〕63.3高斯白噪聲信道(AWGN)64.Hamming碼74.1漢明碼74.2校驗(yàn)方法74.3漢明碼編碼94.3.1漢明碼對高斯白噪聲信道94.3.2漢明碼對二進(jìn)制對稱信道的仿真115.卷積碼155.1卷積碼定義與原理155.2維特比譯碼原理155.3卷積碼譯碼器對高斯白噪聲信道的設(shè)計(jì)與仿真185.3.1卷積碼譯碼器的設(shè)計(jì)與仿真195.3.2簡化維特比譯碼器的仿真225.3.3卷積碼譯碼器的誤碼率分析245.4卷積編碼器在二進(jìn)制對稱信道〔BSC〕中的性能256.卷積碼譯碼器對二進(jìn)制對稱信道和高斯白噪聲信道仿真比擬307.總結(jié)31致謝32參考文獻(xiàn)33附錄1:34附錄2:37附錄3:40附錄4:411引言1.1選題的目的和意義數(shù)字信號在傳輸中往往由于各種原因,使得在傳送的數(shù)據(jù)流中產(chǎn)生誤碼,從而使接收端產(chǎn)生圖象跳躍、不連續(xù)、出現(xiàn)馬賽克等現(xiàn)象。所以通過信道編碼這一環(huán)節(jié),對數(shù)碼流進(jìn)展相應(yīng)的處理,使系統(tǒng)具有一定的糾錯能力和抗干擾能力,可極大地防止碼流傳送中誤碼的發(fā)生。誤碼的處理技術(shù)有糾錯、交織、線性內(nèi)插等。提高數(shù)據(jù)傳輸效率,降低誤碼率是信道編碼的任務(wù)。信道編碼的本質(zhì)是增加通信的可靠性。但信道編碼會使有用的信息數(shù)據(jù)傳輸減少,信道編碼的過程是在源數(shù)據(jù)碼流中加插一些碼元,從而到達(dá)在接收端進(jìn)展判錯和糾錯的目的。1.2本選題的理論依據(jù)、研究內(nèi)容在數(shù)字通信系統(tǒng)中由于信道內(nèi)存在加性噪聲及信道傳輸特性不理想等容易造成碼間串?dāng)_同時多用戶干擾、多徑傳播和功率限制等也導(dǎo)致錯誤譯碼。為了確保系統(tǒng)的誤比特率指標(biāo)通常采用信道編碼。信道編碼是為了保證信息傳輸?shù)目煽啃?、提高傳輸質(zhì)量而設(shè)計(jì)的一種編碼。它是在信息碼中增加一定數(shù)量的多余碼元,使碼字具有一定的抗干擾能力。提高信息傳輸?shù)挠行院涂煽啃允冀K是通信技術(shù)所追求的目標(biāo),而信道編碼能夠顯著的提升信息傳輸?shù)目煽啃浴:喪鲂诺谰幋a理論,詳細(xì)說明分組碼的編譯原理、實(shí)現(xiàn)方法及檢錯糾錯能力,用MATLAB仿真信道編碼條不同信道下的影響。學(xué)習(xí)卷積碼的根本原理和編碼方法。學(xué)習(xí)根本分組碼的原理和編碼方法。理解二進(jìn)制對稱信道(BSC),二進(jìn)制擦除信道(BEC),高斯白噪聲信道(AWGN)。理解碼率(coderate)和誤碼率(biterrorrate)的意義。利用〔7,4〕Hamming碼對不同信道進(jìn)展仿真。自己設(shè)計(jì)一個卷積碼,并利用Viterbi譯碼二進(jìn)制對稱信道(BSC),高斯白噪聲信道(AWGN)2個信道進(jìn)展仿真,比擬結(jié)果。2.信道編碼以及其運(yùn)行環(huán)境MATLAB的介紹2.1信道編碼的概念及分類進(jìn)展信道編碼是為了提高信號傳輸?shù)目煽啃?,改善通信系統(tǒng)的傳輸質(zhì)量,研究信道編碼的目標(biāo)是尋找具體構(gòu)造編碼的理論與方法。從原理上,構(gòu)造信道碼的根本思路是根據(jù)一定的規(guī)律在待發(fā)送的信息碼元中人為的參加一定的多余碼元,以引入最小的多余度為代價來換取最好的抗干擾性能。信道編碼是通過信道編碼器和譯碼器實(shí)現(xiàn)的用于提高信道可靠性的理論和方法,是信息論的內(nèi)容之一。信道編碼大致分為兩類:①信道編碼定理,從理論上解決理想編碼器、譯碼器的存在性問題,也就是解決信道能傳送的最大信息率的可能性和超過這個最大值時的傳輸問題。②構(gòu)造性的編碼方法以及這些方法能到達(dá)的性能界限。編碼定理的證明,從離散信道開展到連續(xù)信道,從無記憶信道到有記憶信道,從單用戶信道到多用戶信道,從證明過失概率可接近于零到以指數(shù)規(guī)律逼近于零,正在不斷完善。編碼方法,在離散信道中一般用代數(shù)碼形式,其類型有較大開展,各種界限也不斷有人提出,但尚未到達(dá)編碼定理所啟示的限度。在連續(xù)信道中常采用正交函數(shù)系來代表消息,這在極限情況下可到達(dá)編碼定理的限度,不是所有信道的編碼定理都已被證明。2.2信道編碼定理及信道編碼中所包含的各種碼類的簡介1948年,信息論的奠基人C.E.Shannon在他的開創(chuàng)性論文“通信的數(shù)學(xué)理論〞中,提出了著名的有噪信道編碼定理。他指出:對任何信道,只要信息傳輸速率R不大于信道容量C,就一定存在這樣的編碼方法:在采用最大似然譯碼時,其誤碼率可以任意小。該定理在理論上給出了對給定信道通過編碼所能到達(dá)的編碼增益的上限,并指出了為到達(dá)理論極限應(yīng)采用的譯碼方法。在信道編碼定理中,香農(nóng)提出了實(shí)現(xiàn)最正確編碼的三個根本條件:(1)采用隨機(jī)編譯碼方式;(2)編碼長度L→∞,即分組的碼組長度無限;(3)譯碼采用最正確的最大似然譯碼算法。2.2.1卷積碼卷積碼(convolutioncode)屬于非分組碼,它是一種小分組(n,k)多碼段相關(guān)、糾錯能力較強(qiáng)的FEC碼。卷積碼不同于(n,k)分組碼,它將(n,k)變成很短的分組(n,k),如(2,1)、(3,1)(3,2)卷積碼等。每一個監(jiān)視元不僅是由本碼段(n,k)的k位信碼所決定,而且與其前N-1個碼段的信碼有關(guān),因此稱為卷積碼。它適于串行傳送,延時較小。本碼段(n,k)以及其前(N-1)段構(gòu)成的N個分組碼段稱為約束長度:其碼元數(shù)為Nn比特,而N稱為約束度。因此,各碼段(n,k)不像(n,k)分組碼是一個獨(dú)立糾錯碼單元,其過失控制能力由N個碼段來決定。所以通常將卷積碼寫為(n,k,N),其中N=m+1,m是編碼電路的移位存放器數(shù)目。卷積碼分為兩種:(1)根本卷積碼:根本卷積碼編碼效率為,η=1/2,編碼效率較低,優(yōu)點(diǎn)是糾錯能力強(qiáng)。(2)收縮卷積碼:如果傳輸信道質(zhì)量較好,為提高編碼效率,可以采樣收縮截短卷積碼。有編碼效率為:η=1/2、2/3、3/4、5/6、7/8這幾種編碼效率的收縮卷積碼編碼效率高,一定帶寬內(nèi)可傳輸?shù)挠行П忍芈试龃螅m錯能力越減弱。2.2.2線性分組碼簡單來說,所謂“分組碼〞就是指碼字的生成只與當(dāng)前的源數(shù)據(jù)有關(guān),而與前后的數(shù)據(jù)無關(guān)(相應(yīng)地,與前后數(shù)據(jù)相關(guān)的碼稱為卷積碼)。分組碼將連續(xù)的數(shù)據(jù)比特流分割為長度固定的組;各組進(jìn)一步以m比特為單位分割為符號(Symbol),通常取3比特或者8比特?cái)?shù)據(jù)組成一個符號。k個符號一起組成源字(Sourceword),經(jīng)過編碼后變?yōu)殚L度為n的碼字(Codeword),稱為m比特符號的(n,k)分組碼。所謂“線性〞,是指編碼過程均為線性變換,即可以通過矩陣變換來表示。目前研究的糾錯碼大都屬于線性碼。在線性空間中,所有可能的m比特源字都可以進(jìn)展編碼變換,而無需關(guān)心這m比特?cái)?shù)據(jù)所代表的含義。所謂“系統(tǒng)〞,是指碼字中包含了源字和變換所得的校驗(yàn)字。2.2.3循環(huán)碼循環(huán)碼的特點(diǎn)是符合(n,k)線形分組碼特點(diǎn)在碼內(nèi)(碼子集合)的任意兩個碼字之和為該碼中的一個碼字,這一特征說明(n,k)循環(huán)碼屬于(n,k)線形分組碼的一個子類。(n,k)碼中任何一個碼字連續(xù)位移i位后的碼字,仍屬于該循環(huán)碼的一個碼字。循環(huán)碼中的生成多項(xiàng)式的必要條件為某(n,k)碼是否位循環(huán)的必要條件是:冪為碼長n的多項(xiàng)式x+1,可分解出至少有1個因式的最高冪次為n-k=r,即該因式最高次項(xiàng)為x,最低項(xiàng)為常數(shù)1。其生成多項(xiàng)式的充分條件是由必要條件得到的g(x),其多項(xiàng)式的非零權(quán)系數(shù)個數(shù)還應(yīng)等于相應(yīng)(n,k)分碼組的d。之所以補(bǔ)充這一“充分〞條件,是因?yàn)榉媳匾獥l件的g(x)并不一定能得到與其相應(yīng)分組碼一樣(n,k)的過失控制能力。循環(huán)編碼碼步驟:源碼為m(x)=mx+…+mx+m,應(yīng)首先提升n-k位,變?yōu)閤m(x)。然后以生成多項(xiàng)式g(x)去除,得=q(x)+式(2-1)可得循環(huán)碼:C(x)=xm(x)+b(x)。2.3MATLAB語言的簡介MATLAB是矩陣實(shí)驗(yàn)室(MatrixLaboratory)之意,除具備卓越的數(shù)值計(jì)算能力外,它還提供了專業(yè)水平的符號計(jì)算,文字處理,可視化建模仿真和實(shí)時控制等功能。MATLAB將高性能的數(shù)值計(jì)算和可視化集成在一起,并提供了大量的內(nèi)置函數(shù),從而被廣泛地應(yīng)用于科學(xué)計(jì)算、控制系統(tǒng)、信息處理等領(lǐng)域的分析、仿真和設(shè)計(jì)工作,而且利用MATLAB產(chǎn)品的開放式構(gòu)造,可以非常容易地對MATLAB的功能進(jìn)展擴(kuò)大,從而在不斷深化對問題認(rèn)識的同時,不斷完善MATLAB產(chǎn)品以提高產(chǎn)品自身的競爭能力。MATLAB的根本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué),工程中常用的形式十分相似,故用MATLAB來解算問題要比用C、FORTRAN等語言完一樣的事情簡捷得多。開放性使MATLAB廣受用戶歡送。除內(nèi)部函數(shù)外,所有MATLAB主包文件和各種工具包都是可讀可修改的文件,用戶通過對源程序的修改或參加自己編寫程序構(gòu)造新的專用工具包。Matlab軟件最好的教材是它的幫助文件。只要硬盤容量夠大,竭力推薦安裝完整的幫助文檔,即使你對閱讀英文不是很有信心,但我相信其足夠的實(shí)例還是能讓你對要查詢的命令函數(shù)有一定的了解的。有兩種方法取得幫助信息:一是直接在命令窗口輸入>>help函數(shù)名;如helpimread,會得到相應(yīng)函數(shù)的有關(guān)幫助信息。二是在幫助窗口中查找相應(yīng)信息。不同版本的幫助菜單界面有所不同,這只能依賴于自己去熟悉了。但總體上都和windows的界面具有相似的處理過程。2.4SimulinkSimulink是TheMathWorks公司開發(fā)的用于動態(tài)系統(tǒng)和嵌入式系統(tǒng)的多領(lǐng)域仿真和基于模型的設(shè)計(jì)工具,常集成于MathWorks公司的另一產(chǎn)品mtlab中與之配合使用。Simulink提供了一個交互式的圖形化環(huán)境及可定制模塊庫〔Library〕,可對各種時變系統(tǒng),例如通訊、控制、信號處理、視頻處理和圖像處理系統(tǒng)等進(jìn)展設(shè)計(jì)、仿真、執(zhí)行和測試。與MATLAB類似,Simulink的功能可以通過購置或自定義的工具箱不斷擴(kuò)展。另外,Simulink與MATLAB嚴(yán)密集成,可以直接訪問MATLAB大量的工具來進(jìn)展算法研發(fā)、仿真的分析和可視化、批處理腳本的創(chuàng)立、建模環(huán)境的定制以及信號參數(shù)和測試數(shù)據(jù)的定義。它的主要特點(diǎn)有\(zhòng)l"cite_note-0"[1]:豐富的可擴(kuò)大的預(yù)定義模塊庫交互式的圖形編輯器來組合和管理直觀的模塊圖以設(shè)計(jì)功能的層次性來分割模型,實(shí)現(xiàn)對復(fù)雜設(shè)計(jì)的管理通過ModelExplorer導(dǎo)航、創(chuàng)立、配置、搜索模型中的任意信號、參數(shù)、屬性,生成模型代碼提供API用于與其他仿真程序的連接或與手寫代碼集成使用EmbeddedMATLAB模塊在Simulink和嵌入式系統(tǒng)執(zhí)行中調(diào)用MATLAB算法使用定步長或變步長運(yùn)行仿真,根據(jù)仿真模式(Normal,Accelerator,RapidAccelerator)來決定以解釋性的方式運(yùn)行或以編譯C代碼的形式來運(yùn)行模型圖形化的調(diào)試器和剖析器來檢查仿真結(jié)果,診斷設(shè)計(jì)的性能和異常行為可訪問MATLAB從而對結(jié)果進(jìn)展分析與可視化,定制建模環(huán)境,定義信號參數(shù)和測試數(shù)據(jù)模型分析和診斷工具來保證模型的一致性,確定模型中的錯誤。3.信道3.1二進(jìn)制對稱信道〔BSC〕二進(jìn)制對稱信道是離散無記憶信道在J=K=2時的特例。它的輸入和輸出都只有0和1兩種符號,并且發(fā)送0而承受到1,以及發(fā)送1而收到0〔即誤碼〕的概率一樣,所以稱信道是對稱的。此時條件過失概率由p表示。二進(jìn)制對稱信道的轉(zhuǎn)移概率如圖3.1圖3.1二進(jìn)制對稱信道3.2二進(jìn)制刪除信道〔BEC〕圖3.2二進(jìn)制刪除信道信道的特點(diǎn)是,信源傳輸0或1時,接收端以1-a的概率正確接收,以概率a被刪除。3.3高斯白噪聲信道(AWGN)在信號傳輸?shù)倪^程中,它會不可防止地受到各種干擾,這些干擾統(tǒng)稱為“噪聲〞。加性高斯白噪聲AWGN是最常見的一種噪聲。加性高斯白噪聲是最簡單的一種噪聲,它表現(xiàn)為信號圍繞平均值的一種隨機(jī)波動過程。加性高斯白噪聲的均值為o,方差表現(xiàn)為噪聲功率的大小。一放情況下,噪聲功率越大,信號的波動幅度就越大,接收端接收到的信號的誤比特率就越高。在研究通信系統(tǒng)的誤碼率與信道質(zhì)量的關(guān)系時,一放先研究它在加性高斯白噪聲信道下的性能,然后再把它推廣到具有快衰落的復(fù)雜情況。4.Hamming碼4.1漢明碼當(dāng)計(jì)算機(jī)存儲或移動數(shù)據(jù)時,可能會產(chǎn)生數(shù)據(jù)位錯誤,這時可以利用漢明碼來檢測并糾錯,簡單的說,漢明碼是一個錯誤校驗(yàn)碼碼集,由Bell實(shí)驗(yàn)室的R.W.Hamming創(chuàng)造,因此定名為漢明碼。與其他的錯誤校驗(yàn)碼類似,漢明碼也利用了奇偶校驗(yàn)位的概念,通過在數(shù)據(jù)位后面增加一些比特,可以驗(yàn)證數(shù)據(jù)的有效性。利用一個以上的校驗(yàn)位,漢明碼不僅可以驗(yàn)證數(shù)據(jù)是否有效,還能在數(shù)據(jù)出錯的情況下指明錯誤位置。在承受端通過糾錯譯碼自動糾正傳輸中的過失來實(shí)現(xiàn)碼糾錯功能,稱為前向糾錯FEC。在數(shù)據(jù)鏈路中存在大量噪音時,F(xiàn)EC可以增加數(shù)據(jù)吞吐量。通過在傳輸碼列中參加冗余位(也稱糾錯位)可以實(shí)現(xiàn)前向糾錯。但這種方法比簡單重傳協(xié)議的本錢要高。漢明碼利用奇偶塊機(jī)制降低了前向糾錯的本錢。4.2校驗(yàn)方法進(jìn)展奇偶校驗(yàn)的方法是先計(jì)算數(shù)據(jù)中1的個數(shù),通過增加一個0或1(稱為校驗(yàn)位),使1的個數(shù)變?yōu)槠鏀?shù)(奇校驗(yàn))或偶數(shù)(偶校驗(yàn))。例如,數(shù)據(jù)1001總共是4個比特位,包括2個1,1的數(shù)目是偶數(shù),因此,如果是偶校驗(yàn),那么增加的校驗(yàn)位就是一個0,反之,增加一個1作為校驗(yàn)位。通過“異或〞運(yùn)算來實(shí)現(xiàn)偶校驗(yàn),“同或〞運(yùn)算來實(shí)現(xiàn)奇校驗(yàn)。單個比特位的錯誤可以通過計(jì)算1的數(shù)目是否正確來檢測出來,如果1的數(shù)目錯誤,說明有一個比特位出錯,這表示數(shù)據(jù)在傳輸過程中受到噪音影響而出錯。利用更多的校驗(yàn)位,漢明碼可以檢測兩位碼錯,每一位的檢錯都通過數(shù)據(jù)中不同的位組合來計(jì)算出來。校驗(yàn)位的數(shù)目與傳輸數(shù)據(jù)的總位數(shù)有關(guān),可以通過漢明規(guī)則進(jìn)展計(jì)算:d+p+1<=2的p次方d表示傳輸數(shù)據(jù)位數(shù)目,p表示校驗(yàn)位數(shù)目。兩局部合稱漢明碼字,通過將數(shù)據(jù)位與一個生成矩陣相乘,可以生成漢明碼字。2008-07-0519:10針對4位數(shù)據(jù)的漢明碼編碼示意圖漢明碼是一個在原有數(shù)據(jù)中插入假設(shè)干校驗(yàn)碼來進(jìn)展錯誤檢查和糾正的編碼技術(shù)。以典型的4位數(shù)據(jù)編碼為例,漢明碼將參加3個校驗(yàn)碼,從而使實(shí)際傳輸?shù)臄?shù)據(jù)位到達(dá)7個〔位〕,它們的位置如果把上圖中的位置橫過來就是:數(shù)據(jù)位1234567代碼P1P2D8P3D4D2D1說明第1個漢明碼第2個漢明碼第1個數(shù)據(jù)碼第3個漢明碼第2個數(shù)據(jù)碼第3個數(shù)據(jù)碼第4個數(shù)據(jù)碼注:Dx中的x是2的整數(shù)冪〔下面的冪都是指整數(shù)冪〕結(jié)果,多少冪取決于碼位,D1是0次冪,D8是3次冪,想想二進(jìn)制編碼就知道了。另外,漢明碼加插的位置也是有規(guī)律的。以四位數(shù)據(jù)為例,第一個漢明碼是第一位,第二個是第二位,第三個是第四位,1、2、4都是2的整數(shù)冪結(jié)果,而這個冪次數(shù)是從0開場的整數(shù)。這樣我們可以推斷出來,漢明碼的插入位置為1〔20(注:20表示2的0次冪)〕、2〔21〕、4〔22〕、8〔23〕、16〔24〕、32〔25〕……4.3漢明碼編碼4.3.1漢明碼對高斯白噪聲信道隨機(jī)信號源:function[out,rc]=inform(k)rc=rand(k,1);forn=1:kifrc(n)>=0.5out(n)=1;elseout(n)=0;endend產(chǎn)生高斯噪聲:functionout=noise(snr,k,r)snr=10^(snr/10);rate=k/(k+r);q=1/(sqrt(2*snr*rate));out=randn(1,k+r)*q;漢明碼編碼:functioncode=hamming(ic,k,P)IG=eye(k);G=[IG,P'];code=rem(ic*G,2);漢明碼譯碼:functionout=dehamming(in,k,r,P)m=k+r;IH=eye(r);H=[P,IH];S=rem(in*H',2);n=0;whilen<mn=n+1;h=H(:,n);ifS==h'break;endendin(n)=1-in(n);fori=1:kout(i)=in(i);end調(diào)制:functionout=modd(in,k,r)m=k+r;forn=1:mifin(n)<1out(n)=-1;elseout(n)=1;endend解調(diào):functionout=demod(in,k,r)m=k+r;forn=1:mifin(n)<0out(n)=0;elseout(n)=1;endend總程序k=4;%信息位r=3;%監(jiān)視位P=[1110;%校驗(yàn)矩陣0111;1101;];SNR=1;%信噪比N=1000;%測試的數(shù)據(jù)包數(shù)目w=0;%譯碼錯誤碼元數(shù)目統(tǒng)計(jì)的變量n=1;whilen<N%測試數(shù)據(jù)包[ic,rc]=inform(k);%產(chǎn)生隨機(jī)信號源hc=hamming(ic,k,P);%漢明碼編碼mc=modd(hc,k,r);%調(diào)制nc=mc+noise(SNR,k,r);%通過帶噪聲信道dmc=demod(nc,k,r);%解調(diào)dhc=dehamming(dmc,k,r,P);%漢明碼譯碼form=1:k%統(tǒng)計(jì)譯碼錯誤碼元數(shù)ifdhc(m)~=ic(m)w=w+1;endendn=n+1;endBER=w/(N*k)%計(jì)算誤碼率semilogy(SNR,BER);仿真結(jié)果分析:圖4.3.1漢明碼對AWGN信道仿真的誤碼率曲線圖對圖4的觀察,我們可以看到,在高斯白噪聲信道里當(dāng)信噪比越來越大時,誤碼率越來越低,到一定程度,信道的誤碼率會為0。仿真結(jié)果和理論結(jié)果根本一致。4.3.2漢明碼對二進(jìn)制對稱信道的仿真%(7,4)漢明碼仿真%定義變量(7,4)漢明碼模擬k=4; %n=7; %p_vector=0.1:0.01:1;%向量P的值,誤碼率N=length(p_vector);%p_vector的長度RUNS=5000;%運(yùn)行數(shù)%碼字表xtable=[0000000;...1101000;...0110100;...1011100;...1110010;...0011010;...1000110;...0101110;...1010001;...0111001;...1100101;...0001101;...0100011;...1001011;...0010111;...1111111;];for(p_i=1:N)error=0;%錯誤的數(shù)p=p_vector(p_i);for(r=1:RUNS)%生成4位的信息塊z=unifrnd(0,1,1,4);%0和1的4位串w=round(z);%圓的Z值%找到行的索引,二進(jìn)制轉(zhuǎn)換:m=w(1)+w(2)*2+w(3)*4+w(4)*8;x=xtable(m+1,:);z=unifrnd(0,1,1,7);%0和1的7位隨機(jī)字符串zi=find(z<=p);%錯誤的位置%誤比特率e=zeros(1,7);%創(chuàng)立一個0的7位串e(zi)=ones(size(zi));%創(chuàng)立一個字符串的大小Ziy=xor(x,e);%異或X和E%for(q=1:16)dH(q)=sum(xor(y,xtable(q,:)));%比擬接收到的碼字矢量if(dH(q)<=1)wh=xtable(q,4:7);endend%計(jì)算誤碼率dHw=sum(xor(w,wh));error=error+dHw;endBER(p_i)=error/(RUNS*4);%誤碼率計(jì)算P(p_i)=p;%存到pendPs=logspace(-4,0,200);Pb_high=1-((1-Ps).^7+7.*(1-Ps).^6.*Ps);Pb_low=(1-((1-Ps).^7+7.*(1-Ps).^6.*Ps))/k;figure(1)plot(P,BER,'bx',Ps,Pb_high,'k-',Ps,Pb_low,'k-')legend('Simulated','Analytical')xlabel('ProbabilityofErrorforBSC(p)')ylabel('BER')title('Figure1-BitErrorRateforHammingcodeoverBSC')仿真出圖4.3.2圖4.3.2漢明碼對BSC信道編碼后誤碼率的曲線圖如上圖4.3.2中,可以看到藍(lán)色的曲線是模擬后的誤碼率曲線,黑色的曲線是分析的誤碼率曲線。上面黑色曲線是概率誤差p最大值的誤碼率,下面黑色的曲線是概率誤差p最小值的誤碼率。從圖中可以看出概率誤差最大,BSC信道的誤碼率就越高。5.卷積碼5.1卷積碼定義與原理卷積碼是一種向前糾錯控制編碼。它將連續(xù)的信息比特序列映射為連續(xù)的編碼器輸出符號。這種映射是高度構(gòu)造化的,使得卷積碼的譯碼方法與分組碼譯碼所采用的方法完全不同??梢则?yàn)證的是在同樣復(fù)雜度情況下,卷積碼的編碼增益要大于分組碼的編碼增益。對于某個特定的應(yīng)用,采用分組編碼還是采用卷積編碼哪一種更好則取決于這一應(yīng)用的具體情況和進(jìn)展比擬時可用的技術(shù)。卷積編碼的最正確譯碼準(zhǔn)則為:在給定編碼構(gòu)造、信道特性和接收序列的情況下,譯碼器將把與已經(jīng)發(fā)送的序列最相似的序列作為傳送的碼字序列的估值。對于二進(jìn)制對稱信道,最相似傳送序列就是在漢明距離上與接收序列最近的序列。卷積碼的譯碼方法有兩大類:一類是大數(shù)邏輯譯碼,又稱門限譯碼(硬判決,編者注);另一種是概率譯碼(軟判決,編者注),概率譯碼又分為維特比譯碼和序列譯碼兩種。門限譯碼方法是以分組碼理論為根基的,其譯碼設(shè)備簡單,速度快,但其誤碼性能要比概率譯碼法差。5.2維特比譯碼原理采用概率譯碼的根本思想是:把已接收序列與所有可能的發(fā)送序列做比擬,選擇其中碼距最小的一個序列作為發(fā)送序列。如果發(fā)送L組信息比特,那么對于(n,k)卷積碼來說,可能發(fā)送的序列有2kL個,計(jì)算機(jī)或譯碼器需存儲這些序列并進(jìn)展比擬,以找到碼距最小的那個序列。當(dāng)傳信率和信息組數(shù)L較大時,使得譯碼器難以實(shí)現(xiàn)。維特比算法則對上述概率譯碼做了簡化,以至成為了一種實(shí)用化的概率算法。它并不是在網(wǎng)格圖上一次比擬所有可能的2kL條路徑(序列),而是接收一段,計(jì)算和比擬一段,選擇一段最大似然可能的碼段,從而到達(dá)整個碼序列是一個最大似然值得序列。下面以圖5.1的(2,1,3)卷積碼編碼器所編出的碼為例,來說明維特比解碼的方法和運(yùn)作過程。為了能說明解碼過程,這里給出該碼的狀態(tài)圖,如圖5.2所示。mmjmj-1mj-2輸出序列m1,m2,…mj,…y1jy2j輸入序列00adcb110011010110圖5.1(2,1,3)卷積碼編碼器圖5.2(2,1,3)卷積碼狀態(tài)圖維特比譯碼需要利用圖來說明移碼過程。根據(jù)卷積碼畫網(wǎng)格的方法,我們可以畫出該碼的網(wǎng)格圖,如圖5.3所示。該圖設(shè)輸入信息數(shù)目L=5,所以畫L+N=8個時間單位,圖中分別標(biāo)以0至7。這里設(shè)編碼器從a狀態(tài)開場運(yùn)作。該網(wǎng)格圖的每一條路徑都對應(yīng)著不同的輸入信息序列。由于所有可能輸入信息序列共有2kL個,因而網(wǎng)格圖中所有可能的路徑也為2kL條。這里節(jié)點(diǎn)a=00,b=01,c=10,d=11。aabcd節(jié)點(diǎn)號0123456700000000000000111111111111111100000101010101010101010101111110101010圖5.3(2,1,3)卷積碼網(wǎng)格圖設(shè)輸入編碼器的信息序列為(11011000),則由編碼器對應(yīng)輸出的序列為Y=(1101010001011100),編碼器的狀態(tài)轉(zhuǎn)移路線為abdcbdca。假設(shè)收到的序列R=(0101011001011100),對照網(wǎng)格圖來說明維特比譯碼的方法。由于該卷積碼的約束長度為6位,因此先選擇接收序列的前6位序列R1=(010101)同到達(dá)第3時刻的可能的8個碼序列(即8條路徑)進(jìn)展比擬,并計(jì)算出碼距。該例中到達(dá)第3時刻a點(diǎn)的路徑序列是(000000)和(111011),他們與R1的距離分別為3和4;到達(dá)第3時刻b點(diǎn)的路徑序列是(000011)和(111000),他們與R1的距離分別為3和4;到達(dá)第3時刻c點(diǎn)的路徑序列是(001110)和(110101),他們與R1的距離分別為4和1;到達(dá)第3時刻d點(diǎn)的路徑序列是(001101)和(110110),他們與R1的距離分別為2和3。上述每個節(jié)點(diǎn)都保存碼距較小的路徑作為幸存路徑,所以幸存路徑碼序列是(000000)、(000011)、(1101001)和(001101),如圖5.4所示。用于上面類似的方法可以得到第4、5、6、7時刻的幸存路徑。aabcd節(jié)點(diǎn)號0123000000111111010101圖5.4維特比譯碼第3時刻幸存路徑需要指出的是,對于某個節(jié)點(diǎn),如果比擬兩條路徑與接收序列的累計(jì)碼距值相等時,則可以任意選者一條路徑作為幸存路徑,吃時不會影響最終的譯碼結(jié)果。在碼的終了時刻a狀態(tài),得到一條幸存路徑。如果2.5所示。由此可看到譯碼器ababcd節(jié)點(diǎn)號0123110101456780001011100圖5.5第8時刻幸存路徑輸出是R’=(1101010001011100),即可變換成序列(11011000),恢復(fù)了發(fā)端原始信息。比擬R’和R序列,可以看到在譯碼過程中已糾正了在碼序列第1和第7位上的過失。當(dāng)然如果過失出現(xiàn)太頻繁,以致超出卷積碼的糾錯能力,還是會發(fā)生糾誤的。5.3卷積碼譯碼器對高斯白噪聲信道的設(shè)計(jì)與仿真整個設(shè)計(jì)的構(gòu)造框圖如以下列圖5.3信源模塊信源模塊信道信宿模塊信號編譯碼器約定參數(shù)信號信號5.3構(gòu)造框圖本設(shè)計(jì)由3個子系統(tǒng)組成:信源模塊對隨機(jī)二進(jìn)制信號進(jìn)展卷積碼和二進(jìn)制相位調(diào)制,輸出基帶調(diào)制信號;信道模塊是一個高斯白噪聲信道;信宿模塊對調(diào)制信號進(jìn)展軟判決譯碼,得到原始信息序列,并且計(jì)算調(diào)制信號的誤碼率。5.3.1卷積碼譯碼器的設(shè)計(jì)與仿真信源模塊由貝努利二進(jìn)制序列產(chǎn)生器、卷積碼編碼器以及二進(jìn)制相位調(diào)制3個模塊組成,如以下列圖5.3.1所示5.3.1信源模塊系統(tǒng)框圖各個模塊的參數(shù)設(shè)置分別如表5.1~表5.3所示。表5.1BernoulliBinaryGenerator(貝努利二進(jìn)制序列產(chǎn)生器)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型BernoulliBinaryGeneratorProbabilityofzero0.5Initialseed25741Sampletime0.0001Frame-basedoutputCheckedSamplesperframe10000表5.2ConvolutionalEncoder(卷積碼編碼器)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型ConvolutionalEncoderTrellisPoly2trellis(7,[171133])ResetOneachframe表5.3BPSKModulatorBaseband的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型BPSKModulatorBasebandPhaseoffset(rad)0Samplespersymbol1本設(shè)計(jì)使用相對較簡單的一個加性高斯白噪聲信道作為噪聲信道,它在二進(jìn)制相位調(diào)制信號中疊加高斯白噪聲。加性高斯白噪聲模塊的參數(shù)設(shè)置如表5.4。表5.4AWGNChannel(加性高斯白噪聲模塊)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型AWGNChannelInitialseed1237ModeSignaltonoiseratio(SNR)SNR(dB)SNRInputsignalpower(watts)1信道模塊如以下列圖5.3.2所示。圖5.3.2信道模塊示意圖信宿模塊在接收到二進(jìn)制相位調(diào)制信號后,首先由BPSKDemodulatorBaseband(二進(jìn)制相位解調(diào)模塊)對信號進(jìn)展量化,得到硬判決量化信號,然后通過ViterbiDecoder(維特比譯碼器)對軟判決信號實(shí)施譯碼。譯碼輸出信號和信源模塊產(chǎn)生的原始信號輸入到ErrorRateCalculator(誤比特率統(tǒng)計(jì)模塊)中,統(tǒng)計(jì)得到的數(shù)據(jù)一方面通過Display(顯示模塊)顯示出來,另一方面通過一個Selector(選擇器)把其中的第一個元素(即編碼信號的誤比特率)保存到工作區(qū)變量BitErrorRate中。信宿模塊如以下列圖5.3.3所示。圖5.3.3信宿模塊Sink各關(guān)鍵模塊參數(shù)設(shè)置如表5.5、表5.6所示。表5.5BPSKDemodulatorBaseband(二進(jìn)制相位解調(diào)模塊)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型BPSKDemodulatorBasebandPhaseoffset(rad)0DecisiontypeHarddecisionOutputdatatypeInheritviainternalrule表5.6ViterbiDecoder(維特比譯碼器)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型ViterbiDecoderTrellisstructurepoly2trellis(7,[171133])DecisiontypeHarddecisionTrecebackdepth1000OperationmodeTruncated將此完整設(shè)計(jì)保存,命名為convh.mdl,如以下列圖5.3.4圖5.3.4完整設(shè)計(jì)5.3.2簡化維特比譯碼器的仿真為了驗(yàn)證譯碼模塊的正確性,便讓其進(jìn)展最簡模式運(yùn)行,為此,臨時設(shè)計(jì)一個簡化信號系統(tǒng),關(guān)閉信道噪聲,不進(jìn)展二進(jìn)制相位的調(diào)制與解調(diào),去掉誤比特率統(tǒng)計(jì)模塊。為了能看到輸入二進(jìn)制碼和譯碼輸出二進(jìn)制碼,增加了兩個ToWorkspace(結(jié)果輸入到工作區(qū)模塊),整個系統(tǒng)模塊框圖如圖5.3.5所示。圖5.3.5簡化譯碼模塊框圖同時,為了便于觀察,將BernoulliBinaryGenerator(貝努利二進(jìn)制序列產(chǎn)生器)的參數(shù)設(shè)置為如表5.7所示,以產(chǎn)生簡單的15位二進(jìn)制隨機(jī)碼,也將ViterbiDecoder的Trcebackdepth值改為5。將ToWorkspace1模塊和ToWorkspace模塊的變量名分別設(shè)置為pdata和data。表5.7簡化譯碼模塊的BernoulliBinaryGenerator的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型BernoulliBinaryGeneratorProbabilityofzero0.5Initialseed5Sampletime10Frame-basedoutputCheckedSamplesperframe5運(yùn)行仿真(),在matlab的命令窗口中輸入pdata和data分別得到相應(yīng)的二進(jìn)制序列。對所得序列分別截圖,可得如下所示結(jié)果。可見,譯碼器能夠正確進(jìn)展譯碼,所設(shè)計(jì)簡化譯碼器正確,因而,從理論上可推導(dǎo),原設(shè)計(jì)正確。>>datadata=11011>>pdatapdata=110115.3.3卷積碼譯碼器的誤碼率分析編制M文件convolutionh.m,使convh.mdl在不同的信噪比條件下重復(fù)執(zhí)行前面建設(shè)的工程convh.mdl。然后繪制信道的信噪比與編碼信號誤比特率之間的關(guān)系曲線圖。M文件代碼如下:%x表示信噪比x=-10:5;%y表示信號的誤比特率y=x;%準(zhǔn)備一個空白圖形holdoff;%重復(fù)運(yùn)行convh.mdl,檢驗(yàn)不同條件下硬判決譯碼的性能fori=1:length(x)%信道的信噪比依次取x中的元素SNR=x(i);%運(yùn)行仿真程序,得到的誤比特率保存在工作區(qū)變量BitErrorRate中sim('convh');%計(jì)算BitErrorRate的均值作為本次仿真的誤比特率y(i)=mean(BitErrorRate);end%繪制x和y的關(guān)系曲線圖,縱坐標(biāo)采用對數(shù)坐標(biāo)semilogy(x,y);%保持已經(jīng)繪制的圖形holdon執(zhí)行此M文件,得到如以下列圖5.3.4所示的關(guān)系曲線圖,由此圖可見,隨著信道信噪比的提升,維特比譯碼所得結(jié)果的誤比特率越低,信道的可信度越高,信噪比在大于-2時信道的誤碼率開場明顯降低。圖5.3.3viterbi譯碼器對高斯白噪聲信道的誤碼率曲線圖5.4卷積編碼器在二進(jìn)制對稱信道〔BSC〕中的性能二進(jìn)制對稱信道模塊的一個主要用途是用于檢驗(yàn)編碼的糾鍺和檢錯性能,因?yàn)樗軌蚍奖愕亟ㄔO(shè)信道誤比特率與編碼信號的誤比特率之間的關(guān)系。本節(jié)以卷積編碼為例介紹卷積編碼器在二進(jìn)制信道中的傳輸性能。卷積編碼器以其優(yōu)良的糾鍺性能在移動通信系統(tǒng)中得到了廣泛的應(yīng)用。Is-95的前向信道和反向信道都采用了卷積編碼器,這些卷積編碼器的約束長度都是9,碼率等于1/2或1/3。對于反向業(yè)務(wù)信道(即從移動臺到基站方向的信道),速率集1(RateSet1)采用碼率為1/3的卷積編碼器(3個碼生成多項(xiàng)式分別等于八進(jìn)制數(shù)557、663和711),速率集2(Rateset2)則采用碼率為1/2的卷積編碼器(碼生成多項(xiàng)式分別等于八進(jìn)制數(shù)753和561)。在本實(shí)例中我們將使用反向全速業(yè)務(wù)倍道(數(shù)據(jù)傳輸速率等于9600bit/s)速率集1的卷積編碼器。圖5.4.1所示是本實(shí)例的系統(tǒng)組成框圖。圖5.4.1仿真系統(tǒng)各個模塊的參數(shù)設(shè)置如下各表:表5.4.1BernoulliBinaryGenerator(貝努利二進(jìn)制序列產(chǎn)生器)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型BernoulliBinaryGeneratorProbabilityofzero0.5Initialseed61Sampletime1/9600Frame-basedoutputCheckedSamplesperframe9600表5.4.2ConvolutionalEncoder(卷積碼編碼器)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型ConvolutionalEncoderTrellisPoly2trellis(9,557,663,711[])ResetOneachframe表5.4.3BinarySymmetricChannel〔二進(jìn)制對稱信道〕的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型BinarySymmetricChannelErrorprobabilityBitErrorRateInitialseed71outputerrorvectorunchecked表5.4.4ViterbiDecoder(維特比譯碼器)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型ViterbiDecoderTrellisstructurepoly2trellis(9,[557,663,711])DecisiontypeHarddecisionTrecebackdepth192OperationmodeTruncated表5.4.5ErrorRateCalculation(誤碼率統(tǒng)計(jì)模塊)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型ErrorRateCalculationReceivedelay0Computationdelay0Computationmodeentireframeoutputdataportresetportuncheckedstopsimulationunchecked表5.4.6Selector(選擇模塊)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型selectorinputtypevectorsourceofelementindicesinternalelements1inputportwidth3表5.4.7Display(顯示模塊)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型Displayformatshortdecimation1floatingdisplayuncheckedsampletime-1表5.4.8ToWrokspace(工作區(qū)寫入模塊)的參數(shù)設(shè)置參數(shù)名稱參數(shù)值模塊類型ToWrokspacevariablenameDecodedErrorRatelimitdatapointstolastinfdecimation1sampletime-1saveformatArray整個系統(tǒng)已經(jīng)建造完畢。要運(yùn)行實(shí)例程序,首先在工作區(qū)中建設(shè)一個變量BitErrorRate,并且把它設(shè)置為所需的二進(jìn)制對稱信道的誤比特率。在這個程序里我們使用了缺省的運(yùn)行時間(10秒),運(yùn)行本實(shí)例程序,顯示模塊中顯示的是譯碼后的誤比特率,問時在工作區(qū)中可以看到,變量DecodedErrorRate是一個長度為501bit的向量,其中每個元素都表示一幀數(shù)據(jù)譯碼之后的誤比特率。為了觀測二進(jìn)制對稱信道不同的誤比特率對卷積編碼器性能的影響,我們需要屢次改變BitErrorRat的數(shù)值,然后重新運(yùn)行實(shí)例程序。這時我們有程序:%x表示二進(jìn)制對稱信道的誤比特率的各種取值x=[0.010.020.030.040.050.10.150.20.250.30.40.5];%y表示卷積編碼信號的誤碼率,它的長度與x的長度相等y=x;%對x中的每一個元素依次執(zhí)行仿真fori=1:length(x)%將二進(jìn)制對稱信道的誤比特率設(shè)置為x的第i個元素的數(shù)值BitErrorRate=x(i);%運(yùn)行仿真,仿真結(jié)果保存在向量DecodedErrorRatesim('project');%計(jì)算DecodedErrorRate的平均值作為卷積編碼信號的誤碼率%為了計(jì)算的準(zhǔn)確性,舍棄其中的頭100個元素y(i)=mean(DecodedErrorRate);%(101:504));end%繪制x和y的對數(shù)關(guān)系曲線圖semilogy(x,y);仿真出圖5.4圖5.4viterbi譯碼器對二進(jìn)制對稱信道的誤碼率曲線圖從上圖5.4可以看到,當(dāng)二進(jìn)制對稱信道的誤碼率小于20%時,卷積編碼信號的誤碼率都遠(yuǎn)遠(yuǎn)低于二進(jìn)制對稱信道誤碼率;而當(dāng)二進(jìn)制對稱信道的誤碼率大于20%時,卷積編碼信號的誤碼率近似到達(dá)了50%。這說明當(dāng)信道的誤碼率高于20%時,卷積編碼根本失去了原有的糾錯能力。在實(shí)際應(yīng)用中,移動通信系統(tǒng)的調(diào)制和解調(diào)能夠保證信道的誤比特率遠(yuǎn)遠(yuǎn)低于5%。根據(jù)我們的仿真結(jié)果.當(dāng)信道的誤比特率等于5%時,卷積編碼信號的誤碼率低于0.03%.從這里可以看出.卷積編碼器具有很強(qiáng)的糾錯能力。6.卷積碼譯碼器對二進(jìn)制對稱信道和高斯白噪聲信道仿真比擬從上述2個仿真中的圖5.3.4和圖5.4可以看出,高斯白噪聲信道中viterbi譯碼隨著信道的信噪比提升,誤比特率越低,信道的可信度,糾錯能力最高。而在二進(jìn)制對稱信道中,隨著信道的誤碼率提升,viterbi譯碼的誤比特率越高,當(dāng)二進(jìn)制對稱信道的誤碼率高到一定程度,viterbi譯碼幾乎會失去糾錯能力。然而在二進(jìn)制對稱信道和高斯白噪聲信道中可以看出卷積編碼viterbi譯碼有很強(qiáng)的糾錯能力。7.總結(jié)在這份畢業(yè)設(shè)計(jì)中,主要是對不同信道的仿真中學(xué)會一些譯碼,卷積碼和漢明碼。通過整個系統(tǒng)的設(shè)計(jì)與仿真,使我加深了對卷積碼和漢明碼的理解,掌握維特比譯碼的根本思路,知道如何進(jìn)展誤碼率分析從而選者適宜的信道傳輸信號,更重要的是學(xué)會了使用Matlab作為學(xué)習(xí)工具來對我們的通信系統(tǒng)進(jìn)展設(shè)計(jì)和仿真等操作,這對我們以后的學(xué)習(xí)和工作有著重要意義。通過參考資料,向同學(xué)請教,導(dǎo)師的教誨完成了這份畢業(yè)設(shè)計(jì),由于本人的能力有限,時間也有限,這份畢業(yè)設(shè)計(jì)的要求并沒有完全實(shí)現(xiàn)??墒窃谶@次設(shè)計(jì)中讓我體會了matlab的強(qiáng)大功能和應(yīng)用,讓我了解了以后工作中會需要用到matlab,為我以后的工作鋪下了奠基石。對過去而言,這是一次總結(jié),對于將來,則是新的邁向更高知識階梯的又一起點(diǎn)。致謝首先,在這次畢業(yè)設(shè)計(jì)中,在指導(dǎo)教師祝教師的幫助下順利完成。讓我在這次設(shè)計(jì)中了解到大學(xué)4年所沒掌握的一些知識,使我獲益匪淺。使我對matlab應(yīng)用有了進(jìn)一步的結(jié)合,這里我對她表示最衷心的感謝。其次,感謝張艾在這次設(shè)計(jì)中給予我的幫助,讓我順利完成我的畢業(yè)設(shè)計(jì)。最后,在此文即將完成之際,我衷心的感謝在此過程中幫助過我的每個人,在這里請接收我最誠摯的謝意!由于時間倉促、自身等原因,文章錯誤疏漏之處在所難免,懇請各位教師斧正。參考文獻(xiàn)[1]樊昌信等,《通信原理〔第四版〕》國防工業(yè)出版社[2]王立寧等,《MATLAB與通信仿真》人民郵電出版社[3]吳偉陵,《信息處理與編碼》北京郵電大學(xué)出版社[4]劉玉君,信道編碼[M].河南科學(xué)技術(shù)出版社,2001.9[5]王秉鈞,馮玉珉,田寶玉.通信原理[M].清華大學(xué)出版社[6]王新梅,肖國鎮(zhèn).糾錯碼[M].西安電子科技大學(xué)出版社[7]鄧華.MATLAB通信仿真及應(yīng)用實(shí)例詳解[M].人民郵電出版社[8]劉寶琴,張芳蘭,田立生.Altera可編程邏輯器件及其應(yīng)用[M]清華大學(xué)出版社[9]郝東來.COFDM傳輸系統(tǒng)中編解碼技術(shù)的研究[D].西安電子科技大學(xué).[10]R.EBlahut著,徐秉錚等譯,過失控制碼的理論與實(shí)踐,華南理工大學(xué)出版社,1988出版[11]美.雷格雷伯著高會生譯MATLAB原理與工程應(yīng)用[M].電子工業(yè)出版社2002年06月出版[12]桑林,郝建軍,劉丹譜編著,數(shù)字通信〔第一版〕,北京郵電大學(xué)出版社.2002[13]樊昌信,曹麗娜編著,通信原理〔第六版〕,國防工業(yè)出版社.2006[14]邵玉斌編著,MATLAB/simulink通信系統(tǒng)建模與仿真實(shí)例分析〔第一版〕,清華出版社.2008.6[15]劉輝,劉玉貴,孟德斌,李承延編著,通信世界,CommunicationsWorld2002年16期,中國科技大學(xué)[16]樊昌信,徐炳祥,張甫翊,吳成柯編著,通信原理〔第五版〕,國防工業(yè)出版社2001[17]孫祥,徐流美,吳清編著,MATLAB根基教程,清華大學(xué)出版社2005[18]曹雪虹,張宗橙.信息論與編碼[M].清華大學(xué)出版社附錄1:隨機(jī)信號源:function[out,rc]=inform(k)rc=rand(k,1);forn=1:kifrc(n)>=0.5out(n)=1;elseout(n)=0;endend產(chǎn)生高斯噪聲:functionout=noise(snr,k,r)snr=10^(snr/10);rate=k/(k+r);q=1/(sqrt(2*snr*rate));out=randn(1,k+r)*q;漢明碼編碼:functioncode=hamming(ic,k,P)IG=eye(k);G=[IG,P'];code=rem(ic*G,2);漢明碼譯碼:functionout=dehamming(in,k,r,P)m=k+r;IH=eye(r);H=[P,IH];S=rem(in*H',2);n=0;whilen<mn=n+1;h=H(:,n);ifS==h'break;endendin(n)=1-in(n);fori=1:kout(i)=in(i);end調(diào)制:functionout=modd(in,k,r)m=k+r;forn=1:mifin(n)<1out(n)=-1;elseout(n)=1;endend解調(diào):functionout=demod(in,k,r)m=k+r;forn=1:mifin(n)<0out(n)=0;elseout(n)=1;endend總程序k=4;%信息位r=3;%監(jiān)視位P=[1110;%校驗(yàn)矩陣0111;1101;];SNR=1;%信噪比N=1000;%測試的數(shù)據(jù)包數(shù)目w=0;%譯碼錯誤碼元數(shù)目統(tǒng)計(jì)的變量n=1;whilen<N%測試數(shù)據(jù)包[ic,rc]=inform(k);%產(chǎn)生隨機(jī)信號源hc=hamming(ic,k,P);%漢明碼編碼mc=modd(hc,k,r);%調(diào)制nc=mc+noise(SNR,k,r);%通過帶噪聲信道dmc=demod(nc,k,r);%解調(diào)dhc=dehamming(dmc,k,r,P);%漢明碼譯碼form=1:k%統(tǒng)計(jì)譯碼錯誤碼元數(shù)ifdhc(m)~=ic(m)w=w+1;endendn=n+1;endBER=w/(N*k)%計(jì)算誤碼率semilogy(SNR,BER);附錄2:%(7,4)漢明碼仿真%定義變量(7,4)漢明碼模擬k=4; %n=7; %p_vector=0.1:0.01:1;%向量P的值,誤碼率N=len
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025年高考生物一輪復(fù)習(xí)知識點(diǎn)練習(xí)第04章種群和群落必修3
- 2024高中語文第一單元以意逆志知人論世第4課自主賞析蜀相課時作業(yè)含解析新人教版選修中國古代詩歌散文欣賞
- 2025藝術(shù)培訓(xùn)班聘用合同
- 2025年新疆貨運(yùn)從業(yè)資格證試題答題APP
- 2025年大連駕??荚嚳拓涍\(yùn)從業(yè)資格證考試題庫
- 2025年南充貨運(yùn)從業(yè)資格證模擬考試題庫
- 2025年江蘇貨運(yùn)從業(yè)資格考試模擬考試題庫答案解析
- 2025年阿壩貨運(yùn)從業(yè)資格證模擬考試
- 2025年四平貨運(yùn)從業(yè)資格證考試技巧
- 中國雙針中厚料縫紉機(jī)項(xiàng)目投資可行性研究報(bào)告
- 2024年度上海浦東國際機(jī)場免稅店經(jīng)營合同2篇
- 2024-2030年中國建筑施工行業(yè)發(fā)展?fàn)顩r規(guī)劃分析報(bào)告
- 【教師成長案例】教師成長:數(shù)字化浪潮中的破繭之路
- 2024版智能水務(wù)管理系統(tǒng)設(shè)計(jì)與施工合同3篇
- 華為經(jīng)營管理-華為的股權(quán)激勵(6版)
- 學(xué)校比學(xué)趕超實(shí)施方案樣本(3篇)
- 2024年度餐飲業(yè)智能點(diǎn)餐系統(tǒng)合同
- 《紅樓夢》十二講知到智慧樹期末考試答案題庫2024年秋安徽師范大學(xué)
- 《荷塘月色》課件25張-
- 植物學(xué)#-形考作業(yè)3-國開(ZJ)-參考資料
- 意向定金合同模板
評論
0/150
提交評論