




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