




下載本文檔
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第五章第一個完整的工程實踐案例第二章介紹了實驗平臺,了解了一塊基于Altera公司的CPLD器件并擴展了豐富外設的HDL語言打下了堅實的基礎;而第四章雖是般快速瀏覽了HDL語法,但也花了些篇幅在語代碼風格上。有了電路板,明白了HDL語法和設計的一些技巧,接下來我們就要用第一章提到的EDA工具做些實戰(zhàn)的練習。話說“工欲善其事,并先利其器”,FPGA/CPLD開發(fā)所涉及的EDA工具的安裝和使用比一般的軟硬件開發(fā)要復雜和麻煩得多,為了幫助廣大初因為使用的是Altera公司的器件,所以我們別無選擇的鎖定了QuartusII這款Altera面設計前期進行驗證的最有效。在早期的QuartusII上還能看到集成的仿真功能,可以用力不從心了。因此,現在的QuartusII上已經讓這個“雞肋”功能徹底了,取而代之的是與更專業(yè)的MentorGraphics公司合作推出了-Altera版本的仿真工具。其實我們推薦大家使用QuartusII+ -Altera或QuartusII+ SE的搭配就可軟件和license申Altera公司的官網也有直接的工具支持,大家可以直接他們的軟件支持網 index.html頁中,我們可以點擊相關的進入頁面,如前文提到會使用的QuartusII和 .c/lieatuemana/quartus_install.pdf網絡版本無須license,只是部分高級功能受限。如QuartusIIWebEdition申請次數限制,只要每隔60天向他們提交一次申請即可。稍有差異。Fixedlicense是用戶根據固定的電腦申請的,只能由于申請的本地PC。floating這個floatinglicense,只不過同時數受到license數量的限制。我們的學習將使用QuartusIIWebEdition和-AlteraStarterEdition。首先要到官方這兩個軟件。打開QuartusIIWebEdition網頁后,如圖5.2所示,直接點擊12.0sp1quartusfreewindows.exe(默認大家都使用windows系統(tǒng))進行。 圖5.2QuartusIIWebEdition頁如果大家是第一次Altera的軟件,那么也會彈出如圖5.3所示的工具DownloadManager安裝提示。建議點擊“安裝”選項,隨后再點擊“ClicktoDownloadYourFileNow圖5.3選擇頁 圖5.4保存路徑設同樣的方式,打開-AlteraStarterEdition的頁面,如圖5.6所示,需要分別選擇并12.0__ae_windows.exe和12.0sp1__ae_windows.exe。 接下來我們找到前面軟件工具的保存路徑,首先安裝QuartusIIWebEdition。雙擊Destinationfolder,只要你確保該路徑所在盤符有足夠的硬盤空間即可(通常應該是要有3-5G的空間。點擊“Install”開始解壓。5.8Next下去。當然了,期間有5.8QuartusIIWebEdition安裝頁面如圖5.9所示,QuartusIIWebEdition正在安裝中。打開最終安裝好的QuartusIIWebEdition5.10常編譯使用的情況,筆者也曾遇到過。這里提醒大家注意,如果PC機上安裝過其他版本的QuartusIIQuartusIIWebEditionLicenseSetuplicenseTools→LicenseSetup,5.11Licensefile后面是空白的(license,如果設置了某個license路徑反而讓軟件無法使用UseLM_LICENSE_FILEvariable。5.11LicenseSetup接下來我們要分別安裝已經好的可執(zhí)行文件12.0_178_Edition安裝過程。圖5.13開始菜單打 圖 FPGA/CPLD5.15所示。這個流程圖是一個相對比較高等級的FPGA/CPLD器件開發(fā)流程,從項目的提上議程開始,設計者需要進行FPGA/CPLD器件功能的需求分析,然后進行模塊的劃分,比較復雜各種設計的約束輸入以及也穿插其間。最終在EDA工具上驗證無誤,則可以生產 過沒有關系,我們會簡化這個過程,從實際操作角度,以比較級的方式來描繪整個設計的過程。如圖5.16所示,這里簡單的根據先后順序將開發(fā)步驟分為工程管理、設計輸入、QuartusII的新建工程向導完成工程的建立,源代碼文件則可以是Verilog的.vVHDL的.vhd文件。設計輸入階段,完成代碼的編寫和基本語法的檢查。實現與驗證階段,則先對RTL級仿真,確認代碼實現基本功能后,則進行器件管腳的分配,接最后則是進行板級調試,首先需要通過EDA工具生成前面設計的配置文件,接著完成3當中,用到開發(fā)板上的兩個按鍵和一個LED指示燈。如圖5.17所示,兩個按鍵在所有可能的四種組合狀態(tài)下,其控制的LED指示燈狀態(tài)如下:5.17把這個實例的兩個按鍵作為輸入,LED5.1所示的真值LEDIO1時,LED0時,LEDLED110011101000LED=QuartusII12.0sp1WebEdition(32-Bit)圖標,或者單擊開始→→Altera12.0sp1Build232→QuartusII12.0SP1WebEdition→QuartusII12.0sp1WebEdition,打的QuartusII工程,這個工程的路徑名應該只有字母、數字和下劃線,不要包含中文和Next進入Directory,Name,Top-LevelEntity頁面,如圖5.19所示。在該頁面中,需要選擇一個文件夾用于后續(xù)工程生成的所有相關文件,如這里將本實例的工程在了D盤的nameofthetop-leveldesignentityforthisproject?”下輸入工程頂層設計文件的名字。通常我們建議工程名和工程頂層文件保持一致,如這里統(tǒng)一命名ex0。接著點擊Next,AddFiles通常需要選擇添加設計文件(VerilogVHDL文件)到工程中NextFamily&DeviceSetting5.20所示。該頁面主要是選擇元器件,我們在5.20Family&DeviceSetting5.21EDAToolSetting頁面中,可以設置工程各個開發(fā)環(huán)節(jié)中需要用到的第(Altera公司以外)EDA工具,我們只需要設置Simulation工具為-Altera,FormatVerilogHDL即可,其他工具不涉及,因此都默認為<None>。Next繼續(xù)進入下一頁面查看并核對前面設置的結果,也可以直接點擊Finish完成工程創(chuàng)建。5.22新工程的Project擊OK完成文件創(chuàng)建。5.23實驗功能的一段Verilog代碼(VHDLVHDL代碼5.24所★代碼講解L8:LED指示燈輸出信號。如果使用VHDL輸入,則對應的VHDL代碼如圖5.25所示。后則會彈出一個框提示輸入文件名和保存路徑,默認文件名會和我們所命名的moduleFlowCompilation下的ysis&Elaboration5.26所不得不關注的,因為Error意味著我們的代碼有語法錯誤,后續(xù)的編譯將無法繼續(xù);而warning則不一定是致命的,但很多時候warning中暗藏,很多潛在的問題都可以從這果設計者確認這些warning符合我們的設計要求,那么可以忽略它。最后, FPGA》10的相關內容。為了讓大家更好的理解什么是仿真、為什么要做仿真以及如何做testbench,即測試平臺,詳細的說就是給待驗證的設計添加激勵,同時觀察它的5.27所示,測試平臺就是要模擬一個和待驗證設計接口應應勵觀比5.27FPGAFPGA設計中,如果邏輯規(guī)模形產生激勵是不現實的,觀察波形的工作量也是可想而知的。例如,對于一個16位的如圖5.28所示,設計的判斷不僅可以通過觀察對比波形,而且可以靈活的使動比較輸出結果。總之,testbench的設計是多種多樣的,它的語法也是很隨意的,不像為它不需要實現到硬件中,它是運行在PC機上的一段,所以相對RTL級可以做得更容在終端打5.28更高級一些,它們無需實現到最終的硬件中,而是在PC上運行編譯來實現相關功能。而testbench設計上了。不過對于一般的設計,我們也不用過分追求更高級的語法,行為級的Verilog足夠應付大多數的設計驗證。把工作所需的各種接口以及相關文件的關系梳理清楚。具為-Altera,但是我們還需要做更詳細的配置。首先我們可以點擊菜單欄的Processing→Start→StartTestBenchTemplateWriter,隨后彈出提示“TestBenchTemplate如圖5.29,我們打開工程路徑下的 圖5.29測試文圖5.30測試代★代碼講解后面的1ps則仿真進度。應用示例見L46的講解。999.999ns,精確到ps,即此處的小數點后3位。因此是reg型。測試中可以對其進行賦值。因此是wire型。測試中無法對其進行賦值。L43-571000ns分別給兩個按鍵信號完成測試編寫,我們接著需要打開菜單欄的Assigement→Settings選項,選擇著便彈出下面的窗口。在此窗口中,我們根據實際情況輸入TestbenchnameToplevelmoduleintestbenchTestbenchandsimulationfiles下面選擇測試窗口的列表中出現了剛才添加的測試相關信息,接著點擊OK完成設置。圖5.32測試設圖5.33完成新測試添5.34CategoryGeneral→EDAToolOptions-Altera軟件安裝路徑(請根據實際安裝時的路徑進行設置。當QuartusII Tools→RunSimulationTool→RTLSimulation。隨后 這是 -Altera軟件的工作界面。關于 -Altera軟件的基本使用建議大家參考該軟件菜單欄Help下自帶的一些文檔,尤其是 ation里的幾個文檔-Altera的功能也非常強大實用,如果要詳細展開來探討,恐怕也要專門寫本書才可以。限于篇幅,本書也只能是簡單的在工程需要時附帶的和大家介紹-Altera的因為在QuartusII里,我們做了大量的工作,包括-Altera仿真運行所需的各類文件,主要是被測試代碼和測試,那么當我們調用-Altera軟件時,它一方面(*.vtkey_left、key_rightled_lightWave窗口5.373個頂層信號key_left、left_rightled_light都在仿真波形中顯1000-2000ns時,key_left1和key_right02000-3000ns時,key_left0和key_right系:LED指示燈狀態(tài)=按鍵左的鍵值異或按鍵右的鍵值。Assignments→PinplannerI/O管腳進行分配,PinPlanner5.37NodeName列里沒有出現頂層文件的5.37PinPlanner5.38接著我們回到QuartusII繼續(xù)下面的流程。我們可以先對整個工程進行一次全編譯,如圖5.39所示,既可以點擊的“StartCompilation”按鈕,也可以在Task→Compilation中點擊CompileDesign。5.39編譯完成后會在主界面出如圖5.40所示的編譯報告,左側羅列了各個階段的各種設計相關報告,右側則顯示具體內容,默認的FlowSummary報告中則給出了該設計的最主5.405.41所示,在該實例工程中,邏輯資源的使用情況為:1個邏輯單元(Totallogicelements)3I/O管腳(Totalpins。QuartusII中,也提供了門級仿真的一鍵調用的便利。只要點擊菜單欄Tools→Run真時使用的RTLSimulation下面一個選項。5.425.43key_leftkey_right則由高電平變?yōu)榈碗娖健@碚撋希琸ey_left為高,key_right為低時,led_light應該為高電平,而波形的實際狀況卻是key_right拉低大約9.5ns后led_light才由低電平上升到高電平。這就是真實的狀況,在key_leftkey_right同時發(fā)生翻轉,key_left是從高電平降到低電平,持高電平狀態(tài)不變。但從波形中,我們卻發(fā)現并非如此,led_light在key_left和key_right發(fā)毛刺產生的根本原因,其實也很簡單,key_left和key_right這兩個輸入信號到達led_light的輸入便是低電平,那么這就導致了毛刺信號的產生。clk,在每個時鐘周期的上升沿對輸入輸出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)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- DB31/T 1174-2019城市軌道交通列車運行圖編制規(guī)范
- DB31/T 1141-2019工業(yè)園區(qū)能耗在線監(jiān)測系統(tǒng)技術要求
- DB31/ 737-2020預應力混凝土管樁單位產品能源消耗限額
- DB31/ 540.1-2011重點單位消防安全管理要求第1部分:總則
- 羽絨制品企業(yè)產品創(chuàng)新與研發(fā)管理考核試卷
- 能源工程與環(huán)境保護翻譯考核試卷
- 農產品加工與農業(yè)可持續(xù)發(fā)展考核試卷
- 2024年無人駕駛汽車項目資金需求報告代可行性研究報告
- 高中三年學習規(guī)劃這樣做不愁考不上好大學
- 2024年彈性磨塊項目投資申請報告代可行性研究報告
- 第7章 顯微鏡下常見礦物特征
- 尿毒癥心衰的護理查房課件
- 人工智能在醫(yī)療領域的應用
- 煙氣余熱回收工程施工組織設計
- 三次元MSA測量系統(tǒng)分析報告72121312
- 2023國家開放大學《經濟學基礎》形考任務1-4參考答案
- 2021年中醫(yī)助理醫(yī)師考試實踐技能第一站:病例分析
- 專業(yè)合作社注銷清算報告范本
- 李勝利-胎兒心臟掃查方法65張課件
- DT帶式輸送機使用說明書
- 如何運用ABC法則(銷售溝通)課件
評論
0/150
提交評論