版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目錄</b></p><p> 摘要……………………………………………………………………………………1</p><p> 1 緒論 ………………………………………………………………………………2</p><p> 1.1 信號(hào)發(fā)生器簡(jiǎn)介……………………………………………………………2</p>
2、<p> 1.2 課程設(shè)計(jì)目的………………………………………………………………2</p><p> 2 課程設(shè)計(jì)環(huán)境 ……………………………………………………………………2</p><p> 2.1 Quartus II簡(jiǎn)介 ……………………………………………………2</p><p> 2.2 VHDL簡(jiǎn)介 ………………………………………
3、…………………………3</p><p> 3 信號(hào)發(fā)生器原理 …………………………………………………………………4</p><p> 3.1 脈沖發(fā)生器原理 …………………………………………………………4</p><p> 3.2 DDS原理……………………………………………………………………4</p><p> 3.3 D
4、/A轉(zhuǎn)換器原理……………………………………………………………5</p><p> 3.4 波形產(chǎn)生原理 ……………………………………………………………5 </p><p> 4 信號(hào)發(fā)生器的模塊 ………………………………………………………………6</p><p> 4.1 頻率控制塊 ………………………………………………………………6</p&
5、gt;<p> 4.2 波形控制塊 ………………………………………………………………7</p><p> 4.3 LPM_ROM宏功能塊 ………………………………………………………7</p><p> 4.4 三位選擇器 ………………………………………………………………8</p><p> 5 Quartus II 仿真 …………
6、……………………………………………………8</p><p> 5.1 波形仿真圖 ………………………………………………………………9</p><p> 5.2 SignalTap II File 仿真 ……………………………………………10</p><p> 6 心得體會(huì) ………………………………………………………………………11</p>
7、<p> 7 參考文獻(xiàn) ………………………………………………………………………12</p><p> 附錄A 信號(hào)發(fā)生器原理圖………………………………………………………13</p><p> 附錄B SignalTap II File 仿真圖…………………………………………13</p><p> 附錄C 模塊程序……………………………………
8、……………………………14</p><p><b> 摘要</b></p><p> 隨著科學(xué)技術(shù)的飛速發(fā)展,電子測(cè)量技術(shù)被廣泛應(yīng)用在電子、機(jī)械、醫(yī)療、</p><p> 測(cè)控及航天等各個(gè)領(lǐng)域,而電子測(cè)量技術(shù)要用到各種形式的高質(zhì)量信號(hào)源,因此</p><p> 任意波形發(fā)生器的研制就具有非常重要的現(xiàn)實(shí)意義。<
9、;/p><p> 本文便是基于DDS(Direet Digital Synthesis)技術(shù)進(jìn)行任意波形發(fā)生器研制的。要求可以產(chǎn)生正弦波、方波、三角波與鋸齒波等常規(guī)波形,而且能夠產(chǎn)生任意波形,從而滿足研究的需要。具體工作如下:</p><p> (一)介紹信號(hào)發(fā)生器的產(chǎn)生原理,闡述頻率合成技術(shù)的各種方式與技術(shù)對(duì)比情況,并選定直接數(shù)字頻率合成技術(shù)進(jìn)行研制。</p><p&
10、gt; (二)介紹系統(tǒng)的硬件設(shè)計(jì)構(gòu)成與功能實(shí)現(xiàn),并對(duì)系統(tǒng)部件進(jìn)行逐一細(xì)述。</p><p> 選用單片機(jī)作為控制模塊,使用FPGA實(shí)現(xiàn)DDS功能作為技術(shù)核心,并對(duì)外圍</p><p> 電路的設(shè)計(jì)與接口技術(shù)進(jìn)行分析。</p><p> (三)講述DDS的工作原理、工作特點(diǎn)與技術(shù)指標(biāo),并基于EDA技術(shù)進(jìn)行設(shè)計(jì),通過(guò)使用相位累加器與波形ROM等模塊,實(shí)現(xiàn)DDS功
11、能。同時(shí)輔以使能模塊與行列式鍵盤,實(shí)現(xiàn)各種波形的靈活輸出。</p><p> (四)給出系統(tǒng)產(chǎn)生的測(cè)試數(shù)據(jù),并對(duì)影響頻譜純度的雜散與噪聲產(chǎn)生的原</p><p><b> 因進(jìn)行分析。</b></p><p> 關(guān)鍵詞:電子測(cè)量;任意波形發(fā)生器;DDS;單片機(jī);FPGA</p><p><b> 1
12、緒論</b></p><p> 1.1 信號(hào)發(fā)生器簡(jiǎn)介</p><p> 信號(hào)發(fā)生器又稱信號(hào)源或振蕩器,在生產(chǎn)實(shí)踐和科技領(lǐng)域中有著廣泛的應(yīng)用。它能夠產(chǎn)生多種波形,如三角波、鋸齒波、矩形波(含方波)、正弦波等,在電路實(shí)驗(yàn)和設(shè)備檢測(cè)中具有十分廣泛的用途。例如在通信、廣播、電視系統(tǒng)中,都需要射頻(高頻)發(fā)射,這里的射頻波就是載波,把音頻(低頻)、視頻信號(hào)或脈沖信號(hào)運(yùn)載出去,就需要
13、能夠產(chǎn)生高頻的振蕩器。在工業(yè)、農(nóng)業(yè)、生物醫(yī)學(xué)等領(lǐng)域內(nèi),如高頻感應(yīng)加熱、熔煉、淬火、超聲診斷、核磁共振成像等,都需要功率或大或小、頻率或高或低的信號(hào)發(fā)生器。</p><p> 本設(shè)計(jì)采用FPGA來(lái)設(shè)計(jì)制作多功能信號(hào)發(fā)生器。該信號(hào)發(fā)生器可以產(chǎn)生正弦波、三角波、方波等波形。</p><p> 1.2 課程設(shè)計(jì)目的</p><p> 1、了解高速DA芯片TLC5602
14、的工作原理。</p><p> 2、了解用DDS的工作原理。</p><p> 3、了解對(duì)內(nèi)部LPM-ROM模塊的調(diào)用。</p><p><b> 2 課程設(shè)計(jì)環(huán)境</b></p><p> 2.1 Quartus II簡(jiǎn)介</p><p> Quartus II 是Altara公司的綜
15、合性PLD/FPGA開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多種設(shè)計(jì)輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計(jì)輸入到硬件配置的完整PLD設(shè)計(jì)流程。</p><p> Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl腳本完成設(shè)計(jì)流程外,提供了完善的用戶圖形界面設(shè)計(jì)方式。具
16、有運(yùn)行速度快,界面統(tǒng)一,功能集中,易學(xué)易用等特點(diǎn)。</p><p> Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模塊庫(kù),使用戶可以充分利用成熟的模塊,簡(jiǎn)化了設(shè)計(jì)的復(fù)雜性、加快了設(shè)計(jì)速度。對(duì)第三方EDA工具的良好支持也使用戶可以在設(shè)計(jì)流程的各個(gè)階段使用熟悉的第三方EDA工具。</p><p> 此外,Quartus II 通過(guò)和DSP Bu
17、ilder工具與Matlab/Simulink相結(jié)合,可以方便地實(shí)現(xiàn)各種DSP應(yīng)用系統(tǒng);支持Altera的片上可編程系統(tǒng)(SOPC)開發(fā),集系統(tǒng)級(jí)設(shè)計(jì)、嵌入式軟件開發(fā)、可編程邏輯設(shè)計(jì)于一體,是一種綜合性的開發(fā)平臺(tái)。</p><p> MaxplusII 作為Altera的上一代PLD設(shè)計(jì)軟件,由于其出色的易用性而得到了廣泛的應(yīng)用。目前Altera已經(jīng)停止了對(duì)Maxplus II 的更新支持,Quartus II
18、 與之相比不僅僅是支持器件類型的豐富和圖形界面的改變。Altera在Quartus II 中包含了許多諸如SignalTap II、Chip Editor和RTL Viewer的設(shè)計(jì)輔助工具,集成了SOPC和HardCopy設(shè)計(jì)流程,并且繼承了Maxplus II 友好的圖形界面及簡(jiǎn)便的使用方法。</p><p> Altera Quartus II 作為一種可編程邏輯的設(shè)計(jì)環(huán)境, 由于其強(qiáng)大的設(shè)計(jì)能力和直觀易
19、用的接口,越來(lái)越受到數(shù)字系統(tǒng)設(shè)計(jì)者的歡迎。</p><p> 2.2 VHDL簡(jiǎn)介</p><p> VHDL(Very High Speed Integrated Circuit Hardware Description Language,超高速集成電路硬件描述語(yǔ)言)是一種用來(lái)描述數(shù)字系統(tǒng)行為和結(jié)構(gòu)的硬件描述語(yǔ)言,被廣泛的運(yùn)用于描述和仿真各種數(shù)字系統(tǒng),小到幾個(gè)門,大到許多復(fù)雜集成電路
20、相連的系統(tǒng)。</p><p> VHDL誕生于1982年,是由美國(guó)國(guó)防部開發(fā)的一種快速設(shè)計(jì)電路的工具,目前已經(jīng)成為IEEE(The Institute of Electrical and Electronics Engineers)的一種工業(yè)標(biāo)準(zhǔn)硬件描述語(yǔ)言。相比傳統(tǒng)的電路系統(tǒng)的設(shè)計(jì)方法,VHDL具有多層次描述系統(tǒng)硬件功能的能力,支持自頂向下(Top to Down)和基于庫(kù)(Library Based)的設(shè)計(jì)
21、的特點(diǎn),因此設(shè)計(jì)者可以不必了解硬件結(jié)構(gòu)。從系統(tǒng)設(shè)計(jì)入手,在頂層進(jìn)行系統(tǒng)方框圖的劃分和結(jié)構(gòu)設(shè)計(jì),在方框圖一級(jí)用VHDL對(duì)電路的行為進(jìn)行描述,并進(jìn)行仿真和糾錯(cuò),然后由工業(yè)界開發(fā)的。</p><p> 3 信號(hào)發(fā)生器原理</p><p> 由于本系統(tǒng)由多部分構(gòu)成,在此根據(jù)各部分的基本原理,對(duì)各個(gè)部分進(jìn)行逐個(gè)分析。</p><p> 3.1 脈沖發(fā)生器原理</
22、p><p> 脈沖發(fā)生器就是要產(chǎn)生一個(gè)脈沖波形,而可控脈沖發(fā)生器則是要產(chǎn)生一個(gè)周期和占空比可變的脈沖波形??煽孛}沖發(fā)生器的實(shí)現(xiàn)原理比較簡(jiǎn)單,可以簡(jiǎn)單的理解為一個(gè)計(jì)數(shù)器對(duì)輸入的時(shí)鐘信號(hào)進(jìn)行分頻的過(guò)程。通過(guò)改變計(jì)數(shù)器的上限值來(lái)達(dá)到改變周期的目的,通過(guò)改變電平翻轉(zhuǎn)的閾值來(lái)達(dá)到改變占空比的目的。下面舉個(gè)簡(jiǎn)單的例子來(lái)說(shuō)明其工作原理。</p><p> 假如有一個(gè)計(jì)數(shù)器T對(duì)時(shí)鐘分頻,其計(jì)數(shù)的范圍是從0
23、~N,另取一個(gè) M(0≤M≤N),若輸出為Q,那么Q只要滿足條件</p><p> 時(shí),通過(guò)改變N值,即可改變輸出的脈沖波的周期;改變M值,即可改變脈沖波的占空比。這樣輸出的脈沖波的周期和占空比分別為:</p><p><b> 3.2 DDS原理</b></p><p> 本設(shè)計(jì)采用調(diào)用宏單元中得計(jì)數(shù)器實(shí)現(xiàn)實(shí)現(xiàn)對(duì)波形數(shù)據(jù)地址的
24、尋找,用三選一數(shù)據(jù)選擇器實(shí)現(xiàn)波形的選擇。在上述的頻率的控制的程序,是基于DDS原理的基礎(chǔ)編程的。需要計(jì)算出它的初值后,在送到分頻器中。在傳統(tǒng)的DDS中,頻率控制字和系統(tǒng)時(shí)鐘決定了輸出時(shí)鐘的頻率。由DDS原理知道,它由累加器和相位寄存器兩部分組成,由外部送入頻率控制字。DDS系統(tǒng)的參考時(shí)鐘源通常是一個(gè)具有高穩(wěn)定性的晶體振蕩器,整個(gè)系統(tǒng)的各個(gè)組成部分提供同步時(shí)鐘。頻率字(FSW)實(shí)際上是相位增量值(二進(jìn)制編碼),作為相位累加器的累加值。相位
25、累加器在每一個(gè)參考時(shí)鐘脈沖輸入時(shí),累加一次頻率字,其輸出相應(yīng)增加一個(gè)步長(zhǎng)的相位增量。我們只是用來(lái)實(shí)現(xiàn)波形的一個(gè)簡(jiǎn)易信號(hào)發(fā)生器,所以直接用QuartusII中得宏功能實(shí)現(xiàn)。</p><p> 3.3 D/A轉(zhuǎn)換器原理</p><p> DA轉(zhuǎn)換器相對(duì)于AD轉(zhuǎn)換器在時(shí)序上要求相對(duì)較低,使用比較簡(jiǎn)單,在此處不作詳細(xì)敘述。本實(shí)驗(yàn)要求使用開發(fā)平臺(tái)上現(xiàn)有的并行D/A轉(zhuǎn)換器TLC5602來(lái)產(chǎn)生四種頻
26、率可調(diào)的波形:正弦波、方波、三角波。</p><p> 三角波產(chǎn)生的原理比較簡(jiǎn)單我們可以采用0-255-0的循環(huán)加減法計(jì)數(shù)器來(lái)實(shí)現(xiàn)。方波產(chǎn)生的原理是讓計(jì)數(shù)器在0和255時(shí)各保持輸出半個(gè)周期。正弦波的產(chǎn)生比較復(fù)雜,一般采用查表法來(lái)實(shí)現(xiàn),正弦表值可以用MATLAB,C等程序語(yǔ)言生成。在一個(gè)周期取樣點(diǎn)越多則輸出的波形失真度越小,但是點(diǎn)越多存儲(chǔ)正弦波表值所需要的空間就越大,編寫就越復(fù)雜。在要求不是很嚴(yán)格的情況下取64個(gè)
27、點(diǎn)就可以了。</p><p> 正弦波波形數(shù)據(jù)ROM可以由多種方式實(shí)現(xiàn),如邏輯方式在FPGA中實(shí)現(xiàn),或利用LPM-ROM來(lái)實(shí)現(xiàn)。相比之下,LPM-ROM實(shí)現(xiàn)起來(lái)更快,更方便。LPM-ROM模塊只有在含有EAB的器件上才能使用。</p><p> 在這個(gè)實(shí)驗(yàn)中我們將這三種波形的數(shù)據(jù)均放入LPM-ROM內(nèi),我們只需要對(duì)每種波形的起始地址進(jìn)行控制即可實(shí)現(xiàn)對(duì)四種波形的控制輸出。</p&g
28、t;<p> 3.4波形的產(chǎn)生原理</p><p> 在QuartusII開發(fā)環(huán)境下搭建系統(tǒng)模型、仿真及下載,并采用嵌入式邏輯分析儀分析和驗(yàn)證了實(shí)驗(yàn)結(jié)果。該系統(tǒng)可以完成多位頻率控制字的累加,能夠產(chǎn)生正弦波、方波和三角波,具有良好的實(shí)時(shí)性。</p><p> DDS可以根據(jù)ROM中存儲(chǔ)數(shù)據(jù)的不同產(chǎn)生多種波形。在QuartusII開發(fā)環(huán)境下搭建DDS系統(tǒng)模型需要訂制波形存儲(chǔ)
29、器ROM,根據(jù)所需精度的不同,ROM中存儲(chǔ)的采樣點(diǎn)數(shù)也不同。當(dāng)所需波形數(shù)據(jù)非常簡(jiǎn)單時(shí),可以在QuartusII中定制ROM時(shí)直接將數(shù)據(jù)寫入新建的mif文件,然后保存即可,當(dāng)所需波形數(shù)據(jù)較為復(fù)雜時(shí),可以通過(guò)Matlab來(lái)自動(dòng)生成所需波形的幅度數(shù)據(jù),然后再通過(guò)調(diào)用mif文件來(lái)達(dá)到預(yù)期目標(biāo)。</p><p> 例如:正弦信號(hào)的產(chǎn)生,可由Matlab程序</p><p> x=linspace
30、(0,2*批,1024);</p><p> y=127.5*sin(x)+127.5</p><p> z=round(y)</p><p><b> 生成數(shù)據(jù)。</b></p><p> 所以要根據(jù)實(shí)際的需要來(lái)綜合考慮存儲(chǔ)單元的個(gè)數(shù)。將上述指令在Matlab環(huán)境中運(yùn)行之后就能夠得到所需mif文件。</p
31、><p> 在mif文件生成之后需要將此文件添加進(jìn)入DDS系統(tǒng)的ROM中,然后進(jìn)行全局的編譯,編譯通過(guò)后就可以進(jìn)行工程的下載。具體的波形可以通過(guò)示波器來(lái)分析,或者使用Quartus II自帶的嵌入式邏輯分析儀來(lái)分析。在使用嵌入式邏輯分析儀分析和觀察時(shí),采樣信號(hào)要根據(jù)DDS的時(shí)鐘信號(hào)來(lái)確定,待測(cè)信號(hào)設(shè)定為DDS的輸出信號(hào),當(dāng)工程下載到FPGA芯片后,待測(cè)信號(hào)通過(guò)USB-BLASTER反饋至嵌入式邏輯分析儀中,選擇不同
32、的數(shù)據(jù)類型,可以觀察到以十進(jìn)制數(shù)據(jù)表示的數(shù)字信號(hào)或者以實(shí)際波形表示的模擬信號(hào)。</p><p><b> 信號(hào)發(fā)生器的模塊</b></p><p><b> 4.1頻率控制塊</b></p><p> 這種發(fā)生器的信號(hào)不是由振蕩器直接產(chǎn)生,而是以高穩(wěn)定度石英振蕩器作為標(biāo)準(zhǔn)頻率源,利用頻率合成技術(shù)形成所需之任意頻率的信
33、號(hào),具有與標(biāo)準(zhǔn)頻率源相同的頻率準(zhǔn)確度和穩(wěn)定度。輸出信號(hào)頻率通常可按十進(jìn)位數(shù)字選擇,最高能達(dá)11位數(shù)字的極高分辨力。頻率除用手動(dòng)選擇外還可程控和遠(yuǎn)控,也可進(jìn)行步級(jí)式掃頻,適用于自動(dòng)測(cè)試系統(tǒng)。直接式頻率合成器由晶體振蕩、加法、乘法、濾波和放大等電路組成,變換頻率迅速但電路復(fù)雜,最高輸出頻率只能達(dá)1000兆赫左右。用得較多的間接式頻率合成器是利用標(biāo)準(zhǔn)頻率源通過(guò)鎖相環(huán)控制電調(diào)諧振蕩器(在環(huán)路中同時(shí)能實(shí)現(xiàn)倍頻、分頻和混頻),使之產(chǎn)生并輸出各種所需
34、頻率的信號(hào)。</p><p> 圖1 頻率控制元件圖</p><p><b> 4.2 波形控制</b></p><p> 它能產(chǎn)生某些特定的周期性時(shí)間函數(shù)波形(主要是正弦波、方波、三角波、鋸齒波和脈沖波等)信號(hào)。頻率范圍可從幾毫赫甚至幾微赫的超低頻直到幾十兆赫。除供通信、儀表和自動(dòng)控制系統(tǒng)測(cè)試用外,還廣泛用于其他非電測(cè)量領(lǐng)域。圖2為產(chǎn)生
35、上述波形的方法之一,將積分電路與某種帶有回滯特性的閾值開關(guān)電路(如施米特觸發(fā)器)相連成環(huán)路,積分器能將方波積分成三角波。施米特電路又能使三角波上升到某一閾值或下降到另一閾值時(shí)發(fā)生躍變而形成方波,頻率除能隨積分器中的RC值的變化而改變外,還能用外加電壓控制兩個(gè)閾值而改變。將三角波另行加到由很多不同偏置二極管組成的整形網(wǎng)絡(luò),形成許多不同斜度的折線段,便可形成正弦波。另一種構(gòu)成方式是用頻率合成器產(chǎn)生正弦波,再對(duì)它多次放大、削波而形成方波,再將
36、方波積分成三角波和正、負(fù)斜率的鋸齒波等。對(duì)這些函數(shù)發(fā)生器的頻率都可電控、程控、鎖定和掃頻,儀器除工作于連續(xù)波狀態(tài)外,還能按鍵控、門控或觸發(fā)等方式工作。</p><p> 圖2 波形控制元件圖</p><p> 4.3 LPM_ROM宏功能塊</p><p> 在QuartusII中對(duì)Altera宏功能模塊和LPM函數(shù)進(jìn)行例化。</p><p
37、> Altera推薦使用MegaWizard Plug-In Manager對(duì)宏功能模塊進(jìn)行例化以及建立自定義宏功能模塊變量。此向?qū)⑻峁┮粋€(gè)供自定義和參數(shù)化宏功能模塊使用的圖形界面,并確保正確設(shè)置所有宏功能模塊的參數(shù)。</p><p> 圖3 宏功能元件圖</p><p><b> 三位選擇器</b></p><p> 如圖所
38、示:sel為控制輸入端,假設(shè)sel[1..0]=00時(shí),data2x有效,則result[7..0]輸出data2x端。以此類推,sel[1..0]=10時(shí),data1x有效,則result[7..0]輸出data1x端。sel[1..0]=01時(shí),data0x有效,則result[7..0]輸出data0x端。</p><p><b> 圖4 三位選擇器圖</b></p>
39、<p> 整體設(shè)計(jì)使用時(shí)鐘控制頻率的改變代替頻率控制模塊。</p><p> Quartus II仿真</p><p><b> 波形仿真圖</b></p><p><b> 圖5 三角波仿真圖</b></p><p> 圖6 正弦波撥動(dòng)開關(guān)置0圖</p><
40、p> 圖7 正弦波撥動(dòng)開關(guān)置1圖</p><p><b> 圖8 矩形波仿真圖</b></p><p> SignalTap II File 仿真</p><p> 在完成設(shè)計(jì)并編譯工程后,建立SignalTap II (.stp)文件并加入工程、配置STP文件、編譯并下載設(shè)計(jì)到FPGA、在Quartus II軟件中顯示被測(cè)信號(hào)
41、的波形、在測(cè)試完畢后將該邏輯分析儀從項(xiàng)目中刪除。以下描述設(shè)置 SignalTap II 文件的基本流程:---1.設(shè)置采樣時(shí)鐘。采樣時(shí)鐘決定了顯示信號(hào)波形的分辨率,它的頻率要大于被測(cè)信號(hào)的最高頻率,否則無(wú)法正確反映被測(cè)信號(hào)波形的變化。SignalTap II在時(shí)鐘上升沿將被測(cè)信號(hào)存儲(chǔ)到緩存。---2.設(shè)置被測(cè)信號(hào)??梢允褂肗ode Finder 中的 SignalTap II 濾波器查找所有預(yù)綜合和布局布線后的SignalTap I
42、I 節(jié)點(diǎn),添加要觀察的信號(hào)。邏輯分析器不可測(cè)試的信號(hào)包括:邏輯單元的進(jìn)位信號(hào)、PLL的時(shí)鐘輸出、JTAG引腳信號(hào)、LVDS(低壓差分)信號(hào)。---3.配置采樣深度、確定RAM的大小。SignalTap II所能顯示的被測(cè)信號(hào)波形的時(shí)間長(zhǎng)度為Tx,計(jì)算公式如下:---Tx=N×Ts---N為緩存中存儲(chǔ)的采樣點(diǎn)數(shù),Ts為采樣時(shí)鐘的周期。---4.設(shè)置buffer acquisition m</p><p
43、><b> 6 心得體會(huì)</b></p><p> 通過(guò)這次課程設(shè)計(jì)我能夠熟練地運(yùn)用 Quartus II,了解了DDS工作的特點(diǎn)和方式掌握了在Quartus II環(huán)境下對(duì)FPGA設(shè)計(jì),構(gòu)建DDS的技術(shù),發(fā)揮了任意波形輸出的靈活性。</p><p> 對(duì)本設(shè)計(jì)進(jìn)行測(cè)試實(shí)驗(yàn),通過(guò)具體數(shù)據(jù)的分析,得知系統(tǒng)的穩(wěn)定度、輸出波形的樣式等具體指標(biāo),解決操作過(guò)程中存在
44、的問(wèn)題。在發(fā)揮設(shè)計(jì)的功效之外,也發(fā)現(xiàn)了系統(tǒng)的一些局限性。</p><p> 介紹了以直接數(shù)字頻率合成技術(shù)(DDS)為基礎(chǔ)的波形信號(hào)發(fā)生器工作原理和設(shè)計(jì)過(guò)程,并在FPGA實(shí)驗(yàn)平臺(tái)上設(shè)計(jì)實(shí)現(xiàn)了滿足各功能指標(biāo)的信號(hào)發(fā)生器。系統(tǒng)硬件除需外加濾波整形電路外,其余部分均可在FPGA開發(fā)實(shí)驗(yàn)系統(tǒng)KH-310上集成開發(fā),系統(tǒng)軟件可在Quartus下編寫代碼,實(shí)現(xiàn)數(shù)據(jù)信息處理和控制操作等功能。</p><p&
45、gt;<b> 7 參考文獻(xiàn)</b></p><p> [1] 劉衛(wèi)國(guó) MATLAB程序設(shè)計(jì)與應(yīng)用[M] 高等教育出版社 2006</p><p> [2] 周登榮.任意波形發(fā)牛器的電路設(shè)計(jì)與實(shí)現(xiàn)[D].成都.電子科技大學(xué).2007</p><p> [3] 江國(guó)強(qiáng).EDA技術(shù)與應(yīng)用[M].電子工業(yè)出版社.2010</p>
46、<p> [4] 韓素敏,鄭征.基于VHDL的正弦波發(fā)生器設(shè)計(jì)[N].陜西工學(xué)院學(xué)報(bào),2003</p><p><b> 信號(hào)發(fā)生器原理圖</b></p><p> SignalTap II File 仿真圖</p><p><b> 正弦波</b></p><p><b
47、> 三角波</b></p><p><b> 模塊程序</b></p><p><b> 頻率控制塊</b></p><p> 利用按鍵實(shí)現(xiàn)頻率的選擇的程序:</p><p> library ieee;</p><p> use ieee.st
48、d_logic_1164.all;</p><p> use ieee.std_logic_arith.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> entity clkout is</p><p> port( Clk : in std_logic;
49、 --時(shí)鐘輸入</p><p> Rst : in std_logic; --復(fù)位輸入</p><p> NU,ND : in std_logic; --輸入:控制頻率的改變</p><p> --key : in std_logic; --輸入:控制波形的改變</p><p&g
50、t; Fout : out std_logic --時(shí)鐘輸出</p><p><b> );</b></p><p> end clkout;</p><p> --------------------------------------------------------------------</p>
51、<p> architecture behave of clkout is</p><p> signal M_Buffer : std_logic_vector(19 downto 0);</p><p> signal N_Count :std_logic_vector(14 downto 0);</p><p> signal clkin
52、 : std_logic;</p><p> signal Clk_Count : std_logic_vector(22 downto 0); --產(chǎn)生一個(gè)低速時(shí)鐘,用于按鍵判斷</p><p><b> begin</b></p><p> process(Clk) --計(jì)數(shù)器累加</p><p>
53、;<b> begin</b></p><p> if(Clk'event and Clk='1') then</p><p> if(N_Count=M_Buffer+M_Buffer) then N_Count<="000000000000000";</p><p> else
54、N_Count<=N_Count+1;</p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process;</p><p> process(Clk) --波形判斷</p><p&
55、gt; begin if(Clk'event and Clk='1') then</p><p> if(N_Count<M_Buffer) then Fout<='1';</p><p> elsif(N_Count>M_Buffer and N_Count<M_Buffer+M_Buffer)</p>
56、;<p> then Fout<='0';</p><p> end if; end if;</p><p> end process;</p><p> process(Clk)</p><p> begin if(Clk'event and Clk='1'
57、;) then</p><p> Clk_Count<=Clk_Count+1;</p><p><b> end if;</b></p><p> clkin<=Clk_Count(22);</p><p> end process;</p><p> process(cl
58、kin) --頻率及占空比的改變1</p><p><b> begin</b></p><p> if(clkin'event and clkin='0') then</p><p> if(Rst='0') then</p><p> M_Buffer<=&q
59、uot;00000000000000100000";</p><p> --N_Buffer<="000010000000000";</p><p> elsif(NU='0') then M_Buffer<=M_Buffer+1 ;</p><p> elsif(ND='0
60、9;) then M_Buffer<=M_Buffer-1;</p><p> end if; end if;</p><p> end process;</p><p> end behave;</p><p><b> 波形控制塊</b></p><p> 通過(guò)撥
61、動(dòng)開關(guān)實(shí)現(xiàn)波形的選擇的程序:</p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_unsigned.all;</p><p> use ieee.std_logic_arith.all;</p>
62、<p> entity addrkey is</p><p> port(clk : in std_logic;</p><p> key : in std_logic_vector(1 downto 0);</p><p> dout : out integer range 767 downt
63、o 0);</p><p><b> end ;</b></p><p> architecture a of addrkey is</p><p> signal q1: integer range 255 downto 0;</p><p> signal q2: integer range
64、511 downto 256;</p><p> signal q3: integer range 767 downto 512;</p><p><b> begin</b></p><p> process(clk,key,q1,q2,q3)</p><p> begin if key="
65、;00" or key="11"then</p><p> if(clk'event and clk='1')then</p><p> if q1=255 then q1<=0;</p><p> else q1 <= q1+1;</p><p> e
66、nd if; end if;</p><p><b> dout<=q1;</b></p><p> elsif key="01" then</p><p> if(clk'event and clk='1')then</p><p> if q2=511
67、 then q2<=256;</p><p> else q2 <= q2+1;</p><p> end if; end if;</p><p><b> dout<=q2;</b></p><p> elsif key="10" then</p>
68、<p> if(clk'event and clk='1')then</p><p> if q3=767 then q3<=512;</p><p> else q3 <= q3+1;</p><p> end if; end if;</p><p><b>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 信號(hào)發(fā)生器課程設(shè)計(jì)
- 信號(hào)發(fā)生器課程設(shè)計(jì)
- 課程設(shè)計(jì)--信號(hào)發(fā)生器設(shè)計(jì)
- 信號(hào)發(fā)生器課程設(shè)計(jì)報(bào)告--函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)
- 信號(hào)發(fā)生器課程設(shè)計(jì)---函數(shù)發(fā)生器的設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 正交信號(hào)發(fā)生器課程設(shè)計(jì)
- 簡(jiǎn)易信號(hào)發(fā)生器課程設(shè)計(jì)
- 課程設(shè)計(jì)-簡(jiǎn)易信號(hào)發(fā)生器
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 555信號(hào)發(fā)生器課程設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 簡(jiǎn)易信號(hào)發(fā)生器 課程設(shè)計(jì)
- 函數(shù)信號(hào)發(fā)生器課程設(shè)計(jì)
- 接口課程設(shè)計(jì)--信號(hào)發(fā)生器
- labview課程設(shè)計(jì)--信號(hào)發(fā)生器
- 簡(jiǎn)易信號(hào)發(fā)生器課程設(shè)計(jì)
- 課程設(shè)計(jì)---函數(shù)信號(hào)發(fā)生器
- 信號(hào)發(fā)生器課程設(shè)計(jì)報(bào)告
- eda課程設(shè)計(jì)--信號(hào)發(fā)生器
評(píng)論
0/150
提交評(píng)論