(完整版)OFDM仿真_第1頁
(完整版)OFDM仿真_第2頁
(完整版)OFDM仿真_第3頁
(完整版)OFDM仿真_第4頁
(完整版)OFDM仿真_第5頁
已閱讀5頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、教師評閱意見:簽名:年 月 日實驗成績:一題目OFDM系統(tǒng)的Matlab仿真二、仿真要求要求一:OFDM系統(tǒng)的數(shù)據(jù)傳輸傳輸?shù)臄?shù)據(jù)隨機(jī)產(chǎn)生;調(diào)制方式采用16QAM;必須加信道的衰落必須加高斯白噪聲接收端要對信道進(jìn)行均衡。要求二:要求對BER的性能仿真設(shè)計仿真方案,得到在數(shù)據(jù)傳輸過程中不同信噪比的BER性能結(jié)論,要求得到的BER曲線較為平滑。三、仿真方案詳細(xì)設(shè)計(一)基于IFFT/FFT實現(xiàn)的OFDM系統(tǒng)萬框圖:中心17據(jù)愉入轉(zhuǎn)放并,葉 轉(zhuǎn)換他道通波A換rb/SM-L樣去保虻M間建波螂二堀(二)詳細(xì)設(shè)計方案:1確定參數(shù)需要確定的參數(shù)為:子信道,子載波數(shù),F(xiàn)FT長度,每次使用的OFDM符號數(shù),調(diào)制度

2、 水平,符號速率,比特率,保護(hù)間隔長度,信噪比,插入導(dǎo)頻數(shù),基本的仿真可以不插入導(dǎo) 頻,可以為0。2產(chǎn)生數(shù)據(jù)使用個隨機(jī)數(shù)產(chǎn)生器產(chǎn)生二進(jìn)制數(shù)據(jù),每次產(chǎn)生的數(shù)據(jù)個數(shù)為carrier_count * symbols_per_carrier * bits_per_symbo 卜3編碼交織交織編碼可以有效地抗突發(fā)干擾。4子載波調(diào)制OFDM采用BPSK、QPSK、16QAM、64QAM4種調(diào)制方式。按照星座圖,將每個子信 道上的數(shù)據(jù),映射到星座圖點(diǎn)的復(fù)數(shù)表示,轉(zhuǎn)換為同相Ich和正交分量Qch。其實這是一種查表的方法,以16QAM星座為例,bits_per_symbol=4,則每個OFDM符 號的每個子信道

3、上有4個二進(jìn)制數(shù)d1,d2,d3,d4,共有16種亞值,對應(yīng)星座圖上16個點(diǎn),每 個點(diǎn)的實部記為Qcho為了所有的映射點(diǎn)有相同高的平均功率,輸出要進(jìn)行歸一化,所以對應(yīng)BPSK,PQSK,16QAM,64QAM ,分別乘以歸一化系數(shù)系數(shù)1, 1 "2仇而,然豆.輸出的復(fù)數(shù) 序列即為映射后的調(diào)制結(jié)果。5申并轉(zhuǎn)換。將一路高速數(shù)據(jù)轉(zhuǎn)換成多路低速數(shù)據(jù)6 IFFT。對上一步得到的相同分量和正交分量按照(Ich+Qch*i)進(jìn)行IFFT運(yùn)算。并將得到的復(fù) 數(shù)的實部作為新的Ich,虛部作為新的Qch。在實際運(yùn)用中, 信號的產(chǎn)生和解調(diào)都是采用數(shù)字信號處理的方法來實現(xiàn)的,此時要對信號進(jìn)行抽樣, 形成離散

4、時間信號。 由于OFDM信號的帶寬為B=N Af,信號必須以A t=1/B=1/(N - At)的時間間隔進(jìn)行采樣。 采樣后的信號用sn,i表示,i = 0, 1,N-1 ,則有N 1sn,i1 Q j2 ik/NSn,keN k 0從該式可以看出,它是一個嚴(yán)格的離散反傅立葉變換(IDFT)的表達(dá)式。IDFT可以采 用快速反傅立葉變換(IFFT)來實現(xiàn)7加入保護(hù)間隔。由IFFT運(yùn)算后的每個符號的同相分量和正交分量分別轉(zhuǎn)換為串行數(shù)據(jù),并將符號尾部G長度的數(shù)據(jù)加到頭部,構(gòu)成循環(huán)前綴。如果加入空的間隔,在多徑傳播的影響下,會造成載 波間干擾ICI。保護(hù)見個的長度G應(yīng)該大于多徑時的擴(kuò)張的最大值。圖1-

5、2多徑情況下,空閑保護(hù)間隔在子載波間造成的干擾圖1-3保護(hù)間隔的插入過程0 tTsT?tt1TsTs(1-2)8加窗加窗是為了降低系統(tǒng)的PAPR,滾降系數(shù)為1/32。通過這種方法,可以顯著地改善OFDM 通信系統(tǒng)高的PAPR分布,大大降低了峰值信號出現(xiàn)的概率以及對功率放大器的要求,節(jié)約 成本。經(jīng)常被采用的窗函數(shù)是開余弦窗0.5 0.5cos t .Tsw t 1.00.5 0.5cos t TsTs圖1-9經(jīng)過加窗處理后的OFDM符號示意圖9通過信道。信道分為多徑實驗信道和高斯白噪聲信道。多徑時延信道直射波河延遲波對于標(biāo)準(zhǔn)時間 按照固定比率遞減,因此多徑時延信道參數(shù)為比率和對大延遲時間。10同

6、步。同步是決定OFDM系統(tǒng)高性能十分重要的方面,實際 OFDM系統(tǒng)都有同步過稱。主要 同步方法有使用導(dǎo)頻,循環(huán)前綴,忙算法三種。研究目的為同步的可以詳細(xì)實現(xiàn)本步,基本 的方針可以略過此步,假設(shè)接收端已經(jīng)于發(fā)射端同步。11去掉保護(hù)間隔。根據(jù)同步得到的數(shù)據(jù),分別見給每個符號的同相分量和正交分量開頭的保護(hù)間隔去掉。12并用轉(zhuǎn)換。將每個符號分布在子信道上的數(shù)據(jù),還原為一路申行數(shù)據(jù)。13 FFT。對每個符號的同相分量和正交分量按照(Ich+Qch*i)進(jìn)行FFT運(yùn)算。并將得到的實部 作為新的Ich,虛部作為新的Qch。與發(fā)端相類似,上述相關(guān)運(yùn)算可以通過離散傅立葉變換(DFT)或快速傅立葉變換(FFT)

7、來實現(xiàn),即:Rn,k1Nj2 水 /N rn,ie014子載波解調(diào)FFT后的同相粉臉感和正交分量兩組數(shù)據(jù)在星座圖上對飲高的點(diǎn),由于噪聲和信道的影 響,不再是嚴(yán)格的發(fā)送端的星座圖。將得到的星座圖上的點(diǎn)按照最近原則判決為原星座圖上 的點(diǎn),并按映射規(guī)則還原為一組數(shù)據(jù)。15解碼解交織。按照編碼交織對應(yīng)解碼,解交織的方法,還原為原始數(shù)據(jù),并進(jìn)行糾錯處理。16計算誤碼率。比較第2步產(chǎn)生的數(shù)據(jù)和接收到的數(shù)據(jù),計算誤碼率 BER17統(tǒng)計誤碼率使用for循環(huán),將SNRA 0dB到30dB逐五變化,運(yùn)行主函數(shù),統(tǒng)計誤碼率,畫出誤碼 率曲線。四、仿真結(jié)果及結(jié)論清輸久信噪比3即;15bit_error.count -

8、15her 二Time (samples)Time (samples)加窗的發(fā)送信號頻譜eaMWL.naa M極坐標(biāo)下的接收信號的星座圖27010iorB1010Rayleigh fading051015SNR1該函數(shù)基本能實現(xiàn)本次實驗的要求,概括了OFDMfc要的實現(xiàn)過程,能畫出每一個步驟 的圖像,更具體形象地反應(yīng)了 OFDMKJ過程。同時也能統(tǒng)計并繪制出在不同信噪比情況下的誤 碼率曲線。五、總結(jié)與體會本程序沒有添加信道估計部分,與峰均值仿真,如果添加了將更加完善對OFDMJ研究。且通過本次仿真實驗,讓我更加清楚地明白了OFDMg制技術(shù)的過程與其優(yōu)缺點(diǎn)。OFDM 技術(shù)的優(yōu)點(diǎn)主要有:(1) O

9、FDM 調(diào)制方式適用于多徑和衰落信道中的高速數(shù)據(jù)傳輸。當(dāng)信道因為多徑的影響出現(xiàn)頻率選擇性衰落時,只有落在頻率凹陷處的載波及其攜帶的信息受到影響,其它子載波未受損害;。(2)在OFDM調(diào)制方式中,通過插入保護(hù)間隔,可以很好地克服符號間干擾(ISI)和載波間干擾(ICI)(3) 由于 OFDM 各子載波相互正交,允許各子載波有1/2重疊,因此可以大大提高頻譜利用率:(4) 由于深度衰落而丟失的一些子載波可通過編碼、交織等措施來很好的恢復(fù),提高系統(tǒng)抗誤碼性能,且通過各子載波的聯(lián)合編碼,具有很強(qiáng)的抗衰落能力;(5) OFDM 技術(shù)抗脈沖及窄帶干擾的能力很強(qiáng),因為這些干擾僅僅影響到很小一部分的子信道;(

10、6) 與單載波系統(tǒng)相比,對采樣定時偏移不敏感。OFDM 技術(shù)的缺點(diǎn)主要有:(1) 由于要求各子載波正交,所以對頻率偏移和相位噪聲很敏感;(2) 由于各子載波相互獨(dú)立,峰值功率與均值功率比相對較大,且隨子載波數(shù)目的增加而增加。高峰均比信號通過功放時,為了避免信號的非線性失真和帶外頻譜再生,功放需要具有較大的線性范圍,導(dǎo)致射頻放大器的功率效率降低。六、主要仿真代碼clear all; close all; carrier_count=200;% 子載波數(shù) symbols_per_carrier=12;%每子載波含符號數(shù) bits_per_symbol=4;%每符號含比特數(shù),16QAM調(diào)制 IFFT

11、_bin_length=512;%FFT 點(diǎn)數(shù) PrefixRatio=1/4;%保護(hù)間隔與OFDM數(shù)據(jù)的比例 1/61/4 GI=PrefixRatio*IFFT_bin_length ;% 每一個 OFDM 符號添加的循環(huán)前綴長度為1/4*IFFT_bin_length 即保護(hù)間隔長度為128beta=1/32;%窗函數(shù)滾降系數(shù)GIP=beta*(IFFT_bin_length+GI);% 循環(huán)后綴的長度 20SNR=15; % 信噪比 dB %= %=信號產(chǎn)生= baseband_out_length = carrier_count * symbols_per_carrier * bit

12、s_per_symbol;% 所輸入的比特數(shù)目 carriers = (1:carrier_count) + (floor(IFFT_bin_length/4) - floor(carrier_count/2);% 共軻對稱子載波映射復(fù)數(shù)數(shù)據(jù)應(yīng)的IFFT點(diǎn)坐標(biāo) conjugate_carriers = IFFT_bin_length - carriers + 2;% 共軻對稱子載波映射共軻復(fù)數(shù)對應(yīng)的IFFT點(diǎn)坐標(biāo)baseband_out=round(rand(1,baseband_out_length);% 輸出待調(diào)制的二進(jìn)制比特流 %=16QAM 調(diào)制= complex_carrier_ma

13、trix=qam16(baseband_out);% 歹U向量 complex_carrier_matrix=reshape(complex_carrier_matrix',carrier_count,symbols_per_carrier)'%symbols_per_ca rrier*carrier_count 矩陣 figure(1);plot(complex_carrier_matrix,'*r');%16QAM調(diào)制后星座圖title('16QAM調(diào)制后星座圖) axis(-4, 4, -4, 4);grid on %=IFFT= IFFT_mod

14、ulation=zeros(symbols_per_carrier,IFFT_bin_length);% 添 0 組成 IFFT_bin_length IFFT 運(yùn)算 IFFT_modulation(:,carriers ) = complex_carrier_matrix ;% 未添加導(dǎo)頻信號,子載波映射在此處IFFT_modulation(:,conjugate_carriers ) = conj(complex_carrier_matrix);%共軻復(fù)數(shù)映射%= signal_after_IFFT=ifft(IFFT_modulation,IFFT_bin_length,2);%OFDM

15、 調(diào)制 即 IFFT 變換 time_wave_matrix =signal_after_IFFT;% 時域波形矩陣,行為每載波所含符號數(shù),歹U ITTF點(diǎn)數(shù),N個子載波 映射在其內(nèi),每一行即為一個 OFDM符號 %=%=添加循環(huán)前綴與后綴= XX=zeros(symbols_per_carrier,IFFT_bin_length+GI+GIP);for k=1:symbols_per_carrier;for i=1:IFFT_bin_length;XX(k,i+GI)=signal_after_IFFT(k,i); end for i=1:GI;XX(k,i)=signal_after_IF

16、FT(k,i+IFFT_bin_length-GI);% 添加循環(huán)前綴endfor j=1:GIP;XX(k,IFFT_bin_length+GI+j)=signal_after_IFFT(k,j);%添加循環(huán)后綴end endtime_wave_matrix_cp=XX;% 添加了循環(huán)前綴與后綴的時域信號矩陣,此時一個 OFDM 符號長度為 IFFT_bin_length+GI+GIP=660 %=OFDM符號加窗=windowed_time_wave_matrix_cp=zeros(1,IFFT_bin_length+GI+GIP);for i = 1:symbols_per_carrie

17、rwindowed_time_wave_matrix_cp(i,:)=real(time_wave_matrix_cp(i,:).*rcoswindow(beta,IFFT_bin_length+GI)'% 力口窗升余弦窗 end %= 生 成 發(fā) 送 信 號, 并 串 變 換 =windowed_Tx_data=zeros(1,symbols_per_carrier*(IFFT_bin_length+GI)+GIP);windowed_Tx_data(1:IFFT_bin_length+GI+GIP)=windowed_time_wave_matrix_cp(1,:); for i

18、= 1:symbols_per_carrier-1 ;windowed_Tx_data(IFFT_bin_length+GI)*i+1:(IFFT_bin_length+GI)*(i+1)+GIP)=windowed_time_wave_matri x_cp(i+1,:);%并串轉(zhuǎn)換,循環(huán)后綴與循環(huán)前綴相疊加 end %=Tx_data=reshape(windowed_time_wave_matrix_cp',(symbols_per_carrier)*(IFFT_bin_length+GI+GIP),1)'% 力口 窗后循環(huán)前綴與后綴不疊加的串行信號%= temp_time

19、1 = (symbols_per_carrier)*(IFFT_bin_length+GI+GIP);% 加窗后循環(huán)前綴與后綴不疊加發(fā)送總位數(shù) figure (2) subplot(2,1,1); plot(0:temp_time1-1,Tx_data );%循環(huán)前綴與后綴不疊加發(fā)送的信號波形grid on ylabel('Amplitude (volts)') xlabel('Time (samples)') title('循環(huán)前后綴不疊加的OFDM Time Signal')temp_time2 =symbols_per_carrier*(I

20、FFT_bin_length+GI)+GIP;subplot(2,1,2);plot(0:temp_time2-1,windowed_Tx_data);%循環(huán)后綴與循環(huán)前綴相疊加發(fā)送信號波形grid on ylabel('Amplitude (volts)') xlabel('Time (samples)') title('循環(huán)前后綴疊加的 OFDM Time Signal') %=加窗的發(fā)送信號頻譜= symbols_per_average = ceil(symbols_per_carrier/5);% 符號數(shù)的 1/5, 10 行 avg_t

21、emp_time = (IFFT_bin_length+GI+GIP)*symbols_per_average;% 點(diǎn)數(shù),10 行數(shù)據(jù),10 個符號 averages = floor(temp_time1/avg_temp_time);average_fft(1:avg_temp_time) = 0;% 分成 5 段for a = 0:(averages-1)subset_ofdm = Tx_data(a*avg_temp_time)+1):(a+1)*avg_temp_time);% 利用循環(huán)前綴后綴未疊加的串行加窗信號計算頻譜subset_ofdm_f = abs(fft(subset_o

22、fdm);% 分段求頻譜average_fft = average_fft + (subset_ofdm_f/averages);% 總共的數(shù)據(jù)分為 5段,分段進(jìn)行 FFT,平均相加endaverage_fft_log = 20*log10(average_fft);figure (3)subplot(2,1,2)plot(0:(avg_temp_time-1)/avg_temp_time, average_fft_log)% 歸一化 0/avg_temp_time :(avg_temp_time-1)/avg_temp_timehold onplot(0:1/IFFT_bin_length:

23、1, -35, 'rd')grid onaxis(0 0.5-40 max(average_fft_log)ylabel('Magnitude (dB)')xlabel('Normalized Frequency (0.5 = fs/2)')title('加窗的發(fā)送信號頻譜')%=添加噪聲=Tx_signal_power = var(windowed_Tx_data);% 發(fā)送信號功率linear_SNR=10A(SNR/10);% 線性信噪比noise_sigma=Tx_signal_power/linear_SNR;noise

24、_scale_factor = sqrt(noise_sigma);% 標(biāo)準(zhǔn)差 sigmanoise=randn(1,(symbols_per_carrier)*(IFFT_bin_length+GI)+GIP)*noise_scale_factor;%產(chǎn)生正態(tài)分布噪聲序列Rx_data=windowed_Tx_data +noise;% 接收到的信號加噪聲%= 接收信號 串/并變換 去除前綴與后綴Rx_data_matrix=zeros(symbols_per_carrier,IFFT_bin_length+GI+GIP); for i=1:symbols_per_carrier;Rx_da

25、ta_matrix(i,:)=Rx_data(1,(i-1)*(IFFT_bin_length+GI)+1:i*(IFFT_bin_length+GI)+GIP);%串并變換end Rx_data_complex_matrix=Rx_data_matrix(:,GI+1:IFFT_bin_length+GI);%去除循環(huán)前綴與循環(huán)后綴,得到有用信號矩陣%=%OFDM 解碼 16QAM解碼%=FFT 變換=Y1=fft(Rx_data_complex_matrix,IFFT_bin_length,2);%OFDM 解碼即 FFT 變換 Rx_carriers=Y1(:,carriers);% 除去IFFT/FFT變換添加的 0,選出映射的子載波 Rx_phase =angle(Rx_carriers);% 接收信號的相位 Rx_mag = abs(

溫馨提示

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

評論

0/150

提交評論