資源描述:
《eda課程設(shè)計--eda課程設(shè)計實驗報告》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、EDA課程設(shè)計實驗報告裝訂線EDA課程設(shè)計實驗報告學院信息工程學院專業(yè)通信工程學號姓名任課教師2013年10月30日16EDA課程設(shè)計實驗報告一、FPGA簡介隨著基于FPGA的EDA技術(shù)的發(fā)展和應(yīng)用領(lǐng)域的擴大與深入,EDA技術(shù)在電子信息、通信、自動控制及計算機等領(lǐng)域的重要性日益突出。作為一個學通信工程專業(yè)的學生,我們必須不斷地去了解更多的新產(chǎn)品信息,這就更加要求我們對EDA有個全面的認識。信號發(fā)生器在我們的日常中有很重要的應(yīng)用,用VHDL語言去實現(xiàn)設(shè)計將會使我們對本學科知識可以更好地掌握。本設(shè)計是一個基于VHDL的采用自頂向下設(shè)計方法實現(xiàn)的信號發(fā)生
2、器,該設(shè)計方法具有外圍電路簡單,程序修改靈活和調(diào)試容易等特點,并通過計算機仿真證明了設(shè)計的正確性。二、題目分析要求設(shè)計一個函數(shù)發(fā)生器,該函數(shù)發(fā)生器能夠產(chǎn)生遞增斜波、遞減斜波、方波、三角波、正弦波、及階梯波,并且可以通過選擇開關(guān)選擇相應(yīng)的波形輸出;系統(tǒng)具有復位的功能;通過按鍵確定輸出的波形及確定是否輸出波形。FPGA是整個系統(tǒng)的核心,構(gòu)成系統(tǒng)控制器,波形數(shù)據(jù)生成器,加法器,運算/譯碼等功能。通過以上分析設(shè)計要求完成的功能,確定函數(shù)發(fā)生器可由遞增斜波產(chǎn)生模塊、遞減斜波產(chǎn)生模塊、三角波產(chǎn)生模塊、階梯波產(chǎn)生模塊、正弦波產(chǎn)生模塊、方波產(chǎn)生模塊和輸出波形選擇模
3、塊組成,以及按鍵復位控制和時鐘輸入。由此可確定系統(tǒng)的總體原理框圖為:波形發(fā)生模塊時鐘clk復位reset波形輸出選擇模塊三、方案選擇1、波形函數(shù)發(fā)生方案對比選擇波形函數(shù)發(fā)生是本設(shè)計的最重要的部分,實現(xiàn)函數(shù)發(fā)生的途徑也有很多,因此必須選擇一種易于實現(xiàn)且精度高的方案,以此來提高本設(shè)計的實用性。本信號發(fā)生器利用在系統(tǒng)編程技術(shù)和FPGA芯片產(chǎn)生。16EDA課程設(shè)計實驗報告用VHDL語言編寫程序,調(diào)試成功后下載至實驗裝置的芯片上,再利用外接D/A轉(zhuǎn)換電路實現(xiàn)以上設(shè)計功能。此種方案完全可以生成設(shè)計要求的6種波形,而且通過軟件仿真可以直觀的觀測的輸出的波形參數(shù),
4、方便調(diào)試和更改波形參數(shù),外圍電路簡單,減少器件損耗,精度高。2、波形函數(shù)輸出控制方式選擇利用VHDL語言寫出數(shù)據(jù)選擇器,然后每種函數(shù)發(fā)生器的輸出和數(shù)據(jù)選擇器輸入相連接,通過控制開關(guān)選擇對應(yīng)的波形輸出。方案二完全可以得到方案一的設(shè)計要求,而且只需一個D/A轉(zhuǎn)換器就可以。電路不需要外部搭建,節(jié)約成本且控制簡單方便。在實驗課時候已經(jīng)完成8選1數(shù)據(jù)選擇器的設(shè)計制作,因此本次設(shè)計可以直接調(diào)用。此方案設(shè)計簡便、節(jié)約制作元件和成本、控制簡便等優(yōu)點,因此作為波形函數(shù)輸出控制方式。四、系統(tǒng)細化框圖通過以上各個模塊的分析最終確定函數(shù)信號發(fā)生器系統(tǒng)的最終整體的原理框圖為
5、:波形選擇模塊遞增斜波模塊遞減斜波模塊三角波模塊階梯波模塊正弦波模塊方波模塊時鐘clk復位reset波形選擇開關(guān)D/A轉(zhuǎn)換器系統(tǒng)時鐘輸入后,通過復位開關(guān)選擇是否產(chǎn)生波形,當各個模塊產(chǎn)生相應(yīng)的信號波形后,通過波形選擇模塊波形選擇開關(guān)選澤輸出不同的波形,再通過D/A轉(zhuǎn)換器轉(zhuǎn)換,就可以把數(shù)字信號(由FPGA輸出)變成了相應(yīng)模擬的信號波形。整個系統(tǒng)設(shè)計的核心就是FPGA部分。五、各模塊程序設(shè)計及仿真根據(jù)自上而下的思路進行項目設(shè)計。明確每個模塊的功能以后,開始編寫各個模塊的程序。1、遞增斜波模塊16EDA課程設(shè)計實驗報告遞增斜波icrs的VHDL程序如附錄所
6、示,其中clk是輸入時鐘端口,reset為輸入復位端口,q為八位二進制輸出端口。圖1遞增斜波模塊仿真圖程序設(shè)計的當復位信號為0時,輸出為0,無對應(yīng)的波形產(chǎn)生。當復位信號為1時,每當檢測到時鐘上升沿時,計數(shù)器值加1,當增加到最大后清零。計數(shù)值增加呈現(xiàn)線性關(guān)系,因此輸出的波形是遞增的斜波。從仿真波形圖也能看出這種變化規(guī)律。模塊程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYicrsISPORT(clk,reset:INSTD_LOGIC;q
7、:OUTSTD_LOGIC_VECTOR(7DOWNTO0));ENDicrs;ARCHITECTUREbehaveOFicrsISBEGINPROCESS(clk,reset)VARIABLEtmp:STD_LOGIC_VECTOR(7DOWNTO0);BEGINIFreset='0'THENtmp:="00000000";--復位信號清零ELSIFclk'EVENTANDclk='1'THENIFtmp="11111111"THENtmp:="00000000";--遞增到最大值清零ELSE16EDA課程設(shè)計實驗報告tmp:=tmp+1;--遞
8、增運算ENDIF;ENDIF;q<=tmp;ENDPROCESS;ENDbehave;2、遞減斜波模塊遞減斜波dcrs的V