版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、PAGE PAGE 30基于FPGA的DDS正弦波信號源設計內容摘要:頻率合成技術在現(xiàn)代電子技術中具有重要的地位。在通信、雷達和導航等設備中,它可以作為干擾信號發(fā)生器;在測試設備中,可作為標準信號源,因此頻率合成器被人們稱為許多電子系統(tǒng)的“心臟”。直接數(shù)字頻率合成(DDSDigital Direct Frequency Synthesis)技術是一種全新的頻率合成方法,是頻率合成技術的一次革命。本文主要分析了DDS的基本原理及其輸出頻譜特點,并采用VHDL語言在FPGA上實現(xiàn)。對于DDS的輸出頻譜,一個較大的缺點是:輸出雜散較大。針對這一缺點本文使用了兩個方法加以解決。首先是壓縮ROM查找表,
2、在相同ROM容量的情況下,壓縮后相當于把512點查找表擴展為2048點,過采樣的引入提高了DDS輸出譜的純度。其次,采用了相位隨機抖動技術,引入了M序列作為DDS采樣輸出的相位隨機抖動,這個方法把原來的均勻查表抽樣變成為偽隨機非均勻抽樣,使得DDS輸出譜的雜散分量白化,同樣使輸出頻譜純度得到提高。本文最后用頻譜分析儀做了相關實驗測試,在實驗上驗證了設計思想。關鍵詞:DDS FPGA VHDL M序列 頻譜The realization of DDS with VHDL and its high pure spectrum research Abstract;The frequency synt
3、hesis technology has the important status in the modern electronic technology. In equipment such as correspondence, radar and navigation, it may work as the unwanted signal generator; In the test facility, may work as the standard signal source, therefore the frequency synthesizer is called by the p
4、eople as the heart of many electronic systems .DDSDigital Direct Frequency Synthesis technology is one brand-new frequency synthetic method, is a frequency synthesis technology revolution. This paper analyzes the basic principle of DDS and its output frequency spectrum characteristic, and realizes i
5、t with VHDL language on FPGA. In regard to the output frequency spectrum of DDS, a shortcoming is: The output spurious is bigger. In view of this shortcoming this article uses two methods to solve. First compress the ROM search table, in the same capacity of ROM, it is equal to expand 512 searches t
6、ables to 2,048 after the compression, the introduction of over sampling enhance the spectrum purity of DDS output. Then utilize the phase random dither technology, use the M sequence as the phase random dither of the DDS sampling output .this method causes evenly look up table sampling turn to for p
7、seudo-random non- even sampling, it make the output spurious component of DDS change to white noise, similarly enhance purity of the output frequency spectrum to This article finally used the spectrum analyzer to do the correlation experiment test, has confirmed the design thought at the experiment.
8、Key words: Digital Direct Frequency Synthesis FPGA VHDL M sequenceSpectrum目 錄 TOC o 1-2 u 一、頻率合成技術概述及DDS性能特點 PAGEREF _Toc136686255 h 4(一) 頻率合成技術概述 PAGEREF _Toc136686256 h 4(二) DDS特點 PAGEREF _Toc136686257 h 5二、DDS基本原理 PAGEREF _Toc136686258 h 6(一) 波形存儲器基本原理 PAGEREF _Toc136686259 h 6(二) DDS基本原理 PAGEREF
9、 _Toc136686260 h 6(三) DDS設計中的參數(shù)選擇 PAGEREF _Toc136686261 h 8(四) 小結 PAGEREF _Toc136686262 h 8三、DDS的VHDL語言實現(xiàn) PAGEREF _Toc136686263 h 9(一) EDA技術與VHDL語言 PAGEREF _Toc136686264 h 9(二) DDS的FPGA實現(xiàn)方法 PAGEREF _Toc136686265 h 10(三) 開發(fā)平臺 PAGEREF _Toc136686266 h 10(四) 基本DDS的VHDL實現(xiàn)與仿真 PAGEREF _Toc136686267 h 10四、
10、提高輸出頻譜純度的方法與實驗驗證 PAGEREF _Toc136686268 h 14(一) DDS的頻譜純度提高方法簡述 PAGEREF _Toc136686269 h 14(二) 相位隨機抖動原理與VHDL實現(xiàn) PAGEREF _Toc136686271 h 15(三) 頻譜純度提高的實驗驗證 PAGEREF _Toc136686272 h 20五、程序下載及硬件調試 PAGEREF _Toc136686273 h 20(一) FPGA的配置和下載 PAGEREF _Toc136686274 h 20(二) 調試與程序固化 PAGEREF _Toc136686275 h 21六、結束語 P
11、AGEREF _Toc136686276 h 21七、致謝 PAGEREF _Toc136686277 h 22參考文獻 PAGEREF _Toc136686278 h 22附錄 PAGEREF _Toc136686279 h 23(一) 各組成模塊的VHDL程序 PAGEREF _Toc136686280 h 23基于FPGA的DDS正弦波信號源設計一、頻率合成技術概述及DDS性能特點(一) 頻率合成技術概述頻率合成是指由一個或多個頻率穩(wěn)定度和精確度很高的參考信號源通過頻率域的線形運算,產(chǎn)生具有同樣穩(wěn)定度和精確度的大量離散頻率的過程。實現(xiàn)頻率合成的電路叫頻率合成器,頻率合成器是現(xiàn)代電子系統(tǒng)的
12、重要組成部分。它在很多領域都有很廣泛的應用。如在通信、雷達、導航、遙控搖測、電子對抗、以及現(xiàn)代化的儀器儀表的領域,都可以看到頻率合成器的身影,由于它應用領域的廣泛,所以人們對它進行了深入的研究。到現(xiàn)在為止,已經(jīng)發(fā)展到了第三代頻率合成技術。隨著電子技術的不斷發(fā)展,對頻率合成器的要求越來越高,頻率合成器的主要性能指標有:1 輸出頻率范圍頻率范圍是指頻率合成器輸出最低頻率和輸出最高頻率之間的變化范圍,它包含中心頻率和帶寬兩個方面的含義。2頻率穩(wěn)定度頻率穩(wěn)定度是指在規(guī)定時間間隔內,頻率合成器輸出頻率偏離標定值的數(shù)值,它分長期,短期和瞬間穩(wěn)定度三種。3頻率間隔頻率間隔是指兩個輸出頻率的最小間隔,也稱頻率
13、分辨率。4頻率轉換時間頻率轉化時間是指輸出由一個頻率轉換到另一個頻率的時間。5頻率純度頻率純度以雜散分量和相位噪聲來衡量。雜散又稱寄生信號,分為諧波分量和非諧波分量兩種。主要由頻率合成過程中的非線形失真產(chǎn)生;相位噪聲是衡量輸出信號抖動大小的參數(shù)。6調制性能調制性能是指頻率合成器的輸出是否具有調幅、調頻、調相等功能。頻率合成器的實現(xiàn)方法有三種:直接模擬頻率合成、間接頻率合成和直接數(shù)字頻率合成。直接模擬頻率合成技術是一種早期的頻率合成技術,它用一個或幾個參考頻率源經(jīng)諧波發(fā)生器變成一系列諧波,再經(jīng)混頻、分頻、倍頻和濾波等處理產(chǎn)生大量的離散頻率。這種方法的優(yōu)點是頻率轉換時間短、相位噪聲低,但是由于采用
14、大量的混頻、分頻、倍頻和濾波等途徑,使頻率合成器的體積大,成本高,結構復雜,容易產(chǎn)生雜散分量,且難于抑制。間接頻率合成技術又稱鎖相式頻率合成,它是利用鎖相技術實現(xiàn)頻率的加、減、乘、除。其優(yōu)點是由于鎖相環(huán)路相當于一個窄帶跟蹤濾波器,因此能很好地選擇所需頻率的信號,抑制雜散分量,且避免了大量使用濾波器,十分有利于集成化和小型化。此外,一個設計良好的壓控振蕩器具有高的短期頻率穩(wěn)定性,而標準頻率源具有高的長期頻率穩(wěn)定度,鎖相式頻率合成器把這兩者結合在一起,使其合成信號的長期頻率穩(wěn)定度和短期頻率穩(wěn)定度都很高。但鎖相式頻率合成器的頻率轉換時間較長,單環(huán)頻率合成器的頻率間隔不可能做得很小。直接數(shù)字頻率合成(
15、DDSDigital Direct Frequency Synthesis)技術是一種全新的頻率合成方法,是頻率合成技術的一次革命。這種技術首先由美國學者J .Tierny,C.M.Rader和B.Gold三人于1971年首次提出,但限于當時的技術和工藝水平,DDS技術僅僅在理論上進行了一些探討,而沒有應用到實際中去。隨著微電子技術的迅速發(fā)展,直接數(shù)字頻率合成(DDSDigital Direct Frequency Synthesis)得到了飛速發(fā)展,它以有別于其它頻率合成方法的優(yōu)越性能和特點成為現(xiàn)代頻率合成技術中的佼佼者。具體體現(xiàn)在相對帶寬寬、頻率轉換時間短、頻率分辨率高、輸出相位連續(xù)、可產(chǎn)
16、生寬帶正交信號及其他多種調制信號、可編程和全數(shù)字化、控制靈活方便等方面,并具有極高的性價比。(二) DDS特點DDS是一種全數(shù)字化的頻率合成器,由相位累加器、波形ROM、D/A轉換器和低通濾波器構成。時鐘頻率給定后,輸出信號的頻率取決于頻率控制字,頻率分辨率取決于累加器位數(shù),相位分辨率取決于ROM的地址線位數(shù),幅度量化噪聲取決于ROM的數(shù)據(jù)位字長和D/A轉換器位數(shù)。DDS在相對帶寬、頻率轉換時間、相位連續(xù)性、正交輸出以及集成化等一系列性能指標方面遠遠超過了傳統(tǒng)頻率合成技術所能達到的水平,為系統(tǒng)提供了優(yōu)于模擬信號源的性能。它的一些優(yōu)點如下:1.輸出頻率相對帶寬較寬輸出頻率帶寬為50%(理論值)。
17、但考慮到低通濾波器的特性和設計難度以及對輸出信號雜散的抑制,實際的輸出頻率帶寬仍能達到40%。2.頻率轉換時間短DDS是一個開環(huán)系統(tǒng),無任何反饋環(huán)節(jié),這種結構使得DDS的頻率轉換時間極短。事實上,在DDS的頻率控制字改變之后,需經(jīng)過一個時鐘周期之后按照新的相位增量累加,才能實現(xiàn)頻率的轉換。因此,頻率轉換時間等于頻率控制字的傳輸,也就是一個時鐘周期的時間。時鐘頻率越高,轉換時間越短。DDS的頻率轉換時間可達納秒數(shù)量級,比使用其它的頻率合成方法都要短數(shù)個數(shù)量級。3.頻率分辨率極高若時鐘的頻率不變,DDS的頻率分辨率就是由相位累加器的位數(shù)N決定。只要增加相位累加器的位數(shù)N即可獲得任意小的頻率分辨率。
18、目前,大多數(shù)DDS的分辨率在1Hz數(shù)量級,許多小于1mHz甚至更小。4.相位變化連續(xù)改變DDS輸出頻率,實際上改變的是每一個時鐘周期的相位增量,相位函數(shù)的曲線是連續(xù)的,只是在改變頻率的瞬間其頻率發(fā)生了突變,因而保持了信號相位的連續(xù)性。5.輸出波形的靈活性只要在DDS內部加上相應控制如調頻控制FM、調相控制PM和調幅控制AM,即可以方便靈活地實現(xiàn)調頻、調相和調幅功能,產(chǎn)生FSK、PSK、ASK和MSK等信號。另外,只要在DDS的波形存儲器存放不同波形數(shù)據(jù),就可以實現(xiàn)各種波形輸出,如三角波、鋸齒波和矩形波甚至是任意的波形。當DDS的波形存儲器分別存放正弦和余弦函數(shù)表時,既可得到正交的兩路輸出。6.
19、其他優(yōu)點由于DDS中幾乎所有部件都屬于數(shù)字電路,易于集成,功耗低、體積小、重量輕、可靠性高,且易于程控,使用相當靈活,因此性價比極高。DDS也有局限性,主要表現(xiàn)在:1.輸出頻帶范圍有限由于DDS內部DAC和波形存儲器(ROM)的工作速度限制,使得DDS輸出的最高頻有限。目前市場上采用CMOS、TTL、ECL工藝制作的DDS芯片,工作頻率一般在幾十MHz至400MHz左右。采用GaAs工藝的DDS芯片工作頻率可達2GHz左右。2.輸出雜散大由于DDS采用全數(shù)字結構,不可避免地引入了雜散。其來源主要有三個:相位累加器相位舍位誤差造成的雜散;幅度量化誤差(由存儲器有限字長引起)造成的雜散和DAC非理
20、想特性造成的雜散。二、DDS基本原理(一)波形存儲器基本原理波形存儲器(ROM)地址譯碼1 0 0 0 0 0 0 0 01 1 0 0 0 0 0 1 11 1 1 1 1 1 1 1 10 0 0 0 0 0 0 0 00 0 0 0 0 0 1 1 1可尋址空間 2 在2個單元內存儲一個周期的波形圖1 ROM內部存取數(shù)原理DDS采用的是全數(shù)字結構,它將用一定的算法預先把以時鐘頻率對正弦信號進行抽樣得到的值放存儲器中。這里以ROM為例。如果ROM有N條地址線,則這個存儲器的存儲空間為2。存儲器中的數(shù)據(jù)與波形的關系如圖1所示。假如在2個存儲單元內存放了一個周期的正弦波形數(shù)據(jù),則每個單元內的數(shù)
21、據(jù)就表示正弦值的大小,這種存儲器稱為波形數(shù)據(jù)存儲器。如果重復地從02-l單元讀出波形數(shù)據(jù)存儲器中的數(shù)據(jù),在波形數(shù)據(jù)存儲器的輸出端就會得到周期的正弦序列。此時得到的數(shù)據(jù)是抽樣量化后的正弦信號。如果將周期的正弦序列輸入到D/A轉換器,則會在D/A轉換器的輸出端得到連續(xù)的正弦電壓或電流。輸出序列的周期是由時鐘周期來確定的。設時鐘周期為T,且ROM的地址長度為2,則輸出信號的周期為T=2 T。這說明輸出信號的周期與時鐘周期成正比,時鐘頻率越高,讀取信號一個周期時間越短,信號頻率越高。(二) DDS基本原理對于正弦信號發(fā)生器,它的輸出可以用下式來描述: S=Asint=Asin(2ft) (1)其中S是
22、指該信號發(fā)生器的輸出信號波形,f是指輸出信號對應的頻率。上式的表達對于時間t是連續(xù)的,為了用數(shù)字邏輯式實現(xiàn)該表達式,必須進行離散化處理,用基準時鐘clk進行抽樣,令正弦信號的相位:=2ft (2)在一個clk周期T ,相位的變化量為:=2fT= (3)其中 f 是指clk的頻率對于2可以理解為“滿”相位,為了對進行數(shù)字量化,把2切割成2份,由此每個CLK周期的相位增量用量化值B來描述:B2 ,且 B為整數(shù)。與式(3)聯(lián)立??傻?B=2 (4)顯然,信號發(fā)生器的輸出可能為:S=Asin(+)=Asin(B+ B)=Af(B+ B) (5)其中 指前一個clk周期的相位值,同樣得出B2 (6)由上
23、面的推導,可以看出,只要對相位的量化增量進行簡單的累加運算,就可以得到正弦信號的當前值,而用于累加的相位增量量化值B決定了信號的輸出頻率f,并呈現(xiàn)簡單的線形關系。直接數(shù)字合成器DDS就是根據(jù)上述原理而設計的數(shù)字控制頻率合成器。頻 率控 制 字相 位累 加 器正弦查表(ROM)D/A參考時鐘源圖2 基本DDS結構如圖2所示的是一個基本的DDS結構,主要由相位累加器、同步寄存器、正弦ROM查找表、D/A構成。相位累加器是整個DDS的核心,在這里完成上文原理推導中的相位累加功能。相位累加器由N位加法器與N位累加寄存器級聯(lián)構成。相位累加器的輸入是相位增量B,又由于B與輸出頻率f是簡單的線形關系:B=2
24、。相位累加器的輸入即相位增量又可以稱為頻率控制字,用K來表示。每來一個時鐘脈沖f,加法器將頻率字k與累加寄存器輸出的累加相位數(shù)據(jù)相加,把相加后的結果送到累加寄存器的數(shù)據(jù)輸入端,以使加法器在下一個時鐘脈沖的作用下繼續(xù)與頻率控制字相加。這樣,相位累加器在時鐘作用下,不斷對頻率控制字進行線性相位累加。由此可以看出,相位累加器在每一個時鐘輸入時,把頻率控制字累加一次,相位累加器輸出的數(shù)據(jù)就是合成信號的相位,相位累加器的輸出頻率就是DDS輸出的信號頻率。K的大小控制了地址加法器輸出的遞增速率。在此設計中,把K設計成可變值,增加了頻率控制的靈活性。其中,K的最小為1,最大為511。在時鐘頻率f不變的情況下
25、,K的大小控制了D8D0從最小到最大變化所用的時間。K大,每次運算的結果較前一次的數(shù)據(jù)增長就大,因而地址數(shù)據(jù)循環(huán)一周所需時間就短,這意味著D/A轉換器輸出的波形頻率就高。反之則相反。用相位累加器輸出的數(shù)據(jù)作為波形存儲器(ROM)的相位取樣地址。這樣就可把存儲在波形存儲器內的波形抽樣值(二進制編碼)經(jīng)查找表查出,完成相位到幅值轉換。波形存儲器的輸出送到D/A轉換器,D/A轉換器將數(shù)字量形式的波形幅值轉換成所要求合成頻率的模擬量形式信號。低通濾波器用于濾除不需要的取樣分量,以便輸出頻譜純凈的正弦波信號。(三) DDS設計中的參數(shù)選擇 一般而論,DDS的組成形式如圖2 所示。圖中波形數(shù)據(jù)存儲器的全部
26、數(shù)據(jù)被讀出一次的頻率為:f=K (7)式中: f:波形數(shù)據(jù)存儲器輸出信號的頻率; N:地址加法器的數(shù)據(jù)寬度; K: 頻率控制字;f:系統(tǒng)的時鐘頻率;(四)小結綜上所述,DDS由以下兩次變換實現(xiàn):1.從不變量K以時鐘f產(chǎn)生量化的相位序列。這個過程一般由一個以f作時鐘的N位相位累加器來實現(xiàn)。如圖3所示 累 加 器頻率控制字N位寄 存 器相位量化序列圖 3 產(chǎn)生相位序列的過程2.從離散量化的相位序列產(chǎn)生對應的正弦信號的離散幅度序列。這個過程可由對波形ROM的尋址來完成,如圖4所示。相位量化序列波 形 ROM正弦幅度序列圖 4 產(chǎn)生正弦幅度序列的過程把量化的數(shù)字波形經(jīng)D/A轉換,再經(jīng)過低通濾波器就得到
27、頻率為f的正弦信號。不變量K被稱為相位增量,也叫頻率控制字。當K=1時,DDS輸出最低頻率(也即頻率分辨率)為,因此,只要N足夠大,DDS可以得到很細的頻率間隔。要改變DDS輸出頻率,只要改變K即可。DDS的最大輸出頻率由Nyquist采樣定理決定,即為。三、DDS的VHDL語言實現(xiàn)(一) EDA技術與VHDL語言 1EDA技術現(xiàn)代電子設計的核心是EDA(Electronic Design Automation)技術。它是一種實現(xiàn)電子系統(tǒng)或電子產(chǎn)品自動化設計的技術,它與電子技術、微電子技術的發(fā)展密切相關,它吸收了計算機領域的大多數(shù)最新研究成果,以高性能的計算機作為工作平臺,是20世紀90年代從
28、CAD(Computer Aided Design,計算機輔助設計)、CAM (Computer Aided Manufacture,計算機輔助制造)、CAT (Computer Aided Test,計算機輔助測試)和CAE (Computer Aided Engineering,計算機輔助工程)的概念發(fā)展起來的。EDA工具是以計算機的硬件和軟件為基本工作平臺,集數(shù)據(jù)庫、圖形學、圖論與拓撲邏輯、計算數(shù)學、優(yōu)化理論等多學科最新成果研制而成的計算機輔助設計通用軟件包。它依賴功能強大的計算機,在EDA工具軟件平臺上,對以硬件描述語言HDL(Hardware Description Language
29、)為系統(tǒng)邏輯描述手段完成的設計文件,自動地完成邏輯編譯、邏輯化簡、邏輯分割、邏輯綜合、結構綜合(布局布線),以及邏輯優(yōu)化和仿真測試,直至實現(xiàn)既定的電子硬件電路系統(tǒng)功能。EDA技術使得設計者的工作僅限于利用軟件的方式,即利用硬件描述語言和EDA軟件來完成對系統(tǒng)硬件功能的實現(xiàn)。EDA技術和可編程邏輯器件給今天的硬件系統(tǒng)設計者提供了強有力的工具,使得電子系統(tǒng)發(fā)生了質的變化。傳統(tǒng)的“固定功能集成塊+連線”的設計方法正逐步地退出歷史舞臺,而基于芯片的設計方法正在成為現(xiàn)代電子系統(tǒng)的主流。2VHDL語言硬件描述語言(HDL-Hardware Description Language) 是一種用形式化方法來描
30、述數(shù)字電路和設計數(shù)字邏輯系統(tǒng)的語言。它可以使數(shù)字邏輯電路設計者利用這種語言來描述自己的設計思想,然后利用EDA工具進行仿真,再自動綜合到門級電路,再用PLD或ASIC實現(xiàn)其功能。硬件描述語言的發(fā)展至今己有20多年的歷史,并成功地應用于設計的各階段:仿真、驗證、綜合等。到20世紀80年代時,已出現(xiàn)了上百種硬件描述語言,它們對設計自動化起到了極大的促進和推動作用。但是,這些語言一般各自面向特定的設計領域與層次,而且眾多的語言使用戶無所適從,因此急需一種面向設計的多領域、多層次、并得到普遍認同的標準硬件描述語言。進入80年代后期,硬件描述語言向著標準化的方向發(fā)展。最終,VHDL和Verilog HD
31、L語言適應了這種趨勢的要求,先后成為IEEE標準。 VHDL誕生于1982年,它的英文全名是VHSIC Hardware Description Language,而VHSIC則是Very High Speed Integerated Circuit.的縮寫詞,意為甚高速集成電路。1987年,VHDL被IEEE和美國國防部確認為標準硬件描述語言。自IEEE公布了VHDL的標準版本(IEEE-1076 )之后,各EDA公司相繼推出了自己的VHDL設計環(huán)境,或宣布自己的設計工具可以和VHDL接口。1993年,IEEE對VHDL進行了修訂,從更高的抽象層次和系統(tǒng)描述能力上擴展VHDL的內容,公布了新
32、版本的VHDL,即IEEE標準的1076-1993版。 VHDL主要用于描述數(shù)字系統(tǒng)的結構、行為、功能和接口。除了含有許多具有硬件特性的語句外,VHDL的語言形式、描述風格與句法是十分類似于一般的計算機高級語言。VHDL的程序結構特點是將一項工程設計,或稱設計實體(可以是一個元件,一個電路模塊或一個系統(tǒng))分成外部(或稱可視部分,即端口)和內部(或稱不可視部分,即涉及實體內部功能和算法的完成部分)。在對一個設計實體定義了外部界面后,一旦其內部開發(fā)完成后,其他的設計就可以直接調用這個實體。這種將設計實體分成內外部分的概念是VHDL系統(tǒng)設計的基本點。(二) DDS的FPGA實現(xiàn)方法雖然目前市場上有較
33、多功能完備的DDS芯片,但是一般屬于高速芯片,價格較高,同時專用型的DDS控制方式相對固定。在低速應用方面利用FPGA設計則可以根據(jù)需要方便地實現(xiàn)各種比較復雜的功能,具有良好的靈活性。因此本文采用了FPGA設計DDS芯片,利用軟件MaxPlusII就可以設計我們需要的功能模塊。本系統(tǒng)硬件設計中,采用的時鐘頻率是10MHz,使用了EPF10K20TC144-4的FPGA。在該芯片上,通過VHDL硬件描述語言設計完成以下功能的模塊及相關控制單元,最后把這些模塊連接起來構成一個完整系統(tǒng)就可實現(xiàn)DDS。主要有:可控相位累加累減器;判決控制器;寄存器;M序列發(fā)生器;延時器;(三)開發(fā)平臺DDS技術的實現(xiàn)
34、依賴于高速、高性能的數(shù)字器件??删幊踢壿嬈骷云渌俣雀?、規(guī)模大、可編程,以及有強大EDA軟件支持等特性,十分適合實現(xiàn)DDS技術。在一般的設計開發(fā)中,我們常使用由PLD公司提供的集成EDA軟件,這些集成的開發(fā)軟件提供了設計輸入編輯器、HDL綜合器、FPGA/CPLD適配器、門級仿真器和編程下載器等一整套完整的開發(fā)工具,如Lattice的ISP-LEVER和ISP-Design EXPERT, Altera的MaxPlus II和 Quarters II、Xilinx的ISE和Foundation等。Altera是著名的PLD生產(chǎn)廠商,多年來一直占據(jù)著行業(yè)領先的地位。Altera的PLD具有高性能
35、、高集成度和高性價比的優(yōu)點,此外它還提供了功能全面的開發(fā)工具和豐富的IP核、宏功能庫等,因此Altera的產(chǎn)品獲得了廣泛的應用。Altera的產(chǎn)品有多個系列,按照推出的先后順序依次為Classic系列、MAX(MultipleArrayMatrix)系列、FLEX(FlexibleLogicElementMatrix)系列、APEX(AdvancedLogicElementMatrix)系列、ACEX系列、Stratix系列以及Cyclone等。Maxplus II是Altera提供的FPGA/CPLD開發(fā)集成環(huán)境。它是一個完整的EDA開發(fā)軟件,可完成從設備輸入、編譯、邏輯綜合、器件適配、設計
36、仿真、定時分析、器件編程的所有過程。Maxplus II界面友好,使用便捷,被譽為業(yè)界最易學的EDA軟件。它提供了一種與結構無關的設計環(huán)境,使設計者能方便地進行設計輸入、快速處理和器件編程。我們在此設計中就是利用的MaxPlusII這個軟件。(四)基本DDS的VHDL實現(xiàn)與仿真在此設計中,利用了正弦信號在不考慮信號的極性的情況下,四分之一周期能夠包含一個周期內的所有內容的原理。因此,本文中在ROM中只儲存了正弦波四分之一周期的采樣值,采用VHDL語言編寫出控制語言,并結合硬件,實現(xiàn)了通過D/A轉換器就能恢復出正確的正弦值的系統(tǒng)功能。由于僅僅儲存了正弦波四分之一周期的采樣值,提高了ROM的利用率
37、,從而提高了頻率分辨率。在此設計思想上,設計出了以下幾個部分實現(xiàn)DDS的功能。1.實現(xiàn)判決控制功能的模塊由于選用的FPGA芯片EPF10K20TC144-4 中ROM的最大容量為12.288Kbit,有兩個ROM每個ROM寬度為8bit,各為6.144Kbit。在本設計中只需要一個ROM,因此可以把它們合并起來構成16比特儲存寬度。由此可得到地址線的長度為2=6144/8=768N9.58 N可取9 以上計算表明可以在ROM中最大存入768個查找點.本文中為了方便,取512個點,這個值剛好是29將大大方便后面的設計。實驗表明要達到最大768個點,編譯時要出錯,該選用的FPGA的EAB單元還不足
38、夠。.由于設計思路是在ROM中只存入四分之一周期的數(shù)據(jù),這樣可以提高采樣點數(shù),使輸出頻率范圍更寬。因此,設計了一個實現(xiàn)判決控制功能的模塊。在此模塊中,實現(xiàn)的功能是對輸入的時鐘進行計數(shù)并通過與除法器輸出的數(shù)據(jù)比較并判決,由判決的結果控制相位累加累減器的加減計數(shù)功能同時輸出控制信號控制輸出信號的符號,因此利用VHDL語言設計出了可實現(xiàn)此功能的模塊。仿真結果如圖5所示??梢钥闯觯ㄟ^頻率控制字的控制,輸出端輸出了控制累加累減的信號“enable”以及控制符號的信號“zhengfu”。所以此模塊可以實現(xiàn)記數(shù)及判決功能。判決控制模塊部分程序:cc: process(clk,cout)beginif cl
39、kevent and clk=1then if cout=000 then enable=0; elsif cout=001 then enable=1; elsif cout=010 then enable=0; elsif cout=011 then enable=000 and cout=001 then zhengfu001 and cout=011 then zhengfu=0; else null; end if;end if;end process cc;圖 5判決控制模塊仿真圖2.可控累加累減器在此模塊中,受判決器模塊輸出信號的控制可實現(xiàn)累加或累減的功能。這樣就可以實現(xiàn)用四分之
40、一周期表示完整正弦周期的信號特征。如圖6、圖7、圖8及圖9所示,當頻率控制字“freqin”不同時,累加累減的速度不同;當累加累減信號“enable”不同時,系統(tǒng)的功能也不同,即當“enable”為0時,實現(xiàn)累加功能,當“enable”為1時,實現(xiàn)累減功能。可控累加累減器部分程序:process(clk1)beginif res=1 then acc=000000000;else if clk1event and clk1=0 then freqw=freqin; if enable1 =0then acc=acc+freqw; elsif enable1 =1 then acc=acc-fr
41、eqw;else acc0); end if;end if;end if;ddsout=acc;end process;圖6 頻率控制字為2,enable為0時的累加器以2做累加仿真圖圖7頻率控制字為2,enable為1時的累減器以2做累減仿真圖圖 8頻率控制字為4,enable為0時累加器以4做累加仿真圖圖 9頻率控制字為4,enable為1時的累減器以4做累減仿真圖由以上幾個仿真圖可以知道累加累減器設計是正確的。3.寄存器 在設計中引入了一個寄存器寄存相位累加累減器輸出的數(shù)據(jù),可以減小誤差。寄存器仿真結果如圖10所示,表明此模塊可以實現(xiàn)寄存的功能。圖 10 寄存器仿真圖4.ROM查找表的建
42、立及除法模塊的設計在DDS中,需要在ROM中預先存入正弦信號的采樣點值。所以首先需要建立ROM查找表。利用MATLAB語言可以很簡單精確的得到抽樣點值。具體程序如下:i=0:1:512;y=round(sin*65535)在MaxPlusII中,有一個參數(shù)可設置模塊庫(LPMLibrary of Parameterized Modules),該庫可以以圖形或硬件描述語言的方式調用,這使得基于EDA技術的電子設計的效率和可靠性有了很大提高。在此設計中,調用了其中的LPM_ROM函數(shù)。根據(jù)所設計的系統(tǒng)對LPM_ROM的參數(shù)進行設置,同時為ROM配置數(shù)據(jù)文件。利用MATLAB工具產(chǎn)生512點查表數(shù)據(jù)
43、,再把該數(shù)據(jù)映射到ROM配置文件中,就可以實現(xiàn)正確調用LPM_ROM。另外,在設計中還調用了LPM庫中的LPM_divide模塊,輸出的數(shù)作為判決控制器的輸入,實現(xiàn)判決控制器的功能。 5.數(shù)控分頻器 數(shù)控分頻器的功能就是當在輸入端給定不同輸入數(shù)據(jù)時,將對輸入的時鐘信號有不同的分頻比。這里采用的方法就是用計數(shù)值可并行預置的加法計數(shù)器設計完成的,方法是將計數(shù)溢出位與預置數(shù)加載輸入信號相接即可。如圖11所示,當控制位D不同時,輸出的頻率“FOUT”也不同。圖12、圖13顯示了不同控制位時的分頻比。圖 11 分頻器的波形仿真圖圖12 當為四分頻時的波形仿真圖圖13 十分頻時的波形仿真圖6.頂層文件一個
44、程序只可以有一個頂層文件,其他文件都是間接或直接進行調用的。在此設計中,為DDS的主體部分設計了一個頂層模塊,這樣在設計系統(tǒng)模塊時方便調用。該頂層模塊的仿真結果如圖14、圖15所示,當頻率控制字不同時,輸出的“data”改變速度不同,從而實現(xiàn)輸出頻率不同的正弦波的系統(tǒng)功能。圖 14 頂層文件仿真圖(頻率控制字為2時)圖 15 頂層文件仿真圖(頻率控制字為4時)四、 提高輸出頻譜純度的方法與實驗驗證 (一)DDS的頻譜純度提高方法簡述實際系統(tǒng)中常常要考慮DDS的頻譜純度,頻譜純度不高這是DDS的最大缺點之一。這往往限制了DDS在更多場合下的應用。分析原因可知,主要是由于DDS是全數(shù)字化結構,它的
45、工作原理使得DDS中不可避免地存在幅度量化誤差,相位截斷誤差等因素,從而引起輸出頻譜變壞。 對于降低雜散功率的方法,目前研究的已比較多,歸納起來主要有三種。第一種方法是優(yōu)化設計波形ROM和相位累加器。為了降低相位截斷誤差,需要增加波形ROM的地址線位數(shù),但地址線位數(shù)增加一位,ROM的容量就要增加一倍,因此一味增加地址線位數(shù)是不切實際的,可以通過壓縮存儲數(shù)據(jù)來等效地增大ROM數(shù)據(jù)尋址位。壓縮ROM方法可以采用插值算法,在采樣點之間通過算法實現(xiàn)插入多個點,從而擴大查找表的有效點數(shù)。最簡單而直接的方法即只保存正弦波0,/2區(qū)間的數(shù)據(jù),然后利用對稱性來恢復其它象限的數(shù)值,這樣一來可得到4:1的數(shù)據(jù)壓縮
46、比。第二種提高頻譜純度的方法是用隨機抖動法提高無雜散動態(tài)范圍。由于DDS的周期性,輸出雜散頻譜往往表現(xiàn)為離散譜線,隨機抖動技術使離散譜線均勻化,從而提高輸出頻譜的無雜散動態(tài)范圍。圖16,17所示的是兩種常見的隨機抖動技術。還有一種方法是以過采樣的方法降低帶內誤差功率,當量化噪聲為白噪聲時其功率是均勻分布在0 f clk. / 2頻帶內的 (f clk為采樣頻率) ,如果提高采樣頻率,則在原先頻帶內的噪聲功率將降低,通過低通濾波器后,帶外噪聲被濾除,頻譜將得到改善。但是這個方法會降低DDS的工作頻率。 通過對三種方法的比較,本文采用了壓縮存儲數(shù)據(jù)和隨機抖動技術相結合的方法來提高頻譜純度的方法。在
47、第三章已經(jīng)介紹了壓縮存儲數(shù)據(jù)的方法,本章主要討論隨機抖動技術的方法。相 位 累 加 器抖 動 序 列波 形 ROMB=N-AAN圖16一種采用相位隨機抖動序列提高頻譜純度的方案波 形 ROM 抖 動 序 列D/A轉換器 圖17 一種采用幅度隨機抖動序列提高頻譜純度的方案(二)相位隨機抖動原理與VHDL實現(xiàn) 1.相位隨機抖動原理分析理論分析表明抖動技術可以有效地提高無雜散動態(tài)范圍或降低雜散分量。隨機抖動可以提高DDS的輸出無雜散動態(tài)范圍,在于它破壞了雜散的相關性,把離散的強度較大的雜散譜白化。抖動的方法有好幾種,如抖動頻率控制字,抖動波形ROM的地址和抖動正弦波幅度。頻率控制字抖動時,每次抖動前
48、應把上一次的抖動減掉,否則抖動將在相位累加器中積累,產(chǎn)生頻率調制,因此這種抖動實現(xiàn)起來電路復雜。把偽隨機抖動加入在相位累加器輸出端(見圖16),從而可以達到提高DDS頻譜純度的目的,這個方法的另一個好處是不會降低DDS工作的速度。本文利用的是抖動波形ROM的地址的方法。相位抖動的原理圖如圖16所示。抖動源可以看成是一個在0,2-1上均勻分布的隨機序列r(n),相位累加器輸出的相位序列(n)和抖動序列r(n)相加后再進行相位截斷。DDS的輸出序列S(n)為:S(n)=sin(nK)-e(n)cos(nK) (8)其中e(n)=e(n)+r(n)為總的相位截斷誤差。因為r(n)有2個取值,2個取值
49、中小于2- e(n)的有2- e(n)個,而當r(n)小于2- e(n)時,有e(n)+r(n)2,抖動后不對相位截斷起作用。此時,總的相位截斷誤差e(n)=e(n),因此e(n)=e(n)的概率P為:P= (9)同理當r(n)2- e(n)時,有e(n)+r(n)2,抖動后對相位截斷起作用,此時總的相位截斷誤差e(n)=e(n)-2,其概率P為:P= (10)由上兩式,對于所有n,總的相位截斷誤差的均值為:Ee(n)=e(n)+(e(n)-2) =0 (11)總的相位截斷誤差方差為:Ee(n)=e(n)+(e(n)-2) =(2- e(n)e(n) (12)在相位截斷誤差的最壞情況是GCD(
50、K,2)=1,此時e(n)的一個周期取到了0,2-1內的所有值,因此,由上式,誤差功率的平均值為: e(n)= = (13)有相位截斷誤差時最好的情況是GCD(K,2)=2,此時e(n)=2,0,2,0,。由上,誤差功率的平均值為:e(n)=0+(2-2)2 = (14)根據(jù)式(8),可求得有相位截斷誤差時的信噪比上限SNR和下限SNR分別為: SNR=6A-6.9(dB) SNR=6A-8.2(dB) (15)已知在未加入相位噪聲時信噪比的上限SNR和下限SNR分別為 SNR=-6A+8.2(dB) SNR=-6D-4.8(dB) (16)(其中A與D取值相互關聯(lián),A=2+D)式(15)和式
51、(16)相比可知,相位抖動后相位截斷誤差功率沒有變化,但是由于抖動打破了相位截斷誤差的周期性,誤差功率譜由原來的離散譜線變成了均勻分布的寬帶噪聲,從而提高了信號噪聲功率譜密度比,即提高了無雜散動態(tài)范圍。M序列是最長周期線形反饋移位寄存器序列,它具有良好的偽隨機特性,其功率譜類似白噪聲,是產(chǎn)生抖動序列的較好信號源,為此可以構建一個長周期的M序列作為抖動源。把它附加在累加器輸出低位地址上就可實現(xiàn)相位的隨機抖動。在FPGA中實現(xiàn)M序列是很容易的,一個生成多項式為:的M序列構成數(shù)據(jù)加擾器原理見圖18,此多項式在WLAN中已有實際應用。DDDDDDD數(shù)據(jù)入數(shù)據(jù)出圖18 抖動序列的實現(xiàn)原理這個加擾器,由7
52、個D觸發(fā)器和一個異或門構成,可以產(chǎn)生周期為127的重復序列,對于DDS的ROM點數(shù)來說127這個值仍舊太小,本文使用了生成多項式為: 的M序列,可以產(chǎn)生脈沖為周期的序列。這個偽隨機序列要在查找ROM很多個周期后才會重復,因此其隨機性相當好。設計中要注意的是,若上電時所用的D觸發(fā)器都置0,則M序列將無法工作,本文中用了兩組M序列,采用相同的生成多項式,分別加在累加器輸出的低2位地址上。利用上電復位把兩組M序列初始狀態(tài)分別置于“000000000000000001”和00000000000000000011狀態(tài),這樣避免了不能正常工作的困難,同時它們的輸出也不會相同。2,VHDL語言實現(xiàn)通過VHD
53、L語言可以很方便的設計出M序列發(fā)生器,但是在設計中要考慮M序列與系統(tǒng)接口的問題。M序列接入系統(tǒng)的原理圖見圖19。如圖所示,首先要考慮M序列改變原采樣地址后的時間匹配問題。首先M序列并不需要在每次時鐘到來時都改變原地址,所以首先對時鐘頻率分頻,由分頻后的時鐘對M序列進行控制。其次,M序列與原地址相加后,使地址發(fā)生偏移,所以需要加入一個由M序列控制延時時間的延時器,延時后的地址才是正確的。M序列波形仿真如圖20所示,由圖可以看出,模塊輸出了周期很長的M序列“Dout1”和“DOUT2”,并且由于對它們設置了不同的初始值,所以得到的波形也不相同。延時后的輸出地址仿真圖如圖21所示。由圖可以看出,M序
54、列使輸出地址產(chǎn)生了延時,同時當M序列輸出值不同時,延時時間也不同,從而保證了系統(tǒng)的正確性。其功能相當于實現(xiàn)正弦信號的非均勻抽樣后再輸出。M序列發(fā)生器模塊部分程序:architecture one of sequence issignal q1: std_logic_vector(19 downto 0);signal q2: std_logic_vector(19 downto 0);beginDout= q1(0) & q2(0);process(clk,reset)beginif reset=1 then q1=00000000000000000001; q2=00000000000000
55、000011; else if clkevent and clk=1 then M_loop: for i in 0 to 18 loop q1(i+1)=q1(i); q2(i+1)=q2(i); end loop M_loop; q1(0)=q1(19) xor q1(2); q2(0)=q2(19) xor q2(2); end if; end if; end process;end one;延 時4分頻時鐘序列原 地 址M序列發(fā)生器ROM存儲器圖19 M序列嵌入系統(tǒng)原理圖圖20 M序列仿真波形延時模塊部分程序:a: process(clk,reset,Din,Min,q1,q2,q3,
56、q0) begin if reset=1 then q0=000000000; q1=000000000; q2=000000000; q3=000000000; else if clkevent and clk=1 then q0=Din; q1=q0; q2=q1; q3 Dout Dout Dout Dout null; end case;end process a;圖21延時后的輸出地址(三) 頻譜純度提高的實驗驗證采用了惠普HP3562A頻譜分析儀,對加入隨機相位抖動序列的DDS輸出頻譜和沒有加隨機抖動序列的輸出譜進行了比較,測試了幾組數(shù)據(jù)見表1。從輸出的頻譜特點來看(見圖22,23
57、)沒有加入隨機相位抖動的DDS輸出譜是離散的,而加入隨機抖動序列的輸出譜類似連續(xù)譜。比較靠近主瓣的第一雜散譜最大峰值與主瓣峰值的差,可以看到加入隨機相位抖動序列后主瓣與第一雜散譜最大峰值之差增大,這表明DDS輸出譜的動態(tài)范圍的確提高了,證明了隨機序列的確提高了輸出譜的動態(tài)范圍從而提高了譜的純度,具體數(shù)值見表1。 圖 22 未加入M序列的頻譜 圖23 加入M序列的頻譜表1 頻譜測試數(shù)據(jù)DDS輸出頻率未加入隨機抖動時的基波分量未加入隨機抖動時的一次諧波分量 加入隨機抖動時的基波分量加入隨機抖動時的一次諧波分量DDS輸出譜無雜散動態(tài)范圍提高程度1KHz5.19dBVrms-27.5dBVrms5.2
58、dBVrms-28.6dBVrms1.11dBVrms1.87KHz4.83dBVrms-21.87dBVrms4.6Vrms-23.45Vrms1.35dBVrms2.25KHz4.6 dBVrms-20.75dBVrms4.1dBVrms-22.5dBVrms1.25dBVrms注:由于本文所用的頻譜分析儀的測試范圍較?。? 100KHz)不能在全頻段范圍分析頻譜,本文中只做了較低輸出頻率時的比較。五、程序下載及硬件調試(一)FPGA的配置和下載 Altera公司的FPGA器件有兩類配置下載方式:主動配置下載方式和被動配置下載方式。主動配置下載方式由FPGA器件引導配置操作過程,它控制著外
59、部存儲器和初始化過程;而被動配置方式則由外部計算機或控制器控制配置過程。FPGA在正常工作時,它的配置數(shù)據(jù)(下載進去的邏輯信息)存儲在SRAM中。由于SRAM的易丟失性,每次加電時,配置數(shù)據(jù)都必須重新下載。在實驗系統(tǒng)中,通常用計算機或控制器進行調試,因此可以使用被動配置方式。而在實用系統(tǒng)中,多數(shù)情況下必須由FPGA主動引導配置操作過程,這時FPGA將主動從外圍專用芯片中獲得配置數(shù)據(jù)。而此芯片中的FPGA配置信息是用普通編程器將設計得到的POF格式的文件燒錄進去的。Altera提供了一系列FPGA 專用配置器件,即EPC型號的存儲器。專用配置芯片通常是串行的PROM器件。大容量PROM器件也可提
60、供并行接口,按可編程次數(shù)分為兩類:一類是OTP(一次可編程)器件;另一類是多次可編程的。在此設計中采用的配置器件EPC1441是OTP型串行PROM。Altera公司為不同系列的器件提供了不同的程序下載方式。MAX器件可以通過JTAG斷口下載編程或者專用編程器進行編程下載:FLEX器件可以通過JTAG端口下載、ByteBlaster編程電纜并行口PS(被動串行)配置或者使用串行PROM配置實現(xiàn)。除了使用 ByteBlaster進行并行下載,還可以使用BitBlaster進行串行下載和用ByteBlasterMV進行并行下載等。(二)調試與程序固化在用VHDL語言將DDS各模塊設計出來后,通過J
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州城市職業(yè)學院《銷售終端設計》2023-2024學年第一學期期末試卷
- 貴州財經(jīng)大學《單片機原理及應用實驗》2023-2024學年第一學期期末試卷
- 貴州電力職業(yè)技術學院《大學數(shù)學Ⅱ微積分》2023-2024學年第一學期期末試卷
- 2025年-山西省安全員A證考試題庫
- 廣州珠江職業(yè)技術學院《氣力輸送與廠內運輸》2023-2024學年第一學期期末試卷
- 貴陽學院《商務日語口譯》2023-2024學年第一學期期末試卷
- 2025年湖北建筑安全員《C證》考試題庫及答案
- 廣州應用科技學院《有機化學實驗二》2023-2024學年第一學期期末試卷
- 2025上海市安全員A證考試題庫及答案
- 廣州鐵路職業(yè)技術學院《精密機械設計基礎》2023-2024學年第一學期期末試卷
- 保密培訓記錄表
- 專升本英語寫作專題講解課件
- 平安保險授權委托書
- 員工安全培訓教育制度
- 深圳證券交易所
- 各種管道護理評分標準
- 體育賽事志愿者管理
- 遼寧華電高科環(huán)保技術有限公司油泥煤循環(huán)流化床協(xié)同資源化工業(yè)化試驗項目環(huán)境影響評價報告書
- 復旦大學普物B期末考試試卷
- 剪映教程PPT版本新版剪影零基礎教學課程課件
- 非煤礦山安全風險分級管控與安全隱患排查治理u000b雙重預防機制建設知識
評論
0/150
提交評論