




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、FPGA高級應用期末考試 題 目 基于FPGA的DDS信號發生器設計 學 名 熊 金 齊 專業班級 電信工程13-01 學 號 541301031041 院 (系) 電子信息工程學院 目 錄1.方案選擇與方案論證12.系統功能與原理32.1 DDS的基本原理32.2 參數確定43.硬件電路設計.53.1 分頻器53.2 總體原理圖53.3 DDS的FPGA實現63.4 D/A轉換電路64. 軟件設計64.1 Verilog程序設計64.2總程序流程設計圖74.3子程序流程圖75.結果分析75.1 波形仿真75.2.輸出波形86.設計小結9附 錄10摘 要 波形發生器己成為現代測試領域應用最為廣
2、泛的通用儀器之一,代表了波形發生器的發展方向。隨著科技的發展,對波形發生器各方面的要求越來越高。近年來,直接數字頻率合成器(DDS)由于其具有頻率分辨率高、頻率變換速度快、相位可連續變化等特點,在數字通信系統中已被廣泛采用而成為現代頻率合成技術中的佼佼者。本次設計的是多功能信號發生器,它能夠產生方波,三角波,鋸齒波和正弦波四種基本波形。結合DDS技術,通過對FPGA的編程實現產生多種波,本電路是通過鍵盤掃描判斷,進入相應的功能程序,然后實現頻率調節,波形轉換,幅度控制的。本次設計中我負責的是波形輸出模塊,通過調節要輸出方波,三角波,鋸齒波和正弦波四種基本波形。關鍵字:波形發生器,直接數字頻率合
3、成器, 現場可編程門陣列IV1.方案選擇與方案論證數據輸入:方案一:4x4矩陣鍵盤優點:由8個IO口檢測16個按鍵,可以大大節省IO口資源。缺點:控制時序較復雜,增加編程和調試的難度。方案二:獨立按鍵優點:控制時序較簡單,較易于編程與調試。缺點:比較浪費IO口資源。方案三:撥碼開關優點:控制時序簡單,易于編程和調試。缺點:比較浪費IO口資源。通過比較各種因素,我選擇方案一,波形輸出:方案一:存儲波形數據的ROM/RAM + DAC0832優點:1. 可以顯示復雜波形2. 可以有效控制輸出波形的頻率,幅度及相位3. 節省FPGA內部的邏輯資源4. 可以簡單的切換波形5. 使波形輸出方式單一化,降
4、低了編程難度缺點:要消耗一定的ROM/RAM資源方案二:存儲波形數據的ROM/RAM + 分頻器輸出矩形波 + DAC0832優點:1.可以顯示復雜波形2.可以有效控制輸出波形的頻率,幅度及相位3.節省FPGA內部的邏輯資源4.可以較簡單的切換波形缺點:矩形波的頻率,幅度和相位的調節需要另設相位累加電路,消耗一定的邏輯資源方案三:case語句 + 分頻器輸出矩形波 + DAC0832優點:在數據傳輸的反應速度上,在所需速度很快時占優勢缺點:1.大量浪費FPGA內部的邏輯資源2. 波形數據較大時,會給代碼的調試和維護帶來不便。方案四:存儲波形數據的ROM/RAM + 分頻器輸出矩形波 + 計數器
5、輸出鋸齒波和三角波 + DAC0832優點:1.可以顯示復雜波形2.可以有效控制輸出波形的頻率,幅度及相位缺點:每種波形都需要另設相位累加電路來控制其頻率,相位和幅度,消耗較多的邏輯資源方案五:case語句 + 分頻器輸出矩形波 + 計數器輸出鋸齒波和三角波 + DAC0832。優點:在數據傳輸的反應速度上,在所需速度很快時占優勢。缺點:1.大量浪費FPGA內部的邏輯資源。2.波形數據較大時,會給代碼的調試和維護帶來不便。為了減小設計周期,減小編程難度,便于后期的調試工作,而且能方便的對幅度和頻率進行調節,我選擇方案一。綜上幾種方案,我們組采用了數據輸入的方案一,4x4矩陣鍵盤,由8個IO口檢
6、測16個按鍵,可以大大節省IO口資源。波形輸出的方案二,存儲波形數據的ROM/RAM + 分頻器輸出矩形波 + DAC0832 可以顯示復雜波形,有效控制輸出波形的頻率,幅度及相位,容易達到我們需要的效果,可以較簡單的切換波形,而且節省了FPGA內部的邏輯資源。2.系統功能與原理2.1 DDS的基本原理DDS技術是一種把一系列數字量形式的信號通過DAC轉換成模擬量形式的信號的合成技術,它是將輸出波形的一個完整的周期、幅度值都順序地存放在波形存儲器中,通過控制相位增量產生頻率、相位可控制的波形。DDS電路一般包括基準時鐘、相位增量寄存器、相位累加器、波形存儲器、D/A轉換器和低通濾波器(LPF)
7、等模塊,如圖1.1所示。相位增量寄存器寄存頻率控制數據,相位累加器完成相位累加的功能,波形存儲器存儲波形數據的單周期幅值數據,D/A轉換器將數字量形式的波形幅值數據轉化為所要求合成頻率的模擬量形式信號,低通濾波器濾除諧波分量。整個系統在統一的時鐘下工作,從而保證所合成信號的精確。每來一個時鐘脈沖,相位增量寄存器頻率控制數據與累加寄存器的累加相位數據相加,把相加后的結果送至累加寄存器的數據輸出端。這樣,相位累加器在參考時鐘的作用下,進行線性相位累加,當相位累加器累加滿量時就會產生一次溢出,完成一個周期性的動作,這個周期就是DDS合成信號的一個頻率周期,累加器的溢出頻率就是DDS輸出的信號頻率。相
8、位累加器輸出的數據的高位地址作為波形存儲器的地址,從而進行相位到幅值的轉換,即可在給定的時間上確定輸出的波形幅值。 圖1 DDS原理圖 波形存儲器產生的所需波形的幅值的數字數據通過D/A轉換器轉換成模擬信號,經過低通濾波器濾除不需要的分量以便輸出頻譜純凈的所需信號。信號發生器的輸出頻率fo可表示為: ( 1.1) 式中為系統時鐘,為系統分辨率,N為相位累加器位數,M為相位累加器的增量。2.2 參數確定首先確定系統的分辨率,最高頻率,及最高頻率下的最少采樣點數根據需要產生的最高頻率以及該頻率下的最少采樣點數,由公式 (1.2)確定系統時鐘的下限值。同時又要滿足分辨率計算公式 (1.3)綜合考慮決
9、定的值。選定了的值后,則由公式(1.3)可得,據此可確定相位累加器位數N。然后由最高輸出頻率 (1.4)推出M,得出相位增量寄存器為S位。確定波形存儲器的地址位數W,本系統中決定寄存個數據值,因此RAM地址為Z位。一般選用FPGA/CPLD器件作為DDS的實現器件,對于D/A轉換器的選擇,首先要考慮到D/A轉換器的轉換速率。要實現所需的頻率,D/A的轉換速度要大于,然后根據D/A轉換器字長所帶來的誤差,決定D/A的位數。由此選擇D/A轉換器的型號。3.硬件電路設計3.1 分頻器信號發生器產生、控制和顯示的總體結構圖如圖所示頻率控制單元時鐘頻率示波器D/A四種波形選擇單元 圖2 總體結構圖外部輸
10、入一個50MHZ的時鐘頻率,經過頻率控制單元控制其頻率在要求的范圍內,由4選1數據選擇器實現對輸出波形的選擇,再通過D/A轉換模塊,將數字信號轉換成模擬信號在示波器上顯示出來。3.2 總體原理圖基于VHDL語言設計一個簡易多功能信號發生器,通過選入輸入信號,可以輸出正弦波、三角波、方波和鋸齒波四種波形信號。信號發生器的控制模塊可以用數據選擇器實現,四種信號的信號選擇可以用4選1數據選擇器實現。同時本設計使用原理圖的方法,對正弦波、三角波、方波和鋸齒波和4選1數據選擇器元件進行調用。簡易多功能信號發生器的原理圖如下: 圖3 總體原理圖3.3 DDS的FPGA實現相位累加器與相位寄存器的設計相位累
11、加器與相位寄存器主要完成累加,實現輸出波形頻率可調功能。利用Quartus II可編程邏輯器件系統開發工具進行設計。首先,打開Quartus II軟件,新建一個工程管理文件,然后在此工程管理文件中新建一個Verilog HDL源程序文件,并用硬件描述語言Verilog HDL編寫程序實現其功能。在設計過程中,可在一個模塊中描述。3.4 D/A轉換電路 圖4 D/A轉換電路數據轉換器輸出的數據是數字形式的電壓值,為實現數字電壓值與模擬電壓值之間的轉換,系統還專門設計D/A轉換電路,其D/A轉換電路原理圖如圖3所示。4. 軟件設計 4.1 Verilog程序設計 系統軟件的主要任務是:將送入的頻率
12、,相位差控制字,控制輸出波形種類進處理得到三種不同的波形,頻率和相位差。首先是對DDS子程序進行設計,利用類屬語句對輸入頻率字,相位字,累加器,正弦ROM表的地址位寬和數據進行說明,軟件的主要任務是在累加器中按輸入的頻率字進行循環累加,將截斷的數據與輸入的相位字進行累加。4.2總程序流程設計圖 圖5 總程序流程圖4.3子程序流程圖圖6 子程序流程圖5.結果分析:5.1 波形仿真 圖7 正弦波仿真圖 圖8 方波仿真圖 圖9 三角波仿真圖5.2.輸出波形: 正弦波 三角波 矩形波6.設計小結:本次設計以直接數字頻率合成技術(DDS)為基礎的波形信號發生器工作原理和設計過程,并在FPGA實驗平臺上設
13、計實現了滿足各功能指標的信號發生器。系統硬件除需外加濾波整形電路外,其余部分均可在FPGA開發實驗系統KH310上集成開發,系統軟件可在Quartus下編寫代碼,實現數據信息處理和控制操作等功能。整體開發環境成熟,應用工具齊全,隨著FPGA性價比的不斷提高,基于FPGA平臺開發信號發生器將逐步走向標準化、規?;彤a品化。 在這次課程設計中,我的工作主要是相位累加器的底層模塊的代碼編寫和調試和ROM定制,負責波形輸出模塊,能夠完成順利的完成對波形類型的輸出,如:三角波、方波、正弦波。雖然在設計過程中遇到很多困難 ,不過在老師和同學的幫助得到了解決,通過這次設計也使我的動手能力得到加強,學會發現問
14、題并通過查閱資料,與同學討論請教老師,來解決問題??傊以谶@次設計實踐中受益匪淺,積累了經驗。附 錄波形輸出module ROM_READ(CLK50M,F,MOD,V,ROM_DATA); input CLK50M; /clock source 50Mhz - 20ns input 15:0F; /11,000,000Hz input 1:0MOD; /tri,sin,01 input 7:0V; /voltage 050 output reg 7:0ROM_DATA; wire DIV_CLK; wire 15:0DIVP; wire 0:7tri_data; wire 0:7sin_d
15、ata; wire 0:7toc_data; wire 0:7mtx_data; reg 6:0address; assign DIVP = 50000000 / (256*F); DivClk rom_clk(CLK50M,DIVP,DIV_CLK); TAG tri_rom(address,CLK50M,tri_data); SIN sin_rom(address,CLK50M,sin_data); TOC toc_rom(address,CLK50M,toc_data); MTX mtx_rom(address,CLK50M,mtx_data); always(posedge DIV_CLK)begin if(address <= 7'b1111110) address <= address + 1; else address <= 7'h00; end always(posedge DIV_CLK)be
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《籃球教學理論》課件
- 鐵路旅客運輸服務始發準備96課件
- 法律事務專員協議
- 《美容護膚教程類課件》課件
- 售票作業馬丹32課件
- 財務分析與記賬代理合同
- 鐵路車站自動控制系統維護鐵道信號自動控制專業教學50課件
- 《Python程序設計基礎》課件 第五章 函數與模塊
- 地面清洗改造方案范本
- 中國鄉土民俗文化課件
- 外研版(三起)(2024)三年級下冊英語Unit 2 單元測試卷(含答案)
- 2025年全國普通話水平測試訓練題庫及答案
- 2025年陜西新華出版傳媒集團新華書店分公司招聘筆試參考題庫附帶答案詳解
- 2025年山東省濱州市陽信縣九年級一模模擬化學試題(含答案)
- 眼科學重點總結-臨床醫學
- 綜合韓國語(初級)知到課后答案智慧樹章節測試答案2025年春廣東建設職業技術學院
- 同步練習:4.1 光的直線傳播
- Mission-Planner地面站操作手冊
- 2025年光伏居間協議模板
- 2025+DeepSeek自學手冊:從理論(模型訓練)到實踐(模型應用)
- 流程建設培訓
評論
0/150
提交評論