在開發工程中,主要用到的開發工具由 Altera 公司的QuartusII 及Mathworks 公司的 Matlab。
驗證過程如下:
·Matlab隨機生成一組128個複數,然後按照 OFDM 幀格式插入0得到256複數點的一個符號,並寫入文件(如 datain.dat);
在QuartusII中生成 IFFT 的仿真波形文件(ifft.vwf),另存為 ifft.tbl,並刪除其餘信號,僅保留 IQ(輸入數據,24bit);
在UltraEdit中打開ifftt.tbl、datain.dat,用datain.dat 中的隨機數代替ifft.tbl 中的 IQ 數據,保存ifft.tbl;
在QuartusII中打開 ifft.tbl,將IQ複製到 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調製設備的實現成為可能。
參考文獻
[1] 黃志偉,王彥. FPGA系統設計與實現[M]. 北京:電子工業出版社,2005.1.
[2] 蔡雲巖,李思敏. OFDM調製算法與FPGA實現[J].桂林電子工業學院學報,2002,(6).
[3] 潘松,黃繼業. EDA技術與VHDL[M]. 北京:清華大學出版社,2005.7.