版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第4章補充(QuartusII操作-詳細)第一頁,共162頁。3.1數(shù)字系統(tǒng)設計流程3.2常用的PLD設計EDA工具軟件3.3QuartusⅡ簡介3.3設計實例3.5設計輸入3.6設計的編譯3.7設計的仿真驗證3.8時序分析3.9器件編程3.10仿真工具ModelSim3.11QuartusⅡ軟件使用技巧3.12仿真中應注意的問題
第3章QuartusII集成開發(fā)工具2第二頁,共162頁。3.1數(shù)字系統(tǒng)設計流程一、設計輸入二、設計處理三、模擬仿真四、編程下載內容概要3第三頁,共162頁。3.1數(shù)字系統(tǒng)設計流程圖3-1數(shù)字系統(tǒng)設計流程分析系統(tǒng)功能和性能要求1劃分功能模塊2設計各子模塊3各子模塊進行綜合、優(yōu)化、仿真3對系統(tǒng)模擬仿真5自上而下的方式如果仿真結果與預期要求不符,應修改設計,再重新仿真!4第四頁,共162頁。3.1數(shù)字系統(tǒng)設計流程圖3-2用PLD實現(xiàn)數(shù)字系統(tǒng)的設計流程模擬仿真設計輸入圖形HDL文本網表輸入設計處理綜合優(yōu)化器件適配布局、布線功能仿真(前仿真)時序仿真(后仿真)在線測試下載編程12335第五頁,共162頁。3.1數(shù)字系統(tǒng)設計流程(1)圖形輸入(GraphicDesignEntry)圖形化、最直接的輸入方式采用自頂向下邏輯分塊的方法優(yōu)點:適合描述連接關系和接口關系;便于進行接口設計和引腳鎖定;容易實現(xiàn)仿真,便于觀察信號;執(zhí)行效率高、運行速度快。缺點:輸入效率較低;不便于描述復雜邏輯功能。1.設計輸入將設計者所設計的電路以開發(fā)軟件要求的某種形式表達出來,并輸入到軟件中。6第六頁,共162頁。3.1數(shù)字系統(tǒng)設計流程(2)HDL文本輸入優(yōu)點:適于描述復雜邏輯功能;便于設計的保存、移植和復用;結果易仿真,便于觀察;適于規(guī)范、易于語言描述、易于綜合、速率較低的電路。缺點:依賴于好的綜合器;描述連接關系和接口關系不直觀。7第七頁,共162頁。3.1數(shù)字系統(tǒng)設計流程(3)標準EDA設計輸入(StandardEDADesignEntry)可直接移植其它EDA工具設計的電路,無須重新輸入可接受的網表有EDIF、VHDL、VerilogHDL格式網表輸入時,兩個系統(tǒng)中采用的庫必須一一對應但仿真時信號不易于觀測PLD器件的設計往往采用層次化的設計方法:將系統(tǒng)劃分為幾個功能模塊;描述系統(tǒng)總功能的模塊放置在最上層,稱為頂層設計,一般用圖形文件表示各子模塊間的連接關系和芯片內部邏輯與管腳的接口關系;描述系統(tǒng)最基本功能的模塊放置在最下層,稱為底層設計,一般用HDL語言描述各子模塊的邏輯功能。
網表輸入8第八頁,共162頁。3.1數(shù)字系統(tǒng)設計流程(1)綜合和優(yōu)化綜合:將模塊化設計產生的多個文件合并為一個網表文件,并使設計層次平面化,即將邏輯描述轉換成一些基本模塊(如觸發(fā)器、邏輯門等)。優(yōu)化:進行邏輯化簡,去除冗余項,盡量減少器件資源的耗用。(2)器件適配(映射)將設計分為多個適合具體器件內部邏輯資源實現(xiàn)的邏輯小塊的形式。(3)布局和布線布局:將已分割的邏輯小塊放到器件內部邏輯資源的具體位置,使易于連線,且連線最少;布線:利用器件的布線資源完成各功能塊之間和反饋信號之間的連接。(3)生成編程文件生成供器件編程使用的數(shù)據(jù)文件——編程目標文件。2.設計處理從設計輸入文件到熔絲圖文件(CPLD)或位流文件(FPGA)的編譯過程。9第九頁,共162頁。3.1數(shù)字系統(tǒng)設計流程(1)功能仿真(前仿真)在設計輸入階段進行,不考慮信號時延的仿真——主要驗證功能是否正確。(2)時序仿真(后仿真)在選擇了具體器件、并完成了布局布線后進行的含有定時關系的仿真——主要驗證功能和時序是否正確。(3)在線測試當器件編程后,利用實驗手段在線測試器件的功能和性能指標。3.模擬仿真用戶可在設計過程的每個階段對每個模塊或整個系統(tǒng)進行模擬仿真。10第十頁,共162頁。3.1數(shù)字系統(tǒng)設計流程兩種編程方式:在系統(tǒng)編程(ISP,In-SystemProgrammable):PLD不必從電路板上取下來,通過下載電纜利用計算機直接對器件進行編程,使器件、電路板或整個電子系統(tǒng)的邏輯功能可隨時進行修改或重構。電路板上必須預留編程接口(如JTAG接口)。專用的編程器編程:PLD必須從電路板上取下來,插入編程器上的器件插座中,對器件進行編程。
3.編程下載將設計階段生成的編程目標文件裝入到PLD器件中。ISP11第十一頁,共162頁。3.3QuartusⅡ簡介一、QuartusⅡ的設計流程二、QuartusⅡ的圖形用戶界面三、QuartusⅡ的圖形用戶界面功能內容概要12第十二頁,共162頁。3.3QuartusⅡ簡介一、QuartusⅡ的設計流程(1)(2)(3)(5)(3)設計要求設計輸入功能仿真綜合布局布線時序分析時序仿真編程、配置設計修改(6)(7)可以使用QuartusⅡ圖形用戶界面、EDA工具界面或命令行界面!全編譯13第十三頁,共162頁。3.3QuartusⅡ簡介二、QuartusⅡ的圖形用戶界面2Status窗口3主工作區(qū)域3ChangeManager窗口1ProjectNavigator窗口5Messages窗口6Tclconsole窗口14第十四頁,共162頁。3.3QuartusⅡ簡介按F1鍵,可打開幫助窗口,即時訪問對話框上的信息、高亮度的菜單命令或彈出式信息;或按Shift+F1鍵,鼠標變?yōu)橐粋€問號,在圖元、宏單元符號等屏幕顯示的任何項目上單擊鼠標左鍵,可獲得該項目的幫助;或單擊工具欄上的幫助按鈕,鼠標也會變?yōu)橐粋€問號,然后單擊想要獲得幫助的項目。如何獲取在線幫助呢??15第十五頁,共162頁。3.3設計實例設計要求首先設計一個半加器,然后用半加器構成全加器。16第十六頁,共162頁。3.3設計實例設計方法:1.首先在資源管理器下創(chuàng)建一個工作目錄。2.在QuatusII中創(chuàng)建一個工程,工程名最好與頂層圖形文件同名。3.子模塊設計:每個模塊可以用HDL語言描述(模塊名最好與程序文件名同名!),對每個模塊進行編譯、仿真,通過后然后生成模塊符號。3.頂層設計:創(chuàng)建一個頂層圖形文件,將各模塊符號放到圖中,添加輸入、輸出引腳,連線;編譯,仿真。5.給輸入、輸出引腳分配引腳號碼,編程下載。千萬記住哦!17第十七頁,共162頁。3.3設計實例建議:初學QuartusII時,不要直接執(zhí)行“Processing>StartSimulation”命令,或直接單擊工具條上的仿真快捷按鈕(因為這樣是對已打開且上次剛剛仿真過的文件進行仿真)!而應執(zhí)行“Processing>SimulationTool”命令,打開仿真器工具窗口,在其中設置仿真類型為Timing或Functional,并確認“Simulationinput”欄中顯示的是當前需要仿真的波形文件,再單擊“Start”,開始仿真。18第十八頁,共162頁。3.3設計實例(5)仿真通過后,執(zhí)行“Create/Update>CreateSymbolFilesforCurrentFile”菜單命令,創(chuàng)建模塊符號。
注意:執(zhí)行“View>FitinWindow”命令,可以使波形縮小到窗口大小,以便于觀察整個波形!19第十九頁,共162頁。3.3設計實例②將未使用引腳指定為輸入:然后在Device頁面中單擊“Device&PinOptions”按鈕,打開“Device&PinOptions”對話框;20第二十頁,共162頁。3.3設計實例選擇“UnusedPins”標簽,在“Reserveallunusedpins”域中選擇“Asinputs,tri-stated”單選鈕。不要選其它項!千萬不要將未使用引腳指定為輸出,否則無法成功下載設計!21第二十一頁,共162頁。3.3設計實例第5步:給輸入、輸出引腳分配引腳號碼,編程下載(1)對頂層圖形文件counter_7seg.bdf進行引腳鎖定;執(zhí)行“Assignnments>AssignmentEditor”菜單命令參見3.6的四、引腳鎖定信號名引腳號22第二十二頁,共162頁。3.5設計輸入一、創(chuàng)建工程二、圖形設計輸入方法三、文本輸入方法四、建立存儲器編輯文件五、創(chuàng)建頂層圖形設計文件內容概要23第二十三頁,共162頁。3.5設計輸入QuartusIITextEditor文本輸入AHDL,VHDL,VerilogHDLMemoryEditor存儲器輸入HEX,MIFSchematicDesignEntry圖形設計輸入3rd-PartyEDATools第3方EDA工具EDIFHDLVQM(VerilogQuartusMapping)Mixing&MatchingDesignFilesAllowedEDA設計輸入方法24第二十四頁,共162頁。3.5設計輸入設計輸入文件QuartusIIMemoryEditorQuartusIITextEditorQuartusIIBlockEditorTop-LevelFile.bdf.gdfTop-leveldesignfilescanbe.bdf,.tdf,.vhd,.vhdl,.v,.vlg,.edifor.edf.bsf.vhdBlockFileSymbolFileTextFileTextFile.vTextFileImportedfromthird-partyEDAtoolsMentorGraphics,Synopsys,Synplicity,etc...GeneratedwithinQuartusIIVHDLSchematicSchematic.tdfTextFileAHDLVerilog.edf.edifTextFile.v,.vlg,.vhd,.vhdl,vqmMegaWizard?Manager25第二十五頁,共162頁。3.5設計輸入一、創(chuàng)建工程1.打開創(chuàng)建工程向導執(zhí)行菜單命令“File>NewProjectWizard”,打開Introduction對話框。單擊“Next”。2.選擇所建立工程的工作目錄,輸入工程名稱、頂層實體名
工程名稱可以是任何名字,建議使用和頂層實體名相同的名字。頂層實體名稱必須和頂層文件名字相同!單擊“Next”。工作目錄和工程名不能有空格和漢字!最好每個工程都有自己的工作目錄!26第二十六頁,共162頁。3.5設計輸入3.加入設計文件(必要時)(1)單擊Add按鈕,從其他工作目錄中選擇所需要的現(xiàn)成的源文件(只是指向該文件位置);(2)單擊“UserLibraryParameters”按鈕,可以加入用戶自己定義的庫函數(shù):選擇其路徑和文件名,單擊“Add”加入。(3)單擊“Next”。
第3步也可以略過,以后再創(chuàng)建設計文件,或者以后再用“Project>Add/RemoveFilesinProject…”命令將其他工作目錄中的文件添加到本工程中。27第二十七頁,共162頁。3.5設計輸入3.指定第三方對代碼進行綜合和仿真的工具(需要時)在安裝QuartusII軟件時,缺省的情況下安裝了綜合和仿真工具,也可以選擇QuartusII軟件支持的其它綜合或仿真工具。在彈出的對話框中,選擇適當?shù)墓ぞ撸蛘呤裁匆膊贿x,單擊“Next”。
28第二十八頁,共162頁。3.5設計輸入5.指定目標器件類型在“Family”欄中選擇“StratixII”,選擇“Yes”單選鈕;
單擊“Next”;在下一對話框中選擇具體的器件型號,然后單擊“Next”。
29第二十九頁,共162頁。3.5設計輸入6.完成在最后一步中,顯示了在前面幾步中所做選擇的信息。確認無誤后單擊“Finish”。
30第三十頁,共162頁。3.5設計輸入執(zhí)行“Assignments>Settings”菜單命令,彈出“Settings”窗口Files——添加和刪除文件;UserLibraries——添加用戶庫;Device——更改器件系列;EDAToolSettings——設置其它EDA工具;TimingAnalyzer——定時分析設置Simulator——仿真設置:選擇功能仿真或時序仿真對工程設置進行修改31第三十一頁,共162頁。3.5設計輸入二、圖形設計輸入方法圖形設計文件的創(chuàng)建利用庫函數(shù)LibraryFunction(Block)畫原理圖邏輯門、觸發(fā)器、引腳和其它基本單元符號Altera兆功能函數(shù)(Megafunction)和LPM(LibraryofParameterizedModules,參數(shù)化的模型庫)為Verilog、VHDL或AHDL設計文件創(chuàng)建符號使用導線和總線連接所有的圖形塊(Block)圖形編輯器(SchematicEditor)的使用創(chuàng)建簡單的測試設計文件來理解Altera的兆功能函數(shù)PLL,LVDSI/O,Memory創(chuàng)建頂層圖形文件便于查看和連接又稱為塊編輯器(BlockEditor),可以原理圖(Schematic)和結構圖(BlockDiagram)形式輸入和編輯圖形設計信息。32第三十二頁,共162頁。3.5設計輸入建立圖形設計文件的方法:1.建立一個新文件執(zhí)行命令,打開“New”對話框;選擇“DeviceDesignFiles”標簽下的“BlockDiagram/SchematicFile”;單擊OK,打開圖形編輯器。文件名后綴為.bdf33第三十三頁,共162頁。3.5設計輸入工作區(qū)域常用快捷按鈕圖形編輯器界面34第三十四頁,共162頁。3.5設計輸入2.輸入圖元和宏功能符號在窗口的空白處雙擊鼠標左鍵,或單擊符號工具按鈕,或選擇菜單“Edit>InsertSymbol”,打開“Symbol”對話框;在“Libraries”欄中單擊某單元庫前的加號,選擇所需圖元或符號名;單擊“OK”。若已知圖元或符號在庫中的名字,可在“Symbol”對話框的“Name”欄中直接鍵入名稱(如input、output)!35第三十五頁,共162頁。3.5設計輸入當符號放置好后,單擊鼠標右鍵,選擇下拉菜單的Properties項,彈出“SymbolProperties”對話框,可修改符號的屬性(如實例名、端口狀態(tài)、LPM的參數(shù)等)。36第三十六頁,共162頁。3.5設計輸入QuartusⅡ的模塊庫(在c:/altera/quartus50/libraries下有3個庫):(1)Megafunctions(兆功能函數(shù)):包含許多可直接使用的參數(shù)化模塊arithmetic(參數(shù)化累加器、乘法器、比較器、計數(shù)器、除法器等)embedded_logic(雙端口RAM)gates(參數(shù)化與門、或門、三態(tài)緩沖器、譯碼器、多路選擇器等)IO(各種I/O接口電路模塊)storage(參數(shù)化D觸發(fā)器、鎖存器、FIFO、ROM等)豐富的設計庫(基本邏輯塊、73系列器件、特殊的邏輯宏函數(shù)、參數(shù)化模塊)37第三十七頁,共162頁。3.5設計輸入(2)others(其他庫):包括與MAX+PLUSⅡ兼容的所有中規(guī)模器件,如73系列器件及特殊的邏輯宏函數(shù)如多路選擇器,計數(shù)器,加法器,比較器,乘法器(3)Primitives(基本單元符號庫):包含所有的Altera基本圖元buffer:緩沖器logic:各種扇入的與門、或門等;other:電源、地等;pin:input,output,bidirstorage:D觸發(fā)器、JK觸發(fā)器、鎖存器等38第三十八頁,共162頁。3.5設計輸入3.結構圖(BlockDiagram)輸入方法自頂向下的設計方法blocktest.bdf39第三十九頁,共162頁。3.5設計輸入3.使用MegaWizardPlug-InManager進行宏功能模塊的實例化Altera提供的宏功能模塊:LPM:LibraryofParamerterizedModules(如乘法器、累加器);MegaCore(如FFT、FIR等);AMMP(AlteraMegafunctionPartnersProgram),如PCI、DDS
MegaWizardPlug-InManager運行一個向導,用于設置參數(shù)值和選擇端口三種方法:方法一:執(zhí)行“Tools>MegaWizardPlug-InManager”菜單命令;方法二:在原理圖設計文件的Symbol對話框中單擊“MegaWizardPlug-InManager”按鈕;方法三:在命令提示符下鍵入qmegawiz命令。預先設計好的設計模塊40第四十頁,共162頁。3.5設計輸入1)(事先在資源管理器下新建一個文件夾)創(chuàng)建一個新的工程(如pipemult.qpf);2)新建一個原理圖文件(如pipemult.bdf);3)使用MegaWizardPlug-InManager構建一個88乘法器:(1)執(zhí)行“Tools>MegaWizardPlug-InManager”菜單命令,彈出一對話框;(2)選擇“Createanewcustommegafunctionvariation”選項,單擊“Next”按鈕,彈出一對話框;(3)在宏功能模塊庫中選擇宏功能模塊(LPM_MULT),選擇輸出文件類型,鍵入輸出文件名(如mult);方法一操作步驟41第四十一頁,共162頁。3.5設計輸入宏功能模塊輸出文件類型輸出文件名42第四十二頁,共162頁。3.5設計輸入(3)單擊“Next”,根據(jù)需要,設置宏功能模塊的端口和參數(shù):
devicefamily:StratixII
output:VerilogHDL
output:mult
dataaportwidth:8
databportwidth:8
2stagepipeline(latency)
generate.v&.bsffiles(5)單擊“Finish”,完成宏功能模塊的實例化。選中43第四十三頁,共162頁。3.5設計輸入3)將剛創(chuàng)建的宏功能模塊添加到原理圖中(1)雙擊原理圖文件(如pipemult.bdf)空白處,打開“Symbol”對話框,展開“Project”,選擇剛創(chuàng)建的宏功能模塊mult,單擊“OK”按鈕;(2)移動鼠標,將宏功能模塊放置到適當位置。44第四十四頁,共162頁。3.5設計輸入5)將其他工作目錄中現(xiàn)成的源文件添加到本工程中執(zhí)行“Project>Add/RemoveFilesinProject”菜單命令,打開Settings對話框,將Lab1中的ram.vhd添加到本工程中。(1)(2)(3)(3)或直接調用c:/…/libraries/megafunctions/storage中的LPM_RAM_DP45第四十五頁,共162頁。3.5設計輸入6)為ram.vhd創(chuàng)建模塊符號ram.bsf打開ram.vhd文件,執(zhí)行“Create/Update>CreateSymbolFilesforCurrentFile”菜單命令。7)將模塊符號ram.bsf放置到原理圖中
方法同第3步8)建立完整的原理圖設計文件(連線、放置引腳、命名)
方法見后面“6.建立完整的原理圖設計文件”46第四十六頁,共162頁。3.5設計輸入1)調入宏功能模塊符號(1)雙擊原理圖文件空白處,打開“Symbol”對話框;(2)在“Libraries”中選擇“c:/altera/quartus50/libraries”下的適當路徑,單擊所需的宏功能模塊;(3)單擊“OK”,將此宏功能模塊放入原理圖中。宏功能模塊實例化的另一種方法:在原理圖設計文件的Symbol對話框中選擇宏功能函數(shù)庫,直接設置宏功能模塊的參數(shù)47第四十七頁,共162頁。3.5設計輸入2)設置需要的端口:雙擊模塊右上角的參數(shù)設置框,彈出“SymbolProperties”對話框,在“Ports”標簽中選擇所需的端口名,將其狀態(tài)設置為“Used”;不用的端口將其狀態(tài)設置為“Unused”。雙擊參數(shù)設置框,則彈出如何使參數(shù)設置框顯示出來?48第四十八頁,共162頁。3.5設計輸入3)設置需要的參數(shù):在“Parameters”標簽中選擇所需的參數(shù)名,設置適當?shù)闹?;單擊“確定”。49第四十九頁,共162頁。3.5設計輸入5.從設計文件創(chuàng)建模塊——為設計好的工程文件生成一個模塊符號文件(BlockSymbolFiles,.bsf),供高層設計調用(1)創(chuàng)建符號執(zhí)行“Create/Update>CreateSymbolFilesforCurrentFile”菜單命令50第五十頁,共162頁。3.5設計輸入(2)調用符號在原理圖中雙擊鼠標左鍵,打開“Symbol”對話框;展開“Project”,選擇剛創(chuàng)建的模塊符號,單擊“OK”按鈕;移動鼠標,將模塊放置到適當位置。51第五十一頁,共162頁。3.5設計輸入(3)編輯符號選中符號,執(zhí)行“Edit>EditSelectedSymbol”菜單命令,或右擊該符號,選擇“EditSelectedSymbol”命令,進入符號編輯界面;調整符號中端口的位置或順序,或調整符號的大??;單擊保存按鈕,保存修改后的符號;在圖形文件中右擊該符號,選擇“UpdateSymbolorBlock…”命令,更新符號。需要修改符號時52第五十二頁,共162頁。3.5設計輸入6.建立完整的原理圖設計文件(連線、放置引腳并命名)(1)連線包括信號線(NodeLine),總線(BusLine)利用窗口左邊的工具箱里的折線按鈕。當需要連接兩個端口時,只需將鼠標移動到其中一個端口上,當鼠標變?yōu)槭中螤顣r,一直按下鼠標并拖動到另一端口,松開左鍵即可。(2)放置輸入和輸出引腳引腳類型:輸入(INPUT),輸出(OUTPUT),雙向(Bidir)雙擊鼠標左鍵,打開“Symbol”對話框,在“Name”框中鍵入“INPUT”(或“OUTPUT”),選擇“OK”。或在primitive的pin庫中選擇。53第五十三頁,共162頁。3.5設計輸入(3)為引線和引腳命名為引線命名:單擊引線,鍵入節(jié)點名。注:對于n位總線,可采用A[n-1..0]的形式命名,如data[7..0]為引腳命名:在引腳的PIN_NAME處雙擊鼠標左鍵,此時PIN_NAME反白顯示,鍵入引腳名,回車,則鼠標指針直接跳到下一個引腳,可繼續(xù)為其他引腳命名。注:輸入引腳和輸出引腳不僅可以是單一的信號,也可表示一組總線,只需將引腳的名字命名為總線名,如d[7..0]即可。54第五十四頁,共162頁。3.5設計輸入7.保存設計文件用File>SaveAs…命令8.設置圖紙大小和方向用File>PageSetup…命令(大小可選擇3x5in或A3、A3Long、A5、A6、B5、B6、C5、DL等)將設計文件添加到當前工程中55第五十五頁,共162頁。3.6設計的編譯一、QuartusⅡ的編譯器的功能二、編譯的步驟三、在底層圖編輯器中觀察或調整適配結果四、引腳鎖定內容概要56第五十六頁,共162頁。3.6設計的編譯一、QuartusⅡ的編譯器的功能編譯器既能接受多種輸入文件格式,又能輸出多種文件格式。輸入文件圖形文件(.bdf);文本文件,如:VerilolgHDL文件(.v),AHDL文件(.tdf),VHDL文件(.vhd);波形輸入文件(.wdf)第三方EDA工具輸入文件,如EDIF文件(.edf),庫映射文件(.lmf),OrCAD文件(.sch),Xilinx文件(.xnf),VQM文件(.vqm)輸出文件設計校驗文件,如模擬器網表文件(.snf),第三方EDA工具(如Modelsim)所用的網表文件(.vo,.vho)編程目標文件,如MAX系列(CPLD)的.pof文件,F(xiàn)LEX10K、ACEX1K、Cyclone、Stratix系列FPGA的.sof文件SimulatorNetlistFileProgrammableObjectFileSRAMObjectFile57第五十七頁,共162頁。3.6設計的編譯處理與設計項目有關的所有設計文件。檢查句法錯誤及普通易犯的設計錯誤。進行邏輯綜合(選擇合適的邏輯化簡算法,去除冗余邏輯)。布局布線。為仿真和定時分析產生輸出文件(.snf或.vo,.vho)。為編程目標器件產生輸出文件(.pof或.sof)。編譯器的功能注:編程文件名與工程名同名;編程文件名不一定同頂層設計文件名;一個工程只有一個編程文件。58第五十八頁,共162頁。3.6設計的編譯功能模塊功能描述Analysis&Synthesis將設計映射到具體器件的基本模塊上(如觸發(fā)器、邏輯門)Fitter在器件中布局布線TimingAnalyzer進行時序分析和性能分析,將延時信息加到網表文件中Assembler產生器件編程文件(.pof,.sof,.hexout,.ttf,.rbf)EDANetlistWriter*產生第三方EDA工具所用的網表文件(如VerilogHDL的輸出文件.vo,VHDL的輸出文件.vho)表3-1QuartusⅡ編譯器功能模塊描述59第五十九頁,共162頁。3.6設計的編譯二、編譯的步驟1.打開要編譯的工程用“Project…”或“Projects”命令2.打開編譯器窗口執(zhí)行“Tools>CompilerTool”命令開始全編譯開始分析和綜合必須先指定要編譯的文件為頂層實體!開始適配開始裝配開始時序分析開始EDA網表復寫60第六十頁,共162頁。3.6設計的編譯3.編譯器選項設置用以控制編譯過程:指定目標器件系列、CompilationProcess設置、Analysis&Synthesis設置、Fitter設置等——所有選項通過Settings對話框進行設置。打開Settings對話框的兩種方法:方法一:執(zhí)行“Assignments>Settings”命令;方法二:單擊工具條上的Settings按鈕。
61第六十一頁,共162頁。3.6設計的編譯Settings對話框的Device頁面指定未使用引腳的狀態(tài)62第六十二頁,共162頁。3.6設計的編譯(1)指定目標器件系列在Settings對話框的Category欄中選擇“Device”,或直接執(zhí)行“Assignments>Device…”命令;然后在Device頁面中進行設置。注意未使用引腳一定要指定為輸入、三態(tài)引腳?。?)CompilationProcess設置在Settings對話框的Category欄中選擇“CompilationProcessSettings”;然后在CompilationProcessSettings頁面中進行設置:采取增量編譯技術:打開“UseSmartcompilation”選項;節(jié)省磁盤空間:打開“Preservefewernodenamestosavediskspace”選項為使重編譯速度加快,一定選中此項!63第六十三頁,共162頁。3.6設計的編譯(3)Analysis&Synthesis設置——用于優(yōu)化設計的分析綜合過程。在Settings對話框的Category欄中選擇“Analysis&SynthesisSettings”;然后在Analysis&SynthesisSettings頁面中進行設置:OptimizationTechnique(Speed,Balanced或Area);選擇支持VHDL和VerilogHDL的版本;綜合網表優(yōu)化(PerformWYSIWYGPrimitiveResynthesis,PerformGate-LevelRegisterRetiming)64第六十四頁,共162頁。3.6設計的編譯(3)Fitter設置——用于控制器件的適配情況及編譯速度。在Settings對話框的Category欄中選擇“FittingSettings”;然后在FittingSettings頁面中進行設置:Timing-drivencompilation;Fittereffort(StandardFit,F(xiàn)astFit,AutoFit);PhysicalSynthesisOptimizations:將適配過程和綜合過程緊密結合起來(基于適配器輸出重新進行綜合):包括組合邏輯的物理綜合、寄存器復制的物理綜合。然后單擊OK,完成設置65第六十五頁,共162頁。3.6設計的編譯3.進行分析綜合分析設計文件,建立工程數(shù)據(jù)庫進行分析和綜合有3種方法方法一:在編譯器窗口中,單擊StartAnalysis&Synthesis按鈕;方法二:執(zhí)行“Processing>Start>StartAnalysis&Synthesis”命令;方法三:單擊工具條上的StartAnalysis&Synthesis快捷按鈕。66第六十六頁,共162頁。3.6設計的編譯分析綜合窗口StatusMessages分析綜合報告67第六十七頁,共162頁。3.6設計的編譯5.啟動編譯器可以單獨運行編譯器的某個模塊,也可以進行全編譯。啟動全編譯過程:(1)執(zhí)行“Processing>StartCompilation”命令,或單擊工具條上的全編譯快捷按鈕
在編譯過程中,自動顯示狀態(tài)窗口、消息窗口和編譯報告窗口。注:編譯是在后臺運行的,此時計算機還可進行其他工作!68第六十八頁,共162頁。3.6設計的編譯設計的全編譯過程StatusMessagesReport窗口69第六十九頁,共162頁。3.6設計的編譯(2)檢查錯誤所有信息、錯誤和警告會在自動打開的Message窗口中顯示:在一條消息上雙擊左鍵,或單擊右鍵,然后從彈出菜單中選擇“Locate>LocateinDesignFile”,可給錯誤信息定位;選擇“Help”,可查看錯誤信息的詳細說明??梢远ㄎ诲e誤在設計文件中的位置!
(3)閱讀編譯報告如果編譯報告窗口已關閉,單擊快捷按鈕可以打開編譯報告。在編譯報告左邊窗口點擊要查看部分前的加號,然后選擇要查看的部分。70第七十頁,共162頁。3.6設計的編譯三、在底層圖編輯器中觀察或調整適配結果底層圖在QuartusⅡ5.0中只有時序逼近底層圖(TimingClosureFloorplan),用于物理器件資源分配、查看布局、查看連接底層圖的顯示方式內部邏輯單元(InteriorCells)——默認顯示方式;內部邏輯陣列塊(InteriorLABs);域視圖(FieldView);器件頂視圖(PackageTop);器件底視圖(PackageBottom)
注:利用View菜單,或在打開的底層圖中單擊右鍵,可以選擇不同的顯示方式!自學!71第七十一頁,共162頁。3.6設計的編譯1.在時序逼近底層圖中查看適配結果(1)打開時序逼近底層圖執(zhí)行“Assignments>TimingClosureFloorplan
”命令;選擇“View>ColorLegendWindow”命令,顯示顏色圖例。72第七十二頁,共162頁。3.6設計的編譯(2)使用時序逼近底層圖查看適配器生成的邏輯布局、用戶分配,進行LogicLock區(qū)域分配,查看布線擁塞情況利用View菜單或在當前視圖上單擊右鍵,可以切換底層圖的顯示方式(3)查看分配和布線執(zhí)行“View>Routing”命令或直接單擊工具條上的快捷按鈕可以查看節(jié)點間路徑、節(jié)點的扇入和扇出、布線延時、物理時序估計、布線擁塞、關鍵路徑等(3)進行位置和時序分配執(zhí)行“Assignments>AssignmentEditor”命令啟動AssignmentEditor進行分配使用NodeFinder進行分配……73第七十三頁,共162頁。3.6設計的編譯pipemult.bdf的PackageTop視圖未分配的引腳編程用引腳已分配的引腳電源所選用器件74第七十四頁,共162頁。3.6設計的編譯四、引腳鎖定對設計中的輸入、輸出引腳指定在器件中的引腳號碼稱之為“引腳鎖定”或“引腳分配”。引腳鎖定分為手動鎖定和自動鎖定手動鎖定——由設計人員指定引腳號碼;自動鎖定——在QuartusII軟件中運行“Processing>Start>StartI/OAssignmentAnalysis”菜單命令手動鎖定有兩種鎖定方式:(1)前鎖定編譯前在分配編輯器(AssignmentEditor)或在底層圖編輯器(FloorplanEditor)中完成鎖定(2)后鎖定在編譯后通過編輯適配結果(修改.qsf文件)來修改鎖定記住哦!75第七十五頁,共162頁。3.6設計的編譯前鎖定有兩種方法:1.在分配編輯器(AssignmentEditor)中完成引腳鎖定(1)打開分配編輯器執(zhí)行“Assignnments>AssignmentEditor”菜單命令,然后在Category欄中選擇pin;或直接選擇“Assignnments>Pins”菜單命令。(2)選擇引腳名在AssignmentEditor界面中,雙擊To單元,從中選擇引腳名(3)指定引腳號雙擊Location單元,從下拉框中指定引腳號(3)完成設計中所有引腳的指定,保存分配76第七十六頁,共162頁。3.6設計的編譯(5)在進行編譯之前,檢查引腳分配是否合法執(zhí)行“Processing>Start>StartI/O
AssignmentAnalysis”菜單命令AssignmentEditor引腳分配界面引腳名編輯欄可用復制、粘貼方法快速復制多個引腳名或引腳號碼,然后在Edit欄中進行修改。引腳號77第七十七頁,共162頁。3.6設計的編譯2.在底層圖編輯器(FloorplanEditor)中完成引腳鎖定很繁瑣,不建議采用!在進行引腳鎖定時有幾點應特別注意:
只有選定器件后,才能進行引腳鎖定!手動鎖定完畢,必須重新編譯!Pin-OutFile只是一個輸出文件,不能用作輸入文件來進行引腳鎖定!如何取消或更改某引腳鎖定呢??78第七十八頁,共162頁。3.6設計的編譯
1.
打開配置文件.qsf文件(其名與工程同名);
2.
在Pin&LocationAssignments處用復制、粘貼的方法增加對輸出、輸入引腳的定義語句,或直接修改引腳號或信號名;
3.保存修改后的.qsf文件。
3.
對原設計文件重新編譯,以生成新的編程下載文件!(.sof,.pof,.hex)。后鎖定千萬別忘了哦!每個設計工程都有一個設置文件.qsf(QuartusSettingsFile),包含所有的設置參數(shù),如器件類型、引腳鎖定、速率及面積的比例、時間參數(shù)的要求和布線設置等。79第七十九頁,共162頁。3.6設計的編譯修改counter_7seg.qsf文件引腳名引腳鎖定信息引腳號80第八十頁,共162頁。3.6設計的編譯自動進行引腳分配除了設計工程要求,輸入輸出引腳已經由外圍電路確定的情況下,一般無須手動鎖定引腳。在運行StartI/OAssignmentAnalysis命令之前若還未進行引腳分配,則可以執(zhí)行“Processing>Start>StartI/O
AssignmentAnalysis”菜單命令,自動完成引腳分配。引腳分配的反向標注當自動完成引腳分配后,可以執(zhí)行“Assignments>Back-Annotate
Assignments…”菜單命令,進行引腳分配的反向標注,將引腳分配保存到.qsf文件中。在哪里可以方便地查看引腳鎖定情況呢??81第八十一頁,共162頁。3.7設計的仿真驗證一、QuartusⅡ仿真器的功能二、創(chuàng)建仿真文件三、進行仿真四、仿真結果分析內容概要82第八十二頁,共162頁。一、QuartusⅡ仿真器的功能1.功能仿真(前仿真)檢驗邏輯功能是否正確。在仿真開始前,必須將要仿真的設計文件設為頂層實體,然后執(zhí)行“Processing>GenerateFunctionalSimulationNetlist”命令,進行功能編譯,產生功能仿真網表文件。編譯過程快。只運行仿真網表的提取,不作布局布線,故輸出相對于輸入沒有延時。需加入激勵信號(用波形編輯器輸入,或用文本編輯器生成)。所有節(jié)點信號均可觀測到。
3.7設計的仿真驗證83第八十三頁,共162頁。decoder_7seg.vwf(功能仿真)參考線輸出輸入輸出相對于輸入沒有延時!3.7設計的仿真驗證84第八十四頁,共162頁。2.時序仿真(后仿真)檢驗邏輯功能是否正確,并驗證器件配置后的時序關系是否正確。在仿真開始前必須執(zhí)行“Processing>StartCompilation”命令,對設計進行全編譯,產生時序仿真網表文件。編譯過程較慢。仿真所有綜合結果,輸出相對于輸入有時間延遲。需加入激勵信號,或利用功能仿真時生成的激勵波形。組合邏輯的節(jié)點信號有可能觀測不到。可以觀察到競爭冒險!3.7設計的仿真驗證什么是競爭冒險?一定要避免嗎??85第八十五頁,共162頁。decoder_7seg.vwf(時序仿真)輸出相對于輸入有延時!競爭冒險3.7設計的仿真驗證86第八十六頁,共162頁。功能仿真時序仿真作用檢驗邏輯功能是否正確檢驗邏輯功能、時序關系是否正確編譯過程執(zhí)行“Processing>GenerateFunctionalSimulationNetlist”命令帶延時的全編譯,執(zhí)行“Processing>StartCompilation”命令編譯速度√快較慢輸出相對輸入無延遲有延遲節(jié)點信號的觀測√可觀測到有可能觀測不到競爭冒險的觀測觀測不到√可觀測到功能仿真與時序仿真的比較3.7設計的仿真驗證87第八十七頁,共162頁。QuartusⅡ仿真器支持的輸入文件矢量波形文件(.vwf);矢量表輸出文件(.tbl);MAX+PLUSⅡ產生的向量文件(.vec)或仿真器通道文件(.scf)3.7設計的仿真驗證當在QuartusⅡ中打開MAX+PLUSⅡ產生的向量文件(.vec)或仿真器通道文件(.scf)后,不能按原來的文件形式保存,只能將其保存為矢量波形文件(.vwf)或矢量表輸出文件(.tbl)。88第八十八頁,共162頁。二、創(chuàng)建仿真文件1.建立一個仿真文件(.vwf)
(1)執(zhí)行命令在New對話框中選擇OtherFiles標簽,文件類型選擇“VectorWaveformFile”;單擊OK,則打開一個空的波形編輯器窗口。設計文件必須已通過編譯!3.7設計的仿真驗證演示:對counter_7seg文件夾中的bcd_counter.v進行功能仿真。89第八十九頁,共162頁。(2)設置仿真的結束時間
默認為1s可根據(jù)需要用Edit>EndTime命令設置(如這里設置為100s)(3)設置網格間距用Edit>GridSize命令(如這里設置為1s)(3)保存文件執(zhí)行“As…”命令,仿真文件名為與工程文件名同名,后綴為.vwf,并選中“Addcurrentproject”復選框,將其加入到本工程中。3.7設計的仿真驗證一般根據(jù)輸出信號的時鐘周期來設置一般設置為與輸入時鐘信號的時鐘周期相同90第九十頁,共162頁。2.在波形文件中添加節(jié)點(1)查找設計中的節(jié)點名(有兩種方法)方法一:執(zhí)行“View>UtilityWindows>NodeFinder”命令,彈出NodeFinder界面;方法二:在波形編輯器左邊Name列的空白處單擊右鍵,在彈出菜單中選擇“InsertNodeorBus…”命令,或雙擊左鍵,則彈出對話框InsertNodeorBus,在其中選擇“NodeFinder…”按鈕。3.7設計的仿真驗證91第九十一頁,共162頁。(2)列出設計中的所有節(jié)點名在NodeFinder界面中,在Filter列表中選擇Pins:all,在Named欄中鍵入“*”,然后單擊List按鈕,則在“NodesFound”中會出現(xiàn)所有節(jié)點名。3.7設計的仿真驗證右箭頭92第九十二頁,共162頁。(3)選擇節(jié)點加入波形文件在NodeFound欄中選擇要加入波形文件中的節(jié)點(可用Shift鍵或Ctrl鍵選擇多個連續(xù)或不連續(xù)的節(jié)點),單擊右箭頭,將所選擇節(jié)點送入“SelectedNodes”欄中。單擊“OK”,則所選的信號和組出現(xiàn)在波形編輯器中。3.7設計的仿真驗證總線信號最好不要選擇單個信號,而是選擇一組信號!一般將輸入信號放在波形編輯器中的上方,輸出信號放在下方——便于觀察波形!93第九十三頁,共162頁。未編輯的輸入信號波形默認為低電平;輸出信號和隱含節(jié)點默認為未定義(X)電平。3.7設計的仿真驗證94第九十四頁,共162頁。3.編輯輸入波形——指定輸入節(jié)點的邏輯電平變化(1)時鐘節(jié)點波形的輸入在時鐘節(jié)點名(如clk)上單擊右鍵,在彈出菜單中選擇“Value>Clock…”命令,或選擇時鐘節(jié)點名后直接單擊圖形工具按鈕OverwriteClock,則彈出Clock對話框;在其中設置時鐘周期(如這里為1s)、相位和占空比。3.7設計的仿真驗證95第九十五頁,共162頁。(2)總線信號波形的輸入在總線節(jié)點名(如data)上單擊右鍵,在彈出菜單中選擇“Value>CountValue…”命令,或直接單擊圖形工具按鈕CountValue,則彈出CountValue對話框;在Counting標簽中設置總線為計數(shù)輸入;在Timing標簽中設置起始、終止時間,計數(shù)的時間間隔。3.7設計的仿真驗證96第九十六頁,共162頁。若在總線節(jié)點名(如data)上單擊右鍵,在彈出菜單中選擇“Value>ArbitraryValue…”命令,或用鼠標選中某段波形,然后雙擊該段波形,則彈出“ArbitraryValue”對話框,可在其中設置整個總線或總線的一段為任意固定值輸入。3.7設計的仿真驗證97第九十七頁,共162頁。(3)任意信號波形輸入在波形編輯器中選擇某輸入節(jié)點,單擊窗口左部的圖形工具按鈕,編輯整個波形;或拖動鼠標選定信號在某個時間段的區(qū)域,單擊圖形工具按鈕;或在選中區(qū)域上單擊右鍵,在Value菜單中選擇需要設置的值,編輯該段波形。若選擇“View>SnaptoGrid”命令,或單擊SnaptoGrid工具按鈕,則拖動鼠標,只能選定網格的整數(shù)倍的波形段。3.7設計的仿真驗證1298第九十八頁,共162頁。高電平未定義邏輯電平使高低電平反相定義一個時鐘定義一個計數(shù)序列低電平高阻態(tài)圖形工具按鈕3.7設計的仿真驗證對齊網格99第九十九頁,共162頁??捎脧椭?、粘貼按鈕快速復制某段波形;對于相鄰的幾個信號,若某時間段的波形相同,可同時選定這幾個信號的該時間段,編輯該段波形。若要定義一組總線的某一段為一個連續(xù)的計數(shù)序列(如1,2,3……),則可利用“定義一個計數(shù)序列”按鈕??筛鶕?jù)需要,采用不同的進制來表示總線信號:右擊該總線名,選擇“Properties”,打開“NodeProperties”對話框,在“Radix”域可選擇BIN(二進制)、UnsignedDecimal(無符號十進制)、OCT(八進制)、HEX(十六進制)技巧基數(shù)3.7設計的仿真驗證100第一百頁,共162頁。3.存盤(用“As”命令)
(文件名與設計文件名相同!)3.7設計的仿真驗證如果進行的是全編譯,則在Simulation欄中一定要選擇Timing!否則仿真會出錯!三、進行仿真1.指定仿真器設置(1)執(zhí)行“Assignments>Settings…”命令,打開Settings對話框。(2)在Category列表中選擇Simulator,則顯示Simulator頁面。(3)若要進行功能仿真,則在Simulation欄中選擇Functional;若要進行時序仿真,則在Simulation欄中選擇Timing。(3)指定仿真文件(5)若希望用仿真結果覆蓋仿真輸入文件,則選中“Overwritesimulationinputsimulationresults”復選框。101第一百零一頁,共162頁。3.7設計的仿真驗證仿真類型仿真文件用仿真結果覆蓋仿真輸入文件102第一百零二頁,共162頁。2.啟動仿真器方法一:執(zhí)行“Processing>StartSimulation”命令,開始仿真。方法二:執(zhí)行“Tools>SimulatorTool”命令,打開“SimulatorTool”窗口,進行仿真設置、啟動或停止仿真器;單擊“Start”,開始仿真。仿真是在后臺進行的,開始仿真后可切換到其他應用程序做其它工作!3.7設計的仿真驗證若要采用不同的仿真方式,則需重新選擇編譯的“Processing”菜單,對項目重新進行編譯!開始仿真停止仿真仿真輸入文件103第一百零三頁,共162頁。3.7設計的仿真驗證當一個工程中有多個子模塊時(1)打開該子模塊文件,執(zhí)行“Project>SetasTop-LevelEntity”菜單命令,然后編譯。(2)創(chuàng)建仿真文件:新建一個.vwf文件,則可將該子模塊中的節(jié)點調入,編輯輸入節(jié)點波形,存盤。(3)仿真:執(zhí)行“Tools>SimulatorTool”命令,打開“SimulatorTool”窗口,指定仿真文件為剛創(chuàng)建的仿真文件,單擊Start,開始仿真。如何對每個子模塊進行仿真呢??104第一百零四頁,共162頁。3.保存仿真結果對仿真結果的保存執(zhí)行“File>SaveCurrentReportSectionAs…”命令,可將仿真結果保存為.sim文件;也可以存為.vwf文件,則覆蓋了原仿真文件。或者在仿真器設置時選中“Overwritesimulationinputsimulationresults”復選框,則將用仿真結果覆蓋原仿真文件。3.7設計的仿真驗證建議先不選中“Overwritesimulationinputsimulationresults”復選框,在確認仿真結果正確后,再用“File>SaveCurrentReportSectionAs…”命令,將其保存為.vwf文件!記得隨時保存正確的仿真結果!105第一百零五頁,共162頁。四、仿真結果分析仿真結束時,若無錯誤,則顯示“零錯誤零警告”消息框。3.7設計的仿真驗證1.查看仿真報告(SimulationReport)(1)打開SimulationReport窗口執(zhí)行“Processing>SimulationReport”命令或在“SimulatorTool”窗口單擊Report按鈕(2)查看仿真波形在仿真報告窗口中,默認打開的即是仿真結果波形;移動參考線,在Value域觀察對應時刻各輸出的邏輯狀態(tài)值是否正確。106第一百零六頁,共162頁。2.使用仿真波形SimulationReport窗口中的波形為只讀的,可進行如下操作:對節(jié)點排序;給波形添加注釋;選擇節(jié)點顯示的基數(shù)(Radix);改變網格大小;與其它波形進行比較當對只讀波形進行操作時,將彈出EditInputVectorFile對話框:3.7設計的仿真驗證若認為仿真結果是正確的,則選擇第一項,單擊OK,則將用仿真結果覆蓋原仿真文件,并進入波形編輯器;否則選擇第二項,不覆蓋原仿真文件,直接進入波形編輯器。107第一百零七頁,共162頁。3.8時序分析一、時序分析基本參數(shù)二、指定時序要求三、進行時序分析四、查看時序分析結果內容概要108第一百零八頁,共162頁。3.8時序分析一、時序分析基本參數(shù)時序分析器(TimingAnalyzer)用于分析設計的時域性能,并協(xié)助引導適配器滿足設計中的時序要求。在進行全編譯過程中,時序分析器自動執(zhí)行,并在編譯報告的TimingAnalyzer中給出時序分析結果。時序設置參數(shù)說明fMAX(最大時鐘頻率)在不違反內部建立時間和保持時間下可達到的最大時鐘頻率tSU(建立時間)在輸入引腳(通常是時鐘引腳)的時鐘信號建立之前,觸發(fā)器、鎖存器或異步RAM的信號輸入必須在輸入引腳處出現(xiàn)的時間長度tH(保持時間)在輸入引腳(通常是時鐘引腳)的時鐘信號建立之后,觸發(fā)器、鎖存器或異步RAM的信號輸入必須在輸入引腳處保持不變的時間長度tPD(引腳到引腳延遲)輸入引腳處的信號經過組合邏輯的傳輸,出現(xiàn)在輸出引腳上時所需的時間109第一百零九頁,共162頁。3.8時序分析建立時間,是指在寄存器的時鐘上升沿到來以前,出現(xiàn)在寄存器輸入端的數(shù)據(jù)保持穩(wěn)定不變的時間。如果建立時間不夠,數(shù)據(jù)將不能在這個時鐘上升沿被打入寄存器。SetupTime保持時間,是指在寄存器的時鐘上升沿到來以后,出現(xiàn)在寄存器輸入端的數(shù)據(jù)穩(wěn)定不變的時間。如果保持時間不夠,數(shù)據(jù)同樣不能被打入寄存器。HoldTime數(shù)據(jù)穩(wěn)定傳輸必須滿足建立時間和保持時間的要求!110第一百一十頁,共162頁。3.8時序分析二、指定時序要求若在設計中未指定時序要求,則時序分析器將使用默認設置執(zhí)行時序分析過程。可以使用時序設置向導或Settings對話框進行時序設置:工程總頻率或各個時鐘信號;延時要求、最短延時要求和路徑切割選項;報告內容;時序驅動編譯選項。在AssignmentEditor中可指定個別時序分配指定個別實體、節(jié)點和引腳的時序要求,使其優(yōu)先于工程時序范圍要求。111第一百一十一頁,共162頁。3.8時序分析1.時序設置向導執(zhí)行“Assignments>TimingWizard…”命令,啟動時序設置向導。112第一百一十二頁,共162頁。3.8時序分析2.使用Settings對話框進行時序設置執(zhí)行“Assignments>TimingSettings…”命令,彈出Settings對話框的TimingRequirements&Options頁面。設置路徑切割選項和報告內容113第一百一十三頁,共162頁。3.8時序分析3.在分配編輯器(AssignmentEditor)中指定個別時序分配執(zhí)行“Assignments>AssignmentEditor”命令,彈出分配編輯器界面。在Category欄中選擇Timing。在分配表格中選擇To單元指定目標節(jié)點;雙擊From單元指定源節(jié)點;雙擊AssignmentName單元指定時序分配的名稱;雙擊Value單元指定目標節(jié)點的時序分配值。執(zhí)行“File>Save”命令,保存設置。114第一百一十四頁,共162頁。3.8時序分析三、進行時序分析通過全編譯過程可以自動運行時序分析或者執(zhí)行其它命令單獨運行時序分析:方法一:執(zhí)行“Processing>Start>StartTimingAnalyzer”命令,自動打開編譯報告窗口,進行時序分析。方法二:執(zhí)行“Processing>Start>StartTimingAnalyzer(FastTimingModel)”命令,自動打開編譯報告窗口,進行快速時序模型分析。方法三:執(zhí)行“Processing>ClassicTimingAnalyzerTool”命令,打開TimingAnalyzerTool窗口,從中可查看tpd、tsu、tco、th等信息。115第一百一十五頁,共162頁。3.8時序分析時序分析器工具窗口制約性能的源節(jié)點關鍵路徑顯示延遲路徑最小時鐘周期制約性能的目標節(jié)點最高工作頻率開始時序分析116第一百一十六頁,共162頁。3.8時序分析再右擊某條信息,可選擇Locate菜單中的選項,以不同的方式定位延時路徑的位置。當單擊“ListPaths”按鈕后,在Messages窗口顯示出10條延遲路徑;117第一百一十七頁,共162頁。3.8時序分析四、查看時序分析結果在TimingAnalyzerTool窗口,或在編譯報告窗口的TimingAnalyzer文件夾中查看時序分析結果??梢栽跁r序分析報告部分右鍵單擊某個參數(shù),從中選擇ListPaths或Locate命令,查看延時路徑信息。118第一百一十八頁,共162頁。3.9器件編程一、對Altera器件的編程方法二、QuartusⅡ的編程方法三、進行器件編程四、SOPC實驗開發(fā)系統(tǒng)GW38-SOPC+簡介內容概要119第一百一十九頁,共162頁。3.9器件編程一、對Altera器件的編程方法QuartusⅡ的編程器(Programmer)使用經編譯生成的編程目標文件進行編程——將其下載到Altera器件中。MAX等E2PROM工藝器件(CPLD)的編程目標文件其后綴為.pof!SRAM工藝FPGA器件的編程目標文件其后綴為.sof!器件編程方法主要有3種:(1)用計算機及Altera專用編程電纜進行編程優(yōu)點:編程方便、迅速,便于修改。缺點:必須有計算機及專用編程電纜,適于實驗室內使用。適于產品研發(fā)階段120第一百二十頁,共162頁。3.9器件編程圖3-3Altera的ByteBlaster并口下載電纜計算機并口(25pin)器件編程接口(10pin)返回編程下載編程下載電纜121第一百二十一頁,共162頁。3.9器件編程(2)用Altera專用串行配置器件PROM(SPROM)進行編程對于APEX20K、ACEX1K、FLEX10K、Cyclone系列和Stratix系列等SRAM工藝器件(即FPGA),配置數(shù)據(jù)可存于串行配置器件SPROM中,加電時再加載到FPGA器件中;此種SPROM可用ByteBlaster、USB-Blaster或Ethernet-Blaster下載電纜進行配置,具有不同容量可供選擇;也可用一片SPROM對多片F(xiàn)PGA器件進行配置。(3)用通用EPROM進行編程需一定的外圍電路對配置數(shù)據(jù)流進行格式轉換,使FPGA能夠接受。優(yōu)點:編程方便,EPROM可多次使用。缺點:需加一定的外圍控制電路。這兩種方法都適于實際系統(tǒng)!122第一百二十二頁,共162頁。3.9器件編程二、QuartusⅡ的編程方法QuartusⅡ的編程器(Programmer)使用經編譯生成的編程目標文件(.pof文件或.sof文件)
進行編程。Altera公司編程器硬件包括:(1)MasterBlaster下載電纜(用于串口或USB口);(2)
ByteBlasterMV下載電纜(用于并口);(3)
ByteBlasterⅡ下載電纜(用于并口);(3)USB-Blaster下載電纜(用于USB口);(5)Ethernet-Blaster下載電纜(用于Ethernet網口);(6)Altera編程單元(APU)(用于CPLD編程)。對串行配置器件提供編程支持123第一百二十三頁,共162頁。3.9器件編程在QuartusⅡ編程器中可以建立一個鏈式描述文件(.cdf)——包含當前編程文件、設計中所用的器件名稱和選項。QuartusⅡ編程器的3種編程模式:(1)被動串行模式(PassiveSerialmode)配置文件從FLASH或配置器件中通過data0引腳串行調入到FPGA中,配置器件是master,F(xiàn)PGA是slave。(2)JTAG模式(采用USB-Blaster、ByteBlasterMV電纜時)配置文件直接下載到FPGA中。(3)主動串行編程模式(ActiveSerialProgrammingmode)
與PS的區(qū)別在于配置器件是slave,F(xiàn)PGA是master。對單個EPCS1或EPCS3串行配置器件進行編程。(3)套接字內編程模式(In-SocketProgrammingmode)用于在Altera編程單元(APU)中對單個CPLD器件進行編程和測試。124第一百二十四頁,共162頁。3.9器件編程三、進行器件編程首先必須指定器件,進行引腳鎖定,并通過了編譯!MAX等E2PROM工藝器件的編程目標文件其后綴為.pof!SRAM工藝FPGA器件的編程目標文件其后綴為.sof!實驗中使用的是杭州康芯公司的SOPC實驗開發(fā)系統(tǒng)GW38-SOPC+(GW38系列),F(xiàn)PGA器件為EP1C12Q230C8(EPF10K10LC83-3)。將編程目標文件下載到目標器件中125第一百二十五頁,共162頁。3.9器件編程這里以Altera公司的NiosⅡ開發(fā)板(Stratix版)為例加以說明,F(xiàn)PGA器件為EP1S10F780C6。1.
硬件連接(1)(必要時)連接LCD模塊連接LCD模塊與插座J12(注意電纜方向不要插反,J12的左下角為Pin1);
(2)連接下載電纜將USB-Blaster下載線的10針插頭與10pin插座J23(其右上角為Pin1)相連接,另一端經USB轉接線后與PC機的USB口相接;(3)連接電源將9VDC電源的一端與電源插座J26相連接,另一端接標簽為EUROPE的電源線后,將電源雙相插頭插入220V交流電源插座;接通電源。126第一百二十六頁,共162頁。3.9器件編程2.打開編程器窗口
執(zhí)行“Tools>Programmer”命令或快捷按鈕,則編程器窗口自動打開<工程文件名>.cdf文件,其中包括當前編程文件和所選器件等信息。編程硬件設置添加其它編程文件編程目標文件與其工程同名!并不是與頂層實體同名!編程器窗口127第一百二十七頁,共162頁。3.9器件編程執(zhí)行“File>SaveAs”命令,保存<工程文件名>.cdf文件。也可以選中窗口中的當前編程文件和所選器件等信息,單擊Delete按鈕將其刪除,然后單擊AddFile…按鈕,添加其它編程文件。128第一百二十八頁,共162頁。3.9器件編程
3.編程硬件設置(1)在編程器窗口的Mode列表中選擇JTAG模式;(2)單擊“HardwareSetup”按鈕,彈出“HardwareSetup”對話框;若Availablehardwarei
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 港口拖車駕駛員勞動合同
- 電影制片廠空調租賃合同
- 婚禮場地土地租賃合同
- 人工智能供貨施工合同
- 保溫隔熱清包工施工合同
- 健身房教練聘用合同模板
- 2024年式吊裝設備租借協(xié)議
- 衛(wèi)生保健外委施工協(xié)議
- 紅十字會急救箱管理辦法
- 出版社晾曬場地施工合同
- 職業(yè)技術學校老年保健與管理專業(yè)(三年制)人才培養(yǎng)方案
- 2024年秋季人教版新教材七年級上冊語文全冊教案(名師教學設計簡案)
- 有子女民政局常用協(xié)議離婚書格式2024年
- 中國介入醫(yī)學白皮書(2021 版)
- 2024中華人民共和國農村集體經濟組織法詳細解讀課件
- 代運營合作服務協(xié)議
- 婚內財產協(xié)議書(2024版)
- 有限空間作業(yè)應急管理制度
- 2024全國普法知識考試題庫及答案
- 化工企業(yè)中試階段及試生產期間的產品能否對外銷售
- 籃球智慧樹知到期末考試答案章節(jié)答案2024年浙江大學
評論
0/150
提交評論