葉雨晨
摘 要:無線移動(dòng)通信是現(xiàn)代通信的主流,但是這種通信信道的隨機(jī)性很大,通常用蒙特卡羅法對(duì)其進(jìn)行仿真。蒙特卡羅仿真是一個(gè)很通用的工具,它的缺點(diǎn)是仿真運(yùn)行時(shí)間長(zhǎng),因此需要在仿真精度和仿真運(yùn)行時(shí)間之間作個(gè)基本的折中。本文將半解析方法運(yùn)用其中,大大降低了仿真運(yùn)行時(shí)間。
關(guān)鍵詞:無線移動(dòng)通信 蒙特卡羅 半解析方法
中圖分類號(hào):TN929.53 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2017)11(b)-0027-04
無線移動(dòng)通信是現(xiàn)代通信的主流,但是這種通信信道的隨機(jī)性很大,通常用蒙特卡洛法對(duì)其進(jìn)行仿真。蒙特卡洛法不同于確定性數(shù)值分析方法,它是用來解決隨機(jī)問題的非確定性的(概率統(tǒng)計(jì)的或隨機(jī)的) 數(shù)值分析方法,因此,蒙特卡洛法也稱為統(tǒng)計(jì)試驗(yàn)方法。蒙特卡洛法的應(yīng)用有兩種途徑:仿真和取樣。仿真是指提供實(shí)際隨機(jī)現(xiàn)象的數(shù)學(xué)上的模仿的方法,取樣是指通過研究少量的隨機(jī)的子集來演繹大量元素的特性的方法。本文是研究蒙特卡洛法在仿真方面的應(yīng)用。
1 無線移動(dòng)通信系統(tǒng)的蒙特卡羅仿真
衡量無線移動(dòng)通信系統(tǒng)性能的指標(biāo)主要有兩種:有效性和可靠性。有效性是通過信道的傳輸速率來度量;可靠性通過信道的誤比特率來表示。本文通過蒙特卡羅法來研究無線移動(dòng)通信系統(tǒng)的可靠性。蒙特卡羅方法幾乎不需要任何的數(shù)學(xué)分析,只要系統(tǒng)方框圖中每個(gè)功能模塊的信號(hào)處理算法是已知的就能應(yīng)用,因此,蒙特卡羅仿真是一個(gè)很通用的工具。它的缺點(diǎn)是仿真運(yùn)行時(shí)間長(zhǎng),需要在仿真精度和仿真運(yùn)行時(shí)間之間折中。運(yùn)用半解析方法需要更高水平的分析,但得到的回報(bào)是大大降低了仿真運(yùn)行的時(shí)間;另外,運(yùn)行一次蒙特卡羅仿真得到的是單個(gè)Eb/No誤比特率估計(jì)值,而半解析仿真得到的是以Eb/No為函數(shù)的完整的誤比特率曲線。然而使用半解析仿真方法對(duì)環(huán)境條件要求苛刻,不是一個(gè)普遍適用的方法,它僅適用于一類很有限的系統(tǒng)。對(duì)于滿足使用半解析法的系統(tǒng),半解析法仿真消耗的機(jī)時(shí)是微不呈道的,所以在能運(yùn)用半解析仿真時(shí),一般都應(yīng)優(yōu)先考慮這種方法。無線信道環(huán)境可近似認(rèn)為滿足使用此方法。
將蒙特卡羅方法用于估計(jì)無線通信系統(tǒng)的誤比特率時(shí),是讓N個(gè)采樣符號(hào)通過系統(tǒng)的仿真模型,并計(jì)算產(chǎn)生差錯(cuò)的個(gè)數(shù)來實(shí)現(xiàn)的。假設(shè)通過系統(tǒng)仿真模型的N個(gè)符號(hào)導(dǎo)致了 個(gè)差錯(cuò),那么誤比特率的估計(jì)值為
PE=Ne/N (1)
PE是一個(gè)隨機(jī)變量,要獲得誤比特率的準(zhǔn)確估計(jì),估計(jì)器PE必須是無偏,并具有小的方差。小的方差要求有大的N,而這又會(huì)導(dǎo)致較長(zhǎng)的計(jì)算時(shí)間。
假設(shè)所要仿真的系統(tǒng)為BPSK系統(tǒng)(如圖1所示),它所使用的是BPSK調(diào)制。調(diào)制器輸出端的濾波器是三階巴特沃思濾波器,其帶寬等于比特率(BW=rb),該濾波器會(huì)產(chǎn)生碼間干擾(ISI)。仿真的目的是確定由濾波器帶來的ISI所增加的誤比特率。
1.1 尋找合適的Delay值
要尋找合適的delay的值,有幾種方法,本文所選用的方法是把調(diào)制器的輸入和接收機(jī)的輸出進(jìn)行互相關(guān)。在進(jìn)行半解析仿真時(shí)同樣采用此方法。為了說明正確選擇時(shí)延值的重要性,選定一個(gè)Eb/No值,用不同的delay值對(duì)系統(tǒng)進(jìn)行仿真,來觀察對(duì)系統(tǒng)誤比特率的影響。這部分的MATLAB程序如下:
% File: MCBPSKdelay.m
EbNodB = 6;
z=10.^(EbNodB/10);
delay=0:8;
BER=zeros(1,length(delay));
Errors=zeros(1,length(delay));
BER_T=q(sqrt(2*z))*ones(1,length(delay));
N=round(100./BER_T);
FilterSwitch=1;
for k=1:length(delay)
[BER(k),Errors(k)]=MCBPSKrun(N(k),z,delay(k),F(xiàn)ilterSwitch)
end
semilogy(delay,BER,'o',delay,BER_T,'-'); grid;
xlabel('Delay'); ylabel('Bit Error Rate');
假定Eb/No值為6dB,時(shí)延從0到8個(gè)采樣周期依次迭代。采樣頻率為每個(gè)符號(hào)10次采樣,delay的步長(zhǎng)為0.1Ts,其中Ts為符號(hào)周期。選擇合適的N值使得有足夠多的差錯(cuò)發(fā)生,從而保證適當(dāng)小的估計(jì)器方差。在這一部分中,我們把N設(shè)為100/PT,其中PT是在加性高斯白噪聲(AWGN)情況下的理論差錯(cuò)概率。對(duì)于一個(gè)給定的Eb/No,由于存在ISI和其他干擾,差錯(cuò)發(fā)生的次數(shù)會(huì)增加。注意對(duì)每一個(gè)delay值,同時(shí)給出了誤比特率的數(shù)值和用于計(jì)算誤比特率的差錯(cuò)次數(shù)。這樣就可以得出結(jié)論:在差錯(cuò)次數(shù)足夠多的情況下可得到可靠的誤比特率估計(jì)。
仿真運(yùn)行的結(jié)果如圖2所示。不同的仿真結(jié)果用小圓圈表示,而作為參考,用實(shí)線表示出運(yùn)行在AWGN環(huán)境下的理想系統(tǒng)(沒有ISI)在Eb/No=6dB時(shí)的性能。不正確地選擇時(shí)延值顯然會(huì)導(dǎo)致過大的誤比特率。由于時(shí)延等于5個(gè)采樣周期時(shí)有最小的誤比特率,也許可以假設(shè)合適的delay值是5個(gè)采樣周期。然而,由于時(shí)延必須量化到采樣周期的整數(shù)倍,所以5可能不會(huì)剛好是正確值。觀察一下圖2就可以發(fā)現(xiàn),正確的時(shí)延值極可能在5和6個(gè)采樣周期之間。要更精確地確定delay的估計(jì)值,可以用更高的采樣頻率(更小的采樣周期)再次運(yùn)行仿真程序。必須記住式(1)所定義的估計(jì)器產(chǎn)生的是隨機(jī)變量,因此給出的誤比特率值可能太高,也可能太低。發(fā)送濾波器產(chǎn)生了ISI,而且對(duì)任何delay值,ISI的影響使得誤比特率無法達(dá)到零ISI情況下的極限值。如果去掉發(fā)送濾波器,則可以達(dá)到零ISI極限。endprint
1.2 存在ISI時(shí)的BPSK系統(tǒng)仿真
找到了合適的delay值,就可以對(duì)存在ISI時(shí)的BPSK系統(tǒng)進(jìn)行仿真。相應(yīng)的MATLAB代碼如下:
% File: MCBPSKber.m
EbNodB = 0:8;
z = 10.^(EbNodB/10);
delay = 5;
BER = zeros(1,length(z));
Errors = zeros(1,length(z));
BER_T = q(sqrt(2*z));
N = round(20./BER_T);
FilterSwitch = 1;
for k=1:length(z)
N(k) = max(1000,N(k));
[BER(k),Errors(k)] = MCBPSKrun(N(k),z(k),delay,F(xiàn)ilterSwitch)
end
semilogy(EbNodB,BER,'o',EbNodB,BER_T)
xlabel('E_b/N_o - dB'); ylabel('Bit Error Rate'); grid
legend('System Under Study','AWGN Reference',0)
注意Eb/No以1dB為步長(zhǎng)從0dB變到8dB。
當(dāng)對(duì)一定取值范圍內(nèi)的多個(gè)Eb/No進(jìn)行蒙特卡羅仿真時(shí),如果對(duì)每一個(gè)Eb/No值都用同樣的N,則基于誤比特率估計(jì)的差錯(cuò)數(shù)會(huì)隨著Eb/No的增加而減少,所以Eb/No越大時(shí)估計(jì)的誤比特率越不可靠。把要處理的采樣次數(shù)N設(shè)為K/PT,(其中PT是AWGN情況下的差錯(cuò)概率),可以部分地解決這個(gè)問題。系統(tǒng)中存在的一些損傷,如ISI和同步誤差,會(huì)導(dǎo)致仿真值PE超過PT,在一次仿真運(yùn)行中觀察到的差錯(cuò)次數(shù)通常會(huì)超過K。前面的MATLAB程序設(shè)置K=20。如果以這樣的方式確定N,則對(duì)充分小的Eb/No,N可能<1000。由于仿真基于級(jí)聯(lián)采樣塊的處理,每塊由1000個(gè)符號(hào)組成(10000個(gè)采樣),我們必須保證N>1000,從而保證仿真至少能處理一個(gè)完整的塊。如果N<1000,會(huì)出現(xiàn)錯(cuò)誤的結(jié)果。
執(zhí)行仿真程序的結(jié)果如圖3所示。仿真結(jié)果用小圓圈表示,理想情況下(零ISI)的誤比特率用實(shí)線表示。顯然,濾波器引起的ISI增大了誤比特率。
1.3 半解析方法
蒙特卡羅方法是完全通用的,只要能夠用數(shù)值算法來定義或者至少是近似模擬系統(tǒng)各構(gòu)建模塊的仿真模型,就可以采用這種方法。除了實(shí)現(xiàn)子系統(tǒng)所要求的外,不需要用到任何分析知識(shí)。應(yīng)用蒙特卡羅方法所付出的代價(jià)是仿真所需要的運(yùn)行時(shí)間長(zhǎng)。如果系統(tǒng)和信道的模型非常復(fù)雜,誤比特率又比較低,所需要的運(yùn)行時(shí)間有時(shí)就會(huì)更長(zhǎng),使蒙特卡羅方法在除最重要的仿真之外的幾乎所有應(yīng)用場(chǎng)合中都不實(shí)用。
通過研究發(fā)現(xiàn)有一些方法可以代替單純的蒙特卡羅方法,半解析方法就是其中最有效的方法之一。這種方法把分析和仿真以一定的方式結(jié)合使用,從而可以迅速地得到誤比特率的估計(jì)。同其他的快速仿真方法一樣,半解析仿真方法可以在分析知識(shí)的運(yùn)用程度和仿真運(yùn)行時(shí)間之間作出折中。
對(duì)于采用半解析仿真方法的系統(tǒng)如圖4所示,假設(shè)dk表示所發(fā)送的第k個(gè)符號(hào),與之對(duì)應(yīng)的接收機(jī)輸出符號(hào)為。如果=dk,則發(fā)送的符號(hào)被正確地接收,如果不等于dk,則發(fā)生了差錯(cuò)。同時(shí)假設(shè)Vk是關(guān)于第k個(gè)發(fā)送符號(hào)的判決統(tǒng)計(jì)量,接收機(jī)通過比較Vk值和閾值T來作出判決。
事實(shí)上Vk是三個(gè)分量的函數(shù):
Vk=f(Sk,Dk,Nk) (2)
其中Sk是由發(fā)送信號(hào)引起的Vk分量;Dk分量來自于由系統(tǒng)因素產(chǎn)生的失真,如由于濾波或多徑引起的ISI;Nk分量是由信道擾動(dòng)(如噪聲和干擾)引起的。在應(yīng)用半解析仿真時(shí),通過蒙特卡羅仿真確定Sk和Nk的總影響,而以Nk表示的噪聲影響則用解析的方法處理。只要Vk中噪聲分量的概率密度函數(shù)可用解析的方法確定,就可以用半解析仿真方法。對(duì)于無線通信信道,一般可近似認(rèn)為是加性高斯白噪聲信道,這樣就可以認(rèn)為它從噪聲注入點(diǎn)到定義判決統(tǒng)計(jì)量Vk的那一點(diǎn)之間的系統(tǒng)是線性的。這是因?yàn)楦咚闺S機(jī)過程的任何線性變換還是高斯過程。如果信道噪聲是高斯的,則判決統(tǒng)計(jì)Vk也是高斯隨機(jī)變量,其均值由Sk和Dk確定。所以半解析仿真方法是蒙特卡羅仿真和分析的結(jié)合。在無線信道環(huán)境下,使用半解析仿真方法的實(shí)質(zhì)就是通過開發(fā)仿真程序來確定Vk的差錯(cuò)概率,不需要使用蒙特卡羅方法對(duì)差錯(cuò)發(fā)生的次數(shù)進(jìn)行計(jì)數(shù),這樣所用的仿真時(shí)間就極大地減少,代價(jià)是半解析法確定Vk的差錯(cuò)概率的分析方法很復(fù)雜,仿真程序不易開發(fā)。本文只是簡(jiǎn)單給出用半解析法仿真AWGN(加性高斯白噪聲)環(huán)境下BPSK系統(tǒng)的誤比特率性能情況(如圖5所示),不做詳細(xì)的過程分析,文獻(xiàn)[6]對(duì)此分析很全面。從圖中能清楚的看到由ISI造成的誤比特率增加。
2 結(jié)語
無線移動(dòng)通信系統(tǒng)是解決頻率不足和用戶容量增大問題的一大突破。它能在有限頻譜上提供更大的容量,而不需做技術(shù)上重大修改。其基本思想是把一個(gè)大區(qū)劃分為若干個(gè)六邊形小區(qū),每個(gè)小區(qū)設(shè)立基站,每個(gè)基站分配一部分信道,其他小區(qū)使用另外不同的信道,這樣基站(小區(qū))之間的干擾就最小。無線移動(dòng)通信是現(xiàn)代通信的主流,但是這種通信系統(tǒng)的隨機(jī)性很大,通常用蒙特卡羅法對(duì)其進(jìn)行仿真。,蒙特卡羅仿真是一個(gè)很通用的工具。它的缺點(diǎn)是仿真運(yùn)行時(shí)間長(zhǎng),因此需要在仿真精度和仿真運(yùn)行時(shí)間之間作個(gè)基本的折中。半解析方法需要更高水平的分析,但得到的回報(bào)是大大地降低了仿真運(yùn)行時(shí)間。
參考文獻(xiàn)
[1] 郭梯云,鄔國(guó)揚(yáng),李建東.移動(dòng)通信[M].3版.西安電子科技大學(xué)出版社,2005.
[2] Theodore S.Rappaport無線通信原理與應(yīng)用[M].2版.電子工業(yè)出版社,2006.
[3] 王普明,李雪.蜂窩移動(dòng)通信系統(tǒng)的蒙特卡洛法分析[J].河南機(jī)電高等專科學(xué)校學(xué)報(bào),2006(6):19-20.
[4] M.C.Jeruchim,P.Balaban,and K.S.Shanmugan,Simulation of Communication Systems,2nd ed[M].New York:Kluwer Academic/Plenum Publishers,2000.
[5] S.Golomb,Shift Register Sequences,Laguna Hills[M].CA:Aegean Press,1982.
[6] William H.Tranter Tranter,Shanmagan,et al.通信系統(tǒng)仿真原理與無線應(yīng)用[M].機(jī)械工業(yè)出版社,2005.endprint