歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

EDA課程設(shè)計(jì)副本

  • 資源ID:57814364       資源大?。?span id="zdhmowy" class="font-tahoma">1,017KB        全文頁(yè)數(shù):20頁(yè)
  • 資源格式: DOC        下載積分:5積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要5積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

EDA課程設(shè)計(jì)副本

課程設(shè)計(jì)說(shuō)明書 名稱 任意波形產(chǎn)生電路設(shè)計(jì)院 系 班 級(jí) 姓 名 系主任 教研室主任 指導(dǎo)教師 第一章 緒論電子設(shè)計(jì)自動(dòng)化(Electronic Design Automation)技術(shù)以計(jì)算機(jī)為基礎(chǔ)工作平臺(tái),以微電子技術(shù)為物理基礎(chǔ),以現(xiàn)代電子技術(shù)設(shè)計(jì)技術(shù)為靈魂,采用計(jì)算機(jī)軟件工具,最終實(shí)現(xiàn)電子系統(tǒng)或?qū)S眉呻娐返脑O(shè)計(jì)。EDA技術(shù)的使用包括兩類:一類是專用集成電路芯片的設(shè)計(jì)研發(fā)人員;另一類是廣大電子線路設(shè)計(jì)人員。后者并不具備專門的IC深層次的知識(shí)。EDA技術(shù)可簡(jiǎn)單概括為以大規(guī)??删幊踢壿嬈骷樵O(shè)計(jì)載體,通過(guò)硬件描述語(yǔ)言或?qū)⑦壿媹D輸入給相應(yīng)EDA開發(fā)軟件,經(jīng)過(guò)編譯和仿真,最終將所設(shè)計(jì)的電路下載到設(shè)計(jì)載體中,從而完成系統(tǒng)設(shè)計(jì)任務(wù)的一門新技術(shù)。1.1 EDA技術(shù)發(fā)展歷程伴隨著計(jì)算機(jī)、集成電路、電子系統(tǒng)設(shè)計(jì)的發(fā)展,EDA技術(shù)經(jīng)歷了計(jì)算機(jī)輔助設(shè)計(jì)、計(jì)算機(jī)輔助工程設(shè)計(jì)和電子設(shè)計(jì)自動(dòng)化三個(gè)發(fā)展階段。(1)70年代為計(jì)算機(jī)輔助設(shè)計(jì)CAD(ComputerAidedDe-sign)階段。這一階段人們將電子設(shè)計(jì)中涉及到的許多計(jì)算開始用計(jì)算機(jī)程序?qū)崿F(xiàn)。(2)80年代為計(jì)算機(jī)輔助工程CAE(Computer Aided Engineeirng)階段。這一階段出現(xiàn)了一些繪圖軟件,減輕了設(shè)計(jì)人員的勞動(dòng)。(3)90年代以來(lái)為電子設(shè)計(jì)自動(dòng)化EDA(Electminic Design Automation)階段。這一階段人們借助開發(fā)軟件的幫助,可以將設(shè)計(jì)過(guò)程中的許多細(xì)節(jié)問(wèn)題拋開,而將注意力集中在產(chǎn)品的總體開發(fā)上,提高了設(shè)計(jì)效率,縮短了產(chǎn)品的研制周期,實(shí)現(xiàn)了真正意義上的電子設(shè)計(jì)自動(dòng)化。1.2 EDA技術(shù)的應(yīng)用EDA技術(shù)在進(jìn)入21世紀(jì)后,得到了更大的發(fā)展應(yīng)用,突出表現(xiàn)在以下幾個(gè)方面:1.在FPGA上實(shí)現(xiàn)DSP應(yīng)用成為可能,用純數(shù)字邏輯進(jìn)行DSP模塊的設(shè)計(jì),使得高速DSP實(shí)現(xiàn)成為現(xiàn)實(shí),并有力地推動(dòng)了軟件無(wú)線電技術(shù)的實(shí)用化和發(fā)展。基于FPGA的DSP技術(shù),為高速數(shù)字信號(hào)處理算法提供了實(shí)現(xiàn)途徑。2.嵌入式處理器軟核的成熟,使得SOPC(System On a Programmable Chip)步入大規(guī)模應(yīng)用階段,在一片F(xiàn)PGA中實(shí)現(xiàn)一個(gè)完備的數(shù)字處理系統(tǒng)成為可能。3.使電子設(shè)計(jì)成果以自主知識(shí)產(chǎn)權(quán)的方式得以明確表達(dá)和確認(rèn)成為可能。4.在仿真和設(shè)計(jì)兩方面支持標(biāo)準(zhǔn)硬件描述語(yǔ)言且功能強(qiáng)大的EDA軟件不斷推出。目前EDA技術(shù)已在各大公司、企事業(yè)單位和科研教學(xué)部門廣泛使用。例如在飛機(jī)制造過(guò)程中,從設(shè)計(jì)、性能測(cè)試及特性分析直到飛行模擬,都可能涉及到EDA技術(shù)。1.3 EDA技術(shù)的設(shè)計(jì)方法數(shù)字系統(tǒng)的設(shè)計(jì)可采用不同的方法:一種為由底向上的設(shè)計(jì)方法,也稱傳統(tǒng)的設(shè)計(jì)方法;另一種為自頂向下的設(shè)計(jì)方法,也稱現(xiàn)代的設(shè)計(jì)方法。原理圖/VHDL文本編輯綜 合FPGA/CPLD適配時(shí)序與功能仿真FPGA/CPLD編程下載FPGA/CPLD器件和電路系統(tǒng)由底向上的設(shè)計(jì)方法是傳統(tǒng)的IC和PCB的設(shè)計(jì)方法。采用由底向上的設(shè)計(jì)方法需要設(shè)計(jì)者先定義和設(shè)計(jì) 每個(gè)基本模塊,然后對(duì)這些模塊進(jìn)行連線以完成整體設(shè)計(jì)。在IC設(shè)計(jì)復(fù)雜程度低于10 000門時(shí),常采用這種設(shè)計(jì)方法,但是隨著設(shè)計(jì)復(fù)雜程度的增加,該方法會(huì)產(chǎn)生產(chǎn)品生產(chǎn)周期長(zhǎng)、可靠性低、開發(fā)費(fèi)用高等問(wèn)題。 EDA技術(shù)采用現(xiàn)代的設(shè)計(jì)方法自頂向下的設(shè)計(jì)方法。采用自頂向下技術(shù)進(jìn)行設(shè)計(jì)可分為三個(gè)主要階段:系統(tǒng)設(shè)計(jì)、系統(tǒng)的綜合優(yōu)化和系統(tǒng)實(shí)現(xiàn),各個(gè)階段之間并沒(méi)有絕對(duì)的界限。EDA設(shè)計(jì)流程為:設(shè)計(jì)輸入、時(shí)序與功能仿真、綜合、適配與下載。右圖圖1-1是運(yùn)用EDA技術(shù)進(jìn) 圖1-1 EDA技術(shù)數(shù)字 行數(shù)字系統(tǒng)設(shè)計(jì)的流程圖。 系統(tǒng)設(shè)計(jì)的流程圖 1.3 數(shù)字系統(tǒng)設(shè)計(jì)1.3.1 數(shù)字系統(tǒng)設(shè)計(jì)的模型數(shù)字系統(tǒng)的設(shè)計(jì)就是用規(guī)范的和形式化的方式作出正確的系統(tǒng)邏輯功能的描述,詳細(xì)反映系統(tǒng)的邏輯進(jìn)程和具體的邏輯運(yùn)算操作,并選用具體的電路來(lái)實(shí)現(xiàn)所描述的系統(tǒng)邏輯。用于數(shù)字系統(tǒng)設(shè)計(jì)的EDA軟件有3類:是允許用戶用高級(jí)語(yǔ)言(如C語(yǔ)言)描述數(shù)字系統(tǒng)的邏輯功能,并能自動(dòng)實(shí)現(xiàn)電路的設(shè)計(jì),這種軟件的自動(dòng)化程度最高;二是允許用戶以邏輯流程圖的方式描述系統(tǒng)的邏輯關(guān)系,軟件自動(dòng)將邏輯流程圖設(shè)計(jì)成數(shù)字電路,這種軟件的自動(dòng)化程度次之:三是要求用戶先以人工方式設(shè)計(jì)出數(shù)字電路,再用電路圖方式或硬件描述語(yǔ)言的方式輸入計(jì)算機(jī),由EDA軟件作優(yōu)化、仿真等后續(xù)處理。1.3.2 數(shù)字系統(tǒng)設(shè)計(jì)的基本步驟數(shù)字系統(tǒng)設(shè)計(jì)的基本步驟有:系統(tǒng)任務(wù)分析,確定邏輯算法,系統(tǒng)劃分,系統(tǒng)邏輯描述,邏輯電路設(shè)計(jì),仿真、驗(yàn)證,物理實(shí)現(xiàn)。(1)系統(tǒng)任務(wù)分析:數(shù)字系統(tǒng)設(shè)計(jì)中的第一步是明確系統(tǒng)的任務(wù)。設(shè)計(jì)任務(wù)書可用各種方式提出對(duì)整個(gè)數(shù)字系統(tǒng)的邏輯要求,常用的方式有自然語(yǔ)言、邏輯語(yǔ)言描述、邏輯流程圖、時(shí)序圖等。(2)確定邏輯算法:實(shí)現(xiàn)系統(tǒng)邏輯運(yùn)算的方法稱為邏輯算法,簡(jiǎn)稱算法。一個(gè)數(shù)字系統(tǒng)的邏輯運(yùn)算往往有多種算法,設(shè)計(jì)者的任務(wù)要比較各種算法的優(yōu)劣,取長(zhǎng)補(bǔ)短,從中確定最合理的一種。數(shù)字系統(tǒng)的算法是邏輯設(shè)計(jì)的基礎(chǔ),算法不同,則系統(tǒng)的結(jié)構(gòu)也不同,算法的合理與否直接影響系統(tǒng)結(jié)構(gòu)的合理性。(3)系統(tǒng)劃分:當(dāng)算法明確后,應(yīng)根據(jù)算法構(gòu)造系統(tǒng)的硬件框架(也稱為系統(tǒng)框圖),將系統(tǒng)劃分為若干個(gè)部分,各部分分別承擔(dān)算法中不同的邏輯操作功能。(4)系統(tǒng)邏輯描述:當(dāng)系統(tǒng)中各個(gè)子系統(tǒng)和模塊的邏輯功能和結(jié)構(gòu)確定后,則需采用比較規(guī)范的形式來(lái)描述系統(tǒng)的邏輯功能。對(duì)系統(tǒng)的邏輯描述可先采用較粗略的邏輯流程圖,再將邏輯流程圖逐步細(xì)化為詳細(xì)邏輯流程圖,最后將詳細(xì)邏輯流程圖表示成與硬件有對(duì)應(yīng)關(guān)系的形式,為下一步的電路級(jí)設(shè)計(jì)提供依據(jù)。(5)邏輯電路設(shè)計(jì):電路級(jí)設(shè)計(jì)是指選擇合理的器件及連接關(guān)系以實(shí)現(xiàn)系統(tǒng)邏輯要求。電路級(jí)設(shè)計(jì)的結(jié)果通常采用兩種方式來(lái)表達(dá):電路圖方式和硬件描述語(yǔ)言方式。EDA軟件支持這兩種方式的輸入。(6)仿真、驗(yàn)證:當(dāng)電路設(shè)計(jì)完成后必須驗(yàn)證設(shè)計(jì)是否正確。在早期,只能通過(guò)搭試硬件電路才能得到設(shè)計(jì)的結(jié)果。目前,數(shù)字電路設(shè)計(jì)的EDA軟件都有具有驗(yàn)證(也稱為仿真、電路模擬)的功能,先通過(guò)電路驗(yàn)證(仿真),當(dāng)驗(yàn)證結(jié)果正確后再進(jìn)行實(shí)際電路的測(cè)試。由于EDA軟件的驗(yàn)證結(jié)果十分接近實(shí)際結(jié)果,因此,可極大地提高電路設(shè)計(jì)的效率。(7)物理實(shí)現(xiàn):最終用實(shí)際的器件實(shí)現(xiàn)數(shù)字系統(tǒng)的設(shè)計(jì),用儀表測(cè)量設(shè)計(jì)的電路是否符合設(shè)計(jì)要求?,F(xiàn)在的數(shù)字系統(tǒng)往往采用大規(guī)模和超大規(guī)模集成電路,由于器件集成度高、導(dǎo)線密集,故一般在電路設(shè)計(jì)完成后即設(shè)計(jì)印刷電路板,在印刷電路板上組裝電路進(jìn)行測(cè)試。需要注意的是、印刷電路板本身的物理特性也會(huì)影響電路的邏輯關(guān)系。1.4 Quartus II 介紹Quartus II 是MAX+plus II的升級(jí)版本,是ALTERA公司的第四代開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多種設(shè)計(jì)輸入形式,編譯快速,器件編程直接、易懂,它能夠支持邏輯門數(shù)在百萬(wàn)門以上的邏輯器件的開發(fā),并且為第三方工具提供了無(wú)縫接口。Quartus II軟件包的編程器是系統(tǒng)的核心,提供強(qiáng)大的設(shè)計(jì)處理功能,設(shè)計(jì)者可以通過(guò)添加特定的約束條件來(lái)提高芯片的利用率。Altera Quartus II 作為一種可編程邏輯的設(shè)計(jì)環(huán)境, 由于其強(qiáng)大的設(shè)計(jì)能力和直觀易用的接口,越來(lái)越受到數(shù)字系統(tǒng)設(shè)計(jì)者的歡迎。第二章:設(shè)計(jì)要求電路要求可以產(chǎn)生方波、正弦波、三角波,波形的頻率可調(diào),通過(guò)控制開關(guān)控制產(chǎn)生的波形,并通過(guò)控制按鍵控制設(shè)計(jì)信號(hào)的頻率,改變頻率的方法可以采用分頻和DDS的原理進(jìn)行控制信號(hào)頻率。并進(jìn)行D/A轉(zhuǎn)換電路與濾波電路的設(shè)計(jì),通過(guò)采用施密特觸發(fā)器對(duì)波形進(jìn)行整形,設(shè)計(jì)一頻率測(cè)量電路對(duì)所產(chǎn)生的頻率進(jìn)行測(cè)量,通過(guò)數(shù)碼管顯示出來(lái),并在數(shù)碼管上顯示當(dāng)前的波形代碼。至少產(chǎn)生的波形如下:圖2-1正弦波形 圖2-2三角波形 圖2-3方波波形 圖2-4 特殊波形第三章:系統(tǒng)的設(shè)計(jì)3.1 設(shè)計(jì)思路采用由底向上的設(shè)計(jì)方法,根據(jù)系統(tǒng)對(duì)硬件的要求詳細(xì)編制技術(shù)規(guī)格書,畫出系統(tǒng)控制流程圖,仔細(xì)分析系統(tǒng)要求達(dá)到的各個(gè)功能,將系統(tǒng)的功能進(jìn)行細(xì)化,合理地劃分功能模塊,并畫出系統(tǒng)的功能框圖;進(jìn)行各功能模塊的設(shè)計(jì),運(yùn)用VHDL語(yǔ)言設(shè)計(jì)出各個(gè)功能模塊;在軟件環(huán)境下導(dǎo)出各個(gè)功能框圖,在將各個(gè)模塊按系統(tǒng)要求達(dá)到的功能連接起來(lái),做出系統(tǒng)的原理圖;編譯、調(diào)試完成后,在下載到硬件結(jié)構(gòu)中,進(jìn)行硬件調(diào)試。(1)提出設(shè)計(jì)說(shuō)明書,即用自然語(yǔ)言表達(dá)系統(tǒng)項(xiàng)目的功能特點(diǎn)和技術(shù)參數(shù)等。(2)建立VHDL行為模型,這一步是將設(shè)計(jì)說(shuō)明書轉(zhuǎn)化為VHDL行為模型。(3)VHDL行為仿真。這一階段可以利用VHDL仿真器(如ModelSim)對(duì)頂層系統(tǒng)的行為模型進(jìn)行仿真測(cè)試,檢查模擬結(jié)果,繼而進(jìn)行修改和完善。(4)VHDL-RTL級(jí)建模。如上所述,VHDL只有部分語(yǔ)句集合可用于硬件功能行為的建模,因此在這一階段,必須將VHDL的行為模型表達(dá)為VHDL行為代碼(或稱VHDL-RTL級(jí)模型)。(5)前端功能仿真。(6)邏輯綜合。(7)測(cè)試向量生成。這一階段主要是針對(duì)ASIC設(shè)計(jì)的。FPGA設(shè)計(jì)的時(shí)序測(cè)試文件主要產(chǎn)生于適配器。對(duì)ASIC的測(cè)試向量文件是綜合器結(jié)合含有版圖硬件特性的工藝庫(kù)后產(chǎn)生的,用于對(duì)ASIC的功能測(cè)試。(8)功能仿真。利用獲得的測(cè)試向量對(duì)ASIC的設(shè)計(jì)系統(tǒng)和子系統(tǒng)的功能進(jìn)行仿真。(9)結(jié)構(gòu)綜合。主要將綜合產(chǎn)生的表達(dá)邏輯連接關(guān)系的網(wǎng)表文件,結(jié)合具體的目標(biāo)硬件環(huán)境進(jìn)行標(biāo)準(zhǔn)單元調(diào)用、布局、布線和滿足約束條件的結(jié)構(gòu)優(yōu)化配置,即結(jié)構(gòu)綜合。(10)門級(jí)時(shí)序仿真。在這一級(jí)中將使用門級(jí)仿真器或仍然使用VHDL仿真器(因?yàn)榻Y(jié)構(gòu)綜合后能同步生成VHDL格式的時(shí)序仿真文件)進(jìn)行門級(jí)時(shí)序仿真,在計(jì)算機(jī)上了解更接近硬件目標(biāo)器件工作的功能時(shí)序。(11)硬件測(cè)試。這是對(duì)最后完成的硬件系統(tǒng)(如ASIC或FPGA)進(jìn)行檢查和測(cè)試。3.2 設(shè)計(jì)流程1、系統(tǒng)任務(wù)分析:數(shù)字系統(tǒng)設(shè)計(jì)中的第一步是明確系統(tǒng)的任務(wù)。 2、確定邏輯算法:實(shí)現(xiàn)系統(tǒng)邏輯運(yùn)算的方法稱為邏輯算法,簡(jiǎn)稱算法。數(shù)字系統(tǒng)的算法是邏輯設(shè)計(jì)的基礎(chǔ),算法不同,則系統(tǒng)的結(jié)構(gòu)也不同,算法的合理與否直接影響系統(tǒng)結(jié)構(gòu)的合理性。 3、系統(tǒng)劃分:當(dāng)算法明確后,應(yīng)根據(jù)算法構(gòu)造系統(tǒng)的硬件框架(也稱為系統(tǒng)框圖),將系統(tǒng)劃分為若干個(gè)部分,各部分分別承擔(dān)算法中不同的邏輯操作功能。 4、系統(tǒng)邏輯描述:對(duì)系統(tǒng)的邏輯描述可先采用較粗略的邏輯流程圖,再將邏輯流程圖逐步細(xì)化為詳細(xì)邏輯流程圖,最后將詳細(xì)邏輯流程圖表示成與硬件有對(duì)應(yīng)關(guān)系的形式,為下一步的電路級(jí)設(shè)計(jì)提供依據(jù)。 5、邏輯電路設(shè)計(jì):電路級(jí)設(shè)計(jì)是指選擇合理的器件及連接關(guān)系以實(shí)現(xiàn)系統(tǒng)邏輯要求。電路級(jí)設(shè)計(jì)的結(jié)果通常采用兩種方式來(lái)表達(dá):電路圖方式和硬件描述語(yǔ)言方式。EDA軟件支持這兩種方式的輸入。 6、仿真、驗(yàn)證:當(dāng)電路設(shè)計(jì)完成后必須驗(yàn)證設(shè)計(jì)是否正確。目前,數(shù)字電路設(shè)計(jì)的EDA軟件都有具有驗(yàn)證(也稱為仿真、電路模擬)的功能,先通過(guò)電路驗(yàn)證(仿真),當(dāng)驗(yàn)證結(jié)果正確后再進(jìn)行實(shí)際電路的測(cè)試。3.3 設(shè)計(jì)步驟及程序分頻模塊 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fp ISport(clk:in std_logic; -input 1K Hz k:in std_logic_vector(3 downto 0); clko:buffer std_logic); -out 1 hzend fp;architecture a of fp issignal temp:std_logic_vector(3 downto 0);beginprocess(clk)beginif clk'event and clk='1' thenif temp<k thentemp<=temp+1;elsetemp<="0000"clko<=not clko;end if;end if;end process;end a;正弦函數(shù)模塊 library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity sin isport(clk4:in std_logic; k:in integer range 15 downto 0; dd4:out integer range 255 downto 0);end sin;architecture dacc of sin issignal q: integer range 63 downto 0;beginprocess(clk4)begin if (clk4'event and clk4='1') then q<=q+k; end if; end process;process(q)begin case q iswhen 00=>dd4<=255; when 01=>dd4<=254; when 02=>dd4<=253; when 36=>dd4<=10; when 03=>dd4<=250; when 37=>dd4<=15; when 04=>dd4<=245; when 41=>dd4<=47;when 05=>dd4<=240; when 38=>dd4<=21;when 06=>dd4<=234; when 39=>dd4<=29;when 07=>dd4<=226; when 40=>dd4<=37;when 08=>dd4<=218; when 41=>dd4<=47;when 09=>dd4<=208; when 42=>dd4<=57;when 10=>dd4<=198; when 43=>dd4<=67;when 11=>dd4<=188; when 44=>dd4<=79;when 12=>dd4<=176; when 45=>dd4<=90;when 13=>dd4<=165; when 46=>dd4<=103;when 14=>dd4<=152; when 47=>dd4<=115;when 15=>dd4<=140; when 48=>dd4<=128when 16=>dd4<=128; when 49=>dd4<=140;when 17=>dd4<=115; when 50=>dd4<=165;when 18=>dd4<=103; when 51=>dd4<=176;when 19=>dd4<=90; when 52=>dd4<=188;when 20=>dd4<=79; when 53=>dd4<=198;when 21=>dd4<=67; when 54=>dd4<=208;when 22=>dd4<=57; when 55=>dd4<=218;when 23=>dd4<=47; when 56=>dd4<=226;when 24=>dd4<=37; when 57=>dd4<=234;when 25=>dd4<=29; when 58=>dd4<=240;when 26=>dd4<=21; when 59=>dd4<=245;when 27=>dd4<=15; when 60=>dd4<=250;when 28=>dd4<=10; when 61=>dd4<=253;when 29=>dd4<=5; when 62=>dd4<=254;when 30=>dd4<=2; when 63=>dd4<=255;when 31=>dd4<=1; when 63=>dd4<=255;when 32=>dd4<=0; when others=>null;when 33=>dd4<=1; end case;when 34=>dd4<=2; end process;when 35=>dd4<=5; end dacc; 三角波 library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity tria isport(clk3:in std_logic; k:in integer range 15 downto 0; dd3:out integer range 255 downto 0);end tria;architecture dacc of tria issignal b:std_logic;signal c:integer range 255 downto 0;beginprocess(clk3)beginif (clk3'event and clk3='1') thenif(b='0') thenc<=c+k;if(c>=250) thenb<='1'end if;elsif(b='1') thenc<=c-k;if(c<=1) thenb<='0'end if;end if;dd3<=c;end if;end process;end dacc;方波 library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity square isport(clk1 : in std_logic; k:in integer range 15 downto 0; dd1 : buffer integer range 255 downto 0);end square;architecture dacc of square issignal q: integer range 255 downto 0;beginprocess(clk1)beginif (clk1'event and clk1='1') thenq<=q+k;end if;end process;process(q)begincase q iswhen 0 to 127=>dd1<=255;when 128 to 255=>dd1<=127;when others=>null;end case;end process;end dacc;特殊波形 library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity sintra isport(clk4:in std_logic; k:in integer range 15 downto 0; dd4:out integer range 255 downto 0);end sintra;architecture dacc of sintra issignal q: integer range 63 downto 0;beginprocess(clk4)beginif (clk4'event and clk4='1') thenq<=q+k;end if;end process;process(q)begincase q iswhen 00=>dd4<=255; when 01=>dd4<=254; when 02=>dd4<=253; when 36=>dd4<=10; when 03=>dd4<=250; when 37=>dd4<=15; when 04=>dd4<=245; when 41=>dd4<=47;when 05=>dd4<=240; when 38=>dd4<=21;when 06=>dd4<=234; when 39=>dd4<=29;when 07=>dd4<=226; when 40=>dd4<=37;when 08=>dd4<=218; when 41=>dd4<=47;when 09=>dd4<=208; when 42=>dd4<=57;when 10=>dd4<=198; when 43=>dd4<=67;when 11=>dd4<=188; when 44=>dd4<=79;when 12=>dd4<=176; when 45=>dd4<=90;when 13=>dd4<=165; when 46=>dd4<=103;when 14=>dd4<=152; when 47=>dd4<=115;when 15=>dd4<=140; when 48=>dd4<=128when 16=>dd4<=128; when 49=>dd4<=140;when 17=>dd4<=115; when 50=>dd4<=165;when 18=>dd4<=103; when 51=>dd4<=176;when 19=>dd4<=90; when 52=>dd4<=188;when 20=>dd4<=79; when 53=>dd4<=198;when 21=>dd4<=67; when 54=>dd4<=208;when 22=>dd4<=57; when 55=>dd4<=218;when 23=>dd4<=47; when 56=>dd4<=226;when 24=>dd4<=37; when 57=>dd4<=234;when 25=>dd4<=29; when 58=>dd4<=240;when 26=>dd4<=21; when 59=>dd4<=245;when 27=>dd4<=15; when 60=>dd4<=250;when 28=>dd4<=10; when 61=>dd4<=253;when 29=>dd4<=5; when 62=>dd4<=254;when 30=>dd4<=2; when 63=>dd4<=255;when 31=>dd4<=1; when 63=>dd4<=255;when 32=>dd4<=0; when others=>null;when 33=>dd4<=1; end case;when 34=>dd4<=2; end process;when 35=>dd4<=5; end dacc;分頻1Hz LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fp1HZ ISPORT(clk:in std_logic; -10M clk1Hz: buffer STD_LOGIC);END fp1hz;ARCHITECTURE one OF fp1hz ISSIGNAL test: integer range 0 to 6000000;beginprocess(clk)beginif clk'event and clk='1' thenif test<5000000 thentest<=test+1;elsetest<=0;clk1hz<=not clk1hz;end if;end if;end process;end one;測(cè)頻模塊 LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY freq ISPORT(fsin: in STD_LOGIC; clk: IN STD_LOGIC; dout0,dout1,dout2,dout3: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);END freq;ARCHITECTURE one OF freq ISSIGNAL test_en: STD_LOGIC; SIGNAL clear: STD_LOGIC; SIGNAL data: STD_LOGIC_VECTOR(15 DOWNTO 0); BEGIN PROCESS(clk)BEGIN IF clk'event AND clk='1' THEN test_en<=NOT test_en; END IF; END PROCESS; clear<=NOT clk AND NOT test_en; PROCESS(fsin)BEGIN IF clear='1' THEN data<="0000"ELSIF fsin'event AND fsin='0' THENIF data(15 DOWNtO 0)="1001" THEN data<=data+"0111" elsIF data(11 DOWNtO 0)="" THEN data<=data+"" ELSIF data(7 DOWNTO 0)="10011001" THEN data<=data+"01100111" ELSIF data(3 DOWNTO 0)="1001" THEN data<=data+"0111" ELSE data<=data+1; END IF;END IF;END PROCESS;PROCESS(test_en,data) BEGIN IF test_en'event AND test_en='0' THEN dout0<=data(3 downto 0); dout1<=data(7 downto 4); dout2<=data(11 downto 8); dout3<=data(15 downto 12); END IF; END PROCESS;END one;控制模塊 library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.allentity control isport(sel:in std_logic_vector(1 downto 0);k0,k1,k2,k3:in integer range 255 downto 0;qout:out integer range 255 downto 0);end control;architecture a of control isbegin process(sel,k0,k1,k2,k3) begin if sel=“00” then qout<=k0; elsif sel=“01” then qout<=k1; elsif sel=“10” then qout<=k2; elsif sel=“11” then qout<=k3; end if; end process;end a;3.4 電路模塊組成及引腳設(shè)置3.4.1路模塊組成3.4.2引腳設(shè)置3.5 硬件實(shí)現(xiàn)及調(diào)試結(jié)果 下載編譯成功后,定義芯片管腳,開關(guān)K1、K2、K3控制分頻系數(shù),K14、K15為Sel選擇信號(hào),Sel=00時(shí)為正弦波,Sel=01時(shí)為三角波,Sel=10時(shí)為方波,Sel=11時(shí)為特殊波形。將示波器連接到硬件上,觀察輸出波形。第四章 課程設(shè)計(jì)總結(jié)通過(guò)這次課程設(shè)計(jì),我受益匪淺。我們不僅鞏固了課上學(xué)到的知識(shí),提高了我們實(shí)際動(dòng)手的能力,而且了解到理論聯(lián)系實(shí)際和團(tuán)結(jié)協(xié)作的重要性。同時(shí)我們也意識(shí)到在以后的學(xué)習(xí)和生活中要始終保持一絲不茍的態(tài)度,杜絕馬虎的態(tài)度,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問(wèn)題,可以說(shuō)得是困難重重,這畢竟第一次做的,難免會(huì)遇到過(guò)各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠牢固。通過(guò)本次設(shè)計(jì),增加自己的理論知識(shí),系統(tǒng)的了解了波形發(fā)生器的設(shè)計(jì)流程,尤其是硬、軟件的設(shè)計(jì)方法,掌握了波形發(fā)生器的基本功能及編程方法,掌握了它的一般原理,也進(jìn)一步掌握了Quartus的使用。而且也開拓了思路,鍛煉了實(shí)踐動(dòng)手能力,提高了分工協(xié)作能力和分析問(wèn)題,解決問(wèn)題的能力,達(dá)到了本次課程設(shè)計(jì)的目的。此次任意波形發(fā)生器的設(shè)計(jì),給我留下深刻的印象。我會(huì)在以后的學(xué)習(xí)、生活中磨練自己,使自己能夠滿足社會(huì)的需求。同時(shí),我非常感謝張老師的指導(dǎo),在她的細(xì)心講解下,我順利的完成的此次任意波形發(fā)生器的課程設(shè)計(jì)。參考文獻(xiàn)1 江國(guó)強(qiáng) EDA技術(shù)與應(yīng)用 北京:電子工業(yè)出版社,20052孫加存 電子設(shè)計(jì)自動(dòng)化 西安:西安電子科技大學(xué)出版社 20083 林明權(quán),等 VHDL數(shù)字控制系統(tǒng)設(shè)計(jì)范例 北京:電子工業(yè)出版社,20054 焦素敏 EDA應(yīng)用技術(shù) 北京:清華大學(xué)出版社,20055 王振紅 VHDL數(shù)字電路設(shè)計(jì)與應(yīng)用實(shí)踐教程 北京:機(jī)械工業(yè)出版社,2003

注意事項(xiàng)

本文(EDA課程設(shè)計(jì)副本)為本站會(huì)員(細(xì)水****9)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!