基于FPGA的OFDM系統設計與實現(2)

2012年05月25日 09:38 來源:互聯網 作者:秩名 我要評論(0)

標簽:OFDM(152)FPGA(1779)

  4 系統調試與性能分析

  采用OFDM技術的無線城域網通信系統是一個比較復雜的系統。利用Matlab仿真完成系統可行性論證后,需要考慮如何利用FPGA完成這個算法流程,這需要考慮采用特定FPGA進行運算時有限字長以及浮點運算的特點和系統所占用的FPGA資源,以保證系統的規模不至于過大而超過特定FPGA計算的存儲能力。經過在硬件設備上的調試,最終完成采用OFDM技術的城域網無線通信系統。

  通過仿真完成可行性論證后,在以Altera公司的EP1C6Q240C8芯片為基礎的FPGA硬件平臺上,實現了以QPSK為調制形式,以FFT/IFFT變換為主的OFDM技術的城域網無線通信系統。

  4.1 IFFT模塊

  發送端系統的主時鐘頻率設計為80MHz,整體采用同步時序邏輯。發送端M序列的產生速率設定為80Mbps。送往D/A的數據速率設定為500kHz。在數據接收模塊,數據收到后立刻存儲,占用時間即為PC發送數據的時間。在QPSK、添零、導頻插入模塊,由于沒有中間存儲器,從RAM讀出數據,經過映射后就直接輸出,整個模塊需要256個時鐘周期。IFFT 模塊采用流水線結構的算法,計算256點 IFFT需要128×8個蝶型單元,合計需要40 960個時鐘,加上輸入輸出所占用的時間,總共約需要41 216個時鐘周期(中間有一些狀態的跳轉,合計512μs)。在數據輸出模塊,其輸入是 IFFT 模塊的輸出,它的輸出速率由 D/A控制。在FPGA中,OFDM調制器的邏輯單元的使用情況見表1,OFDM解調器的邏輯單元的使用情況見表2, IFFT的運算結果見圖5。

  

  

  在表1和表2中,調制器和解調器中所含有的引腳數過多,主要原因是在這些引腳中還含有很多用于調試和測量的引腳,在整個系統調試時,可以將調試和測量用的引腳去掉,只留有數據、地址和控制引腳。

  在解調器中需要用到大量的存儲單元,但考慮到Cyclone系列的存儲單元有限,而邏輯單元豐富的情況,故在解調器中,在幾乎耗盡EAB單元時,用邏輯單元來構造所需的存儲器,可以實現正常的存儲功能。[next]

  在開發工程中,主要用到的開發工具由 Altera 公司的QuartusII 及Mathworks 公司的 Matlab。

  驗證過程如下:

  ·Matlab隨機生成一組128個復數,然后按照 OFDM 幀格式插入0得到256復數點的一個符號,并寫入文件(如 datain.dat);

  在QuartusII中生成 IFFT 的仿真波形文件(ifft.vwf),另存為 ifft.tbl,并刪除其余信號,僅保留 I&Q(輸入數據,24bit);

  在UltraEdit中打開ifftt.tbl、datain.dat,用datain.dat 中的隨機數代替ifft.tbl 中的 I&Q 數據,保存ifft.tbl;

  在QuartusII中打開 ifft.tbl,將I&Q復制到 ifft.vwf 中,開始運行仿真;

  ·將仿真結果另存為dataout.tbl,用Matlab讀取與原數據在Matlab下的IFFT變換結果進行比較分析。

  給出一組隨機數據輸入,經過FPGA中的IFFT模塊變換得到時域幅度如圖6(實部)、圖7(虛部)所示。

  

  而將同樣的隨機數經過MATLAB變換,得到的時域幅度如圖8(實部)、圖9(虛部)所示。

  

  實際測量與仿真計算的方差分析如圖10(實部)、圖11(虛部)所示。兩者結果基本一致。

  

  

  4.2 幀到達檢測同步模塊

  對于幀到達檢測同步系統,要求盡可能在較短的時間內建立同步,并且在幀同步建立后應有較強的抗干擾能力。通常用漏同步概率P1、假同步概率P2和同步平均建立時間ts三個性能指標來表示同步性能的優劣。在本文的幀同步信號提取電路的建模與設計中,是以7位巴克碼識別器作為幀同步碼組的。在同步系統處于捕獲階段時,設置自動判決門限為7;在幀同步建立以后,則把判決門限降為6,這樣做的目的一方面是減少假同步的概率,另一方面是為了減少漏同步的概率。

  漏同步概率P1:

  假設系統的誤碼率為P,7位碼全部正確的概率是(1-P)7,因此判決門限電平為7時的漏同步概率為P1=1-(1-P)7。若將判決門限改為6,此時允許有一位錯碼,出現一位錯碼的概率為C71P1(1-P)6。漏同步概率為P1=1-[(1-P)7+C71P1(1-P)6]。一般地,設幀同步碼組數目為n,判決器容幀同步碼組中最大的錯碼數為m,則漏同步概率為:

  

  從前面的幀同步系統的設計可以了解到,識別器只能被動地識別與幀同步碼組相同的碼組,如果在信息碼組中也出現了與幀同步碼組相同的碼組,這時識別器會把它誤認為幀同步碼組而出現假同步。

  

  比較式(1)和式(2)可以看出,當m增大時,P1減小,P2增大,兩者是矛盾的,另外還可以看出,當n增大時,P1增大,而P2減小,兩者也是矛盾的。因此m和n的選擇要兼顧P1和P2的要求。

  平均同步建立時間ts:

  假設漏同步和假同步都不發生,即P1=0,P2=0。在最壞的情況下,實現幀同步最多需要一幀的時間。若一幀的碼元為N,碼元寬度為Tb,則最長的幀時間為NTb。如果同時出現漏同步和假同步,需要額外的同步建立時間,由此得到幀同步平均建立時間為:

  ts=(1+P1+P2)×NTb

  4.3 數據傳輸速率評價

  經過實際測試,針對256點結合QPSK調制,每解調出一個符號平均所需要的指令周期為41 216個時鐘周期,即512μs。對此實際調試情況,分析其實測參數數據如下:

  一個OFDM符號內包含的比特數為:1/2(卷積碼)×2bit(QPSK)×120(用戶子載波)+2bit(BPSK)×8(導頻子載波數)=136bit,則除去導頻開銷,能夠用于數據傳輸的空中數據率為。

  

  由此可見,實際測試的數據傳輸速率達到本系統要求(150kbps),表明此OFDM基帶處理系統的數據傳輸性能充分滿足所制定的標準。

  本文建立的基于FPGA的可實現流水化運行的OFDM系統的硬件平臺,經系統調試和性能評價,符合設計要求,該硬件平臺的實現使得低成本高速OFDM調制設備的實現成為可能。

上一頁12

本文導航