基于FPGA的DDS信號(hào)發(fā)生器的研究論文_第1頁
基于FPGA的DDS信號(hào)發(fā)生器的研究論文_第2頁
基于FPGA的DDS信號(hào)發(fā)生器的研究論文_第3頁
基于FPGA的DDS信號(hào)發(fā)生器的研究論文_第4頁
基于FPGA的DDS信號(hào)發(fā)生器的研究論文_第5頁
已閱讀5頁,還剩24頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、畢業(yè)論文基于FPGA的DDS信號(hào)發(fā)生器的研究第1章緒論1.1 課題背景頻率檢測(cè)是電子測(cè)量領(lǐng)域的最基本也是最重要的測(cè)量之一,頻率信號(hào)抗干擾強(qiáng),易于傳輸,可以獲得較高的測(cè)量精度,所以頻率方法的研究越來越受到重視1。在頻率合成領(lǐng)域中,直接數(shù)字合成(Direct Digital Synthesizer,簡(jiǎn)稱:DDS)是近年來新的技術(shù), 它從相位的角度出發(fā)直接合成所需波形。它是由美國(guó)人J.Tierncy首先提出來的,是一種以數(shù)字信號(hào)處理理論為基礎(chǔ),從相位概念出發(fā)直接合成所需波形的一種新的全數(shù)字技術(shù)的頻率合成方法2。其主要優(yōu)點(diǎn)有:頻率改變速度快、頻率分辨率高、輸出相位連續(xù)、可編程、全數(shù)字化便于集成等,目前

2、使用最廣泛的一種DDS頻率合成方式是利用高速存儲(chǔ)器將正弦波的M個(gè)樣品存在其中,然后以查找的方式按均勻的速率把這些樣品輸入到高速數(shù)模轉(zhuǎn)換器,變成所設(shè)定頻率的正弦波信號(hào)3。近30年來,隨著超大規(guī)模集成、現(xiàn)場(chǎng)可編程門陣列(Field Programmable Gate Array,簡(jiǎn)稱:FPGA)、復(fù)雜可編程器件(Complex programmable Logic Device,簡(jiǎn)稱:CPLD)等技術(shù)的出現(xiàn)以與對(duì)DDS理論上的進(jìn)一步探討,使得DDS技術(shù)得到了飛速的發(fā)展。它已廣泛應(yīng)用于通訊、雷達(dá)、遙控測(cè)試、電子對(duì)抗、以與現(xiàn)代化的儀器儀表工業(yè)等許多領(lǐng)域。DDS的數(shù)字部分,即相位累加器和查表,被稱為數(shù)控

3、振蕩器(NCO)4。波形發(fā)生器即通常所說的信號(hào)發(fā)生器是一種常用的信號(hào)源,和示波器、電壓表、頻率計(jì)等儀器一樣是最普遍、最基本也是應(yīng)用最廣泛的的電子儀器之一,幾乎所有電參量的測(cè)量都要用到波形發(fā)生器。不論是在生產(chǎn)還是在科研與教學(xué)上,波形發(fā)生器都是電子工程師信號(hào)仿真試驗(yàn)的最佳工具。隨著現(xiàn)代電子技術(shù)的飛速發(fā)展,現(xiàn)代電子測(cè)量工作對(duì)波形發(fā)生器的性能提出了更高的要求,不僅要求能產(chǎn)生正弦波、方波等標(biāo)準(zhǔn)波形,還能根據(jù)需要產(chǎn)生任意波形,且操作方便,輸出波形質(zhì)量好,輸出頻率圍寬,輸出頻率穩(wěn)定度、準(zhǔn)確度與分辨率高,頻率轉(zhuǎn)換速度快且頻率轉(zhuǎn)換時(shí)輸出波形相位連續(xù)等。而傳統(tǒng)波形發(fā)生器采用專用芯片,成本高,控制方式不靈活,已經(jīng)越

4、來越不能滿足現(xiàn)代電子測(cè)量的需要,正逐步退出歷史舞臺(tái)??梢?,為適應(yīng)現(xiàn)代電子技術(shù)的不斷發(fā)展和市場(chǎng)要求,研究制作高性能的任意波形發(fā)生器十分有必要,而且意義重大。1.2 國(guó)外波形發(fā)生器發(fā)展現(xiàn)狀1.2.1波形發(fā)生器的發(fā)展現(xiàn)狀在70年代前,信號(hào)發(fā)生器主要有兩類:正弦波和脈沖波。這個(gè)時(shí)期的波形發(fā)生器多采用模擬電子技術(shù),而且模擬器件構(gòu)成的電路存在著尺寸大、價(jià)格貴、功耗大等缺點(diǎn),并且要產(chǎn)生較為復(fù)雜的信號(hào)波形,則電路結(jié)構(gòu)非常復(fù)雜。在70年代后,微處理器的出現(xiàn),可以利用處理器、A/D和D/A,硬件和軟件使波形發(fā)生器的功能擴(kuò)大,產(chǎn)生更加復(fù)雜的波形。這時(shí)期的波形發(fā)生器多以軟件為主,實(shí)質(zhì)是采用微處理器對(duì)DAC的程序控制,

5、就可以得到各種簡(jiǎn)單的波形。90年代末,出現(xiàn)幾種真正高性能、高價(jià)格的波形發(fā)生器、但是HP公司推出了型號(hào)為HP770S的信號(hào)模擬裝置系統(tǒng),它由HP8770A任意波形數(shù)字化和HP1776A波形發(fā)生軟件組成。HP8770A實(shí)際上也只能產(chǎn)生8種波形,而且價(jià)格昂貴。到了二十一世紀(jì),隨著集成電路技術(shù)的高速發(fā)展,出現(xiàn)了多種工作頻率可過GHz的DDS芯片,同時(shí)也推動(dòng)了波形發(fā)生器的發(fā)展,2003年,Agilent的產(chǎn)品33220A能夠產(chǎn)生17種波形,最高頻率可達(dá)到20M,2005年的產(chǎn)品N6030A能夠產(chǎn)生高達(dá)500MHz的頻率,采樣的頻率可達(dá)1.25GHz。最近幾年來,隨著集成電路技術(shù)和器件水平的提高,國(guó)外一些

6、公司先后推出各種各樣的DDS專用芯片,如Qualcomm公司的Q2230、Q2334,AD公司的AD9955、AD9850、AD9851、AD9852等5。1.2.2國(guó)外波形發(fā)生器產(chǎn)品比較頻率合成器被譽(yù)為電子系統(tǒng)的“心臟”,頻率源的發(fā)展直接關(guān)系到電子系統(tǒng)性能的發(fā)展。信號(hào)發(fā)生器是一種常用的信號(hào)源,廣泛應(yīng)用于通信、雷達(dá)、測(cè)控、電子對(duì)抗以與現(xiàn)代化儀器儀表等領(lǐng)域,是一種為電子測(cè)量工作提供符合嚴(yán)格技術(shù)要求的電信號(hào)設(shè)備,和示波器、電壓表、頻率計(jì)等儀器一樣是最普通、最基本也是應(yīng)用最廣泛的電子儀器之一,幾乎所有電參量的測(cè)量都要用到波形發(fā)生器6。早在1978年,由美國(guó)Wavetek公司和日本東亞電波工業(yè)公司公布

7、了最高取樣頻率為5MHz,可以形成256點(diǎn)(存儲(chǔ)長(zhǎng)度)波形數(shù)據(jù),垂直分辨率為8bit,主要用于振動(dòng)、醫(yī)療、材料等領(lǐng)域的第一代高性能信號(hào)源,經(jīng)過將近30年的發(fā)展,伴隨著電子元器件、電路、與生產(chǎn)設(shè)備的高速化、高集成化,波形發(fā)生器的性能有了飛速的提高。變得操作越來越簡(jiǎn)單而輸出波形的能力越來越強(qiáng)。波形操作方法的好壞,是由波形發(fā)生器控制軟件質(zhì)量保證的,編輯功能增加的越多,波形形成的操作性越好。目前我國(guó)已經(jīng)開始研制信號(hào)發(fā)生器,并獲得了可喜的成果,但總的來說,我國(guó)波形發(fā)生器還沒有形成真正的產(chǎn)業(yè),并且我國(guó)目前在波形發(fā)生器的的種類和性能都與國(guó)外同類產(chǎn)品存在較大的差距,因此加緊對(duì)這類產(chǎn)品的研制顯得迫在眉睫7。1.

8、2.3研究波形發(fā)生器的目的與意義波形發(fā)生器是信號(hào)源的一種,主要給被測(cè)電路提供所需要的己知信號(hào)(各種波形),然后用其它儀表測(cè)量感興趣的參數(shù)8。多功能波形發(fā)生器采用FPGA器件作為核心控制部件,精度高穩(wěn)定性好,得到波形平滑,特別是由于FPGA的高速度,能實(shí)現(xiàn)較高頻率的波形9。目前我國(guó)己經(jīng)開始研制波形發(fā)生器,并取得了可喜的成果。但總的來說,我國(guó)波形發(fā)生器還沒有形成真正的產(chǎn)業(yè)。就目前國(guó)的成熟產(chǎn)品來看,多為一些PC儀器插卡,獨(dú)立的儀器和VXI系統(tǒng)的模塊很少,并且我國(guó)目前在波形發(fā)生器的種類和性能都與國(guó)外同類產(chǎn)品存在較大的差距,因此加緊對(duì)這類產(chǎn)品的研制顯得迫在眉睫。1.3論文的主要工作與章節(jié)安排本文主要通過

9、分析DDS的原理,進(jìn)而得到DDS信號(hào)發(fā)生器的設(shè)計(jì)方案,然后通過選材等一系列設(shè)計(jì)來完成DDS信號(hào)發(fā)生器的研究。其中第二章主要介紹DDS的基本原理以與優(yōu)缺點(diǎn)。第三章則重點(diǎn)介紹了本次設(shè)計(jì)所采用的開發(fā)平臺(tái)。第四章是本問重點(diǎn)介紹的對(duì)象,里面主要包含了設(shè)計(jì)的具體思路包括系統(tǒng)的實(shí)現(xiàn)以與系統(tǒng)工作流程情況。第五章是要是對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析。第2章 DDS波形發(fā)生器的理論介紹2.1 DDS的基本原理與特點(diǎn)DDS即直接數(shù)字頻率合成技術(shù),是由美國(guó)學(xué)者J.Tiercy,M.Rader和B.Gold于1971年首次提出,是一種以數(shù)字信號(hào)處理理論為基礎(chǔ),從相位概念出發(fā)直接合成所需波形的一種新的全數(shù)字技術(shù)的頻率合成方法。從19

10、71年至今,DDS已從一個(gè)工程新事物逐漸發(fā)展成為一個(gè)重要的設(shè)計(jì)工具。與大家熟悉的直接式和間接式(PLL)頻率合成技術(shù)不同,DDS技術(shù)完全采用數(shù)字技術(shù)處理,屬于第三代頻率合成技術(shù)。DDS的主要優(yōu)點(diǎn)是它的輸出頻率、相位和幅度能夠在微控制器的控制下精確而快速的變換。DDS的應(yīng)用領(lǐng)域包括各類無線通信、有線通信、網(wǎng)絡(luò)通信,各類需要頻率信號(hào)的儀器、儀表、遙測(cè)、遙感設(shè)備、收音機(jī)和電視機(jī)等10。本節(jié)以正弦信號(hào)的產(chǎn)生為例,闡述DDS技術(shù)的基本原理。對(duì)于一個(gè)頻譜純凈的單頻正弦信號(hào)可以用下式來描述:(2-1)其相位為(2-2)顯然,該正弦信號(hào)相位和幅值均為連續(xù)變量。為了便于采用數(shù)字技術(shù),應(yīng)對(duì)連續(xù)的正弦信號(hào)進(jìn)行離散化

11、處理,即把相位和幅值均轉(zhuǎn)化為數(shù)字量。用頻率為fclk的基準(zhǔn)時(shí)鐘對(duì)正弦信號(hào)進(jìn)行抽樣,這樣,在一個(gè)參考時(shí)鐘周期T,相位的變化量為(2-3)由上式得到的為模擬量,為了將其轉(zhuǎn)化為數(shù)字量,將2切割成2N等份作為最小量化單位,從而得到的數(shù)字量M為:(2-4)將式(2-3)帶入(2-4)得(2-5)式(2-5)表明,在參考時(shí)鐘頻fclk確定的情況下,輸出正弦信號(hào)的頻率fout決定于M的大小,并且與M呈線性關(guān)系。通過改變M的大小,就可以改變輸出正弦信號(hào)的頻率,因此,M也稱頻率控制字。當(dāng)參考時(shí)鐘頻率取2N時(shí),正弦信號(hào)的頻率就等于頻率控制字M。當(dāng)M取1時(shí),可以得到輸出信號(hào)的最小頻率步進(jìn)為(2-6)由此可知,只要N

12、取值足夠大,就可以得到非常小的頻率步進(jìn)值。將相位轉(zhuǎn)化為數(shù)字量以后,式(2-1)就可以描述為如下形式:(2-7)表示本周期相位值與前一個(gè)基準(zhǔn)時(shí)鐘周期的相位值的累加。從式(2-7)可以看出,只要用頻率控制字M進(jìn)行簡(jiǎn)單的累加運(yùn)算,就可以得到正弦函數(shù)的當(dāng)前相位值。而正弦信號(hào)的幅值就是正弦信號(hào)的當(dāng)前相位值的函數(shù)。由于正弦函數(shù)為非線性函數(shù),很難實(shí)時(shí)計(jì)算,一般通過查表的方法來快速獲得函數(shù)值。有了上述理論分析,我們就可以得到一種用數(shù)字的方法獲得正弦信號(hào)的方法:先構(gòu)建一個(gè)N為的相位累加器,在每一個(gè)時(shí)鐘周期,將相位累加器中的值與頻率控制字相加,得到當(dāng)前的相位值。將當(dāng)前的相位值作為ROM的地址,讀出ROM中的正弦波

13、數(shù)據(jù),再通過D/A轉(zhuǎn)化成模擬信號(hào)。頻率控制字越大,相位累加器的輸出變化越快,ROM的地址變化也越快,輸出的正弦信號(hào)頻率越高。需要注意的是,受ROM容量的限制,ROM地址位數(shù)一般小于相位累加器的位數(shù),因此,把相位累加器輸出的高位作為ROM的地址。只需要改變頻率控制字,就可以改變輸出信號(hào)的頻率,因此,采用DDS技術(shù),對(duì)輸出信號(hào)頻率的控制十分簡(jiǎn)單。DDS正弦信號(hào)發(fā)生器的基本原理框圖如圖2-1-1所示。圖2-1 DDS正弦信號(hào)發(fā)生器基本原理框圖2.2 DDS信號(hào)的優(yōu)點(diǎn)與缺點(diǎn)2.2.1 DDS的優(yōu)點(diǎn)(l)輸出頻率相對(duì)帶寬較寬輸出頻率帶寬為50%fs(理論值),實(shí)際輸出帶寬仍可達(dá)到40%fs。(2)頻率轉(zhuǎn)

14、換時(shí)間短頻率時(shí)間等于頻率控制字的傳輸時(shí)間,也就是一個(gè)時(shí)鐘周期的時(shí)間。時(shí)鐘頻率越高,轉(zhuǎn)換時(shí)間越短。DDS的轉(zhuǎn)換時(shí)間可達(dá)納微秒級(jí)數(shù)量級(jí),比使用其他的頻率合成方法都要短數(shù)個(gè)數(shù)量級(jí)。(3)頻率分辨率高若時(shí)鐘fs的頻率不變,DDS的頻率分辨率就是由相位累加器的位數(shù)N決定。只要增加相位累加器的位數(shù)N即可獲得任意小的頻率分辨率。目前,大多數(shù)DDS的分辨率在1Hz數(shù)量級(jí),許多小于1mHz甚至更小。(4)相位變化連續(xù)改變DDS輸出頻率,實(shí)際上改變的是每一個(gè)時(shí)鐘周期的相位增量,相位函數(shù)的曲線是連續(xù)的,只是在改變頻率的瞬間其頻率發(fā)生了突變,因而保持了信號(hào)相位的連續(xù)。(5)輸出波形的靈活性只要在DDS部加上相應(yīng)控制如

15、調(diào)頻控制FM,調(diào)相控制PM和調(diào)幅控制AM即可以方便靈活實(shí)現(xiàn)調(diào)頻,調(diào)頻和調(diào)幅等功能,產(chǎn)生FSK,PSK,ASK,MSK等信號(hào)。另外,只要在DDS的波形存儲(chǔ)器存放不同波形數(shù)據(jù),就可以實(shí)現(xiàn)各種波形的輸出,如三角波,鋸齒波和矩形波甚至是任意波形。當(dāng)DDS的波形存儲(chǔ)器分別存放正弦和余弦函數(shù)表時(shí),即可得到正交的兩路輸出。2.2.2 DDS的缺點(diǎn)(1)輸出帶寬圍有限由于DDS部DAC和波形存儲(chǔ)器(ROM)的工作速度有限,使得DDS輸出的最高頻率有限。目前市場(chǎng)上采用CMOS,TTL,EcL,工藝制作的DDS芯片,工作頻率一般在幾十MHz至400MHz左右。采用GaAS工藝的DDS芯片工作頻率可達(dá)2GHz以上。

16、(2)輸出散雜大由于DDS采用全數(shù)字結(jié)構(gòu),不可避免地引入了散雜。其來源主要由三個(gè):相位累加器相位舍入誤差造成的散雜;幅度量化誤差造成的散雜和 DAC非理想特性造成的散雜。2.3 本章小結(jié)本章主要介紹了DDS的原理。其中第一部分以正弦波為例子,對(duì)DDS原理在整個(gè)設(shè)中的重要意義進(jìn)行講解。后一部分則是分析DDS的優(yōu)點(diǎn)以與缺點(diǎn)。第3章開發(fā)平臺(tái)介紹3.1 硬件平臺(tái)FPGA介紹3.1.1 FPGA簡(jiǎn)介自1985年Xilinx公司推出有史以來第一顆現(xiàn)場(chǎng)可程序化邏輯組件至今,已經(jīng)歷了超過二十幾年的發(fā)展歷史。在發(fā)展過程中,以FPGA為代表的數(shù)字系統(tǒng)現(xiàn)場(chǎng)集成取得了驚人的發(fā)展:現(xiàn)場(chǎng)可程序化邏輯組件從最初的1200個(gè)

17、可利用邏輯閘,發(fā)展到90年代的25萬個(gè)可利用邏輯閘。其后不到數(shù)年,著名FPGA廠商,包括Altera公司、Xilinx等公司,又陸續(xù)推出了建數(shù)百萬邏輯閘以上的FPGA芯片,將現(xiàn)場(chǎng)可程序化組件的整合度提高到一個(gè)新的水平。如今,各廠商不再盲目追加邏輯閘的數(shù)量,轉(zhuǎn)而努力消除過去FPGA弱勢(shì)之處,以強(qiáng)化過的運(yùn)算效能、更為節(jié)省的功耗,向各種運(yùn)算領(lǐng)域撲天蓋地而來??v觀現(xiàn)場(chǎng)可程序化邏輯組件的發(fā)展歷史,其之所以具有巨大的市場(chǎng)吸引力,在于FPGA不僅可以解決電子系統(tǒng)小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價(jià)格不斷降低,促使FPGA在某些情況下得以取代ASIC的市場(chǎng),特別是對(duì)小量、多

18、樣,短開發(fā)期的產(chǎn)品需求,使FPGA成為首選。3.1.2 FPGA工作原理FPGA采用了邏輯單元陣列LCA(Logic Cell Array)這樣一個(gè)新概念,部包括可配置邏輯模塊CLB(Configurable Logic Block)、輸出輸入模塊IOB(Input Output Block)和部連線(Interconnect)三個(gè)部分。它的基本特點(diǎn)主要有:采用FPGA設(shè)計(jì)ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。 FPGA可做其它全定制或半定制ASIC電路的中試樣片。 FPGA部有豐富的觸發(fā)器和I/O引腳。FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最低、風(fēng)險(xiǎn)最小的器件之一。F

19、PGA采用高速CHMOS工藝,功耗很低,可以與CMOS、TTL電平兼容??v觀現(xiàn)場(chǎng)可程序化邏輯組件的發(fā)展歷史,其之所以具有巨大的市場(chǎng)吸引力,在于FPGA不僅可以解決電子系統(tǒng)小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價(jià)格不斷降低,促使FPGA在某些情況下得以取代ASIC的市場(chǎng),特別是對(duì)小量、多樣,短開發(fā)期的產(chǎn)品需求,使FPGA成為首選11。FPGA是由存放在片RAM中的程序來設(shè)置其工作狀態(tài)的,因此,工作時(shí)需要對(duì)片的RAM進(jìn)行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。加電時(shí),F(xiàn)PGA芯片將EPROM中數(shù)據(jù)讀入片編程RAM中,配置完成后,F(xiàn)PGA進(jìn)入工作狀態(tài)。掉

20、電后,F(xiàn)PGA恢復(fù)成白片,部邏輯關(guān)系消失,因此,F(xiàn)PGA能夠反復(fù)使用。FPGA的編程無須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當(dāng)需要修改FPGA功能時(shí),只需換一片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,F(xiàn)PGA的使用非常靈活12。3.2 軟件平臺(tái)Quartus II介紹圖3-2 Quartus II軟件界面如圖3-2所示為Quartus II軟件的基本界面,Quartus II軟件是Altera的綜合開發(fā)工具,它集成了Altera的FPGA/CPLD開發(fā)流程中所涉與的所有工具和第三方軟件接口。Quartus II幾乎支持A

21、ltera現(xiàn)行的所有FPGA,在該集成開發(fā)環(huán)境中可以實(shí)現(xiàn)電路的設(shè)計(jì)、綜合、適配到最后形成下載文件以與在線配置FPGA,還能對(duì)電路進(jìn)行功能仿真,對(duì)適配后形成的最終電路進(jìn)行時(shí)序仿真。也就是說只要有了Quartus II這個(gè)集成開發(fā)環(huán)境,就基本上可以完成Altera公司FPGA開發(fā)過程中的所有工作。另外,為了方便設(shè)計(jì),Quartus II還提供了免費(fèi)LPM模塊供用戶調(diào)用,如計(jì)數(shù)器、存儲(chǔ)器、加法器、乘法器等。除了這些免費(fèi)的LPM模塊外,Altera公司還開發(fā)了有償IP核提供給有需要的用戶使用。這些LPM模塊和IP核都大大簡(jiǎn)化了設(shè)計(jì)過程,縮短了開發(fā)周期。Quartus II支持多種輸入方式,常用的有:(

22、1)原理圖輸入:這種方法最直觀,適合頂層電路的設(shè)計(jì);(2)硬件描述語言輸入:包括AHDL、VHDL與Verilog HDL輸入。采用硬件描述語言的優(yōu)點(diǎn)易于使用自頂向下的設(shè)計(jì)方法、易于模塊規(guī)劃和復(fù)用、移植性強(qiáng)、通用性好。(3)網(wǎng)表輸入:對(duì)于在其他軟件系統(tǒng)上設(shè)計(jì)的電路,可以采用這種設(shè)計(jì)方法,而不必重新輸入,Quartus II支持的網(wǎng)表文件包括EDIF、VHDL與Verilog等格式。這種方法的優(yōu)點(diǎn)是可以充分利用現(xiàn)有的設(shè)計(jì)資源。3.3 本章小結(jié)本章主要對(duì)本次設(shè)計(jì)所選擇的開發(fā)平臺(tái)進(jìn)行簡(jiǎn)單介紹。FPGA因?yàn)槠洳粌H可以解決電子系統(tǒng)小型化、低功耗、高可靠性等問題,而且其開發(fā)周期短、開發(fā)軟件投入少、芯片價(jià)格

23、不斷降低,所以成為首選。軟件部分主要是對(duì)Quartus II進(jìn)行簡(jiǎn)單的介紹。第4章系統(tǒng)實(shí)現(xiàn)4.1 設(shè)計(jì)要求采用DDS技術(shù)設(shè)計(jì)一個(gè)信號(hào)發(fā)生器,其原理框圖如圖4-1所示:圖4-1 DDS信號(hào)發(fā)生器原理框圖設(shè)計(jì)要求如下:1、具有產(chǎn)生正弦波、方波、三角波三種周期性波形;2、輸出信號(hào)頻率圍1Hz5MHz,重復(fù)頻率可調(diào),頻率步進(jìn)間隔小于等于1Hz;3、輸出信號(hào)幅值圍0.510V(峰-峰值),信號(hào)幅值和直流偏移量可數(shù)控調(diào)節(jié);4、具有穩(wěn)幅輸出功能,當(dāng)負(fù)載變化時(shí),輸出電壓幅度變化不大于±3%(負(fù)載電阻變化圍:50正無窮);5、具有顯示輸出波形類型、重復(fù)頻率等功能。4.2 系統(tǒng)方案論證與比較4.2.1產(chǎn)

24、生DDS信號(hào)波形方案的選擇目前主流的DDS信號(hào)發(fā)生器方案有兩種:方案一、采用專用DDS集成芯片實(shí)現(xiàn)的信號(hào)發(fā)生器;方案二、采用單片機(jī)+FPGA實(shí)現(xiàn)的DDS信號(hào)發(fā)生器。比較這兩種方案,專用DDS芯片部的波形數(shù)據(jù)存放在ROM型存儲(chǔ)器中,波形數(shù)據(jù)無法修改故而只能產(chǎn)生固定波形的信號(hào),但系統(tǒng)比較容易實(shí)現(xiàn)。而采用單片機(jī)+FPGA實(shí)現(xiàn)的DDS信號(hào)發(fā)生器則是將波形數(shù)據(jù)存儲(chǔ)器改為FPGA上的RAM行存儲(chǔ)器,波形信號(hào)能實(shí)時(shí)改變,在利用單片機(jī)系統(tǒng)進(jìn)行控制和處理后,能實(shí)現(xiàn)DDS任意波形發(fā)生器,功能更加完善,更新更加方便。故本設(shè)計(jì)選用方案二。4.2.2單片機(jī)處理器比較選擇方案一:采用AT89C51單片機(jī)處理電路,其擁有并

25、行I/O口32個(gè),對(duì)于實(shí)際應(yīng)用來說遠(yuǎn)遠(yuǎn)不夠,且不具備自帶AD、DA,使得電路結(jié)構(gòu)復(fù)雜。方案二:C8051F360單片機(jī)部資源非常豐富,是目前功能最全、速度最快的51核SoC單片機(jī)之一,包括告訴8051微處理器核,擴(kuò)充終端處理系統(tǒng),256字節(jié)部RAM,1024字節(jié)XRAM和32KB的閃速存儲(chǔ)器,多達(dá)39個(gè)I/O引腳,兩個(gè)部振蕩器和片調(diào)試電路,能很好的完成本系統(tǒng)所需的單線程,鍵盤功能分支程序控制。在本設(shè)計(jì)中選用方案二。4.3 系統(tǒng)理論分析與設(shè)計(jì)4.3.1總體設(shè)計(jì)本設(shè)計(jì)采用單片機(jī)+FPGA實(shí)現(xiàn)的DDS信號(hào)發(fā)生器,整個(gè)DDS信號(hào)發(fā)生器由單片機(jī)子系統(tǒng)、FPGA子系統(tǒng)、模擬子系統(tǒng)三部分組成,系統(tǒng)原理框圖如

26、下圖4-2所示:圖4-2系統(tǒng)原理框圖4.3.2主要技術(shù)參數(shù)的分析與確定DDS信號(hào)發(fā)生器的技術(shù)指標(biāo)取決于DDS系統(tǒng)的時(shí)鐘頻率、相位累加器的位數(shù)、波形數(shù)據(jù)表的長(zhǎng)度等參數(shù),下面對(duì)這些參數(shù)進(jìn)行討論,以選擇適合的模擬電路元件以實(shí)現(xiàn)高質(zhì)量的DDS信號(hào)。1、輸出帶寬當(dāng)頻率控制字M=1時(shí),輸出信號(hào)的最低頻率為(4-1)式中,為參考時(shí)鐘頻率,N為相位累加器的位數(shù)。當(dāng)N取很大值時(shí),最低輸出頻率可以認(rèn)為達(dá)到DDS最低頻率的零頻。DDS的最高輸出頻率由參考時(shí)鐘周期和一個(gè)周期波形采樣點(diǎn)數(shù)決定,若采樣點(diǎn)數(shù)為X,則最高輸出頻率為(4-2)2、頻率分辨率頻率分辨率由下式?jīng)Q定:(4-3)在此式中,當(dāng)N取值足夠大時(shí),DDS信號(hào)可

27、以達(dá)到很高的信號(hào)分辨率。3、 DDS信號(hào)的質(zhì)量由于DDS信號(hào)發(fā)生器采用全數(shù)字設(shè)計(jì),不可避免在采樣時(shí)會(huì)帶來D/A產(chǎn)生的幅度量化噪聲和相位累加運(yùn)算截?cái)喈a(chǎn)生的相位噪聲。改善DDS信號(hào)質(zhì)量的主要方法有:增加波形存儲(chǔ)器和D/A的字寬;增加每個(gè)周期數(shù)據(jù)的樣本數(shù),提高外部參考時(shí)鐘頻率和通過低通濾波器來改善輸出信號(hào)質(zhì)量。綜合上述討論和對(duì)器件成本以與硬件系統(tǒng)復(fù)雜度的考慮,DDS子系統(tǒng)的參數(shù)確定如下:1 參考時(shí)鐘頻率:40MHz;2 頻率控制字的位寬:32位;3 相位累加器的位寬:32位;4 波形存儲(chǔ)器的地址位寬:8位;5 波形存儲(chǔ)器的數(shù)據(jù)位寬:8位。4.3.3數(shù)字部分電路設(shè)計(jì)該DDS信號(hào)發(fā)生器的數(shù)字部分包括單片

28、機(jī)子系統(tǒng)、FPGA、高速D/A轉(zhuǎn)換器、人機(jī)接口(128×64點(diǎn)陣式LCD模塊和4×4矩陣式鍵盤)。單片機(jī)子系統(tǒng)需要完成鍵盤輸入、液晶顯示、向FPGA傳送數(shù)據(jù)、輸出信號(hào)幅值和直流偏移量的數(shù)字控制等功能。本設(shè)計(jì)中DDS信號(hào)發(fā)生器的鍵盤主要用于選擇信號(hào)波形、輸入頻率值、控制輸出信號(hào)幅值和直流偏移量。09鍵用于輸入頻率值,其中03鍵還用于選擇輸出波形;Hz鍵用于輸入給定頻率值的確認(rèn)鍵;波形選擇鍵用于選擇波形;A+鍵用于增加信號(hào)幅值,A-鍵用于減少信號(hào)幅值,D+鍵用于增加直流偏移量,D-鍵用于減少直流偏移量。單片機(jī)控制程序包括主程序和鍵盤終端服務(wù)程序。主程序完成初始化和鍵值輸入處理功

29、能,鍵盤終端服務(wù)程序只完成鍵值讀入功能。鍵盤終端中斷程序完成鍵盤中斷服務(wù)。FPGA部的DDS子系統(tǒng)包括地址譯碼電路、LCD模塊接口、4×4鍵盤接口和DDS子系統(tǒng)。其中地址譯碼器用來產(chǎn)生外部數(shù)據(jù)存儲(chǔ)器和I/O接口的片選信號(hào),LCD模塊LCD12864與單片機(jī)之間采用并行接口將單片機(jī)處理后的數(shù)據(jù)顯示出來,4×4鍵盤接口電路包括分頻電路、鍵盤掃描電路、行值編碼器和消抖電路實(shí)現(xiàn)按鍵轉(zhuǎn)換成二進(jìn)制編碼、鍵值數(shù)據(jù)端口與單片機(jī)總線接口連通、鍵值有效時(shí)的中斷信號(hào)和消抖功能,DDS子系統(tǒng)由頻率字寄存器、相位累加器、波形數(shù)據(jù)存儲(chǔ)器等幾部分組成以根據(jù)輸入控制要求產(chǎn)生多種波形信號(hào)。高速D/A轉(zhuǎn)換器采

30、用AD公司的高速D/A轉(zhuǎn)換器AD9708,轉(zhuǎn)換速率為40MHz,含有一個(gè)輸入數(shù)據(jù)鎖存器和譯碼邏輯電路,用來完成波形重建功能。4.3.4模擬部分電路設(shè)計(jì)該DDS信號(hào)發(fā)生器的模擬部分包括濾波電路、信號(hào)放大器電路和驅(qū)動(dòng)電路。模擬電路將承擔(dān)輸出信號(hào)幅值、直流偏移量、驅(qū)動(dòng)能力等指標(biāo)的實(shí)現(xiàn)。濾波電路針對(duì)高速D/A輸出信號(hào)進(jìn)行濾波,將輸出信號(hào)中高頻分量通過低通濾波器濾去,得到相對(duì)純凈的波形信號(hào)。根據(jù)DDS信號(hào)發(fā)生器的設(shè)計(jì)要求,輸出正弦信號(hào)的最高頻率為5MHz,故本DDS信號(hào)發(fā)生器的濾波電路采用截至頻率為5MHz的單片機(jī)集成低通濾波器LT6600-5。另在LT6600-5的外部電路中需外接阻值較大的兩個(gè)電阻,

31、以防治濾波器部差分電路增益過大引起的輸出波形飽和失真。信號(hào)放大電路由基本差分放大電路、反相放大器和數(shù)字電位器組成??紤]到差分輸出信號(hào)仍可能含有少量直流分量,在反相放大器后設(shè)計(jì)了一個(gè)直流偏移量調(diào)節(jié)電路,該直流偏移量調(diào)節(jié)電路由數(shù)字電位器實(shí)現(xiàn)。驅(qū)動(dòng)電路將為DDS信號(hào)發(fā)生器提供穩(wěn)幅輸出能力,即當(dāng)負(fù)載電阻從50變化時(shí),輸出電壓幅度變化不大與±3%。實(shí)際設(shè)計(jì)中我們采用了TI公司的THS3092高速集成運(yùn)算放大器。4.4 FPGA部DDS子系統(tǒng)的設(shè)計(jì)FPGA部邏輯分為四個(gè)部分:地址譯碼電路、4X4鍵盤接口、DDS子系統(tǒng)、LCD模塊接口。下面主要介紹DDS子系統(tǒng)的設(shè)計(jì)。根據(jù)DDS原理圖可知,DDS子

32、系統(tǒng)由頻率字寄存器、相位累加器、波形數(shù)據(jù)存儲(chǔ)器幾個(gè)部分組成。根據(jù)設(shè)計(jì)題目要求,DDS信號(hào)發(fā)生器應(yīng)能產(chǎn)生多種波形,這就要求單片機(jī)可以向波形數(shù)據(jù)存儲(chǔ)器傳送不同的波形數(shù)據(jù),顯然,波形數(shù)據(jù)存儲(chǔ)器采用雙口RAM是最合適的。雙口RAM中的一個(gè)端口與單片機(jī)總線相連,接受來自單片機(jī)的256字節(jié)波形數(shù)據(jù),另一個(gè)端口與D/A轉(zhuǎn)換器相連。根據(jù)上述思路,可以得到圖4-3所示的DDS子系統(tǒng)頂層原理圖。圖中DLATCH8為8為地址鎖存器、frew為頻率字寄存器、PHASE-ACC為相位累加器、LMP-RAM-DP為雙口RAM:圖4-3 DDS子系統(tǒng)頂層原理圖(1) 波形數(shù)據(jù)存儲(chǔ)器波形數(shù)據(jù)存儲(chǔ)器的功能是:一方面,單片機(jī)能夠

33、通過并行總線將波形數(shù)據(jù)寫入存儲(chǔ)器,另一方面,在相位累加器輸出地址控制下將波形數(shù)據(jù)依次送給高速D/A。在圖4-3所示的頂層原理圖中,波形數(shù)據(jù)存儲(chǔ)器采用了雙端口RAM,一個(gè)端口與單片機(jī)并行總線相連,另一個(gè)端口與相位累加器和高速D/A相連。圖4-3中的雙口屬于簡(jiǎn)單的雙端口RAM,有一個(gè)獨(dú)立的寫端口和一個(gè)獨(dú)立的讀端口。對(duì)于寫端口來說,其信號(hào)來自單片機(jī)的并行總線。當(dāng)單片機(jī)執(zhí)行外部數(shù)據(jù)存儲(chǔ)器寫指令時(shí),并行總線上的數(shù)據(jù),地址,寫信號(hào)通過同步時(shí)鐘CLK1的上升沿送入雙口RAM的存儲(chǔ)體,完成將波形數(shù)據(jù)寫入指定的存儲(chǔ)單元。對(duì)讀端口來說,其地址信號(hào)來自相位累加器輸出的高8位,讀使能信號(hào)直接接高電平,數(shù)據(jù)輸入送高速D

34、/A轉(zhuǎn)換器。讀端口的輸入輸出信號(hào)也是與同步時(shí)鐘CLK1同步。假設(shè)忽略器件延時(shí),CLK0為DDS子系統(tǒng)的參考時(shí)鐘,雙口RAM同步時(shí)鐘CLK1由CLK0反向得到,高速D/A時(shí)鐘信號(hào)DACLK與CLK一樣。相位累加器的輸出地址在CLK0的上升沿時(shí)刻發(fā)生改變,由于CLK1與CLK0反相,保證在CLK1上升沿時(shí)刻,Addr31.24于穩(wěn)定狀態(tài)。雙口RAM的輸出數(shù)據(jù)DACD7.0在CLK1上升沿時(shí)刻發(fā)生改變,由于高速D/A的時(shí)鐘信號(hào)DACLK與CLK1反相,保證了DACLK上升沿時(shí)刻,DAC7.0處于穩(wěn)定狀態(tài)。(2)地址鎖存模塊C8051F360單片機(jī)P1口分時(shí)送出低8位地址和8位數(shù)據(jù)信息。通過FPGA部

35、設(shè)計(jì)一個(gè)8位鎖存器即可獲取低8位地址。地址鎖存器的VHDL程序?yàn)椋簆ort(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)相位累加器模塊的設(shè)計(jì)相位累加器是DDS子系統(tǒng)的核心,由32位加法器與32位累加寄存器級(jí)聯(lián)構(gòu)成,對(duì)代表頻率大小的

36、頻率控制字進(jìn)行累加運(yùn)算,輸出波形存儲(chǔ)器的地址。相位累加器的設(shè)計(jì)可以直接采用LPM宏單元庫中的LMP_ADD_SUB宏單元,也可以用VHDL語言自行設(shè)計(jì)。以下就是采用VHDL語言實(shí)現(xiàn)的相位累加器源程序: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; -系統(tǒng)時(shí)鐘 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); -截?cái)噍敵鰁nd one;語句acc

38、<=acc+freqin實(shí)現(xiàn)頻率字累加功能,并且因?yàn)橐谙乱粫r(shí)鐘到來時(shí)才能進(jìn)行下一次累加,所以也同時(shí)實(shí)現(xiàn)了累加寄存器功能。最后語句romaddr<=acc(31 downto 24)實(shí)現(xiàn)相位截?cái)嗟墓δ埽厝×?2位相位地址碼的高8位。(4)頻率字寄存器模塊由于DDS的頻率字采用32位字寬,因此,頻率字寄存器由4個(gè)8位寄存器構(gòu)成。講地址譯碼器產(chǎn)生的片選信號(hào)CS2與地址信號(hào)A1、A0配合進(jìn)行再次譯碼就可以得到4個(gè)寄存器片選信號(hào)CS20CS23。為了保證數(shù)據(jù)的可靠傳送,片選信號(hào)CS20CS23必須與寫信號(hào)相或后送入寄存器時(shí)鐘輸入端。單片機(jī)通過4次寫操作將32位頻率字送到頻率字寄存器。頻率

39、字寄存器模塊的原理圖如圖4-4所示:圖4-4 頻率字接受模塊頂層圖4.5 單片機(jī)控制軟件設(shè)計(jì)DDS信號(hào)發(fā)生器采用FPGA等硬件來完成高速波形的產(chǎn)生任務(wù),其工作不需要單片機(jī)過多的干預(yù)。單片機(jī)子系統(tǒng)只需完成鍵盤輸入、液晶顯示、向FPGA傳送數(shù)據(jù)、輸出信號(hào)的幅值和直流偏移量的數(shù)字控制等功能。從軟件的總體結(jié)構(gòu)來看,單片機(jī)控制軟件是一種單線程、鍵盤功能的分支程序。4.5.1人機(jī)接口功能定義根據(jù)DDS信號(hào)發(fā)生器的功能設(shè)計(jì)了如圖4-5所示的3種LCD顯示頁面。頁面1為初始化顯示頁面,頁面2為波形選擇頁面,在給定頻率輸入頁面中,7個(gè)小方框所顯示的位置用于顯示輸入給定的頻率值。給定的頻率圍為0000000999

40、9999Hz。為了操作方便,允許輸入給定頻率的位數(shù)在17位之間,用Hz鍵結(jié)束。對(duì)于DDS信號(hào)發(fā)生器來說,鍵盤主要用于選擇信號(hào)波形、輸入頻率值、控制輸出信號(hào)的幅值和直流偏移量。由于按鍵數(shù)量比較多,鍵盤采用4X4矩陣式鍵盤。鍵盤各按鍵的定義如圖4-6所示。0鍵9鍵用于輸入頻率,期中0鍵3鍵還用于選擇輸出波形;Hz鍵用于輸入給定頻率的確認(rèn)鍵;波形選擇鍵用于選擇波形;A+鍵用于增加信號(hào)幅值,A-鍵用于減少信號(hào)幅值,D+鍵用于增加直流偏移量,D-鍵用于減少直流偏移量。頁面1 頁面2 頁面3圖4-5 頁面1頁面3示意圖圖4-6 DDS信號(hào)發(fā)生器鍵盤定義4.5.2主程序DDS信號(hào)發(fā)生器的控制程序可分為主程序

41、和鍵盤中斷服務(wù)程序兩部分。在確定主程序和鍵盤中斷服務(wù)程序的功能時(shí)有兩種方案:一種方案是主程序只完成初始化,將鍵盤讀入和處理全部由鍵盤中斷服務(wù)程序完成;另一種方案是主程序完成初始化和鍵值處理功能,而鍵盤中斷服務(wù)程序只完成鍵值讀入。由于鍵值處理程序設(shè)計(jì)數(shù)值運(yùn)算、LCD模塊的顯示,將這些耗時(shí)的鍵值處理程序放入中斷服務(wù)程序不符合程序設(shè)計(jì)的一般原則,因此,選用第二種方案。主程序首先完成堆棧指針設(shè)置,C8051F360部資源初始化,LCD模塊初始化。初始化完成以后就不斷檢測(cè)有無按鍵鍵入,當(dāng)有按鍵鍵入時(shí),根據(jù)鍵值執(zhí)行相應(yīng)的功能。由于02鍵不但用于輸入給定頻率,而且用來選擇輸出波形。為了區(qū)分0鍵2鍵的不同功能

42、,在主程序中定義了兩種工作模式:波形選擇模式和頻率輸入模式。在波形選擇模式下,02鍵用于選擇輸出波形。當(dāng)0鍵有效時(shí),選擇正弦波,單片機(jī)將256個(gè)字節(jié)正弦波波形數(shù)據(jù)發(fā)送到FPGA的雙口RAM中;當(dāng)1鍵有效時(shí),選擇方波,單片機(jī)將256個(gè)方波波形數(shù)據(jù)發(fā)送到FPGA中的雙口RAM中;當(dāng)2鍵有顯示,選擇三角波,單片機(jī)將256個(gè)字節(jié)三角波數(shù)據(jù)發(fā)送到FPGA的雙口RAM中。在頻率輸入模式下,0鍵到9鍵用于輸入給定的頻率值。定義了以上兩種工作模式以后,在主程序中分別設(shè)置一個(gè)波形選擇模式標(biāo)志和一個(gè)頻率輸入模式標(biāo)志位。主程序初始化時(shí),將波形選擇模式和頻率輸入模式標(biāo)志位均清零。當(dāng)波形選擇鍵有效時(shí),波形選擇模式標(biāo)志位

43、置1,主程序進(jìn)入波形選擇模式;在波形選擇模式下,按0鍵2鍵有效,頻率輸入模式標(biāo)志位置1,主程序進(jìn)入頻率輸入模式。由于輸入給定頻率的位數(shù)允許在17位變化,程序設(shè)計(jì)師通過Hz鍵來結(jié)束給定頻率的輸入,因此Hz鍵不但用來顯示頻率的單位,也能起到確認(rèn)鍵的功能。當(dāng)Hz鍵有效時(shí),程序?qū)⑤斎氲?7位給定頻率值轉(zhuǎn)化為4字節(jié)頻率控制字,然后發(fā)送到FPGA的頻率控制字接收模塊。由于鍵盤輸入的給定頻率值為非壓縮型BCD碼,應(yīng)先將其轉(zhuǎn)化為二進(jìn)制數(shù),再根據(jù)公式(2-5)將給定頻率值轉(zhuǎn)化成為4字節(jié)的頻率控制字。當(dāng)相位累加器字寬N取32,參考時(shí)鐘頻率fclk取40MHz時(shí),頻率控制字可以由以下公式計(jì)算得到:(4-4)式子中fout為由二進(jìn)制數(shù)表示的給定頻率,乘上系數(shù)107.374,就可以得到4字節(jié)的頻率控制字。單片機(jī)系統(tǒng)主程序見附件。主程序流程圖如圖4-7所示。圖4-7 系統(tǒng)主程序流程圖4.6 本章小結(jié)本章主要介紹了DDS信號(hào)發(fā)生器的實(shí)現(xiàn)過程,開頭部分講述了包括DDS信號(hào)發(fā)生器的原理圖,材料選擇的比較以與重點(diǎn)模塊的介紹

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論