數(shù)字電路軟件實驗:第三章 QuartusⅡ開發(fā)工具_第1頁
數(shù)字電路軟件實驗:第三章 QuartusⅡ開發(fā)工具_第2頁
數(shù)字電路軟件實驗:第三章 QuartusⅡ開發(fā)工具_第3頁
數(shù)字電路軟件實驗:第三章 QuartusⅡ開發(fā)工具_第4頁
數(shù)字電路軟件實驗:第三章 QuartusⅡ開發(fā)工具_第5頁
已閱讀5頁,還剩85頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第三章 Quartus開發(fā)工具3.1 Quartus 簡介3.2 Quartus 設計過程3.3 VHDL設計實例ALTERA公司的專用開發(fā)工具3.1 Quartus 簡介一、Quartus 的特點1、開放的界面 Quartus 軟件可與其它工業(yè)標準的設計輸入、綜合與校驗相連接。目前, Quartus支持與Cadence、Mentor Graphics、Synplicity、Viewlogic等其它公司所提供的EDA工具的接口。2、與結構無關 Quartus 系統(tǒng)的核心Complier支持Altera公司全系列的可編程器件。3、多平臺 Quartus 軟件可在基于486、奔騰PC機的Windo

2、ws NT、 Windows XP 下運行,也可在工作站上運行。4、完全集成化 Quartus 的設計輸入、處理與校驗功能全部集成在統(tǒng)一的開發(fā)環(huán)境下。5、豐富的設計庫 Quartus 提供了豐富的庫單元供設計者調(diào)用。74系列器件庫;特殊邏輯宏功能庫;新型參數(shù)化的兆功能庫。6、模塊化工具 設計人員可以從各種設計輸入、處理和校驗選項中進行選擇從而使設計環(huán)境用戶化,必要時,還可根據(jù)需要添加新功能。7、硬件描述語言(HDL) Quartus 支持VHDL、Verilog HDL、AHDL。8、Megacore功能 Megacore 功能是為復雜的系統(tǒng)級功能提供的,經(jīng)過校驗的HDL網(wǎng)表文件,它能使FLE

3、X10K、FLEX8000、MAX7000、MAX9000器件系列實現(xiàn)最優(yōu)化的設計。9、Opencore特性 Quartus 軟件具有開放核的特點,它允許設計人員添加自己認為有價值的宏函數(shù)。Quartus 可以通過DSP Builder工具與Matlab/Simulink相結合,實現(xiàn)DSP的應用;支持Altera的片上可編程系統(tǒng)(SOPC)開發(fā),集系統(tǒng)級設計,嵌入式軟件開發(fā),可編程邏輯設計于一體,為一種綜合性開發(fā)平臺。二、Quartus 的新特點三、Quartus 軟件的安裝 該軟件按使用的平臺分為PC機版和工作站版,按使用對象分為商業(yè)版、基本和學生版。特別指出:學生版軟件只能使用兩種芯片,E

4、PF7128 SPLCC 847、FLEX10K20TQFP2404安裝學生版需向ALTERA公司申請一個授權碼,申請授權碼的網(wǎng)址為:WWW./發(fā)出申請后24小時內(nèi)即可得到達復。得到授權碼后,按軟件指示操作即可。3.2 Quartus 設計過程設計輸入設計修改功能仿真器件編程在線校驗一、通用設計流程設計編譯時序仿真系統(tǒng)產(chǎn)品設計要求二、Quartus 軟件的組成文本編輯器圖形編輯器編譯器網(wǎng)表提取器數(shù)據(jù)庫建庫器邏輯綜合器適配時間分析器編程器信息處理和層次顯示設計輸入項目編譯項目校驗器件編程1、設計思想簡介數(shù)子系統(tǒng)的設計 這里主要介紹由Chris Clare提出的(Algorithmic State

5、 Machine)即ASM圖法。主要步驟徹底消化設計要求;建立控制算法流程圖ASM圖;ASM圖的硬件實現(xiàn)。關鍵數(shù)子系統(tǒng)一般框圖處理器控制器輸入信號輸出信號 外輸入控制信號 外輸出控制信號控制信號狀態(tài)信號 控制器實際上就是一個狀態(tài)發(fā)生器,它是一個時序電路,其任務就是產(chǎn)生控制信號序列。數(shù)子系統(tǒng)的Top-Down設計 從宏觀的總體要求入手,將較復雜的數(shù)字系統(tǒng)劃分成較簡單的小的子系統(tǒng);通過邏輯和接口設計用各種規(guī)模的集成電路實現(xiàn)所要求的數(shù)字系統(tǒng)。 對所設計的系統(tǒng)通盤考慮,反復推敲并徹底消化理解所設計的系統(tǒng),在此基礎上找到實現(xiàn)該數(shù)字系統(tǒng)的原理和方法; 然后再劃分系統(tǒng)的控制者和被控者,在確定控制者和被控者內(nèi)

6、容時,應力求簡單,易于控制。數(shù)字系統(tǒng)設計方法要領ASM圖法描述系統(tǒng)不是唯一的,應選擇最佳的方案。處理器的設計了解被控對象,根據(jù)ASM圖確定處理器所需的功能部件(如寄存器、計數(shù)器、運算器等)及它們之間的數(shù)據(jù)通道;確定各功能部件所要求的控制信號及處理器產(chǎn)生的狀態(tài)信號??刂破鞯脑O計直接由ASM圖導出相應的硬件電路,它應產(chǎn)生處理器所需的控制命令序列,控制處理器執(zhí)行預定命令。ASM圖符號狀態(tài)框(名稱)101該狀態(tài)的二進制編碼INXAC0ST=1控制器給控制對象的控制命令 ASM圖是控制算法流程圖,它表示事件的精確時間間隔序列,與一般軟件流程圖只表示事件序列有其根本區(qū)別。000001010(P)(Q)(R

7、)10CP狀態(tài)(P)狀態(tài)(Q)狀態(tài)(R) ASM圖內(nèi)蘊涵著時間序列,并且狀態(tài)的改變是在時鐘控制下實現(xiàn)的。 狀態(tài)框內(nèi)的動作均應在相應該狀態(tài)時鐘結束時或結束前完成。還可在該狀態(tài)期間由需要定義其它輸出。條件分支框(判斷框)(A)(B)(C)X01條件分支框和狀態(tài)框A屬于同一個狀態(tài)。X表示外輸入變量,置入分支框內(nèi)。01X=0X=1CP狀態(tài)A狀態(tài)A狀態(tài)C狀態(tài)B 在同一現(xiàn)態(tài)情況下,外輸入X值的不同,次態(tài)可能進入B或C,而這一轉換是在狀態(tài)A結束前完成的。要求外輸入X值在狀態(tài)A期間穩(wěn)定。有條件分支的ASM圖的時間劃分(A)(W)X1X210110X(V)(Y)真值表圖解表示法,X1、X2同等重要。(A)X10

8、1X201(W)(V)(Y)輸入變量X1的優(yōu)先級高于X2, X1起支配作用。條件輸出框在某些狀態(tài)下的輸出命令只有在一定條件下才能輸出,這種輸出稱為條件輸出。(Q)(R)X01Z1Z211(P)條件輸出框和條件分支框皆屬于狀態(tài)P,條件分支框除決定次態(tài)外,還決定條件輸出。 狀態(tài)P的無條件輸出命令為Z1,而條件輸出的命令Z2,只有在狀態(tài)P且外輸入X=0時輸出。條件輸出框和條件分支框皆屬于狀態(tài)P。用ASM圖實現(xiàn)小型數(shù)子系統(tǒng)例題系統(tǒng)時鐘的設計一、設計要求:系統(tǒng)時鐘能在手動或自動兩種方式下運行,自動方式由振蕩器提供一個固定頻率的時鐘;手動方式僅當壓下按鈕時產(chǎn)生一個有效時鐘輸出,否則無輸出。方式選擇開關動作

9、時,決不能截短自動方式的時鐘周期。自動方式工作時,手動方式無效。二、對問題的理解: 應有兩個外輸入信號,消振方式開關信號;消振按鈕信號。 令MAN=1表示手動開關方式; MAN=0表示自動開關方式。 令PB=1表示按鈕按下; PB=0表示按鈕未按下。 令CP表示時鐘,CP=0表示低電平, CP=1表示高電平。三、系統(tǒng)時鐘的控制算法描述:(L1)MAN01CP=011(L0)MAN01CP=10101PBPB10ASM圖內(nèi)蘊涵著時間序列特性,而且狀態(tài)的改變是在時鐘控制下實現(xiàn)的。系統(tǒng)輸出時鐘其周期是ASM圖時鐘的兩倍,自動方式優(yōu)先于手動,所以不會截短自動的波形。例題交通信號燈的設計1、設計要求 當

10、傳感器CR=0時,支線紅燈亮,干線綠燈亮;若在支線C處有車,傳感器CR=1,使干線綠燈先轉換成黃燈再變成紅燈,支線由紅燈變綠燈。若支線持續(xù)有車,則CR=1,支線持續(xù)綠燈,此情況若超過30s,支線綠燈先轉換成黃燈再變成紅燈,與此同時干線由紅燈變成綠燈。但干線綠燈亮的持續(xù)時間未到30s時,即使支線有CR=1輸出,也不能終止干線的綠燈亮。干線支線(C)(C)如圖:2、分析設計要求干線綠燈優(yōu)先,通常亮,故無需傳感器。支線設置傳感器CR,支線有車時CR =1。 假設:兩種綠燈亮的時間相同,兩種黃燈亮的時間也相同。 設一定時器:其起動信號為SMTM,定時器起動后,它將輸出在時間上互不重疊反相的兩個信號TG

11、和TY。3、控制算法描述ASM圖應有四個狀態(tài):HG干線綠燈亮(支線紅燈亮)HY干線黃燈亮(支線紅燈亮)FG支線綠燈亮(干線紅燈亮)FY支線黃燈亮(干線紅燈亮)分析:在HG,若支線有車,且干綠燈已亮30s則,先由HG HY FG。 在FG,若支線無車,或支線綠燈亮已達30s,則,F(xiàn)G FY HG。在每個狀態(tài),應檢測外輸入TG或TY。另外每進入一個狀態(tài),必起動定時器。HL :綠FL : 紅(HG)0 0TGCRSMTMHL :黃FL : 紅(HY)0 101aTYSMTMbFL : 綠HL :紅(FG)1 1TGSMTMFL : 黃HL :紅(FY)1 001aTYSMTMbCR1001a波形發(fā)生

12、器的設計例題輸入變量輸出波形X1X20 00 11 11 0(P) (Q)(R) (S)(P) (Q)(R)(P) (Q)(R)(P) (Q)(R) (S)ASM圖的狀態(tài)數(shù)由最長周期決定,每一個時鐘對應一個狀態(tài)。所以,為4個狀態(tài)。輸入變量在一個菱形框內(nèi)若寫為:X1X2進行“與”邏輯運算。波形發(fā)生器Z=1(P)0 0X1X2Z=1(R)1 1011001(Q)0 1X2Z=1X1(S)1 0Z=0Z=0Z=0用多路選擇器實現(xiàn)ASM圖;每個狀態(tài)一個觸發(fā)器法;基于ROM法實現(xiàn)ASM圖。ASM圖的硬件實現(xiàn)傳統(tǒng)方法ASM圖的硬件實現(xiàn)傳統(tǒng)方法的步驟: 狀態(tài)編碼; 選觸發(fā)器; 由ASM圖導出狀態(tài)轉換表; 由

13、狀態(tài)轉換表寫出觸發(fā)器驅(qū)動方程; 由ASM圖得出輸出方程;(Q)(R)X01Z1Z211(P)例題:用傳統(tǒng)法實現(xiàn)下ASM圖1、編碼分配的不同,只影響組合電路的繁簡程度,不影響電路的可實現(xiàn)性。2、一般情況下,選用JK觸發(fā)器比選用D觸發(fā)器的組合電路簡單。0011103、由ASM圖導出狀態(tài)轉換表現(xiàn)態(tài)次態(tài)Q2Q1XQ2(n+1)Q1(n+1)0 0 00 0 10 1 X1 0 X1 1 X1 01 10 00 00 04、根據(jù)狀態(tài)表寫出觸發(fā)器的驅(qū)動方程5、由ASM圖還可得到輸出方程做出邏輯圖:Q1Q1D1Q2Q2D2XZ2Z1CP要求:系統(tǒng)狀態(tài)小于8個。例題:用多路選擇器實現(xiàn)下ASM圖 在每級觸發(fā)器的

14、輸入端加一個多路選擇器,多路選擇器的輸出加到觸發(fā)器的數(shù)據(jù)輸入端,控制觸發(fā)器產(chǎn)生相應的次態(tài)。 ASM圖有3個狀態(tài),多路選擇器至少應有3個輸入段,所以選4-1多路選擇器。(Q)(R)X01Z1Z211(P)001110多路選擇器實現(xiàn)時的狀態(tài)轉換表現(xiàn) 態(tài)次 態(tài)轉換條件狀態(tài)數(shù)狀態(tài)名稱狀態(tài)名稱Q2(n+1) Q1(n+1) 0(P)X(Q)1 0(R)2(R)(P)1 10 0X13(Q)(P)0 00 0111-(P)由狀態(tài)轉換表寫多路選擇器的數(shù)據(jù)輸入方程:Q1Q1D1Q2Q2D20123ES1S0YMUX4-10123ES1S0YMUX4-11000X000現(xiàn)態(tài)次態(tài)CP用多路選擇器實現(xiàn)的邏輯圖例題:

15、(Q)(R)01X111(P)(S)X2X3X1X4110000Q2Q100011110現(xiàn) 態(tài)次 態(tài)轉換條件狀態(tài)數(shù)狀態(tài)名稱狀態(tài)名稱Q2(n+1) Q1(n+1) 0(P)X1(R)0 1(Q)2(S)1 01 13(Q)(P)0 01 011(R)X2X1X2X1X3X3(R)(P)0 0(S)(P)(R)(S)0 01 01 1X4X1X4X1X4由狀態(tài)轉換表寫多路選擇器的數(shù)據(jù)輸入方程:Q1Q1D1Q2Q2D20123ES1S0YMUX4-10123ES1S0YMUX4-1X30X1+X200X4現(xiàn)態(tài)次態(tài)CPX1+X2X1+X4限于16個狀態(tài)之下的設計 Quartus VHDL設計輸入流程一

16、、新建工程 雙擊桌面上的Quartus 圖標打開主界面,打開主界面。選取菜單中FileNew Project Wizard, 出現(xiàn)新建工程向?qū)Т翱?。最好先建立一個工作目錄D:FPGA項目導航窗口狀態(tài)窗口消息窗口編輯輸入窗口直接點擊Next 進入設置窗口如下圖所示。2. 在工程目錄設定處按Quartus II 自動將工程名稱、頂層設計實體名稱與存放工程的文件夾名稱一樣,同為count10 。 點擊Next 進入添加文件窗口,如果文件夾中存有已錄入的與工程相關的輸入文件,那么可以直接添加到工程中來。在Family 欄中選擇目標芯片系列Cyclone,然后選擇此系列中的具體芯片型號為EP1C6Q24

17、0C8 。在這個窗口中列出了所有前面設置的結果。如果有錯誤可以點擊Back 回去一一修改,否則按Finish 結束。這時在Quartus II 主界面左側的工程導航欄Project Navigator 中顯示本工程的頂層設計文件名稱為divider4 ,如圖 所示。若沒有出現(xiàn)導航欄,可以從菜單欄ViewUtilityProject Navigator 中調(diào)出。 二、新建VHDL 設計文件 在Quartus II 主界面菜單欄中選擇FileNew,彈出新建設計文件窗口如圖 所示。在Device Design Files 頁選中VHDL File 項,點擊OK 按鈕打開VHDL 文本編輯窗口其默認

18、文件名為“Vhdl.vhd” 輸入VHDL 文件有兩種方式:一個是直接在空白處輸入設計文件;另一個方式是通過使用模板來輸入文件。 確認文件保存在本工程文件夾下、實體名和VHDL 設計文件名一致,而且在保存時要勾選“保存為”對話框中下方的“Add file to current project ”選項。三、功能仿真 1、對VHDL 設計文件執(zhí)行分析與綜合 從菜單欄中選擇ProcessingStartStart Analysis&Synthesis 或單擊快捷按鈕選取菜單中ProcessingStart Compilation 或快捷按鈕 執(zhí)行全編譯 2、指定功能仿真模式 選擇菜單中Assignm

19、entssettings 或快捷按鈕3、通過建立波形文件進行仿真 在Quartus II 主界面菜單欄中選擇FileNew,在Other Files 頁選中Vector Waveform File 項,如圖所示。點擊OK 按鈕打開空白波形編輯窗口,其默認文件名為“Waveforml.vwf”。 選擇菜單欄中EditInsert Node or Bus,彈出插入節(jié)點窗口如圖所示: 點擊上圖中的Node Finder 按鈕后 再點擊彈出窗口中的List 按鈕在左側Nodes Found 窗口中選取clkin 及clkout,然后點擊 按鈕將選中信號選取至右側Selected Nodes 窗口中,最

20、后點擊OK 回到插入節(jié)點窗口 Quartus II提供了多種方式來設置信號的仿真激勵 。即選Value子菜單中的Clock,則打開Clock對話框 運行菜單ProcessingGenerate Functional Simulation Net list 命令產(chǎn)生用于功能仿真的網(wǎng)表文件。選取ProcessingStart Simulation 或快捷按鈕執(zhí)行模擬仿真 右鍵菜單中的Zoom 命令將波形放至合適大小,仿真結果波形將出現(xiàn)。 編輯輸入向量對話框給出了兩個單選項:第一,使用仿真報告波形窗口的內(nèi)容去覆蓋仿真文件窗口中的內(nèi)容;其二,跳回仿真文件窗口去進行修改。四、時序仿真選擇菜單中Assig

21、nmentssettings 或快捷按鈕,在左側Category 欄中選中Simulator,然后在右側Simulation mode 的下拉菜欄中選中Timing,如圖所示。通過建立波形文件進行仿真: 在Quartus II 主界面菜單欄中選擇FileNew,在Other Files 頁選中Vector Waveform File 項。點擊OK 按鈕打開空白波形編輯窗口,其默認文件名為“Waveforml.vwf”。對于時序仿真來說,將仿真時間設置在一個合理區(qū)域十分重要! 加入輸入、輸出信號,設置輸入信號周期,保存文件等步驟均都與前面介紹功能仿真時相同。五、引腳鎖定與下載選擇菜單欄中Assi

22、gnments/Pins,彈出引腳分配窗口如圖所示 保存引腳鎖定信息,再做一次全編譯(Start Compilation)以便將引腳鎖定信息編譯進下載文件中。 在Assignment Editor界面中,還支持復制、粘貼功能,設計者可以將引腳分配表通過剪貼板從文本文件copy過來。另外,對于器件中的未使用引腳(保留引腳),一般設置成“三態(tài)”。即從Reserved列中就可將保留引腳設置為輸出“三態(tài)”、輸出接地等不同屬性。六、下載1、設置配置電纜 選擇菜單欄中ToolsProgrammer 或快捷按鈕,彈出窗口如圖所示。 該窗口的硬件信息框中顯示“No Hardware”,表明硬件還沒有接好。這時

23、點擊“Hardware Setup”按鈕設置下載電纜。隨之彈出Hardware Setup對話框,見圖。 本例中采用Altera公司新型的配置電纜ByteBlaster II,ByteBlaster II為并口電纜,對SignalTap II等反饋手段也提供支持。此時,端口自動選擇“LPT1”。2、選擇配置方式由于在count10的設計中,選用的器件是Cyclone系列的EP1C6Q240C8,所以有以下幾種配置模式共選擇:JTAG模式,其優(yōu)先權最高;Passive Serial模式,簡稱PS模式,即被動串行模式;Active Serial Programming模式,簡稱AS模式,即主動串行

24、模式;In-Socket Programming模式,Altera公司編程單元(APU)的專用配置模式。3、添加下載文件 4、配置 在配置設置對話框中勾選中Program/Configure 項。之后點擊“Start”按鈕即開始配置 七、原理圖設計輸入的流程 Quartus II軟件的圖形編輯器(Graphic Editor)進行設計輸入,是一種最為直接、最為熟悉的設計輸入方式。Quartus II 軟件提供了各種邏輯功能符號,主要有: 基本符號模塊庫圖元(Primitives) ,主要有各種邏輯門、觸發(fā)器、輸入/輸出端口、電源和地等。(others)該庫中包含了與Quartus II兼容的中

25、規(guī)模集成電路模塊,如常用的74系列產(chǎn)品。 宏功能(Megafunctions)宏功能函數(shù)庫,主要有Altera公司提供的LPM/ Megafunction 宏功能模塊,該模塊是參數(shù)可定制的、并已經(jīng)完成設計與驗證的復雜邏緝模塊。 Quartus II軟件中的.bdf文件既能包含模塊符號,又能包含原理圖符號。 新建工程和創(chuàng)建模塊符號新建工程的步驟與文本文件設計時完全相同 創(chuàng)建模塊符號的操作如下 : 打開下拉菜單File中的Open命令,打開原來已經(jīng)設計好的decoder7 segments1.vhd文件,再采用下拉菜單File中的Create/Update子菜單中的Create Symbol Fi

26、les for Current File命令,就將當前的decoder7 segments1.vhd文件生成同名的元件符號存放在當前的工作文件夾中。 圖形設計輸入 選擇下拉菜單File中的New,將彈出New對話框,選Device Design Files頁面下的Block Diagram/Schematic File,之后點擊OK按鈕,即打開原理圖編輯窗口: 輸入邏輯功能符號的步驟如下:在空白窗口中任意位置雙擊左鍵,彈出輸入元件窗口Symbol 在符號庫Libraries中點擊“+”按鈕,擴展quartuslibraries文件夾 在storage中可選各種類型的觸發(fā)器,在pin中有輸入、輸

27、出管腳、電源和接地等符號,在others中有74系列的各種中規(guī)模集成電路等等。 點擊OK 按鈕之后,光標變?yōu)槭中颓矣性P碗S之移動。在原理圖編譯窗口的空白圖中適當?shù)奈恢脝螕糇箧I放下元件。然后重復操作可依次放置若干個元件或模塊。 在輸入元件窗口左側庫列表中,選中Project文件夾中decoder7 segments1,點擊OK按鈕后放置在圖紙上。 Quartus II軟件的原理圖編譯器具有“智能”選擇工具連接符號和模塊,包括:節(jié)點、總線和管道。將鼠標移到input元件的管腳上,鼠標自動變成十字形光標,單擊鼠標左鍵,并按住左鍵拖動至count10模塊的clk引腳端放開,就在兩個管腳之間形成一條連線。查看總線的屬性,主要是查看總線的信號連接關系。 給管腳和總線命名,雙擊input 元件打開Pin Properties 窗口,在Pin names(s):欄中鍵入輸入端名稱,如圖所示,點擊確定按鈕退出。最后保

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論