下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第五章第一個(gè)完整的工程實(shí)踐案例第二章介紹了實(shí)驗(yàn)平臺,了解了一塊基于Altera公司的CPLD器件并擴(kuò)展了豐富外設(shè)的HDL語言打下了堅(jiān)實(shí)的基礎(chǔ);而第四章雖是般快速瀏覽了HDL語法,但也花了些篇幅在語代碼風(fēng)格上。有了電路板,明白了HDL語法和設(shè)計(jì)的一些技巧,接下來我們就要用第一章提到的EDA工具做些實(shí)戰(zhàn)的練習(xí)。話說“工欲善其事,并先利其器”,F(xiàn)PGA/CPLD開發(fā)所涉及的EDA工具的安裝和使用比一般的軟硬件開發(fā)要復(fù)雜和麻煩得多,為了幫助廣大初因?yàn)槭褂玫氖茿ltera公司的器件,所以我們別無選擇的鎖定了QuartusII這款A(yù)ltera面設(shè)計(jì)前期進(jìn)行驗(yàn)證的最有效。在早期的QuartusII上還能看到集成的仿真功能,可以用力不從心了。因此,現(xiàn)在的QuartusII上已經(jīng)讓這個(gè)“雞肋”功能徹底了,取而代之的是與更專業(yè)的MentorGraphics公司合作推出了-Altera版本的仿真工具。其實(shí)我們推薦大家使用QuartusII+ -Altera或QuartusII+ SE的搭配就可軟件和license申Altera公司的官網(wǎng)也有直接的工具支持,大家可以直接他們的軟件支持網(wǎng) index.html頁中,我們可以點(diǎn)擊相關(guān)的進(jìn)入頁面,如前文提到會使用的QuartusII和 .c/lieatuemana/quartus_install.pdf網(wǎng)絡(luò)版本無須license,只是部分高級功能受限。如QuartusIIWebEdition申請次數(shù)限制,只要每隔60天向他們提交一次申請即可。稍有差異。Fixedlicense是用戶根據(jù)固定的電腦申請的,只能由于申請的本地PC。floating這個(gè)floatinglicense,只不過同時(shí)數(shù)受到license數(shù)量的限制。我們的學(xué)習(xí)將使用QuartusIIWebEdition和-AlteraStarterEdition。首先要到官方這兩個(gè)軟件。打開QuartusIIWebEdition網(wǎng)頁后,如圖5.2所示,直接點(diǎn)擊12.0sp1quartusfreewindows.exe(默認(rèn)大家都使用windows系統(tǒng))進(jìn)行。 圖5.2QuartusIIWebEdition頁如果大家是第一次Altera的軟件,那么也會彈出如圖5.3所示的工具DownloadManager安裝提示。建議點(diǎn)擊“安裝”選項(xiàng),隨后再點(diǎn)擊“ClicktoDownloadYourFileNow圖5.3選擇頁 圖5.4保存路徑設(shè)同樣的方式,打開-AlteraStarterEdition的頁面,如圖5.6所示,需要分別選擇并12.0__ae_windows.exe和12.0sp1__ae_windows.exe。 接下來我們找到前面軟件工具的保存路徑,首先安裝QuartusIIWebEdition。雙擊Destinationfolder,只要你確保該路徑所在盤符有足夠的硬盤空間即可(通常應(yīng)該是要有3-5G的空間。點(diǎn)擊“Install”開始解壓。5.8Next下去。當(dāng)然了,期間有5.8QuartusIIWebEdition安裝頁面如圖5.9所示,QuartusIIWebEdition正在安裝中。打開最終安裝好的QuartusIIWebEdition5.10常編譯使用的情況,筆者也曾遇到過。這里提醒大家注意,如果PC機(jī)上安裝過其他版本的QuartusIIQuartusIIWebEditionLicenseSetuplicenseTools→LicenseSetup,5.11Licensefile后面是空白的(license,如果設(shè)置了某個(gè)license路徑反而讓軟件無法使用UseLM_LICENSE_FILEvariable。5.11LicenseSetup接下來我們要分別安裝已經(jīng)好的可執(zhí)行文件12.0_178_Edition安裝過程。圖5.13開始菜單打 圖 FPGA/CPLD5.15所示。這個(gè)流程圖是一個(gè)相對比較高等級的FPGA/CPLD器件開發(fā)流程,從項(xiàng)目的提上議程開始,設(shè)計(jì)者需要進(jìn)行FPGA/CPLD器件功能的需求分析,然后進(jìn)行模塊的劃分,比較復(fù)雜各種設(shè)計(jì)的約束輸入以及也穿插其間。最終在EDA工具上驗(yàn)證無誤,則可以生產(chǎn) 過沒有關(guān)系,我們會簡化這個(gè)過程,從實(shí)際操作角度,以比較級的方式來描繪整個(gè)設(shè)計(jì)的過程。如圖5.16所示,這里簡單的根據(jù)先后順序?qū)㈤_發(fā)步驟分為工程管理、設(shè)計(jì)輸入、QuartusII的新建工程向?qū)瓿晒こ痰慕?,源代碼文件則可以是Verilog的.vVHDL的.vhd文件。設(shè)計(jì)輸入階段,完成代碼的編寫和基本語法的檢查。實(shí)現(xiàn)與驗(yàn)證階段,則先對RTL級仿真,確認(rèn)代碼實(shí)現(xiàn)基本功能后,則進(jìn)行器件管腳的分配,接最后則是進(jìn)行板級調(diào)試,首先需要通過EDA工具生成前面設(shè)計(jì)的配置文件,接著完成3當(dāng)中,用到開發(fā)板上的兩個(gè)按鍵和一個(gè)LED指示燈。如圖5.17所示,兩個(gè)按鍵在所有可能的四種組合狀態(tài)下,其控制的LED指示燈狀態(tài)如下:5.17把這個(gè)實(shí)例的兩個(gè)按鍵作為輸入,LED5.1所示的真值LEDIO1時(shí),LED0時(shí),LEDLED110011101000LED=QuartusII12.0sp1WebEdition(32-Bit)圖標(biāo),或者單擊開始→→Altera12.0sp1Build232→QuartusII12.0SP1WebEdition→QuartusII12.0sp1WebEdition,打的QuartusII工程,這個(gè)工程的路徑名應(yīng)該只有字母、數(shù)字和下劃線,不要包含中文和Next進(jìn)入Directory,Name,Top-LevelEntity頁面,如圖5.19所示。在該頁面中,需要選擇一個(gè)文件夾用于后續(xù)工程生成的所有相關(guān)文件,如這里將本實(shí)例的工程在了D盤的nameofthetop-leveldesignentityforthisproject?”下輸入工程頂層設(shè)計(jì)文件的名字。通常我們建議工程名和工程頂層文件保持一致,如這里統(tǒng)一命名ex0。接著點(diǎn)擊Next,AddFiles通常需要選擇添加設(shè)計(jì)文件(VerilogVHDL文件)到工程中NextFamily&DeviceSetting5.20所示。該頁面主要是選擇元器件,我們在5.20Family&DeviceSetting5.21EDAToolSetting頁面中,可以設(shè)置工程各個(gè)開發(fā)環(huán)節(jié)中需要用到的第(Altera公司以外)EDA工具,我們只需要設(shè)置Simulation工具為-Altera,F(xiàn)ormatVerilogHDL即可,其他工具不涉及,因此都默認(rèn)為<None>。Next繼續(xù)進(jìn)入下一頁面查看并核對前面設(shè)置的結(jié)果,也可以直接點(diǎn)擊Finish完成工程創(chuàng)建。5.22新工程的Project擊OK完成文件創(chuàng)建。5.23實(shí)驗(yàn)功能的一段Verilog代碼(VHDLVHDL代碼5.24所★代碼講解L8:LED指示燈輸出信號。如果使用VHDL輸入,則對應(yīng)的VHDL代碼如圖5.25所示。后則會彈出一個(gè)框提示輸入文件名和保存路徑,默認(rèn)文件名會和我們所命名的moduleFlowCompilation下的ysis&Elaboration5.26所不得不關(guān)注的,因?yàn)镋rror意味著我們的代碼有語法錯(cuò)誤,后續(xù)的編譯將無法繼續(xù);而warning則不一定是致命的,但很多時(shí)候warning中暗藏,很多潛在的問題都可以從這果設(shè)計(jì)者確認(rèn)這些warning符合我們的設(shè)計(jì)要求,那么可以忽略它。最后, FPGA》10的相關(guān)內(nèi)容。為了讓大家更好的理解什么是仿真、為什么要做仿真以及如何做testbench,即測試平臺,詳細(xì)的說就是給待驗(yàn)證的設(shè)計(jì)添加激勵(lì),同時(shí)觀察它的5.27所示,測試平臺就是要模擬一個(gè)和待驗(yàn)證設(shè)計(jì)接口應(yīng)應(yīng)勵(lì)觀比5.27FPGAFPGA設(shè)計(jì)中,如果邏輯規(guī)模形產(chǎn)生激勵(lì)是不現(xiàn)實(shí)的,觀察波形的工作量也是可想而知的。例如,對于一個(gè)16位的如圖5.28所示,設(shè)計(jì)的判斷不僅可以通過觀察對比波形,而且可以靈活的使動比較輸出結(jié)果??傊?,testbench的設(shè)計(jì)是多種多樣的,它的語法也是很隨意的,不像為它不需要實(shí)現(xiàn)到硬件中,它是運(yùn)行在PC機(jī)上的一段,所以相對RTL級可以做得更容在終端打5.28更高級一些,它們無需實(shí)現(xiàn)到最終的硬件中,而是在PC上運(yùn)行編譯來實(shí)現(xiàn)相關(guān)功能。而testbench設(shè)計(jì)上了。不過對于一般的設(shè)計(jì),我們也不用過分追求更高級的語法,行為級的Verilog足夠應(yīng)付大多數(shù)的設(shè)計(jì)驗(yàn)證。把工作所需的各種接口以及相關(guān)文件的關(guān)系梳理清楚。具為-Altera,但是我們還需要做更詳細(xì)的配置。首先我們可以點(diǎn)擊菜單欄的Processing→Start→StartTestBenchTemplateWriter,隨后彈出提示“TestBenchTemplate如圖5.29,我們打開工程路徑下的 圖5.29測試文圖5.30測試代★代碼講解后面的1ps則仿真進(jìn)度。應(yīng)用示例見L46的講解。999.999ns,精確到ps,即此處的小數(shù)點(diǎn)后3位。因此是reg型。測試中可以對其進(jìn)行賦值。因此是wire型。測試中無法對其進(jìn)行賦值。L43-571000ns分別給兩個(gè)按鍵信號完成測試編寫,我們接著需要打開菜單欄的Assigement→Settings選項(xiàng),選擇著便彈出下面的窗口。在此窗口中,我們根據(jù)實(shí)際情況輸入TestbenchnameToplevelmoduleintestbenchTestbenchandsimulationfiles下面選擇測試窗口的列表中出現(xiàn)了剛才添加的測試相關(guān)信息,接著點(diǎn)擊OK完成設(shè)置。圖5.32測試設(shè)圖5.33完成新測試添5.34CategoryGeneral→EDAToolOptions-Altera軟件安裝路徑(請根據(jù)實(shí)際安裝時(shí)的路徑進(jìn)行設(shè)置。當(dāng)QuartusII Tools→RunSimulationTool→RTLSimulation。隨后 這是 -Altera軟件的工作界面。關(guān)于 -Altera軟件的基本使用建議大家參考該軟件菜單欄Help下自帶的一些文檔,尤其是 ation里的幾個(gè)文檔-Altera的功能也非常強(qiáng)大實(shí)用,如果要詳細(xì)展開來探討,恐怕也要專門寫本書才可以。限于篇幅,本書也只能是簡單的在工程需要時(shí)附帶的和大家介紹-Altera的因?yàn)樵赒uartusII里,我們做了大量的工作,包括-Altera仿真運(yùn)行所需的各類文件,主要是被測試代碼和測試,那么當(dāng)我們調(diào)用-Altera軟件時(shí),它一方面(*.vtkey_left、key_rightled_lightWave窗口5.373個(gè)頂層信號key_left、left_rightled_light都在仿真波形中顯1000-2000ns時(shí),key_left1和key_right02000-3000ns時(shí),key_left0和key_right系:LED指示燈狀態(tài)=按鍵左的鍵值異或按鍵右的鍵值。Assignments→PinplannerI/O管腳進(jìn)行分配,PinPlanner5.37NodeName列里沒有出現(xiàn)頂層文件的5.37PinPlanner5.38接著我們回到QuartusII繼續(xù)下面的流程。我們可以先對整個(gè)工程進(jìn)行一次全編譯,如圖5.39所示,既可以點(diǎn)擊的“StartCompilation”按鈕,也可以在Task→Compilation中點(diǎn)擊CompileDesign。5.39編譯完成后會在主界面出如圖5.40所示的編譯報(bào)告,左側(cè)羅列了各個(gè)階段的各種設(shè)計(jì)相關(guān)報(bào)告,右側(cè)則顯示具體內(nèi)容,默認(rèn)的FlowSummary報(bào)告中則給出了該設(shè)計(jì)的最主5.405.41所示,在該實(shí)例工程中,邏輯資源的使用情況為:1個(gè)邏輯單元(Totallogicelements)3I/O管腳(Totalpins。QuartusII中,也提供了門級仿真的一鍵調(diào)用的便利。只要點(diǎn)擊菜單欄Tools→Run真時(shí)使用的RTLSimulation下面一個(gè)選項(xiàng)。5.425.43key_leftkey_right則由高電平變?yōu)榈碗娖?。理論上,key_left為高,key_right為低時(shí),led_light應(yīng)該為高電平,而波形的實(shí)際狀況卻是key_right拉低大約9.5ns后led_light才由低電平上升到高電平。這就是真實(shí)的狀況,在key_leftkey_right同時(shí)發(fā)生翻轉(zhuǎn),key_left是從高電平降到低電平,持高電平狀態(tài)不變。但從波形中,我們卻發(fā)現(xiàn)并非如此,led_light在key_left和key_right發(fā)毛刺產(chǎn)生的根本原因,其實(shí)也很簡單,key_left和key_right這兩個(gè)輸入信號到達(dá)led_light的輸入便是低電平,那么這就導(dǎo)致了毛刺信號的產(chǎn)生。clk,在每個(gè)時(shí)鐘周期的上升沿對輸入輸出moduleinputclk;inputkey_left;outputregalways@(posedgeclk)beginled_light=key_left^key_right;libraryuseIEEE.std_logic_1164.all;useIE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 領(lǐng)導(dǎo)力與商務(wù)禮儀培訓(xùn)
- 《跨接導(dǎo)壓技術(shù)創(chuàng)新》課件
- 提升營收的多元化策略計(jì)劃
- 地質(zhì)勘查技術(shù)服務(wù)行業(yè)相關(guān)投資計(jì)劃提議
- 財(cái)務(wù)科預(yù)算與成本控制計(jì)劃
- 丙型肝炎抗體檢測試劑盒相關(guān)行業(yè)投資規(guī)劃報(bào)告范本
- 寶石、玉石礦相關(guān)行業(yè)投資方案范本
- 《液壓與氣動》課件 2過濾器
- 日用織物制品相關(guān)行業(yè)投資方案
- 《信客公開》課件
- 國開2023春《學(xué)前兒童語言教育》活動指導(dǎo)形成性考核一二三四參考答案
- 中耳解剖、生理與疾病 助聽器驗(yàn)配課件
- 任務(wù)2材料費(fèi)用的歸集與分配
- 統(tǒng)計(jì)學(xué)-學(xué)習(xí)筆記
- 神經(jīng)病學(xué)期末考試題
- 低代碼開發(fā)智慧樹知到答案章節(jié)測試2023年南華大學(xué)
- 教學(xué)設(shè)計(jì) 三位數(shù)乘兩位數(shù)筆算乘法 優(yōu)質(zhì)課比賽一等獎(jiǎng)
- 《投入產(chǎn)出分析》實(shí)驗(yàn)指導(dǎo)書
- GB/T 14124-1993機(jī)械振動與沖擊對建筑物振動影響的測量和評價(jià)基本方法及使用導(dǎo)則
- GB/T 10325-2001定形耐火制品抽樣驗(yàn)收規(guī)則
- GB/T 10069.3-2008旋轉(zhuǎn)電機(jī)噪聲測定方法及限值第3部分:噪聲限值
評論
0/150
提交評論