BCH碼編譯碼matlab仿真_第1頁
BCH碼編譯碼matlab仿真_第2頁
BCH碼編譯碼matlab仿真_第3頁
BCH碼編譯碼matlab仿真_第4頁
BCH碼編譯碼matlab仿真_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 信道編碼 姓 名:郭宇琦 學(xué) 號(hào):xxx2009xxx 一、 實(shí)驗(yàn)?zāi)康?1. 復(fù)習(xí)鞏固BCH碼編碼譯碼知識(shí)。 2. 使用matlab進(jìn)行實(shí)踐編寫B(tài)CH,了解實(shí)際應(yīng)用中BCH的編碼譯碼過程。 3. 結(jié)合實(shí)踐驗(yàn)證所學(xué)BCH碼知識(shí)。 二、 實(shí)驗(yàn)原理 BCH 碼是用于校正多個(gè)隨機(jī)錯(cuò)誤的多級(jí)、循環(huán)、錯(cuò)誤校正、變長數(shù)字編碼,是循環(huán)碼的子類。本原BCH碼編碼原理如下: 1. 確定n、m、t. mm)GF(2)GF(q 取二進(jìn)制,2. 用函數(shù)構(gòu)造擴(kuò)域,q=22t23?,?,確定連續(xù)根t取本原元,根據(jù)糾錯(cuò)能力。通3. 過逐個(gè)驗(yàn)證每個(gè)元素來找出每一個(gè)根的全部共軛根系。根據(jù)k-1242? 計(jì)算最小多項(xiàng)式。)?(x

2、-x)(-(x)(x-xM()?g(x) 所有非共軛根系的最小多項(xiàng)式乘積得到生成多項(xiàng)式4. n-kn-km(x)+RemC(x)=xxx)m(,進(jìn)行編碼。 5. 利用系統(tǒng)碼編碼方程)xg(BCH碼譯碼方法主要有Peterson譯碼法和Berlekamp迭代譯碼法等,其中Peterson譯碼方法如下: i?,則1. 計(jì)算伴隨式。已知接受向量),(?Si=1,2,.2tR)R(x i2求解錯(cuò)誤位置。引入錯(cuò)誤位置多項(xiàng)式,將求解錯(cuò)誤位置的問題轉(zhuǎn)化為求解線性方程組的問題 ?=sss+.+s+?ee-112+1ee1?=sss+.+s+?e+11e22ee+2?.?ss?.?ss? ee2e12e?212

3、2e?3用Peterson譯碼方法譯碼,解出錯(cuò)誤位置多項(xiàng)式系數(shù)和錯(cuò)誤圖樣,得到估值碼字。 (1).假設(shè)e=t,計(jì)算S行列式M的值。M=0則降階,e=e-1,同樣計(jì)算直到M0. (2)將上面得到的2t個(gè)連續(xù)根代入試根,求上述方程組解。取倒數(shù)即為錯(cuò)誤位置。由此寫出錯(cuò)誤圖樣。 求出譯碼。(3) 每一步具體的實(shí)現(xiàn)方法,詳見程序源代碼注釋。 三、 程序框圖 編碼框圖 t,n輸入碼長度n和糾錯(cuò)能力Nm判斷能生成該YE生成擴(kuò)GF(2m找本原2個(gè)連續(xù)根和共軛根計(jì)算最小多項(xiàng)計(jì)算生成多項(xiàng)g(x輸入信得到信息序序通過譯碼方程進(jìn)譯顯示輸輸出碼碼結(jié) 過信道框圖 發(fā)送碼字信道 (高斯白/理想)接收碼字 譯碼框圖 四、 實(shí)

4、驗(yàn)結(jié)果分析 結(jié)果截圖: 正確譯碼127上面是較高信噪比時(shí)位BCH BCH127下面是較低信噪比時(shí)為錯(cuò)誤譯碼 結(jié)果框內(nèi)容(加粗部分是手動(dòng)輸入內(nèi)容,下劃線是結(jié)果重點(diǎn)): -簡易BCH編碼譯碼系統(tǒng)- 輸入碼長n=128 錯(cuò)誤:只支持本原BCH碼 輸入碼長n=127 輸入糾錯(cuò)能力t=6 計(jì)算得碼長 k=85 自動(dòng)生成隨機(jī)信息序列輸入1,手動(dòng)鍵入信息序列輸入0 : 1 隨機(jī)生成的序列為 m= 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 1 1 1 0 0 1 1 0 1 1 1 1 0 0 1 0 1 0 0 0 0 0 0

5、 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 0 1 1 1 0 1 0 1 1 1 0 0 編碼后生成碼序列為 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 1 1 0 1 1 0 0 1 0 0 0 1 1 1 1 1 1 0 0 1 0 1 1 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 0 1 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0 0 0 1 0 1 1 1 1 1 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0

6、 1 0 1 01 1 1 1 0 1 0 1 0 0 :過理想信道輸入過高斯白信道輸入1, 1 ,15單位分貝左右較合適):10輸入信道信噪比( 1 0 1 0 1 0 1 1 1 0 0 1 0 0 0 0 0 1 0 接收碼字為0 1 1 1 0 0 1 1 0 0 0 1 1 0 1 1 1 1 0 0 1 0 0 0 1 1 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 0 1 0 0 0 1 0 0 1 1 1 0 1 0 1 1 1 0 0 1 1 0 0 1 1 1 0 0 0 1 1 0 1 0 1 0 1 1 1 0 0 1 0

7、 1 0 0 0 0 1 0 1 1 1 1 0 1 0 1 0 0 1 1 0 0 0 發(fā)送碼字為0 1 1 1 1 0 0 0 0 0 0 0 1 1 0 0 0 0 1 0 0 0 1 1 1 1 1 0 0 1 1 0 1 1 0 1 1 1 1 0 1 1 0 0 0 0 0 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 1 1 0 0 1 0 1 1 0 1 1 1 0 0 1 1 0 1 0 1 1 0 1 0 0 1 0 1 0 0 0 0 1 1 0 1 1 0 1 0 1 1 1 0 0 4 位通過信道后

8、出錯(cuò) 0 0 0 0 0 0 0 錯(cuò)誤圖樣為 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 譯碼結(jié)果為0 1 0 1 1 0 0 1 1 0 0 1

9、0 0 0 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 0 0 1 1 1 0 0 0 1 0 1 1 0 1 1 0 0 0 0 1 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 1 0 1 1 1 1 0 0 1 0 1 0 1 1 0 1 0 1 0 1 1 1 0 還原信息序列為m= 0 0 1 0 1 0 1 1 0 1 0 1 0 0 0 0 0 1 1 0 0 1 1 0 1 1 1 1 0 0 1 0 0 0

10、1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 0 1 0 0 0 0 1 1 0 1 1 1 0 1 1 1 0 1 0 1 1 1 0 1 1 譯碼正確 五、 實(shí)驗(yàn)小結(jié) 整個(gè)過程嚴(yán)格按照所學(xué)BCH碼相關(guān)知識(shí)編寫,所得結(jié)論完全正確。 六、 源代碼 clc clear all %- disp(-簡易BCH編碼譯碼系統(tǒng)-) flag=1; while(flag) %輸入n n=input(輸入碼長n=); m=0; while(2m-1=n&m=floor(n-1)/2)|(t=0.5 r(i)=1; else r(i)=0; end en

11、d disp(接收碼字為,num2str(r) disp(發(fā)送碼字為,num2str(c) enum=0; for i=1:n if r(i)=c(i) enum=enum+1; end end disp(通過信道后出錯(cuò) ,num2str(enum), 位) %- s=a+a; %構(gòu)造伴隨式,初始化s for i=1:2*t s(i)=a+a; for j=1:n s(i)=s(i)+r(j)*a(n-j)*i); end end for e=t:-1:1 %降階 A=a+a; for i=1:e for j=1:e A(i,j)=s(e+i-j); end end if det(A)=0 break; %判斷行列式是否為奇異,是就繼續(xù)降 end end d=rank(A); %開始求方程組 B=a+a; for i=1:d B(i)=s(d+i); end if A=a+a %接受的碼字出錯(cuò)的情況 cc=r; E=zeros(1,n); else sigma=A(B); %錯(cuò)誤位置多項(xiàng)式的系數(shù) E=zeros(1,n); x=a+a; ki=1; for i=1:n %試根 h=a0; for j=1:d h=h+sigma(j)*a(i*j); end if h=a+a x(k)=a(n-i); E(i)=1; %錯(cuò)誤

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論