DDS 直接數(shù)字頻率合成器實(shí)驗(yàn)報(bào)告(DOC)
《DDS 直接數(shù)字頻率合成器實(shí)驗(yàn)報(bào)告(DOC)》由會(huì)員分享,可在線閱讀,更多相關(guān)《DDS 直接數(shù)字頻率合成器實(shí)驗(yàn)報(bào)告(DOC)(30頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、直接數(shù)字頻率合成器(DDS) 實(shí)驗(yàn)報(bào)告 課程名稱電類綜合實(shí)驗(yàn) 實(shí)驗(yàn)名稱直接數(shù)字頻率合成器設(shè)計(jì) 實(shí)驗(yàn)日期2015.6.1—2013.6.4 學(xué)生專業(yè)測(cè)試計(jì)量技術(shù)及儀器 學(xué)生學(xué)號(hào)114101002268 學(xué)生姓名陳靜 實(shí)驗(yàn)室名稱基礎(chǔ)實(shí)驗(yàn)樓237 教師姓名花漢兵 成績(jī) 5 摘要 直接數(shù)字頻率合成器(DirectDigitalFrequencySynthesizer簡(jiǎn)稱DDFS或DDS)是一種基于全數(shù)字技術(shù),從相位概念出發(fā)直接合成所需波形的一種頻率合成技術(shù)。本篇報(bào)告主要介紹設(shè)計(jì)完成直接數(shù)字頻率合成器DDS的過程。其輸出頻率及相位均可控制,且能輸出正弦波、余弦波、方波、鋸齒
2、波等五種波形,經(jīng)過轉(zhuǎn)換后在示波器上顯示。經(jīng)控制能夠?qū)崿F(xiàn)保持、清零功能。除此之外,還能同時(shí)顯示出頻率控制字、相位控制字和輸出頻率的值。實(shí)驗(yàn)要求分析整個(gè)電路的工作原理,并分別說明了各子模塊的設(shè)計(jì)原理,依據(jù)各模塊之間的邏輯關(guān)系,將各電路整合到一塊,形成一個(gè)總體電路。本實(shí)驗(yàn)在QuartusII環(huán)境下進(jìn)行設(shè)計(jì),并下載到SmartSOPC實(shí)驗(yàn)系統(tǒng)中進(jìn)行硬件測(cè)試。最終對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行分析并總結(jié)出在實(shí)驗(yàn)過程中出現(xiàn)的問題以及提出解決方案。 關(guān)鍵詞:QuartusII直接數(shù)字頻率合成器波形頻率相位調(diào)節(jié) Abstract TheDirectDigitalFrequencySynthesizerisatechno
3、logybasedonfullydigitaltechnique,afrequencycombinationtechniquesynthesesarequiredwaveformfromconceptofphase.ThisreportintroducesthedesigntothecompletionoftheprocessofdirectdigitalfrequencysynthesizerDDS.Theoutputfrequencyandphasecanbecontrolled,andcanoutputsine,cosine,trianglewave,squarewave,sawtoot
4、hwave,whicharedisplayedontheoscilloscopeafterconversation.Canbeachievedbythecontroltomaintainclearfunction.Furthercansimultaneouslydisplaythevalueofthefrequency,thephasecontrolwordandtheoutputfrequency.TheexperimentaldesignintheQuartusIIenvironment,thelasthardwaretestdownloadtoSmartSOPCexperimentals
5、ystem.Thefinalresultswillbeanalyzed,thematterwillbeputforwardandthesettlingplancanbegivenatlast. Keywords:QuartusIIDirectDigitalFrequencySynthesizerwaveformFrequencyandphaseadjustment 目錄 一、設(shè)計(jì)內(nèi)容4 二、設(shè)計(jì)原理4 2.1 DDS概念4 2.2 DDS的組成及工作原理4 三、設(shè)計(jì)要求6 3.1基本要求6 3.2提高要求6 四、設(shè)計(jì)內(nèi)容6 4.1分頻電路6 4.2頻率預(yù)置與調(diào)節(jié)電路10
6、 4.3累加器12 4.4波形存儲(chǔ)器(ROM)13 4.5測(cè)頻電路19 4.6譯碼顯示電路21 4.7消顫電路22 4.8總電路23 五、電路調(diào)試仿真與程序下載24 六、示波器波形圖25 七、實(shí)驗(yàn)中遇到的問題及解決方法25 八、電路改進(jìn)26 九、實(shí)驗(yàn)感想28 十、參考文獻(xiàn)28 一、設(shè)計(jì)內(nèi)容 設(shè)計(jì)一個(gè)頻率及相位均可控制的具有正弦和余弦輸出的直接數(shù)字頻率合成器(DirectDigitalFrequencySynthesizer簡(jiǎn)稱DDFS或DDS)。 二、設(shè)計(jì)原理 2.1 DDS概念 直接數(shù)字頻率合成器(DirectDigitalFrequencySynthesi
7、zer簡(jiǎn)稱DDFS或DDS)是一種基于全數(shù)字技術(shù),從相位概念出發(fā)直接合成所需波形的一種頻率合成技術(shù)。 2.2 DDS的組成及工作原理 DDS的基本組成結(jié)構(gòu)如下圖2-1所示,其主要由頻率預(yù)置與調(diào)節(jié)電路、累加器、波性存儲(chǔ)器(如正弦波數(shù)據(jù)表等)、D/A轉(zhuǎn)換器及低通濾波器等幾部分組成。 fc 圖2-1DDS整體電路工作原理圖 其中相位累加器由N位加法器和N位寄存器構(gòu)成。每來一個(gè)時(shí)鐘clock,加法器就將頻率控制字f與累加寄存器輸出的累加相位數(shù)據(jù)相加,相加的結(jié)果又反饋送至累加寄 control 存器的數(shù)據(jù)輸入端,以使加法器在下一個(gè)時(shí)鐘脈沖的作用下繼續(xù)與頻率控制字相加。這樣,相位累加
8、器在時(shí)鐘作用下,不斷對(duì)頻率控制字進(jìn)行線性相位累加。由此可以看出,相位累加器在每一個(gè)時(shí)鐘脈沖輸入時(shí),把頻率控制字累加一次,相位累加器輸出的數(shù)據(jù)就是合成信號(hào)的相位,相位累加器的溢出頻率就是DDS輸出的信號(hào)頻率。用相位累加器輸出的數(shù)據(jù)作為波形存儲(chǔ)器的相位取樣地址,這樣就可把存儲(chǔ)在波形存儲(chǔ)器內(nèi)的波形抽樣值(二進(jìn)制編碼)經(jīng)查找表查出,完成相位到幅值轉(zhuǎn)換。波形存儲(chǔ)器的輸出送到D/A轉(zhuǎn)換器,由 D/A轉(zhuǎn)換器將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào)輸出,DDS信號(hào)波流程示意圖如圖2-2所示。 圖2-2DDS工作流程示意圖 由于相位累加器為N位,相當(dāng)于把正弦信號(hào)在相位上的精度定為N位,所以分辨率 1 為一。若系統(tǒng)
9、時(shí)鐘頻率為f,頻率控制字f為1,則輸出頻率為 2Nccontrol out2N 這個(gè)頻率相當(dāng)于“基頻”若f為K,則輸出頻率為: control out c 2N 當(dāng)系統(tǒng)輸入時(shí)鐘頻率f不變時(shí),輸出信號(hào)的頻率由頻率控制字K所決定。由上式可 c 得: 2N?f K=fc 其中,K為頻率字,注意K要取整,有時(shí)會(huì)有誤差。 選取ROM的地址時(shí),可以間隔選項(xiàng),相位寄存器輸出的位數(shù)D—般取10-16位,這種截取方法稱為截?cái)嗍接梅ǎ詼p少ROM的容量。D太大會(huì)導(dǎo)致ROM容量的成倍上升,而輸出精度受D/A位數(shù)的限制未有很大改善。 圖2-3組裝模塊后的整體工作原理圖
10、 直接數(shù)字頻率合成器(DDS)實(shí)驗(yàn)報(bào)告 三、設(shè)計(jì)要求 3.1基本要求 (1) 用QuartusII軟件和SmartSOPC實(shí)驗(yàn)箱實(shí)現(xiàn)DDS的設(shè)計(jì); (2) DDS中的波形存儲(chǔ)器模塊用Altera公司的Cyclone系列FPGA芯片中的ROM實(shí)現(xiàn),ROM結(jié)構(gòu)配置成4096X10類型; (3) 具體參數(shù)要求:頻率控制字K取4位;基準(zhǔn)頻率fc=lMHz,由實(shí)驗(yàn)板上的系統(tǒng)時(shí)鐘分頻得到; (4) 系統(tǒng)具有清零和使能的功能; (5) 利用實(shí)驗(yàn)箱上的D/A轉(zhuǎn)換器件將ROM輸出的數(shù)字信號(hào)轉(zhuǎn)換為模擬信號(hào),能夠通過示波器觀察到正弦波形; (6) 通過開關(guān)(實(shí)驗(yàn)箱上的Ki)輸入DDS的頻率和相
11、位控制字,并能用示波器觀察加以驗(yàn)證。 3.2提高要求 (1) 通過按鍵(實(shí)驗(yàn)箱上的Si)輸入DDS的頻率和相位控制字,以擴(kuò)大頻率控制和相位控制的范圍;(注意:按鍵后有消顫電路) (2) 能夠同時(shí)輸出正余弦兩路正交信號(hào); (3) 在數(shù)碼管上顯示生成的波形頻率; (4) 充分考慮ROM結(jié)構(gòu)及正弦函數(shù)的特點(diǎn),進(jìn)行合理的配置,提高計(jì)算精度; (5) 設(shè)計(jì)能輸出多種波形(三角波、鋸齒波、方波等)的多功能波形發(fā)生器; (6) 基于DDS的AM調(diào)制器的設(shè)計(jì); (7) 自己添加其他功能。 四、設(shè)計(jì)內(nèi)容 4.1分頻電路 硬件電路的內(nèi)部時(shí)鐘為48MHz,使用前必須將它分配至我們需要的0.5H
12、z、1Hz、2Hz、1KHz和1MHz。分頻電路由多個(gè)計(jì)數(shù)器組合而成,主要是由2分頻/3分頻/10分頻這三種基本分頻電路以不同形式組合構(gòu)成。各子分頻的輸出最好取計(jì)數(shù)器輸出的最高位,這樣分出的頻率脈沖占空比較大。下圖為總分頻電路流程圖: 圖4T總分頻電路流程圖 4.1.1二分頻電路 二分頻電路由一個(gè)D觸發(fā)器及一個(gè)非門實(shí)現(xiàn),通過將D觸發(fā)器的Q和Q相連,在Q 端即得到一連串的二分頻信號(hào),實(shí)驗(yàn)電路圖及封裝圖如下: 圖4-2二分頻電路圖 drv2 div2(i 圖4-3二分頻電路封裝圖 其仿真波形為: 圖4-4二分頻電路的仿真波形 4.1.2三分頻電路 三分頻電路通過74
13、160用置數(shù)法實(shí)現(xiàn),其輸出端QQQQ按照0000t0001t0010 DCBA 的方式循環(huán)計(jì)數(shù)就可以對(duì)其輸入的脈沖進(jìn)行三分頻,輸出信號(hào)由0引出。其電路圖及封B 裝圖如下圖所示: hsl LDN A B CL4 0 QB D QC ENT QD ENP RCO CLRN CLK COUNTER -護(hù):■■::..:<::>:...:<::>:.:>:?.:>:.:>:.:>:.:>:<.-:>:^ 3 ivd 2-C IVd 圖4-5三分頻電路圖 圖4-6三分頻電路封裝圖 其仿真波形為: IT:iiTie V:ilue
14、at 15.93ns 畛0 div3i A1 a1 div3o A0 3ps 15.925ns J 40.0ns 80.0ns 120.0ns 160.0ns 200.0ns 240.0ns 280.0ns 320.0ns r 圖4-7三分頻電路的仿真波形 4.1.3八分頻電路 八分頻電路實(shí)際上就是三個(gè)二分頻電路相串聯(lián)而成,其電路圖及封裝圖如下圖所示: 30 圖4-8八分頻電路圖 divS inst 圖4-9八分頻電路封裝圖 15.93ns □^0 div8i A1 妙1 ■11¥00 A1
15、其仿真波形為: ]ps80.0ns160.0ns240.0ns320.0ils400.0ns480.0ils560.0ns640.0ns720.0ils800.0ns880.0ils960.0njiiiiiiiiiiii 15.925ns 1 i1 I 11 J 圖4-10八分頻電路的仿真波形 4.1.4十分頻電路 十分頻點(diǎn)路由一片74163和一個(gè)與非門得到,在1100時(shí)置數(shù)0011,計(jì)數(shù)器循環(huán)方式 如下所示: 0000T0001T0010T0011T0100T0101T0110T0111TJ 1100J1011
16、J1010J1001J1000 圖4-11十分頻電路計(jì)數(shù)循環(huán)圖 取最高位Q4為計(jì)數(shù)器的輸出端’內(nèi)部結(jié)構(gòu)及其封裝圖如下圖所示: .芒打尹芒打芒0尹芒打/芒打尹住■ . div10 i ■ divlQi divlOo i纟 If inst £羞 圖4-12十分頻電路圖 圖4-13十分頻電路封裝圖 其仿真波形為: Jps80.0ns160.0ns240.0he320.0ns400.0ns480.0he560.0ns640.0ns720.0he800.0ns880.0ns960.0 fiiiiiiiiiiii N:aroe
17、 0ps 3ps ...0i A0 ...匚1口 A0 ■iiiiii■i1iiiii■iiitiiiiiiiitiiiii1i■iiiii■ IIIII I1111111 iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
18、iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii 圖4-14十分頻電路的仿真波形 從波形仿真圖可以看出,10個(gè)脈沖信號(hào)為一個(gè)周期,且高低電平之比為1:1,符合要求。 4.1.5千分頻電路 1000分配電路實(shí)際上是三個(gè)10分頻電路相串聯(lián)得到的。其波形圖及封裝圖如下圖: 圖4-151000分頻電路圖 divKlOOidiv1QQOd irtst 圖4-161000分頻電路封裝圖 其仿真波形為: 1^0 ??1 djqrlOOO
19、i 圖4-171000分頻電路的仿真波形 4.1.6總分頻電路 總分頻電路圖及封裝圖如圖所示: 圖4-18總分頻電路圖 圖4-19總分頻電路封裝圖 4.2頻率預(yù)置與調(diào)節(jié)電路 頻率預(yù)置與調(diào)節(jié)電路的主要作用是實(shí)現(xiàn)頻率控制量的輸入,不變量K為相位增量, K?f 也叫頻率控制字。DDS的輸出頻率表達(dá)式為f=—-厶,當(dāng)K=1時(shí),DDS輸出最低頻率 out2N (也即頻率分辨率)為f,而DDS的最高輸出頻率由Nyquist采樣定理決定,即f, 也就是說K的最大值為2N-1。 設(shè)計(jì)頻率調(diào)節(jié)模塊時(shí),采用74160設(shè)計(jì)模32計(jì)數(shù)器來產(chǎn)生頻率控制字,1Hz信號(hào)輸入讓其變化
20、,目的是為了使輸出頻率的調(diào)節(jié)范圍更大一些。該模塊為了節(jié)省開關(guān)以后續(xù)可控制波形選擇輸出,設(shè)有清零保持端,由開關(guān)控制,以便計(jì)數(shù)到需要值時(shí)保持或清零。輸出為8位BCD碼,高四位是十位,低四位是個(gè)位。此時(shí)要在計(jì)數(shù)器后接一個(gè)碼轉(zhuǎn)換電路,將BCD碼轉(zhuǎn)換為二進(jìn)制碼,再輸入累加器進(jìn)行累加。同樣的可以設(shè)計(jì)出相位調(diào)節(jié)模塊。需要注意的是,這里的加法器是12位的,因此要將頻率控制字作為12位地址的低7位輸出,高5位賦值為0,這樣可以使頻率調(diào)節(jié)的精度更高。而相位控制字要作為12位地址的高7位輸出,低5位賦值為0,這樣可以使相位調(diào)節(jié)幅度變大。最好讓相位增量和相位 控制字通過寄存器,時(shí)鐘為1MHz的系統(tǒng)時(shí)鐘,使得電路同步
21、工作。模32電路圖、BCD 碼至二進(jìn)制碼的轉(zhuǎn)換電路圖以及頻率相位同步圖如下所示: 圖4-20模32計(jì)數(shù)器電路圖 W二I、洱T-.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.'.v.v.-.v.v.v.v.v.v.v.v.v.-.v.v.vJ.vTivTI'.v.v.-.v-..毆s跑、J--f--|>L. A B C ¥4 D Y5 E YE GN Y7 ¥8 74184 ;G\D: 泊BCD-BINARY ibin[t].. i Y1 A B y. C Y4 D
22、YS E Y& GN Y7 YS ??r:2:.. x 74184 「mt-BCD-BINARY 訂聽!盒 圖4-21BCD碼至二進(jìn)制碼的轉(zhuǎn)換電路圖 1D 1Q 2D 2Q 2D 3Q 4D 4Q 5D 5Q 6D SQ CLRN CLK 74174 REGISTER 1D 1Q 2D 2Q 3D 3Q 4D 4Q 5D SQ 6D &Q CLRN CLK 74174 \instiREGISTER 君二〒Q二〒 bin[e..O] >([110] :Im
23、lu:|、比匹—=■ 圖4-22頻率相位同步圖 其封裝圖如圖所示: 圖4-23頻率相位封裝圖 圖4-24累加器流程圖 4.3累加器 相位累加器由12位加法器與12位寄存器級(jí)聯(lián)構(gòu)成,如下圖所示。 fc 每來一個(gè)時(shí)鐘脈沖,加法器就將頻率控制字K與累加寄存器輸出的累加相位數(shù)據(jù)相加,相加的結(jié)果又反饋送至累加寄存器的數(shù)據(jù)輸入端,寄存器將加法器的上一個(gè)時(shí)鐘作用后所產(chǎn)生的相位數(shù)據(jù)反饋至加法器的輸入端,以使加法器在下一個(gè)時(shí)鐘脈沖的作用下繼續(xù)與頻率控制字相加。這樣,相位累加器在時(shí)鐘作用下,不斷對(duì)頻率控制字進(jìn)行線性相位累加。當(dāng)相位累加器累加滿量時(shí)就會(huì)產(chǎn)生一次溢出,完成一個(gè)周期性的動(dòng)
24、作。累加器電路圖 及封裝圖如下圖所示: 豈0] 74174 ID IQ 2D 2Q 3D 3Q 4D 4Q 5D 5Q 6D 6Q CLRN CLK ■^7 s[4] *4心 hnet3”REGISTER, y[61s[6l y[ij■v■■s[7]. ¥P]-XA三二 y[3].V'-s[9] '/K-A=:::: -■■?--:???‘??J…?…<-??? .1mhz .■-■. 74174 ID 1Q 2D 2Q 3D
25、3Q
4D
4Q
5D
5Q
6D
6Q
CLRN
CLK
?.■■■■.?
:
-—+:■■〔--*;- 26、。為了能讓電路輸出五種波形,使用五塊不同的波形存儲(chǔ)器分別存放這五種波形一個(gè)周期內(nèi)的數(shù)據(jù)??紤]到硬件包括兩塊相同的DAC板,正弦波的輸出值直接在DACO板上,其余四種波的輸出值經(jīng)過一個(gè)四選一數(shù)據(jù)選擇器,由兩個(gè)開關(guān)控制選擇波形輸出到
DAC1板。LPM_ROM的設(shè)定則由mif文件產(chǎn)生五個(gè)ROM的數(shù)據(jù)值。在元器庫種選取LPM_ROM,設(shè)置ROM信息,數(shù)據(jù)寬度為lObits,數(shù)據(jù)個(gè)數(shù)為4096,設(shè)置ROM為寄存器輸出,指定ROM的初始化數(shù)據(jù)來源,選擇由MATLAB軟件生成的mif文件,然后點(diǎn)
擊“finish”即可生成ROM單元。
MegaWizardPlug-InManager[page2c] 27、
SelectedMegafunctions:
|LPMROM
Whichtypeofoutputfiledoyouwanttocreate?
CAHDL
GVHDL
CVerilogHDL
Whatnamedoyouwantfortheoutputfile?Browse...
|D:\70quartuswindows\quartus\dds\sinrom
Note:TocompileaprojectsuccessfullyintheQuartusIIsoftware,yourdesignfilesmustbeintheprojectdirectory,intheglobal 28、userlibrariesspecifiedintheOptionsdialogbox(Toolsmenu),orauserlibraryspecifiedintheUserLibrariespageoftheSettingsdialogbox(Assignmentsmenu).
Yourcurrentuserlibrarydirectoriesare:
廠Don'taskmeforanoutputfilenameortheoutputfileformatagain.
Infuture,nameoutputfilesautomaticallyandusethecurrentoutputf 29、ileformat.
(Note:YoucanturntheBlockEditor'sautonamingandautoformatselectiononandoffwiththeOptionscommandintheToolsmenu.)
CancelI”Next〉|
圖4-28設(shè)置LPM_ROM方法
4.4.1各波形對(duì)應(yīng)mif文件的生成
%存儲(chǔ)單元數(shù);
%數(shù)據(jù)寬度為10位;
(1) 正弦波
depth=4096;widths=10;
N=0:1:4096;
s=sin(pi*N/2048);fidc=fopen('sin.mif','wt');
%計(jì)算0~ 30、pi/2的Sin值;
%以"wt"的形式打開八n為換行
%寫入dds.mif%fprintf(fidc,'depth=%d;\n',depth);
fprintf(fidc,'width=%d;\n',widths);fprintf(fidc,'address_radix=dec;\n');fprintf(fidc,'data_radix=dec;\n');
fprintf(fidc,'ContentBegin\n');
for(x=1:depth)
fprintf(fidc,'%d:%d;\n',x-1,round(2047*sin(pi*(x-1)/2048)+2048));
31、
endfprintf(fidc,'end;');fclose(fidc);
k=1:1:depth;
plot(k,(2047*sin(pi*(k-1)/2048)+2048));%畫圖
圖4-29matlab生成正弦波圖形
(2) 余弦波
depth=4096;widths=10;
N=0:1:4096;
%存儲(chǔ)單元數(shù);
%數(shù)據(jù)寬度為10位;
s=cos(pi*N/2048);
%計(jì)算0~pi/2的cos值;
fidc=fopen('cos.mif','wt');
%以"wt"的形式打開,\n為換行
%寫入dds.mif%
fprintf(fid 32、c,'depth=%d;\n',depth);
fprintf(fidc,'width=%d;\n',widths);
fprintf(fidc,'address_radix=dec;\n');
fprintf(fidc,'data_radix=dec;\n');fprintf(fidc,'ContentBegin\n');
for(x=1:depth)
fprintf(fidc,'%d:%d;\n',x-1,round(2047*cos(pi*(x-1)/2048)+2048));end
fprintf(fidc,'end;');
fclose(fidc);
k=1:1:de 33、pth;
plot(k,round(2047*cos(pi*(k—1)/2048)+2048))%畫圖
圖4-30matlab生成余弦波圖形
(3) 方波
depth=4096;widths=10;
forn=1:2048s(n)=4095;s(n+2048)=1;
end
%存儲(chǔ)單元數(shù);
%數(shù)據(jù)寬度為10位;
fidc=fopen('fb.mif','wt');%以"wt"的形式打開,\n為換行
%寫入dds.mif%
fprintf(fidc,'depth=%d;\n',depth);
fprintf(fidc,'width=%d;\n',wid 34、ths);
fprintf(fidc,'address_radix=dec;\n');
fprintf(fidc,'data_radix=dec;\n');
fprintf(fidc,'ContentBegin\n');
forx=1:1:depth
fprintf(fidc,'%d:%d;\n',x-1,s(x));
end
fprintf(fidc,'end;');fclose(fidc);
k=1:1:depth;
plot(k,round(s))%畫圖
5K-
1SQ02KflJDW35404^K-4拓口
圖4-31matlab生成方波圖形
(4)鋸齒 35、波
depth=4096;
%存儲(chǔ)單元數(shù);
widths=10;
%數(shù)據(jù)寬度為10位;
forn=1:2048
s(n)=n;
s(n+2048)=n;
end
fid=fopen('jcb.mif','wt');%以"wt"的形式打開,\n為換行
%寫入dds.mif%
fprintf(fid,'depth=%d;\n',depth);
fprintf(fid,'width=%d;\n',widths);
fprintf(fid,'address_radix=dec;\n');
fprintf(fid,'data_radix=dec;\n');
36、fprintf(fid,'ContentBegin\n');
for(x=1:depth)
fprintf(fid,'%d:%d;\n',x-1,s(x));
end
fprintf(fidc,'end;');
fclose(fidc);
k=1:1:depth;
plot(k,round(s))
圖4-32matlab生成鋸齒波圖形
(5)三角波
depth=4096;%存儲(chǔ)單兀數(shù);
widths=10;%數(shù)據(jù)寬度為10位;
forn=1:2048
s(n)=2*(n-1);
s(n+2048)=2*(2048-n);
end
fidc=fopen(' 37、sjb.mif','wt');%以"可七"的形式打開,\n為換行
%寫入dds.mif%
fprintf(fidc,'depth=%d;\n',depth);
fprintf(fidc,'width=%d;\n',widths);
fprintf(fidc,'address_radix=dec;\n');
fprintf(fidc,'data_radix=dec;\n');
fprintf(fidc,'ContentBegin\n');
for(x=1:depth)
fprintf(fidc,'%d:%d;\n',x-1,s(x));
end
fprintf(fidc,'e 38、nd;');
fclose(fidc);
k=1:1:depth;
plot(k,round(s))
圖4-33matlab生成三角波圖形
4.4.2五種波形存儲(chǔ)器的封裝圖及選擇電路圖
lpm_muxO
sinrom
address[11..O]
》clock
c[&..0]
Lsiri[S/C
d日怕:M9..01
d日怕2x0.01
d日怕(M9..01
irt5t5
inst3
圖4-34五種波形存儲(chǔ)器的封裝圖及選擇電路圖
4.5測(cè)頻電路
4.5.1測(cè) 39、頻電路原理
數(shù)碼管的右邊四位用來輸出頻率控制字與相位控制字,左邊四位用來顯示相應(yīng)的波形頻率,需設(shè)計(jì)測(cè)頻電路來測(cè)量頻率。
測(cè)頻就是計(jì)算1秒鐘內(nèi)脈沖的個(gè)數(shù)。可以利用計(jì)數(shù)器和鎖存器實(shí)現(xiàn)這一功能。通過觀
察可知,每當(dāng)輸出一個(gè)周期的波形時(shí),波形數(shù)據(jù)輸出的最高位也變化一周期,因此可以用
它q[9]來表征輸出波形的頻率。測(cè)頻電路原理圖如下圖所示:
圖4-35測(cè)頻電路原理圖
使用模10000的計(jì)數(shù)器來統(tǒng)計(jì)輸出波形的頻率,時(shí)鐘即為測(cè)頻脈沖。將0.5Hz脈沖送入鎖存器的時(shí)鐘端,0.5Hz反相延時(shí)后的脈沖送入計(jì)數(shù)器的清零端。這樣就使計(jì)數(shù)器在2s的脈沖周期內(nèi),1s內(nèi)清零,1s內(nèi)計(jì)數(shù)。由于鎖存器 40、的脈沖和計(jì)數(shù)器的脈沖是反相的,且有一定的延時(shí),所以當(dāng)鎖存器有效脈沖來到時(shí),計(jì)數(shù)器是計(jì)數(shù)的末狀態(tài),鎖存器就鎖存前1S內(nèi)計(jì)數(shù)器的計(jì)數(shù)信號(hào)。這樣就完成了1s內(nèi)的脈沖計(jì)數(shù),再將鎖存器的輸出送入譯碼顯示電路,就可以在數(shù)碼管上顯示波形頻率了。
4.5.2測(cè)頻電路及封裝圖
74160
*■
LDN
A
B
QA
C
QB
D
QC
ENT
QD
ENP
RCO
CLRN
CLK
COUNTER
.Isehiihz
?X
「klk二
X
74173
1D
2D
3D
▽
4D
G1N
G2N
MN
NN
CLR
CLK
1D 41、
2D
■b[2]
3D
4D
G1N
G2N
3Q
4Q
CLR
CLK
1CL
2Q
MN
NN
a[1]
T:
半]
T:
b[OJ.
…ijns.t5REGISTER
semihz
74160
LDN
A
B
QA
C
QB
D
QC
ENT
QD
ENP
RCO
CLRN
CLK
COUNTER
74173
■聊
1D
2D
3D
4D
G1N
G2忖
1Q
2Q
MN
NN
instSREGISTER
74160
剛::
b[.1J
42、
?b[2]l?
?b[3]|.X
LDN
A
B
QA
C
QB
D
QC
ENT
QD
ENP
RCO
CLRN
CLK
COUNTER
??叩]
??圖
??咽
,宀
k
F
■■
L
F
■■
L
r
r
■■
L
?
F
.semihz
CLR
74173
CLK
1D
2D
期;
c[l].'
IQ
2Q
4Q
TW
W
instTREGISTER
74160
LDN
A
43、
B
QA
C
QB
D
QC
EMT
QD
ENP
RCO
CLRN
CLK
COUNTER
r—
??-
L
0
■■
L
■■
L
r
F
■■
L
.semihz
.
3D
4D
G1N
G2N
CLR
MN
NN
74173
CLK
?諭
>
期?
IQ
20
4Q
instSREGISTER
ihz觸f““
.K=emihz
二
ra[3..0i
fb[3..0i
fdl[ 44、3..O]
何[1]
記[2]
rd[O]|
圖4-36測(cè)頻電路圖
elk
s&mihz
呵3..匚
.seraihc.
cepindianlu
inst4
圖4-37測(cè)頻電路封裝圖
4.6譯碼顯示電路
4.6.1譯碼顯示電路原理
DIGO
圖4-38譯碼顯示電路原理圖
DIG1
DIG2
DIG3
DIG4
DIGS
顯示電路主要由數(shù)據(jù)選擇器74151、譯碼器74138、計(jì)數(shù)器、顯示譯碼器7447和數(shù)碼顯示管組成,計(jì)數(shù)器74161設(shè)計(jì)為模8的循環(huán)計(jì)數(shù)器,其輸出既作 45、為四片74151的控制端,又作為3-8譯碼器74138的控制端。當(dāng)計(jì)數(shù)器計(jì)數(shù)到某一個(gè)數(shù)值時(shí),四片74151同時(shí)選取對(duì)應(yīng)位的輸入組成計(jì)時(shí)器某一位的BCD編碼,接入顯示譯碼器7447,與此同時(shí)根據(jù)計(jì)數(shù)器的數(shù)值,74138譯碼器也通過數(shù)碼管的使能端選擇對(duì)應(yīng)位有效,從而在實(shí)驗(yàn)箱上顯示數(shù)據(jù)。掃描的頻率為1KHz,因?yàn)槿搜鄣囊曈X停留,會(huì)感覺七個(gè)數(shù)碼管同時(shí)顯示。
4.6.2譯碼顯示電路圖
74161
74161
74161
74151
O0]■wpipfpW
ABCDO
D1
D2
D3
D4
D5
D6
D7
Y
WN
MULTIPLEXER
74160
fW
ID 46、OOhz..
T-
■£..i
*汽二!
xphi]!
XpM11^
—1
Xfb[lj;
]='
X二;:
:::.^^
ABCDOD1
D2
D3
D4
D5
D6
D7
GN
Y
WN
F-
.£..
Xil[2]
fh[2]
^W
fb[2]
■.gnd.
A
B
C
DO
D1
D2
D3
D4
D5
D6
D7
GN
Y
WN
inst2MULTIPLEXER
b-
Xil[3]
:込血[3]
:^W
:lb[3]
:Id[3]
渦???
ABCDOD1
D2
D3
D4
D 47、5
D6
D7
GN
Y
WN
ph[30]
:型3..0]
圖MULTIPLEXER
fd[3..O]
I6XHZ'
,'czz>3^£-
LDN
A
B
QA
C
QB
D
QC
ENT
QD
ENP
RCO
CLRN
CLK
:[iiet.10countcr
3.
~b
74138
YON
A
Y1N
B
Y2NI
C
Y3N
G1
Y4N
G2AN
Y5N
G2BN
Y6N
Y7NI
1^113:5DECODER
遞;:
T^:::
_t$:2::
—^:注: 48、「
-3^:::-■
-:
777^:::TTT^:::
-訊
~y2
7447
A
OA
B
OB
C
OC
D
OD
LTN
OE
RBIN
OF
BIN
OG
RBOM
TBCDTO7SEG
::::
圖4-39譯碼顯示電路圖
digp.-O]^.
圖4-40譯碼顯示電路封裝圖
4.7消顫電路
消顫開關(guān)由D觸發(fā)器構(gòu)成,利用D觸發(fā)器鎖存開關(guān)的動(dòng)作信號(hào),并且屏蔽抖動(dòng)。消
顫電路如下所示:
圖4-41消顫電路圖
ko[5..Dl..
—X
...Ikhz.
:Xki[5.. 49、
圖4-42消顫電路封裝圖
4.8總電路
總電路如下圖4-41所示:
:ko[3]
.1mhz
kcp
PP-.O]
kp
ph[3..Q]
ktkef
othersout[9..0]
fh[3..O]
1hz
fl[3..O]
Imfiz
sineout[9..(}]
k[1..O]
pinlvxiangwei
irtst3
!as
lq[S-Oj
Lfti[3..O]!
*PtS-'l
p二〒%:〒j廠嘉匸呢"
紅汗也〒?…?…j證訂蔽匿
圖4-43總電路圖
五、電路調(diào)試仿真與程序下載
每部分模塊設(shè)計(jì)好后均需對(duì)其仿真。波 50、形仿真正確無誤后,就可以下載到芯片上,進(jìn)行硬件實(shí)施。在下載之前,必須先對(duì)每個(gè)管腳進(jìn)行分配。選擇“Assignments-Pins"中的“PinPlanner"對(duì)話框,每個(gè)管腳都配置完成后,點(diǎn)擊“Save"保存配置并關(guān)閉窗口。把未使用的管腳設(shè)置為高阻抗?fàn)顟B(tài),之后下載,在硬件上觀察波形和數(shù)據(jù),驗(yàn)證程序是否正確。管腳分配如下:
NodeName/
Direction
Location
I/OBank
VrefGroup
I/OStandard
Reserved|Group
1
?48mhz
Input
PINA10
7
B7N0
2.5V(default)
2
51、
dalmode
Output
PINF6
8
B8N0
2.5V(default)
3
da2mode
Output
PINH6
1
BlN0
2.5V(default)
4
adadk
Output
PINA2
8
B8N0
2.5V(default)
5
adig[O]
Output
PINH15
6
B6N0
2.5V(default)
dig[7..O]
6
?dig[l]
Output
PINE14
7
B7N0
2.5V(default)
dig[7..O]
7
?dig[2 52、]
Output
PINA18
7
B7N0
2.5V(default)
dig[7..O]
3
0digH
Output
PIND16
7
B7N0
2.5V(default)
dig[7..O]
9
adig[4]
Output
PINL14
5
B5N0
2.5V(default)
dig[7..O]
10
0dig[5]
Output
PINL16
5
B5N0
2.5V(default)
dig[7..O]
11
adig[6]
Output
PINH16
6
B6N0
2.5V(default 53、)
dig[7..0]|
12
?dig[7]
Output
PINJ13
6
B6N0
2.5V(default)
dig[7..0]|
13
?ki[0]
Input
PINV9
3
B3N0
2.5V(default)
ld[5..0]
14
?ki[l]
Input
PINU10
4
B4N0
2.5V(default)
ld[5..0]
15
PIda
Input
PINB9
8
B8N0
2.5V(default)
ki[5..O]
16
?kiH
Input
PINB10
7
B7N 54、0
2.5V(default)
ki[5..0]|
17
Aki[4]
Input
PINR18
5
B5N0
2.5V(default)
ki[5..0]
18
Aki[5]
Input
PINR17
5
B5N0
2.5V(default)
ki[5..0]
19
jp[0]
Output
PINP1
2
B2N0
2.5V(default)
P[9--0]
20
■—p[l]
Output
PINM1
2
B2N0
2.5V(default)
p[9..O]
21
jpH
Output
PIN 55、L1
2
B2N0
2.5V(default)
p[9..O]
22
jPH
Output
PINK1
2
B2N0
2.5V(default)
PB-.O]
23
jPM
Output
PINH1
1
BlN0
2.5V(default)
p[9..O]
24
jp[5]
Output
PING1
1
BlN0
2.5V(default)
p[9..O]
25
jp同
Output
PINE1
1
BlN0
2.5V(default)
p[9..O]
26
■—p[7]
Output
PINC 56、1
1
BlN0
2.5V(default)
p[9..O]
圖5-1管腳分配圖
六、示波器波形圖
示波器波形圖如下圖所示:
圖6-1示波器波形圖(部分)
七、實(shí)驗(yàn)中遇到的問題及解決方法
本科三年級(jí)的時(shí)候我們專業(yè)學(xué)過可編程邏輯器件這門課,當(dāng)時(shí)對(duì)這門課很感興趣,初次接觸QuartusII軟件,發(fā)現(xiàn)這個(gè)軟件和MAXPlusII軟件有很多相似之處。在做實(shí)驗(yàn)之前,我用周末的時(shí)間自學(xué)了QuartusII軟件。實(shí)驗(yàn)過程中,在將程序下載到實(shí)驗(yàn)箱之前我對(duì)每個(gè)部分都做了波形仿真,仿真的結(jié)果也是正確的,但出乎意料的是程序下載到實(shí)驗(yàn)箱以后結(jié)果卻是錯(cuò)的,不過倒是可以通過實(shí)驗(yàn)結(jié)果找出可能 57、出現(xiàn)錯(cuò)誤的地方,這是讓我覺得收獲很大的經(jīng)驗(yàn)。數(shù)碼管是可以顯示數(shù)字的,說明錯(cuò)誤不在顯示模塊,最終發(fā)現(xiàn)主要問題是測(cè)頻電路的問題。影響測(cè)頻電路輸出的主要有三方面因素:一方面是輸入0.5Hz的頻率,一方面是測(cè)頻電路內(nèi)部電路設(shè)計(jì)合理性問題,最后是輸入時(shí)鐘信號(hào)。0.5Hz與分頻電路設(shè)計(jì)合理性有關(guān),最好采用同步分頻電路。輸入時(shí)鐘信號(hào)可有多種選擇途徑,一種是選擇累加器的溢出信號(hào),一種是選擇q[9]作為輸入信號(hào)。處于穩(wěn)定性考慮,選擇q[9]作為輸入信號(hào)最佳。
八、電路改進(jìn)
考慮到正弦波、余弦波、方波、鋸齒波和三角波在一個(gè)周期內(nèi)的波形都具有很強(qiáng)的對(duì)稱性,可以在ROM中只存儲(chǔ)1/4周期的波形,剩下3/4周期的波 58、形可以利用對(duì)稱性,通過前1/4周期的波形計(jì)算得到。各取正弦波、余弦波、方波、鋸齒波、三角波的前1/4周期數(shù)據(jù),整合到一個(gè)深度為4096、位數(shù)為10的ROM中。這樣輸出不同波形時(shí)所查找的ROM相同,大大節(jié)省了ROM的空間。因?yàn)椴檎?/4周期波形的數(shù)據(jù)只需要低10位地址即可,高2位地址可以通過置數(shù)來選擇要查找的波形,如表8-1所示。再對(duì)取反操作后的ROM輸出值進(jìn)行一個(gè)選擇的組合,通過LPM_ROM這個(gè)模塊來實(shí)現(xiàn),最后輸出完整的正弦波形。
表8-1最咼兩位與輸出關(guān)系
a[11]
a[10]
地址、數(shù)值操作
rom輸出
0
0
地址、數(shù)值均不取反
sin11
0
1
地址取反, 59、數(shù)值不變
sin22
1
0
地址不表,輸出取反
sin33
1
1
地址、數(shù)值均取反
sin44
取反電路是由9個(gè)非門構(gòu)成的,其電路圖及封裝圖如下:
i—|>菲.二
圖8-1取反電路圖
LPM_ROM1空間里存放著的是四分之一周期的數(shù)據(jù)地址及其對(duì)應(yīng)著的數(shù)值,
sinll[9..O]代表著的是第一個(gè)1/4周期的波形數(shù)值;sin22[9..O]代表著的是第二個(gè)1/4周期
的波形數(shù)值,其先進(jìn)行了地址取反;sin33[9..O]代表著的是第三個(gè)1/4周期的波形數(shù)值,
其進(jìn)行了數(shù)值取反的操作;sin44[9..O]代表著的是第四個(gè)1/4周期的波形數(shù)值,其不僅地
址 60、取反而且數(shù)值也取反了。將四個(gè)1/4周期的修改后的sin波形作為L(zhǎng)PM_ROM的輸入,
ksine[1..O]作為選擇并輸出,最終輸出的sin[9..O]為四段組合后的正弦波形。
!ipm「ornV?
:inst!
address[9..O]
〉clock
q[9』]
lpmi_muxO
qufandianlu
::::::::::q[9..()1:!
;;;;;;;;X.....Ji[9-0]o[9..0]
Ipm「om1I
address[9..O]…小jBr^22[9.ej
>cluckc[-01
x-xx-x
sine44[9..O].:
sire22[j 61、..O;.:
data3用9..Hdat自2x【9..Hdata.1x【9..(Hdata(M9..(H
inst
!iirtst12
:irtstS
圖8-2四片ROM存儲(chǔ)電路
九、實(shí)驗(yàn)感想
本科三年級(jí)的時(shí)候我們專業(yè)學(xué)過可編程邏輯器件這門課,當(dāng)時(shí)對(duì)這門課很感興趣,初次接觸QuartusII軟件,發(fā)現(xiàn)這個(gè)軟件和MAXPlusII軟件有很多相似之處。在第一節(jié)課上,花漢兵老師花了很多時(shí)間給我們講解了QuartusII軟件的使用,還布置了本周實(shí)驗(yàn)的內(nèi)容及要求,在一個(gè)星期的操作、檢查和修改中,我漸漸熟悉了對(duì)QuartusI軟件的使用方法,也逐漸掌握了直接數(shù)字頻率合成器設(shè)計(jì)的原 62、理和思路。這次實(shí)驗(yàn)是我第一次獨(dú)立完成可編程邏輯器件的使用,個(gè)人覺得實(shí)驗(yàn)中用原理圖來實(shí)現(xiàn)整個(gè)方案而不是用VHDL語言,可以更容易理解可編程邏輯器件的工作原理。雖然大部分開發(fā)設(shè)計(jì)工作都是使用VHDL語言,但是原理圖設(shè)計(jì)的學(xué)習(xí)卻是不可缺少的一部分。相比TI公司的MSP430系列,雖然可以很容易地用它來實(shí)現(xiàn)所需要的功能,但是卻不知道其內(nèi)部是如何工作的。這次實(shí)驗(yàn)不僅僅是自己對(duì)本科所學(xué)數(shù)電知識(shí)的一次回顧,更是將所學(xué)的知識(shí)運(yùn)用到實(shí)際當(dāng)中去的一次實(shí)踐。在開始設(shè)計(jì)分頻器的初期,我就復(fù)習(xí)了例如D觸發(fā)器、74160等元器件的功能和作用,回顧了二分頻電路和三分頻電路;在計(jì)數(shù)器設(shè)計(jì)部分,自己又回顧了同步計(jì)數(shù)和異步計(jì)數(shù)的 63、差異,學(xué)會(huì)用已學(xué)器件設(shè)計(jì)不同模的計(jì)數(shù)器。這次實(shí)驗(yàn)讓我對(duì)QuartusI軟件的使用更加熟練,讓我鞏固了數(shù)電的相關(guān)知識(shí),更重要的是通過這一個(gè)多星期的學(xué)習(xí)、實(shí)驗(yàn),我在一次次失敗中總結(jié)了教訓(xùn),學(xué)會(huì)了分析和解決問題,培養(yǎng)了分析和動(dòng)手能力,讓我在以后遇到其他問題時(shí)也能通過自己的努力找到答案。希望以后能有更多這種動(dòng)手實(shí)驗(yàn)的機(jī)會(huì),能真正將知識(shí)與實(shí)踐相結(jié)合,在實(shí)踐中不斷培養(yǎng)自己的能力。
十、參考文獻(xiàn)
[1] 蔣立平,姜萍,譚雪琴,花漢兵《數(shù)字邏輯電路與系統(tǒng)設(shè)計(jì)》北京電子工業(yè)出版社2008.
[2] 《EDA設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書》南京理工大學(xué)電子技術(shù)中心2008.
[3] 蔣立平《數(shù)字電路》南京理工大學(xué)出版社.
[4] 周立功《EDA實(shí)驗(yàn)與實(shí)踐》北京:北京航空航天大學(xué)
- 溫馨提示:
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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 植樹問題課件PPT
- 實(shí)驗(yàn)九蕨類植物觀察和解剖
- 護(hù)理禮儀講解
- 初中物理_液體的壓強(qiáng)課件
- 武漢市【人教部編版】2019年秋語文一年級(jí)上冊(cè):統(tǒng)編版一年級(jí)上冊(cè)語文期末總復(fù)習(xí)資料課件
- 護(hù)士管理法律制度
- 核心肌群的功能和訓(xùn)練方式
- 在尋找野敗的日子里-PPT
- 安全培訓(xùn)遠(yuǎn)離大貨車
- 《10000以內(nèi)數(shù)的認(rèn)識(shí)(例5、例6)》教學(xué)課件-PPT
- 思達(dá)心臟醫(yī)院心血管病峰會(huì)邀請(qǐng)函
- 臨藥咳嗽和咳痰呼吸困難
- 用友通財(cái)務(wù)培訓(xùn)教程
- 頭頂球與運(yùn)球技術(shù)動(dòng)作分析
- 新城幼兒園中班科學(xué)有趣的石頭課件