《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于FPGA的無線信道模擬器設(shè)計(jì)
基于FPGA的無線信道模擬器設(shè)計(jì)
摘要: 為了縮短研發(fā)周期,,需要在實(shí)驗(yàn)室模擬出無線信道的各種傳播特性,,無線信道模擬器設(shè)計(jì)必不可少,。采用基于頻率選擇性信道Jakes仿真器模型,使用Xilinx公司的VIrtex-2p模擬實(shí)現(xiàn)了頻率選擇性衰落信道,,最后將數(shù)據(jù)通過串口上傳到Matlab分析信道的統(tǒng)計(jì)特性,。
關(guān)鍵詞: FPGA Virtex Matlab 無線信道模擬器
Abstract:
Key words :

0 引言

隨著人們對(duì)無線通信需求和質(zhì)量的要求越來越高,無線通信設(shè)備的研發(fā)也變得越來越復(fù)雜,,系統(tǒng)測(cè)試在整個(gè)設(shè)備研發(fā)過程中所占的比重也越來越大,。為了更加方便地對(duì)所設(shè)計(jì)的系統(tǒng)進(jìn)行調(diào)試和測(cè)試,無線信道模擬器是進(jìn)行無線通信系統(tǒng)硬件測(cè)試不可或缺的儀器之一,。目前,,關(guān)于無線信道的模型研究比較多,而基于理論模型的硬件實(shí)現(xiàn)并不是很廣泛,,同時(shí)成品十分昂貴,,所以利用FPGA實(shí)現(xiàn)無線信道模擬器變得很有意義,,節(jié)約了成本,而且也便于實(shí)現(xiàn),。FPGA是在PLD的基礎(chǔ)上發(fā)展起來的高性能可編程邏輯器件,,使用FPGA進(jìn)行數(shù)字邏輯設(shè)計(jì),開發(fā)過程的投資較少,,研制和開發(fā)的時(shí)間較短,,并且因?yàn)橐_的可分配性電路一般比較簡(jiǎn)單,修改和優(yōu)化比較方便,,并且在實(shí)際中易于使用,。同時(shí)由于FPGA并行運(yùn)算的特點(diǎn),在大規(guī)模的數(shù)字運(yùn)算中很有優(yōu)勢(shì),,延時(shí)很小,。

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所示,。

基于FPGA的無線信道模擬器設(shè)計(jì)

Jakes在參考文獻(xiàn)中介紹了一種單徑衰落信道的仿真,且在此基礎(chǔ)上提出了一種對(duì)頻率選擇性衰落信道的仿真方法,。在原來第l徑中的多普勒相移bnl的基礎(chǔ)上,,加上一個(gè)附加相移rnl,成為新的多普勒相移bnl+rnl,,且保持其他參數(shù)不變,。為了保證各個(gè)可分辨多徑之間相互獨(dú)立,所以必須選擇合適的bnl和rnl,,其中比較簡(jiǎn)單的一種方法是:

基于FPGA的無線信道模擬器設(shè)計(jì)

2 信道模擬器的FPGA設(shè)計(jì)

FPGA采用Xilinx公司的Virtex-2p,,其中芯片工作時(shí)鐘為100MHz。本文設(shè)置N0=8,,fm=200 Hz,,

基于FPGA的無線信道模擬器設(shè)計(jì)

為了計(jì)算方便,將所得的值擴(kuò)大32倍,,也就是左移5位之后四舍五入成整數(shù)值,,存入寄存器調(diào)用。所以信道模擬器的實(shí)現(xiàn)過程主要為各個(gè)正弦波的FPGA實(shí)現(xiàn),,與對(duì)應(yīng)的系數(shù)相乘疊加成單徑衰落,,輸入信號(hào)經(jīng)過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)用來產(chǎn)生正弦波,,這樣占用的邏輯資源比較少,,缺點(diǎn)就是過程很麻煩而且不夠靈活,模型需要8種頻率的正弦波和余弦波,,而且fm也可能根據(jù)需要而變化,,每一次變化就需要在ROM中重新賦初值,十分麻煩,。因此本文選擇調(diào)用Xilinx自帶DDS的IP核,,通過邏輯資源換取效率。DDS的模塊圖如圖2所示,。

基于FPGA的無線信道模擬器設(shè)計(jì)

這樣,,通過控制DATA的值得到所需頻率的正弦波。其中fclk為開發(fā)工作時(shí)鐘,,DATA為輸入的頻率控制字,,B為DATA的位寬,fout為所得的頻率,。

2.2 時(shí)延模塊的FPGA實(shí)現(xiàn)

輸入通過時(shí)延后與各路徑的衰落系數(shù)相乘,,然后各個(gè)路徑疊加成輸出信號(hào)。本文中時(shí)延采用計(jì)數(shù)分頻來實(shí)現(xiàn),,如延遲1μs,,工作時(shí)鐘為100MHz,所以計(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打開驅(qū)動(dòng)讀取FPGA算完的數(shù)據(jù)。根據(jù)異步串行通信的數(shù)據(jù)傳送格式,,每一幀數(shù)據(jù)由起始位,、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位組成,,本文只選取了數(shù)據(jù)位,,一共8位。通過串/并轉(zhuǎn)換接收數(shù)據(jù),,算完后存入RAM,,然后調(diào)用數(shù)據(jù),通過并/串轉(zhuǎn)換傳輸數(shù)據(jù)。

 

正弦波的輸出有10位,,其中l(wèi)位是符號(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è)試與分析

開發(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所示,。

基于FPGA的無線信道模擬器設(shè)計(jì)

圖3和圖4中橫軸單位均為s,縱軸單位均為dB,。通過比較圖3和圖4發(fā)現(xiàn)實(shí)際產(chǎn)生的結(jié)果與仿真結(jié)果大致相同,,也因?yàn)橄禂?shù)的取整和最后上傳數(shù)據(jù)的截?cái)嘤猩僭S誤差,基本滿足要求,。

4 結(jié)語(yǔ)

本文采用Jakes改進(jìn)模型,,基于FPGA模擬了無線信道的傳輸特性,最終經(jīng)過驗(yàn)證基本滿足要求,。為了簡(jiǎn)化實(shí)現(xiàn)過程,,將系數(shù)取整以及傳輸數(shù)據(jù)進(jìn)行截?cái)啵a(chǎn)生一些誤差,在這方面可以采用浮點(diǎn)數(shù)表示系數(shù)得到更精確的值,。

 

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。