QPSK調(diào)制解調(diào)的仿真_第1頁
QPSK調(diào)制解調(diào)的仿真_第2頁
QPSK調(diào)制解調(diào)的仿真_第3頁
QPSK調(diào)制解調(diào)的仿真_第4頁
QPSK調(diào)制解調(diào)的仿真_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、引言近年來,軟件無線電作為解決通信體制兼容性問題的重要方法受到各方面的注意。它的中心思想是在通用的硬件平臺上,用軟件來實現(xiàn)各種功能,包括調(diào)制解調(diào)類型、數(shù)據(jù)格式、通信協(xié)議等。通過軟件的增加、修改或升級就可以實現(xiàn)新的功能,充分體現(xiàn)了體制的靈活性、可擴展性等。其中軟件的增加、高頻譜效率的調(diào)制解調(diào)模塊是移動通信系統(tǒng)的關(guān)鍵技術(shù),它的軟件化也是實現(xiàn)軟件無線電的重要環(huán)節(jié)。QPSK是英文Quadrature Phase Shift Keying的縮略語簡稱,意為正交相移鍵控,是一種數(shù)字調(diào)制方式。在19世紀80年代初期,人們選用恒定包絡(luò)數(shù)字調(diào)制。這類數(shù)字調(diào)制技術(shù)的優(yōu)點是已調(diào)信號具有相對窄的功率譜和對放大設(shè)備沒有

2、線性要求,不足之處是其頻譜利用率低于線性調(diào)制技術(shù)。19世紀80年代中期以后,四相絕對移相鍵控(QPSK)技術(shù)以其抗干擾性能強、誤碼性能好、頻譜利用率高等優(yōu)點,廣泛應用于數(shù)字微波通信系統(tǒng)、數(shù)字衛(wèi)星通信系統(tǒng)、寬帶接入、移動通信及有線電視系統(tǒng)之中。通過完成設(shè)計內(nèi)容, 復習QPSK調(diào)制解調(diào)的基本原理,同時也要復習通信系統(tǒng)的主要組成部分,了解調(diào)制解調(diào)方式中最基礎(chǔ)的方法。了解QPSK的實現(xiàn)方法及數(shù)學原理。并對“通信”這個概念有個整體的理解,學習數(shù)字調(diào)制中誤碼率測試的標準及計算方法。同時還要復習隨機信號中時域用自相關(guān)函數(shù),頻域用功率譜密度來描述平穩(wěn)隨機過程的特性等基礎(chǔ)知識,來理解高斯信道中噪聲的表示方法,以

3、便在編程中使用。理解QPSK調(diào)制解調(diào)的基本原理,并使用MATLAB編程實現(xiàn)QPSK信號在高斯信道和瑞利衰落信道下傳輸,以及該方式的誤碼率測試。復習MATLAB編程的基礎(chǔ)知識和編程的常用算法以及使用MATLAB仿真系統(tǒng)的注意事項,并鍛煉自己的編程能力,通過編程完成QPSK調(diào)制解調(diào)系統(tǒng)的仿真,以及誤碼率測試,并得出響應波形。在完成要求任務(wù)的條件下,嘗試優(yōu)化程序。本課設(shè)是基于Matlab的軟件仿真,只需PC機上安裝MATLAB 6.0或者以上版本即可。課設(shè)的要求是1.構(gòu)建一個理想信道基本QPSK仿真系統(tǒng),要求仿真結(jié)果有:基帶輸入波形及其功率譜;QPSK信號及其功率譜 ;QPSK信號星座圖。2.構(gòu)建一

4、個在AWGN(高斯白噪聲)信道條件下的QPSK仿真系統(tǒng), 得出高斯白噪聲信道條件下的誤碼性能以及高斯白噪聲的理論曲線,要求所有誤碼性能曲線在同一坐標比例下繪制。通過本次實驗,除了和隊友培養(yǎng)了默契學到了知識之外,還可以將次實驗作為一種推廣,讓更多的學生來深入一層的了解QPSK以至其他調(diào)制方式的原理和實現(xiàn)方法??梢苑奖銓W生進行測試和對比。足不出戶便可以做實驗。1 方案論證 本次課設(shè)是基于MATLAB環(huán)境下對QPSK調(diào)制解調(diào)系統(tǒng)進行仿真。在Matlab環(huán)境下有兩種仿真方案,一種是基于simulink對QPSK進行模塊化的仿真,要求是不能直接調(diào)用軟件里面的集成模塊,以此來實現(xiàn)QPSK系統(tǒng)的仿真。另一種

5、方案是在Matlab環(huán)境下,用軟件編程的方法來實現(xiàn)調(diào)制解調(diào)系統(tǒng)的仿真,并且得出不同信道的誤碼率,并作以比較。 1.1 方案一 在Matlab環(huán)境下,用軟件編程的方法來實現(xiàn)QPSK調(diào)制解調(diào)系統(tǒng)的仿真。Matlab是一款由美國Math Works公司出品的商業(yè)數(shù)學軟件。MATLAB 是一種用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計算的高級技術(shù)計算語言和交互式環(huán)境。除了矩陣運算、繪制函數(shù)/數(shù)據(jù)圖像等常用功能外,MATLAB還可以用來創(chuàng)建用戶界面及與調(diào)用其它語言(包括C,C+和FORTRAN)編寫的程序。我們此次可以應用它的這種功能,在熟練掌握語言編程以及深刻理解QPSK的基礎(chǔ)上,嚴格按照程序仿真的

6、流程圖對各部分進行程序編寫并仿真。應用理論知識來驗證最終的仿真結(jié)果是否正確。1.2 方案二在Matlab環(huán)境下的Simulink模塊庫中應用模塊來搭建QPSK調(diào)制解調(diào)系統(tǒng)的仿真電路模塊。在深入了解QPSK調(diào)制解調(diào)系統(tǒng)理論知識的情況下,根據(jù)理論知識構(gòu)建調(diào)制解調(diào)的系統(tǒng)框圖。在此基礎(chǔ)上選擇合適的電路器件以及設(shè)置合理的參數(shù),構(gòu)成調(diào)制解調(diào)的總體電路框圖。Simulink是MATLAB最重要的組件之一,它提供一個動態(tài)系統(tǒng)建模、仿真和綜合分析的集成環(huán)境。在該環(huán)境中只要通過簡單的鼠標操作,就可以構(gòu)造出復雜的系統(tǒng)。Simulink提供了一個建立模型方塊圖的圖形用戶接口,這個創(chuàng)建過程只需單擊和拖動鼠標操作就能完成

7、,它提供了一種更快捷、直接明了的方式,而且用戶可以立即看到系統(tǒng)的仿真結(jié)果。在此基礎(chǔ)上完成電路圖的搭建,得出仿真結(jié)果,并與實際的理論結(jié)果相比較。1.3 方案確立在經(jīng)過詳細的考慮和比較之后,我確立了方案一為本次課程設(shè)計的最終方案。QPSK的調(diào)制方法有兩種,分別是相乘電路法和選擇法,結(jié)合本次設(shè)計的實際情況,最終選擇用程序方式實現(xiàn)相乘電路的調(diào)制方式。因為在Matlab中應用程序?qū)PSK調(diào)制解調(diào)系統(tǒng)進行仿真,一方面降低了系統(tǒng)設(shè)計的復雜性,并且有效的克服了電子瓶頸的問題。因為在電子電路中,總體電路對參數(shù)設(shè)置是非常敏感的,一旦參數(shù)設(shè)置出現(xiàn)小的偏差,將會影響到整個電路的結(jié)果。另一方面程序的仿真過程中可以將主

8、程序分為很多個子程序,將它們逐個進行仿真,這樣不會影響到整體結(jié)果,可以逐步進行調(diào)試。結(jié)合以上的比較論證以及自身的能力,最終我決定用程序法來完成此次對QPSK調(diào)制解調(diào)系統(tǒng)的仿真。2 仿真原理四相相位調(diào)制解調(diào)是利用載波的四種不同相位差來表征輸入的數(shù)字信息 ,是四進制移相鍵控。QPSK是在 M =4時的調(diào)相技術(shù) ,它規(guī)定了四種載波相位 ,分別為 45, 135, 225, 275,調(diào)制器輸入的數(shù)據(jù)是二進制數(shù)字序列 ,為了能和四進制的載波相位配合起來 ,則需要把二進制數(shù)據(jù)變換為四進制數(shù)據(jù) ,這就是說需要把二進制數(shù)字序列中每兩個比特分成一組 ,共有四種組合 ,即 00, 01, 10, 11,其中每一組

9、稱為雙比特碼元。每一個雙比特碼元是由兩位二進制信息比特組成 ,它們分別代表四進制四個符號中的一個符號。QPSK中每次調(diào)制可傳輸 2個信息比特 ,這些信息比特是通過載波的四種相位來傳遞的。解調(diào)器根據(jù)星座圖及接收到的載波信號的相位來判斷發(fā)送端發(fā)送的信息比特。數(shù)字調(diào)制用“星座圖 ”來描述 ,星座圖中定義了一種調(diào)制技術(shù)的兩個基本參數(shù) : (1)信號分布; (2) 與調(diào)制數(shù)字比特之間的映射關(guān)系。星座圖中規(guī)定了星座點與傳輸比特間的對應關(guān)系 ,這種關(guān)系稱為“映射 ”,一種調(diào)制技術(shù)的特性可由信號分布和映射完全定義 ,即可由星座圖來完全定義3 。在 QPSK調(diào)制中 ,QPSK信號可以看作兩個載波正交的 2PSK

10、調(diào)制器構(gòu)成。串 /并變換器將輸入的二進制序列分為速率減半的兩個并行的雙極性序列 ,然后分別對 sinct和 cosct調(diào)制 ,相加后得到QPSK調(diào)制信號。QPSK同相支路和正交支路可分別采用相干解調(diào)方式解調(diào) ,得到 I( t)和 Q ( t)。經(jīng)抽樣判決和并 /串變換器 ,將上、下支路得到的并行數(shù)據(jù)恢復成串行數(shù)據(jù)。21 QPSK調(diào)制原理 在 QPSK調(diào)制中 ,QPSK信號可以看作兩個載波正交的 2PSK調(diào)制器構(gòu)成。串 /并變換器將輸入的二進制序列分為速率減半的兩個并行的雙極性序列 ,然后分別對 sinct和 cosct調(diào)制 ,相加后得到QPSK調(diào)制信號。QPSK同相支路和正交支路可分別采用相干

11、解調(diào)方式解調(diào) ,得到 I( t)和 Q ( t)。經(jīng)抽樣判決和并 /串變換器 ,將上、下支路得到的并行數(shù)據(jù)恢復成串行數(shù)據(jù)。調(diào)制原理框圖如圖2.1所示圖2.1 QPSK調(diào)制原理框圖原理分析:基本原理及系統(tǒng)結(jié)構(gòu)QPSK與二進制PSK一樣,傳輸信號包含的信息都存在于相位中。的別的載波相位取四個等間隔值之一,如/4, 3/4,5/4,和7/4。相應的,可將發(fā)射信號定義為 0tTSi(t) 0 (2.1.1)其中,i1,2,2,4;E為發(fā)射信號的每個符號的能量,T為符號持續(xù)時間,載波頻率f等于nc/T,nc為固定整數(shù)。每一個可能的相位值對應于一個特定的二位組。例如,可用前述的一組相位值來表示格雷碼的一組

12、二位組:10,00,01,11。下面介紹QPSK信號的產(chǎn)生和檢測。如果a為典型的QPSK發(fā)射機框圖。輸入的二進制數(shù)據(jù)序列首先被不歸零(NRZ)電平編碼轉(zhuǎn)換器轉(zhuǎn)換為極性形式,即負號1和0分別用和表示。接著,該二進制波形被分接器分成兩個分別由輸入序列的奇數(shù)位偶數(shù)位組成的彼此獨立的二進制波形,這兩個二進制波形分別用a1(t),和a2(t)表示。容易注意到,在任何一信號時間間隔內(nèi)a1(t),和a2(t)的幅度恰好分別等于Si1和 Si2,即由發(fā)送的二位組決定。這兩個二進制波形a1(t),和a2(t)被用來調(diào)制一對正交載波或者說正交基本函數(shù):1(t),2(t)。這樣就得到一對二進制PSK信號。1(t)和

13、2(t)的正交性使這兩個信號可以被獨立地檢測。最后,將這兩個二進制PSK信號相加,從而得期望的QPSK。2.2 QPSK解調(diào)原理在 QPSK解調(diào)中 ,正交支路和同相支路分別設(shè)置兩個相關(guān)器 (或匹配濾波器 ) ,得到 I( t)和 Q ( t) ,經(jīng)電平判決和并 /串變換后即可恢復原始信息從發(fā)射機發(fā)射的已調(diào)信號經(jīng)過傳輸媒質(zhì)傳播到接收端 ,接收機接收到的己調(diào)信號為:SQPSK( t) = I( t) cosct +Q ( t) sinct (2.2.1)I( t)、Q ( t)分別為同相和正交支路 ,c為載波頻率 ,那么相干解調(diào)后 ,同相支路相乘可得:Ii( t) = SQPSK( t) cosc

14、t = I( t) cosct +Q ( t) sinctcosct =I( t) cos2wct +Q ( t) sin wct /2=I( t)/2- I( t) cos 2ct +Q ( t) sin 2ct (2.2.2)正交支路相乘可得:Qq( t) = SQPSK( t) sinct = I( t) cosct +Q ( t) sinctsinct = I( t) sinct cosct +Q (t) sin2ct =I(t) sin 2ct/2 +Q ( t)-Q ( t) cos 2ct (2.2.3)經(jīng)過低通濾波器可得:Ii( t) =0.5I( t), Qq( t) =0.

15、5Q ( t) (2.2.4) 原理框圖如圖2.2所示: 1(t ) 同相信道 門限0發(fā)送二進制序列的估計判決門限低通filrer判決門限復接器接收信 號x(t)低通filrer 2(t) 正交信道 門限0 圖2.2 QPSK解調(diào)原理框圖原理分析:QPSK接收機由一對共輸入地相關(guān)器組成。這兩個相關(guān)器分別提供本地產(chǎn)生地相干參考信號1(t)和2(t)。相關(guān)器接收信號x(t),相關(guān)器輸出地x1和x2被用來與門限值0進行比較。如果x10,則判決同相信道地輸出為符號1;如果x10.5; % 調(diào)用一個隨機函數(shù)(0 or 1),輸出到一個1*100的矩陣datanrz=data.*2-1; % 變成極性碼d

16、ata1=zeros(1,nb/delta_T); % 創(chuàng)建一個1*nb/delta_T的零矩陣for q=1:nb data1(q-1)/delta_T+1:q/delta_T)=datanrz(q); % 將極性碼變成對應的波形信號end % 將基帶信號變換成對應波形信號data0=zeros(1,nb/delta_T); % 創(chuàng)建一個1*nb/delta_T的零矩陣for q=1:nb data0(q-1)/delta_T+1:q/delta_T)=data(q); % 將極性碼變成對應的波形信號end % 發(fā)射的信號data2=abs(fft(data1);% 串并轉(zhuǎn)換,將奇偶位數(shù)據(jù)分

17、開idata=datanrz(1:ml:(nb-1); % 將奇偶位分開,因此間隔m1為2 qdata=datanrz(2:ml:nb);% QPSK信號的調(diào)制ich=zeros(1,nb/delta_T/2); % 創(chuàng)建一個1*nb/delta_T/2的零矩陣,以便后面存放奇偶位數(shù)據(jù)for i=1:nb/2 ich(i-1)/delta_T+1:i/delta_T)=idata(i);endfor ii=1:N/2 a(ii)=sqrt(2/T)*cos(2*pi*fc*t(ii); endidata1=ich.*a; % 奇數(shù)位數(shù)據(jù)與余弦函數(shù)相乘,得到一路的調(diào)制信號qch=zeros(1,

18、nb/2/delta_T);for j1=1:nb/2 qch(j1-1)/delta_T+1:j1/delta_T)=qdata(j1);endfor jj=1:N/2 b(jj)=sqrt(2/T)*sin(2*pi*fc*t(jj);endqdata1=qch.*b; % 偶數(shù)位數(shù)據(jù)與余弦函數(shù)相乘,得到另一路的調(diào)制信號s=idata1+qdata1; % 將奇偶位數(shù)據(jù)合并,s即為QPSK調(diào)制信號ss=abs(fft(s); % 快速傅里葉變換得到頻譜% 瑞利衰落信道和高斯信道% 瑞利衰落信道ray_ich=raylrnd(0.8,1,nb/2/delta_T);ray_qch=raylr

19、nd(0.8,1,nb/2/delta_T);Ray_idata=idata1.*ray_ich;Ray_qdata=qdata1.*ray_qch;Ray_s=Ray_idata+Ray_qdata;% 高斯信道 s1=awgn(s,SNR); % 通過高斯信道之后的信號s11=abs(fft(s1); % 快速傅里葉變換得到頻譜 s111=s1-s; % 高斯噪聲曲線%Awgn_s=awgn(Ray_s,SNR); % 通過高斯信道再通過瑞利衰落信道% QPSK 解調(diào)部分% 解調(diào)部分(高斯信道)idata2=s1.*a; % 這里面其實隱藏了一個串并轉(zhuǎn)換的過程qdata2=s1.*b; %

20、 對應的信號與正余弦信號相乘idata3=zeros(1,nb/2); % 建立1*nb數(shù)組,以存放解調(diào)之后的信號qdata3=zeros(1,nb/2);% 抽樣判決的過程,與0作比較,data=0,則置1,否則置0for n=1:nb/2% A1(n)=sum(idata2(n-1)/delta_T+1:n/delta_T); if sum(idata2(n-1)/delta_T+1:n/delta_T)=0 idata3(n)=1; else idata3(n)=0; end% A2(n)=sum(qdata2(n-1)/delta_T+1:n/delta_T); if sum(qdat

21、a2(n-1)/delta_T+1:n/delta_T)=0 qdata3(n)=1; else qdata3(n)=0; endend % 為了顯示星座圖,將信號進行處理idata4=zeros(1,nb/2);qdata4=zeros(1,nb/2);for n=1:nb/2 Awgn_ichsum(n)=sum(idata2(n-1)/delta_T+1:n/delta_T)*delta_T; if Awgn_ichsum(n)=0 idata4(n)=1; else idata4(n)=0; end Awgn_qchsum(n)=sum(qdata2(n-1)/delta_T+1:n/

22、delta_T)*delta_T; if Awgn_qchsum(n)=0 qdata4(n)=1; else qdata4(n)=0; endend% 將判決之后的數(shù)據(jù)存放進數(shù)組demodata=zeros(1,nb);demodata(1:ml:(nb-1)=idata3; % 存放奇數(shù)位demodata(2:ml:nb)=qdata3; % 存放偶數(shù)位%為了顯示,將它變成波形信號(即傳輸一個1代表單位寬度的高電平)demodata1=zeros(1,nb/delta_T); % 創(chuàng)建一個1*nb/delta_T的零矩陣for q=1:nb demodata1(q-1)/delta_T+1

23、:q/delta_T)=demodata(q); % 將極性碼變成對應的波形信號end % 累計誤碼數(shù)% abs(demodata-data)求接收端和發(fā)射端% 數(shù)據(jù)差的絕對值,累計之后就是誤碼個數(shù)Awgn_num_BER=sum(abs(demodata-data) % 解調(diào)部分(瑞利+高斯)Ray_idata2=Ray_s.*a; % 這里面其實隱藏了一個串并轉(zhuǎn)換的過程Ray_qdata2=Ray_s.*b; % 對應的信號與正余弦信號相乘% Ray_idata3=zeros(1,nb/2); % 建立1*nb數(shù)組,以存放解調(diào)之后的信號% Ray_qdata3=zeros(1,nb/2);

24、% 抽樣判決的過程,與0作比較,data=0,則置1,否則置0% for n=1:nb/2% if Ray_sum(Ray_idata2(n-1)/delta_T+1:n/delta_T)=0% Ray_idata3(n)=1;% else Ray_idata3(n)=0; % end% if Ray_sum(Ray_qdata2(n-1)/delta_T+1:n/delta_T)=0% Ray_qdata3(n)=1;% else Ray_qdata3(n)=0;% end% end % 為了顯示星座圖,將信號進行處理Ray_idata4=zeros(1,nb/2);Ray_qdata4=z

25、eros(1,nb/2);for n=1:nb/2 Ray_ichsum(n)=sum(idata2(n-1)/delta_T+1:n/delta_T)*delta_T; if Ray_ichsum(n)=0 Ray_idata4(n)=1; else Ray_idata4(n)=0; end Ray_qchsum(n)=sum(qdata2(n-1)/delta_T+1:n/delta_T)*delta_T; if Ray_qchsum(n)=0 Ray_qdata4(n)=1; else Ray_qdata4(n)=0; endend % 將判決之后的數(shù)據(jù)存放進數(shù)組Ray_demodata

26、=zeros(1,nb);Ray_demodata(1:ml:(nb-1)=Ray_idata4; % 存放奇數(shù)位Ray_demodata(2:ml:nb)=Ray_qdata4; % 存放偶數(shù)位%為了顯示,將它變成波形信號(即傳輸一個1代表單位寬度的高電平)Ray_demodata1=zeros(1,nb/delta_T); % 創(chuàng)建一個1*nb/delta_T的零矩陣for q=1:nb Ray_demodata1(q-1)/delta_T+1:q/delta_T)=Ray_demodata(q); % 將極性碼變成對應的波形信號end % 累計誤碼數(shù)% abs(demodata-data

27、)求接收端和發(fā)射端% 數(shù)據(jù)差的絕對值,累計之后就是誤碼個數(shù)Ray_num_BER=sum(abs(Ray_demodata-data) % % 誤碼率計算% 調(diào)用了cm_sm32();和cm_sm33()函數(shù)%聲明: 函數(shù)聲明在另外倆個M文件中%作用: cm_sm32()用于瑞利信道誤碼率的計算% cm_sm33()用于高斯信道誤碼率的計算% ecoh on/off 作用在于決定是否顯示指令內(nèi)容%SNRindB1=0:1:6;SNRindB2=0:0.1:6;% 瑞利衰落信道 for i=1:length(SNRindB1), pb,ps=cm_sm32(SNRindB1(i); % 比特誤碼

28、率 smld_bit_ray_err_prb(i)=pb; smld_symbol_ray_err_prb(i)=ps; disp(ps,pb); echo off; end;% 高斯信道 echo on;for i=1:length(SNRindB1), pb1,ps1=cm_sm33(SNRindB1(i); smld_bit_awgn_err_prb(i)=pb1; smld_symbol_awgn_err_prb(i)=ps1; disp(ps1,pb1); echo off;end;% 理論曲線echo on;for i=1:length(SNRindB2), SNR=exp(SNR

29、indB2(i)*log(10)/10); % 信噪比 theo_err_awgn_prb(i)=0.5*erfc(sqrt(SNR); % 高斯噪聲理論誤碼率 theo_err_ray_prb(i)=0.5*(1-1/sqrt(1+1/SNR); % 瑞利衰落信道理論誤碼率 echo off;end;%h = spectrum.welch; % 類似于C語言的宏定義,方便以下的調(diào)用 % 輸出顯示部分% 第一部分(理想)figure(1)subplot(3,2,1);plot(data0),title(基帶信號);axis(0 20000 -2 2);subplot(3,2,2);psd(h,

30、data1,fs,fs),title(基帶信號功率譜密度);subplot(3,2,3);plot(s),title(調(diào)制信號);axis(0 500 -3 3);subplot(3,2,4);psd(h,s,fs,fs),title(調(diào)制信號功率譜密度);subplot(3,2,5);plot(demodata1),title(解調(diào)輸出);axis(0 20000 -2 2);subplot(3,2,6);psd(h,demodata1,fs,fs),title(解調(diào)輸出功率譜密度);% 通過高斯信道figure(2)subplot(2,2,1);plot(s1),title(調(diào)制信號(Aw

31、gn);axis(0 500 -5 5);subplot(2,2,2);psd(h,s1,fs,fs),title(調(diào)制信號功率譜密度(Awgn);subplot(2,2,3);plot(s111),title(高斯噪聲曲線);axis(0 2000 -5 5);subplot(2,2,4);for i=1:nb/2plot(idata(i),qdata(i),r+),title(QPSK信號星座圖(Awgn));hold on;axis(-2 2 -2 2);plot(Awgn_ichsum(i),Awgn_qchsum(i),*);hold on;legend(理論值(發(fā)射端),實際值(接

32、收端));end%通過高斯信道再通過瑞利衰落信道 figure(3) subplot(2,2,1)plot(Ray_s),title(調(diào)制信號(Ray+Awgn);axis(0 500 -5 5);subplot(2,2,2);psd(h,Ray_s,fs,fs),title(調(diào)制信號功率譜密度(Ray);subplot(2,2,3);for i=1:nb/2plot(idata(i),qdata(i),r+),title(QPSK信號星座圖(Awgn+Ray));hold on;axis(-2 2 -2 2);plot(Ray_ichsum(i),Ray_qchsum(i),*);hold

33、on;legend(理論值(發(fā)射端),實際值(接收端));end subplot(2,2,4) semilogy(SNRindB2,theo_err_awgn_prb,r),title(誤碼率曲線);hold on; semilogy(SNRindB1,smld_bit_awgn_err_prb,r*);hold on; semilogy(SNRindB2,theo_err_ray_prb);hold on; semilogy(SNRindB1,smld_bit_ray_err_prb,*); xlabel(Eb/No);ylabel(BER); legend(理論AWGN,仿真AWGN,理論

34、Rayleigh,仿真Rayleigh);%文件2function pb,ps=cm_sm32(snr_in_dB)% pb,ps=cm_sm32(snr_in_dB)% CM_SM3 finds the probability of bit error and symbol error for % the given value of snr_in_dB, signal to noise ratio in dB.N=100;E=1; % energy per symbolnumofsymbolerror=0;numofbiterror=0;counter=0;snr=10(snr_in_dB

35、/10); % signal to noise ratiosgma=sqrt(E/snr)/2; % noise variances00=1 0; s01=0 1; s11=-1 0; s10=0 -1; % signal mapping% generation of the data sourcewhile(numofbiterror100)for i=1:N, temp=rand; % a uniform random variable between 0 and 1 if (temp0.25), % with probability 1/4, source output is 00 ds

36、ource1(i)=0; dsource2(i)=0; elseif (temp0.5), % with probability 1/4, source output is 01 dsource1(i)=0; dsource2(i)=1; elseif (temp0.75), % with probability 1/4, source output is 10 dsource1(i)=1; dsource2(i)=0; else % with probability 1/4, source output is 11 dsource1(i)=1; dsource2(i)=1; end;end;% detection and the probability of error calculationfor i=1:N, ray=raylrnd(0.8); n=sgma*randn(1,2); % 2 normal distributed r.v with

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論