綜合通信訓(xùn)練模擬系統(tǒng)短波信道分布式實(shí)時(shí)仿真
短波信道仿真總體結(jié)構(gòu)是由高斯噪聲生成器(AWGN)、低通濾波器(LPF)、Hilbert變換以及等效離散時(shí)間模型組成。
3.1 抽頭系數(shù)的產(chǎn)生
短波信道模型的抽頭系數(shù)是期望為零、方差為σ2的相位獨(dú)立的高斯過程,它可由高斯白噪聲通過一個(gè)低通濾波器得到。
(1)高斯分布隨機(jī)序列:本文首先采用混合同余算法產(chǎn)生均勻分布的隨機(jī)數(shù)序列,其迭代公式如下:
式中c≠0,增量c與模數(shù)m互質(zhì),a稱作乘子,a-1必須是模數(shù)m任意一個(gè)素因子的倍數(shù),如果m是4的倍數(shù),則n-1是4的倍數(shù),發(fā)生器的最大周期為m。各項(xiàng)參數(shù)本文采用了標(biāo)準(zhǔn)C語言的定義,即m=232,c=12345,a=1103515245。以混合同余算法為基礎(chǔ),經(jīng)過適當(dāng)?shù)淖儞Q即可得到高斯分布隨機(jī)序列,具體實(shí)現(xiàn)流程如圖3所示。
需要注意的是進(jìn)入AWGN模塊前需要指定信噪比。
(2)高斯成形低通濾波器:前述產(chǎn)生的兩個(gè)高斯型變量G1,G2經(jīng)過低通濾波后則為等效離散時(shí)間模型的抽頭系數(shù),其仿真了多普勒頻率擴(kuò)展。為使每個(gè)分量的功率譜為高斯型,低通濾波器所期望的幅度響應(yīng)為高斯分布,為此,本文采用了Matlab設(shè)計(jì)的IIR濾波器中IIRLPNORM(n,d,f,edges,a)函數(shù),利用IIRLPNORM函數(shù)構(gòu)造低通濾波器,使其幅度響應(yīng)逼近高斯分布,通過該函數(shù)可得到濾波器系數(shù)。該設(shè)計(jì)的采樣頻率是8 kHz,IIR濾波器的階數(shù)為8,多普勒頻率擴(kuò)展范圍是0.1~30 Hz。
實(shí)現(xiàn)過程中,首先采用Matlab產(chǎn)生符合不同衰落要求下低通濾波器的系數(shù)矩陣D,將系數(shù)矩陣D以數(shù)據(jù)文件形式保存至硬盤中,為模擬系統(tǒng)工作時(shí)生成衰落所需的高斯控制信號做準(zhǔn)備。
3.2 希爾伯特(Hilbert)變換
本文設(shè)計(jì)的系統(tǒng)中,首先設(shè)計(jì)了一個(gè)低通濾波器,其沖激響應(yīng)為hlp(t)。如圖2所示,輸入的音頻信號分別經(jīng)過帶寬為3 kHz的帶通濾波器和3 kHz帶寬的Hilbert濾波器,將輸入信號變換成為一個(gè)復(fù)信號I和Q。兩個(gè)帶通濾波器的沖激響應(yīng)為:
式中,T為采樣周期,N為濾波器階數(shù),f0為中心頻率。
輸入信號成為復(fù)信號后,可以按照所需路徑數(shù)(實(shí)際系統(tǒng)中是通過總控導(dǎo)演臺設(shè)置完成,框圖示意了兩路信號)選擇相應(yīng)的路徑和延遲。
4 分布式實(shí)時(shí)仿真設(shè)計(jì)與實(shí)現(xiàn)
綜合通信訓(xùn)練模擬系統(tǒng)主要由總控導(dǎo)演臺、信道仿真臺、收(發(fā))信方仿真臺、系統(tǒng)監(jiān)控臺、通信設(shè)備模擬器(單片機(jī)實(shí)現(xiàn))、串口服務(wù)器和接口等部分組成。各仿真臺站計(jì)算機(jī)通過局域網(wǎng)相互連接。
4.1 分布式實(shí)時(shí)仿真設(shè)計(jì)
基于面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,將信道仿真臺的信道仿真系統(tǒng)軟件劃分為系統(tǒng)初始化模塊、濾波器數(shù)據(jù)庫模塊、AWGN數(shù)據(jù)生成模塊、信道算法(如短波信道的多徑、衰落等)實(shí)現(xiàn)模塊和各類后臺線程(信源數(shù)據(jù)實(shí)時(shí)接收線程、合成數(shù)據(jù)實(shí)時(shí)傳送線程和總控?cái)?shù)據(jù)接收線程)。其中初始化模塊包括各數(shù)據(jù)存儲單元的初始化和顯控設(shè)備的初始化,這一模塊在系統(tǒng)啟動時(shí)運(yùn)行。
為解決模型逼真度與解算速度的問題,在程序設(shè)計(jì)上采用了分布式數(shù)據(jù)解算方法,充分利用系統(tǒng)硬件資源,以保證程序具有足夠的速度和靈活性。
信道仿真系統(tǒng)是利用局域網(wǎng)內(nèi)的4臺計(jì)算機(jī)進(jìn)行多機(jī)聯(lián)合仿真。這4臺計(jì)算機(jī)按照所擔(dān)負(fù)的任務(wù)分別命名為:Matlab數(shù)據(jù)庫計(jì)算機(jī)、信源數(shù)據(jù)計(jì)算機(jī)、信道解算計(jì)算機(jī)、數(shù)據(jù)合成與傳送計(jì)算機(jī)。各計(jì)算機(jī)間通過UDP/IP協(xié)議實(shí)現(xiàn)數(shù)據(jù)交換和握手通信。各模擬器終端利用單片機(jī)實(shí)現(xiàn)收信與發(fā)信,單片機(jī)與計(jì)算機(jī)之間、計(jì)算機(jī)與計(jì)算機(jī)之間并、串行工作。
4.2 基于VC++的分布式實(shí)時(shí)仿真實(shí)現(xiàn)
基于上節(jié)的設(shè)計(jì)方案,采用VC++語言實(shí)現(xiàn)了一個(gè)集成化的通信信道仿真環(huán)境,以實(shí)現(xiàn)通信信道模型仿真和信號源實(shí)時(shí)產(chǎn)生等功能的有效調(diào)度和管理。該系統(tǒng)通過信道仿真模型、算法、數(shù)據(jù)、輸入輸出參數(shù)等的統(tǒng)一管理,將各個(gè)功能模塊以及仿真結(jié)果分析與表示等集成在一個(gè)仿真環(huán)境下,加強(qiáng)系統(tǒng)各部分之間的聯(lián)系與交互,進(jìn)而完成模擬設(shè)備收發(fā)數(shù)據(jù)的實(shí)時(shí)產(chǎn)生、解算與傳送。
圖4顯示了信源數(shù)據(jù)計(jì)算機(jī)產(chǎn)生高斯噪聲和通信信號數(shù)據(jù)幀生成的程序執(zhí)行路徑。程序執(zhí)行時(shí),首先將數(shù)據(jù)存儲單元初始化,同時(shí)啟動與主控導(dǎo)演臺和信道解算計(jì)算機(jī)之間的數(shù)據(jù)交換線程。線程一接收總控導(dǎo)演臺用戶根據(jù)既定場景、任務(wù)條件下設(shè)定的各項(xiàng)參數(shù),同時(shí)喚醒主程序進(jìn)行數(shù)據(jù)生成,產(chǎn)生數(shù)據(jù)幀的同時(shí),通過線程二將數(shù)據(jù)傳送至信道解算計(jì)算機(jī)。
評論