摘要:充分利用DDR2 SDRAM速度快、FLASH掉電不消失、MATLAB/ Simulink易產生矢量信號的特點,以FPGA為邏輯時序控制器,設計并實現了一種靈活、簡單、低成本的矢量信號發生器。本文以產生3載波WCDMA為例,詳細介紹了矢量信號發生器的設計方案與實現過程,使用Verilog HDL描述并實現了DDR2 SDRAM的時序控制和FPGA的邏輯控制。
關鍵詞:DDR2 SDRAM;FPGA;矢量信號發生器;FLASH;Verilog HDL;WCDMA
DOI: 10.3969/j.issn.1005-5517.2012.5.010
隨著數字無線通信的發展,調制方式日益豐富,擴頻技術也應用得越來越廣泛,信號帶寬也越來越寬。通信領域或電子測量測控領域中,經常需要根據自己的需要產生已知的信號,以方便測試。矢量信號發生器可以產生任意復雜的信號。傳統的任意波形發生器,只能產生簡單的正統波、三角波、鋸齒波等或帶簡單調制的信號波形,而不能產生WCDMA、QAM、OFDM等復雜寬帶信號。本文設計的矢量信號發生器,能夠根據自己需要,選擇合適的帶寬與采樣率,產生復雜
將寫好的FPGA程序和產生的Hex文件寫入FLASH中后,掉電重配置FPGA,DAC輸出經濾波后,則可測試產生的3載波WCDMA信號,我們使用Rohde Schwarz公司的FSP頻譜儀進行測試,測試結果如圖10所示。由圖可知,本方案產生的矢量信號發生器,具有很好的信號質量。
本文介紹了一種低成本、簡單、靈活的矢量信號發生器的設計方案,并采用DDR2 SDRM、FLASH、FPGA、DAC等硬件實現。采用這種方案,用戶可以根據自己的需要,產生任意能在MATLAB中產生的矢量信號。FPGA程序設計中,采用Verilog HDL,用狀態機描述系統的邏輯控制與時序控制,實現了DDR2 SDRM的基本操作。