基于FPGA的DDS信號發生器設計
“←”:刪除已輸入信號頻率數字的最后一位,用于修改設置的頻率;
“清零”:將頻率數字快速全部清零;
“↑”:步進增大控制;
“↓”:步進減小控制。
設定頻率輸出范圍為1 kHz~10 MHz,頻率步進為50 Hz。系統輸出采用8個LED數碼管,以掃描方式顯示(單位為Hz)頻率數字。根據DDS原理,以步進值50Hz作為頻率控制字1,那么最大值10 MHz對應的頻率控制字為200 000,用18位二進制數值就可以表示(218>200 000)。從抽樣值恢復出原波形數據,理論上每個周期波形數據至少抽取2個點,考慮到實際應用時受頻率損耗、線間串擾等因素的限制,該設計采用22 b的頻率控制字和相位累加器,4 Kb的8位波形ROM表,取相位累加器輸出的高12 b尋址波形數據,三種波形按幅值/相位對應關系分別存儲782個數據。故各波形數據單位周期有800 768(782×210)個相位狀態,完全滿足任一波形在單位周期內取4個幅值點的要求,可保證即使輸出最大頻率的波形仍能達到較好的效果。波形選擇功能由兩位開關組合實現,共有四種狀態,其中三組用來表征不同的波型,另一組留作擴展波形用。
3.2 D/A轉換單元
數/模轉換單元是繼波形數據產生單元之后,將數字量形式的波形幅值轉換成所要求的合成頻率的模擬量形式信號。DAC輸出信號實際上是階梯模擬信號,需在數/模轉換后利用低通濾波器對波形進行平滑處理。在此,采用ADI公司生產的單片雙8位CMOS乘法數/模轉換器AD7528,線性度達到1/2,轉換時間達到納秒級,可以很準確地進行10 MHz信號的量化運算。
3.3 濾波處理單元
濾波器是一種能通過有用頻率信號而同時抑制(或衰減)無用頻率信號的電子裝置。由于運算放大器具有近似理想的特性,且可以省去電感,得到接近理論預測的頻率響應特性。構成有源濾波電路后還具有一定的電壓放大和緩沖作用,并能減小體積。綜合考慮,系統采用運算放大器SL560構成二階低通濾波器。
本文引用地址:http://www.104case.com/article/188619.htm
4 系統功能仿真和驗證分析
4.1 頻率控制字生成模塊仿真與分析
頻率控制字的生成直接影響著波形數據的尋址,該模塊負責快速記錄并實時顯示輸入的頻率數字,準確計算得到相應的頻率控制字。系統鍵盤為高速動態掃描(頻率為200Hz),采用狀態機設計,設置了按鍵去抖動功能。在FPGA開發平臺對該模塊進行功能驗證,整體無誤操作產生,幾乎沒有時滯效應,按鍵的防抖動效果也良好,達到了預期的目的。
4.2 相位累加器模塊仿真與分析
相位累加器用于實現相位累加,并存儲其累加結果。當前,相位累加器的值和時鐘周期到來后的相位累加器的值相差k(k為頻率控制字)。該模塊的仿真波形如圖4所示。
4.3 實驗波形觀測與誤差分析
信號發生器功能驗證無誤,用示波器觀測實驗波形如圖5所示。
檢測輸入頻率為0~10 MHz時,波形形狀均良好,未出現明顯失真。計算理論誤差為0.095%,在實測中發現,波形數字的誤差相對很小,不足0.1 %。由于濾波整形電路存在高頻耦合通路,產生線間串擾,對濾波效果形成了不利影響,因此濾波器設計必須滿足頻帶寬,截止特性好,抗干擾性強等特性。
5 結 語
介紹了以直接數字頻率合成技術(DDS)為基礎的波形信號發生器工作原理和設計過程,并在FPGA實驗平臺上設計實現了滿足各功能指標的信號發生器。系統硬件除需外加濾波整形電路外,其余部分均可在FPGA開發實驗系統KH-310上集成開發,系統軟件可在Quartus下編寫代碼,實現數據信息處理和控制操作等功能。整體開發環境成熟,應用工具齊全,隨著FPGA性價比的不斷提高,基于FPGA平臺開發信號發生器將逐步走向標準化、規模化和產品化。
現代電子和通信技術的發展,對信號發生器提出了更高、更嚴格的要求。除了對信號頻率范圍、帶寬和頻率分辨率的嚴格限制外,對信號的波型及調制特性等也有著苛刻的規定。研究和開發具有更高性價比的信號發生器將是當前和今后一段時間內亟需解決的課題。這里旨在建立一種基于FPGA的簡單數字信號發生器設計方法。若能充分利用FPGA強大的數據運算處理能力以及編程靈活、運行速率快等優點,合理整合IP核資源和SoPC技術,簡化設計結構,一定可以設計出功能多樣、性能更加出色的信號發生器。
p2p機相關文章:p2p原理
評論