基于FPGA的任意波形發(fā)生器設(shè)計與研究
標簽:FPGA DDS
本文引用地址:http://m.butianyuan.cn/article/165208.htm任意波形發(fā)生器( Arbit rary Waveform Generato r,AWG) 是一種多波型的信號發(fā)生器, 它不僅能產(chǎn)生正弦波、指數(shù)波等常規(guī)波形, 也可以表現(xiàn)出載波調(diào)制的多樣化, 如: 產(chǎn)生調(diào)頻、調(diào)幅、調(diào)相和脈沖調(diào)制等。更可以通過計算機軟件實現(xiàn)波形的編輯, 從而生成用戶所需要的各種任意波形。任意波形發(fā)生器的實現(xiàn)方案主要有程序控制輸出、DMA 輸出、可變時鐘計數(shù)器尋址和直接數(shù)字頻率合成( DDS) 等多種方式 。目前任意波形發(fā)生器的研制主要基于DDS 技術(shù), 與傳統(tǒng)的頻率合成器相比, DDS 具有低成本、低功耗、高分辨率和快速轉(zhuǎn)換時間等優(yōu)點, 廣泛使用在通信、測量與電子儀器領(lǐng)域, 是設(shè)備全數(shù)字化的一個關(guān)鍵技術(shù)。
1 任意波形發(fā)生器的理論分析
1. 1 DDS 技術(shù)簡介
DDS( Direct Digital Sy nthesis) 的概念由美國學(xué)者J. T ier ncy、C. M. Rader 和B. Gold 在1971 年提出。該技術(shù)是從相位的概念進行頻率合成, 主要優(yōu)點是輸出相位連續(xù)、相對帶寬較大、頻率分辨率很高、可編程、準確度和穩(wěn)定度都比較高 。DDS 技術(shù)是利用查表法來產(chǎn)生波形, 而通過修改存儲在ROM 里的數(shù)據(jù), 就可以產(chǎn)生任意波形。
1. 2 DDS 基本結(jié)構(gòu)
DDS 主要有相位累加器、ROM 波形查詢表、數(shù)模轉(zhuǎn)換器組成。其基本框圖如圖1 所示。
圖1 DDS 結(jié)構(gòu)框圖
線性數(shù)字信號通過相位累加器逐級實現(xiàn), 波形函數(shù)存儲在ROM 中, 根據(jù)累加器輸出的相位值作為地址,尋找存儲在ROM 中的波形函數(shù)的幅度量化值, 完成相位到幅值的轉(zhuǎn)換, 輸出相對應(yīng)的序列。
2 硬件電路設(shè)計
2. 1 設(shè)計方案
基于FPGA 實現(xiàn)DDS 功能, 通過單片機實現(xiàn)控制。此方案的核心在于FPGA 的設(shè)計實現(xiàn)邏輯功能,通過對存儲器查表后輸出信號, 由相連接的數(shù)模轉(zhuǎn)換器轉(zhuǎn)換為要求的波形。單片機作為控制器, 易于控制與調(diào)試。系統(tǒng)框圖如圖2 所示。
圖2 系統(tǒng)框圖
2. 2 D/ A 轉(zhuǎn)換器的使用
本案采用德州儀器的TLC7528。它是雙路、8 位D/ A 轉(zhuǎn)換器, 本案設(shè)計為: A 路的數(shù)字量控制B 路的電壓輸出, B 路則控制輸出的幅度。電路圖可以顯示,VA1( VOB1) 處輸入的A( B) 路電壓范圍為- 5~ 0 V,VA2( VOB2) 處為A( B) 路的電壓為- 5~ 5 V。DA 電路連接圖如圖3 所示。
圖3 TLC7528 電路連接圖
其中因為轉(zhuǎn)換方法的問題, 產(chǎn)生的零點誤差可以通過調(diào)整放大器的零點來校準; 而因為溫度變化產(chǎn)生的溫漂誤差在技術(shù)上就比較難消除。關(guān)于單極性DAC 的增益誤差可以通過調(diào)整放大器的閉環(huán)增益來消除。
2. 3 濾波器的設(shè)計
一般情況下, 橢圓濾波器的參數(shù)靈敏度最高, 在使用用相同階數(shù)時, 橢圓濾波器能夠得到最好的矩形系數(shù), 7 階橢圓濾波器在通帶附近的頻點可得到40 dB 的帶外抑制, 很適合將雜散信號濾除。DDS 輸出的另一類波形是頻譜復(fù)雜的任意波形, 頻率比較低, 頻譜結(jié)構(gòu)豐富, 具有較高的諧波分量, 選用等波紋誤差線性相位濾波器來濾波, 它在很大范圍內(nèi)具有固定的延遲, 在遠離截止頻率處, 其幅度響應(yīng)也比較好。
2. 4 單片機的設(shè)計
單片機采用傳統(tǒng)8051 單片機, 晶振為12 MHz, 采用內(nèi)部振蕩方式; 復(fù)位輸入引腳為高電平有效, 保持2 個機器周期以上的的高電平便可以實現(xiàn)對單片機的復(fù)位; 采用MAX232 芯片作為串口芯片, 單片機通過異步通信串行接口與其他計算機或者外圍設(shè)備進行信息傳遞。
3 基于FPGA的DDS實現(xiàn)
FPGA 芯片采用ALT ERA 公司的CYCLON E 系列EP1C3T 144C8。設(shè)計采用Altera 公司的Quar tus , 使用AS 方式與JTAG 配置方式。
3. 1 固定波形輸出
本案使用幾個8 b 的ROM, 存儲深度為1 024 點,用來存儲正弦波等波形數(shù)據(jù)。每個波形數(shù)據(jù)存儲在一個固定的ROM 里, 如圖4Sine_ROM, Square _ROM等分別對應(yīng)正弦、方波等存儲模塊。通過一個使能模塊控制, 采取低電平有效的方式, 選擇性讀取任意模塊的波形。輸出波形時, 僅有單獨一個ROM 工作, 其他模塊為高電平, 保證輸出所需固定波形。使能模塊的輸入端為行列式鍵盤, 設(shè)定為: 單鍵控制某一波形輸出。
圖4 波形ROM 與使能控制設(shè)計電路圖
3. 2 任意波形輸出
任意波形是由上位機下傳的波形數(shù)據(jù), 由單片機控制, 必須設(shè)計一個能隨時接受數(shù)據(jù)更新的RAM。如圖5所示。
圖5 任意波形模塊設(shè)計電路圖
選用的D/ A 轉(zhuǎn)換器為8 位, 所以RAM 的字長也為8 位, 因此波形RAM 的地址線的位數(shù)取10 位。為了實現(xiàn)任意波形數(shù)據(jù)的更新, 波形RAM 設(shè)計成為雙口RAM。
4 性能與誤差分析
4. 1 測試結(jié)果
輸出波形如圖6 所示。本系統(tǒng)測試所用到的儀器為:
示波器 T ekt ronix 公司 型號: T DS1012
計數(shù)器 創(chuàng)瑞科技有限公司 型號: SPF40
評論