崔唯佳,高磊,陳曉軍
(中北大學信息探測與處理技術研究所,山西 太原 030051)
隨著科學技術的發(fā)展, 普通的性能單一的波形發(fā)生器已經越來越不能滿足實際的需求, 要想實現(xiàn)性能復雜、波形多樣的發(fā)生器, 頻率合成技術是一種較好的實現(xiàn)方法。頻率合成技術分為直接數(shù)字頻率合成技術( Direct Digital Frequency Synthesis, 簡稱DDS 或DDFS)、間接頻率合成技術、直接模擬頻率合成技術?;贒DS的任意波形發(fā)生器對硬件要求低, 頻率切換速度快,很容易提高其頻率分辨率和改變其頻率范圍。本文采用基于DDS技術結構構造正弦波形發(fā)生器, 充分利用單片機靈活的控制、豐富的外設處理能力和外設的替代性,實現(xiàn)頻率、幅值可調的函數(shù)波形輸出,同時可以根據需要方便地實現(xiàn)各種比較復雜的調頻、調相和調幅功能, 具有很好的實用性。
DDS的工作原理:DDS是以相位累加器為核心的,它由一個N位字長的二進制加法器和一個N位寄存器組成,作用是對頻率轉換字(w )進行線性累加; 正弦查找表中所對應的是一張函數(shù)波形查尋表, 對應不同的相位碼址輸出不同的幅度編碼。相位累加器累加輸出的序列對查找表尋址,得到一系列離散的幅度編碼。該幅度編碼經D/A轉換后得到對應的階梯波,最后經低通濾波器平滑后可得到所需的模擬波形。相位累加器在基準時鐘的作用下,進行線性相位累加, 當相位累加器加滿時就會產生一次溢出,這樣就完成了一個周期,這個周期也就是DDS 的信號的一個頻率周期。輸出頻率 f t0為:
DDS以數(shù)控振蕩器的方式產生頻率、相位可控制的正弦波,主要由基準時鐘fs、相位累計器、幅度/ 相位轉換電路、正弦查找表、D/A轉換器組成。如圖1所示,它采用數(shù)字技術重復掃正弦查找表來獲取數(shù)據,構筑處所希望的波形。
圖1 系統(tǒng)原理框圖
硬件結構總體方案是通過電源芯片對FPGA供電,由JTAG接口作為程序下載口,最后由示波器觀察波形,如圖2所示。
圖2 硬件結構圖
系統(tǒng)軟件設計采用模塊化思想, 可移植性、可讀性強。DDS算法利用循環(huán)溢出的相位累加器產生正弦函數(shù)的相位變量。相位累加器每溢出一次, 就代表正弦波形的一個周期。相位累加器輸入的頻率控制字控制生成的正弦波形的頻率, 累加器的瞬時相位輸出作為ROM表的地址。ROM表是存有正弦采樣值的存儲器。系統(tǒng)流程圖如圖3所示。
圖3 系統(tǒng)流程圖
2.3.1 地址累加器模塊設計
地址累加器的作用是將頻率轉換字輸出的頻率控制字進行逐步累加,并把結果送到查找表中進行尋址。部分VHDL源代碼如下:
2.3.2 正弦查找表進程
正弦查找表:表中所對應的是一張函數(shù)波形查尋表,對應不同的相位碼址輸出不同的幅度編碼。相位累加器累加輸出的序列對查找表尋址,得到一系列離散的幅度編碼。該幅度編碼經D/A轉換后得到對應的階梯波,最后經低通濾波器平滑后可得到所需的模擬波形。部分VHDL語言如下(查找表數(shù)據過多,只羅列一部分數(shù)據):
根據以上設計,可得出正弦波信號發(fā)生器的仿真圖,如圖4所示。正弦波模擬信號波形圖,如圖5所示。由此可知實驗方案滿足要求。
圖4 仿真圖
圖5 正弦波
本文論述的基于DDS技術的正弦信號生成系統(tǒng)簡單易行,具有很強的實用性,通過VHDL語言編寫程序完成各個模塊的產生,進而完成整個系統(tǒng),為相關領域提供了較好的模型和方法,具有很強的實際使用價值。
[1]李曉芳,常春波,高文華.基于FPGA 的DDS 算法的優(yōu)化[J].儀器儀表學報,2009(z1):896-898.
[2]傅文斌.遙控遙測系統(tǒng)[M].北京:機械工業(yè)出版社,2007:210-212.
[3]曾繁泰,陳美金.VHDL 程序設計[M]. 北京:清華大學出版社,2007:5-22.
[4]鄔楊波,王曙光,胡建平.有限狀態(tài)機的VHDL設計及優(yōu)化[J].信息技術,2008,28(1):75-78.
[5]張力軍.數(shù)字通信簡介[J].電子工業(yè)大學學報,2003:552-552.
[6]夏宇聞.Verilog HDL 數(shù)字系統(tǒng)設計教程[M].北京:北京航空航天大學出版,2009.
[7]William,Sandoval.The ZigBee Revolution[DB/OL].[2005-09-23].
[8]林靜宜.基于DDS 的多模式信號發(fā)生器的設計與實現(xiàn)[D].武漢:華中科技大學, 2008.