摘 要:為了縮短研發(fā)周期,需要在實(shí)驗(yàn)室模擬出無(wú)線信道的各種傳播特性,無(wú)線信道模擬器設(shè)計(jì)必不可少。采用基于頻率選擇性信道Jakes仿真器模型,使用Xilinx公司的Virtex-2p模擬實(shí)現(xiàn)了頻率選擇性衰落信道,最后將數(shù)據(jù)通過(guò)串口上傳到Matlab分析信道的統(tǒng)計(jì)特性。
關(guān)鍵詞:無(wú)線信道; FPGA; Matlab; 信道模擬器
中圖分類號(hào):
TN911.22-34
文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1004-373X(2012)05
-0108
-02
Design of wireless channel simulator based on FPGA
HU Sheng-ling
(South-central University for Nationalities, Wuhan 430074, China)
Abstract:
In order to shorten the development cycle, various characteristics of wireless channel in the laboratory should be simulated, so wireless channel simulator is necessary. On the basis of frequency selective channel Jakes simulator model, Xilinx′s Virtex-2p is used to simulate the selective fading channel, the data is updated to Matlab through serial port to analyze the channel statistical characteristics.
Keywords: wireless channel; FPGA; Matlab; channel simulator
收稿日期:2011-09-14
0 引 言
隨著人們對(duì)無(wú)線通信需求和質(zhì)量的要求越來(lái)越高,無(wú)線通信設(shè)備的研發(fā)也變得越來(lái)越復(fù)雜,系統(tǒng)測(cè)試在整個(gè)設(shè)備研發(fā)過(guò)程中所占的比重也越來(lái)越大。為了更加方便地對(duì)所設(shè)計(jì)的系統(tǒng)進(jìn)行調(diào)試和測(cè)試,無(wú)線信道模擬器是進(jìn)行無(wú)線通信系統(tǒng)硬件測(cè)試不可或缺的儀器之一。目前,關(guān)于無(wú)線信道的模型研究比較多,而基于理論模型的硬件實(shí)現(xiàn)并不是很廣泛,同時(shí)成品十分昂貴,所以利用FPGA實(shí)現(xiàn)無(wú)線信道模擬器變得很有意義,節(jié)約了成本,而且也便于實(shí)現(xiàn)。FPGA是在PLD的基礎(chǔ)上發(fā)展起來(lái)的高性能可編程邏輯器件,使用FPGA進(jìn)行數(shù)字邏輯設(shè)計(jì),開(kāi)發(fā)過(guò)程的投資較少,研制和開(kāi)發(fā)的時(shí)間較短,并且因?yàn)橐_的可分配性電路一般比較簡(jiǎn)單,修改和優(yōu)化比較方便,并且在實(shí)際中易于使用。同時(shí)由于FPGA并行運(yùn)算的特點(diǎn),在大規(guī)模的數(shù)字運(yùn)算中很有優(yōu)勢(shì),延時(shí)很小。
1 頻率選擇性衰落信道模型[1]
多徑傳播信道的信道脈沖響應(yīng)模式是模擬一個(gè)離散的廣義平穩(wěn)非相關(guān)散射模型(WSSUS)。這樣的頻率選擇性衰落信道應(yīng)該滿足兩個(gè)假設(shè)條件:
(1) 在時(shí)間t(可能是幾個(gè)碼元長(zhǎng)度)內(nèi),衰落的統(tǒng)計(jì)特性是平穩(wěn)的;
(2) 電波到達(dá)角和傳播時(shí)延是統(tǒng)計(jì)獨(dú)立變量。
時(shí)變頻率選擇性衰落信道的確定仿真模型如圖1所示。
圖1 時(shí)變頻率選擇性衰落信道的確定仿真模型
Jakes在參考文獻(xiàn)[2]中介紹了一種單徑衰落信道的仿真,且在此基礎(chǔ)上提出了一種對(duì)頻率選擇性衰落信道的仿真方法。在原來(lái)第l徑中的多普勒相移bnl的基礎(chǔ)上,加上一個(gè)附加相移rnl,成為新的多普勒相移bnl+rnl,且保持其他參數(shù)不變。為了保證各個(gè)可分辨多徑之間相互獨(dú)立,所以必須選擇合適的bnl和rnl,其中比較簡(jiǎn)單的一種方法是:
2 信道模擬器的FPGA設(shè)計(jì)
FPGA采用Xilinx公司的Virtex-2p,其中芯片工作時(shí)鐘為100 MHz。本文設(shè)置N0=8,fm=200 Hz,ωm=2πfm,路徑l=5,時(shí)延u=1 μs。因此cosbnl2cos θnl,cosbnl2sin θnl,sinbnl2cos θnl,sinbnl2sin θnl都是定值,為了計(jì)算方便,將所得的值擴(kuò)大32倍,也就是左移5位之后四舍五入成整數(shù)值,存入寄存器調(diào)用。所以信道模擬器的實(shí)現(xiàn)過(guò)程主要為各個(gè)正弦波的FPGA實(shí)現(xiàn),與對(duì)應(yīng)的系數(shù)相乘疊加成單徑衰落,輸入信號(hào)經(jīng)過(guò)l個(gè)路徑時(shí)延之后疊加成為輸出信號(hào)。
2.1 正弦波的FPGA實(shí)現(xiàn)
FPGA產(chǎn)生正弦波一般可以采用直接產(chǎn)生和Xilinx或者Altera利用自帶DDS的IP核例化實(shí)現(xiàn)。FPGA直接產(chǎn)生是將三角函數(shù)值存入ROM中循環(huán)調(diào)用來(lái)產(chǎn)生正弦波,這樣占用的邏輯資源比較少,缺點(diǎn)就是過(guò)程很麻煩而且不夠靈活,模型需要8種頻率的正弦波和余弦波,而且fm也可能根據(jù)需要而變化,每一次變化就需要在ROM中重新賦初值,十分麻煩。因此本文選擇調(diào)用Xilinx自帶DDS的IP核,通過(guò)邏輯資源換取效率。DDS的模塊圖如圖2所示。
圖2 DDS模塊圖
這樣,通過(guò)控制DATA的值得到所需頻率的正弦波。fclk*DATA2B=fout,其中fclk為開(kāi)發(fā)工作時(shí)鐘,DATA為輸入的頻率控制字,B為DATA的位寬,fout為所得的頻率。
2.2 時(shí)延模塊的FPGA實(shí)現(xiàn)
輸入通過(guò)時(shí)延后與各路徑的衰落系數(shù)相乘,然后各個(gè)路徑疊加成輸出信號(hào)。本文中時(shí)延采用計(jì)數(shù)分頻來(lái)實(shí)現(xiàn),如延遲1 μs,工作時(shí)鐘為100 MHz,所以計(jì)算100個(gè)時(shí)鐘周期后,將輸入的值存入寄存器1,再計(jì)算100個(gè)時(shí)鐘周期后將輸入值存入寄存器2,依次類推,本為路徑l設(shè)置為5,所以最終有5個(gè)寄存器存放輸入值。
2.3 測(cè)試模塊的FPGA實(shí)現(xiàn)
最后需要將算得的數(shù)據(jù)上傳到Matlab進(jìn)行統(tǒng)計(jì)分析,所以還需要FPGA串口驅(qū)動(dòng),以及Matlab打開(kāi)驅(qū)動(dòng)讀取FPGA算完的數(shù)據(jù)。根據(jù)異步串行通信的數(shù)據(jù)傳送格式,每一幀數(shù)據(jù)由起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位組成,本文只選取了數(shù)據(jù)位,一共8位。通過(guò)串/并轉(zhuǎn)換接收數(shù)據(jù),算完后存入RAM,然后調(diào)用數(shù)據(jù),通過(guò)并/串轉(zhuǎn)換傳輸數(shù)據(jù)。
正弦波的輸出有10位,其中1位是符號(hào)位,另外9位是小數(shù)位,而系數(shù)左移5位后化成整數(shù),在所得的整數(shù)中也有5位小數(shù)位,所以最終數(shù)據(jù)一共有19位,其中5位整數(shù)位,14位小數(shù)位。因?yàn)榇谑?位一幀數(shù)據(jù),為了運(yùn)算簡(jiǎn)便,選取了5位整數(shù)位,11位小數(shù)位,舍去最后3位小數(shù),每個(gè)數(shù)分兩次傳輸。因?yàn)樽詈蟮臄?shù)據(jù)分為實(shí)部和虛部,所以每個(gè)復(fù)數(shù)需要4幀數(shù)據(jù)傳輸。Matlab接收數(shù)據(jù)重新組合,還原成FPGA的計(jì)算結(jié)果。
3 模擬器的性能測(cè)試與分析
開(kāi)發(fā)板的工作時(shí)鐘為100 MHz,DDS IP核延遲2個(gè)時(shí)鐘周期有輸出值,乘法器延遲1個(gè)時(shí)鐘周期有輸出值,所以系統(tǒng)總共有3個(gè)時(shí)鐘周期的延遲。串口傳輸數(shù)據(jù)比較慢,而且數(shù)據(jù)量太大容易出錯(cuò),所以將工作時(shí)鐘分別進(jìn)行100倍分頻上傳衰落信道第一徑的25 000個(gè)數(shù)據(jù)進(jìn)行觀察,工作時(shí)鐘變成1 MHz,將所得的幅度譜轉(zhuǎn)化成功率形式后如圖3所示,fclk=1 MHz的Matlab仿真如圖4所示。
(下轉(zhuǎn)第113頁(yè))