




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
MATLAB仿真直接序列擴頻通信摘要直接序列擴頻通信系統(tǒng)(DS-CDMA)因其抗干擾性強、
隱蔽性好、易于實現(xiàn)碼分多址(CDMA)、抗多徑干擾、直擴通信速率高等眾多優(yōu)點,而被廣泛應用于許多領(lǐng)域中。針對頻通信廣泛的應用,本文用MATLAB工具箱中的SIMULINK通信仿真模塊和MATLAB函數(shù)對直接序列擴頻通信系統(tǒng)進行了分析和仿真,使其更加形象和具體。核心字:擴頻通信m序列g(shù)old正交序列matlab仿真2.引言直接序列擴頻(DSSS—DirectSequenceSpreadSpectrum)技術(shù)是當今人們所熟知的擴頻技術(shù)之一。這種技術(shù)是將要發(fā)送的信息用偽隨機碼(PN碼)擴展到一種很寬的頻帶上去,在接受端,用與發(fā)端擴展用的相似的偽隨機碼對接受到的擴頻信號進行有關(guān)解決,恢復出發(fā)送的信息。它是二戰(zhàn)期間開發(fā)的,最初的用途是為軍事通信提供安全保障,是美軍重要的無線保密通信技術(shù)。這種技術(shù)使敵人很難探測到信號。即便探測到信號,如果不懂得對的的編碼,也不可能將噪聲信號重新匯編成原始的信號。有關(guān)擴頻通信技術(shù)的觀點是在1941年由好萊塢女演員HedyLamarr和鋼琴家GeorgeAntheil提出的?;趯︳~雷控制的安全無線通信的思路,他們申請了美國專利#2.292.387。不幸的是,當時該技術(shù)并沒有引發(fā)美國軍方的重視,直到十九世紀八十年代才引發(fā)關(guān)注,將它用于敵對環(huán)境中的無線通信系統(tǒng)。直序擴頻解決了短距離數(shù)據(jù)收發(fā)信機、如:衛(wèi)星定位系統(tǒng)(GPS)、3G移動通信系統(tǒng)、WLAN(IEEE802.11a,IEEE802.11b,IEE802.11g)和藍牙技術(shù)等應用的核心問題。擴頻技術(shù)也為提高無線電頻率的運用率(無線電頻譜是有限的因此也是一種昂貴的資源)提供協(xié)助。3.直接序列擴頻DS-SS是直接用品有高碼率的擴頻碼序列在發(fā)送端去擴展信號的頻譜。而在收端,用相似的擴頻碼序列去進行解擴,把展寬的擴頻信號還原成原始的信息。4.DS-CDMA通信系統(tǒng)原理圖在實驗中,我們采用;兩種擴頻碼進行仿真。M序列和正交Gold序列,擴頻后的數(shù)據(jù)通過脈沖成型濾波器后通過信道同時達到接受端,在接受端分別對不同顧客信息數(shù)據(jù)進行解擴,恢復各個顧客的原始信息。5.仿真設計環(huán)節(jié)1、m序列的DS-CDMA在AWGN下的性能的仿真。2、正交Gold序列的DS-CDMA在AWGN下的性能的仿真。3、對比兩個擴頻碼在AWGN信道下的性能曲線,分析哪種擴頻碼更適合在AWGN信道中傳輸,傳輸衰減最小,對比m序列和正交Gold序列的抗干擾能力。6.實驗仿真運行成果從圖中能夠看出,由于正交Gold序列在完全同時時,它們的互有關(guān)值為0,因此其BER性能并不隨著顧客數(shù)的增加而惡化。在信噪比為2、4、6時誤比特率基本相似。由圖能夠看出來當誤比特率仿真時候不大于10-3時成果就會有一定的偏差。但還是能夠看出正交Gold序列比M序列的性能要好。因此,初步得出結(jié)論:正交Gold序列在AWGN信道下的抗干擾能力更強,衰減比,序列要小。對比圖4-1和圖4-3,顯然M序列在瑞利衰落信道下的性能要比能過AWGN信道下的性能要差7.總結(jié)對于本仿真而言,已基本完畢了設計任務書的設計和研究目的,通過用MATLAB對DS-CDMA系統(tǒng)的仿真調(diào)試、成果分析,讓我組熟悉了DS-CDMA的工作原理,加深了對擴頻通信的認識,并深刻的理解PN碼在不同信道的衰落狀況。通過仿真成果中波形的直觀方式,更讓我們理解到了系統(tǒng)衰減的規(guī)律。但是在本設計中也存在著缺點與局限性1、在本設計中過程中可能由于程序過于復雜,信息本身所占用的帶寬偏大,用來傳輸信息的帶寬相對不夠大,造成成果并不明顯,信息衰減嚴重。2、在設計中只考慮到加性高斯信道所帶來的干擾,在實際通信信道卻是復雜多變,存在著多種各樣的狀況,因此最后的接受信號是在很簡樸的干擾下得出。要想應用于實際中,必須加入多種噪聲來考慮,以實現(xiàn)真實系統(tǒng)的設計。3、實驗中,我們選擇加大傳輸帶寬,來彌補其它干擾帶來的影響,可能會造成消耗過大,浪費帶寬的成果,實際應用中是不實用的。只能作為仿真,進行研究。即使如此,在本次設計的整個過程中,以上的成果已經(jīng)令我們受益匪淺。通信系統(tǒng)的性能分析和仿真,隨著通信技術(shù)、信息技術(shù)和計算機技術(shù)的發(fā)展以及網(wǎng)絡系統(tǒng)的大量應用,顯得越來越重要。參考文獻[1]劉學勇,編著.通信系統(tǒng)建模與仿真(電子工業(yè)出版社)[2]鄧薇,編著.MATALB函數(shù)速查手冊(人民郵電出版社)[3]【美】WilliamC.Y.Lee,著.移動通信工程理論和應用(第二版)(人民郵電出版社)[4]王華奎,李艷萍等編著.移動通信原理與技術(shù)(清華大學出版社)程序%1.函數(shù)mseq用于產(chǎn)生m序列:function[mout]=mseq(n,taps,inidata,num)%****************************************************************%闡明:函數(shù)mseq用于產(chǎn)生num個階數(shù)為n的m序列%n:m序列的階數(shù)n%taps:反饋寄存器的連接位置%inidata:寄存器的初始值序列%num:輸出的m序列的個數(shù)%mout:輸出的m序列,如果num>1,則每一行為一種m序列%****************************************************************ifnargin<4%輸入?yún)?shù)判斷num=1;endmout=zeros(num,2^n-1);%寄存器輸出值的初始化,全0fpos=zeros(n,1);%反饋寄存器連接位置的初始化fpos(taps)=1;%反饋寄存器連接位置forii=1:2^n-1mout(1,ii)=inidata(n);%寄存器的輸出值temp=mod(inidata*fpos,2);%計算反饋數(shù)據(jù)inidata(2:n)=inidata(1:n-1);%寄存器移位一次inidata(1)=temp;%更新第1個寄存器的值endifnum>1%如果要輸出多個m序列,生成其它m序列forii=2:nummout(ii,:)=shift(mout(ii-1,:),1);%shift函數(shù)完畢序列的循環(huán)移位,上一種序列向右循環(huán)移位endend%2.函數(shù)goldseq用于產(chǎn)生gold序列function[gout]=goldseq(m1,m2,num)%****************************************************************%m1:m序列1%m2:m序列2%num:生成的Gold序列個數(shù)%gout:生成的Gold序列輸出%****************************************************************ifnargin<3%如果沒有指定生成的Gold序列個數(shù),默認為1num=1;endgout=zeros(num,length(m1));forii=1:num%根據(jù)Gold序列生成辦法生成Gold序列g(shù)out(ii,:)=xor(m1,m2);m2=shift(m2,1);end%函數(shù)shift用于完畢循環(huán)移位function[outregi]=shift(inregi,shiftr)%****************************************************************%inregi:輸入序列%shiftr:循環(huán)右移的位數(shù)%outregi:輸出序列%****************************************************************v=length(inregi);%輸入序列的長度outregi=inregi;%輸出序列初始化為輸入序列shiftr=rem(shiftr,v);%求余,使移位的值在[0,v]之間ifshiftr>0outregi(:,1:shiftr)=inregi(:,v-shiftr+1:v);%循環(huán)移位把最后shiftr位移到前shiftr位outregi(:,1+shiftr:v)=inregi(:,1:v-shiftr);%完畢剩余的移位elseifshiftr<0outregi(:,1:v+shiftr)=inregi(:,1-shiftr:v);outregi(:,v+shiftr+1:v)=inregi(:,1:-shiftr);end%3.直接序列擴頻主程序代碼function[ber]=dscdma(user,seq)%user:同時進行擴頻通信的顧客數(shù)%seq:擴頻碼1:M-序列2:Gold序列3:正交Gold序列%ber:該顧客數(shù)下的誤碼率%****************************初始化部分*****************************sr=256000.0;%符號速率nSymbol=10000;%每種信噪比下發(fā)送的符號數(shù)M=4;%4-QAM調(diào)制br=sr*log2(M);%比特速率graycode=[0132];%Gray編碼規(guī)則EbNo=0:2:10;%Eb/No變化范疇%**************************脈沖成形濾波器參數(shù)**************************delay=10;%升余弦濾波器時延Fs=8;%濾波器過采樣數(shù)rolloff=0.5;%升余弦濾波器滾降因子rrcfilter=rcosine(1,Fs,'fir/sqrt',rolloff,delay);%設計根升余弦濾波器%**********************擴頻碼產(chǎn)生參數(shù)**********************%直接序列擴頻主程序代碼function[ber]=dscdma(user,seq)%user:同時進行擴頻通信的顧客數(shù)%seq:擴頻碼1:M-序列2:Gold序列3:正交Gold序列%ber:該顧客數(shù)下的誤碼率%****************************初始化部分*****************************sr=256000.0;%符號速率nSymbol=10000;%每種信噪比下發(fā)送的符號數(shù)M=4;%4-QAM調(diào)制br=sr*log2(M);%比特速率graycode=[0132];%Gray編碼規(guī)則EbNo=0:2:10;%Eb/No變化范疇%**************************脈沖成形濾波器參數(shù)**************************delay=10;%升余弦濾波器時延Fs=8;%濾波器過采樣數(shù)rolloff=0.5;%升余弦濾波器滾降因子rrcfilter=rcosine(1,Fs,'fir/sqrt',rolloff,delay);%設計根升余弦濾波器%**********************擴頻碼產(chǎn)生參數(shù)**********************%user=user1;%顧客數(shù)stage=3;%m序列的階數(shù)ptap1=[13];%m序列1的寄存器連接方式ptap2=[23];%m序列2的寄存器連接方式regi1=[111];%m序列1的寄存器初始值regi2=[111];%m序列2的寄存器初始值%********************擴頻碼的生成*********************switchseqcase1%M-序列code=mseq(stage,ptap1,regi1,user);case2%Gold序列m1=mseq(stage,ptap1,regi1);m2=mseq(stage,ptap2,regi2);code=goldseq(m1,m2,user);case3%正交Gold序列m1=mseq(stage,ptap1,regi1);m2=mseq(stage,ptap2,regi2);code=[goldseq(m1,m2,user),zeros(user,1)];endcode=code*2-1;clen=length(code);%**************************衰落信道參數(shù)**************************ts=1/Fs/sr/clen;%信道采樣時間間隔t=(0:nSymbol*Fs*clen-1+2*delay*Fs)*ts;%每種信噪比下的符號傳輸時間fd=160;%多普勒頻移[Hz]h=rayleigh(fd,t);%****************************仿真開始****************************forindx=1:length(EbNo)indx%******************************發(fā)射端********************************data=randsrc(user,nSymbol,[0:3]);%產(chǎn)生各個顧客的發(fā)射數(shù)據(jù)data1=graycode(data+1);%Gray編碼data1=qammod(data1,M);%4-QAM調(diào)制[out]=spread(data1,code);%擴頻out1=rcosflt(out.',sr,Fs*sr,'filter',rrcfilter);%通過脈沖成形濾波器spow=sum(abs((out1)).^2)/nSymbol;%計算每個顧客信號功率ifuser>1%顧客數(shù)不不大于1時,全部顧客數(shù)據(jù)相加out1=sum(out1.');elseout1=out1.';end%*****************************通過瑞利衰落信道******************************%out1=h.*out1;%********************************接受端*********************************sigma=sqrt(0.5*spow*sr/br*10^(-EbNo(indx)/10));%根據(jù)信噪比計算高斯白噪聲方差y=[];forii=1:usery(ii,:)=out1+sigma(ii).*(randn(1,length(out1))+j*randn(1,length(out1)));%加入高斯白噪聲(AWGN)%y(ii,:)=y(ii,:)./h;%假設抱負信道預計endy=rcosflt(y.',sr,Fs*sr,'Fs/filter',rrcfilter);%通過脈沖成形濾波器進行濾波y=downsample(y,Fs);%降采樣forii=1:usery1(:,ii)=y(2*delay+1:end-2*delay,ii);endyd=despread(y1.',code);%數(shù)據(jù)解擴demodata=qamdemod(yd,M);%4-QAM解調(diào)demodata=graycode(demodata+1);%Gray編碼逆映射[err,ber(indx)]=biterr(data,demodata,log2(M));%統(tǒng)計誤比特率End%擴頻函數(shù)function[out]=spread(data,code)%****************************************************************%闡明:函數(shù)spread用于將輸入數(shù)據(jù)序列和擴頻序列擴頻%data:輸入數(shù)據(jù)序列%code:擴頻碼序列%out:擴頻后的輸出數(shù)據(jù)序列%****************************************************************switchnargincase{0,1}%如果輸入?yún)?shù)個數(shù)不對,提示錯誤error('缺少輸入?yún)?shù)');end[hn,vn]=size(data);[hc,vc]=size(code);ifhn>hc%如果擴頻碼數(shù)不大于輸入的待擴頻的數(shù)據(jù)序列,提示錯誤error('缺少擴頻碼序列');endout=zeros(hn,vn*vc);%初始化輸出序列forii=1:hnout(ii,:)=reshape(code(ii,:).'*data(ii,:),1,vn*vc);%將擴頻后的數(shù)據(jù)排成行矢量的形式end%信號解擴functionout=despread(data,code)%****************************************************************%闡明:函數(shù)despread用于將輸入數(shù)據(jù)序列和擴頻序列解擴%data:輸入數(shù)據(jù)序列%code:解擴使用的擴頻碼序列%out:解擴后的輸出數(shù)據(jù)序列%****************************************************************switchnargin%如果輸入?yún)?shù)個數(shù)不對,提示錯誤case{0,1}error('缺少輸入?yún)?shù)');end[hn,vn]=size(data);[hc,vc]=size(code);out=zeros(hc,vn/vc);%初始化輸出序列forii=1:hcxx=reshape(data(ii,:),vc,vn/vc);out(ii,:)=code(ii,:)*xx/vc;end%函數(shù)rayleigh用于產(chǎn)生瑞利衰落信道function[h]=rayleigh(fd,t)%該程序運用改善的jakes模型來產(chǎn)生單徑的平坦型瑞利衰落信道%YahongR.ZhengandChengshanXiao"ImprovedModelsfor%theGenerationofMultipleUncorrelatedRayleighFadingWaveforms"%IEEECommuletters,Vol.6,NO.6,JUNE%輸入變量闡明:%fd:信道的最大多普勒頻移單位Hz%t:信號的抽樣時間序
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人挖機租賃合同范本
- 借款合同范例房產(chǎn)
- 倉儲合同范本標
- 三基護理考試模擬題+答案
- 電子技術(shù)及實訓練習題+答案
- 上半年房地產(chǎn)銷售工作總結(jié)
- 中醫(yī)康復治療技術(shù)試題庫+參考答案
- 制作書本合同范本
- 中醫(yī)診所勞務合同范本
- 一本好書讓我改變自己超越自己演講稿
- 合同 水電押金條款
- 開題報告:重大突發(fā)事件中大學生志愿服務行為的認知機制及引導策略研究
- 高效農(nóng)業(yè)種植自動化解決方案
- 2023年工程質(zhì)量監(jiān)督人員考試真題模擬匯編(共957題)
- 2025中考英語作文19個熱點話題及范文
- 基于人工智能的農(nóng)產(chǎn)品追溯系統(tǒng)解決方案
- 鐵路典型事故案例分析
- 米伊林《十萬個為什么》導讀課課件
- 五年(2020-2024)高考歷史真題分類匯編(山東)專題12 世界殖民體系的形成、瓦解與亞非拉民族民主運動(原卷版)
- 《中外城市建設史》考試復習題庫(附答案)
- 《S品牌管理有限公司銷售人員績效考核問題及優(yōu)化建議(定量論文)》11000字
評論
0/150
提交評論