第3章 Altera可編程邏輯器件開發(fā)軟件_第1頁
第3章 Altera可編程邏輯器件開發(fā)軟件_第2頁
第3章 Altera可編程邏輯器件開發(fā)軟件_第3頁
第3章 Altera可編程邏輯器件開發(fā)軟件_第4頁
第3章 Altera可編程邏輯器件開發(fā)軟件_第5頁
已閱讀5頁,還剩307頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第3章Altera可編程邏輯器件開發(fā)軟件3.1概述3.2MAX+PLUSⅡ開發(fā)軟件3.3QuartusⅡ開發(fā)軟件3.1概述

Altera公司在推出各種可編程邏輯器件的同時也在不斷升級其相應(yīng)的開發(fā)工具軟件。其開發(fā)工具軟件已從早期的A+PLUS、MAX+PLUS發(fā)展到目前的MAX+PLUSⅡ、Quartus、QuartusⅡ。MAX+PLUSⅡ和QuartusⅡ具有完全集成化易學(xué)易用的可視化設(shè)計環(huán)境,還具有工業(yè)標(biāo)準(zhǔn)EDA工具接口,并可運行在多種操作平臺上。

MAX+PLUSⅡ和QuartusⅡ提供了一種與結(jié)構(gòu)無關(guān)的設(shè)計環(huán)境,設(shè)計人員無須精通器件的內(nèi)部結(jié)構(gòu),只需運用自己熟悉的輸入工具(如原理圖輸入或高級行為描述語言)進(jìn)行設(shè)計,就可通過MAX+PLUSⅡ和QuartusⅡ把這些設(shè)計轉(zhuǎn)換為最終結(jié)構(gòu)所需要的格式。有關(guān)結(jié)構(gòu)的詳細(xì)知識已裝入開發(fā)工具軟件,設(shè)計人員無須手工優(yōu)化自己的設(shè)計,因此設(shè)計速度非???。圖3.1MAX+PLUSⅡ和QuartusⅡ的設(shè)計流程圖3.1.1設(shè)計軟件流程圖使用MAX+PLUSⅡ和QuartusⅡ軟件開發(fā)可編程邏輯器件,包括設(shè)計輸入、項目編譯、設(shè)計校驗及器件編程等過程,如圖3.1所示。MAX+PLUSⅡ和QuartusⅡ提供了全面的邏輯設(shè)計能力,設(shè)計人員可將文本、圖形和波形等設(shè)計方法自由組合,建立起層次化的單器件或多器件設(shè)計。編譯過程完成最小化邏輯綜合、適配設(shè)計項目于單個器件或多個器件以及形成編程和配置數(shù)據(jù)等工作。設(shè)計校驗包括功能仿真、時序仿真、影響速度的關(guān)鍵路徑的延時預(yù)測以及多種系列器件混合使用的多器件仿真。3.1.2MAX+PLUSⅡ開發(fā)軟件簡介1.特點

MAX+PLUSⅡ是MultipleArrayMatrixandProgrammableLogicUserSystem的縮寫,它提供了與結(jié)構(gòu)無關(guān)的設(shè)計環(huán)境,支持FLEX、MAX及Classic系列器件,目前已升級至10.1版本。

MAX+PLUSⅡ具有開放的界面,可與其它工業(yè)標(biāo)準(zhǔn)的EDA設(shè)計輸入、綜合及校驗工具相連接。提供與結(jié)構(gòu)無關(guān)的設(shè)計環(huán)境,支持多平臺工作,既可以在Windows下運行,也可在SunSPACStations、HP9000Series700/800和IBMRISCSystem/6000工作站上運行。

MAX+PLUSⅡ提供豐富的邏輯功能庫供設(shè)計人員調(diào)用,其中包括74系列全部器件的等效宏功能庫和多種特殊的宏功能(MacroFunction)模塊以及參數(shù)化的宏功能(Magefunction)模塊。MAX+PLUSⅡ還具有開放核的特點,允許設(shè)計人員添加自己的宏功能模塊。充分利用這些邏輯功能模塊,可以大大減輕設(shè)計的工作量,成倍縮短開發(fā)周期。MAX+PLUSⅡ軟件支持各種HDL語言設(shè)計輸入,包括VHDL、VerilogHDL和Altera自己的硬件描述語言AHDL。2.設(shè)計流程使用MAX+PLUSⅡ的設(shè)計過程包括以下幾步,若任一步出錯或未達(dá)到設(shè)計要求則應(yīng)修改設(shè)計,然后重復(fù)以后各步,如圖3.2所示。圖3.2MAX+PLUSⅡ的設(shè)計流程1)輸入設(shè)計項目邏輯設(shè)計的輸入方法有原理圖形輸入(.gdf)、文本輸入(.vhd)、波形輸入(.wdf)及第三方EDA工具生成的設(shè)計網(wǎng)表文件輸入(.sch、.edf、.xnf)等。輸入方法不同,生成設(shè)計文件的名稱后綴就不同。2)編譯設(shè)計項目首先,根據(jù)設(shè)計項目要求設(shè)定編譯參數(shù)和編譯策略,如選定器件、鎖定引腳、設(shè)置邏輯綜合方式等。然后對設(shè)計項目進(jìn)行網(wǎng)表提取、邏輯綜合、器件適配,并產(chǎn)生報告文件(.rpt),延時信息文件(.snf)和器件編程文件(.pof,.sof,.jed),供分析、仿真和編程使用。3)校驗設(shè)計項目設(shè)計項目校驗方法包括功能仿真、模擬仿真和定時分析。功能仿真是在不考慮器件延時的理想情況下仿真設(shè)計項目的一種項目驗證方法,稱為前仿真。通過功能仿真可以驗證一個項目的邏輯功能是否正確。模擬仿真(時序仿真)是在考慮設(shè)計項目具體適配器件的各種延時的情況下仿真設(shè)計項目的一種項目驗證方法,稱為后仿真。時序仿真不僅測試邏輯功能,還測試目標(biāo)器件最差情況下的時間關(guān)系。通過時序仿真,在設(shè)計項目編程到器件之前進(jìn)行全面檢測,以確保在各種可能的條件下都有正確的響應(yīng)。定時分析用來分析器件引腳及內(nèi)部節(jié)點之間的傳輸路徑延時、時序邏輯的性能(如最高工作頻率、最小時鐘周期等)以及器件內(nèi)部各種寄存器的建立保持時間。4)編程驗證設(shè)計項目用MAX+PLUSⅡ編程器通過Altera編程硬件或其它工業(yè)標(biāo)準(zhǔn)編程器,將經(jīng)過仿真確認(rèn)后的編程目標(biāo)文件編入所選定的Altera可編程邏輯器件中,然后加入實際激勵信號,測試是否達(dá)到設(shè)計要求。3.1.3QuartusⅡ開發(fā)軟件簡介

Altera的新一代開發(fā)軟件QuartusⅡ支持APEX20K、APEXⅡ、Excalibur、Mercury以及Stratix等新器件系列。為了縮短設(shè)計周期和降低設(shè)計復(fù)雜度,QuartusⅡ含有工作組計算、集成邏輯分析功能、EDA工具集成、多過程支持、增強(qiáng)重編譯和IP集成等特性。

QuartusⅡ軟件加強(qiáng)了網(wǎng)絡(luò)功能,它具有最新的Internet技術(shù),設(shè)計人員可以直接通過Internet獲得Altera的技術(shù)支持。3.1.4多平臺及其它EDA工具

Altera致力于提供電路設(shè)計人員都非常熟悉的邏輯開發(fā)環(huán)境。通過EDIF網(wǎng)表文件、SRAM目標(biāo)文件(.sof)、參數(shù)化的模塊庫(LPM)、VerilogHDL、VHDL及DesignWare組件來共享信息,MAX+PLUSⅡ和QuartusⅡ軟件可與Cadence、MentorGraphics、OrCAD、Synopsys、Synplicity、ExemplarLogic及Viewlogic等許多公司提供的多種EDA工具接口。

MAX+PLUSⅡ編譯器可以工作于PC機(jī)及在各種工作站平臺上運行,使其成為業(yè)界唯一具有與平臺和結(jié)構(gòu)無關(guān)的可編程邏輯設(shè)計環(huán)境。Altera與業(yè)界處于領(lǐng)先地位的EDA工具廠商組成ACCESS聯(lián)盟,確保了AlteraEDA工具與這些支持Altera器件的EDA工具之間順暢接口。

QuartusⅡ軟件與其它設(shè)計工具之間的聯(lián)系更加緊密,其它工具能夠直接調(diào)用QuartusⅡ工具進(jìn)行設(shè)計編輯,QuartusⅡ也能調(diào)用其它工具進(jìn)行綜合仿真。3.2MAX+PLUSⅡ開發(fā)軟件3.2.1MAX+PLUSⅡ的安裝1.推薦的PC系統(tǒng)配置(1)奔騰Ⅱ或更好的PC機(jī)。(2)256MB以上的有效內(nèi)存,不低于128MB的物理內(nèi)存。(3)500MB以上的硬盤空間。(4)Windows95、Windows98、Windows2000或WindowsNT3.51、WindowsNT4.0操作系統(tǒng)。(5)17英寸顯示器。2.版本

MAX+PLUSⅡ軟件按使用平臺可分為PC機(jī)版和工作站版,按使用對象可分為商業(yè)版、基本版和學(xué)生版。商業(yè)版:支持全部的輸入方式,可以對設(shè)計電路進(jìn)行功能分析、時序分析,并能將設(shè)計結(jié)果裝載到Altera公司的各種芯片中。商業(yè)版軟件運行時需要一個授權(quán)碼和一個并口硬件狗。

基本版(BASELINE):免費軟件,在商業(yè)版上作了一些限制,支持30000門以下所有設(shè)計,支持原理圖、AHDL語言,支持波形仿真、時間分析、編程下載,不支持VHDL語言,不支持某些器件等,約40MB?;景娌恍枰⒖谟布?,只需要向Altera公司申請一個基本版授權(quán)碼即可。學(xué)生版(E+MAX):免費軟件,功能與BASELINE版相同,但只支持MAX系列,約20MB。若要安裝學(xué)生版,可以向Altera公司大學(xué)項目部申請一個學(xué)生版授權(quán)碼。3.安裝

MAX+PLUSⅡ幾種版本的安裝方法基本相同,這里僅介紹基于PC機(jī)在Windows98平臺上MAX+PLUSⅡ10.0版本的安裝過程。(1)插入MAX+PLUSⅡ安裝光盤并自動運行后,出現(xiàn)如圖3.3所示界面,或在資源管理器中雙擊Setup.exe。圖3.3MAX+PLUSⅡ安裝界面(2)選擇Full/Custom/FLEXlm項,即開始安裝商業(yè)版;選擇BASELINE/E+MAX項,則安裝基本版或?qū)W生版。(3)安裝向?qū)瓿珊筮x擇Next,然后按屏幕提示進(jìn)行操作,如果在任一步選擇Cancel將退出安裝。安裝過程中有進(jìn)度顯示,并對Altera公司的一些器件進(jìn)行簡要介紹。安裝完畢后,提示是否打開Read.me文件,選擇“是”可仔細(xì)閱讀其中包含的一些重要信息。閱讀完后關(guān)閉Read.me文件,出現(xiàn)開始菜單中的Altera文件夾,如圖3.4所示。圖3.4開始菜單的MAX+PLUSⅡ圖3.5授權(quán)協(xié)議框文件夾4.第一次運行MAX+PLUSⅡ

安裝好后,第一次運行MAX+PLUSⅡ時還需做許多工作,才能保證該軟件的正常運行。(1)在MAX+PLUSⅡ軟件目錄中,雙擊MAX+PLUSⅡ10.0圖標(biāo),或者在Windows98的開始菜單內(nèi)選擇程序項中的Altera組內(nèi)的MAX+PLUSⅡ10.0項,開始運行MAX+PLUSⅡ。第一次運行時,屏幕上會出現(xiàn)關(guān)于授權(quán)協(xié)議的提示窗口,如圖3.5所示。(2)閱讀完授權(quán)協(xié)議信息后,選擇Yes,出現(xiàn)防止復(fù)制警告信息。若選擇No,則退出MAX+PLUSⅡ。

(3)在復(fù)制警告信息框中選擇Yes按鈕,則顯示任何獲得基本版授權(quán)碼的幫助信息。若有硬件狗,則選擇“否”,并將硬件狗插在并口(打印機(jī)口)上。(4)在http://www.altera.com上申請授權(quán)碼,將獲得的授權(quán)碼文件License.dat拷貝到\maxplus2文件夾里(也可拷貝到別的路徑下)。(5)設(shè)置授權(quán)碼的過程是:在MAX+PLUSⅡ界面中,選擇菜單命令Options/LicenseSetup,出現(xiàn)如圖3.6所示對話框。通過Browse按鈕選擇License.dat文件,或直接在LicenseFileorServerName對話框中輸入帶全路徑名的License.dat文件名。(6)設(shè)置好授權(quán)碼文件后,選擇OK按鈕,就會回到MAX+PLUSⅡ管理器界面中進(jìn)行設(shè)計了。如果不設(shè)置授權(quán)碼,則圖3.6所示LicenseSetup對話框中的右邊框中的功能就不能使用。圖3.6設(shè)置授權(quán)碼文件圖3.7MAX+PLUSⅡ的組成3.2.2操作環(huán)境1.MAX+PLUSⅡ的組成

MAX+PLUSⅡ由設(shè)計輸入、項目處理、項目校驗和器件編程等四部分組成,如圖3.7所示,所有這些部分都集成在一個可視化的操作環(huán)境下。

2.MAX+PLUSⅡ管理器窗口

MAX+PLUSⅡ管理器窗口包括項目路徑、工作文件標(biāo)題條、MAX+PLUSⅡ菜單條、快捷工具條和工作區(qū)等幾部分。設(shè)置好授權(quán)碼后,運行MAX+PLUSⅡ即進(jìn)入MAX+PLUSⅡ管理器窗口,如圖3.8所示。圖3.8MAX+PLUSⅡ管理器3.MAX+PLUSⅡ在線幫助

MAX+PLUSⅡ提供了強(qiáng)大的在線幫助功能。通過使用在線幫助,用戶可以獲得設(shè)計中所需要的最新的全部信息。在線幫助可以通過使用功能鍵或鼠標(biāo)進(jìn)行。按F1鍵可以獲得對話框內(nèi)容、高亮度菜單命令或彈出式內(nèi)容的幫助信息;按Shift+F1鍵或點擊快捷工具按鈕即進(jìn)入在線幫助狀態(tài),此時點擊屏幕上任何部件或條目,都可獲得有關(guān)該項的幫助信息。3.2.3設(shè)計輸入在Windows的程序管理器窗口中用鼠標(biāo)左鍵雙擊MAX+PLUSⅡ圖標(biāo),或在“開始”菜單內(nèi)選擇MAX+PLUSⅡ項,開始運行MAX+PLUSⅡ,管理器窗口被打開。圖形設(shè)計輸入方法1.指定設(shè)計項目名稱

MAX+PLUSⅡ編譯器的工作對象是項目,所以在進(jìn)行一個邏輯設(shè)計時,首先要指定該設(shè)計的項目名稱,對于每個新的項目應(yīng)該建立一個單獨的子目錄,如果該子目錄不存在,MAX+PLUSⅡ?qū)⒆詣觿?chuàng)建,以后所有與該項目有關(guān)的文件都將存在這個子目錄下。初學(xué)者切記,每個設(shè)計必須有一個項目名,并且要保證項目名與設(shè)計文件名一致。指定項目名稱的步驟如下:(1)在File菜單中選擇ProjectName項,將出現(xiàn)如圖3.9所示ProjectName對話框。(2)在ProjectName框內(nèi)鍵入你的設(shè)計項目名,如test或帶目錄的文件名pld\test。(3)在Directories欄中選中\(zhòng)max2work或其它目錄作為當(dāng)前目錄。(4)選擇OK按鈕,則MAX+PLUSⅡ標(biāo)題條會變成新項目的路徑及名稱。圖3.9指定項目名對話框2.建立新文件(1)在File菜單中選擇New,如圖3.10所示,將出現(xiàn)New對話框,如圖3.11所示。(2)在New對話框中選擇GraphicEditorFile項,然后按下OK按鈕,將會出現(xiàn)一個無標(biāo)題的圖形編輯器窗口,如圖3.12所示,圖中標(biāo)明了每個按鈕的功能。通過點擊圖形編輯器標(biāo)題條中的放大按鈕,可使圖形編輯器窗口放至最大。圖3.10在File菜單中選擇New圖3.11New對話框圖3.12MAX+PLUSⅡ圖形編輯器窗口3.輸入圖元和宏功能符號

MAX+PLUSⅡ為實現(xiàn)不同的邏輯功能提供了大量的圖元和宏功能符號(Primitive&Macrofunction)庫,供設(shè)計人員在圖形編輯器文件中直接使用。它們的分類信息放在Max2work\maxlib\子目錄下。各個子目錄存放的符號說明如下:·Prim:Altera的圖元(基本邏輯塊)?!f:74系列邏輯等效宏庫。·Mega-lpm:參數(shù)化模塊庫、宏功能高級模塊(如busmux、csfifo、cadram、parallel-add等)和IP功能模塊(如UARTs、FFT、FIR、PCI等)。·edif:edif接口庫。圖3.13輸入Altera圖元在圖形設(shè)計文件中輸入圖元和宏功能符號的步驟如下:1)輸入Altera圖元(1)選擇工具按鈕有效時,在圖形編輯器窗口的空白處單擊鼠標(biāo)左鍵以確定輸入位置。(2)在Symbol菜單中選擇EnterSymbol或單擊鼠標(biāo)右鍵并選擇EnterSymbol,或雙擊鼠標(biāo)左鍵,將出現(xiàn)一個EnterSymbol對話框,在SymbolLibraries框中雙擊選擇“..\maxplus2\max2lib\prim”。(3)所有的Altera圖元以列表方式顯示出來,選擇你想輸入的圖元,然后雙擊或選擇OK按鈕。此時所選中的圖元就出現(xiàn)在圖形編輯器窗口中,如圖3.13所示。只要重復(fù)上述三步,就可連續(xù)選取圖元。2)輸入74系列的符號74系列的符號的輸入方法與圖元的輸入方法相似。(1)當(dāng)EnterSymbol對話框出現(xiàn)后,在SymbolLibraries對話框中雙擊選擇“.\maxplus2\max2lib\mf”路徑。(2)在SymbolFiles對話框中選擇需要的74系列符號,然后雙擊或選擇OK按鈕,所選中的74系列符號就出現(xiàn)在圖形編輯器窗口中,如圖3.14所示。圖中的74138就是所選中的74系列符號。如要連續(xù)選取74系列器件,則只要重復(fù)上述幾步就可以了。圖3.14輸入74系列符號3)輸入LPM符號

LPM(LibraryParameterizedMegafunction)符號的輸入方法與前兩種符號的輸入方法相似。(1)在EnterSymbol對話框出現(xiàn)后,在SymbolLibraries框中雙擊選擇“.\maxplus2\max2lib\mega-lpm”路徑。(2)在SymbolFiles框中選擇需要的lpm符號,然后點擊OK按鈕,或雙擊選擇需要的lpm符號。此時lpm符號就出現(xiàn)在圖形編輯器窗口中,并出現(xiàn)輸入?yún)?shù)對話框,如圖3.15所示。輸入需要的參數(shù)后點擊OK按鈕。圖3.15lpm符號輸入?yún)?shù)對話框(3)在圖形編輯器窗中雙擊lpm符號的參數(shù)框(位于符號的右上角),也出現(xiàn)lpm符號參數(shù)對話框,可輸入或改變參數(shù)。在PortStatus框中選擇Unused,可將不需要的信號去掉。(4)也可利用MegaWizardPlugInManager輸入宏功能符號和LPM庫函數(shù)。如輸入一個存儲器的步驟如下:在圖形編輯器窗口空白處雙擊鼠標(biāo)左鍵,出現(xiàn)EnterSymbol對話框后點擊MegaWizard

PlugInManager按鈕,或在File菜單中選擇MegaWizardPlugInManager項,然后選中Createanewcustommegafunctionvariation,再點擊Next按鈕。在AvailableMegafunctions

列舉中點擊“+”按鈕,擴(kuò)展storage文件夾,然后選擇LPM-ROM,在右邊的對話框中輸入你所希望的輸出文件名和類型,如rom和AHDL,如圖3.16所示。在其后的addressinputbus寬度輸入8,qoutputbus寬度輸入4,輸出符號名為rom,其它為缺省值,然后點擊OK按鈕。在所希望的地方點擊左鍵插入rom符號。一個新名為rom的符號出現(xiàn)在圖形編輯器窗中,雙擊rom符號,還可對具體參數(shù)進(jìn)行編輯。用戶以后就可以直接調(diào)用該符號了。圖3.16MegaWizardPlugInManager窗口4.連線如果需要連接兩個端口,可將鼠標(biāo)移到其中一個端口,這時鼠標(biāo)自動變?yōu)椤?”形狀,然后可按以下步驟操作:(1)一直按住鼠標(biāo)的左鍵并將鼠標(biāo)拖到第二個端口。(2)放開左鍵,則一條連接線被畫好了。(3)如果需要刪除一根連接線,單擊這根連接線并按Del鍵即可,如圖3.17所示。圖3.17連線圖5.為引腳和節(jié)點命名1)放置輸入引腳和輸出引腳放置輸入引腳和輸出引腳的方法與圖元的輸入方法相似,即在圖形編輯器窗口的空白處單擊鼠標(biāo)左鍵以確定輸入位置,然后在Symbol菜單中選擇EnterSymbol或雙擊鼠標(biāo)左鍵,將出現(xiàn)一個EnterSymbol對話框。只要在EnterSymbol對話框中鍵入Input(Output),然后選擇OK按鈕,符號INPUT(OUTPUT)就出現(xiàn)在圖形編輯器窗口中。如果要重復(fù)放置同一符號或器件,用復(fù)制的方法,可提高圖形輸入的效率。一種是利用edit中的copy命令進(jìn)行復(fù)制,另外一種方法是將鼠標(biāo)放在所要復(fù)制的符號或器件上,按下Ctrl鍵和鼠標(biāo)左鍵不放,拖曳鼠標(biāo)至所需要的位置,這樣就完成了符號或器件的復(fù)制。2)為引腳命名在引腳上的PIN-NAME處雙擊鼠標(biāo)左鍵,然后輸入指定的名字。3)為連線命名點擊鼠標(biāo)左鍵選中需命名的線,然后輸入名字。對n位寬的總線A命名時,可以采用A[n1..0]形式,其中單個信號用A0,A1,A2,…,An形式。練習(xí)3.1輸入3線-8線譯碼器3線—8線譯碼器如圖3.18所示,其中A、B、C、G1表示輸入引腳,Y0N、Y1N、…、Y7N表示輸出引腳。練習(xí)3.2輸入4位計數(shù)器4位計數(shù)器的設(shè)計圖形如圖3.19所示,在圖中對每個符號的意義都進(jìn)行了說明。圖3.183線—8線譯碼器圖3.194位計數(shù)器6.圖形編輯選項在圖形編輯窗口中的Options菜單中列出了一些圖形編輯時的選項,如圖3.20所示,包括文本的字型(Font)、大小控制(TextSize)、線形(LineStyle)、顯示任務(wù)、網(wǎng)絡(luò)控制等,設(shè)計時用戶可根據(jù)需要進(jìn)行選擇。圖3.20圖形編輯選項7.保存文件并檢查錯誤在設(shè)計過程中,如需要保存新文件或?qū)⑽募匦旅?,選擇File菜單中的SaveAs項,將出現(xiàn)SaveAs對話框,如圖3.21所示。在FileName對話框內(nèi)輸入設(shè)計文件名,然后點擊OK按鈕即可保存文件。圖3.21SaveAs對話框若是為了保證輸入邏輯的正確性,可將此邏輯文件保存起來并進(jìn)行錯誤檢查。其具體操作步驟如下:(1)在File菜單中選擇Save&Check命令項,該文件就被保存起來,同時MAX+PLUSⅡ編譯器窗口打開。編譯器網(wǎng)表提取器模塊檢查該文件的錯誤,更新層次結(jié)構(gòu)的顯示,同時給出錯誤和警告數(shù)目的信息等,如圖3.22所示。圖3.22MAX+PLUSⅡ編譯器窗口及消息處理器窗口(2)選擇“確定”按鈕。如果Save&Check命令執(zhí)行成功,無錯誤和警告信息,就選擇編譯器標(biāo)題條右側(cè)的關(guān)閉按鈕或雙擊編譯器標(biāo)題條左側(cè)的編譯器圖標(biāo),關(guān)閉編譯器窗口,返回到圖形編輯器窗口。(3)如果編譯器發(fā)出了錯誤和警告信息,可在消息處理器窗口中點擊Message按鈕選擇一條消息,通過選擇定位(Locate)或雙擊該條消息來找到消息的產(chǎn)生地方。用戶還可選擇HelponMessage功能得到有關(guān)的解釋,這樣就可以定位設(shè)計文件中的錯誤并加以改正。接下來再次執(zhí)行Save&Check命令,直到無錯誤和警告信息。如果消息處理器窗口沒有自動顯示出來,可選擇菜單命令MessageProcessor來打開消息處理器窗口。8.創(chuàng)建一個默認(rèn)的邏輯符號對于一個經(jīng)過保存且檢查沒有錯誤的設(shè)計文件,可以創(chuàng)建一個代表該文件的符號文件(.sym)。該符號就像其它符號(如74138)一樣,可被其它圖形設(shè)計文件(.gdf)調(diào)用。(1)在File菜單中選擇CreateDefaultSymbol項,即可創(chuàng)建一個默認(rèn)的邏輯符號。該符號可被高層設(shè)計調(diào)用。(2)若選擇File菜單中的CreateDefaultIncludeFile項,則可創(chuàng)建一個默認(rèn)的邏輯文件(.inc)供其它AHDL文本設(shè)計文件調(diào)用。(3)可以通過選擇File菜單中的Symbol命令編輯所選符號。圖3.23模12同步計數(shù)器m12.gdf9.關(guān)閉文件如果要關(guān)閉文件,選擇File菜單中的Close命令,或用鼠標(biāo)左鍵單擊圖形編輯器右上角的關(guān)閉按鈕來關(guān)閉圖形編輯器窗口。練習(xí)3.3建立、輸入圖3.23所示的模12同步計數(shù)器文件m12.gdf。要求通過Save&Check命令的執(zhí)行,并形成默認(rèn)符號m12.sym。

練習(xí)3.4修改并完善如圖3.24所示的電路,并形成默認(rèn)符號m60.sym。圖3.24同步脈沖分配器PD.gdf文本設(shè)計輸入方法

MAX+PLUSⅡ支持AHDL、VHDL和VerilogHDL等硬件描述語言。AHDL是AlteraHardwareDescriptionLanguage的縮寫,它是一種高級硬件行為描述語言,該語言可以使用布爾方程、算術(shù)關(guān)系運算表達(dá)式、真值表、條件語句等方式進(jìn)行描述,適合于大型的、復(fù)雜的狀態(tài)機(jī)設(shè)計。

VHDL和VerilogHDL是符合IEEE標(biāo)準(zhǔn)的高級硬件行為描述語言,也都適合于大型的、復(fù)雜的設(shè)計。這些語言都是用文本來進(jìn)行設(shè)計,它們的輸入方式既有共同之處,又各有特點,設(shè)計人員可根據(jù)實際情況選擇使用。例如,利用AHDL語言進(jìn)行文本設(shè)計7段數(shù)碼管的方法如下:(1)在File菜單中選擇ProjectName項,鍵入設(shè)計項目名稱,如led\7segm,然后點擊OK按鈕。(2)在File菜單中選擇New,然后選擇TextEditorFile,點擊OK按鈕后打開一個無標(biāo)題的TextEditor窗口。若有必要,可點擊Maximize按鈕,使文本編輯器窗口變?yōu)樽畲蟆?3)在File菜單中選擇SaveAs,然后在FileName框內(nèi)鍵入7segm.tdf,點擊OK按鈕,這時文本編輯就變成了以7segm.tdf為文件名的編輯窗,在該窗口中就可以輸入AHDL語言程序了。(4)AHDL語言的輸入格式如圖3.25所示。在AHDL文件的開頭是一個以Subdesign開頭的說明輸入和輸出的說明區(qū),緊接著是文件名7segm,特別要注意的是必須保證這里的文件名與(3)中的文件名一致,接下來的括號中是輸入或輸出引腳說明。四個二進(jìn)制輸入是i0,i1,i2,i3;7段碼的輸出是a,b,c,d,e,f,g,這兩行后面的INPUT、OUTPUT表示數(shù)據(jù)流向,信號和數(shù)據(jù)流向用冒號隔開,信號間用逗號分開,每行用分號結(jié)束。接下來的是以Begin開頭的功能描述,內(nèi)容可以是布爾代數(shù)、條件語句或真值表等,此例選擇真值表輸入。用字符串Table為先導(dǎo),第一行為輸入信號對應(yīng)的七段碼的真值表說明,從第二行開始是真值表的值。若7段碼為共陽極,則低電平驅(qū)動數(shù)碼管;若為共陰極,則高電平驅(qū)動數(shù)碼管。本例選擇共陰極。用“EndTable;”結(jié)束真值表輸入,最后用“End;”結(jié)束AHDL語言程序。圖3.257段LED的譯碼器7segm.tdf(5)保存并檢查語法錯誤,在File菜單中選擇Save&Check命令項,直到無錯誤和警告信息,并切換回文本編輯窗口。(6)創(chuàng)建一個默認(rèn)的邏輯符號。在File菜單中選擇CreateDefaultSymbol項,并點擊OK按鈕,就產(chǎn)生了7segm.sym符號文件,供將來在頂層圖形文件中調(diào)用。(7)選擇File菜單中的Close命令,關(guān)閉7segm.tdf。一個用AHDL語言編寫的設(shè)計文件就完成輸入了。創(chuàng)建頂層設(shè)計文件

MAX+PLUSⅡ支持層次化設(shè)計輸入方法,其主要思想是:(1)當(dāng)前設(shè)計項目文件為頂層設(shè)計文件。(2)頂層設(shè)計文件中調(diào)用的符號所代表的文件為底層設(shè)計文件。(3)頂層設(shè)計文件可通過打包(即在File菜單中選擇CreateDefaultSymbol項)的方法降為底層設(shè)計文件,供其它頂層設(shè)計文件調(diào)用。(4)在同一設(shè)計項目中,允許頂層及底層設(shè)計單向調(diào)用底層設(shè)計符號,不允許頂層文件與符號文件之間及符號文件與符號文件之間的直接相互調(diào)用或間接相互調(diào)用,也不允許頂層文件或任一符號文件自身遞歸調(diào)用。(5)在同一設(shè)計項目中,頂層設(shè)計文件名及各底層設(shè)計符號所對應(yīng)的設(shè)計文件名必須是唯一的。例如,不允許同時存在7segm.gdf和7segm.tdf兩個設(shè)計文件。(6)在同一設(shè)計項目中的各個設(shè)計文件都可以重新編輯、修改、保存、打包。在重新打包之后,應(yīng)在調(diào)用該符號文件的上一層設(shè)計文件中更新該符號并保存。(7)硬件描述語言設(shè)計文件通過調(diào)用包含文件的方法實現(xiàn)層次化設(shè)計輸入,此時應(yīng)通過建立默認(rèn)符號的方法形成頂層文件。頂層設(shè)計文件就是把一個設(shè)計的各個模塊放在一起,形成一個便于閱讀的圖形形式。如圖3.26所示,該電路的模塊都是采用前面所創(chuàng)造的符號,每個模塊都包含著各自的實現(xiàn)電路。雙擊各個模塊就顯示各自的實現(xiàn)電路。圖3.26頂層設(shè)計文件層次顯示層次顯示方式就是以一個層次樹的形式顯示整個項目和電路的設(shè)計文件。打開層次顯示的方法是從MAX+PLUSⅡ菜單中選擇HierarchyDisplay項,一個項目的層次就顯示出來了,圖3.27為圖3.26頂層設(shè)計文件的層次顯示。層次中的每個文件都可以通過雙擊文件名打開,并帶到前臺來顯示。圖3.27層次顯示上面介紹的幾種設(shè)計輸入方法各有優(yōu)缺點,適用于不同的場合,設(shè)計人員可根據(jù)需要靈活使用,使設(shè)計達(dá)到最佳效果。另外,有些命令除了菜單項外還有快捷鍵方式,使用快捷鍵可提高速度,在實際操作中可慢慢熟練掌握。編輯用戶庫

MAX+PLUSⅡ允許設(shè)計人員對用戶庫進(jìn)行編輯。在Options菜單中選擇UserLibraries...,這時就會出現(xiàn)用戶庫編輯框。如果想要加入一個新的用戶庫,可以在Directoryname輸入框中直接鍵入用戶庫所在的路徑和名稱,然后點擊Add按鈕,或者通過Directories和Drives對話框確定所要加入的用戶庫。如果想要改變用戶庫在列表中的先后次序,可以通過點擊Up或Down按鈕來完成。Delete按鈕用于刪除已選中的庫。點擊OK按鈕即完成用戶庫的編輯。3.2.4設(shè)計項目的編譯使用MAX+PLUSⅡ編譯器編譯設(shè)計項目時,編譯器將進(jìn)行錯誤檢查、網(wǎng)表提取、邏輯綜合、器件適配,并產(chǎn)生仿真文件、定時分析文件和編程配置文件。MAX+PLUSⅡ編譯器既能接受多種輸入文件格式,又可輸出多種文件格式。它能接受的輸入設(shè)計文件包括MAX+PLUSⅡ自己的圖形文件(.gdf)、AHDL文件(.tdf)、VHDL文件(.vhd)。第三方EDA工具輸入文件包括EDIF文件(.edf)、庫映射文件(.lmf)、OrCAD文件(.sch)及Xilinx文件(.xnf),賦值和配置文件(.acf)。MAX+PLUSⅡ編譯器的輸出文件包括設(shè)計校驗文件、MAX+PLUSⅡ的模擬器網(wǎng)表文件(.snf)、第三方EDA工具所使用的網(wǎng)表文件(.vo)和標(biāo)準(zhǔn)格式的SDF文件(.sdo),另外產(chǎn)生的編程配置文件,包括用于編程器的目標(biāo)文件(.pof)、用于在線配置的SRAM目標(biāo)文件(.sof)和JEDEC文件(.jed)。下面是使用MAX+PLUSⅡ編譯器編譯的過程。編譯前準(zhǔn)備1.打開編譯器窗口(1)在MAX+PLUSⅡ菜單內(nèi)選擇Compiler項,則出現(xiàn)編譯器窗口,如圖3.28所示。(2)選擇Start按鈕即可開始編譯,MAX+PLUSⅡ編譯器將檢查項目是否有錯,并對項目進(jìn)行邏輯綜合,然后配置到一個Altera器件中,同時將產(chǎn)生報告文件、編程文件和用于時間仿真用的輸出文件。(3)但是在開始編譯前,還必須設(shè)定一些其它的選項。圖3.28編譯窗口2.選擇一個器件首先,設(shè)計人員需要為項目指定一個器件系列,然后設(shè)計人員可以自己選擇某個具體的器件,也可以讓編譯器在該器件系列內(nèi)自動選擇最適合設(shè)計人員項目的器件。確定器件系列的步驟如下:(1)在Assign菜單內(nèi)選擇Device項,將出現(xiàn)Device對話框,如圖3.29所示。(2)在DeviceFamily框中選擇一個器件系列。(3)在Devices框中選擇某一器件或選擇AUTO,讓MAX+PLUSⅡ為你選擇一個器件。(4)點擊OK按鈕。圖3.29選擇器件3.打開設(shè)計規(guī)則檢查工具編譯時,可選的設(shè)計規(guī)則檢查(DesignDoctor)工具將檢查項目中所有設(shè)計文件,以發(fā)現(xiàn)在器件編程時可能存在的可靠性不好的邏輯。打開DesignDoctor并為其指定一系列設(shè)計規(guī)則的步驟如下:(1)從Processing菜單中選擇DesignDoctor項,在菜單中該選項的邊上就出現(xiàn)一個確認(rèn)標(biāo)記,并且DesignDoctor的圖標(biāo)將顯示在Complier窗口的LogicSynthesizer模塊下方。(2)從Processing菜單中選擇DesignDoctorSetting項,如圖3.30所示。(3)對于MAX7000系列,選擇EPLDRules(EPLD規(guī)則),然后點擊OK按鈕。(4)若不再需要設(shè)計規(guī)則檢查,就再次從Processing菜單中選擇DesignDoctor項,即關(guān)閉設(shè)計規(guī)則檢查工具。圖3.30設(shè)計規(guī)則檢查設(shè)置4.打開保密位

MAX+PLUSⅡ允許設(shè)計人員為項目中的所有器件指定默認(rèn)的保密位設(shè)置,保密位能防止一個器件被探測(beinginterrogated)或被無意地重新編程。(1)在Assign菜單中選擇GlobalProjectDeviceOptions菜單,出現(xiàn)如圖3.31所示對話框。(2)如有必要,選中SecurityBit(保密位),然后點擊OK按鈕。

圖3.31保密位設(shè)置5.管腳分配

Altera

推薦讓編譯器自動為設(shè)計人員的項目進(jìn)行管腳分配,但如果設(shè)計人員需要自己分配管腳時,請按以下步驟進(jìn)行:(1)首先確定設(shè)計人員已經(jīng)選擇了一種器件。(2)在AssignMenu菜單中選擇Pin/Location/Chip項,出現(xiàn)如圖3.32所示對話框。圖3.32管腳分配(3)在NodeName框內(nèi)輸入管腳的名字。(4)在ChipResource對話框內(nèi)選擇管腳并輸入管腳的序列數(shù)。(5)點擊Add按鈕。(6)設(shè)計人員分配的管腳將出現(xiàn)在左下方框內(nèi)。(7)點擊OK按鈕。6.選擇一種全局邏輯綜合方式設(shè)計人員可以為設(shè)計項目選擇一種邏輯綜合方式,以便在編譯過程中指導(dǎo)編譯器的邏輯綜合模塊的工作。默認(rèn)的邏輯綜合方式是常規(guī)(NORMAL),該方式的邏輯綜合優(yōu)化目標(biāo)是讓整個設(shè)計占用最少的邏輯單元。選擇全局邏輯綜合方式的步驟如下:(1)在AssignMenu菜單內(nèi)選擇GlobalProjectLogicSynthesis項,將出現(xiàn)如圖3.33所示的GlobalProjectLogicSynthesis對話框。圖3.33選擇全局邏輯綜合方式(2)在GlobalProjectSynthesisStyle下拉列表中選擇設(shè)計人員需要的方式。缺省(Default)的邏輯綜合方式是NORMAL。綜合方式FAST可以改善項目性能,但通常使設(shè)計人員的項目配置變得比較困難。綜合方式WYSIWYG(所見即所得)的邏輯綜合量最小。(3)可以在0~10之間移動Optimize(優(yōu)化)欄中的滑塊,移到0時,最優(yōu)先考慮占用器件的面積;移到10時,系統(tǒng)的運行速度得到最優(yōu)先考慮。(4)對MAX器件進(jìn)行多級綜合。對于MAX(乘積項)器件,設(shè)計人員可以選擇多級綜合,充分利用所有可使用的邏輯選項。這種邏輯綜合方式用于處理含有特別復(fù)雜的邏輯項目,而且配置時不需要用戶干涉。對于FLEX器件,這個選項自動有效,如圖3.34所示。圖3.34多級綜合方式7.FLEX器件的進(jìn)位/級聯(lián)鏈進(jìn)位鏈提供邏輯單元之間非常快的向前進(jìn)位功能。利用級聯(lián)鏈可以實現(xiàn)扇入很多的邏輯函數(shù)。如選擇FAST綜合方式,則進(jìn)位/級聯(lián)鏈選項自動有效。按如下步驟可人工選擇該選項是否有效:圖3.35FLEX器件的進(jìn)位/級聯(lián)鏈(1)在GlobalProjectLogicSynthesis對話框內(nèi)選擇DefineSynthesisStyle項,將出現(xiàn)如圖3.35所示DefineSynthesisStyle窗口。(2)如需使用進(jìn)位鏈功能,則從CarryChain下拉菜單中選擇Auto。

(3)如需使用級聯(lián)鏈功能,則從CascadeChain下拉菜單中選擇Auto。圖3.36設(shè)置定時要求8.設(shè)置定時要求設(shè)計人員可以對整個項目設(shè)定全局定時要求,如傳播延時、時鐘到輸出的延時、建立時間和時鐘頻率。對于FLEX10K、FLEX8000和FLEX6000系列器件,定時要求的設(shè)置將會影響項目的編譯。用戶可以按如下步驟設(shè)置定時要求:(1)在AssignMenu菜單內(nèi)選擇GlobalProjectTimingRequirements項,將出現(xiàn)如圖3.36所示GlobalProjectTimingRequirements對話框。(2)在相應(yīng)的對話框內(nèi)輸入設(shè)計人員對項目的定時要求,然后點擊OK按鈕。9.打開功能仿真器與定時模擬器網(wǎng)表文件提取器

MAX+PLUSⅡ支持編譯器功能仿真(前仿真)和模擬仿真(后仿真)。若要進(jìn)行功能仿真,則須選擇Processing菜單中的FunctionalSNFExtractor命令,打開功能仿真器網(wǎng)表文件提取器;若要進(jìn)行定時模擬仿真,則須選中Processing菜單中的TimingSNFExtractor命令,打開定時模擬器網(wǎng)表文件提取器,如圖3.37所示。圖3.37功能仿真器與定時模擬器網(wǎng)表文件提取器

MAX+PLUSⅡ編譯器能創(chuàng)建一個仿真/模擬器網(wǎng)表文件(.snf),該文件包含了許多邏輯信息和時間信息,并被用作MAX+PLUSⅡ的模擬器(Simulator)和定時分析器(TimingAnalyzer)的輸入。定時模擬器網(wǎng)表文件是一個二進(jìn)制文件,它包含了模擬、延時預(yù)估和定時分析所需要的邏輯與定時信息。10.指定在報告文件中需要產(chǎn)生的部分

MAX+PLUSⅡ編譯器適配(Fitter)模塊產(chǎn)生報告文件(.rpt),它顯示出所編譯的項目使用器件資源情況。用戶可以為編譯器指定報告文件中應(yīng)當(dāng)包含的信息,操作步驟如下:(1)在Processing菜單中選擇ReportFileSettings項,將出現(xiàn)ReportFileSettings對話框,如圖3.38所示。(2)默認(rèn)情況下,報告文件中所有部分都被打開。如果某些部分還沒有打開,就選中ALL項,然后點擊OK按鈕。圖3.38運行編譯器在Processing菜單下,還有一些會對編譯產(chǎn)生一定影響的選項,如圖3.39所示。運行編譯器的過程如下:(1)在編譯器(Compiler)窗口中選擇Start開始編譯。在編譯器編譯設(shè)計項目期間,所有的信息、錯誤和警告將在自動打開的信息處理窗口中顯示出來。如果有錯誤發(fā)生,選中該錯誤信息,圖3.39設(shè)置選項對編譯的影響然后按下locate按鈕,就可找到該錯誤在設(shè)計文件中所處的位置,通過點擊信息處理器窗口中的HelponMessage按鈕,顯示該信息產(chǎn)生的原因和解決該問題應(yīng)做的工作。當(dāng)編譯器的Partitioner(劃分)和Fitter(適配)模塊處理項目時,Stop按鈕將會變成Stop/ShowStatus按鈕。(2)此時,若選擇編譯器窗口中的Stop/ShowStatus按鈕,Partitioner/FitterStatus對話框就會顯示出來。該對話框中列出設(shè)計項目中的所有芯片以及當(dāng)前對它們進(jìn)行適配的狀態(tài),如圖3.40所示。圖3.40劃分和適配狀態(tài)(3)在Partitioner/FitterStatus對話框中選擇ContinueCompilation按鈕繼續(xù)進(jìn)行編譯。編譯是在后臺進(jìn)行的,對于小項目編譯時間很短,但是,如果對一個比較大或者復(fù)雜的項目進(jìn)行編譯,所需時間就較長,用戶可以在開始編譯后轉(zhuǎn)到別的應(yīng)用程序繼續(xù)工作。編譯結(jié)束后,那些由編譯器產(chǎn)生的代表輸出文件的圖標(biāo)將會出現(xiàn)在各模塊框的下面,用戶可以通過雙擊適當(dāng)?shù)膱D標(biāo)來打開這些輸出文件。(4)閱讀報告文件。報告文件一般包含兩種類型的信息:項目信息(如器件列表、項目編譯信息、文件層次結(jié)構(gòu)信息)和器件信息(如資源使用、布線資源、邏輯單元互連等)。用戶可直接從編譯器窗口中打開當(dāng)前編譯所產(chǎn)生的報告文件。打開報告文件的方法是在Compiler窗口中的報告文件圖標(biāo)上雙擊鼠標(biāo)左鍵,報告文件就顯示在文本編輯器窗口中。閱讀完報告文件后,關(guān)閉文本編輯器并回到Compiler窗口中,然后關(guān)閉Compiler窗口。在底層平面圖編輯器中觀察適配結(jié)果可以在底層平面圖編輯器(FloorplanEditor)中觀察編譯器的劃分和適配結(jié)果,并對項目的器件資源進(jìn)行編輯和修改。1.打開底層平面圖編輯器窗口打開底層平面圖編輯器窗口的方法是在MAX+PLUSⅡ菜單中選擇FloorplanEditor項,底層平面圖編輯器被打開并顯示出當(dāng)前設(shè)計項目所選定的器件,如圖3.41所示。圖3.41底層平面圖編輯器2.選擇視圖顯示方式底層平面圖編輯器提供兩種顯示方式,即器件視圖和邏輯陣列塊(LAB)視圖。器件視圖顯示器件封裝的所有引腳以及它們的功能。LAB視圖顯示器件內(nèi)部所有的邏輯陣列塊結(jié)構(gòu),對于某些器件封裝LAB視圖還顯示出引腳的位置。用戶可通過選擇菜單命令Layout/ViewDevice來選擇器件視圖,通過選擇菜單命令Layout/ViewLAB來選擇邏輯陣列塊視圖。用戶還可以通過雙擊視圖區(qū)的方法在器件視圖和邏輯陣列塊視圖之間切換。3.顯示最后一次編譯所生成的底層平面圖在Layout菜單下選擇LastCompilationFloorplan項,底層平面圖編輯器將顯示由最后一次編譯所生成的不可編輯(只讀)視圖,該視圖被存儲在適配文件中。任何不合法的分配都將被高亮度顯示在未分配的節(jié)點和引腳列表中。4.編輯適配結(jié)果在底層平面圖編輯器中編輯適配結(jié)果的方法稱為后配置。該方法是在底層平面圖編輯器中選擇菜單Assign中的BackAnnotate(回注編譯結(jié)果,即將上一次產(chǎn)生的器件及資源情況拷貝到原始的設(shè)計中),然后可對回注結(jié)果進(jìn)行編輯、修改;再通過選擇Layout菜單中的CurrentAssignmentsFloorplan項,即允許設(shè)計人員在底層平面圖編輯器中編輯修改當(dāng)前的分配(存放在分配與配置文件(.acf)中)。底層平面圖編輯器提供項目中未被分配的節(jié)點和引腳名字列表,每個名字邊上都帶有一個把柄,將這一把柄用鼠標(biāo)拖到器件視圖或邏輯陣列塊視圖中的單個引腳、邏輯單元或I/O單元上,也可以將一個已分配的節(jié)點或引腳拖回到未分配節(jié)點和引腳列表中,或拖到器件的不同位置上。引腳鎖定在前面的圖形編輯窗口中僅僅對輸入/輸出引腳作了名稱的定義,但沒有對輸入/輸出引腳規(guī)定在器件中的具體引腳號碼。規(guī)定引腳號碼稱為引腳鎖定,其操作方法如下:(1)在底層平面圖編輯器中(兩種視圖的任何一種)用鼠標(biāo)的左鍵選中輸入或輸出引腳符號,在Assign下拉菜單中選擇Pin/Location/Chip項,出現(xiàn)Pin/Location/Chip對話框;或者用鼠標(biāo)的右鍵選中輸入或輸出引腳符號,出現(xiàn)下拉菜單,在Assign中選擇Pin/Location/Chip項,這樣也會出現(xiàn)Pin/Location/Chip對話框,如圖3.42所示。圖3.42引腳鎖定(2)在ChipResource窗口中選中Pin,鍵入要定位的引腳號碼,然后在Pintype中選擇輸入或輸出。如果輸入的號碼不是I/O引腳,返回將會出現(xiàn)錯誤信息。(3)如有必要,可選用AssignDevice項重新規(guī)定器件,然后再次執(zhí)行Save&Compile命令,完成配置過程。3.2.5模擬仿真和定時分析設(shè)計輸入和編譯僅僅是整個設(shè)計過程的一部分,成功的編譯只能保證為項目創(chuàng)建了一個編程文件,并不能保證該項目將完全按照所期望的那樣工作。仿真的目的就是為了對所設(shè)計項目的正確與否進(jìn)行驗證,在項目編程到器件之前進(jìn)行全面檢測,以確保所設(shè)計的功能在各種可能的條件下都是正確的。仿真是整個設(shè)計過程中很重要的一環(huán),除非是設(shè)計人員特別熟悉的小設(shè)計,可以跳過這一過程,對于新的、復(fù)雜的大設(shè)計都必須進(jìn)行仿真。仿真為設(shè)計人員提供最快最容易的項目驗證方法,既省時又省力,否則器件編程完后,在實際電路工作中出現(xiàn)問題,然后再對整個設(shè)計進(jìn)行修改,那就比較麻煩了。許多初學(xué)者誤以為學(xué)習(xí)仿真是一個很慢很難的過程而不愿意去學(xué),其實,學(xué)習(xí)用MAX+PLUSⅡ進(jìn)行仿真與學(xué)習(xí)設(shè)計輸入和編譯一樣容易。仿真包括功能仿真和模擬仿真。功能仿真又稱前仿真,是在不考慮器件延時的理想情況下仿真設(shè)計項目的一種驗證方法。通過功能仿真可驗證一個項目的邏輯功能是否正確。模擬仿真(時序仿真)又稱后仿真,是在考慮設(shè)計項目的具體適配器件的各種延時情況下仿真設(shè)計項目的一種項目驗證方法。時序仿真不僅可測試邏輯功能,還可測試目標(biāo)器件在最差情況下的時間關(guān)系。在模擬仿真過程中,需要給MAX+PLUSⅡ仿真器提供輸入向量,仿真器將產(chǎn)生與這些輸入激勵信號相對應(yīng)的輸入信號。仿真結(jié)果將與實際的可編程邏輯器件在同一條件下的時序關(guān)系完全相同。1.創(chuàng)建一個仿真器通道文件(1)打開波形編輯器窗口,從File菜單中選擇New,在對話框中選擇WaveformEditorFile,并從下拉列表中選擇.scf擴(kuò)展名,然后點擊OK按鈕,即可創(chuàng)建一個新的無標(biāo)題文件,如圖3.43所示。(2)從File菜單中選擇EndTime,鍵入仿真的時長值如1μs,然后點擊OK按鈕,則設(shè)置了仿真文件的結(jié)束時間,如圖3.44所示。圖3.43波形編輯器窗口圖3.44設(shè)置結(jié)束時間(3)從Options菜單中選擇GridSize,鍵入時間軸網(wǎng)格大小值如20ns,然后點擊OK按鈕,則設(shè)定了時間軸網(wǎng)格大小,通常用網(wǎng)格大小來表示信號狀態(tài)的基本維持時間,如圖3.45所示。如有必要,從Options菜單中選擇ShowGrid,豎直網(wǎng)線就會以20ns的間隔顯示在波形編輯器窗口中。圖3.45設(shè)置時間軸網(wǎng)格(4)從Node菜單中選擇EnterNodesfromSNF,或在窗口內(nèi)的空白區(qū)單擊鼠標(biāo)右鍵,則出現(xiàn)EnterNodesfromSNF對話框,如圖3.46所示(前提要求是已對設(shè)計項目進(jìn)行了輸入和編譯)。圖3.46節(jié)點輸入對話框(5)如僅選擇Type中的Inputs和Outputs項,點擊List按鈕,則在AvailableNodes&Groups欄內(nèi)列出所有的Inputs和Outputs節(jié)點。(6)按住Ctrl鍵,點擊AvailableNodes&Groups欄中所需要觀察的節(jié)點,或者按住鼠標(biāo)左鍵,在節(jié)點上拖動可連續(xù)選擇節(jié)點,然后選擇右箭頭,則將已選中的節(jié)點拷貝到SelectedNodes&Groups欄。(7)點擊OK按鈕,所選的節(jié)點刷新波形編輯器。在這里,所有未編輯的輸入節(jié)點波形都默認(rèn)為低邏輯電平,而所有輸出和隱含節(jié)點波形都默認(rèn)為未定義(X)邏輯電平,如圖3.47所示。(8)對波形編輯器中的節(jié)點可以進(jìn)行添加和重新排列順序,用鼠標(biāo)點擊后,就可拖到不同的位置,也可以按Delete鍵將節(jié)點刪除。圖3.47編輯仿真器通道文件節(jié)點波形(9)編輯輸入節(jié)點波形。通過編輯輸入節(jié)點的激勵波形為仿真器提供輸入向量。在對某一項目進(jìn)行仿真時,根據(jù)項目設(shè)計輸入的原理,仿真器對輸入節(jié)點的邏輯電平進(jìn)行計算,會得出隱含節(jié)點和輸出節(jié)點的邏輯電平。因此,根據(jù)項目設(shè)計的要求,設(shè)計人員可對每一個輸入節(jié)點的激勵波形自己進(jìn)行編輯。在圖3.46中,左邊的一些工具按鈕就是編輯波形的,首先用鼠標(biāo)選中要編輯的輸入節(jié)點名(全選該節(jié)點的波形)或節(jié)點中的一段波形,然后根據(jù)需要點擊左邊的高、低電平或時鐘工具按鈕,可得到任意的數(shù)字信號,完成激勵波形的輸入。(10)保存文件。選擇File\SaveAs,在FileName框中自動出現(xiàn)默認(rèn)的當(dāng)前項目名,擴(kuò)展名為.scf,然后點擊OK按鈕來保存文件,如圖3.48所示。圖3.48仿真通道文件2.運行仿真器1)打開仿真器窗口在MAX+PLUSⅡ菜單中選擇Simulator,即打開仿真器,并自動裝載當(dāng)前項目的仿真器網(wǎng)表文件和上面剛創(chuàng)建的與當(dāng)前項目同名的仿真器通道文件(.scf),如圖3.49所示。圖3.49仿真器窗口2)設(shè)置仿真時間在StartTime對話框中輸入仿真器起始時間,在EndTime對話框中輸入仿真器終止時間,二者都應(yīng)處于.scf文件所設(shè)置的時間范圍內(nèi),如按前面的設(shè)置應(yīng)小于等于1μs,并且終止時間應(yīng)大于起始時間。

3)進(jìn)行仿真按下Start按鈕,即開始仿真當(dāng)前項目。在仿真過程中進(jìn)度指示條將朝著100%的方向移動,仿真過程在后臺進(jìn)行,仿真輸出邏輯電平將記錄在.scf文件中。如果.scf文件所在的波形編輯器窗口是打開的,則可以看到仿真輸出波形的更新過程,但這會降低仿真速度。3.分析仿真結(jié)果在仿真器窗口中選擇OpenSCF,即打開當(dāng)前項目的.scf文件,使用波形編輯器窗口周圍的圖形縮、放、前景按鈕及滾動條可詳細(xì)觀察波形。如果輸出結(jié)果不正確,就要對設(shè)計進(jìn)行修改,直到滿足設(shè)計要求為止。有經(jīng)驗的設(shè)計人員都要用多組輸入來多次仿真他們的設(shè)計,以得到期望的設(shè)計結(jié)果。這就要求重新編輯修改輸入激勵信號波形并重復(fù)仿真該設(shè)計項目。4.定時分析1)啟動定時分析工具編譯完成后,設(shè)計人員可以利用定時分析器來分析設(shè)計項目的性能。定時分析器提供了三種分析模式,如表3.1所示。表3.1定時分析器的三種分析模式分析模式說明延遲矩陣分析多個源節(jié)點和目標(biāo)節(jié)點之間的傳播延遲路徑

時序邏輯電路性能

分析時序電路的性能,包括限制性能的延遲,最小的時鐘周期和

最高的電路工作頻率

建立/保持矩陣

計算從輸入引腳到觸發(fā)器、鎖存器和異步RAM的信號輸入所需的最少的建立時間和保持時間2)傳播延遲分析如果在打開定時分析器窗口時DelayMatrix分析模式?jīng)]有自動打開的話,則在Analysis菜單中選擇DelayMatrix項,然后點擊Start按鈕,則定時分析器立即開始分析設(shè)計人員的當(dāng)前項目并計算項目中每對連接的源節(jié)點(輸入引腳)和目標(biāo)節(jié)點(輸出引腳)之間的最大和最小傳播延遲,如圖3.50所示。圖3.50傳播延遲分析3)時序邏輯電路性能分析在Analysis菜單內(nèi)選擇RegisterPerformance項,然后點擊Start按鈕,就開始進(jìn)行時序邏輯電路性能分析,如圖3.51所示。4)建立和保持時間分析在Analysis菜單中選擇Set/HoldMatrix項,然后點擊Start按鈕,開始進(jìn)行建立/保持時間分析,如圖3.52所示。圖3.51時序邏輯電路性能分析圖3.52建立和保持時間分析3.2.6器件編程

Altera可編程邏輯器件的編程可通過編程器、JATG在線編程及Altera在線配置等三種方式進(jìn)行。1.打開編程器窗口首先確認(rèn)編程器硬件已安裝好,在MAX+PLUSⅡ菜單中選擇Programmer項,則打開編程器窗口,如圖3.53所示。

圖3.53編程器窗口2.利用Altera編程器對MAX和EPROM系列器件進(jìn)行編程(1)在Options菜單內(nèi)選擇HardwareSetup項,然后在HardwareType對話框內(nèi)的下拉菜單選項中內(nèi)選擇適當(dāng)?shù)腁ltera編程連接硬件,最后點擊OK按鈕,如圖3.54所示。圖3.54Altera編程器硬件設(shè)置窗口(2)在編程器窗口中檢查設(shè)計人員選擇的編程文件和器件是否正確。在對MAX和EPROM器件進(jìn)行編程時,要用擴(kuò)展名為.pof的文件。如果選擇的編程文件不正確,可在File菜單中選擇SelectProgrammingFile命令來選擇你的編程文件。(3)將編程目標(biāo)器件插到編程插座中。(4)點擊Program按鈕,編程器將檢查器件并將設(shè)計項目編程到器件中,而且還將檢查器件中的內(nèi)容是否正確。3.通過JTAG實現(xiàn)單器件在線編程一個編程目標(biāo)文件(.pof)可以通過ByteBlaster或其它連接電纜直接編程到器件中,其過程如下:(1)編譯一個項目,MAX+PLUSⅡ編譯器將自動產(chǎn)生用于MAX器件的編程目標(biāo)文件。(2)將ByteBlaster電纜的一端與微機(jī)的并行口相連,另一端10針陰極頭與裝有可編程邏輯器件的PCB板上的陽極頭插座相連。該PCB板還必須為ByteBlaster電纜提供電源。

圖3.55通過JTAG實現(xiàn)在線編程(3)打開MAX+PLUSⅡ編程器。(4)在Options菜單中選擇HardwareSetup命令,將出現(xiàn)H

溫馨提示

  • 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論