




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、畢業(yè)論文基于FPGA的DDS信號發(fā)生器的研究第1章緒論1.1 課題背景頻率檢測是電子測量領域的最基本也是最重要的測量之一,頻率信號抗干擾強,易于傳輸,可以獲得較高的測量精度,所以頻率方法的研究越來越受到重視1。在頻率合成領域中,直接數字合成(Direct Digital Synthesizer,簡稱:DDS)是近年來新的技術, 它從相位的角度出發(fā)直接合成所需波形。它是由美國人J.Tierncy首先提出來的,是一種以數字信號處理理論為基礎,從相位概念出發(fā)直接合成所需波形的一種新的全數字技術的頻率合成方法2。其主要優(yōu)點有:頻率改變速度快、頻率分辨率高、輸出相位連續(xù)、可編程、全數字化便于集成等,目前
2、使用最廣泛的一種DDS頻率合成方式是利用高速存儲器將正弦波的M個樣品存在其中,然后以查找的方式按均勻的速率把這些樣品輸入到高速數模轉換器,變成所設定頻率的正弦波信號3。近30年來,隨著超大規(guī)模集成、現場可編程門陣列(Field Programmable Gate Array,簡稱:FPGA)、復雜可編程器件(Complex programmable Logic Device,簡稱:CPLD)等技術的出現以與對DDS理論上的進一步探討,使得DDS技術得到了飛速的發(fā)展。它已廣泛應用于通訊、雷達、遙控測試、電子對抗、以與現代化的儀器儀表工業(yè)等許多領域。DDS的數字部分,即相位累加器和查表,被稱為數控
3、振蕩器(NCO)4。波形發(fā)生器即通常所說的信號發(fā)生器是一種常用的信號源,和示波器、電壓表、頻率計等儀器一樣是最普遍、最基本也是應用最廣泛的的電子儀器之一,幾乎所有電參量的測量都要用到波形發(fā)生器。不論是在生產還是在科研與教學上,波形發(fā)生器都是電子工程師信號仿真試驗的最佳工具。隨著現代電子技術的飛速發(fā)展,現代電子測量工作對波形發(fā)生器的性能提出了更高的要求,不僅要求能產生正弦波、方波等標準波形,還能根據需要產生任意波形,且操作方便,輸出波形質量好,輸出頻率圍寬,輸出頻率穩(wěn)定度、準確度與分辨率高,頻率轉換速度快且頻率轉換時輸出波形相位連續(xù)等。而傳統波形發(fā)生器采用專用芯片,成本高,控制方式不靈活,已經越
4、來越不能滿足現代電子測量的需要,正逐步退出歷史舞臺??梢?,為適應現代電子技術的不斷發(fā)展和市場要求,研究制作高性能的任意波形發(fā)生器十分有必要,而且意義重大。1.2 國外波形發(fā)生器發(fā)展現狀1.2.1波形發(fā)生器的發(fā)展現狀在70年代前,信號發(fā)生器主要有兩類:正弦波和脈沖波。這個時期的波形發(fā)生器多采用模擬電子技術,而且模擬器件構成的電路存在著尺寸大、價格貴、功耗大等缺點,并且要產生較為復雜的信號波形,則電路結構非常復雜。在70年代后,微處理器的出現,可以利用處理器、A/D和D/A,硬件和軟件使波形發(fā)生器的功能擴大,產生更加復雜的波形。這時期的波形發(fā)生器多以軟件為主,實質是采用微處理器對DAC的程序控制,
5、就可以得到各種簡單的波形。90年代末,出現幾種真正高性能、高價格的波形發(fā)生器、但是HP公司推出了型號為HP770S的信號模擬裝置系統,它由HP8770A任意波形數字化和HP1776A波形發(fā)生軟件組成。HP8770A實際上也只能產生8種波形,而且價格昂貴。到了二十一世紀,隨著集成電路技術的高速發(fā)展,出現了多種工作頻率可過GHz的DDS芯片,同時也推動了波形發(fā)生器的發(fā)展,2003年,Agilent的產品33220A能夠產生17種波形,最高頻率可達到20M,2005年的產品N6030A能夠產生高達500MHz的頻率,采樣的頻率可達1.25GHz。最近幾年來,隨著集成電路技術和器件水平的提高,國外一些
6、公司先后推出各種各樣的DDS專用芯片,如Qualcomm公司的Q2230、Q2334,AD公司的AD9955、AD9850、AD9851、AD9852等5。1.2.2國外波形發(fā)生器產品比較頻率合成器被譽為電子系統的“心臟”,頻率源的發(fā)展直接關系到電子系統性能的發(fā)展。信號發(fā)生器是一種常用的信號源,廣泛應用于通信、雷達、測控、電子對抗以與現代化儀器儀表等領域,是一種為電子測量工作提供符合嚴格技術要求的電信號設備,和示波器、電壓表、頻率計等儀器一樣是最普通、最基本也是應用最廣泛的電子儀器之一,幾乎所有電參量的測量都要用到波形發(fā)生器6。早在1978年,由美國Wavetek公司和日本東亞電波工業(yè)公司公布
7、了最高取樣頻率為5MHz,可以形成256點(存儲長度)波形數據,垂直分辨率為8bit,主要用于振動、醫(yī)療、材料等領域的第一代高性能信號源,經過將近30年的發(fā)展,伴隨著電子元器件、電路、與生產設備的高速化、高集成化,波形發(fā)生器的性能有了飛速的提高。變得操作越來越簡單而輸出波形的能力越來越強。波形操作方法的好壞,是由波形發(fā)生器控制軟件質量保證的,編輯功能增加的越多,波形形成的操作性越好。目前我國已經開始研制信號發(fā)生器,并獲得了可喜的成果,但總的來說,我國波形發(fā)生器還沒有形成真正的產業(yè),并且我國目前在波形發(fā)生器的的種類和性能都與國外同類產品存在較大的差距,因此加緊對這類產品的研制顯得迫在眉睫7。1.
8、2.3研究波形發(fā)生器的目的與意義波形發(fā)生器是信號源的一種,主要給被測電路提供所需要的己知信號(各種波形),然后用其它儀表測量感興趣的參數8。多功能波形發(fā)生器采用FPGA器件作為核心控制部件,精度高穩(wěn)定性好,得到波形平滑,特別是由于FPGA的高速度,能實現較高頻率的波形9。目前我國己經開始研制波形發(fā)生器,并取得了可喜的成果。但總的來說,我國波形發(fā)生器還沒有形成真正的產業(yè)。就目前國的成熟產品來看,多為一些PC儀器插卡,獨立的儀器和VXI系統的模塊很少,并且我國目前在波形發(fā)生器的種類和性能都與國外同類產品存在較大的差距,因此加緊對這類產品的研制顯得迫在眉睫。1.3論文的主要工作與章節(jié)安排本文主要通過
9、分析DDS的原理,進而得到DDS信號發(fā)生器的設計方案,然后通過選材等一系列設計來完成DDS信號發(fā)生器的研究。其中第二章主要介紹DDS的基本原理以與優(yōu)缺點。第三章則重點介紹了本次設計所采用的開發(fā)平臺。第四章是本問重點介紹的對象,里面主要包含了設計的具體思路包括系統的實現以與系統工作流程情況。第五章是要是對實驗結果進行分析。第2章 DDS波形發(fā)生器的理論介紹2.1 DDS的基本原理與特點DDS即直接數字頻率合成技術,是由美國學者J.Tiercy,M.Rader和B.Gold于1971年首次提出,是一種以數字信號處理理論為基礎,從相位概念出發(fā)直接合成所需波形的一種新的全數字技術的頻率合成方法。從19
10、71年至今,DDS已從一個工程新事物逐漸發(fā)展成為一個重要的設計工具。與大家熟悉的直接式和間接式(PLL)頻率合成技術不同,DDS技術完全采用數字技術處理,屬于第三代頻率合成技術。DDS的主要優(yōu)點是它的輸出頻率、相位和幅度能夠在微控制器的控制下精確而快速的變換。DDS的應用領域包括各類無線通信、有線通信、網絡通信,各類需要頻率信號的儀器、儀表、遙測、遙感設備、收音機和電視機等10。本節(jié)以正弦信號的產生為例,闡述DDS技術的基本原理。對于一個頻譜純凈的單頻正弦信號可以用下式來描述:(2-1)其相位為(2-2)顯然,該正弦信號相位和幅值均為連續(xù)變量。為了便于采用數字技術,應對連續(xù)的正弦信號進行離散化
11、處理,即把相位和幅值均轉化為數字量。用頻率為fclk的基準時鐘對正弦信號進行抽樣,這樣,在一個參考時鐘周期T,相位的變化量為(2-3)由上式得到的為模擬量,為了將其轉化為數字量,將2切割成2N等份作為最小量化單位,從而得到的數字量M為:(2-4)將式(2-3)帶入(2-4)得(2-5)式(2-5)表明,在參考時鐘頻fclk確定的情況下,輸出正弦信號的頻率fout決定于M的大小,并且與M呈線性關系。通過改變M的大小,就可以改變輸出正弦信號的頻率,因此,M也稱頻率控制字。當參考時鐘頻率取2N時,正弦信號的頻率就等于頻率控制字M。當M取1時,可以得到輸出信號的最小頻率步進為(2-6)由此可知,只要N
12、取值足夠大,就可以得到非常小的頻率步進值。將相位轉化為數字量以后,式(2-1)就可以描述為如下形式:(2-7)表示本周期相位值與前一個基準時鐘周期的相位值的累加。從式(2-7)可以看出,只要用頻率控制字M進行簡單的累加運算,就可以得到正弦函數的當前相位值。而正弦信號的幅值就是正弦信號的當前相位值的函數。由于正弦函數為非線性函數,很難實時計算,一般通過查表的方法來快速獲得函數值。有了上述理論分析,我們就可以得到一種用數字的方法獲得正弦信號的方法:先構建一個N為的相位累加器,在每一個時鐘周期,將相位累加器中的值與頻率控制字相加,得到當前的相位值。將當前的相位值作為ROM的地址,讀出ROM中的正弦波
13、數據,再通過D/A轉化成模擬信號。頻率控制字越大,相位累加器的輸出變化越快,ROM的地址變化也越快,輸出的正弦信號頻率越高。需要注意的是,受ROM容量的限制,ROM地址位數一般小于相位累加器的位數,因此,把相位累加器輸出的高位作為ROM的地址。只需要改變頻率控制字,就可以改變輸出信號的頻率,因此,采用DDS技術,對輸出信號頻率的控制十分簡單。DDS正弦信號發(fā)生器的基本原理框圖如圖2-1-1所示。圖2-1 DDS正弦信號發(fā)生器基本原理框圖2.2 DDS信號的優(yōu)點與缺點2.2.1 DDS的優(yōu)點(l)輸出頻率相對帶寬較寬輸出頻率帶寬為50%fs(理論值),實際輸出帶寬仍可達到40%fs。(2)頻率轉
14、換時間短頻率時間等于頻率控制字的傳輸時間,也就是一個時鐘周期的時間。時鐘頻率越高,轉換時間越短。DDS的轉換時間可達納微秒級數量級,比使用其他的頻率合成方法都要短數個數量級。(3)頻率分辨率高若時鐘fs的頻率不變,DDS的頻率分辨率就是由相位累加器的位數N決定。只要增加相位累加器的位數N即可獲得任意小的頻率分辨率。目前,大多數DDS的分辨率在1Hz數量級,許多小于1mHz甚至更小。(4)相位變化連續(xù)改變DDS輸出頻率,實際上改變的是每一個時鐘周期的相位增量,相位函數的曲線是連續(xù)的,只是在改變頻率的瞬間其頻率發(fā)生了突變,因而保持了信號相位的連續(xù)。(5)輸出波形的靈活性只要在DDS部加上相應控制如
15、調頻控制FM,調相控制PM和調幅控制AM即可以方便靈活實現調頻,調頻和調幅等功能,產生FSK,PSK,ASK,MSK等信號。另外,只要在DDS的波形存儲器存放不同波形數據,就可以實現各種波形的輸出,如三角波,鋸齒波和矩形波甚至是任意波形。當DDS的波形存儲器分別存放正弦和余弦函數表時,即可得到正交的兩路輸出。2.2.2 DDS的缺點(1)輸出帶寬圍有限由于DDS部DAC和波形存儲器(ROM)的工作速度有限,使得DDS輸出的最高頻率有限。目前市場上采用CMOS,TTL,EcL,工藝制作的DDS芯片,工作頻率一般在幾十MHz至400MHz左右。采用GaAS工藝的DDS芯片工作頻率可達2GHz以上。
16、(2)輸出散雜大由于DDS采用全數字結構,不可避免地引入了散雜。其來源主要由三個:相位累加器相位舍入誤差造成的散雜;幅度量化誤差造成的散雜和 DAC非理想特性造成的散雜。2.3 本章小結本章主要介紹了DDS的原理。其中第一部分以正弦波為例子,對DDS原理在整個設中的重要意義進行講解。后一部分則是分析DDS的優(yōu)點以與缺點。第3章開發(fā)平臺介紹3.1 硬件平臺FPGA介紹3.1.1 FPGA簡介自1985年Xilinx公司推出有史以來第一顆現場可程序化邏輯組件至今,已經歷了超過二十幾年的發(fā)展歷史。在發(fā)展過程中,以FPGA為代表的數字系統現場集成取得了驚人的發(fā)展:現場可程序化邏輯組件從最初的1200個
17、可利用邏輯閘,發(fā)展到90年代的25萬個可利用邏輯閘。其后不到數年,著名FPGA廠商,包括Altera公司、Xilinx等公司,又陸續(xù)推出了建數百萬邏輯閘以上的FPGA芯片,將現場可程序化組件的整合度提高到一個新的水平。如今,各廠商不再盲目追加邏輯閘的數量,轉而努力消除過去FPGA弱勢之處,以強化過的運算效能、更為節(jié)省的功耗,向各種運算領域撲天蓋地而來??v觀現場可程序化邏輯組件的發(fā)展歷史,其之所以具有巨大的市場吸引力,在于FPGA不僅可以解決電子系統小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價格不斷降低,促使FPGA在某些情況下得以取代ASIC的市場,特別是對小量、多
18、樣,短開發(fā)期的產品需求,使FPGA成為首選。3.1.2 FPGA工作原理FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個新概念,部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和部連線(Interconnect)三個部分。它的基本特點主要有:采用FPGA設計ASIC電路,用戶不需要投片生產,就能得到合用的芯片。 FPGA可做其它全定制或半定制ASIC電路的中試樣片。 FPGA部有豐富的觸發(fā)器和I/O引腳。FPGA是ASIC電路中設計周期最短、開發(fā)費用最低、風險最小的器件之一。F
19、PGA采用高速CHMOS工藝,功耗很低,可以與CMOS、TTL電平兼容??v觀現場可程序化邏輯組件的發(fā)展歷史,其之所以具有巨大的市場吸引力,在于FPGA不僅可以解決電子系統小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價格不斷降低,促使FPGA在某些情況下得以取代ASIC的市場,特別是對小量、多樣,短開發(fā)期的產品需求,使FPGA成為首選11。FPGA是由存放在片RAM中的程序來設置其工作狀態(tài)的,因此,工作時需要對片的RAM進行編程。用戶可以根據不同的配置模式,采用不同的編程方式。加電時,FPGA芯片將EPROM中數據讀入片編程RAM中,配置完成后,FPGA進入工作狀態(tài)。掉
20、電后,FPGA恢復成白片,部邏輯關系消失,因此,FPGA能夠反復使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當需要修改FPGA功能時,只需換一片EPROM即可。這樣,同一片FPGA,不同的編程數據,可以產生不同的電路功能。因此,FPGA的使用非常靈活12。3.2 軟件平臺Quartus II介紹圖3-2 Quartus II軟件界面如圖3-2所示為Quartus II軟件的基本界面,Quartus II軟件是Altera的綜合開發(fā)工具,它集成了Altera的FPGA/CPLD開發(fā)流程中所涉與的所有工具和第三方軟件接口。Quartus II幾乎支持A
21、ltera現行的所有FPGA,在該集成開發(fā)環(huán)境中可以實現電路的設計、綜合、適配到最后形成下載文件以與在線配置FPGA,還能對電路進行功能仿真,對適配后形成的最終電路進行時序仿真。也就是說只要有了Quartus II這個集成開發(fā)環(huán)境,就基本上可以完成Altera公司FPGA開發(fā)過程中的所有工作。另外,為了方便設計,Quartus II還提供了免費LPM模塊供用戶調用,如計數器、存儲器、加法器、乘法器等。除了這些免費的LPM模塊外,Altera公司還開發(fā)了有償IP核提供給有需要的用戶使用。這些LPM模塊和IP核都大大簡化了設計過程,縮短了開發(fā)周期。Quartus II支持多種輸入方式,常用的有:(
22、1)原理圖輸入:這種方法最直觀,適合頂層電路的設計;(2)硬件描述語言輸入:包括AHDL、VHDL與Verilog HDL輸入。采用硬件描述語言的優(yōu)點易于使用自頂向下的設計方法、易于模塊規(guī)劃和復用、移植性強、通用性好。(3)網表輸入:對于在其他軟件系統上設計的電路,可以采用這種設計方法,而不必重新輸入,Quartus II支持的網表文件包括EDIF、VHDL與Verilog等格式。這種方法的優(yōu)點是可以充分利用現有的設計資源。3.3 本章小結本章主要對本次設計所選擇的開發(fā)平臺進行簡單介紹。FPGA因為其不僅可以解決電子系統小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價格
23、不斷降低,所以成為首選。軟件部分主要是對Quartus II進行簡單的介紹。第4章系統實現4.1 設計要求采用DDS技術設計一個信號發(fā)生器,其原理框圖如圖4-1所示:圖4-1 DDS信號發(fā)生器原理框圖設計要求如下:1、具有產生正弦波、方波、三角波三種周期性波形;2、輸出信號頻率圍1Hz5MHz,重復頻率可調,頻率步進間隔小于等于1Hz;3、輸出信號幅值圍0.510V(峰-峰值),信號幅值和直流偏移量可數控調節(jié);4、具有穩(wěn)幅輸出功能,當負載變化時,輸出電壓幅度變化不大于±3%(負載電阻變化圍:50正無窮);5、具有顯示輸出波形類型、重復頻率等功能。4.2 系統方案論證與比較4.2.1產
24、生DDS信號波形方案的選擇目前主流的DDS信號發(fā)生器方案有兩種:方案一、采用專用DDS集成芯片實現的信號發(fā)生器;方案二、采用單片機+FPGA實現的DDS信號發(fā)生器。比較這兩種方案,專用DDS芯片部的波形數據存放在ROM型存儲器中,波形數據無法修改故而只能產生固定波形的信號,但系統比較容易實現。而采用單片機+FPGA實現的DDS信號發(fā)生器則是將波形數據存儲器改為FPGA上的RAM行存儲器,波形信號能實時改變,在利用單片機系統進行控制和處理后,能實現DDS任意波形發(fā)生器,功能更加完善,更新更加方便。故本設計選用方案二。4.2.2單片機處理器比較選擇方案一:采用AT89C51單片機處理電路,其擁有并
25、行I/O口32個,對于實際應用來說遠遠不夠,且不具備自帶AD、DA,使得電路結構復雜。方案二:C8051F360單片機部資源非常豐富,是目前功能最全、速度最快的51核SoC單片機之一,包括告訴8051微處理器核,擴充終端處理系統,256字節(jié)部RAM,1024字節(jié)XRAM和32KB的閃速存儲器,多達39個I/O引腳,兩個部振蕩器和片調試電路,能很好的完成本系統所需的單線程,鍵盤功能分支程序控制。在本設計中選用方案二。4.3 系統理論分析與設計4.3.1總體設計本設計采用單片機+FPGA實現的DDS信號發(fā)生器,整個DDS信號發(fā)生器由單片機子系統、FPGA子系統、模擬子系統三部分組成,系統原理框圖如
26、下圖4-2所示:圖4-2系統原理框圖4.3.2主要技術參數的分析與確定DDS信號發(fā)生器的技術指標取決于DDS系統的時鐘頻率、相位累加器的位數、波形數據表的長度等參數,下面對這些參數進行討論,以選擇適合的模擬電路元件以實現高質量的DDS信號。1、輸出帶寬當頻率控制字M=1時,輸出信號的最低頻率為(4-1)式中,為參考時鐘頻率,N為相位累加器的位數。當N取很大值時,最低輸出頻率可以認為達到DDS最低頻率的零頻。DDS的最高輸出頻率由參考時鐘周期和一個周期波形采樣點數決定,若采樣點數為X,則最高輸出頻率為(4-2)2、頻率分辨率頻率分辨率由下式決定:(4-3)在此式中,當N取值足夠大時,DDS信號可
27、以達到很高的信號分辨率。3、 DDS信號的質量由于DDS信號發(fā)生器采用全數字設計,不可避免在采樣時會帶來D/A產生的幅度量化噪聲和相位累加運算截斷產生的相位噪聲。改善DDS信號質量的主要方法有:增加波形存儲器和D/A的字寬;增加每個周期數據的樣本數,提高外部參考時鐘頻率和通過低通濾波器來改善輸出信號質量。綜合上述討論和對器件成本以與硬件系統復雜度的考慮,DDS子系統的參數確定如下:1 參考時鐘頻率:40MHz;2 頻率控制字的位寬:32位;3 相位累加器的位寬:32位;4 波形存儲器的地址位寬:8位;5 波形存儲器的數據位寬:8位。4.3.3數字部分電路設計該DDS信號發(fā)生器的數字部分包括單片
28、機子系統、FPGA、高速D/A轉換器、人機接口(128×64點陣式LCD模塊和4×4矩陣式鍵盤)。單片機子系統需要完成鍵盤輸入、液晶顯示、向FPGA傳送數據、輸出信號幅值和直流偏移量的數字控制等功能。本設計中DDS信號發(fā)生器的鍵盤主要用于選擇信號波形、輸入頻率值、控制輸出信號幅值和直流偏移量。09鍵用于輸入頻率值,其中03鍵還用于選擇輸出波形;Hz鍵用于輸入給定頻率值的確認鍵;波形選擇鍵用于選擇波形;A+鍵用于增加信號幅值,A-鍵用于減少信號幅值,D+鍵用于增加直流偏移量,D-鍵用于減少直流偏移量。單片機控制程序包括主程序和鍵盤終端服務程序。主程序完成初始化和鍵值輸入處理功
29、能,鍵盤終端服務程序只完成鍵值讀入功能。鍵盤終端中斷程序完成鍵盤中斷服務。FPGA部的DDS子系統包括地址譯碼電路、LCD模塊接口、4×4鍵盤接口和DDS子系統。其中地址譯碼器用來產生外部數據存儲器和I/O接口的片選信號,LCD模塊LCD12864與單片機之間采用并行接口將單片機處理后的數據顯示出來,4×4鍵盤接口電路包括分頻電路、鍵盤掃描電路、行值編碼器和消抖電路實現按鍵轉換成二進制編碼、鍵值數據端口與單片機總線接口連通、鍵值有效時的中斷信號和消抖功能,DDS子系統由頻率字寄存器、相位累加器、波形數據存儲器等幾部分組成以根據輸入控制要求產生多種波形信號。高速D/A轉換器采
30、用AD公司的高速D/A轉換器AD9708,轉換速率為40MHz,含有一個輸入數據鎖存器和譯碼邏輯電路,用來完成波形重建功能。4.3.4模擬部分電路設計該DDS信號發(fā)生器的模擬部分包括濾波電路、信號放大器電路和驅動電路。模擬電路將承擔輸出信號幅值、直流偏移量、驅動能力等指標的實現。濾波電路針對高速D/A輸出信號進行濾波,將輸出信號中高頻分量通過低通濾波器濾去,得到相對純凈的波形信號。根據DDS信號發(fā)生器的設計要求,輸出正弦信號的最高頻率為5MHz,故本DDS信號發(fā)生器的濾波電路采用截至頻率為5MHz的單片機集成低通濾波器LT6600-5。另在LT6600-5的外部電路中需外接阻值較大的兩個電阻,
31、以防治濾波器部差分電路增益過大引起的輸出波形飽和失真。信號放大電路由基本差分放大電路、反相放大器和數字電位器組成??紤]到差分輸出信號仍可能含有少量直流分量,在反相放大器后設計了一個直流偏移量調節(jié)電路,該直流偏移量調節(jié)電路由數字電位器實現。驅動電路將為DDS信號發(fā)生器提供穩(wěn)幅輸出能力,即當負載電阻從50變化時,輸出電壓幅度變化不大與±3%。實際設計中我們采用了TI公司的THS3092高速集成運算放大器。4.4 FPGA部DDS子系統的設計FPGA部邏輯分為四個部分:地址譯碼電路、4X4鍵盤接口、DDS子系統、LCD模塊接口。下面主要介紹DDS子系統的設計。根據DDS原理圖可知,DDS子
32、系統由頻率字寄存器、相位累加器、波形數據存儲器幾個部分組成。根據設計題目要求,DDS信號發(fā)生器應能產生多種波形,這就要求單片機可以向波形數據存儲器傳送不同的波形數據,顯然,波形數據存儲器采用雙口RAM是最合適的。雙口RAM中的一個端口與單片機總線相連,接受來自單片機的256字節(jié)波形數據,另一個端口與D/A轉換器相連。根據上述思路,可以得到圖4-3所示的DDS子系統頂層原理圖。圖中DLATCH8為8為地址鎖存器、frew為頻率字寄存器、PHASE-ACC為相位累加器、LMP-RAM-DP為雙口RAM:圖4-3 DDS子系統頂層原理圖(1) 波形數據存儲器波形數據存儲器的功能是:一方面,單片機能夠
33、通過并行總線將波形數據寫入存儲器,另一方面,在相位累加器輸出地址控制下將波形數據依次送給高速D/A。在圖4-3所示的頂層原理圖中,波形數據存儲器采用了雙端口RAM,一個端口與單片機并行總線相連,另一個端口與相位累加器和高速D/A相連。圖4-3中的雙口屬于簡單的雙端口RAM,有一個獨立的寫端口和一個獨立的讀端口。對于寫端口來說,其信號來自單片機的并行總線。當單片機執(zhí)行外部數據存儲器寫指令時,并行總線上的數據,地址,寫信號通過同步時鐘CLK1的上升沿送入雙口RAM的存儲體,完成將波形數據寫入指定的存儲單元。對讀端口來說,其地址信號來自相位累加器輸出的高8位,讀使能信號直接接高電平,數據輸入送高速D
34、/A轉換器。讀端口的輸入輸出信號也是與同步時鐘CLK1同步。假設忽略器件延時,CLK0為DDS子系統的參考時鐘,雙口RAM同步時鐘CLK1由CLK0反向得到,高速D/A時鐘信號DACLK與CLK一樣。相位累加器的輸出地址在CLK0的上升沿時刻發(fā)生改變,由于CLK1與CLK0反相,保證在CLK1上升沿時刻,Addr31.24于穩(wěn)定狀態(tài)。雙口RAM的輸出數據DACD7.0在CLK1上升沿時刻發(fā)生改變,由于高速D/A的時鐘信號DACLK與CLK1反相,保證了DACLK上升沿時刻,DAC7.0處于穩(wěn)定狀態(tài)。(2)地址鎖存模塊C8051F360單片機P1口分時送出低8位地址和8位數據信息。通過FPGA部
35、設計一個8位鎖存器即可獲取低8位地址。地址鎖存器的VHDL程序為:port(clk:in std_logic; d:in std_logic_vector(7 downto 0); q:out std_logic_vector(7 downto 0);end DLATCH8;architecture one of DLATCH8 isbeginprocess(clk,d)beginif(clk='1')thenq<=d;end if;end process;(3)相位累加器模塊的設計相位累加器是DDS子系統的核心,由32位加法器與32位累加寄存器級聯構成,對代表頻率大小的
36、頻率控制字進行累加運算,輸出波形存儲器的地址。相位累加器的設計可以直接采用LPM宏單元庫中的LMP_ADD_SUB宏單元,也可以用VHDL語言自行設計。以下就是采用VHDL語言實現的相位累加器源程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity phase_acc isport( clk:in std_logic; -系統時鐘 freqin:in std_logic_vector(31 downto 0); -32位輸入頻率
37、字romaddr:out std_logic_vector(7 downto 0); -8位相位累加器輸出end phase_acc;architecture one of phase_acc issignal acc:std_logic_vector(31 downto 0);beginprocess(clk)beginif(clk'event and clk='1')thenacc<=acc+freqin; -頻率字累加,寄存end if;end process;romaddr<=acc(31 downto 24); -截斷輸出end one;語句acc
38、<=acc+freqin實現頻率字累加功能,并且因為要在下一時鐘到來時才能進行下一次累加,所以也同時實現了累加寄存器功能。最后語句romaddr<=acc(31 downto 24)實現相位截斷的功能,截取了32位相位地址碼的高8位。(4)頻率字寄存器模塊由于DDS的頻率字采用32位字寬,因此,頻率字寄存器由4個8位寄存器構成。講地址譯碼器產生的片選信號CS2與地址信號A1、A0配合進行再次譯碼就可以得到4個寄存器片選信號CS20CS23。為了保證數據的可靠傳送,片選信號CS20CS23必須與寫信號相或后送入寄存器時鐘輸入端。單片機通過4次寫操作將32位頻率字送到頻率字寄存器。頻率
39、字寄存器模塊的原理圖如圖4-4所示:圖4-4 頻率字接受模塊頂層圖4.5 單片機控制軟件設計DDS信號發(fā)生器采用FPGA等硬件來完成高速波形的產生任務,其工作不需要單片機過多的干預。單片機子系統只需完成鍵盤輸入、液晶顯示、向FPGA傳送數據、輸出信號的幅值和直流偏移量的數字控制等功能。從軟件的總體結構來看,單片機控制軟件是一種單線程、鍵盤功能的分支程序。4.5.1人機接口功能定義根據DDS信號發(fā)生器的功能設計了如圖4-5所示的3種LCD顯示頁面。頁面1為初始化顯示頁面,頁面2為波形選擇頁面,在給定頻率輸入頁面中,7個小方框所顯示的位置用于顯示輸入給定的頻率值。給定的頻率圍為0000000999
40、9999Hz。為了操作方便,允許輸入給定頻率的位數在17位之間,用Hz鍵結束。對于DDS信號發(fā)生器來說,鍵盤主要用于選擇信號波形、輸入頻率值、控制輸出信號的幅值和直流偏移量。由于按鍵數量比較多,鍵盤采用4X4矩陣式鍵盤。鍵盤各按鍵的定義如圖4-6所示。0鍵9鍵用于輸入頻率,期中0鍵3鍵還用于選擇輸出波形;Hz鍵用于輸入給定頻率的確認鍵;波形選擇鍵用于選擇波形;A+鍵用于增加信號幅值,A-鍵用于減少信號幅值,D+鍵用于增加直流偏移量,D-鍵用于減少直流偏移量。頁面1 頁面2 頁面3圖4-5 頁面1頁面3示意圖圖4-6 DDS信號發(fā)生器鍵盤定義4.5.2主程序DDS信號發(fā)生器的控制程序可分為主程序
41、和鍵盤中斷服務程序兩部分。在確定主程序和鍵盤中斷服務程序的功能時有兩種方案:一種方案是主程序只完成初始化,將鍵盤讀入和處理全部由鍵盤中斷服務程序完成;另一種方案是主程序完成初始化和鍵值處理功能,而鍵盤中斷服務程序只完成鍵值讀入。由于鍵值處理程序設計數值運算、LCD模塊的顯示,將這些耗時的鍵值處理程序放入中斷服務程序不符合程序設計的一般原則,因此,選用第二種方案。主程序首先完成堆棧指針設置,C8051F360部資源初始化,LCD模塊初始化。初始化完成以后就不斷檢測有無按鍵鍵入,當有按鍵鍵入時,根據鍵值執(zhí)行相應的功能。由于02鍵不但用于輸入給定頻率,而且用來選擇輸出波形。為了區(qū)分0鍵2鍵的不同功能
42、,在主程序中定義了兩種工作模式:波形選擇模式和頻率輸入模式。在波形選擇模式下,02鍵用于選擇輸出波形。當0鍵有效時,選擇正弦波,單片機將256個字節(jié)正弦波波形數據發(fā)送到FPGA的雙口RAM中;當1鍵有效時,選擇方波,單片機將256個方波波形數據發(fā)送到FPGA中的雙口RAM中;當2鍵有顯示,選擇三角波,單片機將256個字節(jié)三角波數據發(fā)送到FPGA的雙口RAM中。在頻率輸入模式下,0鍵到9鍵用于輸入給定的頻率值。定義了以上兩種工作模式以后,在主程序中分別設置一個波形選擇模式標志和一個頻率輸入模式標志位。主程序初始化時,將波形選擇模式和頻率輸入模式標志位均清零。當波形選擇鍵有效時,波形選擇模式標志位
43、置1,主程序進入波形選擇模式;在波形選擇模式下,按0鍵2鍵有效,頻率輸入模式標志位置1,主程序進入頻率輸入模式。由于輸入給定頻率的位數允許在17位變化,程序設計師通過Hz鍵來結束給定頻率的輸入,因此Hz鍵不但用來顯示頻率的單位,也能起到確認鍵的功能。當Hz鍵有效時,程序將輸入的17位給定頻率值轉化為4字節(jié)頻率控制字,然后發(fā)送到FPGA的頻率控制字接收模塊。由于鍵盤輸入的給定頻率值為非壓縮型BCD碼,應先將其轉化為二進制數,再根據公式(2-5)將給定頻率值轉化成為4字節(jié)的頻率控制字。當相位累加器字寬N取32,參考時鐘頻率fclk取40MHz時,頻率控制字可以由以下公式計算得到:(4-4)式子中fout為由二進制數表示的給定頻率,乘上系數107.374,就可以得到4字節(jié)的頻率控制字。單片機系統主程序見附件。主程序流程圖如圖4-7所示。圖4-7 系統主程序流程圖4.6 本章小結本章主要介紹了DDS信號發(fā)生器的實現過程,開頭部分講述了包括DDS信號發(fā)生器的原理圖,材料選擇的比較以與重點模塊的介紹
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《人力資源工作匯報與團隊計劃》
- 堿的化學性質課程
- 二零二五版借款股權質押擔保協議合同書范例
- 二零二五設備登記抵押借款合同模板
- 跟崗實習協議合同
- 健康食品營養(yǎng)5
- 保健品加盟店合同書樣書二零二五年
- 中介服務居間合同范例
- 二零二五影視編劇人員聘用合同范例
- 眼科基礎知識培訓課件
- 機電安裝總進度計劃橫道圖
- 起重吊裝作業(yè)安全綜合驗收記錄表
- 常規(guī)檢泵設計培訓
- 園林綠化工程監(jiān)理實施細則(完整版)
- 夏季防溺水安全知識主題班會課件【愛生命防溺水】
- 夢想(英語演講稿)PPT幻燈片課件(PPT 12頁)
- 中國聯通員工績效管理實施計劃方案
- 法院刑事審判庭速裁庭廉政風險防控責任清單
- IEC60335-1(中文)
- 土方填筑碾壓試驗報告
- 排沙泵檢修工藝流程及驗收標準
評論
0/150
提交評論