基于DDS的AM調(diào)制_第1頁
基于DDS的AM調(diào)制_第2頁
基于DDS的AM調(diào)制_第3頁
基于DDS的AM調(diào)制_第4頁
基于DDS的AM調(diào)制_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、基于DDS的AM調(diào)制器的設(shè)計(jì)姓名 俞鋒學(xué)號(hào) 指導(dǎo)老師 蔣立平設(shè)計(jì)時(shí)間 2010.3.82010.3.14摘要:實(shí)驗(yàn)利用Quartus II 軟件實(shí)現(xiàn)直接數(shù)字頻率合成,具有頻率字和相位字的控制功能,從而改變頻率和相位。還具有相位清零功能以及波形切換功能。并且通過修改存儲(chǔ)器ROM 中的數(shù)據(jù)來提高精度和設(shè)計(jì)圖形。本文主要介紹實(shí)驗(yàn)中功能實(shí)現(xiàn)的方案,原理,以及相關(guān)操作。還有實(shí)驗(yàn)中遇到的問題和解決方法。關(guān)鍵字:數(shù)字頻率合成 頻率字 相位字 精度提高 Abstract The experiment is to design the Direct Digital Synthesizer (DDS) with

2、the Quartus II. The designed synthesizer should be able to change the phase and frequency ,and it also can set the phase to zero or change the waves. In addition, we can set the data in the ROM to improve the accuracy of the DDS and design special figures.The text is mainly to introduce the methods,

3、 principle, and operations. We also talk about the problems and solutions in the experiment.Key words Direct Digital Synthesizer frequency phase improve accuracy目 錄1引言 (4)2設(shè)計(jì)要求 (6)3工作原理介紹 (7)4各個(gè)子模塊設(shè)計(jì)原理 (8) 41 頻率預(yù)置與調(diào)節(jié)電路 (8) 4. 2 累加器模塊 (9) 43 波形存儲(chǔ)模塊 (11) 44 D/A轉(zhuǎn)化器與低通濾波器 (12) 45 調(diào)制與解調(diào)電路 (13) 4. 6 顯示測(cè)頻模

4、塊 (15) 4. 61 測(cè)頻模塊 (15) 4. 62 顯示模塊 (17) 4. 7 脈沖發(fā)生電路 (18)5仿真結(jié)果 (20)6設(shè)計(jì)結(jié)論和感想 (22)7實(shí)驗(yàn)總結(jié) (23)8參考文獻(xiàn) (24)引言DDS 同DSP(數(shù)字信號(hào)處理)一樣,是一項(xiàng)關(guān)鍵的數(shù)字化技術(shù)。DDS是直接數(shù)字式頻率合成器(Direct Digital Synthesizer)的英文縮寫。與傳統(tǒng)的頻率合成器相比,DDS具有低成本、低功耗、高分辨率和快速轉(zhuǎn)換時(shí)間等優(yōu)點(diǎn),廣泛使用在電信與電子儀器領(lǐng)域,是實(shí)現(xiàn)設(shè)備全數(shù)字化的一個(gè)關(guān)鍵技術(shù)。 DDS的性能特點(diǎn):DDS在相對(duì)帶寬、頻率轉(zhuǎn)換時(shí)間、高分頭放力、相位連續(xù)性、正交輸出以及集成化等一

5、系列性能指標(biāo)方面遠(yuǎn)遠(yuǎn)超過了傳統(tǒng)頻率合成技術(shù)所能達(dá)到的水平,為系統(tǒng)提供了優(yōu)于模擬信號(hào)源的性能。(1) 輸出頻率相對(duì)帶寬較寬 輸出頻率帶寬為50%fs(理論值)。但考慮到低通濾波器的特性和設(shè)計(jì)難度以及對(duì)輸出信號(hào)雜散的抑制,實(shí)際的輸出頻率帶寬仍能達(dá)到40%fs。 (2) 頻率轉(zhuǎn)換時(shí)間短 DDS是一個(gè)開環(huán)系統(tǒng),無任何反饋環(huán)節(jié),這種結(jié)構(gòu)使得DDS的頻率轉(zhuǎn)換時(shí)間極短。事實(shí)上,在DDS的頻率控制字改變之后,需經(jīng)過一個(gè)時(shí)鐘周期之后按照新的相位增量累加,才能實(shí)現(xiàn)頻率的轉(zhuǎn)換。因此,頻率時(shí)間等于頻率控制字的傳輸,也就是一個(gè)時(shí)鐘周期的時(shí)間。時(shí)鐘頻率越高,轉(zhuǎn)換時(shí)間越短。DDS的頻率轉(zhuǎn)換時(shí)間可達(dá)納秒數(shù)量級(jí),比使用其它的頻

6、率合成方法都要短數(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ù)性。正文1、 設(shè)計(jì)要求1. 基本設(shè)計(jì)要求a) 利用QuartusII軟件和SmartSOPC實(shí)驗(yàn)箱來實(shí)現(xiàn)DDS調(diào)制器的設(shè)計(jì);b) DDS中的波形存儲(chǔ)器模塊用Altera公司的Cyclone

7、系列FPGA芯片中的RAM實(shí)現(xiàn),RAM結(jié)構(gòu)配置成21210類型;c) 具體參數(shù)要求:頻率控制字K取4位;基準(zhǔn)頻率fc=1MHz,由實(shí)驗(yàn)板上的系統(tǒng)時(shí)鐘分頻得到;d) 系統(tǒng)具有清零和使能的功能;e) 利用實(shí)驗(yàn)箱上的D/A轉(zhuǎn)換器件將ROM輸出的數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),能夠通過示波器觀察到正弦波形;f) 通過開關(guān)(實(shí)驗(yàn)箱上的Ki)輸入DDS的頻率和相位控制字,并能用示波器觀察加以驗(yàn)證;2. 提高部分設(shè)計(jì)要求a) 通過按鍵(實(shí)驗(yàn)箱上的Si)輸入DDS的頻率和相位控制字,以擴(kuò)大頻率控制和相位控制的范圍;(注意:按鍵后有消顫電路)b) 能夠同時(shí)輸出正余弦兩路正交信號(hào);c) 在數(shù)碼管上顯示生成的波形頻率;d)

8、 充分考慮ROM結(jié)構(gòu)及正弦函數(shù)的特點(diǎn),進(jìn)行合理的配置,提高計(jì)算精度;e) 設(shè)計(jì)能輸出多種波形(三角波、鋸齒波、方波等)的多功能波形發(fā)生器;f) 自行添加其他功能。2、 工作原理介紹在進(jìn)行正式的實(shí)驗(yàn)操作前,我們需要先了解DDS的具體實(shí)現(xiàn)原理,方能進(jìn)行設(shè)計(jì)。圖1 DDS實(shí)現(xiàn)的原理圖根據(jù)以上的原理圖,下面以正弦波為例,對(duì)各個(gè)部分進(jìn)行簡(jiǎn)單介紹。波形存儲(chǔ)器,即為ROM,用于存儲(chǔ)波形數(shù)據(jù)。將一個(gè)周期內(nèi)的正弦波,分為2N份,取每一點(diǎn)坐標(biāo)下的正弦值,在將數(shù)據(jù)進(jìn)行處理,擴(kuò)展到0到2D-1中的取值。完成以上過程即完成了ROM數(shù)據(jù)的配置。N位是ROM的地址線寬度,即ROM中存有2N數(shù)據(jù);D位是ROM的數(shù)據(jù)線寬度,即

9、ROM輸出的數(shù)據(jù)范圍是0到2D-1,這與以上ROM的數(shù)據(jù)配置相互對(duì)應(yīng)。如果對(duì)ROM中數(shù)據(jù)逐一取值,輸出的為階梯波,但是通過D/A轉(zhuǎn)換即可恢復(fù)正弦波形,累加器就是用于此。但ROM中的數(shù)據(jù)也可以間隔取值,這樣會(huì)減少采樣點(diǎn)的個(gè)數(shù),但因?yàn)橄到y(tǒng)時(shí)鐘頻率fc=1MHz足夠大,遠(yuǎn)遠(yuǎn)大于Nyquist頻率,所以減少采樣點(diǎn),對(duì)恢復(fù)波形沒有影響,但是可以縮短一個(gè)波形的輸出時(shí)間(即TS),這樣就能提高輸出波形頻率。即通過改變數(shù)據(jù)取樣間隔,從而改變輸出頻率,達(dá)到頻率可控。頻率控制字K就用于改變采樣間隔,頻率控制字決定了累加器每次相加的數(shù)值,即在ROM中每個(gè)幾個(gè)數(shù)據(jù)取出一個(gè)輸出,這樣就達(dá)成了頻率控制??傮w電路圖如下:圖

10、2 DDS調(diào)制器總體電路圖3、 各個(gè)子模塊設(shè)計(jì)原理:(1) 頻率預(yù)置與調(diào)節(jié)電路作用:實(shí)現(xiàn)頻率控制量的輸入;不變量K被稱為相位增量,也叫頻率控制字。圖3 頻率控制字電路圖中ENP使能端接k5開關(guān)。控制電路采用循環(huán)計(jì)數(shù)方式,不再另外設(shè)置清零端。當(dāng)k5置1時(shí),74163開始加計(jì)數(shù)。當(dāng)k5置0時(shí),74163處于保持狀態(tài)。此時(shí)可由測(cè)頻電路顯示的頻率換算出頻率字。(2) 相位累加器相位累加器由12位的加法器和12位的寄存器組成,其原理圖如下所示:圖4 相位累加器相位累加器的作用是在頻率為1MHz的時(shí)鐘的作用下,進(jìn)行相位累加,當(dāng)相位累加器累加滿量時(shí)就會(huì)產(chǎn)生一次溢出,完成一個(gè)周期性的動(dòng)作。其中的加法器用VHD

11、L語言編寫,寄存器則由硬件實(shí)現(xiàn)。具體實(shí)現(xiàn)如下:1、加法器:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_signed.all;entity adder isport(op: in signed (14 downto 0);result: out signed (14 downto 0);end adder;architecture beh of adder issignal p: signed (14 downto 0);beginP=0001;result=OP

12、+P;end beh;2、 寄存器圖5 寄存器內(nèi)部電路op211.0端輸入的頻率字,控制步長(zhǎng),addr11.0端輸入的是寄存器中輸出的,這樣可以通過寄存器的clk脈沖控制地址線上的數(shù)值以步長(zhǎng)為間隔變化,這樣就可根據(jù)步長(zhǎng)對(duì)ROM中的數(shù)據(jù)進(jìn)行采樣。采用寄存器是考慮到result11.0端輸出的數(shù)據(jù)時(shí)間不統(tǒng)一,這樣將影響到取樣,并且要將數(shù)據(jù)進(jìn)行累加時(shí)也需要脈沖,這就要由累加器提供,這也說明了寄存器的作用。對(duì)累加器進(jìn)行波形仿真如下圖6 累加器仿真波形圖(3) 波形存儲(chǔ)器其作用是進(jìn)行波形的相位-幅值轉(zhuǎn)換。原理是: ROM的N位地址 把0O360O的正弦角度離散成具有2N個(gè)樣值的序列;ROM的D位數(shù)據(jù)位則

13、2N個(gè)樣值的幅值量化為D位二進(jìn)制數(shù)據(jù)。 圖7 音頻信號(hào)封裝模型 圖8 調(diào)制信號(hào)封裝模型圖9 音頻信號(hào)發(fā)生電路圖10 調(diào)制信號(hào)發(fā)生電路由電路圖可以看出音頻信號(hào)和調(diào)制信號(hào)采用同樣的發(fā)生方法,其結(jié)構(gòu)類似。故分析時(shí),僅以音頻信號(hào)為例。音頻信號(hào)發(fā)生電路主要由三部分組成:頻率控制字、累加器、記錄正弦波的ROM。頻率控制字與總電路中的頻率控制字類似。不同的是為了更好的進(jìn)行控制,增加了一個(gè)清零開關(guān)。電路結(jié)構(gòu)如左圖示。累加器結(jié)構(gòu)如前,不再作說明。電路中使用的正弦波利用MATLAB軟件生成波形并導(dǎo)入ROM中。MATLAB軟件用到的公式如下:a) T=2*pi/4096;t=0:T:2*pi;/正弦波 A=(1+s

14、in(t)*1023/2; B=round(A);b) T=2*pi/4096;t=0:T:2*pi-T;/方波 A=(1+square(t)*1023/2; B=round(A);c) T=2*pi/4096;t=0:T:2*pi-T;/鋸齒波 A=(1+sawtooth(t)*1023/2; B=round(A);d) T=2*pi/4096;t=0:T:2*pi-T;/三角波 A=(1+square(t,0.5)*1023/2; B=round(A);另外,通過更改參數(shù)可以形成二分之一的正弦波及四分之一的正弦波。本例實(shí)驗(yàn)中時(shí)間有限,僅以正弦波為例設(shè)計(jì)。其余波形僅作理論分析,不另作硬件仿真

15、。(4) D/A轉(zhuǎn)化器與低通濾波器D/A轉(zhuǎn)換器的作用有二。其一是把已經(jīng)合成的正弦波的數(shù)字量轉(zhuǎn)換成模擬量。 其二則是是濾除生成的階梯形正弦波中的高頻成分,將其變成光滑的正弦波,充當(dāng)?shù)屯V波器。(5) 調(diào)制與解調(diào)電路調(diào)制解調(diào)部分電路圖如下圖示:圖11 調(diào)制解調(diào)電路該部分電路有3個(gè)模塊組成:mul、adder、mul10。其中mul模塊接音頻信號(hào),mul10則接調(diào)制信號(hào)。adder模塊則與74163組合使用,控制m的取值范圍,使之產(chǎn)生或不產(chǎn)生過調(diào)制。各模塊均由VHDL語言編寫,具體實(shí)現(xiàn)如下:mul模塊LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.

16、std_logic_arith.aLL;USE ieee.std_logic_signed.all;USE ieee.std_logic_unsigned.all;ENTITY mul ISPORT (X:IN signed (9 downto 0);y:IN STD_LOGIC_VECTOR(3 downto 0);clk:in std_logic;result: OUT signed (14 downto 0);END mul;ARCHITECTURE mul_arch OF mul IS SIGNAL p: signed (4 downto 0);BEGINp= signed (0&y)

17、; PROCESS (clk) BEGIN IF (clkevent and clk=1) THEN result=X*p;END IF;END PROCESS;END mul_arch;adder模塊library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_signed.all;entity adder isport(op: in signed (14 downto 0);result: out signed (14 downto 0);end adder;architec

18、ture beh of adder issignal p: signed (14 downto 0);beginP=0001;result=OP+P;end beh;mul10模塊LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.aLL;USE ieee.std_logic_signed.all;USE ieee.std_logic_unsigned.all;ENTITY mul10 ISPORT (x:IN signed (9 downto 0);y:IN signed (14 downto 0);clk:in

19、 std_logic;result: OUT signed (9 downto 0);END mul10;ARCHITECTURE mul10_arch OF mul10 ISSIGNAL p: signed (24 downto 0);BEGIN PROCESS (clk)BEGIN IF (clkevent and clk=1) THEN P=X * Y;result=P(24 downto 15);END IF;END PROCESS;END mul10_arch;(6) 顯示測(cè)頻電路顯示測(cè)頻電路用于測(cè)量信號(hào)頻率,并將結(jié)果數(shù)字化顯示在數(shù)碼管中。其外部模塊如下圖: 圖12 顯示測(cè)頻電路模塊

20、 圖13 測(cè)頻模塊其中,測(cè)頻模塊封裝于顯示測(cè)頻模塊中。下面我們將對(duì)這兩個(gè)模塊進(jìn)行分析。1) 測(cè)頻模塊測(cè)頻電路用于測(cè)量發(fā)生波形的頻率,其原理圖如下:圖14 測(cè)頻電路原理圖原理波形圖如下:圖15 原理波形圖而其實(shí)際電路采用如下方式實(shí)現(xiàn):圖16 實(shí)際測(cè)頻電路圖測(cè)頻電路由計(jì)數(shù)器和寄存器兩部分組成。先對(duì)單位時(shí)鐘clk1進(jìn)行二分頻,在二分頻反相后的結(jié)果處于高電平時(shí),就使得計(jì)數(shù)器的使能端有效,計(jì)數(shù)器開始計(jì)數(shù),當(dāng)二分頻反相結(jié)果出現(xiàn)下降沿時(shí),計(jì)數(shù)器的結(jié)果就被寄存器鎖存后通過顯示電路輸出。電路中存在反相器會(huì)有延時(shí)效應(yīng),但是延時(shí)時(shí)間很短,只要小于待測(cè)信號(hào)周期即可,而根據(jù)最后的實(shí)驗(yàn)結(jié)果可知,測(cè)得的頻率最高只是幾千,所

21、以反相器的延時(shí)效應(yīng)對(duì)實(shí)驗(yàn)沒有太大影響。2) 顯示模塊顯示模塊內(nèi)部電路圖如下:圖17 顯示模塊內(nèi)部電路在顯示模塊內(nèi)部,testfrequency模塊為測(cè)頻電路的封裝,lpm_mux4為一28選4器件。m6模塊為用觸發(fā)器組成的模7計(jì)數(shù)器,配合74138構(gòu)成掃頻電路。seg為用VHDL語言編寫的譯碼顯示模塊?,F(xiàn)將各模塊內(nèi)部電路顯示如下:圖18 模7計(jì)數(shù)模塊內(nèi)部電路Seg模塊采用語言編寫,設(shè)計(jì)為16進(jìn)制顯示,單管顯示為0F:library ieee;use ieee.std_logic_1164.all;entity seg isport(bcd_led: in std_logic_vector(3

22、downto 0);ledseg: out std_logic_vector(6 downto 0);end seg;architecture beh of seg isbegin with bcd_led selectledseg= when 0000,-0 when 0001,-1 when 0010,-2 when 0011,-3 when 0100,-4 when 0101,-5 when 0110,-6 when 0111,-7 when 1000,-8 when 1001,-9 when 1010,-10 when 1011,-11 when 1100,-12 when 1101,

23、-13 when 1110,-14 when 1111,-15 when others;end beh;(7) 脈沖發(fā)生電路此電路實(shí)際上是分頻電路,把系統(tǒng)提供的48MHz頻率的時(shí)鐘信號(hào)分頻得到實(shí)驗(yàn)中用到的各種頻率的時(shí)鐘信號(hào)。電路如下: 圖19 脈沖發(fā)生電路圖中三個(gè)模塊為語言模塊,內(nèi)部實(shí)現(xiàn)方式一致,僅參數(shù)有所變動(dòng)?,F(xiàn)將48M分頻即kcoun1模塊內(nèi)部展開:LIBRARY IEEE;USE IEEE.std_logic_1164.ALL;USE IEEE.std_logic_unsigned.ALL;ENTITY kcoun1 ISPORT(A :IN std_logic; B :buffer s

24、td_logic);END kcoun1;ARCHITECTURE kcoun1_arc OF kcoun1 ISSIGNAL counter :std_logic;BEGINPROCESS(A)VARIABLE counter1:integer RANGE 0 TO ;CONSTANT md :integer := ;BEGINIF(Aevent AND A=1)THENIF (counter1 = md) THENcounter1 :=0;counter = NOT counter;B 1時(shí),波形將產(chǎn)生過調(diào)制。其中一種過調(diào)制波形截圖如下:圖20 過調(diào)制波形(注:此時(shí)需要修改音頻和載波模塊內(nèi)

25、部累加器的參數(shù)。)另外,通過多次硬件仿真可以發(fā)現(xiàn),仿真結(jié)果會(huì)出現(xiàn)相移和噪聲,現(xiàn)截圖如下。如何減小這一影響也是研究的方向。5、 設(shè)計(jì)過程中出現(xiàn)的問題及解決方法由于在做DDS實(shí)驗(yàn)之前,已經(jīng)有做過EDA實(shí)驗(yàn),所以基本的操作問題都已經(jīng)不再出現(xiàn),主要的問題是在于原理圖的設(shè)計(jì)細(xì)節(jié)。1. ROM中參數(shù)錯(cuò)誤在完成ROM參數(shù)設(shè)定,將ROM與累加器連好先后進(jìn)行電路編譯時(shí)卻報(bào)了錯(cuò),最后發(fā)現(xiàn)是ROM中參數(shù)設(shè)定出現(xiàn)了錯(cuò)誤,本應(yīng)該是0-1023,但在excel中利用公式計(jì)算而使得1024出現(xiàn)了,從而會(huì)報(bào)錯(cuò)。最后將512該成511.5即可,重新編譯即可通過。2. 提高精度后,波形錯(cuò)誤在進(jìn)行sin信號(hào)精度提高的時(shí)候,開始在sin_rom中存放的是sin信號(hào)前半部分的數(shù)據(jù),用result11作為切換正反相脈沖,這樣下載的波形正確了,但在加上相位

溫馨提示

  • 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)論