糾錯(cuò)碼-11概要_第1頁(yè)
糾錯(cuò)碼-11概要_第2頁(yè)
糾錯(cuò)碼-11概要_第3頁(yè)
糾錯(cuò)碼-11概要_第4頁(yè)
糾錯(cuò)碼-11概要_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、AWG信道中基于循環(huán)碼的數(shù)字通信系統(tǒng)摘要:循環(huán)碼是線性分組碼中一種重要的編碼,具有許多特殊的代數(shù)性質(zhì)。其編碼和 解碼相對(duì)簡(jiǎn)單,但糾錯(cuò)的能力較強(qiáng)。循環(huán)碼除了具有線性碼的一般性質(zhì)外,還具有循環(huán)性。 本設(shè)計(jì)利用MATLAB寸信號(hào)源序列生成, 循環(huán)碼編解碼過(guò)程,AWG信道加躁過(guò)程建模, 分析 各個(gè)模塊波形與功率波,并畫(huà)出誤碼率與信噪比關(guān)系曲線。對(duì)仿真數(shù)據(jù),波形進(jìn)行綜合分 析,達(dá)到設(shè)計(jì)目的。關(guān)鍵詞:循環(huán)碼, AWGN, MATLAB一、數(shù)字通信系統(tǒng)模型與AWGN信道數(shù)字通信系統(tǒng)(Digital Communication System , DCS)是利用數(shù)字信號(hào)來(lái)傳遞信息的通 信系統(tǒng),如圖1所示,數(shù)字通

2、信涉及的技術(shù)問(wèn)題很多,其中主要有信源編碼與譯碼、數(shù)字解 調(diào)與調(diào)制、同步以及加密與解密等。加性高斯白噪聲 AWGN(Additive White Gaussian Noise)是最進(jìn)本的噪聲與干擾模型。加 性噪聲:疊加在信號(hào)上的一種噪聲。白噪聲:噪聲的功率譜密度在所有的頻率上均為一常數(shù),則稱這樣的噪聲為高斯白噪聲。在通信上指的是一種通道模型,此通道模型唯一的信號(hào)減損是來(lái)自于寬帶的線性加成或是穩(wěn)定普密度與高斯分布振幅的白噪聲。二、循環(huán)碼(1)循環(huán)碼介紹循環(huán)碼是線性分組碼的一種,所以它具有線性分組碼的一般特性,此外還具有循環(huán)性。循環(huán)碼的編碼和解碼設(shè)備都不太復(fù)雜,且檢 (糾)錯(cuò)能力強(qiáng)。它不但可以檢測(cè)隨

3、機(jī)的錯(cuò)誤,還 可以檢錯(cuò)突發(fā)的錯(cuò)誤。(n,k)循環(huán)碼可以檢測(cè)長(zhǎng)為 n-k或更短的任何突發(fā)錯(cuò)誤,包括首尾相 接突發(fā)錯(cuò)誤。循環(huán)碼是一種無(wú)權(quán)碼,循環(huán)碼編排的特點(diǎn)是相鄰兩個(gè)數(shù)碼之間符合卡諾圖中的鄰接條 件,即相鄰兩個(gè)數(shù)碼之間只有一位碼元不同,碼元就是組成數(shù)碼的單元。符合這個(gè)特點(diǎn)的有多種方案,但循環(huán)碼只能是表中的那種。循環(huán)碼的優(yōu)點(diǎn)是沒(méi)有瞬時(shí)錯(cuò)誤,因?yàn)樵跀?shù)碼變換過(guò)程中,在速度上會(huì)有快有慢,中間經(jīng)過(guò)其它一些數(shù)碼形式,稱它們?yōu)樗矔r(shí)錯(cuò)誤。這在某些數(shù) 字系統(tǒng)中是不允許的,為此希望相鄰兩個(gè)數(shù)碼之間僅有一位碼元不同,即滿足鄰接條件, 這樣就不會(huì)產(chǎn)生瞬時(shí)錯(cuò)誤。循環(huán)碼就是這樣一種編碼,它可以在卡諾圖中依次循環(huán)得到。循環(huán)碼又

4、稱格雷碼(Grey Code )。循環(huán)碼最大的特點(diǎn)就是碼字的循環(huán)特性,所謂循環(huán)特性是指:循環(huán)碼中任一許用碼組經(jīng)過(guò)循環(huán)移位后,所得到的碼組仍然是許用碼組。若(an_ian2.aia0)為一循環(huán)碼組,則(a2an :況務(wù)二)、(an;an".an4a2 )還是許用碼組。也就是說(shuō),不論是左移還 是右移,也不論移多少位,仍然是許用的循環(huán)碼組。循環(huán)碼的多項(xiàng)式表示設(shè)碼長(zhǎng)為n的循環(huán)碼表示為(*2久2.3.&£0),其中ai為二進(jìn)制數(shù),通常把碼組 中各碼元當(dāng)做二進(jìn)制的系數(shù),即把上式中長(zhǎng)為n的各個(gè)分量看做多項(xiàng)式:T(x)=an4Xn斗 an,xn< - aixn"&q

5、uot; a1xa0的各項(xiàng)系數(shù),則碼字與碼多項(xiàng)式一一對(duì)應(yīng),這種多項(xiàng)式中,X僅表示碼元位置的標(biāo)記,因此我10們并不關(guān)心x的取值,這種多項(xiàng)式稱為碼多項(xiàng)式。循環(huán)碼的生成矩陣和一致校驗(yàn)矩陣對(duì)所有的i=0,1,2,k-1,用生成多項(xiàng)式g(x)除xn",有: '-式中bi(X)是余式,表示為:因此,xn± b(x)是g(x)的倍式,即x b(x)是碼多項(xiàng)式,由此得到系統(tǒng)形式的生成矩陣為:10 07-UG -0A1 Q' liBi由III占7'"ii»iiiiA000 0亦,它是一個(gè)k x n階的矩陣。同樣,由G H0可以得到系統(tǒng)形式的一致校驗(yàn)

6、矩陣為:l!titi*bli*JiH =毎-LI如切01 G_加 0 0 1如已知(7, 4)循環(huán)碼的生成多項(xiàng)式和校驗(yàn)多項(xiàng)式分別為:h(x)二x 1。寫(xiě)得其生成矩陣和校驗(yàn)矩陣分別為:_1011000_0101100001011000010111110100_01110100011101GHx4x2(2)循環(huán)碼編碼原理有信息碼構(gòu)成信息多項(xiàng)式m(x mk4xk4. m0,其中最高幕次為k-1 ;用xn»乘以信息多項(xiàng)式m(x),得到的xn m(x),最高幕次為n-1 ,該過(guò)程相當(dāng)于把信息碼(mk4, mikj,mi, m0)移位到了碼字德前k個(gè)信息位,其后是r個(gè)全為零的監(jiān)督位;用g(x)除

7、xn"m(x)得到余式r(x),其次數(shù)必小于 g(x)的次數(shù),即小于(n-k),將此r(x)加于信息位后做監(jiān)督位,即將r(x)與xnm(x)相加,得到的多項(xiàng)式必為一碼多項(xiàng)式。根據(jù)上面的討論,可得到在(7, 4)循環(huán)碼編碼的程序框圖如圖2所示:期2 編碼程序框幗(3)循環(huán)碼的糾錯(cuò)原理糾錯(cuò)碼的譯碼是該編碼能否得到實(shí)際應(yīng)用的關(guān)鍵所在。譯碼器往往比編碼較難實(shí)現(xiàn),對(duì)于糾錯(cuò)能力強(qiáng)的糾錯(cuò)碼更復(fù)雜。根據(jù)不同的糾錯(cuò)或檢錯(cuò)目的,循環(huán)碼譯碼器可分為用于糾錯(cuò)目的和用于檢錯(cuò)目的的循環(huán)碼譯碼器。通常,將接收到的循環(huán)碼組進(jìn)行除法運(yùn)算,如果除盡,則說(shuō)明正確傳輸;如果未除盡,則在寄存器中的內(nèi)容就是錯(cuò)誤圖樣,根據(jù)錯(cuò)誤圖

8、樣可以確定一種邏輯,來(lái)確定差錯(cuò)的位置,從而達(dá)到糾錯(cuò)的目的。用于糾錯(cuò)目的的循環(huán)碼的譯碼算法比較復(fù)雜,感興趣的話可以參考一些參考書(shū)。而用于檢錯(cuò)目的循環(huán)碼,一般使用ARQ通信方式。檢測(cè)過(guò)程也是將接受到的碼組進(jìn)行除法運(yùn)算,如果除盡,則說(shuō)明傳輸無(wú)誤;如果未除盡,則表明傳輸出現(xiàn)差錯(cuò),要求發(fā)送端重發(fā)。用于這種目的的循環(huán)碼經(jīng)常被成為循環(huán)冗余 校驗(yàn)碼,即CRC校驗(yàn)碼。CRC校驗(yàn)碼由于編碼電路、檢錯(cuò)電路簡(jiǎn)單且易于實(shí)現(xiàn),因此得到 廣泛的應(yīng)用。在通過(guò) MODEM傳輸文件的協(xié)議如 ZMODEM、XMODEM協(xié)議中均用到了 CRC校驗(yàn)技術(shù)。在磁盤(pán)、光盤(pán)介質(zhì)存儲(chǔ)技術(shù)中也使用該方法。當(dāng)碼字c通過(guò)噪聲信道傳送時(shí),會(huì)受到干擾而產(chǎn)

9、生錯(cuò)誤。如果信道產(chǎn)生的錯(cuò)誤圖樣是 e,譯碼器收到的n重接受矢量是y,則表示為:y=c + e上式也可以寫(xiě)成多項(xiàng)式形式:y(x) =c(x) e(x),譯碼器的任務(wù)就是從 y(x)中得到e(x),AAA然后求的估值碼字 c(x) = y(x) e(x)并從中得到信息組 m(x)。循環(huán)碼譯碼可按以下三個(gè)步驟進(jìn)行:(1)有接收到的y(x)計(jì)算伴隨式s(x); (2)根據(jù)伴隨式s(x)找出對(duì)應(yīng)的估值錯(cuò)誤圖樣AAAAAe(x) ;(3)計(jì)算c(x) = y(x) e(x)A,得到估計(jì)碼字 c(x)。若c(x) =c(x),則譯碼正確,否則,若c(x) =c(x),則譯碼錯(cuò)誤。由于g(x)的次數(shù)為n -

10、k次,g(x)除E(x)后得余式(即伴隨式)的最高次數(shù)為n-k-1 次,n -k故S(x)共有2個(gè)可能的表達(dá)式,每一個(gè)表達(dá)式對(duì)應(yīng)一個(gè)錯(cuò)誤格式??梢灾?7,4)循環(huán)(7碼的S(x)共有2= 8個(gè)可能的表達(dá)式,可根據(jù)錯(cuò)誤圖樣表來(lái)糾正(7,4)循環(huán)碼中的一位錯(cuò)誤,其伴隨式如表 1所示。BCH ( 7,4)循環(huán)碼錯(cuò)誤圖樣表:惜誤圉樣措誤圖樣碼字伴隨式SO)伴隨式10000001000100000Jr110EXx)=»40010000x2+x+l111EXx)=X3oooiooox+1OilEXx)=x;0000100101Ei(x)=xj0000010X01000000011001Eg=O

11、:ooooooo0000表1 BCH (7, 4)循環(huán)碼錯(cuò)誤圖樣上式指出了系統(tǒng)循環(huán)碼的譯碼方法:將收到的碼字R(x)用g(x)去除,如果除盡則無(wú)錯(cuò);否則有錯(cuò)。如果有錯(cuò),可由余式S(x) 一一找出對(duì)應(yīng)圖樣,然后將錯(cuò)誤圖樣 E(x)與R(x)模2和, 即為所求碼字C(x),從而實(shí)現(xiàn)糾錯(cuò)目的。根據(jù)前面的討論,可得(7,4)循環(huán)碼譯碼的程序框圖如下圖所示:三、MATLAB程序仿真下面采用(15,7 )循環(huán)碼進(jìn)行仿真。如果不考慮具體的編碼和譯碼過(guò)程,采用系統(tǒng)默認(rèn) 的生成矩陣,則仿真方法如下。%(15,7)循環(huán)編碼性能(糾錯(cuò)后還原為信息序列,與原信息序列進(jìn)行比較)bits=70000;% 符號(hào)數(shù)msg=r

12、andint(bits,1,2);%隨機(jī)產(chǎn)生的信息序列SNR=0:1:12;% 信噪比L=le ngth(SNR);BER仁zeros(1,L);BER2=zeros(1,L);modbit仁pskmod(msg,2);% 調(diào)制for k=1:L%未編碼的序列,調(diào)制后經(jīng)過(guò)高斯白噪聲信道,再解調(diào)制,求誤碼y1=awgn(modbit1,SNR(k),'measured');% 在傳輸序列中加入 AWGN 噪聲 demmsg仁pskdemod(y1,2);% 解調(diào) recode=reshape(demmsg1',1,); error1=(recode=msg');e

13、rrorbits=sum(error1);BER1(k)=errorbits/le ngth(msg); end code=encode(msg,15,7,'syclic',1 0 0 0 1 0 1 1 1);%(15,7)循環(huán)編碼 modbit2=pskmod(code,2);% 調(diào)制for k=1:L%編碼的序列,調(diào)制后經(jīng)過(guò)高斯白噪聲信道,再解調(diào)制,再糾錯(cuò)后求誤碼 y2=awgn(modbit2,SNR(k),'measured'); % 在傳輸序列中加入 AWGN 噪聲 demmsg2=pskdemod(y2,2);% 解調(diào)recode=reshape(

14、demmsg2',1,); decodebit=decode(recode,15,7,'cyclic',1 0 0 0 1 0 1 1 1);% 譯碼 error2=(decodedbit=msg');errorbits=sum(error2);BER2(k)=errorbits/le ngth(msg);endsemilogy(SNR,(BER1),'b-*')% 畫(huà)圖hold on semilogy(SNR,(BER2),'r-o')grid onlegend('未編碼','(15,7)循環(huán)編碼'

15、;); xlabel('SNR/dB');ylabel('BER');title('(15,7)循環(huán)編碼性能') 運(yùn)行結(jié)果如圖所示。(磚.7)循環(huán)編碼性能1未編碼 召一門(mén)5,乃循環(huán)編碼12345678SNR/d0由圖可見(jiàn),不管是循環(huán)編碼還是未編碼的代碼,經(jīng)譯碼后誤碼率都是隨著信道信噪比 的提升而下降,但相比之下,在同一信噪比時(shí),系統(tǒng)采用循環(huán)碼編碼后性能較好,與未編碼的系統(tǒng)相比誤碼率大大降低。四、Simulink仿真(1)設(shè)計(jì)思路(2)設(shè)計(jì)原理圖在設(shè)計(jì)中,本系統(tǒng)信號(hào)產(chǎn)生模塊選用了伯努利二進(jìn)制序列產(chǎn)生器 (Bernoulli Bin ary Gen

16、erator )來(lái)輸出隨機(jī)數(shù)字信號(hào),然后進(jìn)入二進(jìn)制循環(huán)碼編碼器 (Bin ary Cyclic En coder )來(lái)進(jìn)行編碼,再送進(jìn)入AWGN信道(加入高斯白噪聲)傳輸,接受信號(hào)送入二進(jìn)制循環(huán)碼譯碼器(Binary Cyclic Decoder )進(jìn)行差錯(cuò)糾正,其后加一誤碼率計(jì)算模塊(Error Rate Calculation )計(jì)算誤碼率。電路圖如下圖所示。GisnsritiB a Bsmoulli random binaiy number. To genexate a uectoK output specify the probability a vector.(3) SIMULINK

17、 仿真模塊的參數(shù)設(shè)置:號(hào) Source Block Paremeter/ Bernmjlli Bain"# Genetirto Bernoulli Binary Gerwretar貝努利二進(jìn)制序列產(chǎn)生器模塊的設(shè)置框圖 左圖是貝努利二進(jìn)制序列產(chǎn)生器模塊的設(shè)置框圖,其中參數(shù)有三項(xiàng):第一項(xiàng)probability of a zero取值為0.5, 表示0和1出現(xiàn)的概率相等。Initial seed表示隨機(jī)種子 數(shù)。不同的隨機(jī)種子數(shù)將產(chǎn)生不同的二進(jìn)制序列,特定 的隨機(jī)種子數(shù)可以產(chǎn)生一個(gè)特定的二進(jìn)制序列。Sampletime=0.01表示抽樣時(shí)間,也就是說(shuō)輸出序列中每個(gè)二進(jìn) 制符號(hào)的持續(xù)時(shí)間是

18、0.01秒。Samples per frame表示每 幀的抽樣數(shù)用來(lái)確定每幀的抽樣點(diǎn)的數(shù)目。JIB runctim Block PiM-anietet-s: E1FSK rB>oduhitcH, B-aschand6PSK Nodul a.t de BLS-vb-and (n.ask) (1 xrik)Modylvt* th« inpuft $icn»l utinc th* binary pht« keying TiAthodl.For eanple-based inputj the input niJEt be -a. sea f e amebaS ed

19、ifiput,inputbw at Lujnn vI tn caxie of fr ante-baaed iripirt, the vidth. of the TtAiTie eQual the product a£ the- nimber <yf simba Sanples per symbol valueIn cue of fwplr-bued liputj&utp«rt sanplBPSK調(diào)制器模塊的設(shè)置框圖如左圖所示,BPSK調(diào)制器模塊的設(shè)置框圖中有 二項(xiàng),第一項(xiàng)是 Phase offset(rad)(相位偏移),這里 設(shè)置為0。第二項(xiàng)是Samples

20、 per symbol (輸出信號(hào) 采樣數(shù))這里設(shè)置為1。二進(jìn)制循環(huán)編碼器模塊的設(shè)置框圖 如右圖所示,碼字長(zhǎng)度為7信息碼長(zhǎng) 為4。Fmrkiican Hi«Mrk Pwflinwtvriir Hindiry ryrlir FnrnxlM"£rti>ury Cyolio Enc&d#r Citask) CljLttk>C r h si: la xyE-t inmt ic crcl 3 cacUi *vipTi m事事耳K atndc-o-de-4口TilN. Ura- £'iuftb«t: N Must h&v

21、fi- ilia r衛(wèi)丄亦5"M- h *heEC Ji an initecer seta!er than or «qu.al to 3Tk*- SpLL'i: BlUS-I.亡K 6-l«iMELlL>n If £t 1 ± f eaiicbajjcd then it wutrt ba a CDlumx vect or.Par-anet ereCodfluxjrd 1 mift h H;BLe-xift ti »:_, g fati«E Ai: oar palyifLiUilAl t4equals this

22、synbol period divided by the Sanplt:s S3mbal value.% runetkrn Bkd Pw«mdieri; JlWr外 ChannellABV EitmIClink)Add 'hitarwis? te tlw input rajcul. The input sicnal c-sr. b? rB&l «ge(p】0x Thir blxis support r HultichariiwL pioc9Erij<ihwi wine pithtc of th? varawv nod強(qiáng) with crwplwi iii

23、put Fj thswiluflsarvdivided 砂mu the t«si1 nd avucinarjr聲!iwrrt 事 rf th? ippirtPatutte-15Tnpijt 7r.-.-rrir.r TriHiitvd thir dlwicB nil bv E*HW«ed BW nlfW Jllrtw> ndm=W 7193-HI rl ip IEh/Fn.1zEk/Ho I.A)-Niabtr of biiia per syihol:AWGN模塊參數(shù)設(shè)置框圖如左圖所示,Initial seed表示隨機(jī)種子 數(shù)。不同的隨機(jī)種子數(shù)將產(chǎn)生不同的二進(jìn)制 序列

24、,特定的隨機(jī)種子數(shù)可以產(chǎn)生一個(gè)特定 的二進(jìn)制序列。信噪比為10dB,每個(gè)符號(hào)的 比特?cái)?shù)為1,輸入信號(hào)功率為1w,符號(hào)周期 為1s。Input rkcrval pawtr? iqfvrmred to I Lwtts);誤比特統(tǒng)計(jì)模塊的設(shè)置框圖如右圖所示,其中 Receive delay表示接收延 遲,意思是在通信接收端口需要對(duì)接收到的信號(hào) 進(jìn)行解調(diào),解碼或解交織而帶來(lái)一定的延遲,使 得到達(dá)誤碼統(tǒng)計(jì)模塊接收端的信號(hào)滯后于發(fā)送端 的信號(hào)。為了補(bǔ)償這種延遲這里設(shè)置為0。Computation delay表示計(jì)算延遲,在仿真過(guò)程中, 有時(shí)間需要忽略最初的若干個(gè)輸入數(shù)據(jù)就通過(guò)計(jì) 算延遲來(lái)實(shí)現(xiàn)。這里設(shè)置為0

25、。Computation mode表示計(jì)算模式,幀的計(jì)算模式(Entire frame),誤碼 統(tǒng)計(jì)模塊對(duì)發(fā)送端和接收端的所有輸入數(shù)據(jù)進(jìn)行 統(tǒng)計(jì)。output data是輸出數(shù)據(jù),這里設(shè)置為Port的意思是表示把統(tǒng)計(jì)數(shù)據(jù)從端口中輸出。 workspace表示把統(tǒng)計(jì)數(shù)據(jù)輸出到工作區(qū)。W lune tian Black' Pdpanwterc: LtfofR-bAe LJilkulatHuiErrar Hate Ctlnil(ihasLt) (link)Conput e ttie error ca.t e of the received da.t a. by caKpatirig; it

26、to a delayed veesi-tm ef the ttatismtted datablock wtput i« 4乍 1審亦 ertor upnsiHtiM of thte-rror rate, fallowed, by the- number of errors deterte-d and the total nunbet -&f 占ymboL呂 conpaieii. This vector can be seiTt to cithE1 the wprh'pac# or 砂.aiatput portrThe delays aie specified in r

27、iunber of 3anpl«a regardless of whetEur the input is a. scalar or a vtrt cr- The Lfiputs to the ' and "應(yīng)" pSrts nust be匕EK bEcolunri sectors.The P Stopiticn ftopf the finalatiMdetecting a target n<u»b>tr of errors or 程 naxiHMA nunbftir of 5ynbolsp vhichewt cdtic-s- firrt bPar ajieters1delayE Sink Bkick P缶汩"絶T& WoHkpceTd Va rkrpaceVrite input to specified array or structure in a vorkspaceP For meriu based simulaticiri, data is written 訕 the UTLAB

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論