?

基于工具軟件的直接數字頻率合成器設計方法

2011-08-21 12:33盧一喆蒙美海
探測與控制學報 2011年6期
關鍵詞:波形頻率軟件

盧一喆,蒙美海,張 峰,張 珂

(1.機電動態控制重點實驗室,陜西 西安 710065;2.西安機電信息研究所,陜西 西安 710065)

0 引言

目前頻率合成的基本方法主要有以下三種:直接頻率合成(DS)、鎖相環合成(IS)和直接數字頻率合成(DDS)[1]。直接頻率合成法輸出頻譜純度差、芯片體積大、功耗大,目前已基本不被采用。鎖相環合成法使用較廣泛,但存在高分辨率與轉換速度之間的矛盾,一般只能用于大步進頻率合成技術中[2]。而直接數字合成法是采用數字技術的一種新型頻率合成方法,該方法的優點是頻率分辨率高、頻率轉換時間快、在頻率改變時能夠保持相位的連續,很容易實現頻率、相位和幅度間的數控調制[3]。直接數字頻率合成法一般采用專用芯片或可編程邏輯芯片來實現,專用的芯片產生的信號波形和控制方式比較固定,不便于修改,采用可編程邏輯芯片設計DDS的方法是采用硬件描述語言輸入與原理圖相結合的方法來設計,但此方法需要編制大量VDHL源程序較為復雜,對設計者的硬件基礎要求較高,綜合性強。且輸出信號不便靈活修改,不能滿足具體多變的工程需求。針對上述問題,本文提出了一種基于DSP Buil der軟件采用現場可編程門陣列FPGA開發DDS系統的設計方法。

1 DDS的工作原理及實現方法

1.1 DDS工作原理

直接數字頻率合成(DDS)是采用數字化技術,通過控制頻率和相位的變化速度,直接產生各種不同頻率信號的一種頻率合成方法。DDS的理論基礎是Shannon抽樣定理,內容是:當抽樣頻率大于等于模擬信號頻率的2倍時,可以由抽樣得到的離散信號無失真地恢復原始信號。在DDS中,這個過程被顛倒過來了。DDS不是對一個模擬信號進行抽樣,而是一個假定抽樣過程已經發生且抽樣的值已經量化完成,通過映射把已經量化的數值送到D/A及后級的LPF重建原始的信號。

DDS的結構原理圖如圖1所示,DDS以數控振蕩器的方式,產生頻率、相位和幅度可控的正弦波。其中包括了相位累加器、正弦ROM查找表、參考時鐘、D/A轉換器、LDF低通濾波器等組成。

圖1 DDS原理框圖Fig.1 DDS schematic diagram

DDS的輸出頻率f0、參考時鐘頻率fc、相位累加器長度N以及頻率控制字K之間的關系為:f0=K×fc2N,DDS的頻率分辨率為:Δf0=fc/2N,由于DDS的最大輸出頻率受奈奎斯特抽樣定理限制,所以fmax=fc/2。

1.2 硬件描述語言設計DDS的方法及流程

使用硬件描述語言V HDL或Verilog開發直接數字頻率合成(DDS)系統,通常通過硬件描述語言進行系統的結構設計與流程設計。采用硬件描述語言設計DDS系統的開發流程一般需要通過6個步驟實現:需要使用代碼編制各結構模塊并完成功能配置;執行功能性仿真;編譯實現邏輯單元連接網表;完成邏輯網表綜合;邏輯網表配置;完成映射與布局布線;并檢查有無時序違規現象完成后仿真、下載位流文件并展開編程與調試過程,較為繁瑣和復雜。相對于使用DSP Builder軟件行系統設計時,設計者需要掌握硬件描述語言并擁有數字電路設計經驗,并熟悉現場FPGA硬件和軟件開發流程,要求設計者具有較全面的電路設計經驗。

1.3 DSP Buil der軟件

DSP Builder是Altera公司推出的一個面向數字信號處理(DSP)開發的系統級工具,它在QuartusⅡFPGA設計環境中集成了 Math Wor ks的Matlab和Si mulink DSP開發軟件,使用FPGA設計DSP系統完全通過Si mulink的圖形化界面進行建模、系統級仿真,設計模型可直接向VHDL硬件描述語言轉換,并自動調用Quart usⅡ等EDA設計軟件,完成綜合、網表生成以及器件適配乃至FPGA的配置下載,使系統描述與硬件實現有機的融合為一體,充分體現了現代電子技術自動化開發的特點與優勢[4]。

使用DSP Budilder軟件設計數字系統的流程:

1)創建Si mulink設計模型。

2)Si mulink設計模型仿真。

3)完成寄存器傳輸級(RTL)仿真。

4)Si mulink模型設計的綜合與編譯。

2 基于DSP Builder的FPGA DDS設計方法

采用DSP Builder軟件進行FPGA DDS系統開發設計按照前述4個具體步驟進行,具體方法為:

2.1 創建Si mulink設計模型

調用Matlab/Si mulink軟件中DSP Buil der軟件的庫函數模塊,搭建一個DDS系統模型。具體實施時:首先啟動Matlab軟件,新建一個Model模型文件,利用Si mulink Library中的DSP Builder模型庫搭建DDS系統模型框圖,如圖2所示。系統模型中包含有三個輸入控制端、中間級電路和一個波形輸出端,輸入端分別為32 bit頻率控制字、32 bit相位控制字和32 bit波形控制字,中間級主要是累加器、加法器、ROM查找表和數據截斷類型轉換器和一個波形輸出,即10 bit的DDSOUT波形輸出。

圖2 DDS系統模型Fig.2 DDS system model

如上所述,采用DSP Builder軟件進行圖形化界面進行系統建模時,只需調用庫中相應模塊進行連接并對參數賦值,即可完成模型文件的設計,相比硬件描述語言設計避免了程序語言對中間模塊進行編寫的繁瑣性。圖形化的模塊連接也省去編寫大量程序流程代碼,使系統流程簡潔清晰,進而提高設計開發的效率。

2.2 Si mulink設計模型仿真

針對搭建的該DDS系統模型,在Matlab∕Simulink軟件中完成模型的行為級仿真,利用Scope/Wavescope等模塊觀測其輸出仿真波形信號。

2.3 完成寄存器傳輸級(RTL)仿真

在完成Si mulink軟件仿真的基礎上,使用DSP Builder軟件中的Signal Compiler模塊生成可被QuartusⅡ調用的DDS工程文件及可供Modelsi m調用的Test bench測試向量文件,完成在Modelsim下的寄存器傳輸(RTL)級仿真,該RTL仿真結果驗證DDS時域波形輸出參數指標并可進行信號頻譜質量分析,確認DDS模型輸出波形是否達到系統設計要求。

該步驟中DSP Builder軟件將自動生成并映射邏輯網表,簡化了硬件描述語言系統開發中,須將邏輯網表中硬件原語和底層單元配置到固有硬件結構上完成映射與布局布線和后仿真的過程,因此可弱化仿真過程對硬件的需求,簡化了配置操作過程,也為系統的軟、硬件分離提供了必要的靈活性。

2.4 Si mulink模型設計的綜合與編譯

在QuartusⅡ中完成綜合、網表配置和生成位流文件的程式設計后,對FPGA進行下載、配置從而完成整個DDS開發設計流程。其中第三及第四步可替代采用硬件描述語言開發DDS系統時應用硬件描述語言代碼編制DDS各結構模塊之后的所有步驟,并且DSP Builder軟件設計完成后的直接數字頻率合成器系統只需對模型內部幾個模塊參數進行配置修改就能輸出所需相應的波形信號,可快速實現工程設計對多樣波形信號進行修改配置的要求。較之采用硬件描述語言實現DDS方法更為簡單靈活,同時省去硬件描述語言開發DDS系統在針對程序代碼修改后須再次執行編程調試的步驟。

綜上所述,使用該設計方法僅4個步驟就可以完成對DDS系統的設計開發。

3 基于DSP Builder的設計實例

本設計方案采用的現場可編程門陣列FPGA芯片是Altera公司的Cyclone系列芯片EP1C6 Q240C8,其容量6 000個邏輯宏單元,等效于標準15萬邏輯門電路,速度等級為“-8”(130 MHz左右),完全可通過單片芯片電路實現DDS。

3.1 DDS系統參數計算及仿真模型構建

系統設計參數計算:

1)輸出頻率及系統時鐘選擇。在實際應用當中DDS輸出頻率不能超過0.4fc,其中fc為系統時鐘,以避免混疊而落入有用輸出頻帶內。因此若系統要求輸出1 MHz正弦波,則采樣時鐘不應低于2.5 MHz。

2)累加器位寬計算。按照設計要求輸出頻率分辨率要達到0.02 Hz,若采用系統時鐘為50 MHz,由Δfmin=fc/2N可得,N 近似選為32 bit,即相位累加和相位累加器位寬均為32 bit。

3)對于波形RA M的設計,首先應確定波形RA M的深度和字長,如選擇8 bit DAC則RA M字長很明顯也應為8 bit,而從噪聲功率的角度看RA M的地址線的位數應該等于或者略大于D/A字長加2。在本設計中,波形RA M的字長選為8 bit,地址線為10 bit。

仿真模型構建:

由以上設計參數建立如下基于DSP Builder軟件下的DDS系統模型,如圖3所示。其中2個Parallel Adder Subtractor分別對應為相位累加器和相位調制器,LUT對應為ROM查找表,LUT通過Bus Conversion轉換器完成數據截斷與相位調制器連接轉換并輸出數字波形信號,LUT輸出的波形信號與32位波形控制字進行復合,經Bus Conversion轉換器調制整形輸出。

圖3 基于DSP Builder的DDS系統模型圖Fig.3 DDS system model base on DSP Builder

3.2 設計模型RTL級仿真及波形分析

DDS系統的RTL級仿真。首先在Si mulink軟件平臺下進行功能性驗證,在設定系統采樣率為50 MHz,累加器位寬32 bit,設置正弦波的最大步長所對應的頻率、相位和幅度控制字分別為00100000,0和0的前提下,輸出波形的頻率為1 MHz,位寬8 bit。如圖4所示。

圖4 Simulink仿真波形圖Fig.4 Si mulink wave diagram

隨后Modelsi m仿真軟件調用DSP Builder生成的工程文件對輸出波形進行時序違規及波形質量分析,如圖5所示。

圖5 Modelsim仿真波形圖Fig.5 Modelsi m wave diagram

由圖可見,在不同的參數設置下,如要改變輸出波形的的步進精度或需要增加幅度控制等,則只需要在模型中作相應的修改即可,即修改頻率控制字、相位控制字便可完成。如需要增加幅度控制,則需要在模型中加入乘法器模塊,控制幅度輸出,但數字化實現的過程中會存在截斷誤差以及量化誤差,可以使用抖動注入技術等方法提高無雜散動態范圍改善輸出頻譜質量,使輸出波形參數滿足設計方案的技術指標要求[5]。

3.3 設計綜合與編譯

針對DSP Builder軟件設計完成的DDS系統模型進行編譯,通過調用DSP Buil der軟件中的Signal Co mpiler模塊生成供Quart usⅡ 調用的工程文件,完成綜合、網表生成和適配,最后完成FPGA的配置和下載過程。

4 結論

本文提出一種基于DSP Buil der軟件的直接數字頻率合成的設計方法。該方法在DSP Buil der軟件中完成FPGA DDS的模型設計,并在Si mulink軟件中完成圖形界面下的建模、仿真和系統集成。DSP Buil der軟件通過Signal Co mpiler模塊生成Quart usⅡ軟件中使用的硬件描述語言文件,并且在Si mulink中自動生成RTL測試文件。這些文件是已經被優化的預驗證RTL輸出文件,可直接用于Quart usⅡ軟件中進行時序仿真比較。設計實例表明,設計者無需學習新的設計流程或編程語言,直接使用DSP Buil der和QuartusⅡ軟件單獨進行硬件設計。該設計方法原理正確,行之有效,使用圖形開發界面簡單直觀,避免了直接數字頻率合成設計編制復雜的程序代碼語言,并且開發環境與Quart usⅡ軟件交互性強,便于修改設計,具有良好的可重配性,從而縮短工程研制周期,為直接數字頻率合成設計提供了一種新的設計方法。較之直接模擬合成法、鎖相環合成法和直接數字合成法設計直接數字頻率合成器的方法更為靈活方便,具有很高的性價比。但數字化實現的過程中會存在截斷誤差以及量化誤差,設計時可通過使用抖動注入技術等方法提高無雜散動態范圍,改善頻譜質量達到設計指標。

[1]高澤溪,高成.直接頻率合成器(DDS)及其性能分析[J].北京航天航空大學學報,1998,24(5):615-618.GAO Zexi,GAO Cheng.Direct digital synthesis(DDS)and perfor mance analysis[J].Jour nal of Beijing Univercity of Aeronautics and Astronautics,1998,24(5):615-618.

[2]王家禮,孫璐.頻率合成技術[M].西安:西安電子科技大學出版社,2009.

[3]郭軍朝.直接數字頻率合成研究及其FPGA實現[D].上海:上海交通大學,2002

[4]楊東,王建業,蔡飛.基于DSP開發工具的自適應濾波器[J].探測與控制學報,2010,32(3):79-82.YANG Dong,WANG Jianye,CAI Fei.The adaptive filter based on the developement tool of DSP[J].Journal of Detection & Contr ol,2010,32(3):79-82.

[5]樂翔,秦士.直接數字頻率合成信號的雜散性能分析[J].清華大學學報(自然科學版),2000,40(1):46-48.YUE Xiang,QIN Shi.Analysis of spur property of direct digital synthesis signal[J].Journal of Tsinghua Univercity(science and technology),2000,40(1):46-48.

猜你喜歡
波形頻率軟件
基于時域波形掩護的間歇采樣干擾對抗研究
禪宗軟件
基于Halbach陣列磁鋼的PMSM氣隙磁密波形優化
振動與頻率
軟件對對碰
用于SAR與通信一體化系統的濾波器組多載波波形
全新邁騰B7L車噴油器波形測試
無線電頻率的特點
一類非線性離散動力系統的頻率收斂性
即時通訊軟件WhatsApp
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合