




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、.23/27專業(yè)資料整理分享 XX工業(yè)學(xué)院畢業(yè)設(shè)計(jì)論文設(shè)計(jì)論文題目:基于FPGA的信號(hào)發(fā)生器設(shè)計(jì)姓 名 學(xué) 號(hào) 院 系 電氣與電子工程學(xué)院專 業(yè) 電子信息科學(xué)與技術(shù)指導(dǎo)教師 . 專業(yè)資料整理分享 .目錄 TOC o 1-3 h z u HYPERLINK l _Toc357947088 摘要 PAGEREF _Toc357947088 h iii HYPERLINK l _Toc357947089 Abstract PAGEREF _Toc357947089 h iv HYPERLINK l _Toc357947090 前言 PAGEREF _Toc357947090 h 1 HYPERLIN
2、K l _Toc357947091 1緒論 PAGEREF _Toc357947091 h 3 HYPERLINK l _Toc357947092 1.1 FPGA簡(jiǎn)介 PAGEREF _Toc357947092 h 3 HYPERLINK l _Toc357947093 1.2 modelsim簡(jiǎn)介 PAGEREF _Toc357947093 h 5 HYPERLINK l _Toc357947094 1.3 DDS基本原理介紹 PAGEREF _Toc357947094 h 6 HYPERLINK l _Toc357947095 2設(shè)計(jì)方案 PAGEREF _Toc357947095 h
3、8 HYPERLINK l _Toc357947096 2.1 總體設(shè)計(jì)方案 PAGEREF _Toc357947096 h 8 HYPERLINK l _Toc357947097 2.2方案論證 PAGEREF _Toc357947097 h 8 HYPERLINK l _Toc357947098 方案一 PAGEREF _Toc357947098 h 8 HYPERLINK l _Toc357947099 方案二 PAGEREF _Toc357947099 h 9 HYPERLINK l _Toc357947100 方案三 PAGEREF _Toc357947100 h 9 HYPERLI
4、NK l _Toc357947101 2.3方案確定 PAGEREF _Toc357947101 h 9 HYPERLINK l _Toc357947102 3 硬件電路設(shè)計(jì) PAGEREF _Toc357947102 h 11 HYPERLINK l _Toc357947103 3.1硬件設(shè)計(jì)注意事項(xiàng) PAGEREF _Toc357947103 h 11 HYPERLINK l _Toc357947104 3.2 DA電路 PAGEREF _Toc357947104 h 11 HYPERLINK l _Toc357947105 3.3濾波電路 PAGEREF _Toc357947105 h
5、12 HYPERLINK l _Toc357947106 3.4硬件電路實(shí)現(xiàn) PAGEREF _Toc357947106 h 13 HYPERLINK l _Toc357947107 4軟件設(shè)計(jì) PAGEREF _Toc357947107 h 14 HYPERLINK l _Toc357947108 4.1波形產(chǎn)生模塊 PAGEREF _Toc357947108 h 14 HYPERLINK l _Toc357947109 正弦波 PAGEREF _Toc357947109 h 14 HYPERLINK l _Toc357947110 方波 PAGEREF _Toc357947110 h 15
6、 HYPERLINK l _Toc357947111 4.1.3 三角波 PAGEREF _Toc357947111 h 15 HYPERLINK l _Toc357947112 4.2頻率控制模塊 PAGEREF _Toc357947112 h 16 HYPERLINK l _Toc357947113 4.3相位累加模塊 PAGEREF _Toc357947113 h 17 HYPERLINK l _Toc357947114 4.4選擇波形模塊 PAGEREF _Toc357947114 h 17 HYPERLINK l _Toc357947115 4.5幅度控制模塊 PAGEREF _To
7、c357947115 h 18 HYPERLINK l _Toc357947116 4.6軟件設(shè)計(jì)總成 PAGEREF _Toc357947116 h 19 HYPERLINK l _Toc357947117 5 調(diào)試 PAGEREF _Toc357947117 h 20 HYPERLINK l _Toc357947118 5.1設(shè)計(jì)及仿真調(diào)試使用設(shè)備 PAGEREF _Toc357947118 h 20 HYPERLINK l _Toc357947119 5.2 調(diào)試方法 PAGEREF _Toc357947119 h 20 HYPERLINK l _Toc357947120 5.2.1 硬
8、件調(diào)試 PAGEREF _Toc357947120 h 20 HYPERLINK l _Toc357947121 5.2.2 軟件調(diào)試 PAGEREF _Toc357947121 h 20 HYPERLINK l _Toc357947122 5.2.3 綜合調(diào)試 PAGEREF _Toc357947122 h 20 HYPERLINK l _Toc357947123 5.3 調(diào)試結(jié)果 PAGEREF _Toc357947123 h 21 HYPERLINK l _Toc357947124 5.3.1 軟件仿真結(jié)果及分析 PAGEREF _Toc357947124 h 21 HYPERLINK
9、l _Toc357947125 5.3.2 綜合調(diào)試結(jié)果 PAGEREF _Toc357947125 h 24 HYPERLINK l _Toc357947126 總結(jié) PAGEREF _Toc357947126 h 25 HYPERLINK l _Toc357947127 致謝辭 PAGEREF _Toc357947127 h 26 HYPERLINK l _Toc357947128 參考文獻(xiàn) PAGEREF _Toc357947128 h 27 HYPERLINK l _Toc357947129 附件1 ROM生成源程序 PAGEREF _Toc357947129 h 28 HYPERLI
10、NK l _Toc357947130 附件2 40位流水線加法器程序 PAGEREF _Toc357947130 h 30摘要信號(hào)發(fā)生器是數(shù)字設(shè)備運(yùn)行工作中必不可少的一部分,沒(méi)有良好的信號(hào)源,最終就會(huì)導(dǎo)致系統(tǒng)不能夠正常工作,更不必談什么實(shí)現(xiàn)其它功能了。本次論文主要研究了基于FPGA的函數(shù)信號(hào)發(fā)生器的設(shè)計(jì)思路與軟硬件實(shí)現(xiàn)。首先介紹了本次設(shè)計(jì)任務(wù)的總體設(shè)計(jì)方案,以及該方案中設(shè)計(jì)的知識(shí)點(diǎn),所使用的軟件及硬件基本知識(shí)。在此基礎(chǔ)上進(jìn)行了硬件電路的設(shè)計(jì),主要采用DDS直接數(shù)字頻率合成方案,采用了Altera公司的低成本cyclone II系列FPGA的EP2C5QC8作為核心芯片,構(gòu)建了外圍的0832DA
11、轉(zhuǎn)換電路,以及1MHZ低通濾波電路。再次介紹系統(tǒng)軟件的設(shè)計(jì)過(guò)程,給出了FPGA自底向上的設(shè)計(jì)思路,以及各個(gè)底層模塊的設(shè)計(jì)原理與思路分析,最后介紹了相關(guān)軟件的應(yīng)用知識(shí)。最后一段介紹了論文的相關(guān)結(jié)論,進(jìn)行仿真調(diào)試的過(guò)程。關(guān)鍵詞:信號(hào)發(fā)生器;FPGA;Modelsim;Verilog語(yǔ)言AbstractSignal generator is an essential part of digital equipment operation work, theres not a good signal source, will eventually lead to system cant normal
12、work, more dont have to talk about what other functions.This paper mainly studies the function signal generator based on FPGA design and hardware and software implementation. First introduced the overall design scheme of the design task, and the scheme of design knowledge, the use of basic knowledge
13、 of software and hardware. On the basis of the hardware circuit design, and mainly adopts DDS , using the low cost of Altera company EP2C5QC8 of cyclone II series FPGA as the core chip, peripheral 0832 da conversion circuit is constructed, and the 1 MHZ low-pass filter circuit. Again, introduced the
14、 system software design process, presents the design idea of FPGA from the bottom up, and the underlying design principles and ideas of the module analysis, finally introduces the application of related software knowledge. The last paragraph introduces the papers relevant to the conclusion that the
15、simulation debugging process.Keywords: Signal generator, FPGA, Modelsim, Verilog HDL. 專業(yè)資料整理分享 前言隨著我國(guó)的經(jīng)濟(jì)日益增長(zhǎng),社會(huì)對(duì)電子產(chǎn)品的需求量也就越來(lái)越大,目前我國(guó)的電子產(chǎn)品市場(chǎng)正在迅速的壯大,市場(chǎng)前景廣闊。FPGA 在現(xiàn)代數(shù)字電路設(shè)計(jì)中發(fā)揮著越來(lái)越重要的作用。FPGA/CPLD 所具有的靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過(guò)編程來(lái)修改,這樣就極大地提高了電子系統(tǒng)設(shè)計(jì)的靈活性和通用性,縮短了產(chǎn)品的上市時(shí)間并可降低電子系統(tǒng)的開發(fā)成本,且可以毫不夸張地講,FPGA/CP
16、LD能完成任何數(shù)字器件的功能,從簡(jiǎn)單的74電路到高性能的CPU。它的影響毫不亞于20世紀(jì)70年代單片機(jī)的發(fā)明和使用?,F(xiàn)在隨著電子技術(shù)的發(fā)展,產(chǎn)品的技術(shù)含量越來(lái)越高,使得芯片的復(fù)雜程度越來(lái)越高,人們對(duì)數(shù)萬(wàn)門乃至數(shù)百萬(wàn)門設(shè)計(jì)的需求也越來(lái)越多,特別是專用集成電路ASIC設(shè)計(jì)技術(shù)的日趨進(jìn)步和完善,推動(dòng)了數(shù)字系統(tǒng)設(shè)計(jì)的迅速發(fā)展。僅靠原理圖輸入方式已不能滿足要求,采用硬件描述語(yǔ)言VHDL的設(shè)計(jì)方式應(yīng)運(yùn)而生,解決了傳統(tǒng)用電路原理圖設(shè)計(jì)大系統(tǒng)工程時(shí)的諸多不便,成為電子電路設(shè)計(jì)人員的最得力助手。設(shè)計(jì)工作從行為、功能級(jí)開始,并向著設(shè)計(jì)的高層次發(fā)展。這樣就出現(xiàn)了第三代EDA系統(tǒng),其特點(diǎn)是高層次設(shè)計(jì)的自動(dòng)化。第三代E
17、DA系統(tǒng)中除了引入硬件描述語(yǔ)言,還引入了行為綜合工具和邏輯綜合工具,采用較高的抽象層次進(jìn)行設(shè)計(jì),并按層次式方法進(jìn)行管理,可大大提高處理復(fù)雜設(shè)計(jì)的能力,縮短設(shè)計(jì)周期,綜合優(yōu)化工具的采用使芯片的品質(zhì)如面積、速度和功耗等獲得了優(yōu)化,因而第三代EDA系統(tǒng)迅速得到了推廣應(yīng)用。目前,最通用的硬件描述語(yǔ)言有VHDL和VerilogHDL兩種,現(xiàn)在大多設(shè)計(jì)者都使用93年版標(biāo)準(zhǔn)的VHDL,并且通過(guò)了IEEE認(rèn)定,成為世界范圍內(nèi)通用的數(shù)字系統(tǒng)設(shè)計(jì)標(biāo)準(zhǔn)。VerilogHDL是一種新興的程序設(shè)計(jì)語(yǔ)言,使用VerilogHDL進(jìn)行設(shè)計(jì)其性能總是比常規(guī)使用CPU或者M(jìn)CU的程序設(shè)計(jì)語(yǔ)言在性能上要高好幾個(gè)數(shù)量級(jí)。這就是說(shuō),
18、在傳統(tǒng)上使用軟件語(yǔ)言的地方,VerilogHDL語(yǔ)言作為一種新的實(shí)現(xiàn)方式會(huì)應(yīng)用得越來(lái)越廣泛。本課題設(shè)計(jì)是采用美國(guó)Altera公司的cyclone II器件,使用的是Altera公司的EDA軟件平臺(tái)quartus II可編程邏輯器件開發(fā)軟件?;贓DA工具的FPGA/CPLD的開發(fā)流程,FPGA/CPLD器件的設(shè)計(jì)一般可分為設(shè)計(jì)輸入、設(shè)計(jì)實(shí)現(xiàn)和編程三個(gè)設(shè)計(jì)步驟:設(shè)計(jì)輸入方式主要由文本輸入和圖形輸入兩種,可根據(jù)需要選擇,也可混合輸入。EDA工具會(huì)自動(dòng)檢查語(yǔ)法;設(shè)計(jì)實(shí)現(xiàn)階段EDA工具對(duì)設(shè)計(jì)文件進(jìn)行編譯,進(jìn)行邏輯綜合、優(yōu)化,并針對(duì)器件進(jìn)行映射、布局、布線,產(chǎn)生相應(yīng)的適配文件;編程階段EDA軟件將適配文
19、件配置到相應(yīng)的CPLD/FPGA器件中,使其能夠?qū)崿F(xiàn)預(yù)期的功能。信號(hào)發(fā)生器是數(shù)字設(shè)備運(yùn)行工作中必不可少的一部分,沒(méi)有良好的信號(hào)源,最終就會(huì)導(dǎo)致系統(tǒng)不能夠正常工作,更不必談什么實(shí)現(xiàn)其它功能了。不論是處于開發(fā)還是故障檢修階段,輸出標(biāo)準(zhǔn)且性能優(yōu)秀的信號(hào)發(fā)生器總是能夠帶來(lái)工作效率的大幅提升,使新產(chǎn)品有一個(gè)標(biāo)準(zhǔn)的信號(hào)源、損壞的系統(tǒng)得到正確校驗(yàn),不會(huì)被一些故障所蒙蔽。在傳統(tǒng)的信號(hào)發(fā)生器中,大都使用分立元件,而且體積龐大攜帶不便,且大部分只能輸出一種脈沖信號(hào)波形。在設(shè)計(jì)領(lǐng)域,不管采用什么技術(shù)生產(chǎn),生產(chǎn)的產(chǎn)品用在哪里,其產(chǎn)品設(shè)計(jì)的宗旨都是離不開以下幾點(diǎn):實(shí)用性高、成本低、可升級(jí)、功能完善可擴(kuò)展等!使用專用的數(shù)
20、字電路設(shè)計(jì)的信號(hào)發(fā)生器,設(shè)備成本高、使用復(fù)雜。基于以上考慮,在中小型數(shù)字電路的設(shè)計(jì)和測(cè)試中,迫切需要設(shè)計(jì)一種小型易用成本低廉的信號(hào)發(fā)生器。此課題的設(shè)計(jì)以小型經(jīng)濟(jì),集成度高,性能穩(wěn)定,使用方便為指導(dǎo),在功能上力求完善實(shí)用,同時(shí)兼顧商業(yè)價(jià)值與應(yīng)用價(jià)值的體現(xiàn)。1緒論1.1 FPGA簡(jiǎn)介FPGA ,即現(xiàn)場(chǎng)可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路ASIC領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。背景目前以硬件描述語(yǔ)言Verilog 或 VHDL所完成的電路設(shè)計(jì),可以經(jīng)過(guò)簡(jiǎn)單的綜合與布局,
21、快速的燒錄至 FPGA 上進(jìn)行測(cè)試,是現(xiàn)代 IC 設(shè)計(jì)驗(yàn)證的技術(shù)主流。這些可編輯元件可以被用來(lái)實(shí)現(xiàn)一些基本的邏輯門電路比如AND、OR、XOR、NOT或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。在大多數(shù)的FPGA里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器Flipflop或者其他更加完整的記憶塊。 系統(tǒng)設(shè)計(jì)師可以根據(jù)需要通過(guò)可編輯的連接把FPGA內(nèi)部的邏輯塊連接起來(lái),就好像一個(gè)電路試驗(yàn)板被放在了一個(gè)芯片里。一個(gè)出廠后的成品FPGA的邏輯塊和連接可以按照設(shè)計(jì)者而改變,所以FPGA可以完成所需要的邏輯功能。 FPGA一般來(lái)說(shuō)比ASIC專用集成芯片的速度要慢,無(wú)法完成復(fù)雜的設(shè)計(jì),而且消耗更多
22、的電能。但是他們也有很多的優(yōu)點(diǎn)比如可以快速成品,可以被修改來(lái)改正程序中的錯(cuò)誤和更便宜的造價(jià)。廠商也可能會(huì)提供便宜的但是編輯能力差的FPGA。因?yàn)檫@些芯片有比較差的可編輯能力,所以這些設(shè)計(jì)的開發(fā)是在普通的FPGA上完成的,然后將設(shè)計(jì)轉(zhuǎn)移到一個(gè)類似于ASIC的芯片上。另外一種方法是用CPLD復(fù)雜可編程邏輯器件備。CPLD與FPGA的關(guān)系早在1980年代中期,FPGA已經(jīng)在PLD設(shè)備中扎根。CPLD和FPGA包括了一些相對(duì)大數(shù)量的可編輯邏輯單元。CPLD邏輯門的密度在幾千到幾萬(wàn)個(gè)邏輯單元之間,而FPGA通常是在幾萬(wàn)到幾百萬(wàn)。 CPLD和FPGA的主要區(qū)別是他們的系統(tǒng)結(jié)構(gòu)。CPLD是一個(gè)有點(diǎn)限制性的結(jié)
23、構(gòu)。這個(gè)結(jié)構(gòu)由一個(gè)或者多個(gè)可編輯的結(jié)果之和的邏輯組列和一些相對(duì)少量的鎖定的寄存器。這樣的結(jié)果是缺乏編輯靈活性,但是卻有可以預(yù)計(jì)的延遲時(shí)間和邏輯單元對(duì)連接單元高比率的優(yōu)點(diǎn)。而FPGA卻是有很多的連接單元,這樣雖然讓它可以更加靈活的編輯,但是結(jié)構(gòu)卻復(fù)雜的多。 CPLD和FPGA另外一個(gè)區(qū)別是大多數(shù)的FPGA含有高層次的內(nèi)置模塊比如加法器和乘法器和內(nèi)置的記憶體。因此一個(gè)有關(guān)的重要區(qū)別是很多新的FPGA支持完全的或者部分的系統(tǒng)內(nèi)重新配置。允許他們的設(shè)計(jì)隨著系統(tǒng)升級(jí)或者動(dòng)態(tài)重新配置而改變。一些FPGA可以讓設(shè)備的一部分重新編輯而其他部分繼續(xù)正常運(yùn)行。 FPGA工作原理FPGA采用了邏輯單元陣列LCALo
24、gic Cell Array這樣一個(gè)概念,內(nèi)部包括可配置邏輯模塊CLBConfigurable Logic Block、輸出輸入模塊IOBInput Output Block和內(nèi)部連線Interconnect三個(gè)部分。 現(xiàn)場(chǎng)可編程門陣列FPGA是可編程器件。與傳統(tǒng)邏輯電路和門陣列如PAL,GAL及CPLD器件相比,FPGA具有不同的結(jié)構(gòu),FPGA利用小型查找表161RAM來(lái)實(shí)現(xiàn)組合邏輯,每個(gè)查找表連接到一個(gè)D觸發(fā)器的輸入端,觸發(fā)器再來(lái)驅(qū)動(dòng)其他邏輯電路或驅(qū)動(dòng)I/O,由此構(gòu)成了既可實(shí)現(xiàn)組合邏輯功能又可實(shí)現(xiàn)時(shí)序邏輯功能的基本邏輯單元模塊,這些模塊間利用金屬連線互相連接或連接到I/O模塊。FPGA的邏
25、輯是通過(guò)向內(nèi)部靜態(tài)存儲(chǔ)單元加載編程數(shù)據(jù)來(lái)實(shí)現(xiàn)的,存儲(chǔ)在存儲(chǔ)器單元中的值決定了邏輯單元的邏輯功能以及各模塊之間或模塊與I/O間的聯(lián)接方式,并最終決定了FPGA所能實(shí)現(xiàn)的功能,FPGA允許無(wú)限次的編程. FPGA芯片的內(nèi)部結(jié)構(gòu)可編程輸入輸出單元IOB可編程輸入/輸出單元簡(jiǎn)稱I/O單元,是芯片與外界電路的接口部分,完成不同電氣特性下對(duì)輸入/輸出信號(hào)的驅(qū)動(dòng)與匹配要求。FPGA內(nèi)的I/O按組分類,每組都能夠獨(dú)立地支持不同的I/O標(biāo)準(zhǔn)。通過(guò)軟件的靈活配置,可適配不同的電氣標(biāo)準(zhǔn)與I/O物理特性,可以調(diào)整驅(qū)動(dòng)電流的大小,可以改變上、下拉電阻。目前,I/O口的頻率也越來(lái)越高,一些高端的FPGA通過(guò)DDR寄存器技
26、術(shù)可以支持高達(dá)2Gbps的數(shù)據(jù)速率。 外部輸入信號(hào)可以通過(guò)IOB模塊的存儲(chǔ)單元輸入到FPGA的內(nèi)部,也可以直接輸入FPGA 內(nèi)部。當(dāng)外部輸入信號(hào)經(jīng)過(guò)IOB模塊的存儲(chǔ)單元輸入到FPGA內(nèi)部時(shí),其保持時(shí)間Hold Time的要求可以降低,通常默認(rèn)為0。 為了便于管理和適應(yīng)多種電器標(biāo)準(zhǔn),FPGA的IOB被劃分為若干個(gè)組bank,每個(gè)bank的接口標(biāo)準(zhǔn)由其接口電壓VCCO決定,一個(gè)bank只能有一種VCCO,但不同bank的VCCO可以不同。只有相同電氣標(biāo)準(zhǔn)的端口才能連接在一起,VCCO電壓相同是接口標(biāo)準(zhǔn)的基本條件??膳渲眠壿媺KCLBCLB是FPGA內(nèi)的基本邏輯單元。CLB的實(shí)際數(shù)量和特性會(huì)依器件的不
27、同而不同,但是每個(gè)CLB都包含一個(gè)可配置開關(guān)矩陣,此矩陣由4或6個(gè)輸入、一些選型電路多路復(fù)用器等和觸發(fā)器組成。開關(guān)矩陣是高度靈活的,可以對(duì)其進(jìn)行配置以便處理組合邏輯、移位寄存器或RAM。在Xilinx公司的FPGA器件中,CLB由多個(gè)一般為4個(gè)或2個(gè)相同的Slice和附加邏輯構(gòu)成。每個(gè)CLB模塊不僅可以用于實(shí)現(xiàn)組合邏輯、時(shí)序邏輯,還可以配置為分布式RAM和分布式ROM。 基本特點(diǎn)采用FPGA設(shè)計(jì)ASIC電路,用戶不需要投片生產(chǎn),就能得到合用的芯片。 FPGA可做其它全定制或半定制ASIC電路的中試樣片。 FPGA內(nèi)部有豐富的觸發(fā)器和I/O引腳。 FPGA是ASIC電路中設(shè)計(jì)周期最短、開發(fā)費(fèi)用最
28、低、風(fēng)險(xiǎn)最小的器件之一。 FPGA采用高速CMOS工藝,功耗低,可以與CMOS、TTL電平兼容。 可以說(shuō),FPGA芯片是小批量系統(tǒng)提高系統(tǒng)集成度、可靠性的最佳選擇之一。 FPGA是由存放在片內(nèi)RAM中的程序來(lái)設(shè)置其工作狀態(tài)的,因此,工作時(shí)需要對(duì)片內(nèi)的RAM進(jìn)行編程。用戶可以根據(jù)不同的配置模式,采用不同的編程方式。加電時(shí),FPGA芯片將EPROM中數(shù)據(jù)讀入片內(nèi)編程RAM中,配置完成后,FPGA進(jìn)入工作狀態(tài)。掉電后,FPGA恢復(fù)成白片,內(nèi)部邏輯關(guān)系消失,因此,FPGA能夠反復(fù)使用。FPGA的編程無(wú)須專用的FPGA編程器,只須用通用的EPROM、PROM編程器即可。當(dāng)需要修改FPGA功能時(shí),只需換一
29、片EPROM即可。這樣,同一片F(xiàn)PGA,不同的編程數(shù)據(jù),可以產(chǎn)生不同的電路功能。因此,FPGA的使用非常靈活。1.2 modelsim簡(jiǎn)介Mentor公司的ModelSim是業(yè)界最優(yōu)秀的HDL語(yǔ)言仿真軟件,它能提供友好的仿真環(huán)境,是業(yè)界唯一的單內(nèi)核支持VHDL和Verilog混合仿真的仿真器。它采用直接優(yōu)化的編譯技術(shù)、Tcl/Tk技術(shù)、和單一內(nèi)核仿真技術(shù),編譯仿真速度快,編譯的代碼與平臺(tái)無(wú)關(guān),便于保護(hù)IP核,個(gè)性化的圖形界面和用戶接口,為用戶加快調(diào)錯(cuò)提供強(qiáng)有力的手段,是FPGA/ASIC設(shè)計(jì)的首選仿真軟件。主要特點(diǎn):RTL和門級(jí)優(yōu)化,本地編譯結(jié)構(gòu),編譯仿真速度快,跨平臺(tái)跨版本仿真;單內(nèi)核VHD
30、L和Verilog混合仿真;源代碼模版和助手,項(xiàng)目管理;集成了性能分析、波形比較、代碼覆蓋、數(shù)據(jù)流ChaseX、Signal Spy、虛擬對(duì)象Virtual Object、Memory窗口、Assertion窗口、源碼窗口顯示信號(hào)值、信號(hào)條件斷點(diǎn)等眾多調(diào)試功能;C和Tcl/Tk接口,C調(diào)試; 對(duì)SystemC的直接支持,和HDL任意混合; 支持SystemVerilog的設(shè)計(jì)功能; 對(duì)系統(tǒng)級(jí)描述語(yǔ)言的最全面支持,SystemVerilog,SystemC,PSL; ASIC Sign off。 ModelSim分幾種不同的版本:SE、PE、LE和OEM,其中SE是最高級(jí)的版本,而集成在 Act
31、el、Atmel、Altera、Xilinx以及Lattice等FPGA廠商設(shè)計(jì)工具中的均是其OEM版本。SE版和OEM版在功能和性能方面有較大差別,比如對(duì)于大家都關(guān)心的仿真速度問(wèn)題,以Xilinx公司提供的OEM版本ModelSim XE為例,對(duì)于代碼少于40000行的設(shè)計(jì),ModelSim SE 比ModelSim XE要快10倍;對(duì)于代碼超過(guò)40000行的設(shè)計(jì),ModelSim SE要比ModelSim XE快近40倍。ModelSim SE支持PC、UNIX和LINUX混合平臺(tái);提供全面完善以及高性能的驗(yàn)證功能;全面支持業(yè)界廣泛的標(biāo)準(zhǔn);Mentor Graphics公司提供業(yè)界最好的技
32、術(shù)支持與服務(wù)。1.3 DDS基本原理介紹直接數(shù)字頻率合成技術(shù)是頻率合成領(lǐng)域中的一項(xiàng)新技術(shù)。DDS的設(shè)計(jì)思想完全是基于數(shù)值計(jì)算信號(hào)波形的抽樣值來(lái)實(shí)現(xiàn)頻率合成的。DDS的工作原理是基于相位和幅度的對(duì)應(yīng)關(guān)系,通過(guò)改變頻率控制字來(lái)改變相位累加器的累加速度,然后在固定時(shí)鐘的控制下取樣,取樣得到的相位值通過(guò)相位幅度轉(zhuǎn)換得到與相位值對(duì)應(yīng)的幅度序列,幅度序列通過(guò)數(shù)模轉(zhuǎn)換得到模擬形式量化的正弦波輸出。相位累加器低通濾波器D/A轉(zhuǎn)換器波形存儲(chǔ)器低通濾波器D/A轉(zhuǎn)換器波形存儲(chǔ)器N位相位寄存器N位加法器N位加法器頻率控制字KFDDS時(shí)鐘f圖1-1 DDS的結(jié)構(gòu)原理圖DDS的結(jié)構(gòu)原理圖如圖1-1。其中相位累加器字長(zhǎng)為N
33、,DDS控制時(shí)鐘頻率為fc,頻率控制字為K。DDS直接從相位的概念出發(fā)進(jìn)行頻率合成。相位累加器由加法器與累加寄存器級(jí)聯(lián)構(gòu)成。每來(lái)一個(gè)時(shí)鐘脈沖fDDS的核心就是相位累加器,利用它來(lái)產(chǎn)生信號(hào)遞增的相位信息,整個(gè)DDS系統(tǒng)在統(tǒng)一的參考時(shí)鐘下工作,每個(gè)時(shí)鐘周期相位累加器作加法運(yùn)算一次。加法運(yùn)算的步進(jìn)越大,相應(yīng)合成的相位值變化越快,輸出信號(hào)的頻率也就越高。對(duì)于幅值歸一化的正弦波信號(hào)的瞬時(shí)值完全由瞬時(shí)相位來(lái)決定,因?yàn)閣=(t)相位累加器利用Nbit二進(jìn)制加法器的模溢出特性來(lái)模擬理想正弦波的2相位周期。相位累加器輸出和ROM輸出可分別理解為理想正弦波相位信號(hào)和時(shí)域波形的時(shí)鐘抽樣。用相位累加器輸出的數(shù)據(jù)作為波
34、形存儲(chǔ)器的相位取樣地址,這樣就可把存儲(chǔ)在波形存儲(chǔ)器內(nèi)的波形抽樣值二進(jìn)制編碼經(jīng)查找表查出,完成相位到幅值轉(zhuǎn)換。波形存儲(chǔ)去的輸出送到D/A轉(zhuǎn)換器,D/A轉(zhuǎn)換器將數(shù)字量形式的波形幅值轉(zhuǎn)換成所要求合成頻率的模擬量形式信號(hào)。低通濾波器用于濾除不需要的取樣分量,以便輸出頻譜純凈的正弦波信號(hào)。相位累加器字長(zhǎng)為N,DDS控制時(shí)鐘頻率為fc,時(shí)鐘周期為Tc=1fc,頻率控制字為K。系統(tǒng)工作時(shí),累加器的單個(gè)時(shí)鐘周期的增量值為=K*2因DDS輸出信號(hào)是對(duì)正弦波的抽樣合成,所以應(yīng)滿足Niqust定理的要求,即fDDS2n-1,也就是要求K22設(shè)計(jì)方案2.1 總體設(shè)計(jì)方案設(shè)計(jì)步驟此設(shè)計(jì)將按模塊式實(shí)現(xiàn),設(shè)計(jì)總共分為四大部
35、分完成:1.產(chǎn)生波形三種波形:方波、三角波和矩形波信號(hào);2.波形選擇;3.頻率控制;4.幅度控制。設(shè)計(jì)思想利用Verilog HDL編程,依據(jù)基本數(shù)字電路模塊原理進(jìn)行整合。系統(tǒng)各部分所需工作時(shí)鐘信號(hào)由輸入系統(tǒng)時(shí)鐘信號(hào)經(jīng)分頻得到,系統(tǒng)時(shí)鐘輸入端應(yīng)滿足輸入脈沖信號(hào)的要求。具備幅度和頻率可調(diào)功能,幅度通過(guò)兩個(gè)按鍵可以增減調(diào)節(jié),頻率控制模塊則是一個(gè)簡(jiǎn)易的計(jì)數(shù)器,控制步徑為100HZ的可調(diào)頻率,達(dá)到設(shè)計(jì)課題所要求的輸出波形頻率可調(diào)及幅度可調(diào)功能。幅度可調(diào)功能由于比較簡(jiǎn)單,可以在FPGA外部利用硬件電路實(shí)現(xiàn)??傮w設(shè)計(jì)框圖如下圖2-1所示:濾波輸出D/A轉(zhuǎn)換器信號(hào)控制信號(hào)產(chǎn)生時(shí)鐘信號(hào)濾波輸出D/A轉(zhuǎn)換器信號(hào)
36、控制信號(hào)產(chǎn)生時(shí)鐘信號(hào)選擇信號(hào)選擇信號(hào)圖2-1系統(tǒng)總體框圖2.2方案論證方案一采用DDS直接數(shù)字頻率合成器來(lái)設(shè)計(jì),設(shè)計(jì)總體框圖如圖2-2所示。在設(shè)計(jì)界里眾所周知,DDS器件采用高速數(shù)字電路和高速D/A轉(zhuǎn)換技術(shù),具有頻率轉(zhuǎn)換時(shí)間短、頻率分辨率高、頻率穩(wěn)定度高、輸出信號(hào)頻率和相位可快速程控切換等優(yōu)點(diǎn),所以,我們可以利用DDS具有很好的相位控制和幅度控制功能,另外其數(shù)據(jù)采樣功能也是極具精確和完善的,它可以產(chǎn)生較為精確的任何有規(guī)則波形信號(hào),可以實(shí)現(xiàn)對(duì)信號(hào)進(jìn)行全數(shù)字式調(diào)制。用FPGA和DDS實(shí)現(xiàn)信號(hào)調(diào)制,既克服了傳統(tǒng)的方法實(shí)現(xiàn)帶來(lái)的缺點(diǎn),若采用它來(lái)編程設(shè)計(jì),必定會(huì)事半功倍,且使設(shè)計(jì)趨于理想狀態(tài)。但鑒于DD
37、S的占用ROM空間較大,我們?cè)O(shè)計(jì)時(shí)就必須考慮到所用期間的ROM空間是否夠用,結(jié)合我選用的Cyclone II 系列的 EP2C5Q208C8N器件所提供的26個(gè) M4KRAM存儲(chǔ)模塊,可以高達(dá)1.1Mbits的存儲(chǔ)單元。應(yīng)該可以滿足本次設(shè)計(jì)的需要。低通濾波D/A變換相位累加器低通濾波D/A變換相位累加器頻率控制字ROMROM圖2-2 DDS與FPGA總體設(shè)計(jì)圖2.2.2方案二采用震蕩器頻率合成方案。具體方案如下:首先通過(guò)頻率合成技術(shù)產(chǎn)生所需要頻率的方波,通過(guò)積分電路就可以得到同頻率的三角波,再經(jīng)過(guò)濾波器就可以得到正弦波。其優(yōu)點(diǎn)是工作頻率可望做得很高,也可以達(dá)到很高的頻率分辨率;缺點(diǎn)是使用的濾波
38、器要求通帶可變,實(shí)現(xiàn)很難,高低頻率比不可能做得很高。2.2.3方案三采用VHDL語(yǔ)言來(lái)編程,然后下載文件到FPGA來(lái)實(shí)現(xiàn)。VHDL語(yǔ)言是電子設(shè)計(jì)領(lǐng)域的主流硬件描述語(yǔ)言,具有很強(qiáng)的電路描述和建模能力,能從多個(gè)層次對(duì)數(shù)字系統(tǒng)進(jìn)行建模和描述,從而大大降低了硬件設(shè)計(jì)任務(wù),提高了設(shè)計(jì)效率和可靠性,要比模擬電路快得多。該方案是利用FPGA具有的靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過(guò)編程來(lái)修改,極大地提高了電子系統(tǒng)設(shè)計(jì)的靈活性和通用性,而且大大縮短了系統(tǒng)的開發(fā)周期。2.3方案確定由上述三個(gè)方案對(duì)比,采用第一種方案:使用直接數(shù)字信號(hào)合成技術(shù)DDS,將三種波形的數(shù)據(jù)存儲(chǔ)在FPGA
39、配置的ROM中,通過(guò)FPGA軟件掃描方式將波形數(shù)據(jù)讀出傳輸給DAC0832產(chǎn)生波形輸出。這種方法在軟、硬件電路設(shè)計(jì)上都簡(jiǎn)單,且與我們的設(shè)計(jì)思路緊密結(jié)合。幅度控制部分在設(shè)計(jì)中目前有兩種方法:其一是通過(guò)軟件將存儲(chǔ)的波形數(shù)據(jù)進(jìn)行統(tǒng)一比例的縮放在輸出給DAC0832,這樣就可以實(shí)現(xiàn)幅度的調(diào)節(jié)。第二種方法是通過(guò)外部電位器調(diào)節(jié)DAC0832參考電壓的值來(lái)調(diào)節(jié)輸出幅度。第一中鋒方法調(diào)節(jié)精確但是除法器肯定會(huì)占用大量的FPGA內(nèi)部資源,造成不必要的開銷。而使用電位器調(diào)節(jié)DAC0832的參考電壓的方法簡(jiǎn)單,但是調(diào)節(jié)精度很難達(dá)到0.1V的步進(jìn)值。鑒于現(xiàn)在還出于理論分析時(shí)期不易決定何種方法更好,此點(diǎn)暫時(shí)待定等試驗(yàn)階段
40、在做確認(rèn)。波形組合如果采用分開式模塊實(shí)現(xiàn),也必將導(dǎo)致占用大量的資源,而且模塊設(shè)計(jì)復(fù)雜度提高,只要采用重復(fù)調(diào)用一個(gè)模塊的設(shè)計(jì)方法,既可以降低資源的占用率,也使得設(shè)計(jì)更加靈活且有針對(duì)性。此信號(hào)發(fā)生器的特點(diǎn)及功能集成度高,因采取整體模塊式設(shè)計(jì),在此也考慮到實(shí)際應(yīng)用中,萬(wàn)一FPGA的邏輯門數(shù)量不夠,特準(zhǔn)備了一套備用方案。備用方案:將波形數(shù)據(jù)存放在外部SDRAM中,SDRAM的存儲(chǔ)容量大,且可重復(fù)使用,可以很好的解決內(nèi)存不夠使用的情況。綜合以上涉及方面的分析,因此本次課題采用此方案進(jìn)行設(shè)計(jì)。3 硬件電路設(shè)計(jì)3.1硬件設(shè)計(jì)注意事項(xiàng)此次設(shè)計(jì)利用所購(gòu)買的FPGA核心開發(fā)板,并且通過(guò)面包板搭建DA電路與濾波電路
41、,實(shí)現(xiàn)系統(tǒng)功能,能在在良好的環(huán)境中正常工作。但是實(shí)際制作硬件電路時(shí),就應(yīng)考慮到干擾所帶來(lái)的負(fù)面影響。為了避免干擾信號(hào)影響系統(tǒng)正常工作,未分配功能的FPGA引腳必須接地,在FPGA器件的電源端必須并連一0.01uF的退耦電容,在所有的輸入引腳上串聯(lián)100歐姆左右電阻減弱干擾信號(hào)影響,如有必要還應(yīng)在輸入端設(shè)置上拉或下拉電阻。3.2 DA電路本設(shè)計(jì)采用DAC0832作為輸出DA電路,并采用直通通方式控制總線片選信號(hào)CS,讀寫使能信號(hào)WR,傳輸控制信號(hào)XFER,輸入所存使能信號(hào)ILE直接接地,以得到最大的轉(zhuǎn)換速度,電路示意圖如下:圖3-1DAC0832電路連接圖DAC0832簡(jiǎn)介:DAC0832是8分
42、辨率的D/A轉(zhuǎn)換集成芯片。與微處理器完全兼容。這個(gè)DA芯片以其價(jià)格低廉、接口簡(jiǎn)單、轉(zhuǎn)換控制容易等優(yōu)點(diǎn),在單片機(jī)應(yīng)用系統(tǒng)中得到廣泛的應(yīng)用。D/A轉(zhuǎn)換器由8位輸入鎖存器、8位DAC寄存器、8位D/A轉(zhuǎn)換電路及轉(zhuǎn)換控制電路構(gòu)成。主要特點(diǎn):分辨率為8位;電流穩(wěn)定時(shí)間1us;可單緩沖、雙緩沖或直接數(shù)字輸入;只需在滿量程下調(diào)整其線性度;單一電源供電+5V+15V;低功耗,20mW。DAC0832結(jié)構(gòu):D0D7:8位數(shù)據(jù)輸入線,TTL電平,有效時(shí)間應(yīng)大于90ns;ILE:數(shù)據(jù)鎖存允許控制信號(hào)輸入線,高電平有效;CS:片選信號(hào)輸入線選通數(shù)據(jù)鎖存器,低電平有效;WR1:數(shù)據(jù)鎖存器寫選通輸入線,負(fù)脈沖脈寬應(yīng)大于5
43、00ns有效。由ILE、CS、WR1的邏輯組合產(chǎn)生LE1,當(dāng)LE1為高電平時(shí),數(shù)據(jù)鎖存器狀態(tài)隨輸入數(shù)據(jù)線變換,LE1的負(fù)跳變時(shí)將輸入數(shù)據(jù)鎖存;XFER:數(shù)據(jù)傳輸控制信號(hào)輸入線,低電平有效,負(fù)脈沖脈寬應(yīng)大于500ns有效;WR2:DAC寄存器選通輸入線,負(fù)脈沖脈寬應(yīng)大于500ns有效。由WR2、XFER的邏輯組合產(chǎn)生LE2,當(dāng)LE2為高電平時(shí),DAC寄存器的輸出隨寄存器的輸入而變化,LE2的負(fù)跳變時(shí)將數(shù)據(jù)鎖存器的內(nèi)容打入DAC寄存器并開始D/A轉(zhuǎn)換。IOUT1:電流輸出端1,其值隨DAC寄存器的內(nèi)容線性變化;IOUT2:電流輸出端2,其值與IOUT1值之和為一常數(shù);Rfb:反饋信號(hào)輸入線,改變R
44、fb端外接電阻值可調(diào)整轉(zhuǎn)換滿量程精度;Vcc:電源輸入端,Vcc的范圍為+5V+15V;VREF:基準(zhǔn)電壓輸入線,VREF的范圍為-10V+10V;AGND:模擬信號(hào)地DGND:數(shù)字信號(hào)地3.3濾波電路DA輸出的濾波器電路可選用有源濾波器與無(wú)源濾波器。下面即那個(gè)對(duì)兩種濾波器簡(jiǎn)單介紹一下:有源濾波器:有源電力濾波器APF是一種用于動(dòng)態(tài)抑制諧波、補(bǔ)償無(wú)功的新型電力電子裝置,它能夠?qū)Υ笮『皖l率都變化的諧波以及變化的無(wú)功進(jìn)行補(bǔ)償,之所以稱為有源,顧名思義該裝置需要提供電源用以補(bǔ)償主電路的諧波,其應(yīng)用可克服LC濾波器等傳統(tǒng)的諧波抑制和無(wú)功補(bǔ)償方法的缺點(diǎn)傳統(tǒng)的只能固定補(bǔ)償,實(shí)現(xiàn)了動(dòng)態(tài)跟蹤補(bǔ)償,而且可以既補(bǔ)
45、諧波又補(bǔ)無(wú)功;三相電路瞬時(shí)無(wú)功功率理論是APF發(fā)展的主要基礎(chǔ)理論;APF有并聯(lián)型和串聯(lián)型兩種,前者用的多;并聯(lián)有源濾波器主要是治理電流諧波,串聯(lián)有源濾波器主要是治理電壓諧波等引起的問(wèn)題。有源濾波器同無(wú)源濾波器比較,治理效果好,主要可以同時(shí)濾除多次及高次諧波,不會(huì)引起諧振,但是價(jià)位相對(duì)高!無(wú)源濾波器:無(wú)源濾波器,又稱LC濾波器,是利用電感、電容和電阻的組合設(shè)計(jì)構(gòu)成的濾波電路,可濾除某一次或多次諧波,最普通易于采用的無(wú)源濾波器結(jié)構(gòu)是將電感與電容串聯(lián),可對(duì)主要次諧波3、5、7構(gòu)成低阻抗旁路;單調(diào)諧濾波器、雙調(diào)諧濾波器、高通濾波器都屬于無(wú)源濾波器。因?yàn)楸驹O(shè)計(jì)中要求幅度5V內(nèi)可調(diào)節(jié),但是無(wú)緣濾波器會(huì)造成
46、信號(hào)的衰減,因此本設(shè)計(jì)中采用有源濾波器。設(shè)計(jì)D/A輸出后,通過(guò)濾波電路、輸出緩沖電路,使信號(hào)平滑且具有負(fù)載能力。輸出頻率小于1MHZ,為保證1MHZ 頻帶內(nèi)輸出幅度平坦,又要盡可能抑制諧波和高頻噪聲,選用寬帶運(yùn)放OPA227,用TI提供的濾波器設(shè)計(jì)軟件FilterPro設(shè)計(jì)出截止頻率為1MHZ,為了保證通帶的平坦度與阻帶的截止特性,這里選用4階巴特沃斯低通濾波器.濾波器原理如下圖:圖3-2濾波器電路圖OPA27是一種寬帶低噪聲高精度運(yùn)放,帶寬可達(dá)到8MHZ,是完全可以滿足本次設(shè)計(jì)的要求的。濾波器頻譜特性如下圖:圖3-3濾波器幅頻特性3.4硬件電路實(shí)現(xiàn)本設(shè)計(jì)使用FPGA最小系統(tǒng)版與外接面包板焊接
47、的DA電路與濾波電路組成。4軟件設(shè)計(jì)4.1波形產(chǎn)生模塊本設(shè)計(jì)用verilog語(yǔ)言根據(jù)Niqustc采樣定理,對(duì)波形ROM進(jìn)行掃描,分別產(chǎn)生正弦波、三角波和方波。以下介紹各種常用信號(hào)的原理。正弦波設(shè)計(jì)思想:正弦波發(fā)生分為兩個(gè)步驟,即正弦波幅值采樣存儲(chǔ)和正弦波波形的還原輸出。幅值采樣是將一個(gè)周期正弦波進(jìn)行256等分,將256個(gè)采樣點(diǎn)進(jìn)行量化處理,量化值y=127.5+127.5*sin(x*128),將ffA0tt0.5T-ATT圖4-1 正弦波采樣圖4-2 方波采樣正弦波數(shù)據(jù)獲?。和ㄟ^(guò)MATLAB獲取正弦信號(hào)數(shù)據(jù)MATLAB程序如下:x=0:255;y=127.5+127.5*sin;y=rou
48、nd;plot;波形數(shù)據(jù)如下:圖4-3 正弦波ROM表ROM生成源程序見(jiàn)附件1。方波設(shè)計(jì)思路:矩形波的實(shí)現(xiàn)較之正弦波發(fā)生簡(jiǎn)單,由于矩形波是兩個(gè)電平值間的交替變換,因此波形采樣值的預(yù)存只要有兩個(gè)不同的數(shù)值就行了,為了使矩形波發(fā)生的頻率控制與正弦波一致,我們采用與正弦波相同的原理,采用256個(gè)采樣值掃描輸出來(lái)實(shí)現(xiàn),循環(huán)反復(fù)將存儲(chǔ)器中的256點(diǎn)采樣值通過(guò)DAC0832進(jìn)行還原輸出,得到幅值正比于點(diǎn)采樣值的矩形波。采樣圖如圖4-2所示。方波數(shù)據(jù)獲取MATLAB程序如下:x=0:255;y=127.5+127.5*sign128-mod;y=round; plot;其波形數(shù)據(jù)產(chǎn)生與正弦波一致,這里就不在
49、贅述了。三角波設(shè)計(jì)思路:由于三角波是線性的,比較簡(jiǎn)單就可以產(chǎn)生,如果最低電壓DA參考量為0,最高電壓參考量是255,我們同樣設(shè)置256個(gè)點(diǎn)采樣深度128點(diǎn)為上升階段另外128點(diǎn)為下降階段,那么根據(jù)它的公式2551282,每個(gè)點(diǎn)的電壓參考量只要依次加2就可以得到,一個(gè)波形所以采用簡(jiǎn)單的加減算法就可實(shí)現(xiàn),如圖4-fAtT-A圖4-4 三角波采樣圖4.2頻率控制模塊本課題要求頻率控制是在100HZ1MHZ,步進(jìn)為100HZ。在本題設(shè)計(jì)中只需借助FPGA便可完成。根據(jù)上面對(duì)DDS理論的分析中采用25位的相位累加器,并且本次設(shè)計(jì)的系統(tǒng)時(shí)鐘為50MHZ,則由分析可知頻率分辨率為fDDS=50MHZ/225
50、1.4901HZ,本次要求頻率為100HZ步進(jìn)可調(diào),分析后知道1.4904頻率控制模塊verilog程序如下:module Fword;input key1,key2;input clk;output 24:0 Fword; reg 24:0 Fword;always beginifFword=Fword+25d67; 圖4-5頻率控制模塊電路符號(hào)else ifFword=Fword-25d67;endendmodule4.3相位累加模塊相位累加模塊由一個(gè)累加器與地址產(chǎn)生器組成,相位累加器將輸入的頻率控制字累加并由地址產(chǎn)生器將累加結(jié)果的高8位提取當(dāng)做波形ROM的地址查詢相應(yīng)的數(shù)據(jù)。在時(shí)序電路中
51、為了提高加法器的速度。流水線結(jié)構(gòu)是一種常用的設(shè)計(jì)方法。累加器采用流水線結(jié)構(gòu)來(lái)實(shí)現(xiàn),簡(jiǎn)單而言,就是把一個(gè)位數(shù)很長(zhǎng)的加法,拆成N個(gè)位數(shù)較短的加法,在N個(gè)時(shí)鐘周期內(nèi)做完,然后輸出結(jié)果,N就是流水線的級(jí)數(shù)。采用流水線結(jié)構(gòu)以后,由于加法器的字長(zhǎng)變短了,對(duì)于FPGA來(lái)講,加法器字長(zhǎng)變短,對(duì)于提高工作頻率是十分有幫助的。當(dāng)然,流水線結(jié)構(gòu)的使用,并不能無(wú)限制地提高電路的工作速度,這是因?yàn)?流水線結(jié)構(gòu)是一種用電路規(guī)模換取工作速度的設(shè)計(jì)方法,提高工作速度的代價(jià)是電路設(shè)計(jì)的復(fù)雜化。流水線結(jié)構(gòu)累加器要比普通的累加器結(jié)構(gòu)復(fù)雜得多,由于累加不在一個(gè)時(shí)鐘周期內(nèi)完成,內(nèi)部需要大量的寄存器保存中間變量。隨著流水級(jí)數(shù)的提高,電路
52、復(fù)雜程度將大大增加,當(dāng)電路的復(fù)雜程度達(dá)到一定量級(jí)的時(shí)候,流水線所帶來(lái)的性能改進(jìn),和電路本身由于結(jié)構(gòu)復(fù)雜所帶來(lái)的性能下降相抵消的時(shí)候,流水線結(jié)構(gòu)就不再具有提高電路工作頻率的作用了。對(duì)于不同的器件來(lái)說(shuō),采用多少級(jí)流水對(duì)性能的提升比較大要通過(guò)仿真試驗(yàn)才能得到一個(gè)比較肯定的值。下面是基于流水線技術(shù)的加法器與寄存器結(jié)合在一起的相位累加器設(shè)計(jì)。40位相位累加器的四級(jí)流水線設(shè)計(jì),加法器采用5級(jí)鎖存,4級(jí)加法,最前的一級(jí)實(shí)現(xiàn)10位數(shù)的相加,后面3級(jí)加法器實(shí)現(xiàn)10位數(shù)與一個(gè)進(jìn)位的相加,整個(gè)加法器的速度由10位加法器決定,Verilog HDL源程序見(jiàn)附件2。相位累加模塊電路符號(hào)如下:圖4-6相位累加器電路符號(hào)4
53、.4選擇波形模塊波形選擇模塊使用一個(gè)4 通道的數(shù)據(jù)選擇器來(lái)對(duì)正弦波,方波,三角波的選擇。通過(guò)兩個(gè)外部撥碼開關(guān)來(lái)對(duì)三種波形選擇。當(dāng)撥碼開關(guān)為00時(shí),輸出正弦波。當(dāng)撥碼開關(guān)為01時(shí),輸出方波。當(dāng)撥碼開關(guān)為10時(shí),輸出三角波。波形選擇模塊程序如下:module mux4t1;input clk;input 1:0sel;input 7:0 data1,data2,data3;output 7:0 outdata;reg 7:0 outdata;alwaysbegincase 2b00 : outdata=data1;2b01 : outdata=data2; 圖4-7波形選擇模塊電路符號(hào)2b10 :
54、 outdata=data3;default :outdata=8d0;endcaseendendmodule4.5幅度控制模塊因?yàn)楸驹O(shè)計(jì)采用全數(shù)字DDS方案,所以幅度控制也采用數(shù)字處理方式。由于本次設(shè)計(jì)用的DAC0832是一個(gè)8位的數(shù)模轉(zhuǎn)換器,且參考電壓定為5 V,則其電壓分辨率為v=5V/255=19.6mv,可見(jiàn)19.6*5=98mv0.1V,要實(shí)現(xiàn)對(duì)電壓的0.1v可調(diào),只要對(duì)波形數(shù)據(jù)ROM的數(shù)據(jù)進(jìn)行對(duì)以5為步進(jìn)的縮放即可。例如要對(duì)5V電壓下調(diào)0.1V,只要對(duì)5V的ROM數(shù)據(jù)255減5即可,即255-5*19.6=4.9V幅度調(diào)節(jié)模塊程序:module Amcontrol;input c
55、lk;input key1,key2;input 7:0Romdata;output 7:0 Amplitude;reg 7:0 Romdata_temp1;reg 7:0 X1;reg 7:0 X2;alwaysbegin if =255X1=8d0;else ifX1=X1+8d1;endalwaysbegin 圖4-8幅度控制模塊電路符號(hào)if RomdataX2=8d0;else ifX2=X2+8d1;endalwaysbeginifRomdata_temp1=Romdata+8d5*;endassign Amplitude=Romdata_temp1;endmodule4.6軟件設(shè)計(jì)
56、總成此次設(shè)計(jì)采用自低向上設(shè)計(jì),通過(guò)先完成頻率控制模塊,累加器模塊,波形數(shù)據(jù)ROM,數(shù)據(jù)選擇器,幅度控制器五個(gè)部分,并且生成相應(yīng)的電路符號(hào),原理圖輸入法實(shí)現(xiàn)個(gè)部分的連接。圖4-10頂層連接圖5 調(diào) 試5.1設(shè)計(jì)及仿真調(diào)試使用設(shè)備示波器:Hitachi V-1060,萬(wàn)用表,FPGA開發(fā)板,PC機(jī)各一臺(tái)。 5.2 調(diào)試方法根據(jù)方案設(shè)計(jì)的要求,調(diào)試過(guò)程共分三大部分:硬件調(diào)試、軟件調(diào)試和綜合調(diào)試。電路用FPGA/CPLD實(shí)驗(yàn)箱按模塊調(diào)試,各模塊逐個(gè)調(diào)試通過(guò)后再進(jìn)行綜合調(diào)試。硬件調(diào)試在做控制電路的調(diào)試時(shí),分析輸入輸出,可以發(fā)現(xiàn)時(shí)序與仿真結(jié)果是否有出入,便于找出硬件電路中的故障。再調(diào)試D/A轉(zhuǎn)換是否正常。
57、為提高電路抗干擾性能,我們采取了一些抗干擾措施。如接線線盡量短,減少交叉,每個(gè)芯片的電源與地之間都接有去擾電容,數(shù)字地與模擬地分開。實(shí)踐證明,這些措施對(duì)消除某些引腳上的毛刺及高頻噪聲起到了很好的效果。運(yùn)算放大器的選擇,由于輸出頻率達(dá)到上千赫茲,因此對(duì)放大器的帶寬有一定要求。所以,在調(diào)試濾波電路和緩沖輸出電路時(shí),都選擇了高速寬帶運(yùn)放。軟件調(diào)試 本系統(tǒng)的軟件功能強(qiáng)大,運(yùn)用Verilog HDL語(yǔ)言來(lái)編寫,先在Quartus II對(duì)所編的模塊一一進(jìn)行仿真,排除了語(yǔ)法的錯(cuò)誤編寫和設(shè)計(jì)邏輯思維的錯(cuò)誤,當(dāng)仿真完確認(rèn)程序沒(méi)問(wèn)題時(shí),再直接下載到FPGA芯片,用FPGA實(shí)驗(yàn)箱進(jìn)行調(diào)試。采取的就是自底向上的調(diào)試方
58、法,即先單獨(dú)調(diào)試好每一個(gè)模塊,然后再連接成一個(gè)完整的系統(tǒng)再調(diào)試。 綜合調(diào)試FPGA系統(tǒng)的軟硬件設(shè)計(jì)是緊密相連的,將軟件編譯綜合并且通過(guò)下載對(duì)FPGA進(jìn)行適配,運(yùn)行中的FPGA是由其內(nèi)部的硬件結(jié)構(gòu)控制讀出數(shù)據(jù),從而產(chǎn)生波形。因此,如果在軟硬件都基本調(diào)通的情況下,系統(tǒng)的軟硬件綜合調(diào)試難度不是很大。5.3 調(diào)試結(jié)果軟件仿真結(jié)果及分析相位累加模塊仿真仿真波形圖如圖5-1所示:圖5-1相位累加模塊仿真clk:時(shí)鐘輸入;ina:頻率控制字輸入;address:產(chǎn)生地址輸出;仿真結(jié)果分析如圖所示相位累加模塊對(duì)輸入的頻率控制字累加并寄存,調(diào)節(jié)頻率控制字便可調(diào)節(jié)輸出頻率的大小,實(shí)現(xiàn)頻率的調(diào)節(jié)。幅度控制模塊仿真仿
59、真波形圖如圖5-2所示:圖5-2幅度控制模塊仿真clk:時(shí)鐘輸入;key1:幅度增加;key2:幅度減少;Romdata:波形ROM輸出幅值;Amplitude:輸出波形幅值;仿真結(jié)果分析:如圖5-2 所示當(dāng)設(shè)定波形Rom輸出為128時(shí),當(dāng)按下key1幅度增加調(diào)節(jié)按鍵,按下一次增加0.1V,對(duì)應(yīng)幅值參數(shù)增加5一次后波形幅度增加5,變?yōu)?33,再按下一次變?yōu)?38,按下第三次后變?yōu)?43,此時(shí)按下key2幅度減少調(diào)節(jié)按鍵,按下一次減少0.1V,對(duì)應(yīng)幅值參數(shù)減少5后幅值減少5變?yōu)?38,此后再按一次key1幅值增加5,變?yōu)?43。以上仿真說(shuō)明幅度調(diào)節(jié)模塊正確,可以使用。波形選擇模塊仿真仿真波形圖如
60、圖5-3所示:圖5-3波形選擇模塊仿真clk:時(shí)鐘輸入;data1:數(shù)據(jù)輸入1;data2:數(shù)據(jù)輸入2;data3:數(shù)據(jù)輸入3;sel:選擇信號(hào)輸入;outdata:輸出信號(hào);仿真結(jié)果分析:波形選擇模塊共有三個(gè)波形輸入口,分別對(duì)應(yīng)正弦波,方波,三角波,可知只要兩位二進(jìn)制數(shù)據(jù)便可滿足選擇三種波形的要求,通過(guò)上圖可見(jiàn)當(dāng)選擇信號(hào)分別為00,01,10,是可對(duì)應(yīng)選擇data1,data2,data3,輸出。從仿真可知,波形選擇模塊可以正確選擇對(duì)應(yīng)波形。正弦波產(chǎn)生模塊仿真仿真波形圖如圖5-4所示:圖5-4正弦波產(chǎn)生模塊仿真clock:時(shí)鐘輸入;address:地址寄存器;q:波形幅度輸出;仿真結(jié)果分析:
溫馨提示
- 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ù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年稷山社工面試試題及答案
- 2025年運(yùn)籌學(xué)對(duì)策論試題及答案
- 2025年零售媒體行業(yè)研究報(bào)告
- 2025年課程標(biāo)準(zhǔn)考試題及答案
- 鋼結(jié)構(gòu)拆除專項(xiàng)施工方案
- 5f的徑向分布函數(shù)極大值
- c++多線程同步原子操作原理
- 住宅水電施工方案
- 水罐施工方案
- 加熱涂料施工方案
- 兒童社區(qū)獲得性肺炎管理指南(2024修訂)
- 國(guó)際貿(mào)易規(guī)則變革研究
- 職業(yè)技能大賽互聯(lián)網(wǎng)營(yíng)銷師(直播銷售員)賽項(xiàng)備賽試題庫(kù)(濃縮300題)
- 智鼎在線測(cè)評(píng)題庫(kù)推理題
- 中職教育一年級(jí)上學(xué)期電子與信息《二極管的單向?qū)щ娦浴方虒W(xué)課件
- 《凝練的視覺(jué)符號(hào)》(新課標(biāo)美術(shù)上課)-圖文
- 幼兒園小班語(yǔ)言活動(dòng)《拔蘿卜》課件
- 英文繪本故事Brown.Bear.Brown.Bear.What.Do.You.See
- 讀后續(xù)寫人與自然類我?guī)椭従育埦盹L(fēng)后花園重建順利融入當(dāng)?shù)厣鐓^(qū)講義-2024屆高三英語(yǔ)二輪復(fù)習(xí)
- CJJ28-2014城鎮(zhèn)供熱管網(wǎng)工程施工及驗(yàn)收規(guī)范
- 2024年彌勒市東風(fēng)農(nóng)場(chǎng)有限責(zé)任公司招聘筆試參考題庫(kù)附帶答案詳解
評(píng)論
0/150
提交評(píng)論