2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩27頁(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><b>  目 錄</b></p><p><b>  摘 要2</b></p><p>  1 前 言3</p><p><b>  2 設(shè)計(jì)方案5</b></p><p>  2.1 總體設(shè)計(jì)思路5</p><p>

2、;  2.2 方案論證6</p><p>  2.2.1方案一6</p><p>  2.2.2方案二6</p><p>  2.2.3方案三6</p><p>  2.3 方案確定7</p><p><b>  3 軟件設(shè)計(jì)8</b></p><p>  3.

3、1 波形產(chǎn)生模塊8</p><p>  3.1.1正弦波8</p><p>  3.1.2 矩形波10</p><p>  3.1.3 三角波10</p><p>  3.1.4 基波11</p><p>  3.1.5諧波的產(chǎn)生11</p><p>  3.1.6 波形模塊圖11

4、</p><p>  3.2 頻率控制模塊11</p><p>  3.3 選擇波形模塊11</p><p>  3.4 分頻器模塊13</p><p>  3.4.1 設(shè)計(jì)思路13</p><p>  3.4.2 VHDL實(shí)現(xiàn)13</p><p>  3.4.3 分頻值計(jì)算14&l

5、t;/p><p>  4 硬件電路設(shè)計(jì)15</p><p>  4.1 硬件設(shè)計(jì)注意事項(xiàng)15</p><p>  4.2濾波電路15</p><p>  4.3 幅度控制電路16</p><p>  4.4 FPGA器件引腳分配16</p><p>  4.5 硬件電路實(shí)現(xiàn)17</

6、p><p>  5 調(diào) 試18</p><p>  5.1設(shè)計(jì)及仿真調(diào)試使用設(shè)備18</p><p>  5.2 調(diào)試方法18</p><p>  5.2.1 硬件調(diào)試18</p><p>  5.2.2 軟件調(diào)試18</p><p>  5.2.3 綜合調(diào)試18</p>

7、<p>  5.3 調(diào)試結(jié)果19</p><p>  5.3.1 軟件仿真結(jié)果及分析19</p><p>  5.3.2 綜合調(diào)試結(jié)果21</p><p><b>  6 結(jié) 論24</b></p><p><b>  致謝辭25</b></p><p&g

8、t;<b>  參考文獻(xiàn)26</b></p><p><b>  附 錄27</b></p><p>  基于FPGA的信號(hào)發(fā)生器</p><p><b>  摘 要</b></p><p>  本次設(shè)計(jì)課題為應(yīng)用VHDL語(yǔ)言及MAX+PLUS II軟件提供的原理圖輸

9、入設(shè)計(jì)功能,結(jié)合電子線路的設(shè)計(jì)加以完成一個(gè)可應(yīng)用于數(shù)字系統(tǒng)開(kāi)發(fā)或?qū)嶒?yàn)時(shí)做輸入脈沖信號(hào)或基準(zhǔn)脈沖信號(hào)用的信號(hào)發(fā)生器,它具結(jié)構(gòu)緊湊,性能穩(wěn)定,設(shè)計(jì)結(jié)構(gòu)靈活,方便進(jìn)行多功能組合的特點(diǎn),經(jīng)濟(jì)實(shí)用,成本低廉。具有產(chǎn)生三種基本波形脈沖信號(hào)(正弦波、矩形波和三角波),以及三次(及三次以下)諧波與基波的線性組合脈沖波形輸出,且單脈沖輸出脈寬及連續(xù)脈沖輸出頻率可調(diào),范圍從100HZ到1kHZ,步進(jìn)為100HZ;幅度可調(diào),從0到5伏,步進(jìn)為0.1V。<

10、;/p><p>  關(guān)鍵詞:信號(hào)發(fā)生器, FPGA,EDA,VHDL語(yǔ)言。</p><p><b>  1 前 言</b></p><p>  隨著我國(guó)的經(jīng)濟(jì)日益增長(zhǎng),社會(huì)對(duì)電子產(chǎn)品的需求量也就越來(lái)越大,目前,我國(guó)的電子產(chǎn)品市場(chǎng)正在迅速的壯大,市場(chǎng)前景廣闊。FPGA(Field Programmable Gate Array,現(xiàn)場(chǎng)可編程門陣列

11、)在現(xiàn)代數(shù)字電路設(shè)計(jì)中發(fā)揮著越來(lái)越重要的作用。FPGA/CPLD(Complex Programmable Logic Device)所具有的靜態(tài)可重復(fù)編程和動(dòng)態(tài)在系統(tǒng)重構(gòu)的特性,使得硬件的功能可以像軟件一樣通過(guò)編程來(lái)修改,這樣就極大地提高了電子系統(tǒng)設(shè)計(jì)的靈活性和通用性,縮短了產(chǎn)品的上市時(shí)間并降低可電子系統(tǒng)的開(kāi)發(fā)成本,且可以毫不夸張地講,F(xiàn)PGA/CPLD能完成任何數(shù)字器件的功能,從簡(jiǎn)單的74電路到高性能的CPU。它的影響毫不亞于20世

12、紀(jì)70年代單片機(jī)的發(fā)明和使用。</p><p>  現(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ì)人員的最得力

13、助手。設(shè)計(jì)工作從行為、功能級(jí)開(kāi)始,并向著設(shè)計(jì)的高層次發(fā)展。這樣就出現(xiàn)了第三代EDA系統(tǒng),其特點(diǎn)是高層次設(shè)計(jì)的自動(dòng)化。 </p><p>  第三代EDA系統(tǒng)中除了引入硬件描述語(yǔ)言,還引入了行為綜合工具和邏輯綜合工具,采用較高的抽象層次進(jìn)行設(shè)計(jì),并按層次式方法進(jìn)行管理,可大大提高處理復(fù)雜設(shè)計(jì)的能力,縮短設(shè)計(jì)周期,綜合優(yōu)化工具的采用使芯片的品質(zhì)如面積、速度和功耗等獲得了優(yōu)化,因而第三代EDA系統(tǒng)迅速得到了推廣應(yīng)用。&

14、lt;/p><p>  目前,最通用的硬件描述語(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)。VHDL是一種新興的程序設(shè)計(jì)語(yǔ)言,使用VHDL進(jìn)行設(shè)計(jì)其性能總是比常規(guī)使用CPU或者M(jìn)CU的程序設(shè)計(jì)語(yǔ)言在性能上要高好幾個(gè)數(shù)量級(jí)。這就是說(shuō),在傳統(tǒng)上使用軟件語(yǔ)言的地方,VHDL語(yǔ)言作為一種新的實(shí)現(xiàn)方式會(huì)應(yīng)用得越來(lái)越廣泛。本課題

15、設(shè)計(jì)是采用美國(guó)Altera公司的FLEX10K10器件,使用的是Altera公司的EDA軟件平臺(tái)Maxplus –II可編程邏輯器件開(kāi)發(fā)軟件?;贓DA工具的FPGA/CPLD的開(kāi)發(fā)流程CPLD/FPGA器件的設(shè)計(jì)一般可分為設(shè)計(jì)輸入、設(shè)計(jì)實(shí)現(xiàn)和編程三個(gè)設(shè)計(jì)步驟:</p><p>  1.設(shè)計(jì)輸入方式主要由文本輸入和圖形輸入兩種,可根據(jù)需要選擇,也可混合輸入。EDA工具會(huì)自動(dòng)檢查語(yǔ)法;</p><

16、;p>  2.設(shè)計(jì)實(shí)現(xiàn)階段EDA工具對(duì)設(shè)計(jì)文件進(jìn)行編譯,進(jìn)行邏輯綜合、優(yōu)化,并針對(duì)器件進(jìn)行映射、布局、布線,產(chǎn)生相應(yīng)的適配文件;</p><p>  3.編程階段EDA軟件將適配文件配置到相應(yīng)的CPLD/FPGA器件中,使其能夠?qū)崿F(xiàn)預(yù)期的功能。</p><p>  信號(hào)發(fā)生器是數(shù)字設(shè)備運(yùn)行工作中必不可少的一部分,沒(méi)有良好的脈沖信號(hào)源,最終就會(huì)導(dǎo)致系統(tǒng)不能夠正常工作,更不必談什么實(shí)現(xiàn)其

17、它功能了。不論是處于開(kāi)發(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ì)的宗旨都是離不開(kāi)以下幾點(diǎn):實(shí)用性高、成本低、可升級(jí)、功能完善可擴(kuò)展等!使用專用的數(shù)字電路設(shè)計(jì)的信號(hào)發(fā)生

18、器,設(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)。</p><p><b>  2 設(shè)計(jì)方案</b></p><p>  2.1 總體設(shè)計(jì)思路</p><p>&

19、lt;b>  1 設(shè)計(jì)步驟</b></p><p>  此設(shè)計(jì)將按模塊式實(shí)現(xiàn),據(jù)任務(wù)書(shū)要求,設(shè)計(jì)總共分四大步份完成:(1)產(chǎn)生波形(三種波形:方波、三角波和矩形波)信號(hào);(2)波形組合;(3)頻率控制;(4)幅度控制。</p><p><b>  2 設(shè)計(jì)思想</b></p><p>  利用VHDL編程,依據(jù)基本數(shù)字電路模塊

20、原理進(jìn)行整合。系統(tǒng)各部分所需工作時(shí)鐘信號(hào)由輸入系統(tǒng)時(shí)鐘信號(hào)經(jīng)分頻得到,系統(tǒng)時(shí)鐘輸入端應(yīng)滿足輸入脈沖信號(hào)的要求。組合波形信號(hào)經(jīng)顯示模塊輸出。具備幅度和頻率可調(diào)功能,幅度可通過(guò)電位器調(diào)整,頻率控制模塊則是一個(gè)簡(jiǎn)易的計(jì)數(shù)器,控制步徑為100HZ的可調(diào)頻率,最終送至脈沖發(fā)生模塊輸出脈沖信號(hào),達(dá)到設(shè)計(jì)課題所要求的輸出波形頻率可調(diào)及幅度可調(diào)功能。幅度可調(diào)功能由于比較簡(jiǎn)單,可以在FPGA外部利用硬件電路實(shí)現(xiàn)??傮w設(shè)計(jì)框圖如下圖1所示:</p&g

21、t;<p><b>  1KHZ</b></p><p><b>  圖1 總體設(shè)計(jì)框圖</b></p><p><b>  2.2 方案論證</b></p><p><b>  2.2.1方案一</b></p><p>  采用DDS(直接

22、數(shù)字頻率合成器)來(lái)設(shè)計(jì),設(shè)計(jì)總體框圖如圖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)

23、帶來(lái)的缺點(diǎn),若采用它來(lái)編程設(shè)計(jì),必定會(huì)事半功倍,且使設(shè)計(jì)趨于理想狀態(tài)。但鑒于DDS的占用RAM空間較大,我們?cè)O(shè)計(jì)是采用FPGA10K10器件,總共只有一萬(wàn)門的邏輯門數(shù)量,而整個(gè)DDS設(shè)計(jì)下來(lái),大概最少會(huì)占用3-4萬(wàn)門的數(shù)量,所以在性價(jià)比方面不合理,這樣也使得我們的設(shè)計(jì)會(huì)有些不切實(shí)際。</p><p>  頻率控制字

24、 信號(hào)輸出 </p><p><b>  時(shí)鐘</b></p><p>  圖2 DDS與FPGA總體設(shè)計(jì)圖 </p><p><b>  2.2.2方案二</b></p><p>  采用震蕩器頻率合成方案。具體方案如下:首先通過(guò)頻率合成技術(shù)產(chǎn)生所需要頻率的方波,通過(guò)積分電路

25、就可以得到同頻率的三角波,再經(jīng)過(guò)濾波器就可以得到正弦波。其優(yōu)點(diǎn)是工作頻率可望做得很高,也可以達(dá)到很高的頻率分辨率;缺點(diǎn)是使用的濾波器要求通帶可變,實(shí)現(xiàn)很難,高低頻率比不可能做得很高。</p><p><b>  2.2.3方案三</b></p><p>  采用VHDL語(yǔ)言來(lái)編程,然后下載文件到FPGA來(lái)實(shí)現(xiàn)。VHDL語(yǔ)言是電子設(shè)計(jì)領(lǐng)域的主流硬件描述語(yǔ)言,具有很強(qiáng)的電

26、路描述和建模能力,能從多個(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)的開(kāi)發(fā)周期。</p><p><b>  2.3 方案確定</b></p><

27、p>  由上述三個(gè)方案對(duì)比,采用第三種方案:</p><p>  通過(guò)FPGA軟件掃描方式將波形數(shù)據(jù)讀出傳輸給DAC0832產(chǎn)生波形輸出。這種方法在軟、硬件電路設(shè)計(jì)上都簡(jiǎn)單,且與我們的設(shè)計(jì)思路緊密結(jié)合。</p><p>  由于幅度控制部分在設(shè)計(jì)需要用到數(shù)字電子,這樣有要經(jīng)過(guò)D/A轉(zhuǎn)換器再輸出,必將占用大量資源,造成不必要的開(kāi)銷。鑒于有設(shè)計(jì)經(jīng)驗(yàn)的同學(xué)和老師的建議,采用一個(gè)電位器代替,

28、雖然精確度不夠,但是也彌補(bǔ)了性價(jià)比方面的不足。</p><p>  波形組合如果采用分開(kāi)式模塊實(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)備了一套備用方案。</p><p> 

29、 備用方案:將波形數(shù)據(jù)存放在6116RAM中,6116的存儲(chǔ)容量大,且可重復(fù)使用,雖用單片機(jī)在速度方面遠(yuǎn)不及FPGA,但是這樣是在出現(xiàn)上述狀況后的最佳補(bǔ)償方式。</p><p>  綜合以上涉及方面的分析,因此本次課題采用此方案進(jìn)行設(shè)計(jì)。</p><p><b>  3 軟件設(shè)計(jì)</b></p><p>  3.1 波形產(chǎn)生模塊</p&g

30、t;<p>  本設(shè)計(jì)用VHDL語(yǔ)言根據(jù)傅立葉函數(shù)采集點(diǎn)進(jìn)行掃描,分別產(chǎn)生正弦波、三角波和矩形波。以下介紹各種常用周期信號(hào)的傅立葉函數(shù)展開(kāi)式。</p><p><b>  3.1.1正弦波</b></p><p><b>  1設(shè)計(jì)思想 </b></p><p>  正弦波發(fā)生分為兩個(gè)步驟,即正弦波幅值采樣存

31、儲(chǔ)和正弦波波形的還原輸出。幅值采樣是將一個(gè)周期正弦波進(jìn)行64等分,如圖3所示,將64個(gè)采樣點(diǎn)進(jìn)行量化處理,量化值=255*sin360/64(V),將64點(diǎn)量化值存入存儲(chǔ)器。正弦波形的產(chǎn)生是通過(guò)循環(huán)反復(fù)將存儲(chǔ)器中的64點(diǎn)采樣值通過(guò)DAC0832進(jìn)行還原輸出,得到幅值正比于64點(diǎn)采樣值的正弦波。</p><p><b>  2 VHDL實(shí)現(xiàn)</b></p><p>  

32、1.正弦信號(hào)波形數(shù)據(jù)文件建立</p><p>  正弦波波形數(shù)據(jù)由64個(gè)點(diǎn)構(gòu)成,此數(shù)據(jù)經(jīng)DAC0832,可在示波器上觀察到正弦波形。源程序如下程序1所示:</p><p><b>  [程序1]</b></p><p>  WIDTH=8; ------表示數(shù)據(jù)輸出位寬是

33、8</p><p>  DEPTH=64; ----表示共有64個(gè)8位數(shù)據(jù)點(diǎn)</p><p>  ADDRESS_RADIX=HEX; -----表示地址信號(hào)用十六進(jìn)制數(shù)表示</p><p>  DATA_RADIX=DEC;

34、 -----表示輸出數(shù)據(jù)是十進(jìn)制數(shù)</p><p>  CONTENT BEGIN</p><p>  00:255;01:254;02:252;03:249;04:245;05:239;06:233;07:225;</p><p>  08:217;09:207;0A:197;0B:186;0C:174;0D:162;0E:150;0F:

35、137;</p><p>  10:124;11:112;12: 99;13: 87;14: 75;15: 64;16: 53;17: 43;</p><p>  18: 34;19: 26;1A: 19;1B: 13;1C: 8;1D: 4;1E: 1;1F: 0;</p><p>  20: 0;21: 1;22: 4;23: 8;24: 13;

36、25: 19;26: 26;27: 34;</p><p>  28: 43;29: 53;2A: 64;2B: 75;2C: 87;2D: 99;2E:112;2F:124;</p><p>  30:137;31:150;32:162;33:174;34:186;35:197;36:207;37:217;</p><p>  38:225;39:233;3A:2

37、39;3B:245;3C:249;3D:252;3E:254;3F:255;</p><p><b>  END;</b></p><p>  2.定制ROM源程序如下所示:</p><p>  SINDATA.VHD:</p><p>  LIBRARY ieee;</p><p>  USE

38、ieee.std_logic_1164.all;</p><p>  entity sindata is</p><p>  port(address:in std_logic_vector(5 downto 0);</p><p>  inclock:in std_logic;</p><p>  q:out std_logic_vecto

39、r(7 downto 0);</p><p>  end sindata;</p><p>  architecture syn of sindata is</p><p>  signal sub_wire0 :std_logic_vector(7 downto 0);</p><p>  component 1pm_rom</p&g

40、t;<p>  generic(1pm_width :natural;</p><p>  1pm_widthid :natural;</p><p>  1pm_address_control:string;</p><p>  1pm_outdata:string;</p><p>  1pm_file:string)

41、;</p><p>  port(address:in std_logic_vector(5 downto 0);</p><p>  inclock:in std_logic;</p><p>  q:out std_logic_v ector(7 downto 0));</p><p>  end component;</p>

42、<p><b>  begin</b></p><p>  q<=sub_wire0(7 downto 0);</p><p>  1pm_rom_component:1pm_rom</p><p>  generic map(lpm_width=>8,lpm_widthad=>6,</p><

43、;p>  lpm_address_comtrol=>"registered",lpm_outdata=>"unregistered",</p><p>  lpm_file=>"D:/SIN_G/DATA/sin_data.mif")</p><p>  port map(address=>addre

44、ss,inclock=>inclock,q=>sub_wire0);</p><p><b>  end syn;</b></p><p>  正弦波信號(hào)發(fā)生器頂層設(shè)計(jì)源程序:</p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;<

45、/p><p>  use ieee.std_logic_unsigend.all;</p><p>  entity signt is</p><p>  port(clk:in std_logic;</p><p>  dout:out std_logic_vector(7 downto 0));</p><p><

46、;b>  end</b></p><p>  architecture dacc of singt is</p><p>  component sindata</p><p>  port(address:in std_logic_vector(5 downto 0);</p><p>  inclock:in std_l

47、ogic;</p><p>  q:out std_logic_vector(7 downto 0));</p><p>  end conponent;</p><p>  signal q1:std_logic_vector(5 downto 0);</p><p><b>  begin</b></p>

48、<p>  process(clk)</p><p><b>  begin</b></p><p>  if clk'event and clk='1'then q1<=q1+1;</p><p><b>  end if</b></p><p>  e

49、nd process;</p><p>  u1:sindata port map(address=>q1,q=>dout;in clock=>clk);</p><p><b>  end;</b></p><p><b>  3.1.2 矩形波</b></p><p><

50、b>  1設(shè)計(jì)思路</b></p><p>  矩形波的實(shí)現(xiàn)較之正弦波發(fā)生簡(jiǎn)單,由于矩形波是兩個(gè)電平值間的交替變換,因此波形采樣值的預(yù)存只要有兩個(gè)不同的數(shù)值就行了,為了使矩形波發(fā)生的頻率靈活可調(diào),采用60個(gè)采樣值掃描輸出來(lái)實(shí)現(xiàn),每半個(gè)矩形波周期采用三十個(gè)采樣值,循環(huán)反復(fù)將存儲(chǔ)器中的60點(diǎn)采樣值通過(guò)DAC0832進(jìn)行還原輸出,得到幅值正比于點(diǎn)采樣值的矩形波。采樣圖如圖4所示。</p>

51、<p><b>  2 VHDL實(shí)現(xiàn)</b></p><p><b>  源程序見(jiàn)附錄。 </b></p><p><b>  3.1.3 三角波</b></p><p><b>  1設(shè)計(jì)思路</b></p><p>  由于三角波是線性的,

52、比較簡(jiǎn)單就可以產(chǎn)生,如果最低電壓設(shè)為15V,最高是255V,那么根據(jù)它的公式255/15=17,每個(gè)點(diǎn)的電壓只要依次加17就可以得到,一個(gè)波形所以采用簡(jiǎn)單的加減算法就可實(shí)現(xiàn),如圖5所示三角波的采樣圖:</p><p><b>  圖5 三角波采樣圖</b></p><p><b>  2 VHDL實(shí)現(xiàn)</b></p><p&g

53、t;<b>  具體源程序見(jiàn)附錄。</b></p><p><b>  3.1.4 基波</b></p><p>  通過(guò)VHDL編程產(chǎn)生的正弦波、方波、三角波三種周期性波形即為基波。</p><p>  3.1.5諧波的產(chǎn)生</p><p>  采用與基波產(chǎn)生的同樣原理,編程產(chǎn)生三種波形的諧波,所

54、不同的是一個(gè)波形的周期采樣的點(diǎn)數(shù)不同,如果基波采樣點(diǎn)為63個(gè),諧波采樣點(diǎn)數(shù)則為21個(gè),其每點(diǎn)的電壓值為255*(sin360/60+sin360/20)(V),在對(duì)其進(jìn)行循環(huán)掃描即可實(shí)現(xiàn)基波與諧波的線性疊加。</p><p>  3.1.6 波形模塊圖</p><p>  最終波形的設(shè)計(jì)模塊圖如圖6所示,L1是三角波,L2是方波,L3是正弦波,L4是諧波。</p><

55、p>  3.2 頻率控制模塊</p><p>  本課題要求頻率控制是在100HZ-1KHZ,步進(jìn)為100HZ。在本題設(shè)計(jì)中只需借助FPGA便可完成。根據(jù)用戶需要的頻率,通過(guò)編程把頻率控制數(shù)值傳送給各個(gè)模塊,從而實(shí)現(xiàn)頻率的控制。如下圖7所示:</p><p>  3.3 選擇波形模塊</p><p>  這一部分主要是通過(guò)一個(gè)按鍵對(duì)波形進(jìn)行循環(huán)選擇,按下確認(rèn)

56、按鈕后進(jìn)行波形的調(diào)用。設(shè)計(jì)流程圖如下圖8所示</p><p><b>  圖6 波形模塊圖</b></p><p>  圖7 頻率控制模塊流程圖</p><p>  圖8 選擇波形電路設(shè)計(jì)流程圖</p><p><b>  3.4 分頻器模塊</b></p><p>  3.

57、4.1 設(shè)計(jì)思路</p><p>  分頻器模塊將輸入的高頻脈沖降頻得到各模塊所需的低頻脈沖,分頻器模塊利用計(jì)數(shù)器的原理進(jìn)行設(shè)計(jì),通過(guò)對(duì)預(yù)設(shè)的分頻值進(jìn)行比較計(jì)數(shù),實(shí)現(xiàn)輸入高頻時(shí)鐘脈沖的分頻輸出功能。本次課題的設(shè)計(jì)方案中使用了十組分頻器,其設(shè)計(jì)原理完全相同,將對(duì)應(yīng)的頻率用8421BCD碼對(duì)其進(jìn)行編程賦值,如100HZ則對(duì)應(yīng)的二進(jìn)制數(shù)是“0000”,200HZ則是“0001”…1KHZ則是“1010”?,F(xiàn)選取其中的5

58、00分頻分頻器進(jìn)行簡(jiǎn)單說(shuō)明。具體程序見(jiàn)附錄。</p><p>  3.4.2 VHDL實(shí)現(xiàn)</p><p>  PROCESS(CLK_IN)</p><p><b>  BEGIN</b></p><p>  IF(CLK_IN'EVENT AND CLK_IN='0') THEN</p&

59、gt;<p>  IF Step<249 THEN――分頻值</p><p>  Step<=Step+1;</p><p><b>  ELSE</b></p><p>  Step<=0;――循環(huán)累加</p><p>  CLK_OUT<=NOT CLK_OUT;――計(jì)數(shù)滿

60、,輸出翻轉(zhuǎn)</p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  3.4.3 分頻值計(jì)算</p><p>  分頻值=(輸出時(shí)鐘脈沖周期/輸入時(shí)鐘脈沖周期)/2

61、-1</p><p>  輸入時(shí)鐘脈沖頻率=1KHz,周期=1ms;輸出時(shí)鐘脈沖頻率=2Hz,周期=500ms</p><p>  分頻值=(500ms/1ms)/2-1=249</p><p>  3.4.4 分頻器模塊及初步仿真圖</p><p>  分頻器模塊及初步仿真圖如圖9所示。</p><p><b&

62、gt;  4 硬件電路設(shè)計(jì)</b></p><p>  4.1 硬件設(shè)計(jì)注意事項(xiàng)</p><p>  此次設(shè)計(jì)利用EDA試驗(yàn)箱實(shí)現(xiàn)硬件功能,試驗(yàn)箱設(shè)計(jì)可靠,干擾小,能使系統(tǒng)在良好的環(huán)境中正常工作。但是實(shí)際制作硬件電路時(shí),就應(yīng)考慮到干擾所帶來(lái)的負(fù)面影響。為了避免干擾信號(hào)影響系統(tǒng)正常工作,未分配功能的FPGA引腳必須接地,在FPGA器件的電源端必須并連一0.01uF的退耦電容,在所

63、有的輸入引腳上串聯(lián)100歐姆左右電阻減弱干擾信號(hào)影響,如有必要還應(yīng)在輸入端設(shè)置上拉或下拉電阻。</p><p><b>  4.2濾波電路</b></p><p>  如圖10所示,設(shè)計(jì)D/A輸出后,通過(guò)濾波電路、輸出緩沖電路,使信號(hào)平滑且具有負(fù)載能力。</p><p>  正弦波的輸出頻率小于262kHz,為保證262kHz 頻帶內(nèi)輸出幅度平

64、坦,又要盡可能抑制諧波和高頻噪聲,綜合考慮取 R1=1k,R2=1k,C1=100pF,C=100pF運(yùn)放選用寬帶運(yùn)放LF351,用 Electronics Workbench 分析表明:截止頻率約為1MHz,262KHz 以內(nèi)幅度平坦。 為保證穩(wěn)幅輸出,選用AD817,這是一種低功耗、高速、寬帶運(yùn)算放大器 , 具有很強(qiáng)的大電流驅(qū)動(dòng)能力。實(shí)際電路測(cè)量結(jié)果表明:當(dāng)負(fù)載100Ω、輸出電壓峰-峰值1

65、OV時(shí),帶寬大于500kHz,幅度變化小于土1%。</p><p>  4.3 幅度控制電路</p><p>  幅度控制電路采用初定方案來(lái)設(shè)計(jì),即用一個(gè)電位器來(lái)控制波形的輸出幅度。電位器的型號(hào)為10K 歐。</p><p>  4.4 FPGA器件引腳分配</p><p>  為了方便硬件設(shè)計(jì),降低硬件設(shè)計(jì)的復(fù)雜度,對(duì)FPGA的輸入輸出引腳

66、進(jìn)行分配,將關(guān)聯(lián)的引腳集中排布,將同一組內(nèi)的引腳按順序排布,將需要輸入高頻時(shí)鐘脈沖的端口安排在時(shí)鐘輸入端,以提高其信號(hào)接收能力。分配如下:</p><p>  CLKUSR PIN62。</p><p>  CS0 PIN67。</p><p>  CS1 PIN68</p><p>  BEV_CLK PIN76

67、.</p><p>  BEV_OE PIN72</p><p>  IN PIN31、33、73、75。</p><p>  D0 PIN1</p><p>  TD0 PIN9</p><p>  TD1 PIN4</p><p>  CE0 PIN6

68、4</p><p>  CE1 PIN3</p><p>  CONFIG PIN23</p><p>  CONF_DONE PIN65</p><p>  RS PIN70</p><p>  WS PIN69</p><p>  TMS PIN46<

69、;/p><p>  TRST PIN45</p><p>  TCK PIN66</p><p>  DCLK PIN2</p><p>  STATUS PIN44</p><p>  MSEL0 PIN20</p><p>  MSEL1 PIN21</p&

70、gt;<p>  INIT_DONE PIN58</p><p>  RDY_BUSY PIN59</p><p>  DEV_OE PIN72</p><p>  DEV_CLR PIN77</p><p>  4.5 硬件電路實(shí)現(xiàn)</p><p>  此次設(shè)計(jì)硬件部分通過(guò)FPGA/CPL

71、D實(shí)驗(yàn)箱完成,如今后需制作單獨(dú)的硬件電路,亦可以依照實(shí)驗(yàn)箱各部分結(jié)構(gòu)進(jìn)行設(shè)計(jì)。</p><p><b>  5 調(diào) 試</b></p><p>  5.1設(shè)計(jì)及仿真調(diào)試使用設(shè)備</p><p>  示波器:Hitachi V-1060,萬(wàn)用表,F(xiàn)PGA實(shí)驗(yàn)箱,PC機(jī)各一臺(tái)。 </p><p><b>  5

72、.2 調(diào)試方法</b></p><p>  根據(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)試。</p><p>  5.2.1 硬件調(diào)試</p><p>  (1)在做控制電路的調(diào)試時(shí),分析輸入輸出,可以發(fā)現(xiàn)時(shí)序與仿真結(jié)果是否有出入,便于找出硬件電路中的故

73、障。再調(diào)試D/A轉(zhuǎn)換是否正常。   (2) 為提高電路抗干擾性能,我們采取了一些抗干擾措施。如接線線盡量短,減少交叉,每個(gè)芯片的電源與地之間都接有去擾電容,數(shù)字地與模擬地分開(kāi)。實(shí)踐證明,這些措施對(duì)消除某些引腳上的 “毛刺 ” 及高頻噪聲起到了很好的效果。   (3) 運(yùn)算放大器的選擇 由于輸出頻率達(dá)到上千赫茲,因此對(duì)放大器的帶寬有一定要求。所以,在調(diào)試濾波電路和緩沖輸出電路

74、時(shí),都選擇了高速寬帶運(yùn)放。</p><p>  5.2.2 軟件調(diào)試</p><p>  本系統(tǒng)的軟件功能強(qiáng)大,運(yùn)用VHDL語(yǔ)言來(lái)編寫,先在MAX+PLUS 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)試方法,即先單獨(dú)調(diào)試好每一個(gè)模塊,然后再連接成一個(gè)完整的系統(tǒng)再

75、調(diào)試。</p><p>  5.2.3 綜合調(diào)試</p><p>  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)試難度不是很大。</p><p><b>  5.3 調(diào)試結(jié)果</b>&

76、lt;/p><p>  5.3.1 軟件仿真結(jié)果及分析 </p><p><b>  1.分頻</b></p><p> ?。?)仿真波形圖如圖11所示:</p><p><b>  圖11</b></p><p>  CLKIN:基準(zhǔn)時(shí)鐘輸入;</p>

77、<p>  CLKOUT:分頻時(shí)鐘輸出;</p><p>  MOVIN:處始置入值;</p><p><b> ?。?)仿真結(jié)果分析</b></p><p>  CLK_IN為輸入高頻時(shí)鐘脈沖,CLKOUT為分頻輸出的低頻時(shí)鐘脈沖。此分頻器輸入為1KHz,輸出為100Hz,為10分頻分頻器,如圖12所示。</p>

78、<p><b>  2.信號(hào)波形產(chǎn)生</b></p><p><b>  (1)正弦波</b></p><p>  仿真波形圖如圖12所示:</p><p><b>  圖12</b></p><p>  FRCT:相位控制端;</p><p>

79、;<b>  CLK:時(shí)鐘輸入;</b></p><p>  SINOUT:正弦波輸出;</p><p>  VSIN:正弦波地址寄存器;</p><p><b> ?。?)方波</b></p><p>  仿真波形圖如圖13所示:</p><p><b>  圖1

80、3</b></p><p><b>  CLK:時(shí)鐘輸入;</b></p><p>  FRCT:相位控制端;</p><p>  SQUOUT:方波輸出;</p><p><b> ?。?)三角波</b></p><p>  仿真波形圖如圖14所示:</p

81、><p><b>  圖14</b></p><p><b>  CLK:時(shí)鐘輸入;</b></p><p>  FRCT:相位控制端;</p><p>  TRIOUT:三角波輸出;</p><p> ?。?)任意波形的地址</p><p>  仿真波形

82、圖如圖15所示:</p><p><b>  圖15</b></p><p>  FRCT:相位控制端;</p><p><b>  CLK:時(shí)鐘輸入;</b></p><p>  ADDOUT:地址輸出;</p><p><b>  (5)波形選擇</b&g

83、t;</p><p>  仿真波形圖如圖16所示:</p><p><b>  圖16</b></p><p>  RI:RAM的讀數(shù)控制端;</p><p>  SELIN:波形選擇輸入端(0:正弦波;1:三角波;2:方波;3:任意波地址;4:三角波和正弦波的疊加;5:方波和正弦波的疊加;6:方波和三角波的疊加;7:三

84、種波形的疊加)</p><p>  ADDIN:地址輸入端;</p><p>  SININ:正弦波輸入端;</p><p>  TRIIN:三角波輸入端;</p><p>  SQUIN:方波輸入端;</p><p>  QADD:地址輸出端;</p><p>  Q:波形選擇輸出端;<

85、/p><p><b> ?。?)仿真結(jié)果分析</b></p><p>  經(jīng)過(guò)仿真,從各個(gè)仿真圖上看得,基本上可以實(shí)現(xiàn)預(yù)期的波形產(chǎn)生功能。</p><p>  5.3.2 綜合調(diào)試結(jié)果</p><p>  1.基波的輸出波形如圖17所示: </p><p>  (1)方波

86、 (2)正弦波 (3)三角波</p><p>  圖17 基波輸出波形圖</p><p>  2.諧波與基波疊加的輸出波形</p><p>  (1)正弦與其三次諧波的疊加,如圖18與圖19所示:</p><p>  圖18 圖19</p>

87、<p>  (2)我們觀察到圖20D的波形,它也混有二次諧波,但這二次諧波帶有一定的相移(圖20C)。同樣地,當(dāng)觀察到圖21B的波形,我們就知道它除了基波以外混有三次諧波(見(jiàn)圖21A)。圖21D的波形也混有三次諧波,并帶有一定相移(圖21C)。</p><p> ?。ˋ) (B) (C) (D)</p><p>  圖20 基波

88、與二次諧波疊加</p><p> ?。ˋ) (B) (C) (D)</p><p>  圖21 基波與三次諧波的疊加圖</p><p><b>  3.綜合調(diào)試數(shù)據(jù)</b></p><p> ?。?)輸出波形頻率范圍測(cè)試測(cè)試數(shù)據(jù)如下表1所示 : </p>

89、;<p><b>  單位:HZ</b></p><p><b>  表1</b></p><p> ?。?) 輸出波形幅度范圍測(cè)試,在頻率為100HZ-1KHZ測(cè)得的輸出幅度數(shù)據(jù)范圍可以達(dá)到0-5V的要求。</p><p><b>  6 結(jié) 論</b></p><

90、p>  通過(guò)此次設(shè)計(jì),讓我深深的感覺(jué)到自己所學(xué)知識(shí)真是非常的淺薄。面對(duì)電子技術(shù)日新月異的發(fā)展,利用EDA手段進(jìn)行設(shè)計(jì)已成為不可阻擋的趨勢(shì)。相對(duì)于傳統(tǒng)至底向上的設(shè)計(jì)方式,自上而下的設(shè)計(jì)具有其顯著的優(yōu)越性。利用EDA設(shè)計(jì)軟件輔助設(shè)計(jì),方便快捷,減少了錯(cuò)誤率的產(chǎn)生,縮短了產(chǎn)品的設(shè)計(jì)及上市周期,既減輕了設(shè)計(jì)工作量又滿足了商業(yè)利益的需求。</p><p>  該系統(tǒng)以FPGA10K10器件為核心部件,可利用軟件編程實(shí)

91、現(xiàn)了對(duì)D/A轉(zhuǎn)換信號(hào)的處理。努力做到了線路簡(jiǎn)單、高性價(jià)比的特點(diǎn),充分利用了軟件編程,彌補(bǔ)了硬件元器件的不足。</p><p>  在設(shè)計(jì)過(guò)程當(dāng)中,遇到了軟件操作不熟練,程序編寫不規(guī)范等諸多問(wèn)題,通過(guò)對(duì)問(wèn)題的總結(jié)分析得出,應(yīng)用軟件的主要功能必須熟練操作,才能提高工作效率,需要規(guī)范操作的地方必須嚴(yán)格按照使用說(shuō)明操作,避免由于軟件使用不當(dāng)造成的錯(cuò)誤產(chǎn)生。程序的編寫格式必須規(guī)范,模塊、端口以及信號(hào)變量的命名應(yīng)當(dāng)反映實(shí)際意

92、義,縮進(jìn)格式工整明了,方便閱讀理解,這樣有利于程序的編寫,有利于分析調(diào)試,也有利于程序的重復(fù)使用。</p><p>  此次課題的設(shè)計(jì)已告一段落,在這次畢業(yè)設(shè)計(jì)過(guò)程中需要用一些不曾學(xué)過(guò)的東西時(shí),就要去有針對(duì)性地查找資料,然后加以吸收利用,以提高自己的應(yīng)用能力,而且還能增長(zhǎng)自己見(jiàn)識(shí),補(bǔ)充最新的專業(yè)知識(shí),學(xué)會(huì)了一些編程方面的常用算法。作為一名電子專業(yè)的畢業(yè)生,我將會(huì)繼續(xù)在新技術(shù)的道路上不斷鉆研、開(kāi)拓進(jìn)取。相信通過(guò)此次

93、設(shè)計(jì)的鍛煉,我對(duì)專業(yè)知識(shí)和技能的掌握將更加牢靠,在今后的工作和學(xué)習(xí)中,必將使我受益匪淺,取得應(yīng)有的優(yōu)勢(shì)。</p><p><b>  致謝辭</b></p><p>  在這里感謝指導(dǎo)老師鄭文斌給我耐心的指導(dǎo),在這次設(shè)計(jì)期間,碰到許多專業(yè)方面的難題,鄭老師都一一幫我解答,特別在教學(xué)繁忙的情況下,還為我們提供了許多寶貴的資料和意見(jiàn),并幫我們作出了詳細(xì)的分析,使我們更加順

94、利地完成此次畢業(yè)設(shè)計(jì)。通過(guò)這一個(gè)多月的時(shí)間,使我學(xué)到許多知識(shí),明白了許多以前上課時(shí)無(wú)法理解的知識(shí),還積累了一些較簡(jiǎn)單的問(wèn)題解決方案。與此同時(shí)也感謝同組做課題設(shè)計(jì)的同學(xué),在設(shè)計(jì)過(guò)程中,有許多東西我不懂,他們都耐心地給我講解,給予我技術(shù)支援,幫助我解決了不少難題。另外由于該方面的設(shè)計(jì)水平有限,所以存在著許多缺陷和失誤,懇請(qǐng)老師批評(píng)指正。</p><p><b>  參考文獻(xiàn)</b></p&

95、gt;<p>  [1]潘松,黃繼業(yè). EDA技術(shù)實(shí)用教程(第二版). 北京科學(xué)出版社. 2005.2</p><p>  [2]億特科技. CPLD/FPGA應(yīng)用系統(tǒng)設(shè)計(jì)與產(chǎn)品開(kāi)發(fā). 人民郵電出版社. 2005.7</p><p>  [3]李輝. PLD與數(shù)字系統(tǒng)設(shè)計(jì). 西安電子科技大學(xué)出版社. 2005.5&l

96、t;/p><p>  [4]王志鵬,付麗琴. 可編程邏輯器件開(kāi)發(fā)技術(shù)MAX+PLUS II.北京國(guó)防工業(yè)出版社.2005.3</p><p>  [5]王道先. VHDL電路設(shè)計(jì)技術(shù). 北京國(guó)防工業(yè)出版社. 2004.1</p><p>  [6] 趙不賄. 在系統(tǒng)可編程器件與開(kāi)發(fā)技術(shù). 機(jī)械工業(yè)出版社.

97、2001.6</p><p>  [7] 曾繁泰. EDA工程的理論與實(shí)踐. 電子工業(yè)出版社. 2004.5</p><p>  [8] 尹佳喜,尹 仕. 基于CPLD的三相多波形函數(shù)發(fā)生器設(shè)計(jì)http://www.pld.com.cn/application/a146.htm,2005-9-20。</p><p>  [9

溫馨提示

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