資源描述:
《卷積碼實驗報告》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、實驗五信道編解碼()本章目標(biāo)掌握數(shù)字頻帶傳輸系統(tǒng)調(diào)制解調(diào)的仿真過程掌握數(shù)字頻帶傳輸系統(tǒng)誤碼率仿真分析方法5.1實驗?zāi)康?.使用MATLAB進行卷積碼編/譯碼器的仿真。2.熟練掌握MATLAB軟件、語句。3.了解卷積碼編/譯碼器的原理、知識。5.2實驗要求?1.編寫源程序、準(zhǔn)備測試數(shù)據(jù)。?2.在?MATLAB環(huán)境下完成程序的編輯、編譯、運行,獲得程序結(jié)果。如果結(jié)果有誤,應(yīng)找出原因,并設(shè)法更正之。5.3實驗原理(一)卷積碼編碼器1.連接表示卷積碼由3個整數(shù),,描述。也表示編碼效率(每編碼比特所含的信息量);但與線性分組碼中的含義不同,不再表
2、示分組或碼子長度;稱為約束長度,表示在編碼移位寄存器中元組的級數(shù)。卷積碼不同于分組碼的一個重要特征就是編碼器的記憶性,即卷積碼編碼過程中產(chǎn)生的元組,不僅是當(dāng)前輸入元組的函數(shù),而且還是前面?zhèn)€輸入元組的函數(shù)。實際情況下,和經(jīng)常取較小的值,而通過的變化來控制編碼的能力和復(fù)雜性。下面以圖1中的卷積碼編碼器為例介紹卷積碼編碼器。該圖表示一個約束長度的(2,1)卷積譯碼器,模2加法器的數(shù)目為,因此,編碼效率。在每個輸入比特時間上,1位信息比特移入寄存器最左端的一級,同時將寄存器中原有比特均右移一級,接著便交替采樣兩個模2加法器,得到的碼元就是與該輸
3、入比特相對應(yīng)的分支字。對每一個輸入信號比特都重復(fù)上述采樣過程。圖1卷積碼編碼器(編碼效率,)用于描述反饋移位寄存器實現(xiàn)循環(huán)碼時所使用的生成多項式也可用戶描述卷積碼編碼器的連接。應(yīng)用個生成多項式描述編碼的移位寄存器與模2加法器的連接方式,個生成多項式分別對應(yīng)個模2加法器,每個生成多項式不超過階。仍以圖1中的編碼器為例,用生成多項式代表上方連接,代表下方連接,則有:多項式中的最低階項對應(yīng)于寄存器的輸入級。輸出序列根據(jù)如下方式求得:其中表示輸入的信息矢量。1.狀態(tài)圖卷積編碼器屬于有限狀態(tài)機的器件?!坝邢蕖北砻鳡顟B(tài)機制只有有限個不同的狀態(tài)。有限
4、狀態(tài)機的狀態(tài)可以用設(shè)備的當(dāng)前輸入和最少的信息量,來預(yù)測設(shè)備的輸出。狀態(tài)提供了有關(guān)過去序列過程及一組將來可能輸出序列的限制,下一狀態(tài)總是受到前一狀態(tài)的限制。將編碼器在時刻的狀態(tài)定義為。圖2狀態(tài)轉(zhuǎn)移圖如圖2所示,方框內(nèi)的狀態(tài)表示寄存器最右端級的內(nèi)容,狀態(tài)間的路徑表示由此狀態(tài)轉(zhuǎn)移時的輸出分支字。對應(yīng)于兩種可能的輸入bit,從每個狀態(tài)出發(fā)只有兩種轉(zhuǎn)移。2.編碼器網(wǎng)格圖圖3編碼器網(wǎng)格圖雖然狀態(tài)圖完全地描述了編碼器的特性,但由于沒有表示時間過程,所以采用狀態(tài)圖跟蹤編碼器的狀態(tài)轉(zhuǎn)移很不方便。樹狀圖在狀態(tài)圖的基礎(chǔ)上增加了時間尺度。每個相繼輸入信息比特的
5、編碼過程可表述為從左向右經(jīng)過樹狀圖,每條數(shù)值代表一個輸出分支字。樹狀圖上增加的時間尺度是我們可以動態(tài)地描述輸入序列的編碼過程。但由于樹狀圖的規(guī)模增長很快,因而只適于序列中分支子數(shù)目較小的情況。我們采用移位寄存器的4種可能狀態(tài)來標(biāo)注樹圖的各個節(jié)點,。樹結(jié)構(gòu)的第一次分支在時刻,產(chǎn)生一對節(jié)點,記為;在后繼的各個分支處,節(jié)點數(shù)翻倍。第二次分支在時刻,生成4個節(jié)點,記為;第三次分支后共有8個節(jié)點。網(wǎng)格圖利用了結(jié)構(gòu)上的重復(fù)性,從而能夠更加方便地描述編碼器。(一)維特比譯碼算法維特比譯碼算法由維特比在1967年提出。維特比算法的實質(zhì)是最大似然譯碼,但
6、它利用了編碼網(wǎng)格圖的特殊結(jié)構(gòu),從而降低了計算的復(fù)雜性。該算法包括計算網(wǎng)格圖上在時刻到達各個狀態(tài)的路徑和接受序列之間的相似度,或者說距離。維特比算法考慮的是,去除不可能成為最大似然選擇對象的網(wǎng)格圖上的路徑,即如果有兩條路徑到達同一狀態(tài),則具有最佳量度的路徑被選中,成為幸存路徑。對所有狀態(tài)都將進行這樣的選路操作,譯碼器不斷在網(wǎng)格圖上深入,通過去除可能性最小的路徑實現(xiàn)判決。網(wǎng)格圖中每個時刻上有個狀態(tài),這里的是約束長度,每種狀態(tài)都可經(jīng)兩條路徑到達。維特比譯碼包括計算到達每個狀態(tài)的兩條路徑的路徑量度,并舍棄其中一條路徑。在時刻,算法對個狀態(tài)(節(jié)點
7、)都進行上述計算,然后進入時刻,并重復(fù)上述過程。在一個給定的時刻,各狀態(tài)的幸存路徑量度就是該狀態(tài)在該時刻的狀態(tài)量度。圖4譯碼器網(wǎng)格圖5.4實驗內(nèi)容在MATLAB上設(shè)計一個(2,1,3)卷積編碼器和對應(yīng)的采用維特比譯碼算法的譯碼器。編碼器的生成多項式為:將編碼器的輸出經(jīng)過一個高斯白噪聲信道的結(jié)果作為譯碼器的輸入,觀察比較譯碼器輸出和編碼器輸入,了解卷積碼的容錯性,并計算譯碼結(jié)果的誤比特率?;玖鞒倘鏓rror!Referencesourcenotfound.所示。實驗報告要求附加程序代碼,并對代碼中每個函數(shù)模塊的實驗方式和功能進行簡要的說
8、明。卷積碼編碼模塊:卷積碼編碼子程序:functionout_put=conv_enc(msg)g1=[111];g2=[101];m1=conv(msg,g1);m2=conv(msg,g2);L1=le