基于fpga的dds任意波形發(fā)生器說(shuō)明書_第1頁(yè)
已閱讀1頁(yè),還剩47頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  課 程 設(shè) 計(jì) 報(bào) 告</p><p>  題 目:

2、

3、 </p><p>  學(xué) 院: </p><p>  班 級(jí): </p><p>  學(xué)生(學(xué)號(hào)): </p><p>  學(xué)生(姓名): </p><p>  學(xué)生(學(xué)號(hào)): </p><

4、p>  學(xué)生(姓名): </p><p><b>  摘 要</b></p><p>  DDS采用全數(shù)字技術(shù),并從相位角度出發(fā)進(jìn)行頻率合成,DDS的設(shè)計(jì)大多是應(yīng)用HDL對(duì)其進(jìn)行邏輯描述,整個(gè)設(shè)計(jì)可以實(shí)現(xiàn)參數(shù)改變和設(shè)計(jì)移植。利用時(shí)鐘信號(hào)作為地址計(jì)數(shù)器的計(jì)數(shù)時(shí)鐘,地址計(jì)數(shù)器的輸出作為波形存儲(chǔ)器的掃描地址,波形存儲(chǔ)器輸出相應(yīng)地址的數(shù)字幅度序列

5、,再經(jīng)過(guò)數(shù)模轉(zhuǎn)換成模擬階梯波形,最后通過(guò)低通濾波器平滑濾波得到最后的輸出波形</p><p>  本文所設(shè)計(jì)的內(nèi)容就是基于Altera公司的現(xiàn)場(chǎng)可編程門陣列(FPGA)實(shí)現(xiàn)數(shù)字信號(hào)發(fā)生器的設(shè)計(jì),F(xiàn)PGA具有密度高,功耗低,體積小,可靠性高等特點(diǎn),設(shè)計(jì)時(shí)可以不必過(guò)多考慮具體硬件連接;本設(shè)計(jì)中應(yīng)用Verilog硬件描述語(yǔ)言進(jìn)行描述,使該數(shù)字信號(hào)發(fā)生器可以產(chǎn)生正弦波、方波、三角波、鋸齒波四個(gè)獨(dú)立的波形,并能對(duì)所產(chǎn)生的四

6、種波形的頻率和進(jìn)行調(diào)節(jié)。設(shè)計(jì)輸出頻率范圍是1kHz—10kHz,步進(jìn)是1KHZ,測(cè)量的結(jié)果在數(shù)碼管上顯示 。</p><p><b>  關(guān)鍵詞: </b></p><p>  FPGA DDS 相位累加 ROM表 Verilog</p><p><b>  目 錄</b></p><p&

7、gt;  課程設(shè)計(jì)目的  ????????????????????????? 4 </p><p>  設(shè)計(jì)任務(wù)與要求???????????????????????? 4 </p><p>  方案設(shè)計(jì)與論證 ????????????????????????5 </p><p>  單元電路設(shè)計(jì)與參數(shù)計(jì)算 

8、????????????????9 </p><p>  遇到問(wèn)題的解決方法???????????????????? 17 </p><p>  結(jié)論與心得 ??????????????????????????? 18 </p><p>  參考文獻(xiàn)????????????????????????????? 18 </p

9、><p><b>  題目:波形發(fā)生器</b></p><p><b>  課程設(shè)計(jì)目的</b></p><p>  1)鞏固和加深所學(xué)數(shù)字電子技術(shù)課程的基本知識(shí),提高綜合運(yùn)用所學(xué)知識(shí)的能力;</p><p>  2)提高獨(dú)立解決工程實(shí)際問(wèn)題的能力</p><p>  3)培養(yǎng)學(xué)

10、習(xí)能力,掌握FPGA設(shè)計(jì)的方法和技巧。掌握verilog語(yǔ)言。</p><p>  4)調(diào)試電路,發(fā)現(xiàn)問(wèn)題。解決問(wèn)題。</p><p><b>  設(shè)計(jì)任務(wù)與要求</b></p><p><b>  顯示學(xué)號(hào)</b></p><p>  2. 根據(jù)按鍵輸出波形</p><p>

11、;<b>  具體要求:</b></p><p><b>  采用數(shù)碼管顯示</b></p><p>  循環(huán)顯示2個(gè)人的學(xué)號(hào)后四位</p><p>  根據(jù)開(kāi)關(guān)輸入不同,分別輸出正弦波、方波、三角波(頻率=1KHz)</p><p>  根據(jù)按鍵改變頻率(頻率變化范圍:1KHz-10KHz,每次頻

12、率變化1KHz)</p><p>  輸出頻率在數(shù)碼管上顯示 </p><p><b>  方案設(shè)計(jì)與論證</b></p><p>  學(xué)號(hào)循環(huán)變化的實(shí)現(xiàn):</p><p>  方案一:采用計(jì)數(shù)器計(jì)數(shù),分別控制四個(gè)數(shù)碼管移位循環(huán)顯示</p><p>  優(yōu)點(diǎn):方案簡(jiǎn)單,容易實(shí)現(xiàn)。</p>

13、;<p>  方案二:直接給數(shù)碼管賦值顯示學(xué)號(hào),設(shè)計(jì)時(shí)鐘頻率,控制跳變。</p><p><b>  我們選擇方案一。</b></p><p>  開(kāi)發(fā)板硬件結(jié)構(gòu)如上圖所示。</p><p>  波形變化及頻率變換的實(shí)現(xiàn):</p><p><b>  方案一:</b></p>

14、;<p>  總體方案實(shí)現(xiàn)及系統(tǒng)框圖</p><p>  該設(shè)計(jì)以FPGA開(kāi)發(fā)平臺(tái)為核心,將各波形的幅值/相位量化數(shù)據(jù)存儲(chǔ)在ROM內(nèi),按照設(shè)定頻率,以相應(yīng)頻率控制字k為步進(jìn),對(duì)相位進(jìn)行累加,以累加相位值作為地址碼讀取存放在存儲(chǔ)器內(nèi)的波形數(shù)據(jù),經(jīng)D/A轉(zhuǎn)換和幅度控制、濾波即可得到所需波形。波形發(fā)生器采取全數(shù)字化結(jié)構(gòu),用硬件描述語(yǔ)言Verilog設(shè)計(jì)實(shí)現(xiàn)其頻率可調(diào)可顯示。經(jīng)開(kāi)發(fā)平臺(tái)的D/A轉(zhuǎn)化和外加濾波

15、整形處理波形數(shù)據(jù),理論上能夠?qū)崿F(xiàn)任意頻率的各種波形。</p><p>  DDS電路一般由參考時(shí)鐘、相位累加器、波形存儲(chǔ)器、D/A轉(zhuǎn)換器(DAC)和低通濾波器(LPF)組成[7]。其結(jié)構(gòu)框圖如圖2.5所示。</p><p>  圖2.5 DDS基本結(jié)構(gòu)框圖</p><p>  其中,為參考時(shí)鐘頻率,為頻率控制字,為相位累加器位數(shù),為波形存儲(chǔ)器位數(shù),為波形存儲(chǔ)器的數(shù)據(jù)

16、位字長(zhǎng)和D/A轉(zhuǎn)換器位數(shù)。</p><p> ?。ǘ┲苯訑?shù)字頻率合成技術(shù)原理</p><p>  DDS系統(tǒng)中的參考時(shí)鐘通常由一個(gè)高穩(wěn)定度的晶體振蕩器來(lái)產(chǎn)生,用來(lái)作為整個(gè)系統(tǒng)各個(gè)組成部分的同步時(shí)鐘。頻率控制字(Frequency Control Word,F(xiàn)CW)實(shí)際上是二進(jìn)制編碼的相位增量值,它作為相位累加器的輸入累加值。相位累加器由加法器和寄存器級(jí)聯(lián)構(gòu)成,它將寄存器的輸出反饋到加法器

17、的輸入端實(shí)現(xiàn)累加的功能。在每一個(gè)時(shí)鐘脈沖,相位累加器把頻率字累加一次,累加器的輸出相應(yīng)增加一個(gè)步長(zhǎng)的相位增量,由此可以看出,相位累加器的輸出數(shù)據(jù)實(shí)質(zhì)上是以為步長(zhǎng)的線性遞增序列(在相位累加器產(chǎn)生溢出以前),它反映了合成信號(hào)的相位信息。相位累加器的輸出與波形存儲(chǔ)器的地址線相連,相當(dāng)于對(duì)波形存儲(chǔ)器進(jìn)行查表,這樣就可以把存儲(chǔ)在波形存儲(chǔ)器中的信號(hào)抽樣值(二進(jìn)制編碼值)查出。在系統(tǒng)時(shí)鐘脈沖的作用下,相位累加器不停的累加,即不停的查表。波形存儲(chǔ)器的輸

18、出數(shù)據(jù)送到D/A轉(zhuǎn)換器,D/A轉(zhuǎn)換器將數(shù)字量形式的波形幅度值轉(zhuǎn)換成所要求合成頻率的模擬量形式信號(hào),從而將波形重新合成出來(lái)。若波形存儲(chǔ)器中存放的是正弦波幅度量化數(shù)據(jù),那么D/A轉(zhuǎn)換器的輸出是近似正弦波的階梯波,還需要后級(jí)的低通平滑濾波器進(jìn)一步抑制不必要的雜波就可以得到頻</p><p>  由于受到字長(zhǎng)的限制,相位累加器累加到一定值后,就會(huì)產(chǎn)生一次累加溢出,這樣波形存儲(chǔ)器的地址就會(huì)循環(huán)一次,輸出波形循環(huán)一周。相位累

19、加器的溢出頻率即為合成信號(hào)的頻率??梢?jiàn),頻率控制字K越大,相位累加器產(chǎn)生溢出的速度越快,輸出頻率也就越高。故改變頻率字(即相位增量),就可以改變相位累加器的溢出時(shí)間,在參考頻率不變的條件下就可以改變輸出信號(hào)的頻率。</p><p>  圖2.6 DDS各部分輸出波形</p><p>  DDS系統(tǒng)的優(yōu)點(diǎn)有很多,它的很多特性是其他頻率合成技術(shù)所沒(méi)有的,其中最主要的特性有以下三點(diǎn):</p

20、><p>  (1)DDS技術(shù)可以用于產(chǎn)生任意波形</p><p>  基于前面對(duì)DDS系統(tǒng)的基本結(jié)構(gòu)分析,很容易理解,只要改變存儲(chǔ)在波形存儲(chǔ)器中的波形數(shù)據(jù),就可以改變輸出波形。所以對(duì)于任何周期性波形,只要滿足采樣定理,都可以利用DDS技術(shù)來(lái)實(shí)現(xiàn)。</p><p> ?。?)DDS系統(tǒng)具有很高的頻率分辨率</p><p>  DDS系統(tǒng)輸出頻率的

21、分辨率和頻點(diǎn)數(shù)隨相位累加器的位數(shù)成指數(shù)增長(zhǎng),由可知,在系統(tǒng)時(shí)鐘頻率不變的情況下,只要增大相位累加器的位數(shù),就可以得到幾乎是任意小的頻率分辨率,可以滿足精細(xì)頻率控制的要求。DDS如此精細(xì)的頻率分辨率,使其輸出頻率已十分逼近連續(xù)變化。</p><p> ?。?)輸出頻率切換速度快且相位保持連續(xù)</p><p>  與鎖相頻率合成相比,由于DDS系統(tǒng)是一個(gè)開(kāi)環(huán)系統(tǒng),所以當(dāng)一個(gè)新的頻率控制字送到時(shí)

22、,它會(huì)迅速合成這個(gè)新的頻率,實(shí)際的頻率切換時(shí)間可以達(dá)ns級(jí)。同時(shí),頻率切換時(shí),DDS系統(tǒng)的輸出波形的相位是連續(xù)的。DDS系統(tǒng)的頻率字改變時(shí),輸出波形的變化過(guò)程可以用圖2.12描述。</p><p>  圖2.12 頻率控制字改變時(shí)累加器的輸出值和輸出波形的變化(仿真)</p><p>  在波形輸出到點(diǎn)時(shí),頻率字發(fā)生了改變(變?。?,相位累加器的累加值即相位步進(jìn)變小,其輸出值斜率也變小,系統(tǒng)

23、的輸出波形的頻率也在同時(shí)刻變小。DDS系統(tǒng)在頻率字發(fā)生改變后的一個(gè)時(shí)鐘周期,其輸出頻率就可以就轉(zhuǎn)換到了新的頻率上,也即在頻率字的值改變以后,累加器在經(jīng)過(guò)一個(gè)時(shí)鐘周期后就按照新的頻率字進(jìn)行累加,開(kāi)始合成新的頻率。所以我們可以認(rèn)為DDS的頻率切換是在一個(gè)系統(tǒng)時(shí)鐘周期內(nèi)完成的,系統(tǒng)時(shí)鐘頻率越高,切換速度越快。</p><p>  另外,從前面對(duì)DDS技術(shù)原理的分析可知,要改變輸出頻率,實(shí)際上改變的是頻率字,也就是相位增

24、量。當(dāng)頻率字的值從改變?yōu)橹?,相位累加器是在已有的累積相位上,再對(duì)進(jìn)行累加,相位函數(shù)曲線是連續(xù)的。從圖2.12也可以看出,只是在頻率字改變的瞬間相位函數(shù)曲線的斜率發(fā)生了突變,相位值并沒(méi)有發(fā)生跳躍,因此DDS能夠在頻率切換的過(guò)程中保持相位連續(xù),輸出波形能夠平滑地從一個(gè)頻率過(guò)渡到另外一個(gè)頻率。</p><p><b> ?。ㄈ┫到y(tǒng)組成模塊</b></p><p><

25、;b>  1、頂層模塊 </b></p><p>  頂層模塊是系統(tǒng)程序的主模塊,它負(fù)責(zé)將rom查找表、相位累加等模塊組裝在一起,通過(guò)調(diào)用的關(guān)系使它們組合成為一個(gè)有機(jī)的整體。在頂層模塊中,定義了參考時(shí)鐘的輸入,復(fù)位端口,波形輸出、頻率控制字等。 </p><p>  2、相位累加器模塊 </p><p>  相位累加器

26、是決定系統(tǒng)性能的關(guān)鍵部分,主要是利用頻率控制字和相位控制字來(lái)累加出尋址地址。相位累加器在基準(zhǔn)頻率信號(hào)clk的控制下以頻率控制字data為步長(zhǎng)進(jìn)行累加運(yùn)算,產(chǎn)生需要的頻率控制數(shù)據(jù),在時(shí)鐘的控制下把累加的結(jié)果作為波形存儲(chǔ)器ROM的地址,實(shí)現(xiàn)對(duì)波形存儲(chǔ)器ROM的尋址。</p><p><b>  3、查找表 </b></p><p>  本模塊實(shí)現(xiàn)的是一個(gè)rom存

27、貯器,用于存儲(chǔ)采樣的波形數(shù)據(jù),并提供地址查找的功能。具體實(shí)現(xiàn)的過(guò)程: </p><p>  1)首先使用數(shù)學(xué)工具計(jì)算得到波形采樣點(diǎn),生成mif文件 </p><p>  2)導(dǎo)入數(shù)據(jù)采樣點(diǎn),給每一個(gè)采樣點(diǎn)分配地址,并提供外部尋址的接口,此過(guò)程可以通過(guò)QuartasⅡ來(lái)輔助完成。</p><p>  方案二:采用VHDL語(yǔ)言直接編程實(shí)現(xiàn)</p

28、><p>  我們選擇方案一實(shí)現(xiàn)設(shè)計(jì)要求。</p><p>  單元電路設(shè)計(jì)與參數(shù)計(jì)算</p><p>  一:16為DA轉(zhuǎn)換電路設(shè)計(jì)</p><p>  根據(jù)DA轉(zhuǎn)換的原理,設(shè)計(jì)R-2R電阻網(wǎng)絡(luò),實(shí)現(xiàn)數(shù)字量到模擬量的轉(zhuǎn)換。電路圖如上所示。</p><p>  二:DDS輸出頻率關(guān)系式計(jì)算</p><p

29、>  N=32 fc=50MHz</p><p><b>  輸出頻率1kHz</b></p><p>  1000=M*50000000/2^32 M=85899.35</p><p><b>  輸出頻率2kHz</b></p><p>  2000=M*5000

30、0000/2^32 M=171798.7</p><p><b>  輸出頻率3kHz</b></p><p>  3000=M*50000000/2^32 M=257698.0</p><p><b>  輸出頻率4kHz</b></p><p>  4000=

31、M*50000000/2^32 M=343597.4</p><p><b>  輸出頻率5kHz</b></p><p>  5000=M*50000000/2^32 M=429496.7</p><p><b>  輸出頻率6kHz</b></p><p> 

32、 6000=M*50000000/2^32 M=515396.1</p><p><b>  輸出頻率7kHz</b></p><p>  7000=M*50000000/2^32 M=601295.4</p><p><b>  輸出頻率8kHz</b></p><

33、p>  8000=M*50000000/2^32 M=687194.8</p><p><b>  輸出頻率9kHz</b></p><p>  9000=M*50000000/2^32 M=773094.1</p><p><b>  輸出頻率10kHz</b></p>

34、;<p>  10000=M*50000000/2^32 M=858993.5</p><p>  通過(guò)控制M,來(lái)控制輸出頻率關(guān)系的變化。</p><p><b>  ROM的設(shè)計(jì)</b></p><p>  在QUARTUS環(huán)境下,新建文件,選擇建立一個(gè)mif 文件。選擇所建立的ROM的位數(shù)和字寬。在彈出的界面上

35、編輯MIF文件并保存。</p><p>  MIF是Mapinfo用來(lái)向外交換數(shù)據(jù)的一種中間交換文件。當(dāng)用戶在Mapinfo中將一張Mapinfo地圖表以MIF格式轉(zhuǎn)出來(lái)MIF文件中后,Mapinfo會(huì)同時(shí)在用戶指定的保存目錄下生成兩個(gè)文件(*.mif,*.mid)。其中*.mif文件保存了該Mapinfo表的表結(jié)構(gòu)及表中所有空間對(duì)象的空間信息(如:每個(gè)點(diǎn)對(duì)象的符號(hào)樣式、點(diǎn)位坐標(biāo);每個(gè)線對(duì)象的線樣式、節(jié)點(diǎn)數(shù)據(jù)、節(jié)

36、點(diǎn)坐標(biāo);區(qū)域?qū)ο蟮奶畛淠J健⒚總€(gè)區(qū)域包含的子區(qū)域個(gè)數(shù)及每個(gè)區(qū)域的節(jié)點(diǎn)數(shù)、節(jié)點(diǎn)數(shù)等)。而*.mid文件則按記錄順序保存了每個(gè)空間對(duì)象的所有屬性信息。這兩個(gè)文件都為文本性質(zhì)的文件,用戶可以通過(guò)相應(yīng)的文件讀寫方法實(shí)現(xiàn)對(duì)文件內(nèi)容的讀寫. </p><p>  mif文件是在編譯和仿真過(guò)程中作為存儲(chǔ)器(ROM或RAM)初始化輸入的文件,即memory initialization file.mif文件格式為:&l

37、t;/p><p>  mif文件的創(chuàng)建很簡(jiǎn)單,主要有兩種方法,一種,新建文件,選文本輸入,保存為mif文件。另一種方法是建立一個(gè)txt文件,然后將擴(kuò)展名改成mif即可.</p><p><b>  數(shù)碼管顯示</b></p><p>  通過(guò)頻率控制字M的大小換算頻率,控制數(shù)碼管的顯示,設(shè)計(jì)程序如下所示。</p><p> 

38、 always@(M)</p><p><b>  begin</b></p><p>  if(M==32'd85899) begin smg<=seg1;smg1<=segoff;end</p><p>  else if (M==32'd171798) begin smg<=seg2;

39、smg1<=segoff; end </p><p>  else if (M==32'd257697) begin smg<=seg3;smg1<=segoff; end </p><p>  else if (M==32'd343596) begin smg<=seg4;smg1<=segoff; end</p>&l

40、t;p>  else if (M==32'd429495) begin smg<=seg5;smg1<=segoff; end </p><p>  else if (M==32'd515394) begin smg<=seg6;smg1<=segoff; end </p><p>  else if (M==32'd6012

41、93) begin smg<=seg7;smg1<=segoff; end</p><p>  else if(M==32'd687192) begin smg<=seg8;smg1<=segoff; end</p><p>  else if(M==32'd773091) begin smg<=seg9;smg1<=s

42、egoff; end</p><p><b>  else </b></p><p>  begin smg<=seg0;smg1<=seg1; end</p><p><b>  end</b></p><p>  五、遇到問(wèn)題的解決方法</p><p>  第

43、一,應(yīng)該注意傳遞函數(shù)中的輸出端口應(yīng)該是wire型的,如果定義為reg將會(huì)出錯(cuò)。 設(shè)計(jì)初期,會(huì)定義出錯(cuò)。</p><p>  第二,開(kāi)始時(shí)波形數(shù)據(jù)按照?qǐng)D放入初值時(shí),有負(fù)數(shù)、小數(shù)等,當(dāng)裝入負(fù)數(shù)小數(shù)后在仿真中無(wú)法正確顯示數(shù)字。(解決辦法:將波形平移擴(kuò)大將小數(shù)和負(fù)數(shù)換算成整數(shù)裝入即可顯示波形數(shù)據(jù)) </p><p>  第三,頻率計(jì)算出錯(cuò),調(diào)試程序后發(fā)現(xiàn)步進(jìn)值達(dá)不到要求,檢查后

44、發(fā)現(xiàn)頻率控制字值設(shè)置錯(cuò)誤。</p><p><b>  六、結(jié)論與心得</b></p><p>  對(duì)于我們來(lái)說(shuō),課程設(shè)計(jì)是一次學(xué)習(xí)的機(jī)會(huì)。因?yàn)榭倳?huì)遇到一些自己從來(lái)沒(méi)有遇到的問(wèn)題,鍛煉了自己解決問(wèn)題的能力,也學(xué)會(huì)了與人合作。</p><p>  這次課設(shè)讓我加深了對(duì)verilog語(yǔ)言的理解,因?yàn)檎莆詹皇炀殻?huì)犯一些低級(jí)錯(cuò)誤,在做的過(guò)程中,理解

45、,并運(yùn)用到實(shí)際中,真的提升了自己的能力。當(dāng)調(diào)試出錯(cuò)時(shí),我們認(rèn)真分析問(wèn)題,并請(qǐng)教老師和同學(xué),找到問(wèn)題,并解決。</p><p>  做設(shè)計(jì)是個(gè)綜合的工程,需要從整體把握,將復(fù)雜逐漸變?yōu)楹?jiǎn)單,做到最后,我們發(fā)現(xiàn)一開(kāi)始的困難都不算什么了,因?yàn)槲覀兏畹睦斫饬嗽O(shè)計(jì)概念和方法。</p><p>  在以后的學(xué)習(xí)中,我們會(huì)更加認(rèn)真,用心。把知識(shí)靈活運(yùn)用。真正做到設(shè)計(jì)。</p><p

46、><b>  參考文獻(xiàn)</b></p><p>  [1] 張永瑞 等著. 電子測(cè)量技術(shù)基礎(chǔ). 西安:西安電子科技大學(xué)出版社. 2004. 1-15</p><p>  [2] 林占江,林放 著. 電子測(cè)量?jī)x器原理與使用. 北京:電子工業(yè)出版社. 2006. 1-21</p><p>  [3] 張學(xué)峰,胡長(zhǎng)江. 功能各異的各種任意波形發(fā)

47、生器. 國(guó)外電子測(cè)量技術(shù). 2000,4. 17-18</p><p>  [4] 毛敏. 基于DDS的高精度方波信號(hào)發(fā)生器的研究. 西安電子科技大學(xué)工學(xué)碩士論文. 2006. 5-6</p><p>  [5] 張有正 等著. 頻率合成技術(shù). 北京:人民郵電出版社. 1984. 1-33</p><p>  [6]杜慧敏、趙全良著《基于Verilog的FPGA設(shè)

48、計(jì)基礎(chǔ)》西安電子科技大學(xué)出版社</p><p>  [7]王金明《Verilog HDL程序設(shè)計(jì)教程》人民郵電出版社</p><p><b>  八 附錄</b></p><p>  /*************************************************************************/&

49、lt;/p><p>  // 文件名稱: DDS_wave_top.v</p><p>  // 功能描述: 頂層設(shè)計(jì)</p><p>  /*************************************************************************/ </p><p>  module DDS_wave

50、_top </p><p>  ( clk, //內(nèi)部時(shí)鐘</p><p><b>  reset,</b></p><p>  set_waveform_key_in,//波形設(shè)置按鍵</p><p>  set_f_key_in,//頻率設(shè)置按鍵</p><p>

51、<b>  dout,</b></p><p><b>  smg,</b></p><p><b>  smg1</b></p><p><b>  );</b></p><p>  input clk;</p><p>

52、;  input reset;</p><p>  input set_waveform_key_in;</p><p>  input set_f_key_in;</p><p>  output dout;</p><p>  output smg;</p><p>  out

53、put smg1;</p><p><b>  wire clk;</b></p><p>  wire reset;</p><p>  wire [15:0] dout;</p><p>  wire [6:0] smg;</p><p>  wire [6:0] smg1;</p

54、><p>  /****************************連接線*****************************/</p><p>  wire set_waveform_key;//按鍵輸出</p><p>  wire set_f_key_in;</p><p>  wire [1:0] set_waveform;//

55、波形輸出選擇</p><p>  wire [31:0]f_control;</p><p>  wire set_f_key;</p><p>  /*********************元件例化************************************/</p><p><b>  DDS u7</b&

56、gt;</p><p><b>  (</b></p><p>  .clk(clk),</p><p>  .set_waveform(set_waveform),</p><p>  .f_control(f_control),</p><p>  .dds_data_out(dout),&l

57、t;/p><p>  .smg(smg),</p><p>  .smg1(smg1)</p><p><b>  );</b></p><p>  key_coding u8</p><p><b>  (</b></p><p>  .reset(r

58、eset),</p><p>  .set_waveform_key(set_waveform_key),</p><p>  .set_f_key(set_f_key),</p><p>  .set_waveform(set_waveform),</p><p>  .f_control(f_control)</p><

59、;p><b>  );</b></p><p><b>  key u9</b></p><p><b>  (</b></p><p>  .clk(clk),</p><p>  .key(set_waveform_key_in),</p><p

60、>  .key_out(set_waveform_key)</p><p><b>  );</b></p><p><b>  key1 u10</b></p><p><b>  (</b></p><p>  .clk(clk),</p><p

61、>  .key1(set_f_key_in),</p><p>  .key_out1(set_f_key) //FIN_G3實(shí)際引腳</p><p><b>  );</b></p><p><b>  Endmodule</b></p><p>  /*******************

62、******************************************************/</p><p>  // 文件名稱: DDS.v</p><p>  // 功能描述:DDS信號(hào)發(fā)生(f=50M*X/2^32,X->initial),步進(jìn)1Khz</p><p>  /*****************************

63、********************************************/ </p><p>  module DDS(clk,set_waveform,f_control,dds_data_out,smg,smg1);</p><p>  input clk;//時(shí)鐘輸入</p><p>  input [1:0] set_waveform

64、;//按鍵控制波形輸出選擇</p><p>  input [31:0] f_control;</p><p>  output [15:0] dds_data_out;</p><p>  output [6:0] smg;</p><p>  output [6:0] smg1;</p><p><b&g

65、t;  wire clk;</b></p><p>  wire [1:0] set_waveform;</p><p>  wire [31:0] f_control;</p><p>  wire [15:0] dds_data_out;</p><p>  /**************連接線***************

66、/</p><p>  wire [31:0] f32_bus;//頻率控制字輸入 </p><p>  wire key_out;//按鍵輸出 </p><p>  wire [31:0] reg32_out;//32位寄存器輸出</p><p>  wire [31:0] reg32_in;//32位寄存器輸入 </p>&

67、lt;p>  /************************************/</p><p>  wire [15:0] sin_data;</p><p>  wire [15:0] tri_data;</p><p>  wire [15:0] squ_data;</p><p>  wire [15:

68、0] saw_data;</p><p>  reg [15:0] dds_data_reg;</p><p>  reg [6:0] smg1;</p><p>  reg [6:0] smg;</p><p>  wire [31:0] M;</p><p>  //parameter [15:0] f

69、32_bus_init=16'b0000_0000_0000_0001;</p><p>  //assign f32_bus[31:16]=f32_bus_init;//初始化,高位置低 </p><p>  assign f32_bus[31:0]=f_control;</p><p>  //assign f32_bus[31:0]=f_contro

70、l;//16'b101001111100010110;//低位可以設(shè)置DDS的輸出頻率(2^32/50,000,000=86->1Khz)</p><p>  //(20M=0110_0110_0110_0110_0110_0110_0110_0110)</p><p>  //(10M=0011_0011_0011_0011_0011_0011_0011_0011)<

71、/p><p>  //(1K=0000_0000_0000_0001_0100_1111_1000_1011)</p><p>  /*********************元件例化************************************/</p><p>  adder_32 u1(.data1(f32_bus),.data2(reg32_out),

72、.sum(reg32_in));</p><p>  reg32 u2(.clk(clk),.data_in(reg32_in),.data_out(reg32_out));</p><p>  /*****************波形選擇*******************************************/</p><p>  sin16

73、 u3(.address(reg32_out[31:22]),.clock(clk),.q(sin_data));//正弦</p><p>  tri16 u4(.address(reg32_out[31:22]),.clock(clk),.q(tri_data));</p><p>  squ16 u5(.address(reg32_out[31:22]),.clock(clk),.

74、q(squ_data));</p><p>  stw16 u6(.address(reg32_out[31:22]),.clock(clk),.q(saw_data));</p><p>  always @(set_waveform,sin_data,tri_data,squ_data,saw_data)</p><p><b>  begin &l

75、t;/b></p><p>  case (set_waveform)</p><p>  2'b00: dds_data_reg<=sin_data;</p><p>  2'b01: dds_data_reg<=tri_data;</p><p>  2'b10: dds_data_reg<

76、=squ_data;</p><p>  2'b11: dds_data_reg<=saw_data;</p><p>  default:dds_data_reg<=sin_data;</p><p><b>  endcase</b></p><p><b>  end </b&g

77、t;</p><p>  assign M=f_control;</p><p>  parameter seg0 = 7'h40,//數(shù)碼管顯示的表示</p><p>  seg1 = 7'h79,</p><p>  seg2 = 7'h24,</p><p>  seg3 = 7'

78、h30,</p><p>  seg4 = 7'h19,</p><p>  seg5 = 7'h12,</p><p>  seg6 = 7'h02,</p><p>  seg7 = 7'h78,</p><p>  seg8 = 7'h00,</p><

79、p>  seg9 = 7'h10,</p><p>  segoff = 7'b1111111;</p><p>  always@(M)</p><p><b>  begin</b></p><p>  if(M==32'd85899) begin smg<=se

80、g1;smg1<=segoff;end</p><p>  else if (M==32'd171798) begin smg<=seg2;smg1<=segoff; end </p><p>  else if (M==32'd257697) begin smg<=seg3;smg1<=segoff; end </p>

81、<p>  else if (M==32'd343596) begin smg<=seg4;smg1<=segoff; end</p><p>  else if (M==32'd429495) begin smg<=seg5;smg1<=segoff; end </p><p>  else if (M==32'd5153

82、94) begin smg<=seg6;smg1<=segoff; end </p><p>  else if (M==32'd601293) begin smg<=seg7;smg1<=segoff; end</p><p>  else if(M==32'd687192) begin smg<=seg8;smg1<

83、=segoff; end</p><p>  else if(M==32'd773091) begin smg<=seg9;smg1<=segoff; end</p><p><b>  else </b></p><p>  begin smg<=seg0;smg1<=seg1; end</p>

84、;<p><b>  end</b></p><p>  assign dds_data_out=dds_data_reg;</p><p><b>  endmodule</b></p><p>  /*****************************************************

85、********************/</p><p>  // 文件名稱:key_coding.v</p><p>  /*************************************************************************/</p><p>  module key_coding(reset,set_wavefo

86、rm_key,set_f_key,set_waveform,f_control);</p><p>  input reset;</p><p>  input set_waveform_key;</p><p>  input set_f_key;</p><p>  output [1:0] se

87、t_waveform;</p><p>  output [31:0] f_control;</p><p>  wire reset;</p><p>  wire set_waveform_key;</p><p>  wire set_f_key;</p><p>  reg [1:0] set_waveform

88、;</p><p>  reg [31:0] f_control;</p><p>  /******************波形設(shè)置****************************************/</p><p>  always @(negedge set_waveform_key or negedge reset)</p>&l

89、t;p><b>  begin </b></p><p>  if(!reset)</p><p>  set_waveform<=2'b00;</p><p><b>  else</b></p><p><b>  begin</b></p>

90、<p>  if(!set_waveform_key)//判斷按鍵是否按下</p><p><b>  begin </b></p><p>  set_waveform<=set_waveform+1'b1;</p><p><b>  end</b></p><p>

91、<b>  end</b></p><p><b>  end</b></p><p>  /****************頻率設(shè)置*******************************************/</p><p>  always @(negedge set_f_key or negedge re

92、set)</p><p><b>  begin</b></p><p>  if(!reset)</p><p>  f_control<=32'd85899;//初始頻率1kHz</p><p><b>  else</b></p><p><b>

93、;  begin</b></p><p>  if(!set_f_key)//判斷按鍵是否按下</p><p><b>  begin </b></p><p>  if(f_control==32'd858990)//如果頻率等于10kHz</p><p>  f_control<=32

94、9;d85899;//回到初始頻率</p><p><b>  else</b></p><p>  f_control<=f_control+32'd85899;//每按一次鍵增加1kHz</p><p><b>  end</b></p><p><b>  end

95、 </b></p><p><b>  end </b></p><p><b>  Endmodule</b></p><p>  附件1: 大學(xué)本科畢業(yè)論文(設(shè)計(jì))工作程序</p><p>  注:1.提前或推延進(jìn)行畢業(yè)論文(設(shè)計(jì))的,各階段要求相同,日程自定;</p

96、><p>  2.畢業(yè)論文(設(shè)計(jì))工作三個(gè)階段時(shí)間安排,可根據(jù)各專業(yè)特點(diǎn)適當(dāng)調(diào)整。 </p><p>  附件2: 大學(xué)本科畢業(yè)論文(設(shè)計(jì))撰寫規(guī)范</p><p>  一、畢業(yè)論文(設(shè)計(jì))文本結(jié)構(gòu)</p><p>  畢業(yè)論文(設(shè)計(jì))主要由8個(gè)部分組成:①封面

97、;②目錄;③題目;④中外文摘要;⑤正文;⑥參考文獻(xiàn);⑦謝辭;⑧附錄。</p><p>  二、畢業(yè)論文(設(shè)計(jì))各部分規(guī)范</p><p><b>  1. 封面</b></p><p>  封面按學(xué)校規(guī)定的格式填寫,包括論文(設(shè)計(jì))題目、作者姓名、指導(dǎo)教師姓名、學(xué)科專業(yè)等內(nèi)容。</p><p><b>  2.

98、 目錄</b></p><p>  目錄由畢業(yè)論文(設(shè)計(jì))各部分內(nèi)容的順序號(hào)、名稱和頁(yè)碼組成,目次中的內(nèi)容一般列出二級(jí)標(biāo)題即可。目錄應(yīng)該用“…………”連接名稱與頁(yè)碼。</p><p><b>  3. 題目</b></p><p>  論文(設(shè)計(jì))題目要恰當(dāng)、簡(jiǎn)明、凝練,能夠反映論文的主題及其內(nèi)容,做到文、題貼切。題目中不使用非規(guī)范

99、的縮略詞、符號(hào)、代號(hào)和公式,通常不采用問(wèn)話的方式。題目所使用的詞語(yǔ)應(yīng)當(dāng)考慮到有助于選擇關(guān)鍵詞和編制題錄、索引等。</p><p>  題目的中文字?jǐn)?shù)一般不超過(guò)20個(gè)字,外文題目不超過(guò)10個(gè)實(shí)詞,中外文標(biāo)題應(yīng)一致,居中編排格式。</p><p>  4. 中外文摘要及關(guān)鍵詞  摘要是對(duì)畢業(yè)論文(設(shè)計(jì))內(nèi)容不加注釋和評(píng)論的簡(jiǎn)短陳述。摘要主要是說(shuō)明研究工作的目的、方法、結(jié)果和結(jié)論。摘要應(yīng)具有獨(dú)

100、立性和自含性,即不閱讀全文,就能獲得畢業(yè)論文(設(shè)計(jì))必要的信息,使讀者確定有無(wú)必要閱讀全文。摘要中應(yīng)用第三人稱的方法記述論文的性質(zhì)和主題,不使用“本文”、“作者”等作為主語(yǔ),應(yīng)采用“對(duì)…進(jìn)行了研究”、“報(bào)告了…現(xiàn)狀”、“進(jìn)行了…調(diào)查”等表達(dá)方式。排除在本學(xué)科領(lǐng)域已成為常識(shí)的內(nèi)容,不得重復(fù)題目中已有的信息。語(yǔ)句要合乎邏輯關(guān)系,盡量同正文的文體保持一致。結(jié)構(gòu)要嚴(yán)謹(jǐn),表達(dá)要簡(jiǎn)明,語(yǔ)義要確切,一般不再分段落。對(duì)某些縮略語(yǔ)、簡(jiǎn)稱、代號(hào)等,除了相鄰

101、專業(yè)的讀者也能清楚理解的以外,在首次出現(xiàn)處必須加以說(shuō)明。摘要中通常不用圖表、化學(xué)結(jié)構(gòu)式以及非公知公用的符號(hào)和術(shù)語(yǔ)。</p><p>  畢業(yè)論文(設(shè)計(jì))的摘要包含中文摘要和外文摘要。中文摘要字?jǐn)?shù)約為200~300字,外文摘要約為200~300個(gè)實(shí)詞。</p><p>  關(guān)鍵詞(Keywords)是為了文獻(xiàn)標(biāo)引,從《漢語(yǔ)主題詞表》或論文中選取出來(lái),用以表示全文主題內(nèi)容信息的詞語(yǔ)或術(shù)語(yǔ)。關(guān)鍵

102、詞不宜用非通用的代號(hào)和分子式。</p><p>  關(guān)鍵詞一般為3~6個(gè)。關(guān)鍵詞的排序,通常應(yīng)按研究的對(duì)象、性質(zhì)(問(wèn)題)和采取的手段排序。中文關(guān)鍵詞兩詞之間應(yīng)留出一個(gè)漢字的空間,不加任何標(biāo)點(diǎn)符號(hào);外文關(guān)鍵詞之間用分號(hào)隔開(kāi)。</p><p><b>  5. 正文</b></p><p>  畢業(yè)論文(設(shè)計(jì))的正文包括前言(引言)、正文、結(jié)論三個(gè)

103、部分。外語(yǔ)類專業(yè)畢業(yè)生必須用所學(xué)專業(yè)外語(yǔ)撰寫。</p><p>  畢業(yè)論文(設(shè)計(jì))的篇幅一般6000字左右。</p><p><b>  (1)前言(引言)</b></p><p>  前言(引言)主要說(shuō)明研究工作的目的、范圍,對(duì)前人的研究狀況進(jìn)行評(píng)述分析,闡明研究設(shè)想、研究方法、實(shí)驗(yàn)設(shè)計(jì)、預(yù)期結(jié)果、成果的意義等。</p>&l

104、t;p><b>  (2)正文</b></p><p>  正文是對(duì)研究工作與研究?jī)?nèi)容的詳細(xì)表述,一般由標(biāo)題、文字、表格或公式等部分組成。該部分要運(yùn)用選定的研究方法分析問(wèn)題、論證觀點(diǎn),盡量反映出研究能力和學(xué)術(shù)水平。正文是畢業(yè)論文(設(shè)計(jì))的核心部分,占據(jù)主要篇幅。</p><p>  正文是論文的主體,要求觀點(diǎn)清晰、論點(diǎn)正確、論據(jù)可靠、論證嚴(yán)密、層次清楚。<

105、/p><p>  正文中的圖表和計(jì)量單位要規(guī)范。圖須有序號(hào)、圖題、圖例、量和單位,圖序號(hào)須用阿拉伯?dāng)?shù)字,與圖題空 1 格,寫在圖下方;表格采用 3線表,表頭線和表尾線為粗黑線,表兩邊不要串寫文字,表序號(hào)須用阿拉伯?dāng)?shù)字,與標(biāo)題空 1格,寫在表上方;一律使用法定計(jì)量單位。</p><p><b>  (3)結(jié)論</b></p><p>  結(jié)論是對(duì)整個(gè)

106、研究工作進(jìn)行歸納和總結(jié)。結(jié)論應(yīng)當(dāng)準(zhǔn)確、完整、明確、精練。如不可能導(dǎo)出應(yīng)有的結(jié)論,也可以沒(méi)有結(jié)論而進(jìn)行必要的討論,闡述本課題研究中存在的問(wèn)題及進(jìn)一步開(kāi)展研究的建議。</p><p><b>  6. 謝辭(致謝)</b></p><p>  謝辭(致謝)是對(duì)給予各類資助、指導(dǎo)和協(xié)助完成科研工作,以及提供各種條件的單位和個(gè)人表示的感謝。謝辭應(yīng)實(shí)事求是。</p>

107、<p><b>  7. 參考文獻(xiàn)</b></p><p>  文后參考文獻(xiàn),是論文的重要組成部分,按順序和規(guī)定的格式列在正文之后。所列出的文獻(xiàn),應(yīng)當(dāng)是作者親自閱讀或引用過(guò)的,出處要翔實(shí),要進(jìn)行核實(shí)查對(duì)。所引用的文獻(xiàn)應(yīng)是公開(kāi)出版的刊物或著作,內(nèi)部刊物一般不引用。</p><p>  正文中參考文獻(xiàn)的標(biāo)注方法,是在引用文字(即所引用的詞組、句子、段落等)結(jié)

108、束處的右上角標(biāo)出參考文獻(xiàn)序號(hào)。全文參考文獻(xiàn)的序號(hào)要按照從小到大的次序排列,某一文獻(xiàn)多次引用時(shí),要用同一序號(hào)標(biāo)出。</p><p>  文后參考文獻(xiàn)的編寫方式,是依正文中參考文獻(xiàn)序號(hào)的次序排列所有的參考文獻(xiàn),且一個(gè)參考文獻(xiàn)只能出現(xiàn)一次。</p><p><b>  8. 附錄</b></p><p>  凡不宜收入正文中而又有價(jià)值的內(nèi)容,可編入畢

109、業(yè)論文的附錄中。附錄內(nèi)容主要包括:①正文中所使用公式的推導(dǎo)與證明過(guò)程;②使用的主要符號(hào)、單位、縮寫、程序全文及其說(shuō)明等;③在正文中無(wú)法列出的實(shí)驗(yàn)數(shù)據(jù);④重復(fù)性數(shù)據(jù)圖表;⑤調(diào)查問(wèn)卷等。</p><p> ?。旑^空2行)目 錄(4號(hào)黑體,居中)</p><p>  摘要……………………………………………………………………………………1</p><p>  關(guān)鍵詞……

110、……………………………………………………………………………1</p><p>  Abstract………………………………………………………………………………1</p><p>  Key words……………………………………………………………………………1</p><p>  引言(或緒論)………………………………………………………………………1</p&g

111、t;<p>  1□材料與方法………………………………………………………………………Y</p><p>  1.1□材料 ……………………………………………………………………………Y</p><p>  1.2□方法 ……………………………………………………………………………Y</p><p>  1.2.1□×××

112、15;×…………………………………………………………………Y</p><p>  1.2.2□×××××…………………………………………………………………Y</p><p>  1.2.3□×××××…………………………………………………………………Y</p><

113、;p>  1.2.4□×××××…………………………………………………………………Y</p><p>  2□××………………………………………………………………………………Y</p><p>  2.1□×××××…………………………………………………………………

114、…Y</p><p>  3□×××…………………………………………………………………………… Y</p><p>  ……………………………………………………………(略)</p><p>  X ×××××(正文第X章)…………………………………………………………Y</p>

115、;<p>  致謝……………………………………………………………………………………Y</p><p>  參考文獻(xiàn)………………………………………………………………………………Y</p><p>  附錄A ××××(必要時(shí))………………………………………………………Y</p><p>  附錄B ×

116、×××(必要時(shí))………………………………………………………Y</p><p>  圖1 ××××(必要時(shí))…………………………………………………………Y</p><p>  圖2 ××××(必要時(shí))…………………………………………………………Y</p><p

117、>  表1 ××××(必要時(shí))……………………………………………………………Y</p><p>  表2 ××××(必要時(shí))……………………………………………………………Y</p><p>  注:1. 目次中的內(nèi)容一般列出“章”、“節(jié)”、“條”三級(jí)標(biāo)題即可;</p><p>  

118、2.X、Y表示具體的阿拉伯?dāng)?shù)字;</p><p>  畢業(yè)論文(設(shè)計(jì))題目(3號(hào)黑體)</p><p>  ××××專業(yè)學(xué)生 學(xué)生姓名</p><p>  指導(dǎo)教師 指導(dǎo)教師姓名(小四仿宋體)</p><p>  摘要:××××××

119、××××××××××××(200—300字,五號(hào)宋體)×××××××××××××××××……</p><p>  關(guān)鍵詞:&#

120、215;×× ×××× ××××× ×××(3-5個(gè),五號(hào)宋體)</p><p>  Title(3號(hào)Times New Romar)</p><p>  Student majoring in ××××

121、 Name</p><p>  Tutor Name(小四Times New Romar)</p><p>  Abstract: ××××××(五號(hào)Times New Romar,200—300個(gè)實(shí)詞)×××××××××

122、5;××××××××××××……</p><p>  Key words: ×××;××××;×××××;×××(3-5實(shí)詞個(gè),五號(hào)Times N

123、ew Romar)</p><p>  引言×××××(小四宋體)×××××××××××××××××××××××××

124、××××××××××××××××××××××××××××××××××××

125、5;××××××××××……。</p><p>  1 材料與方法 (仿宋體四號(hào))</p><p>  1.1 ××××××××××(黑體小四號(hào))</p><p>

126、  ××××××(小四宋體)×××××××××××××××××××××××××××××&#

127、215;××××××××××××××。</p><p>  1.1.1 ××(仿宋體小四號(hào))×××× ×××××××××

128、;×××××××××××××××××(小四宋體)××××××××××××××××××

129、15;×××××××××××××××××。</p><p>  1.1.2 ××(仿宋體小四號(hào))×××× ××××××

130、××××××××××××××××××××(小四宋體)×××××××××××××××

131、5;××××××××××××××××××××。</p><p>  1.2 ××××××××××(黑體小四號(hào))……

132、</p><p>  2 結(jié)果與分析 (仿宋體四號(hào))</p><p>  2.1 ××××××××××(黑體小四號(hào))</p><p>  ××××××(小四宋體)×××

133、15;××××××××××××××××××××××××××××××××××××&

134、#215;×××。</p><p>  2.1.1 ××(仿宋體小四號(hào))×××× ×××××××××××××××××××

135、5;××××××(小四宋體)×××××××××××××××××××××××××××××&#

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論