馬子軒



摘? ?要:本文使用QuartusII9軟件對SmartSOPC試驗箱中的FPGA進行編程,使FPGA實現直接數字頻率合成器(DDS)的核心功能。DDS的核心器件包括分頻器、頻率調節預置電路、累加器、波形儲存器等模塊。在后期的擴展功能設計中加入了開關按鍵、LED數碼管、測頻電路、顯示控制電路、波形選擇電路等模塊,實現了輸出頻率與相位可控和可視化、輸出多種波形、頻率可測等功能的多功能直接數字頻率合成器。
關鍵詞:直接頻率合成器? FPGA
中圖分類號:TN 74? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文獻標識碼:A? ? ? ? ? ? ? ? ? ? ? ?文章編號:1674-098X(2019)05(b)-0006-02
1? 設計原理
1.1 DDS系統組成
DDS系統核心由分頻器、頻率調節與預置電路、累加器、波形存儲器構成。頻率預置電路負責調節頻率設定位(K)和相位設定位(P),其中K即為讀取ROM表時的步長,P即為讀取ROM表時的開始位置。由此可得其輸出的頻率為Kfc/N,其中fc為DA轉換器的采樣頻率,N為ROM表的長度。根據奈奎斯特采樣定理可知,K最大為N/2。
累加器由n位加法器+n位寄存器組成,負責在激勵信號的作用下,累加相位,然后將相位信息輸出到波形儲存器中讀出波形幅值信息,將幅值信息輸送到DA轉換器中,經過低通濾波器后得到輸出波形。
1.2 DDS的電路組成
整體的DDS電路由四大部分組成,圖1所示的低通濾波器和DA轉換器由SmartSOPC試驗箱提供。分頻器電路對開發板提供的穩定48MHz信號進行了分頻,以提供給各個電路模塊使用,如表1所示。
頻率預置電路用于調節K和P,其中K和P的調節范圍均設置為1~1024,我們提供了兩種調節速率(快調和慢調),分別使用2Hz和10Hz的調節脈沖信號作為激勵。
累加器由三片7483四位加法器實現,將加法計算出的結果輸送給D觸發器寄存,等待下一個上升沿到來后將這個數發送到加法器的輸入端,實現累加。這里接入的是1MHz的脈沖信號,這個脈沖的頻率需要和ROM的讀取頻率相同。
波形儲存器為12位尋址,相當于將一個周期的正弦信號離散成樣值序列,將每個樣值對應的幅值以10位二進制輸入到ROM中。在ROM的輸入端加入使能引腳,命令電路只讀取已經使能的ROM,這樣可以節省電路的性能損耗,同時也給波形選擇帶來了極大的方便。
為防止用戶在操作時的抖動,加入除顫電路。利用一個集成的D觸發器進行除顫,除顫電路的頻率是10Hz。
2? 附加功能
在設計完基礎的DDS功能之后,為了實現與客戶的友好交互,繼續設計了波形選擇,測頻等。
2.1 波形選擇
DDS需要輸出多種波形,需要通設計一個ROM選擇電路來實現不同波形的切換。
波形選擇模塊主要由74160模十計數器、74138譯碼器、兩個8選1的總線選擇器構成。74160用來計數從而選擇波形;74138將計數的結果譯碼,來選擇哪個ROM被讀取;8選1總線選擇器用來將從ROM中讀取的數據選擇出來,送到DA轉換器轉換。
2.2 測頻功能
此功能用于測量此時輸出的波形的頻率,并將其輸出在數碼管上。其基本原理是讀取ROM中的數據的峰值出現的時刻,當峰值出現時計數器就+1,在T=1s的范圍內,計數器的值即為輸出信號的頻率。
3? 仿真
下面羅列出各個模塊的仿真情況。其中分頻電路和波形存儲電路因仿真時間較長,在這里不提供仿真結果。
4? 示波器測試結果
由于測試結果較多,在這里僅提供兩種示波器的結果。一種是基本的三角函數信號,一種是經過設計的一箭穿心圖樣,如圖4、5所示。
參考文獻
[1] 王靜.基于FPGA直接數字頻率合成器DDS的設計[J].科技信息,2012(23):113-114.
[2] 蔣立平,姜萍,譚雪琴,等.數字邏輯電路與系統設計[M].北京:電子工業出版社,2013.
[3] 鄭燕,郝建國,黨劍華.基于VHDL語言與Quartus II軟件的可編程邏輯器件應用與開發[M].北京:國防工業出版社,2007.
[4] 楊東霞,巨永鋒.基于FPGA和DDS的數字調制信號發生器設計與實現[J].電子設計工程,2013,21(6):90-93.