信號(hào)發(fā)生器論文畢業(yè)論文_第1頁(yè)
信號(hào)發(fā)生器論文畢業(yè)論文_第2頁(yè)
信號(hào)發(fā)生器論文畢業(yè)論文_第3頁(yè)
信號(hào)發(fā)生器論文畢業(yè)論文_第4頁(yè)
信號(hào)發(fā)生器論文畢業(yè)論文_第5頁(yè)
已閱讀5頁(yè),還剩66頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、西安大學(xué)畢業(yè)設(shè)計(jì)(論文)題 目:多功能波形發(fā)生器的設(shè)計(jì)學(xué)院:電子工程學(xué)院系部: 光電子技術(shù)系專(zhuān)業(yè):光電信息工程班 級(jí):學(xué)生姓名:導(dǎo)師姓名:職稱(chēng): 副教授 起止時(shí)間: 2013年3月4日2013年6月14 h畢業(yè)設(shè)計(jì)(論文)誠(chéng)信聲明書(shū)本人聲明:本人所提交的畢業(yè)論文 多功能波形發(fā)生器的設(shè) 辻是本人在指導(dǎo)教師指導(dǎo)下獨(dú)立研究、寫(xiě)作的成果,論文中所引 用他人的文獻(xiàn)、數(shù)據(jù)、圖件、資料均已明確標(biāo)注;對(duì)本文的研究做岀 重要貢獻(xiàn)的個(gè)人和集體,均已在文屮以明確方式注明并表示感謝。本人完全清楚本聲明的法律后果,中請(qǐng)學(xué)位論文和資料若有不實(shí) 之處,本人愿承擔(dān)相應(yīng)的法律責(zé)任。論文作者簽名:指導(dǎo)教師簽名:時(shí)間: 年 月 日

2、 時(shí)*間: 年 月 h西安郵電大學(xué)畢業(yè)設(shè)計(jì)(論文)任務(wù)書(shū)任務(wù):1.掌握可編程邏輯器件的工作原理;2.利用可編程邏 輯器件完成多功能波形發(fā)生器的設(shè)計(jì)并且進(jìn)行仿真驗(yàn)證;3.完 成畢業(yè)設(shè)計(jì)論文的撰寫(xiě)。要求:1.熟悉可編程邏輯器件的工 作原理及vhdl語(yǔ)言編程;2.熟悉quartus ii軟件的使用; 有一定的數(shù)字系統(tǒng)設(shè)計(jì)能力。任務(wù)與要求開(kāi)始日期 20130304完成日期 20130614起止時(shí)間2013. 3.4 2013. 3. 172013. 3. 182013. 3.312013. 4. 12013. 4. 192013. 4.202013. 5. 192013. 5. 202013. 6.

3、14工作進(jìn)程工作內(nèi)容了解多功能波形發(fā)生器的功能及工作 原理熟悉可編程邏輯器件的工作原理,quartos ii軟件的使用以及vhdl語(yǔ)言編程的相關(guān)知識(shí) 結(jié)合多功能波形發(fā)生器需要實(shí)現(xiàn)的功能, 利用可編程邏輯器件完成多功能波形發(fā)生器 的設(shè)計(jì);根據(jù)所得結(jié)果進(jìn)行分析,用verilog語(yǔ) 言編程進(jìn)行仿真,驗(yàn)證設(shè)計(jì)方案是否能實(shí)現(xiàn) 多功能波形發(fā)生器的功能以及實(shí)現(xiàn)的效果如 何;整理材料,撰寫(xiě)論文。主要參考書(shū)目(資料):eda技術(shù)及應(yīng)用modelsim電了系統(tǒng)分析及仿真等主要儀器設(shè)備及材料:計(jì)算機(jī)及相應(yīng)資料論文(設(shè)計(jì))過(guò)程中教師的指導(dǎo)安排:每周三下午三號(hào)實(shí)驗(yàn)樓518答疑對(duì)計(jì)劃的說(shuō)明:無(wú)指導(dǎo)教師簽字:2013年3月

4、 6日西安大學(xué)畢業(yè)設(shè)計(jì)(論文)開(kāi)題報(bào)告課題名稱(chēng):多功能波形發(fā)生器的設(shè)計(jì)電子工程學(xué)院 學(xué)院 光電子技術(shù) 系(部)光電信息工程 專(zhuān)業(yè)班學(xué)生姓名學(xué)號(hào)_指導(dǎo)教師1.本課題所涉及的問(wèn)題及應(yīng)用現(xiàn)狀綜述波形發(fā)生器亦稱(chēng)函數(shù)發(fā)生器,作為實(shí)驗(yàn)用信號(hào)源,是現(xiàn)今各種電了 電路實(shí)驗(yàn)設(shè)計(jì)應(yīng)用中必不可少的儀器設(shè)備z-o所謂多功能波形發(fā)生器 是能夠產(chǎn)生大量的標(biāo)準(zhǔn)信號(hào)和用戶(hù)自定義信號(hào),并保證高精度、高穩(wěn)定 性、可重復(fù)性和已操作性的電了儀器。因而它具有廣闊的應(yīng)用前景。可編程邏輯器件英文全稱(chēng)為:programmable logic device即pld。 pld是作為一種通用集成電路產(chǎn)生的,它的邏輯功能按照用戶(hù)對(duì)器件編 程來(lái)確定。

5、對(duì)于可編程邏輯器件,設(shè)計(jì)人員可利用價(jià)格低廉的軟件工具 快速開(kāi)發(fā)、仿真和測(cè)試其設(shè)計(jì)。然后,可快速將設(shè)計(jì)編程到器件屮,并 立即在實(shí)際運(yùn)行的電路中對(duì)設(shè)計(jì)進(jìn)行測(cè)試。在設(shè)計(jì)階段中客戶(hù)可根據(jù)需 要修改電路,直到對(duì)設(shè)計(jì)工作感到滿意為止。這是因?yàn)閜ld基于可重 寫(xiě)的存儲(chǔ)器技術(shù)要改變?cè)O(shè)計(jì),只需要簡(jiǎn)單地對(duì)器件進(jìn)行重新編程。傳統(tǒng)波形發(fā)生器大多由振蕩器、放大器、衰減器、指示器和調(diào)制器 組成。這種傳統(tǒng)設(shè)計(jì)方法的特點(diǎn)是硬件和軟件截然不同,設(shè)計(jì)中不可相互 替代,而但硬件連線復(fù)雜,可靠性較差。硬件描述語(yǔ)言vhdl和可編程邏輯 器件的廣泛應(yīng)用打破了硬件和軟件的屏障?;趘erilog語(yǔ)言,以eda技 術(shù)作為開(kāi)發(fā)手段,采用現(xiàn)場(chǎng)可

6、編程器件作為控制核心實(shí)現(xiàn)的波形發(fā)生器, 與傳統(tǒng)的設(shè)計(jì)相比較,不僅簡(jiǎn)化了硬件控制,提高了系統(tǒng)的整體性能和工 作可靠性,也為進(jìn)一步提高系統(tǒng)集成創(chuàng)造了條件。本課題所涉及的問(wèn)題包括了解多功能波形發(fā)牛器的功能,熟悉可編 程邏輯器件的工作原理、quartus ii軟件的使用及verilog語(yǔ)言編程,利 用可編程邏輯器件完成多功能波形發(fā)生器的設(shè)計(jì)并且進(jìn)行仿真驗(yàn)證。2本課題需要重點(diǎn)研究的關(guān)鍵問(wèn)題、解決的思路及實(shí)現(xiàn)預(yù)期口標(biāo)的可行 性分析本課題需要重點(diǎn)研究的關(guān)鍵問(wèn)題是利用可編程邏輯器件完成多功能 波形發(fā)生器的設(shè)計(jì)并進(jìn)行仿真驗(yàn)證。解決思路是在深入理解多功能波形發(fā)生器的功能和可編程邏輯器件 的工作原理的基礎(chǔ)上,用ve

7、rilog語(yǔ)言編程,利用可編程邏輯器件完成多 功能波形發(fā)生器的設(shè)計(jì)并且進(jìn)行仿真,驗(yàn)證設(shè)計(jì)方案是否能實(shí)現(xiàn)多功能 波形發(fā)生器的功能以及實(shí)現(xiàn)的效果如何。3完成本課題的工作方案2013.3.42013.3.17了解多功能波形發(fā)工器的功能及t作原理;20133182013331熟悉可編程邏輯器件的工作原理,quartus ii軟件的使用以及 vhdl語(yǔ)言編程的相關(guān)知識(shí);2013.4.12013.4.19結(jié)合多功能波形發(fā)生器需要實(shí)現(xiàn)的功能,利用可編程邏輯器件完成多 功能波形發(fā)生器的設(shè)計(jì);2013.4.20 2013.5.19根據(jù)所得結(jié)杲進(jìn)行分析,用verilog語(yǔ)言編程進(jìn)行仿真,驗(yàn)證設(shè)計(jì)方 案是否能實(shí)現(xiàn)多

8、功能波形發(fā)工器的功能以及實(shí)現(xiàn)的效果如何;2013.5.20 2013.6.14整理材料,撰寫(xiě)論文。4指導(dǎo)教師審閱意見(jiàn)指導(dǎo)教師(簽字): 2013年 3月13日目錄摘要iiabstractill弓丨言11.eda與軟件簡(jiǎn)介21eda技術(shù)發(fā)展21.2 fpga 介紹41.3 modelsim 介紹51.4 verilog 與 vhdl 語(yǔ)言介紹51.5測(cè)試激勵(lì)文件介紹61.6軟件使用入門(mén)61.6.1系統(tǒng)仿真軟件modulsim使用61.6.2 quartus ii 軟件使用92系統(tǒng)總體設(shè)計(jì)102.1硬件總體框圖102.2軟件總體框圖112.3軟件與硬件設(shè)計(jì)總結(jié)113系統(tǒng)各模塊設(shè)計(jì)123時(shí)鐘模塊設(shè)計(jì)

9、123.2增斜波設(shè)計(jì)153.3減斜波設(shè)計(jì)173.4方波設(shè)計(jì)203.5三角波設(shè)計(jì)233.6正弦波設(shè)計(jì)253.7階梯波設(shè)計(jì)284系統(tǒng)軟硬件聯(lián)合調(diào)試314.1系統(tǒng)整體模塊結(jié)構(gòu)圖314.2系統(tǒng)仿真輸出圖32結(jié)論33致謝35參考文獻(xiàn)36附錄37譯文49摘要在函數(shù)發(fā)主器發(fā)展過(guò)程中,出現(xiàn)了很多波形發(fā)生的方法,其中大部分是利用 dds原理制作而成,比如說(shuō)由晶休管、運(yùn)放ic等通用器件制作而成,或者利用 單片集成芯片制做而成。但是隨著fpga的出現(xiàn),波形發(fā)生的方法更加多元化。 將dds原理成功的移植到fpga中,就能產(chǎn)生多種波形,頻率可調(diào),相位可選的 波形發(fā)生裝置,也可以自行設(shè)計(jì)方法產(chǎn)生波形,使得開(kāi)發(fā)更加簡(jiǎn)單。本

10、文提出了一種基于可編程邏輯器件fpga產(chǎn)生任意波形發(fā)生器的設(shè)計(jì)方 法。完成了在fpga的控制下,產(chǎn)生遞增斜波、遞減斜波、方波、三角波、正弦 波及階梯波行,利用modelsim和queus ii進(jìn)行仿真,驗(yàn)證波形,并給出了實(shí)驗(yàn) 結(jié)果。實(shí)驗(yàn)結(jié)果表明,此任意波形發(fā)生器能夠按照要求輸出相應(yīng)波形,達(dá)到了設(shè) 計(jì)要求。關(guān)鍵字:fpga,斜波;方波;三角波;正弦波;階梯波abstractwith function generator in the rapid development process, there have been many ways to generate waveform,and most

11、 of them do it with dds for example, a transistor, op amp ic and other common devices made it , or the use of monolithic integrated chip system to do. but with the emergence of fpga,waveform generation method is more diversified. produce a variety of waveforms, adjustable frequency, phase, selectabl

12、e waveform generating device.fpga can design their own methods of generating waveforms, making development easier.this paper proposes a method of arbitrary waveform generator ,which was based on programmable logic device fpga design .under the control of the fpgajt gnenrated increasing oblique wave

13、and decreasing oblique wave, square wave, triangle wave, sine sweep ladder wave line,and then verify the results by the softwave of modelsim. the experimental results showed that the arbitrary waveform generator can output waveform accordingly in accordance with the requirements, and has reached the

14、 design requirements.keyword: fpga,oblique wave, square wave, triangle wave, sine wave and step wave引言在電子、通信、實(shí)驗(yàn)教學(xué)等領(lǐng)域,高精度、高分辨率、幅度相位可控的信號(hào)發(fā)生 器冇著廣泛的應(yīng)用。信號(hào)發(fā)生器又稱(chēng)為信號(hào)源或者振蕩器,在生產(chǎn)實(shí)踐和科技領(lǐng) 域屮冇著廣泛的應(yīng)用。函數(shù)發(fā)生器是使用最廣的通用信號(hào)源,提供正弦波、鋸齒波、方波、脈沖波 等波形,冇的還同時(shí)具冇調(diào)制和掃描功能。函數(shù)波形發(fā)生器在設(shè)計(jì)上分為模擬式和數(shù)字合成式。眾所周知,數(shù)字合成式 函數(shù)信號(hào)源(dds)無(wú)論就頻率、幅度乃至信號(hào)的信噪比(s/

15、n)均優(yōu)于模擬式, 其鎖相環(huán)(pll)的設(shè)計(jì)讓輸出信號(hào)不僅是頻率精準(zhǔn),而且相位抖動(dòng)(phasejitter) 及頻率漂移均能達(dá)到相當(dāng)穩(wěn)定的狀態(tài),但數(shù)字式信號(hào)源屮,數(shù)字電路與模擬電路 z間的干擾始終難以有效克服,也造成在小信號(hào)的輸出上不如模擬式的函數(shù)信號(hào) 發(fā)生器。本文引入利用fpga來(lái)產(chǎn)生階梯波、三角波、遞增斜波、遞減斜波、正弦波、 方波。具有以下優(yōu)勢(shì):開(kāi)發(fā)信號(hào)發(fā)生器簡(jiǎn)單,容易實(shí)現(xiàn),成本低廉,能夠根據(jù)用 戶(hù)需求進(jìn)行定制等功能。fpga是作為專(zhuān)用集成電路領(lǐng)域屮的一種半定制電路而出現(xiàn)的,既解決了定 制電路的不足,又克服了原有可編程器件門(mén)電路數(shù)有限的缺點(diǎn)。因?yàn)槠涫且环N半 定制的電路結(jié)構(gòu),因ifu fp

16、ga具有很多靈活性,能夠根據(jù)本系統(tǒng)的需求靈活改變 內(nèi)部電路,以達(dá)到系統(tǒng)的需要。另外一方而,碩件描述語(yǔ)言岀現(xiàn),使得fpga開(kāi) 發(fā)隨心應(yīng)手,方便快捷。因?yàn)橛布枋稣Z(yǔ)言具有設(shè)計(jì)的行為特性、設(shè)計(jì)的數(shù)據(jù)流 特性、設(shè)計(jì)的結(jié)構(gòu)組成以及包含響應(yīng)監(jiān)控和設(shè)計(jì)驗(yàn)證方而的時(shí)延和波形產(chǎn)生機(jī) 制,這樣使得從頂層整體架構(gòu)到底層具體模塊的開(kāi)發(fā),以及后續(xù)的驗(yàn)證,時(shí)延等更加 方便快捷。從fpga開(kāi)發(fā)多功能信號(hào)發(fā)生器的角度來(lái)說(shuō),因?yàn)閮恿俗晕叶ㄖ齐娐芬约办` 活高效的硬件描述語(yǔ)言,使得本系統(tǒng)開(kāi)發(fā)簡(jiǎn)單,編程容易,可靠性高,代碼冗余 量少。而月.能夠積極擴(kuò)展,使得設(shè)計(jì)更加多元化,其至能做成任意信號(hào)發(fā)生器。1. eda與軟件簡(jiǎn)介1.1 ed

17、a技術(shù)發(fā)展在電子設(shè)計(jì)自動(dòng)化(英語(yǔ):electronic design automation,縮寫(xiě):eda)出現(xiàn) 之前,設(shè)計(jì)人員必須手工完成集成電路的設(shè)計(jì)、布線等工作,這是因?yàn)楫?dāng)吋所謂 集成電路的復(fù)雜程度遠(yuǎn)不及現(xiàn)在。工業(yè)界開(kāi)始使用幾何學(xué)方法來(lái)制造用于電路光 繪(photoplotter)的膠帶。到了 1970年代中期,開(kāi)發(fā)人應(yīng)嘗試將整個(gè)設(shè)計(jì)過(guò)程 自動(dòng)化,而不僅僅滿足于自動(dòng)完成掩膜草圖。第一個(gè)電路布線、布局工具研發(fā)成 功。設(shè)計(jì)自動(dòng)化會(huì)議(design automation conference)在這一時(shí)期被創(chuàng)立,旨在 促進(jìn)電子設(shè)計(jì)自動(dòng)化的發(fā)展。從1981年開(kāi)始,電子設(shè)計(jì)自動(dòng)化逐漸開(kāi)始商業(yè)化。198

18、4年的設(shè)計(jì)自動(dòng)化會(huì) 議(design automation conference)上還舉辦了第一個(gè)以電子設(shè)計(jì)自動(dòng)化為主題 的銷(xiāo)售展覽。gateway設(shè)計(jì)自動(dòng)化在1986年推出了一種硬件描述語(yǔ)言verilog, 這種語(yǔ)言在現(xiàn)在是最流行的高級(jí)抽象設(shè)計(jì)語(yǔ)言。1987年,在美國(guó)國(guó)防部的資助 下,另一種硬件描述語(yǔ)言vhdl被創(chuàng)造出來(lái)?,F(xiàn)代的電子設(shè)計(jì)自動(dòng)化設(shè)計(jì)工具 可以識(shí)別、讀取不同類(lèi)型的硬件描述。根據(jù)這些語(yǔ)言規(guī)范產(chǎn)生的各種仿真系統(tǒng)迅 速被推出,使得設(shè)計(jì)人員可對(duì)設(shè)計(jì)的芯片進(jìn)行直接仿真。后來(lái),技術(shù)的發(fā)展更側(cè) 重于邏輯綜合。目前的數(shù)字集成電路的設(shè)計(jì)都比較模塊化(參見(jiàn)集成電路設(shè)計(jì)、設(shè)計(jì)收斂 (design cl

19、osure)和設(shè)計(jì)流(design flow (eda)o半導(dǎo)體器件制造工藝需要標(biāo) 準(zhǔn)化的設(shè)計(jì)描述,高抽象級(jí)的描述將被編譯為信息單元(cell)的形式。設(shè)計(jì)人 員在進(jìn)行邏輯設(shè)計(jì)時(shí)尚無(wú)需考慮信息單元的具體硬件工藝。利用特定的集成電路 制造工藝來(lái)實(shí)現(xiàn)硬件電路,信息單元就會(huì)實(shí)施預(yù)定義的邏輯或其他屯子功能。半 導(dǎo)體硬件廠商大多會(huì)為它們制造的元件提供“元件庫(kù)",并提供相應(yīng)的標(biāo)準(zhǔn)化仿真 模型。相比數(shù)字的電子設(shè)計(jì)自動(dòng)化工具,模擬系統(tǒng)的電子設(shè)計(jì)自動(dòng)化工具大多并 非模塊化的,這是因?yàn)槟M屯路的功能更加復(fù)雜,而且不同部分的相互影響較強(qiáng), 而11作用規(guī)律復(fù)雜,電子元件大多沒(méi)有那么理想。verilog am

20、s就是一種用于模 擬電子設(shè)計(jì)的硬件描述語(yǔ)言。此文,設(shè)計(jì)人員可以使用硬件驗(yàn)證語(yǔ)言來(lái)完成項(xiàng)目 的驗(yàn)證工作目前最新的發(fā)展趨勢(shì)是將集描述語(yǔ)言、驗(yàn)證語(yǔ)言集成為一體,典型的 例子有 systemverilog o隨著集成電路規(guī)模的擴(kuò)大、半導(dǎo)體技術(shù)的發(fā)展,電子設(shè)計(jì)自動(dòng)化的重耍性急 劇增加。這些工具的使用者包括半導(dǎo)體器件制造中心的駛件技術(shù)人員,他們的工 作是操作半導(dǎo)體器件制造設(shè)備并管理整個(gè)工作車(chē)間。-些以設(shè)計(jì)為主要業(yè)務(wù)的公 司,也會(huì)使用電子設(shè)計(jì)自動(dòng)化軟件來(lái)評(píng)估制造部門(mén)是否能夠適應(yīng)新的設(shè)計(jì)任務(wù)。 電了設(shè)計(jì)口動(dòng)化工具還被用來(lái)將設(shè)計(jì)的功能導(dǎo)入到類(lèi)似現(xiàn)場(chǎng)可編程邏輯門(mén)陣列 的半定制可編程邏輯器件,或者生產(chǎn)全定制的專(zhuān)用集

21、成電路。eda代表了當(dāng)今電子設(shè)計(jì)技術(shù)的最新發(fā)展方向,它的基本特征是:設(shè)計(jì)人 員按照“口頂向下"的設(shè)計(jì)方法,對(duì)整個(gè)系統(tǒng)進(jìn)行方案設(shè)計(jì)和功能劃分,系統(tǒng)的關(guān) 鍵電路用一片或幾片專(zhuān)用集成電路(asic)實(shí)現(xiàn),然后采用硬件描述語(yǔ)言(hdl院 成系統(tǒng)行為級(jí)設(shè)計(jì),最后通過(guò)綜合器和適配器生成最終的目標(biāo)器件。這樣的設(shè)計(jì) 方法被稱(chēng)為高層次的電了設(shè)計(jì)方法。下面介紹與eda基本特征有關(guān)的幾個(gè)概念。1) “自頂向下''的設(shè)計(jì)方法10年前,電子設(shè)計(jì)的基本思路還是選擇標(biāo)準(zhǔn)集成電路“自底向上x(chóng)bottom-up) 的構(gòu)造出一個(gè)新的系統(tǒng),這樣的設(shè)計(jì)方法就如同一磚一瓦建造金字塔,不僅效率 低、成本高而且容

22、易出錯(cuò)。高層次設(shè)計(jì)給我們提供了一種'自頂向下"top-down)的全新設(shè)計(jì)方法,這種 設(shè)計(jì)方法首先從系統(tǒng)設(shè)計(jì)入手,在頂層進(jìn)行功能方框圖的劃分和結(jié)構(gòu)設(shè)計(jì)。在方 框圖一級(jí)進(jìn)行仿真、糾錯(cuò),并用硬件描述語(yǔ)言對(duì)高層次的系統(tǒng)行為進(jìn)行描述,在 系統(tǒng)一級(jí)進(jìn)行驗(yàn)證。然后用綜合優(yōu)化工具生成具體門(mén)電路的網(wǎng)表,其對(duì)應(yīng)的物理 實(shí)現(xiàn)級(jí)可以是卬刷電路板或?qū)S眉呻娐贰S捎谠O(shè)計(jì)的主耍仿真和調(diào)試過(guò)程是在 高層次上完成的,這一方面有利于早期發(fā)現(xiàn)結(jié)構(gòu)設(shè)計(jì)上的錯(cuò)誤,避免設(shè)計(jì)工作的 浪費(fèi),同時(shí)也減少了邏輯功能仿真的工作量,提高了設(shè)計(jì)的一次成功率。2) asic設(shè)計(jì)現(xiàn)代電了產(chǎn)品的復(fù)雜度曰益加深,一個(gè)電了系統(tǒng)可能由數(shù)萬(wàn)個(gè)

23、中小規(guī)模集成 電路構(gòu)成,這就帶來(lái)了體積大、功耗大、可靠性差的問(wèn)題,解決這一問(wèn)題的有效 方法就是采用 asic(application specific integrated circuits)芯片進(jìn)行設(shè)計(jì)。asic 按照設(shè)計(jì)方法的不同可分為:全定制asic,半定制asic,可編程asic(也稱(chēng)為 可編程邏輯器件)。設(shè)計(jì)全定制asic芯片時(shí),設(shè)計(jì)師耍定義芯片上所有晶體管的幾何圖形和工 藝規(guī)則,最后將設(shè)計(jì)結(jié)果交由ic廠家掩膜制造完成。優(yōu)點(diǎn)是:芯片可以獲得最 優(yōu)的性能,即面積利用率高、速度快、功耗低。缺點(diǎn)是:開(kāi)發(fā)周期長(zhǎng),費(fèi)用高, 只適合大批量產(chǎn)品開(kāi)發(fā)。半定制asic芯片的版圖設(shè)計(jì)方法有所不同,分為門(mén)

24、陣列設(shè)計(jì)法和標(biāo)準(zhǔn)單元 設(shè)計(jì)法,這兩種方法都是約束性的設(shè)計(jì)方法,其主要目的就是簡(jiǎn)化設(shè)計(jì),以犧牲 芯片性能為代價(jià)來(lái)縮短開(kāi)發(fā)時(shí)間。可編程邏輯芯片與上述掩膜asic的不同z處在于:設(shè)計(jì)人員完成版圖設(shè)計(jì) 后,在實(shí)驗(yàn)室內(nèi)就町以燒制出自己的芯片,無(wú)須ic廠家的參與,大大縮短了開(kāi)發(fā) 周期??删幊踢壿嬈骷谄呤甏詠?lái),經(jīng)歷了 pal、gal、cpld、fpga幾個(gè) 發(fā)展階段,其中cpld/fpga屬高密度可編程邏輯器件,冃而集成度已高達(dá)200 萬(wàn)門(mén)/片,它將掩膜asic集成度高的優(yōu)點(diǎn)和可編程邏輯器件設(shè)計(jì)生產(chǎn)方便的特點(diǎn) 結(jié)合在一起,特別適合于樣品研制或小批量產(chǎn)品開(kāi)發(fā),使產(chǎn)品能以最快的速度上 市,而當(dāng)市場(chǎng)擴(kuò)大時(shí),

25、它可以很容易的轉(zhuǎn)由掩膜asic實(shí)現(xiàn),因此開(kāi)發(fā)風(fēng)險(xiǎn)也大 為降低。上述asic芯片,尤其是cpld/fpga器件,已成為現(xiàn)代高層次電了設(shè)計(jì)方 法的實(shí)現(xiàn)載體。1.2 fpga 介紹fpga(fieldprogrammable gate array),即現(xiàn)場(chǎng)可編程門(mén)陣歹!j,它是在 pal> gal、cpld等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專(zhuān)用集成電路 (asic)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,乂克 服了原有可編程器件門(mén)電路數(shù)有限的缺點(diǎn)。以硬件描述語(yǔ)言(verilog或vhdl)所完成的電路設(shè)計(jì),可以經(jīng)過(guò)簡(jiǎn)單的 綜合與布局,快速的燒錄至fpga上進(jìn)行測(cè)試,

26、是現(xiàn)代ic設(shè)計(jì)驗(yàn)證的技術(shù)主 流。這些可編輯兀件可以被用來(lái)實(shí)現(xiàn)一些基木的邏輯門(mén)電路(比如and、or、 xor、not)或者更復(fù)雜一些的組合功能比如解碼器或數(shù)學(xué)方程式。在大多數(shù) 的fpga里面,這些可編輯的元件里也包含記憶元件例如觸發(fā)器(flip-flop) 或者其他更加完整的記憶塊??谇笆袌?chǎng)上開(kāi)發(fā)fpga的主要有兩大供應(yīng)商,一個(gè)就是altera公司,另 一個(gè)就是xilinx公司oaltera的主流fpga分為兩大類(lèi),一種側(cè)重低成木應(yīng)用,容量屮等,性能可 以滿足一般的邏輯設(shè)計(jì)要求,如cyclone, cyclonell;還有種側(cè)重于高性能應(yīng) 用,容量大,性能能滿足各類(lèi)高端應(yīng)用,如startix,

27、 stratixii 用戶(hù)可以根據(jù) 自己實(shí)際應(yīng)用要求進(jìn)行選擇。在性能可以滿足的情況下,優(yōu)先選擇低成木器件。max+plusii:普遍認(rèn)為maxplusii曾經(jīng)是最優(yōu)秀的pld開(kāi)發(fā)平臺(tái)之一,適 合開(kāi)發(fā)早期的中小規(guī)模pld/fpga由quartusii替代,不再推薦使用。quartusii: altera新一代fpga/pld開(kāi)發(fā)軟件,適合新器件和大規(guī)模fpga 的開(kāi)發(fā),已經(jīng)取代maxplusiiosopc builder:配合quartusii,可以完成集成cpu的fpga芯片的開(kāi)發(fā)工 作dsp builder: quartusii與matlab的接口,利用ip核在matlab屮快速完成數(shù) 字信

28、號(hào)處理的仿真和最終fpga實(shí)現(xiàn)。xilinx的主流fpga分為兩大類(lèi),一種側(cè)重低成木應(yīng)用,容量屮等,性能可 以滿足一般的邏輯設(shè)計(jì)要求,如spartan系列;還有一種側(cè)重于高性能應(yīng)用,容 量大,性能能滿足各類(lèi)高端應(yīng)用,如virtex系列,用戶(hù)可以根據(jù)門(mén)己實(shí)際應(yīng)用耍 求進(jìn)行選擇。在性能可以滿足的情況下,優(yōu)先選擇低成本器件。ise: xilinx公司集成開(kāi)發(fā)的工具foundation: xilinx公司早期的開(kāi)發(fā)工具, 逐步被ise取代嵌入式開(kāi)發(fā)套件(edk):用于開(kāi)發(fā)集成powerpc便核和microblaze軟核 cpu的工具system generator for dsp :配合matlab,

29、在fpga中完成數(shù)字信號(hào)處理的 工具1.3 modelsim 介紹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è)性化的圖形界面和用戶(hù)接口, 為用戶(hù)加快調(diào)錯(cuò)提供強(qiáng)有力的手段,是fpga/asic設(shè)計(jì)的首選仿真軟件。modelsim分幾種不同的版本:se、pe、le和oem,其中se是最高級(jí)的 版本,而集成在actel > atmel altera>

30、xilinx以及l(fā)attice等f(wàn)pga 商設(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è)界最好的技術(shù) 支持與服務(wù)。1.4

31、 verilog與vhdl語(yǔ)言介紹verilog hdl語(yǔ)言是一種硬件描述語(yǔ)言,用于從算法級(jí)、門(mén)級(jí)到開(kāi)關(guān)級(jí)的多 種抽彖設(shè)計(jì)層次的數(shù)字系統(tǒng)建模。其具有下述描述能力:設(shè)計(jì)的行為特性、設(shè)計(jì) 的數(shù)據(jù)流特性、設(shè)計(jì)的結(jié)構(gòu)組成以及包含響應(yīng)監(jiān)控和設(shè)計(jì)驗(yàn)證方而的時(shí)延和波形 產(chǎn)生機(jī)制。所冇這些都使用同一種建模語(yǔ)言。此外,verilog hdl語(yǔ)言捉供了編 程語(yǔ)言接口,通過(guò)該接口可以在模擬、驗(yàn)證期間從設(shè)計(jì)外部訪問(wèn)設(shè)計(jì),包括模擬 的具體控制和運(yùn)行。vhdl語(yǔ)言是一種用于電路設(shè)計(jì)的高級(jí)語(yǔ)言。vhdl主要用于描述數(shù)字系統(tǒng) 的結(jié)構(gòu),行為,功能和接口。除了含有許多具有硬件特征的語(yǔ)句外,vhdl的語(yǔ) 言形式、描述風(fēng)格以及語(yǔ)法是

32、十分類(lèi)似于一般的計(jì)算機(jī)高級(jí)語(yǔ)言。vhdl的程序 結(jié)構(gòu)特點(diǎn)是將一項(xiàng)工程設(shè)計(jì),或稱(chēng)設(shè)計(jì)實(shí)體(可以是一個(gè)元件,一個(gè)電路模塊或 一個(gè)系統(tǒng))分成外部(或稱(chēng)可視部分,及端口)和內(nèi)部(或稱(chēng)不可視部分),既涉及 實(shí)體的內(nèi)部功能和算法完成部分。在對(duì)一個(gè)設(shè)計(jì)實(shí)體定義了外部界面后,一旦其 內(nèi)部開(kāi)發(fā)完成后,其他的設(shè)計(jì)就可以直接調(diào)用這個(gè)實(shí)體。1.5測(cè)試激勵(lì)文件介紹測(cè)試激勵(lì)也叫testbench,它是-種驗(yàn)證的手段。首先,任何設(shè)計(jì)都是會(huì)有輸 入輸出的。但是在軟環(huán)境屮沒(méi)有激勵(lì)輸入,也不會(huì)對(duì)你設(shè)計(jì)的輸出正確性進(jìn)行評(píng) 估。那么此時(shí)便有一種,模擬實(shí)際環(huán)境的輸入激勵(lì)和輸出校驗(yàn)的一種“虛擬平臺(tái)” 的產(chǎn)生。在這個(gè)平臺(tái)上你可以對(duì)你的設(shè)計(jì)

33、從軟件層面上進(jìn)行分析和校驗(yàn)。用通俗的話來(lái)表示:測(cè)試激勵(lì)就是啟動(dòng)模塊的鑰匙,它能夠模擬模塊的輸入 變量,使其能夠按照工程師的要求進(jìn)行工作。1.6軟件使用入門(mén)1.6. 1系統(tǒng)仿真軟件modulsim使用modulsim是目前市場(chǎng)上最流行的fpga仿真軟件,以其卓越的性能和操作 簡(jiǎn)單性著稱(chēng)。下面以modelsim 10.0來(lái)做個(gè)使用向?qū)А?)軟件安裝好之后,打開(kāi)軟件modulsim,點(diǎn)擊file>new>pi*oject,將岀現(xiàn) 如圖14所示畫(huà)面,起名為test。圖1-4新建工程2)在如圖15所示界面添加verilog文件與測(cè)試文件,然后進(jìn)行編譯,將出 現(xiàn)圖16所示畫(huà)面ctowse.圖1

34、-5添加文件ll bbrarynametype pathliemil aaaaaaaaaaaaaamammbavm muovm mtfa mbupf muuvm secured swrorim $inc*lm$_vet $v.std unrooo.ver urwnaao nmocro_ve unsimlibrary f: /fpgajeam/test/workoptimized opdrmzed modulef j/fpga.leam/test/sysflen.vmodulef: /fpgajtam/lttfab.sytgtn.vlibraryd:vnodet«h_!o.ocxiln

35、x_ib5/cphlibraryd:mo<mtech_10.0cx#nx_lb$/cpid_verlibraryimcoel.tecw. ./fcatfixiblibrary$mcoel.tech/.g jblibrary$moccljech/./avtnlibrary|mcoel_tech/./(mn-2.1.2library$mooelech/ ./pajtlibrary$mooelech/g jblibrary$mcoel_tech/uvm 1.1libraryf:xinxu 3.2t5e j>sish/verilog/mti.libraryd:mode<ech00cx

36、ilnxjb$/$iwimlibrary d:vnodefcechjo.(kvcilnx_lb5/$*t<xlfn.library$mcoel.tech/./sv_rtdlibraryd: vwxietech-io.oclxilnx jb$ajr*900.librarydivnodekechjo.ocvcilnx-lbs/urwnauolibraryd: vnodet och.l 0. (kx ilnx _ibs/urwnac.lforaryd:mode*echogxilmjb$ajr»imit itrary i圖1-6編譯結(jié)果3)雙擊測(cè)試文件,tb.sysgen將出現(xiàn)圖17所

37、示現(xiàn)象,然后在測(cè)試文件tb_sysgen上右擊選中start simulation,會(huì)出現(xiàn)如圖18所示現(xiàn)象。 name血血血血血血血血血血血血血血血血拠 令-土+-+- +- 土 ±+土 土 +一 土 土 +-worklibraryf: /fpga_learn/te$t/workm邸optimized.m沖1optimized 1 sy$gnmodulef: /fpga_learn/test/$y$gen.vtb_sy$genmodulef:=pga_learn/te$t/tb_sysgen.vcpldlibraryd: vnodoltech_10.0cxilinx_lbs/cpld

38、cpld.verlibraryd:vw<fee<h_10.0cxilinx_ib$/cpld_verfbatfixlblibrary$mooelech/ jfto衣fmbmc2_ib (empty)libry$mooelech/ /mc2_ibmtiavmlibrary$m9oel-tech/mvmmtiovmlibrary$modelech/. ./ovm-2.1.2mtipalibry$mooel_techjl/gibmtiupflibrary$mooel_tech/./uplfomtiuvmlibry$hwel_tech/./wm-l 1secureiplibryf: x&#

39、171;nx13.2ise_dsise/verilog/mti.srnonmlibraryd:nxxfekech jo.ocxilrx.kb$/simpnm$rnprim$_verllbryd:n>o(fekech_lo.ocxilinx-lb$/$iniprim.sv.stdlibrry|mooel_tech/. ./svstdunl9000_verlibrary儀 h-lo.ocglinxjtos/unqoo inimacrolibraryd:vnodeltech_10.0cxilinx_ibs/unmaaolnimacro.verlibraryd:vr»<felte

40、ch_10.0cxilinx_fo$/unrnac.unlslmlibraryd:nx)(feltech_10.0cxllinx.lto$/un»$lmtype ipathlbrarylibrary |r'*| proiert圖1-8添加波形12j必.#aiwavs<me»r<»»(r« tb.dhvld .hxcew8加甸hod>.fa5siw16加x)fv«cw5.fasslgwmt加甸fvwe./assiw40hwu.«551gnt49precessr»«r.c«

41、k»3ry#cwarv4)運(yùn)行仿真,將開(kāi)始進(jìn)行波形仿真,如圖19所示:m wav© - default 二 /tb_dlmodjte/dkjn$ /tb_allmodjte/re$t* /tb_dllmodjfe/dv+ /tb.allfnodjfe/qout. ± $ /tb.allmodjte/qout.eshbq /tballmodjfe/qout. 上 /tb.allmodjfe/qout./tb_allmodjte/qout. ab allmodjfe/dk o.wgsrazom$q$injinr juurnrju ltltlt rurrtrlt tlr

42、ltltlt jutjutt000000010010010011011011tjn ooooohooooooooo 11111110 00100000 sto weo(inn】objoiiiioiiioi.ta»ioo1:.:“八門(mén) 片丨“i.ii . 血01 m0.ill01.|.)ttmhq.jl ch.hlq.,. ill口門(mén)用匸門(mén)用kcjw門(mén)工"wtuj 1口用i門(mén)wwwe 帀工審臚心和 口匚匸:門(mén)滯 rnw門(mén)滯in. toocooooogiiiiiiioqoioooo )5(loooooiht900 ns1000 nscursor i817.138 nsnow10

43、00 ns800 ns>1 ih transcript | 創(chuàng) wave objects | processes | library | sim |1.6.2 quartus i i 軟件使用quartus ii軟件是口前市場(chǎng)上最流行的fpga開(kāi)發(fā)綜合軟件,它的開(kāi)發(fā)者是 altera公司。其容易操作,具有良好的可視化,開(kāi)發(fā)簡(jiǎn)單,易于被初學(xué)這接受。 以下介紹quartus ii 12.0的簡(jiǎn)單使用。1)打開(kāi)quartus ii軟件,點(diǎn)擊file選項(xiàng),然后選擇new,選擇new quartus ii project,選擇好器件以及存放路徑,就建立好工程文件了,如圖210。圖1-10新建工程2

44、)點(diǎn)擊file,選擇new,新建verilog hdl,比如文件名字叫test。編程完畢 z后,可以編譯下,看看有沒(méi)有語(yǔ)法錯(cuò)誤,如果沒(méi)有語(yǔ)法錯(cuò)誤,則進(jìn)入 測(cè)試文件建立模塊。3)點(diǎn)擊菜單欄中 processing,選擇 start,選擇 start testbench template write o 此 時(shí)會(huì)口動(dòng)生成testbench模板到項(xiàng)目文件夾simulation里面,后綴為.vt , 這吋候就可以通過(guò)modulesim進(jìn)彳亍仿真了。2系統(tǒng)總體設(shè)計(jì)本系統(tǒng)是基于fpga開(kāi)發(fā)的多功能波形發(fā)生器,利用碩件描述語(yǔ)言verilog 進(jìn)行編程,quartus ii ±進(jìn)行編譯,并仿真驗(yàn)證結(jié)

45、構(gòu),接著利用modelsim進(jìn)行再 次仿真驗(yàn)證,以達(dá)到本系統(tǒng)的要求,產(chǎn)生增斜波、減斜波、方波、三角波、正弦 波、階梯波形。但是確定該方案z前述是冇很多方案:方案一:用分立元件組成的函數(shù)發(fā)生器:通常是單函數(shù)發(fā)生器且頻率不高, 其工作不很穩(wěn)定,不易調(diào)試方案二:可以由品體管、運(yùn)放ic等通用器件制作,更多的則是用專(zhuān)門(mén)的函 數(shù)信號(hào)發(fā)生器ic產(chǎn)生。早期的函數(shù)信號(hào)發(fā)生器ic,如l8038、ba205、 xr2207/2209等,它們的功能較少,精度不高,頻率上限只冇300khz,無(wú)法產(chǎn) 生更高頻率的信號(hào),調(diào)節(jié)方式也不夠靈活,頻率和占空比不能獨(dú)立調(diào)節(jié),二者互 相影響。方案三:利用單片集成芯片的函數(shù)發(fā)生器:能產(chǎn)

46、生多種波形,達(dá)到較高的頻 率,但易于調(diào)試。鑒于此,美國(guó)美信公司開(kāi)發(fā)了新一代函數(shù)信號(hào)發(fā)生器 icmaxo38,它克服了 (2)小芯片的缺點(diǎn),可以達(dá)到更高的技術(shù)指標(biāo),是上述 芯片望塵莫及的。max038頻率高、精度好,因此它被稱(chēng)為高頻精密函數(shù)信號(hào)發(fā) 生器ico在鎖相環(huán)、壓控振蕩器、頻率合成器、脈寬調(diào)制器等電路的設(shè)計(jì)上, maxo38都是優(yōu)選的器件。方案四:利用專(zhuān)用直接數(shù)字合成dds芯片的函數(shù)發(fā)生器:能產(chǎn)生任意波形 并達(dá)到很高的頻率。但成本較高相比以上四種方案,利用fpga進(jìn)行開(kāi)發(fā)具有自己的優(yōu)勢(shì)性:1)可以根據(jù)自己的需求進(jìn)行定制特定的電路;2)綜合仿真容易實(shí)現(xiàn),擁有quartus il models

47、im和ise等軟件編程;3)可編程性強(qiáng),verilog語(yǔ)言編程語(yǔ)法比較類(lèi)似與熟悉的c語(yǔ)言,學(xué)習(xí)簡(jiǎn)單 易用2.1硬件總體框圖硬件設(shè)計(jì)主要包含三個(gè)模塊,即吋鐘產(chǎn)生模塊、fpga信號(hào)產(chǎn)生模塊、d/a數(shù)模 轉(zhuǎn)換模塊??傮w框圖如圖31所示圖3-1時(shí)鐘模塊是用來(lái)給fpga提供基準(zhǔn)時(shí)鐘,其穩(wěn)定性決定了信號(hào)產(chǎn)生器的穩(wěn)定; fpga信號(hào)產(chǎn)生模塊是各種波形信號(hào)產(chǎn)生如:正弦波,方波,斜波,鋸齒波,三 角波,波形頻率設(shè)定;d/a數(shù)模轉(zhuǎn)化模塊是將fpga輸出的數(shù)據(jù)整合成模擬的波 形。2.2軟件總體框圖軟件系統(tǒng)設(shè)計(jì)主要包含三個(gè)模塊,即基于altera公司的quartus ii分頻模塊, 波形產(chǎn)生模塊,仿真軟件models

48、im波形仿真模塊??傮w設(shè)計(jì)如圖32所示。時(shí)鐘分頻模塊是指將基準(zhǔn)時(shí)鐘進(jìn)行分頻,以達(dá)到變換頻率的功能。波形產(chǎn)生 模塊用來(lái)產(chǎn)生各種波形,如增斜波,減斜波,正弦波,階梯波形,方波。數(shù)字輸 出模塊,將各種波形用數(shù)字進(jìn)行輸出。2.3軟件與硬件設(shè)計(jì)總結(jié)綜上所述軟碩件結(jié)構(gòu),利用時(shí)鐘模塊產(chǎn)?;鶞?zhǔn)時(shí)鐘傳輸?shù)絝pga上,fpga 利用鎖相環(huán)對(duì)時(shí)鐘倍頻產(chǎn)牛更高的時(shí)鐘頻率,然后根據(jù)用戶(hù)需要,對(duì)時(shí)鐘進(jìn)行分 頻,產(chǎn)生不同頻率的波形。通過(guò)verilog語(yǔ)言進(jìn)行編程來(lái)產(chǎn)生各種波形,輸出到 da數(shù)模轉(zhuǎn)換模塊,產(chǎn)生模擬波形信號(hào)。3系統(tǒng)各模塊設(shè)計(jì)3.1時(shí)鐘模塊設(shè)計(jì)時(shí)鐘模塊的功能是分配系統(tǒng)時(shí)鐘,使得fpga輸出不同的頻率的波形。根據(jù)

49、這個(gè)功能,利用verilog編寫(xiě)了分頻吋鐘模塊。利用altera公司開(kāi)發(fā)的quartusclk div圖3-1分頻時(shí)鐘模塊時(shí)鐘模塊verilog代碼如卜:module clk_div(sysclk ,reset ,div ,clk_out);input sysclk,reset;input 7:0 div;output clk_out;reg clk_out;/reg clk_out_tmp=0;reg 7:0 count;reg 7:0 div_2;always (posedge sysclk or negedge reset) begin if(!reset) beginclk_out =

50、 0;count = 0;div_2 = div» 1;endelse beginif(count>=div_2) beginclk_out =clk_out;count = 0;endelsecount = count + 1;endendendmodule從圖3-1和時(shí)鐘模塊代碼中可以得到以卜信息:模塊的輸入變量是:外部基準(zhǔn)時(shí)鐘sysclk,模塊復(fù)位輸入reset,分頻系數(shù)輸入div,波形時(shí)鐘輸ill clk_out;復(fù)位輸入reset低電平時(shí),時(shí)鐘模塊復(fù)位,系統(tǒng)不運(yùn)作;分頻系數(shù)div決定波形時(shí)鐘,其分頻計(jì)算公式是:輸出時(shí)鐘頻率=系統(tǒng)時(shí)鐘頻率,比如說(shuō)div值為1,則輸出時(shí)鐘

51、是系 div + 1統(tǒng)時(shí)鐘的二分z-;根據(jù)以上程序,編寫(xiě)了下列測(cè)試程序:module tb_clkdiv;/ inputsreg sysclk;reg reset;reg 7:0 div;/ outputswire clk_out;/ instantiate the unit under test (uut)clk_div uut (sysclk(sysclk),.reset(reset),.div(div),.clk_out(clk_out);always #10 sysclk =sysclk;initial begin/ initialize inputs sysclk = 0;reset

52、 = 0;div = 0;/ wait 100 ns for global reset to finish #100;reset = 1;div = 1;#200;div = 2;endmodelsim軟件對(duì)時(shí)鐘模塊進(jìn)行仿真,結(jié)果如圖3-2所示:圖3-2兩分頻吋鐘波形從圖中口j以看出在div=l, rest=l的情況下,輸出時(shí)鐘clk_out是輸入時(shí)鐘 clk_in的一半,這很好地證明了分頻時(shí)鐘的正確性。4 92 us4.93 us4.94 us4.95 us4.96 us1l>0clkint"l1 1llclk_out.tmp11 1:1廠再用quartus ii軟件進(jìn)行綜合

53、仿真,結(jié)呆如圖3-3所示。圖3-3兩分頻時(shí)鐘波形從圖3-3所示的時(shí)鐘波形來(lái)看輸出時(shí)鐘clk_out時(shí)鐘頻率是輸入時(shí)鐘的一半, 但是存在小量的延時(shí),比如說(shuō)以lus為周期的情況下,延時(shí)大約是0.25us,但是 由于我們采用分頻后的時(shí)鐘作為產(chǎn)生波形的基準(zhǔn)時(shí)鐘,所以這點(diǎn)延時(shí)不影響整個(gè) 結(jié)果。綜上所述,該時(shí)鐘分頻模塊能夠?qū)⑤斎霑r(shí)鐘頻率按照自己系統(tǒng)需求分配出不同頻率。3.2增斜波設(shè)計(jì)增斜波是指波形按照一定的步幅遞增,達(dá)到最高點(diǎn)后又回到值為零的狀態(tài), 這樣循環(huán)進(jìn)行。按照這種思想設(shè)計(jì)出來(lái)軟件流程圖如圖34所示。add根據(jù)圖3-4所示軟件流程圖設(shè)計(jì)出增斜波模塊的模塊框圖,如圖3-5所示。圖3-5增斜波模塊框圖從

54、圖3-5中來(lái)分析該模塊的輸入輸出模塊以及引腳定義: 模塊的輸入變量是:外部基準(zhǔn)時(shí)鐘sysclk_in,模塊復(fù)位輸入reset_in,分頻系數(shù)輸入div。輸出時(shí)鐘波形時(shí)鐘輸出qout_add;復(fù)位輸入reset低電平時(shí),時(shí)鐘模塊復(fù)位,系統(tǒng)不運(yùn)作;分頻系數(shù)div決定波形時(shí)鐘,其分頻計(jì)算公式是:輸出時(shí)鐘頻率二系統(tǒng)時(shí)鐘頻率,比如說(shuō)div值為1,貝ij輸出時(shí)鐘是系 div + 1統(tǒng)時(shí)鐘的二分z-; qout_add是增斜波模塊的波形輸出。根據(jù)軟件流程圖以及模塊框圖中輸入輸出引腳定義,使用verilog語(yǔ)言設(shè)計(jì)了以 下代碼:module add(sysclk,系統(tǒng)時(shí)鐘rest,復(fù)位開(kāi)關(guān),低電平復(fù)位div,

55、分頻qout_add遞增斜波);input sysclk;input rest;input 7:0 div;input sysclk;input rest;input 7:0 div;output 7:0 qout_add;wire elk out;clk_div clk(.sysclk(sysclk),.reset(rest),.div(div),.clk_out(clk_out);產(chǎn)生遞增斜波reg 7:0 tmp_add=0;always (posedge clk_out or negedge rest) beginif(!rest) beginqout_add = 0;tmp_add = 0;endelse begintmp_add = tmp_add + 1 ;if

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論