版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第4章常用EDA工具軟件操作指南4.1常用EDA工具軟件安裝指南4.2常用EDA工具軟件操作用例4.3AlteraQuartusⅡ操作指南4.4XilinxISEDesignSuite操作指南4.5LatticeispLEVEL操作指南4.6SynplicitySynplifyPRO操作指南4.7MentorGraphicsModelSim操作指南4.1常用EDA工具軟件安裝指南
1.硬件配置的選擇
EDA軟件隨著功能越來越多,性能越來越好,相應(yīng)地對計算機硬件配置的要求也越來越高,包括硬盤容量、內(nèi)存容量、顯示器、通信接口、操作系統(tǒng)等。如果安裝軟件的計算機硬件配置低于軟件安裝與運行的最低要求,就會使系統(tǒng)無法完成安裝或無法正常運行。因此在安裝計算機軟件前,先要閱讀有關(guān)說明,應(yīng)滿足系統(tǒng)安裝與運行的最低配置要求。雖然現(xiàn)在計算機有包括USB接口在內(nèi)的很多通信接口方式,但是很多EDA實驗開發(fā)系統(tǒng)仍然需要計算機的并行打印機接口進行編程下載。因此為了自己使用方便,購買計算機時選擇含并行打印機接口的主板是必需的。
2.按說明進行安裝有關(guān)EDA軟件的安裝方法一般放在readme文件中。根據(jù)說明運行安裝程序,并依照提示進行安裝過程中的各種選擇,最后完成軟件程序的安裝。
3.授權(quán)文件的準備
EDA軟件的授權(quán),除了使用傳統(tǒng)的軟件序列號進行授權(quán)外,更多的是采用授權(quán)文件的形式進行合法使用,因此購買EDA軟件時請索取授權(quán)文件,或通過網(wǎng)絡(luò)獲取授權(quán)。對于EDA軟件的網(wǎng)絡(luò)版或浮動授權(quán),必須根據(jù)需要修改授權(quán)文件中的有關(guān)參數(shù)。例如安裝QuartusⅡ網(wǎng)絡(luò)版時,需要先進行網(wǎng)絡(luò)版授權(quán)文件的修改,修改方法就是將license.dat以文本方式打開,再把文件中的【HOSTID=xxxxxxxxxxxx】主機網(wǎng)卡物理地址使用替換的方式替換為自己網(wǎng)卡的物理地址(如00E04C1EA996),替換完畢將license.dat重新存盤。網(wǎng)卡物理地址的查找方法:【程序】→【附件】→【C:\命令提示符】→【X:\IPconfig/all↙】。圖4.1是網(wǎng)卡物理地址獲取示意圖。(a)進入DOS操作狀態(tài)(b)網(wǎng)卡物理地址獲取操作及結(jié)果圖4.1網(wǎng)卡物理地址獲取示意圖
4.軟件授權(quán)的設(shè)置軟件授權(quán)的設(shè)置就是根據(jù)系統(tǒng)的要求選擇授權(quán)方式及設(shè)定授權(quán)文件。授權(quán)方式一般有評估授權(quán)、固定授權(quán)和浮動授權(quán)三種。軟件安裝好后,運行軟件,根據(jù)提示進行授權(quán)設(shè)置,或選擇授權(quán)的子菜單項進行授權(quán)設(shè)置。圖4.2是QuartusⅡ安裝時選擇授權(quán)類型的示意圖;圖4.3是QuartusⅡ安裝時設(shè)置授權(quán)文件的示意圖。圖4.2Quartus?Ⅱ安裝時選擇授權(quán)類型示意圖圖4.3Quartus?Ⅱ安裝時設(shè)置授權(quán)文件示意圖
5.環(huán)境變量的設(shè)置有的EDA軟件安裝好后必須設(shè)置環(huán)境變量才能正常使用。同時安裝有多個EDA軟件,必須修改環(huán)境變量才能正常使用。因此安裝好EDA軟件后,需要設(shè)置或修改環(huán)境變量。環(huán)境變量的設(shè)置/修改方法是:首先選中【我的電腦】,用鼠標右點后選中【屬性】,在【屬性】設(shè)置框中選擇【高級】屬性;接著在彈出的高級屬性設(shè)置框中點擊【環(huán)境變量】設(shè)置項,在彈出的【環(huán)境變量】設(shè)置框中選擇新建環(huán)境變量或編輯【環(huán)境變量】;最后輸入變量名、變量值。若系統(tǒng)需設(shè)置多個授權(quán)文件,則編輯系統(tǒng)變量值時應(yīng)用“;”分隔各個授權(quán)文件。圖4.4是設(shè)置環(huán)境變量的操作示意圖。
6.驅(qū)動程序的安裝有的EDA軟件,在安裝時就把有關(guān)硬件的驅(qū)動程序一起安裝了,但是有的EDA軟件安裝好后還要單獨進行有關(guān)硬件驅(qū)動程序的安裝。驅(qū)動程序安裝好后,還要運行EDA軟件進行有關(guān)硬件的設(shè)置,之后硬件才能真正使用。圖4.4設(shè)置環(huán)境變量操作示意圖4.2常用EDA工具軟件操作用例4.2.14位十進制計數(shù)器電路
【例4.1】用VHDL設(shè)計一個計數(shù)范圍為0~9999的4位十進制計數(shù)器電路CNT9999。為了簡化設(shè)計并便于顯示,該計數(shù)器分為兩個層次,底層電路包括四個十進制計數(shù)器模塊CNT10,再由這四個模塊按照圖4.5所示的原理圖構(gòu)成頂層電路CNT9999。其中,底層和頂層電路均采用VHDL文本輸入。圖4.5CNT9999電路原理圖有關(guān)VHDL程序如下:
(1)CNT10的VHDL源程序。
--CNT10.VHD
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCNT10IS
PORT(CLK:INSTD_LOGIC;
CLR:INSTD_LOGIC;
ENA:INSTD_LOGIC;
CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);
CO:OUTSTD_LOGIC);
ENDENTITYCNT10;
ARCHITECTUREARTOFCNT10IS
SIGNALCQI:STD_LOGIC_VECTOR(3DOWNTO0);
BEGIN
PROCESS(CLK,CLR,ENA)IS
BEGIN
IFCLR='1'THENCQI<="0000";
ELSIFCLK'EVENTANDCLK='1'THEN
IFENA='1'THEN
IFCQI="1001"THEN
CQI<="0000";
ELSE
CQI<=CQI+'1';
ENDIF;
ENDIF;
ENDIF;
ENDPROCESS;
PROCESS(CLK,CQI)IS
BEGIN
IFCLK'EVENTANDCLK='1'THEN
IFCQI<"1001"THEN
CO<='0';
ELSE
CO<='1';
ENDIF;
ENDIF;
ENDPROCESS;
CQ<=CQI;
ENDARCHITECTUREART;
(2)?CNT9999的VHDL源程序。
--CNT9999.VHD
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYCNT9999IS
PORT(CLR:INSTD_LOGIC;
CLK:INSTD_LOGIC;
ENA:INSTD_LOGIC;
DOUT:OUTSTD_LOGIC_VECTOR(15DOWNTO0));
ENDENTITYCNT9999;
ARCHITECTUREARTOFCNT9999IS
COMPONENTCNT10IS
PORT(CLK,CLR,ENA:INSTD_LOGIC;
CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);
CO:OUTSTD_LOGIC);
ENDCOMPONENTCNT10;
SIGNALS0,S1,S2,S3:STD_LOGIC;
BEGIN
U0:CNT10PORTMAP(CLK,CLR,ENA,DOUT(3DOWNTO0),S0);
U1:CNT10PORTMAP(S0,CLR,ENA,DOUT(7DOWNTO4),S1);
U2:CNT10PORTMAP(S1,CLR,ENA,DOUT(11DOWNTO8),S2);
U3:CNT10PORTMAP(S2,CLR,ENA,DOUT(15DOWNTO12),S3);
ENDARCHITECTUREART;4.2.2計數(shù)動態(tài)掃描顯示電路
【例4.2】用VHDL設(shè)計一個計數(shù)范圍為0~9999的計數(shù)器,并將計數(shù)結(jié)果使用動態(tài)掃描的方式進行顯示。為了簡化設(shè)計并便于顯示,該計數(shù)動態(tài)掃描顯示電路分為兩個層次,底層電路包括四個十進制計數(shù)器模塊CNT10、動態(tài)顯示控制信號產(chǎn)生模塊CTRLS、數(shù)據(jù)動態(tài)顯示控制模塊DISPLAY等六個模塊,再由這六個模塊按照圖4.6所示的原理圖構(gòu)成頂層電路DTCNT9999。圖4.60~9999計數(shù)動態(tài)顯示電路原理圖其中,底層的六個模塊用VHDL文本輸入,頂層的電路系統(tǒng)則采用原理圖輸入。DTCNT9999中的CLK1是計數(shù)時鐘信號;CLK2是動態(tài)掃描控制時鐘信號,要求在24?Hz以上;CLR為清零信號;ENA為計數(shù)時鐘信號;COM為數(shù)碼管公共端控制信號;SEG為數(shù)碼管的顯示驅(qū)動端,分別接a~g。十進制計數(shù)器模塊CNT10的VHDL程序見例題4.1,其余兩個模塊的VHDL程序如下:
(1)?CTRLS的VHDL源程序。
--CTRLS.VHD
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCTRLSIS
PORT(CLK:INSTD_LOGIC;
SEL:OUTSTD_LOGIC_VECTOR(2DOWNTO0));
ENDENTITYCTRLS;
ARCHITECTUREARTOFCTRLSIS
SIGNALCNT:STD_LOGIC_VECTOR(2DOWNTO0);
BEGIN
PROCESS(CLK)IS
BEGIN
IFCLK'EVENTANDCLK='1'THEN
IFCNT="111"THEN
CNT<="000";
ELSE
CNT<=CNT+'1';
ENDIF;
ENDIF;
ENDPROCESS;
SEL<=CNT;
ENDARCHITECTUREART;
(2)?DISPLAY的VHDL源程序。
--DISPLAY.VHD
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYDISPLAYIS
PORT(SEL:INSTD_LOGIC_VECTOR(2DOWNTO0);
DATAIN:INSTD_LOGIC_VECTOR(15DOWNTO0);
COM:OUTSTD_LOGIC_VECTOR(7DOWNTO0);
--LEDW:OUTSTD_LOGIC_VECTOR(2DOWNTO0);
SEG:OUTSTD_LOGIC_VECTOR(7DOWNTO0));
WHEN"110"=>COM<="10111111";
WHEN"111"=>COM<="01111111";
WHENOTHERS=>COM<="11111111";
ENDCASE;
ENDPROCESSP1;
--LEDW<=SEL;
P2:PROCESS(SEL)
BEGIN
CASESELIS
WHEN"000"=>DATA<=DATAIN(3DOWNTO0);
WHEN"001"=>DATA<=DATAIN(7DOWNTO4);
WHEN"010"=>DATA<=DATAIN(11DOWNTO8);
WHEN"011"=>DATA<=DATAIN(15DOWNTO12);
WHENOTHERS=>DATA<="0000";
ENDCASE;
CASEDATAIS
WHEN"0000"=>SEG<="00111111"; --3FH
WHEN"0001"=>SEG<="00000110"; --06H
WHEN"0010"=>SEG<="01011011"; --5BH
WHEN"0011"=>SEG<="01001111"; --4FH
WHEN"0100"=>SEG<="01100110"; --66H
WHEN"0101"=>SEG<="01101101"; --6DH
WHEN"0110"=>SEG<="01111101"; --7DH
WHEN"0111"=>SEG<="00000111"; --07H
WHEN"1000"=>SEG<="01111111"; --7FH
WHEN"1001"=>SEG<="01101111"; --6FH
WHENOTHERS=>SEG<="00000000"; --00H
ENDCASE;
ENDPROCESSP2;
ENDARCHITECTUREART;
4.2.3EDA仿真測試模型及程序
1.EDA仿真測試模型使用EDA技術(shù)進行電子系統(tǒng)設(shè)計仿真測試的模型如圖4.7所示。仿真的基本步驟如下:
(1)分析系統(tǒng)設(shè)計要求和設(shè)計思想,弄懂系統(tǒng)的工作原理/工作流程。
(2)了解各種輸入信號及要求,設(shè)置各種輸入激勵信號:各輸入信號本身的要求,相互之間的要求(如輸入的先后、時間間隔的大小、上升沿/下降沿等);各種輸入信號的設(shè)置
(有兩種,分別為仿真波形直接設(shè)置和測試程序文本設(shè)置);測試用例應(yīng)盡可能覆蓋整個系統(tǒng)的各種可能情況。
(3)估計各種輸出的期望值:對應(yīng)各種可能的輸入,估計其輸出期望值。
(4)進行實際仿真及結(jié)果分析:執(zhí)行仿真操作,進行實際仿真,并將仿真結(jié)果與期望值進行比較與分析。
(5)仿真改進與完善:若仿真結(jié)果與期望值不一致,則查找原因,進行程序和仿真設(shè)置值修改,直到完全達到要求為止。圖4.7EDA仿真測試模型
2.EDA仿真測試程序
EDA仿真測試程序就是通過以文本編程的方式給被測試的設(shè)計實體提供輸入信號,一般包括兩個部分:①根據(jù)測試的各種要求給輸入信號進行賦值;②通過元件例化語句建立與測試平臺內(nèi)輸入信號和輸出信號的映射關(guān)系。下面給出例4.1中CNT10和CNT9999的VHDL仿真測試程序。
【例4.3】0~9999的4位十進制計數(shù)器電路的VHDL仿真測試程序。
(1)?CNT10的仿真測試程序。
--CNT10_TB.VHD
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCNT10_TBIS
ENDENTITYCNT10_TB;
ARCHITECTUREARTOFCNT10_TBIS
COMPONENTCNT10IS
PORT(CLK:INSTD_LOGIC;
CLR:INSTD_LOGIC;
ENA:INSTD_LOGIC;
CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);
CO:OUTSTD_LOGIC);
ENDCOMPONENTCNT10;
--INPUTSIGNALS
SIGNALCLK:STD_LOGIC;
SIGNALCLR:STD_LOGIC;
SIGNALENA:STD_LOGIC;
--OUTPUTSIGNALS
SIGNALCQ:STD_LOGIC_VECTOR(3DOWNTO0);
SIGNALCO:STD_LOGIC;
BEGIN
UUT:CNT10PORTMAP(CLK=>CLK,CLR=>CLR,ENA=>ENA,CQ=>CQ,CO=>CO);
PROCESS
BEGIN
CLK<='0';
LOOPCLK<='1','0'AFTER5NS;WAITFOR10NS;ENDLOOP;
ENDPROCESS;
CLR<='1','0'AFTER20NS,'1'AFTER1000NS;
ENA<='0','1'AFTER40NS,'0'AFTER1000NS;
ENDARCHITECTUREART;
(2)?CNT9999的仿真測試程序。
--CNT9999_TB.VHD
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYCNT9999_TBIS
ENDENTITYCNT9999_TB;
ARCHITECTUREARTOFCNT9999_TBIS
COMPONENTCNT9999IS
PORT(CLK:INSTD_LOGIC;
CLR:INSTD_LOGIC;
ENA:INSTD_LOGIC;
DOUT:OUTSTD_LOGIC_VECTOR(15DOWNTO0));
ENDCOMPONENTCNT9999;
--INPUTSIGNALS
SIGNALCLK:STD_LOGIC;
SIGNALCLR:STD_LOGIC;
SIGNALENA:STD_LOGIC;
--OUTPUTSIGNALS
SIGNALDOUT:STD_LOGIC_VECTOR(15DOWNTO0);
BEGIN
UUT1:CNT9999PORTMAP(CLK=>CLK,CLR=>CLR,ENA=>ENA,DOUT=>DOUT);
PROCESS
BEGIN
CLK<='0';
LOOPCLK<='1','0'AFTER5NS;WAITFOR10NS;ENDLOOP;
ENDPROCESS;
CLR<='1','0'AFTER20NS,'1'AFTER1600NS;
ENA<='0','1'AFTER40NS,'0'AFTER1600NS;
ENDARCHITECTUREART;4.3AlteraQuartusⅡ操作指南4.3.1Quartus?Ⅱ的初步認識
1.Quartus?Ⅱ的主界面介紹
Quartus?Ⅱ8.0的主菜單包括:【File】菜單,主要功能是新建、打開和保存一個工程或資源文件;【Edit】菜單,主要包含了一些與文本編輯相關(guān)的功能選項;【View】菜單,主要功能是隱藏或顯示工程管理器、管腳查找器等操作視圖;【Project】菜單,主要功能是進行工程的一些操作;【Assignment】菜單,主要功能是對工程進行相關(guān)設(shè)置操作;【Processing】菜單,包含了對工程的一些操作命令或子菜單項;【Tools】菜單,包含了進行設(shè)計的一些操作工具;【W(wǎng)indow】菜單,主要功能是排列規(guī)劃窗口,使讀者容易閱讀和管理。圖4.8是Quartus?Ⅱ8.0的主界面及工程信息分布圖。圖4.8QuartusⅡ8.0的主界面及工程信息分布圖
2.文件及工程建立先執(zhí)行【File】→【New】命令,新建源程序,新建文件類型的選擇界面如圖4.9所示。再執(zhí)行【File】→【NewProjectWizard】命令,如圖4.10所示,打開新建工程向?qū)В鶕?jù)提示進行有關(guān)設(shè)置或選擇,創(chuàng)建一個新的工程,并要求工程名與頂層文件名一致。對于已經(jīng)建立的文件或工程,需要使用時打開即可。圖4.9新建文件類型的選擇界面圖4.10新建工程向?qū)Р僮?/p>
3.工程實現(xiàn)的設(shè)置工程實現(xiàn)設(shè)置主要包括指定目標器件、編譯過程設(shè)置、EDA工具選擇、Analysis&Synthesis設(shè)置、Fitter(適配)設(shè)置、仿真設(shè)置等。工程設(shè)置既可在建立工程的過程中根據(jù)提示進行設(shè)置,也可在建立工程的過程中跳過某些設(shè)置項,而在工程建立后對工程實現(xiàn)進行設(shè)置或修改。圖4.11是在已建立工程的基礎(chǔ)上對工程實現(xiàn)設(shè)置的一個操作界面。圖4.11工程實現(xiàn)設(shè)置的一個操作界面
4.工程編譯及分析工程編譯及分析包括編譯方式選擇、啟動編譯器和查看編譯結(jié)果。查看編譯結(jié)果包括查看邏輯適配資源報告、RTL視圖、時序分析結(jié)果等。圖4.12是工程編譯的形式的操作選擇圖。圖4.12工程編譯的形式的操作選擇圖
5.工程仿真及分析工程仿真及分析步驟為:①建立仿真波形文件或仿真測試文本程序;②設(shè)置仿真器;③運行有關(guān)仿真器,以進行仿真;④進行仿真結(jié)果分析(包括查看仿真波形報告,分析仿真波形)。圖4.13是仿真操作選擇界面。圖4.13仿真操作選擇界面
6.芯片的管腳鎖定芯片的管腳鎖定就是將設(shè)計實體的管腳與目標芯片特定的可輸入輸出管腳建立一一映射的過程。它包括兩個方面:一是需設(shè)定未用的管腳;二是根據(jù)需要進行管腳的鎖定。圖4.14是管腳鎖定的操作界面。圖4.14管腳鎖定操作界面
7.編程下載及驗證編程下載及驗證步驟包括:①編程下載硬件準備;②打開編程器窗口;③建立被動串行配置鏈;④器件編程下載。圖4.15是編程下載的操作界面。對于只含一個模塊的系統(tǒng),其設(shè)計與測試過程可按上述步驟進行,但對含有多個模塊多個層次的設(shè)計與測試,通常按照自底向上的方法進行設(shè)計與測試,因此往往是2~5步交錯在一起先進行低層次各模塊的設(shè)計,待低層次各模塊的設(shè)計與測試完畢后,再按照2~7步進行頂層模塊的設(shè)計與測試。圖4.15編程下載的操作界面4.3.2Quartus?Ⅱ的基本操作
【例4.4】使用QuartusⅡ設(shè)計和測試例4.1中的CNT9999電路。
1.文件及工程建立首先為該設(shè)計(工程)建立一個目錄,如F:\EDA115\EDA115CX\4.3\CNT9999,然后運行QuartusⅡ8.0,進入QuartusⅡ8.0集成環(huán)境。
1)新建文件在QuartusⅡ8.0集成環(huán)境屏幕上方選擇“新建文件”按鈕,或選擇菜單【File】→【New】,出現(xiàn)如圖4.16所示的對話框,在框中選中【VHDLFile】,單擊【OK】按鈕,即選中了文本編輯方式。在出現(xiàn)的文本編輯窗口中輸入例4.1所示的CNT10.VHD源程序。圖4.16QuartusⅡ8.0新建文件類型的選擇框輸入完畢后,選擇菜單【Flie】→【SaveAs】,即出現(xiàn)文件保存對話框。首先選擇存放本文件的目錄F:\EDA115\EDA115CX\4.3\CNT9999,然后在【文件名】框中輸入文件名CNT10,然后單擊【保存】按鈕,即把輸入的文件保存在指定的目錄中。圖4.17是新建的文件CNT10.VHD。根據(jù)同樣的方法輸入并保存CNT9999.VHD。圖4.17新建的文件CNT10.VHD
2)新建工程
QuartusⅡ?qū)⒚宽椩O(shè)計均看成是一個工程。由于本設(shè)計分為兩個層次,根據(jù)自底向上的設(shè)計與調(diào)試原則,因此需要先將底層的模塊設(shè)計分別建立各自的工程并將其調(diào)試好,最后才進行頂層的電路系統(tǒng)的設(shè)計。下面以CNT9999模塊工程的建立為例來說明工程建立方法。執(zhí)行【File】→【NewProjectWizard】命令,打開新建工程向?qū)?見圖4.18),將出現(xiàn)如圖4.19所示的對話框。圖4.18新建工程——操作子菜單圖4.19中最上面一欄指示工作目錄,可單擊最上面一欄右側(cè)的按鈕,找到相應(yīng)目錄下的文件(一般為頂層設(shè)計文件)。這里選擇CNT9999.VHD,將其打開,圖中的第二欄為項目名稱,可以為任何名字,推薦為頂層設(shè)計的文件名。第三欄為頂層設(shè)計的實體名。設(shè)置完后,可直接單擊【Finish】按鈕結(jié)束工程建立。若單擊【Next】按鈕,則接著會出現(xiàn)添加項目文件、器件選擇、EDA工具選擇等操作選擇提示框,可根據(jù)需要進行有關(guān)設(shè)置。圖4.19新建工程——工程參數(shù)設(shè)置
3)將文件添加到對應(yīng)的工程執(zhí)行圖4.20所示的添加文件到工程操作子菜單,彈出如圖4.21所示的添加文件操作界面,最上面的一欄【FileName】用于加入設(shè)計文件,可單擊按鈕,找到相應(yīng)的目錄下的文件并加入。單擊【AddAll】按鈕,將設(shè)定目錄下的所有VHDL文件加入到此工程中。設(shè)置完成后,單擊【OK】按鈕即可。圖4.20添加文件到工程操作子菜單圖4.21添加文件操作界面
2.工程實現(xiàn)的設(shè)置在對工程進行編譯前,需要進行有關(guān)工程實現(xiàn)的設(shè)置。若工程編譯后對工程有關(guān)設(shè)置進行了修改,需重新進行編譯,有關(guān)修改設(shè)計才能真正有效。
1)目標器件設(shè)置
(1)選擇目標芯片。單擊【Assignments】菜單下的【Device】,打開如圖4.22所示的對話框,先選擇目標芯片系列,再選擇目標芯片型號規(guī)格。首先在【Family】欄中選擇Cyclone?Ⅱ系列;然后在【Targetdevice】選項框中選擇【Specificdeviceselectedin'Availabledevices'list】,即選擇一個確定的目標芯片。再在【Availabledevices】列表中選擇具體芯片EP2C8Q208C8N。圖4.22目標芯片選擇
(2)選擇配置器件的工作方式。單擊圖4.22中的【Device&PinOptions…】按鈕,進入如圖4.23所示的選擇窗口。首先選擇【General】項,在【Options】欄中選中【Auto-restartconfigurationaftererror】,使對FPGA配置失敗后能自動重新配置,并加入JTAG用戶編碼。當(dāng)鼠標選中相應(yīng)的項目時,下面的【Description】欄將有相應(yīng)的說明。圖4.23選擇配置器件的工作方式
(3)選擇配置器件的編程方式。PC機對FPGA的在系統(tǒng)編程通常采用JTAG下載方式。如果應(yīng)用系統(tǒng)需要脫離PC機工作,則需要將配置數(shù)據(jù)存放在Flash中,通過主動串行模式(ASMode)和被動串行模式(PSMode)進行配置。按照圖4.24所示選擇合適的配置器件的編程方式。圖4.24選擇配置器件的編程方式
(4)選擇輸出設(shè)置。單擊圖4.24中的【ProgrammingFiles】欄,打開【ProgrammingFiles】頁,選中【Hexadecimal(Intel-Format)outputFiles】,此時在生成下載文件的同時,產(chǎn)生二進制配置文件*.hexout。此文件用于單片機與EPROM構(gòu)成的FPGA配置電路系統(tǒng)。
(5)選擇目標芯片的閑置引腳的狀態(tài)。點擊圖4.24中的【UnusedPins】欄,出現(xiàn)如圖4.25所示的窗口。對設(shè)計中未用到的器件引腳,有三種處理方式:輸入引腳(呈高組態(tài))、輸出引腳(呈低電平)或輸出引腳(輸出不定狀態(tài))。為了避免未用到的引腳對應(yīng)用系統(tǒng)產(chǎn)生影響,甚至損壞芯片,通常情況下選擇第一項。圖4.25目標芯片未用引腳的設(shè)置
2)編譯過程設(shè)置根據(jù)圖4.26所示的編譯過程設(shè)置選項進行合適的選擇。圖4.26編譯過程設(shè)置
3)?EDA工具選擇根據(jù)圖4.27所示的EDA工具設(shè)置選項進行合適的選擇。圖4.27EDA工具選擇圖4)?Analysis&Synthesis設(shè)置根據(jù)圖4.28所示的Analysis&Synthesis設(shè)置選項進行合適的選擇。圖4.28Analysis&Synthesis設(shè)置
5)?Fitter(適配)設(shè)置根據(jù)圖4.29所示的Fitter設(shè)置選項進行合適的選擇。圖4.29Fitter(適配)設(shè)置
6)仿真設(shè)置根據(jù)圖4.30所示的仿真設(shè)置選項進行合適的選擇。圖4.30仿真設(shè)置
3.工程編譯及分析
QuartusⅡ的編譯器由一系列處理模塊構(gòu)成,這些模塊完成對設(shè)計項目的檢錯、邏輯綜合、結(jié)構(gòu)綜合、輸出結(jié)果的編譯配置、時序分析等功能。在這個過程中將設(shè)計項目適配到FPGA/CPLD目標器件中,同時產(chǎn)生各種輸出文件編譯報告,包括器件使用統(tǒng)計、編譯設(shè)置、RTL級電路顯示、期間資源利用率、狀態(tài)機的實現(xiàn)、方程式、延時分析結(jié)構(gòu)、CPU使用資源等。編譯器首先從工程設(shè)計文件間的層次結(jié)構(gòu)描述中提取信息,包括每個低層次文件中的錯誤信息,供設(shè)計者排除。然后將這些層次構(gòu)建產(chǎn)生一個結(jié)構(gòu)化的、以網(wǎng)表文件表達的電路原理圖文件,并把各層次中所有的文件結(jié)合成一個數(shù)據(jù)包,以便更有效地處理。在編譯前,設(shè)計者可以通過各種不同的設(shè)置,指導(dǎo)編譯器使用各種不同的綜合和適配技術(shù),以便提高設(shè)計項目的工作速度,優(yōu)化器件的資源利用率。在編譯過程中及編譯完成后,可以從編譯報告窗口中獲得所有相關(guān)的詳細編譯結(jié)果,以利于設(shè)計者及時調(diào)整設(shè)計方案。
1)編譯操作的種類對工程的編譯,可以選擇三種操作形式即全編譯形式、分步編譯形式和流程編譯形式,如圖4.31所示。
(1)全編譯形式。全程編譯是指QuartusⅡ?qū)υO(shè)計輸入的多項處理操作,如檢錯、數(shù)據(jù)網(wǎng)表文件提取、邏輯綜合、適配、裝配文件(仿真文件與編程配置文件)生成以及基于目標器件的工程時序分析等。編譯時下面的【Processing】窗口會顯示編譯過程中的相關(guān)信息,如果發(fā)現(xiàn)警告和錯誤,會以深色標記條顯示。警告不影響編譯通過,但是錯誤編譯不能通過,必須進行修改。雙擊【Processing】欄中的錯誤顯示條文,會彈出對應(yīng)的VHDL文件,光標指示到錯誤處。在對錯誤進行分析修改后,再次進行編譯,直至排除所有錯誤。圖4.31三種編譯形式的操作選擇
(2)分步編譯形式。分步編譯形式是指按照邏輯分析、邏輯綜合、邏輯適配等步驟分步研究有關(guān)設(shè)計。
(3)流程編譯形式。流程編譯形式是將編譯過程的各步用圖形工具的形式表現(xiàn)出來,它實際上還是一種全編譯的形式,只不過表現(xiàn)形式不同而已。
2)編譯結(jié)果的查看
(1)編譯結(jié)果報告。全編譯后,先后執(zhí)行主菜單【Processing】下的【Compilationreport】和【ClassicTimingAnalyzerTool】子菜單,會分別出現(xiàn)編譯結(jié)果報告窗口和典型時序分析窗口,可選擇查看有關(guān)編譯結(jié)果或執(zhí)行【Start】進行典型時序分析。再執(zhí)行主菜單【W(wǎng)indow】下的級聯(lián)、水平、垂直等多窗口排列方式子菜單項,就會出現(xiàn)如圖4.32所示的編譯結(jié)果報告和時序分析報告。圖4.32編譯結(jié)果報告和時序分析報告
(2)電路網(wǎng)表結(jié)果。經(jīng)過邏輯綜合適配后,可以使用網(wǎng)表查看器查看有關(guān)電路網(wǎng)表信息。圖4.33是使用網(wǎng)表查看器查看有關(guān)網(wǎng)表信息的操作子菜單。圖4.34是有關(guān)網(wǎng)表查看結(jié)果。圖4.33查看有關(guān)網(wǎng)表信息的操作子菜單圖4.34RTL視圖和工藝映射視圖
4.工程仿真及分析當(dāng)工程編譯通過之后,必須對其功能和時序進行仿真測試,以了解設(shè)計結(jié)果是否滿足原設(shè)計要求。
1)打開波形編輯器執(zhí)行【File】→【New】命令,在彈出的窗口中選擇【VectorWaveformFile】項,打開空白的波形編輯器,如圖4.35所示。圖4.35新建仿真波形文件的操作
2)設(shè)置仿真時間區(qū)域和最小時間周期將仿真時間設(shè)置在一個比較合理的時間區(qū)域。選擇【Edit】菜單中的【EndTime…】項,在彈出窗口的【Time】欄處輸入【100】,單位選擇【ms】,將多個仿真區(qū)域的時間設(shè)為100?ms,單擊【OK】按鈕,結(jié)束設(shè)置。選擇【Edit】菜單中的【GridSize…】項,在彈出窗口的【TimePeriod】欄處輸入【20】,單位選擇【ns】。
3)在波形編輯器中引入信號節(jié)點在新建的波形窗口空白處,用鼠標左鍵雙擊,彈出插入節(jié)點或總線的操作窗口,再點擊【NodeFinder】按鈕,彈出【NodeFinder】窗口。在此窗口的【Filter】框中選擇【Pins:all】,然后單擊【List】按鈕,于是在下面的【NodesFound】窗口中出現(xiàn)了工程CNT9999中的所有端口引腳名。如果此時沒有出現(xiàn)端口引腳名,則可以重新編譯一下。選擇需要仿真觀察的信號波形,并移到窗口右邊。在這里,把所有的端口引腳名CLK、CLR、ENA、DOUT[15..0]全部插入,如圖4.36所示。或者執(zhí)行【View】→【UtilityWindows】→【NodeFinder】命令,彈出【NodeFinder】對話框。在此窗口中的【Filter】框中選擇【Pins:all】,然后單擊【List】按鈕,于是在下面的【NodesFound】窗口中會出現(xiàn)工程CNT9999中的所有端口引腳名。如果此時沒有出現(xiàn)端口引腳名,則可以重新編譯一下。用鼠標將需要仿真觀察的信號拖到波形編輯器窗口。在這里把所有的端口引腳名CLK、CLR、ENA、DOUT[15..0]全部插入,如圖4.37所示。圖4.36引入信號節(jié)點操作方法之一示意圖圖4.37引入信號節(jié)點操作方法之二示意圖
4)編輯輸入波形波形觀察窗口中的左排按鈕是用于設(shè)置輸入信號的,使用時只要先用鼠標在輸入波形上拖一下需要改變的黑色區(qū)域,或選中整個信號,然后點擊左排相應(yīng)按鈕,根據(jù)彈出的設(shè)置選擇框進行有關(guān)設(shè)置即可。選中按鈕,按鼠標左鍵或右鍵可以放大或縮小波形顯示,以便在仿真時能夠瀏覽波形全貌。波形設(shè)置過程如圖4.38所示。圖4.38編輯輸入波形及設(shè)置數(shù)據(jù)格式
5)設(shè)定數(shù)據(jù)格式單擊信號【CLK】、【CLR】、【ENA】、【DOUT[15..0]】旁邊的【+】號,可以打開該信號的各個分量,查看信號的每一位。如果雙擊【+】號左邊的信號標記,可以打開信號格式設(shè)置的對話框,如圖4.38所示。通過【Radix】窗口可以設(shè)置信號的格式,此處將信號【CLK】、【CLR】、【ENA】、【DOUT[15..0]】全部設(shè)定為十六進制。
6)波形文件存盤選擇【File】菜單下的【Save】命令,將默認名為CNT9999.vwf的波形文件存入當(dāng)前工程所在的文件夾中。本操作根據(jù)要求將各輸入信號【CLK】、【CLR】、【ENA】的波形設(shè)置成如圖4.39所示的波形。圖4.39設(shè)置好并存盤的波形圖
7)仿真器參數(shù)設(shè)置選擇【Assignment】菜單下的【Settings…】項,在【Settings】窗口中左側(cè)【Category】欄中選擇【SimulatorSettings】項,打開如圖4.40所示的窗口。在【Simulationmode】項目下選擇【Timing】,即時序仿真,在【Simulationinput】欄中,單擊按鈕,找到并選擇仿真激勵文件【CNT9999.vwf】。在【Simulationperiod】欄中選擇【Runsimulationuntilallvectorstimuliareused】,即全程仿真。根據(jù)仿真的要求還可選擇功能仿真等其它仿真形式以及進行其它的設(shè)置。圖4.40仿真器參數(shù)設(shè)置
8)啟動仿真器選中【Processing】菜單下的【StartSimulation】,如圖4.41所示,或者直接單擊工具欄上的快捷方式,直到出現(xiàn)【Simulationwassuccessful】對話框為止。圖4.41啟動仿真器
9)觀察仿真結(jié)果仿真成功后,仿真波形文件【SimulationReport】通常會自動彈出。CNT9999的時序仿真結(jié)果如圖4.42所示。注意,QuartusⅡ的波形編輯文件(*.vwf)與波形仿真報告文件(SimulationReport)是分開的。如果沒有彈出仿真完成后的波形文件,可以通過【Processing】菜單下的【SimulationReport】命令,打開波形報告。如果無法在窗口展開時間軸上的所有波形圖,可以在仿真報告窗口中單擊鼠標右鍵,選擇【Zoom】項下的【FitinWindow】選項,并通過按鈕,調(diào)節(jié)波形的比例。通過觀察仿真結(jié)果,發(fā)現(xiàn)達到了預(yù)定的要求??砂凑胀瑯拥姆椒ㄟM行其它模塊的仿真。圖4.42CNT9999的時序仿真結(jié)果
5.芯片管腳的鎖定工程編譯和有關(guān)仿真都通過后,就可以將配置數(shù)據(jù)下載到應(yīng)用系統(tǒng)進行驗證。下載之前首先要對系統(tǒng)頂層模塊進行引腳鎖定,保證鎖定的引腳與實際的應(yīng)用系統(tǒng)相吻合。
1)目標芯片的確認及閑置引腳的設(shè)定管腳鎖定前,先進行芯片的確定或修改,如圖4.43所示。單擊圖4.43中的【Device&PinOptions…】按鈕,在彈出的【UnusedPins】設(shè)置框中進行閑置引腳的設(shè)定,詳見圖4.25所示。對設(shè)計中未用到的器件引腳,有三種處理方式:輸入引腳(呈高組態(tài))、輸出引腳(呈低電平)或輸出引腳(輸出不定狀態(tài))。通常情況下選擇第一項,避免未用到的引腳對應(yīng)用系統(tǒng)產(chǎn)生影響。圖4.43管腳鎖定前目標芯片的確認或修改
2)引腳鎖定本設(shè)計系統(tǒng)的頂層模塊CNT9999擬選用EP2C8Q208C8芯片,根據(jù)需使用的EDA實驗開發(fā)系統(tǒng)(板)的有關(guān)輸入和輸出的資源情況進行引腳鎖定(一般應(yīng)事先列出一個管腳鎖定表,表格格式可參考第5章關(guān)于EDA實驗開發(fā)系統(tǒng)的使用實例中的引腳鎖定表格式樣),并將閑置引腳設(shè)定為三態(tài)門狀態(tài)。引腳的鎖定方法有三種:一是使用引腳鎖定窗口進行鎖定;二是使用計事本或其他文本編輯工具直接編輯?.qsf文件進行引腳鎖定;三是通過輸入TCL腳本語言文件進行。下面介紹前兩種方法。
(1)使用引腳鎖定窗口進行鎖定。打開【Assignments】菜單下的【Pins】命令,打開引腳鎖定窗口,如圖4.44所示。先用鼠標指到要鎖定的端口信號名與【Location】欄交匯的地方,這時此處呈藍色,然后雙擊對應(yīng)的交匯處,在出現(xiàn)的下拉欄中選擇對應(yīng)端口信號名的器件引腳號(例如對應(yīng)ENA,選擇PIN_99),引腳鎖定后將下拉菜單復(fù)原,則系統(tǒng)自動保存該鎖定。在如圖4.44所示的窗口中,還能對引腳作進一步的設(shè)定,如在Reserved欄,可對某些空閑的I/O引腳的電氣特性進行設(shè)置。圖4.44引腳鎖定窗口的打開及管腳的鎖定
(2)直接編輯?.qsf文件進行引腳鎖定。引腳的鎖定信息保存在工程文件夾中與工程同名的*.qsf文件中,可以通過編輯*.qsf文件來改變或設(shè)定引腳。本例子中,關(guān)于引腳的鎖定信息就存在F:\EDA115\EDA115CX\4.3\CNT9999(工程CNT9999目錄)下的CNT9999.qsf文件中。可以用計事本或其他文本編輯工具打開CNT9999.qsf,輸入信息并保存,如圖4.45所示。圖4.45編輯?.qsf文件進行引腳鎖定
6.編程下載及驗證
1)編程下載硬件準備先閱讀有關(guān)EDA實驗開發(fā)系統(tǒng)(板)手冊,了解EDA實驗開發(fā)系統(tǒng)(板)到計算機的連接方式。在斷電的情況下將有關(guān)硬件設(shè)備進行正確的物理連接,經(jīng)檢查無誤后打開EDA實驗開發(fā)系統(tǒng)(板)的電源開關(guān)。
2)?FPGA的編程下載連接好下載電纜,打開電源。在菜單【Tool】中選擇【Programmer】,或直接單擊工具欄上的快捷鍵,可以打開如圖4.46所示的編程下載窗口。若是初次安裝的QuartusⅡ,在下載編程前需要選擇下載接口方式。在圖4.46所示窗口中單擊【HardwareSetup】,在打開的設(shè)置窗口根據(jù)實際情況進行設(shè)置。在這里,選擇【ByteBlasterⅡ】,雙擊鼠標后,關(guān)閉該窗口。在圖4.46所示的【Mode】欄中有四種編程模式可以選擇:JTAG、PassiveSerial、ActiveSerial和In-Socket。為了直接對FPGA進行配置,在編程窗的編程模式【Mode】中選擇【JTAG】,并選中下載文件右側(cè)的第一個小方框Program/Configure。核對下載路徑與文件名,如果此文件沒有出錯或者有錯,單擊左側(cè)的【AddFile】按鈕,找到要下載的文件CNT9999.sof。單擊【Start】按鈕,即進入對目標器件FPGA的配置下載操作。當(dāng)【Progress】顯示為100%時,編譯成功,可以觀察實驗面板,進行硬件測試驗證。圖4.46編程下載設(shè)置及過程
3)對配置器件編程為了使應(yīng)用系統(tǒng)能在脫離計算機的情況下工作,就必須將配置數(shù)據(jù)存放在非易失的器件中,通常我們將配置數(shù)據(jù)存放在專用的配置器件中,如EPCS1、EPCS4等。EPCS1和EPCS4等是Cyclone系列器件的專用配置器件,F(xiàn)lash存儲結(jié)構(gòu),重復(fù)編程可達10萬次。先選擇編程模式和編程目標文件。在圖4.46所示窗口的【Mode】欄中,選擇【ActiveSerialProgramming】編程模式。添加編程文件CNT9999.pof,并選中Program/Configure,再將下載電纜連至AS模式端口并加電。接著單擊【Start】按鈕,當(dāng)【Progress】顯示為100%時,編譯成功。此后每次實驗裝置加電后,配置數(shù)據(jù)將自動從EPCS1加載,之后FPGA開始工作,而不需要重新下載配置數(shù)據(jù)。最后保存編程信息。編程完畢后,如果希望將此次設(shè)置的所有結(jié)果保存起來,以便能夠很快調(diào)出以進行編程,可以選擇保存。所有的信息都存在ChainDescriptionFile(.cdf)文件CNT9999.cdf中。以后編程只需打開此文件即可。4.3.3Quartus?Ⅱ的綜合操作
【例4.5】使用Quartus?Ⅱ設(shè)計和測試例4.2中的計數(shù)器,并將計數(shù)結(jié)果使用動態(tài)掃描的方式進行顯示。要求底層的模塊采用VHDL文本輸入,頂層的電路系統(tǒng)則采用原理圖輸入。
1.文件及工程建立
1)新建文件
(1)三個底層模塊圖形符號的建立。首先建立存放本工程文件的文件夾F:\EDA115\EDA115CX\4.3\DTCNT9999。按照4.3.2節(jié)闡述的方法分別輸入CNT10、CTRLS和DISPLAY三個模塊的VHDL程序,并保存在指定的文件夾中。為了生成模塊圖形符號供后述的頂層原理圖設(shè)計文件使用,應(yīng)將這三個模塊建立對應(yīng)的工程,并進行工程設(shè)置、工程編譯,然后按照圖4.47的操作選擇創(chuàng)建元件圖形符號。
(2)頂層原理圖模塊的建立。DTCNT999.GDF是4位十進制計數(shù)動態(tài)顯示電路設(shè)計中頂層的圖形設(shè)計文件,需調(diào)用CNT10、CTRL、DISPLAY三個功能元件,用原理圖的方式組裝成一個完整的設(shè)計實體。執(zhí)行【File】→【New】命令,在彈出的對話框中選擇【BlockDiagram/SchematicFile】,單擊【OK】按鈕,即出現(xiàn)原理圖編輯器窗口。再根據(jù)例4.2中的圖4.6或后續(xù)的圖4.49進行原理圖的設(shè)計,并將該原理圖文件DTCNT9999.GDF存放在指定位置。圖4.47創(chuàng)建元件圖形符號操作圖4.48原理圖繪制的主要操作示意圖圖4.49計數(shù)動態(tài)顯示電路頂層設(shè)計原理圖原理圖設(shè)計的主要操作有:添加元件、移動元件、添加連線、添加網(wǎng)絡(luò)名、添加輸入/輸出端口,其操作方法如下:●添加元件:先點擊添加元件快捷工具,在彈出的操作對話框中選擇欲添加的元件,或直接在【Name】框中輸入元件符號名(已設(shè)計的元件符號名與原VHDL文件名相同),單擊【OK】按鈕之后,再單擊【OK】按鈕關(guān)閉操作對話框,將出現(xiàn)的元件移動到欲放置的位置,點擊鼠標左鍵即可?!褚苿釉哼x中需移動的元件,按住鼠標左鍵把它拖到指定的位置后松手即可?!裉砑舆B線:將鼠標箭頭移到元件的輸入/輸出引腳上,鼠標箭頭形狀會變成【+】字形,然后可以按著鼠標左鍵并拖動鼠標,繪出一條線,松開鼠標按鍵完成一次操作。將鼠標箭頭放在連線的一端,鼠標光標也會變成“+”字形,此時可以接著畫這條線。細線表示單根線,粗線表示總線。改變連線性質(zhì)的方法是:先點擊該線,使其變紅,然后選頂行的選項【Options】→【LineStyle】,即可在彈出的窗口中點選所需的線段?!裉砑泳W(wǎng)絡(luò)名:先用鼠標左鍵點擊欲添加網(wǎng)絡(luò)名的連線,再在彈出的操作子菜單中選擇屬性,最后在彈出的屬性設(shè)置操作對話框中輸入節(jié)點網(wǎng)絡(luò)名,并關(guān)閉該對話框。●添加輸入/輸出端口:先點擊添加元件快捷工具,在彈出的操作對話框中,直接在【Name】文本框中輸入【Input】或【Output】,或是在【Primitives】庫中找出【Input】或【Output】元件,再單擊【OK】按鈕關(guān)閉操作對話框,將出現(xiàn)的端口符號移動到欲放置的位置,點擊鼠標左鍵即可。
2)新建工程并添加源程序執(zhí)行【File】→【NewProjectWizard】命令,打開新建工程向?qū)?,建立名字為DTCNT9999的工程,并根據(jù)需要進行有關(guān)設(shè)置,將工程中的CNT10.VHD、CTRS.VHD、DISPLAY.VHD和DTCNT9999.GDF等文件添加到DTCNT9999工程中。
2.工程實現(xiàn)的設(shè)置在對工程進行編譯前,需要進行有關(guān)工程實現(xiàn)的設(shè)置,其中目標芯片為EP2C8Q208C8N,如圖4.50所示。若工程編譯后對工程有關(guān)設(shè)置進行了修改,則需重新進行編譯,有關(guān)修改設(shè)計才能真正有效。圖4.50目標芯片選擇
3.工程編譯及分析執(zhí)行全編譯成功后,查看有關(guān)結(jié)果。圖4.51所示是編譯結(jié)果報告和時序分析報告;圖4.52是RTL視圖和工藝映射視圖。圖4.51編譯結(jié)果報告和時序分析報告圖4.52RTL視圖和工藝映射視圖
4.工程仿真及分析本設(shè)計有多個模塊,并分為兩個層次,應(yīng)采用自底向上的方式進行調(diào)試與仿真。圖4.53所示為DTCNT9999的時序仿真結(jié)果。為了保證掃描時鐘變化8次,計數(shù)結(jié)果才變化一次,以便進行有關(guān)仿真結(jié)果的判別與分析,計數(shù)時鐘信號CLK1的周期應(yīng)設(shè)定為等于或大于動態(tài)掃描顯示時鐘CLK2周期的8倍。圖中的DOUT是仿真時增加的中間結(jié)果觀測點。圖4.53DTCNT9999的時序仿真結(jié)果
5.芯片管腳的鎖定本設(shè)計系統(tǒng)的頂層模塊DTCNT9999擬選用EP2C8Q208C8芯片,根據(jù)需使用的EDA實驗開發(fā)系統(tǒng)(板)的有關(guān)輸入和輸出的資源情況進行引腳鎖定,并將閑置引腳設(shè)定為三態(tài)門狀態(tài)。圖4.54所示是管腳鎖定后的結(jié)果。圖4.54管腳鎖定后的結(jié)果
6.編程下載及驗證連接好下載電纜,打開電源。執(zhí)行【Tool】→【Programmer】命令,或直接單擊工具欄上的快捷鍵,可以打開編程下載窗口,進行有關(guān)選擇設(shè)置之后再執(zhí)行編程下載,結(jié)果如圖4.55所示。圖4.55編程下載設(shè)置及過程4.3.4QuartusⅡ的SOPC開發(fā)
1.SOPC及Nios內(nèi)核簡介可編程片上系統(tǒng)SOPC是一種通用器件,是基于FPGA的可重構(gòu)SOC,它集成了硬核或軟核CPU、DSP、存儲器、外圍I/O及可編程邏輯,是更加靈活、高效的SOC解決方案。使用可配置的軟核嵌入式處理器設(shè)計開發(fā)SOPC,其主要優(yōu)勢是:①合理的性能組合;②提升系統(tǒng)的性能;③降低系統(tǒng)的成本;④更好地滿足產(chǎn)品生命周期的要求。
20世紀60年代末,可編程邏輯器件(PLD)的復(fù)雜度已經(jīng)能夠在單個可編程器件內(nèi)實現(xiàn)整個系統(tǒng),即在一個芯片中實現(xiàn)用戶定義的系統(tǒng),它通常包括片內(nèi)存儲器和外設(shè)的微處理器。2000年,Altera發(fā)布了Nios處理器,這是AlteraExcalibur嵌入式處理器計劃中的第一個產(chǎn)品,是第一款用于可編程邏輯器件的可配置的軟核處理器。
Altera公司的Nios是基于RISC技術(shù)的通用嵌入式處理器芯片軟內(nèi)核,它特別為可編程邏輯進行了優(yōu)化設(shè)計,也為可編程單芯片系統(tǒng)(SOPC)設(shè)計了一套綜合解決方案。第一代Nios嵌入式處理器性能高達50MIPS,采用16位指令集,16/32位數(shù)據(jù)通道,5級流水線技術(shù),可在一個時鐘內(nèi)完成一條指令的處理。它可以與各種各樣的外設(shè)、定制指令和硬件加速單元相結(jié)合,構(gòu)成一個定制的SOPC。在Nios之后,Altera公司于2003年3月又推出了Nios的升級版Nios3.0版,它有16位和32位兩個版本。兩個版本均使用16位的RISC指令集,其差別主要在于系統(tǒng)總線帶寬,它能在高性能的Stratix或低成本的Cyclone芯片中實現(xiàn)。
2004年6月,Altera公司在繼全球范圍內(nèi)推出CycloneⅡ和StratixⅡ器件系列后又推出了支持這些新款FPGA系列的NiosⅡ嵌入式處理器。它與2000年上市的原產(chǎn)品Nios相比,最大處理性能提高了3倍,CPU內(nèi)核部分的面積最大可縮小1/2。
NiosⅡ系列嵌入式處理器使用32位的指令集結(jié)構(gòu)(ISA),完全與二進制代碼兼容,它建立在第一代16位Nios處理器的基礎(chǔ)上,定位于廣泛的嵌入式應(yīng)用。NiosⅡ處理器系列包括了快速的(NiosⅡ/f)、經(jīng)濟的(NiosⅡ/e)和標準的(NiosⅡ/s)三種內(nèi)核,每種都針對不同的性能范圍和成本。使用Altera的QuartusⅡ軟件、SOPCbuilder工具以及Nios?Ⅱ集成開發(fā)環(huán)境(IDE),用戶可以輕松地將NiosⅡ處理器嵌入到它們的系統(tǒng)中。
2.SOPC開發(fā)的基本步驟基于NIOSⅡ的SOPC系統(tǒng)設(shè)計開發(fā)包括硬件的設(shè)計開發(fā)和軟件的設(shè)計開發(fā)兩個方面。硬件的開發(fā)步驟如下:
(1)創(chuàng)建一個QuartusⅡ工程。
(2)創(chuàng)建Nios系統(tǒng)模塊:①啟動SOPCBuilder;②添加CPU及外圍器件;③指定基地址;④系統(tǒng)設(shè)置;⑤生成系統(tǒng)模塊。
(3)將圖標添加到BDF文件中。
(4)編譯QuartusⅡ的工程設(shè)計文件。
(5)配置FPGA。軟件的開發(fā)步驟如下:
(1)啟動NIOSⅡIDE。
(2)建立新的軟件工程。
(3)編譯工程。
(4)運行程序。
(5)調(diào)試程序。
(6)將程序下載到Flash中。整個基于NIOS?Ⅱ的SOPC系統(tǒng)的設(shè)計開發(fā)比較復(fù)雜,限于篇幅,這里就不用實例具體介紹其設(shè)計開發(fā)過程了。但為了便于理解基于NiosⅡ的SOPC系統(tǒng)的硬件設(shè)計開發(fā)過程,圖4.56~圖4.67給出了設(shè)計開發(fā)某個基于NiosⅡ的SOPC系統(tǒng)硬件的部分工作界面。圖4.56選擇執(zhí)行SOPCBuiler圖4.57SOPCBuilder啟動過程中的屏幕圖4.58SOPCBuilder啟動完成后的屏幕圖4.59選擇CPU的屏幕圖4.60CPU的設(shè)置屏幕之一圖4.61CPU的設(shè)置屏幕之二圖4.62進入CPU配置窗口圖4.63Flash的配置圖4.64最終的NiosⅡ系統(tǒng)配置及其地址映射表圖4.65系統(tǒng)生成結(jié)果圖4.66完成原理圖編輯后的結(jié)果圖4.67系統(tǒng)邏輯綜合成功4.4XilinxISEDesignSuite操作指南
XilinxISEDesignSuite是Xilinx公司新近推出的EDA集成軟件開發(fā)環(huán)境(IntegratedSoftwareEnvironment,簡稱為ISE)。XilinxISE操作簡易方便,其提供的各種最新改良功能能解決以往各種設(shè)計上的瓶頸,加快了設(shè)計與檢驗的流程,如ProjectNavigator(先進的設(shè)計流程導(dǎo)向?qū)I(yè)管理程式)讓顧客能在同一設(shè)計工程中使用Synplicity與Xilinx的合成工具,混合使用VHDL及VerilogHDL源程序,讓設(shè)計人員能使用固有的IP與HDL設(shè)計資源達到最佳的結(jié)果。使用者可鏈結(jié)與啟動XilinxEmbeddedDesignKit(EDK)XPS專用管理器,也可使用新增的AutomaticWebUpdate功能來監(jiān)視軟件的更新狀況,向使用者發(fā)送通知,以及讓使用者下載并更新檔案,令其ISE的設(shè)定維持最佳狀態(tài)。各版本的ISE軟件皆支持Windows2000、WindowsXP操作系統(tǒng)。4.4.1XilinxISE的初步認識
1.ISE的主界面介紹
XilinxISE的資源管理器(ProjectNavigator)主菜單包括:【File】菜單,主要功能是新建、打開和保存一個工程或者資源文件;【Edit】菜單,主要包含一些與文本編輯相關(guān)的功能選項;【View】菜單,主要功能是隱藏或顯示某個視圖;【Project】菜單,主要功能是對工程進行一些操作;【Source】菜單,主要功能是對資源文件進行相關(guān)操作;【Process】菜單,包含一些對當(dāng)前資源的操作命令;【W(wǎng)indow】菜單,主要功能是排列規(guī)劃窗口,使讀者容易閱讀和管理。圖4.68所示是XilinxISE工程管理器的主界面及工程信息分布圖。圖4.68XilinxISE工程管理器的主界面及工程信息分布圖
2.工程及文件的建立先新建一個工程(可以利用創(chuàng)建向?qū)?chuàng)建一個新的工程),并建議工程名與頂層文件名一致;再新建源程序,并添加到工程中。對于已經(jīng)建立的文件或工程,需要使用時打開即可。圖4.69所示是新建工程操作示意圖;圖4.70所示是新建VHDL文件操作示意圖。圖4.69新建工程操作示意圖圖4.70新建VHDL文件操作示意圖
3.工程實現(xiàn)的設(shè)置工程實現(xiàn)的設(shè)置主要包括指定目標器件、選擇綜合工具、選擇仿真工具等。XilinxISE的工程設(shè)置既可在建立工程的過程中根據(jù)提示進行設(shè)置,也可在建立工程的過程中跳過某些設(shè)置項,在工程建立后對工程實現(xiàn)進行設(shè)置或修改。圖4.71所示是在已建立工程的基礎(chǔ)上對工程實現(xiàn)的設(shè)置操作示意圖。
4.綜合適配及分析先在已經(jīng)建立的工程的【Source】源程序窗口選中VHDL或SCH源程序,再在【Process】工程處理進程窗口雙擊邏輯綜合或邏輯適配操作項,啟動邏輯綜合或邏輯適配器,最后通過選擇【Process】子菜單項查看邏輯綜合或邏輯適配結(jié)果:包括邏輯綜合適配報告、RTL視圖、時序分析結(jié)果等。圖4.72所示是邏輯綜合操作示意圖。圖4.71XilinxISE工程實現(xiàn)的設(shè)置操作圖4.72邏輯綜合操作示意圖
5.工程仿真及分析
XilinxISE的仿真分為功能仿真和時序仿真(布線后仿真)。既可使用波形文件進行仿真,又可使用仿真測試程序進行仿真。仿真工具有ISESimulator、Modelsim等工具。
XilinxISE仿真的基本步驟是:①在建立工程或工程設(shè)置步驟時設(shè)置仿真器;②在【Source】源程序窗口中選擇仿真類型;③建立仿真波形文件或仿真測試文本程序并添加到工程中;④在【Source】源程序窗口中選中仿真對象,在【Process】工程處理進程窗口中雙擊有關(guān)仿真器執(zhí)行仿真,并進行仿真結(jié)果分析(包括查看仿真波形報告和分析仿真波形)。圖4.73所示是XilinxISE的工程仿真操作示意圖。圖4.73XilinxISE的工程仿真操作示意圖
6.芯片的管腳鎖定芯片的管腳鎖定就是將設(shè)計實體的管腳與目標芯片特定的可作為輸入或輸出的管腳建立一一映射的過程。管腳鎖定的操作界面如圖4.74所示。圖4.74XilinxISE的管腳鎖定及編程下載操作
7.編程下載及驗證
XilinxISE編程下載的操作主要有:①編程下載硬件準備;②啟動iMPACT進入編程下載操作;③進行編程下載設(shè)置;④執(zhí)行編程下載操作。XilinxISE的編程下載操作界面如圖4.74所示。4.4.2ISESuite的基本操作
【例4.6】使用ISESuite設(shè)計和測試例4.1中的CNT9999電路。
1.工程及文件建立
1)工程的建立
在主菜單下執(zhí)行【File】→【NewProject…】命令,彈出向?qū)?Wizard)窗口,依提示輸入工程有關(guān)參數(shù),選擇目標器件并設(shè)置器件的有關(guān)屬性,如圖4.75~圖4.79所示。圖4.75新建工程操作示意圖圖4.76器件屬性設(shè)置——目標器件選擇圖4.77器件屬性設(shè)置——綜合工具選擇圖4.78器件屬性設(shè)置——仿真工具選擇圖4.79器件屬性設(shè)置——添加源程序到工程
2)新建源程序首先在【Process】窗口中雙擊【CreateNewSource】,或是在【Sources】窗口中點右鍵,在彈出的菜單中選擇【NewSource…】,則進入新建文件向?qū)Ы缑?,接著依提示選擇VHDL文件類型,輸入文件名、存盤路徑等信息,在進入程序模板提示對話框時輸入有關(guān)信息(若不想使用程序模板,則不輸入有關(guān)參數(shù),直接跳過該步驟),最后進入文本或圖形編輯器,輸入CNT10.VHD并存盤。依此方法,再新建CNT9999.VHD并存盤。圖4.80所示是新建VHDL文件的操作界面;圖4.81所示是建立的VHDL程序。圖4.80新建VHDL文件的操作界面圖4.81建立的VHDL程序
3)添加源程序到工程中在【Process】窗口中雙擊【AddExistingSource】,在彈出的添加文件選擇框中選擇需添加到工程的源程序,即可將新建的文件添加到工程中。圖4.82所示是添加源程序到工程圖的操作示意圖。圖4.82添加源程序到工
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 主題公園演員聘用合同
- 廣告牌制作焊接施工合同
- 資金籌集操作規(guī)程
- 城市綜合體改造委托書模板
- 島嶼探險區(qū)防水施工安全協(xié)議
- 2025年度光伏發(fā)電項目安裝工程承包協(xié)議3篇
- 2024年集裝箱買賣合同模板
- 2025版?zhèn)€人區(qū)塊鏈技術(shù)應(yīng)用借款合同
- 2025版家具展會參展合同范本6篇
- 2025年1月山西、陜西、寧夏、青海普通高等學(xué)校招生考試適應(yīng)性測試(八省聯(lián)考)政治試題(含答案)
- 勞動合同范本(2025年)
- 遼寧2025年高中學(xué)業(yè)水平合格性考試物理試卷試題(含答案詳解)
- 2024年人教版三年級上數(shù)學(xué)教學(xué)計劃和進度安排
- 工業(yè)項目投資估算及財務(wù)評價附表(有計算公式)
- 用所給詞的適當(dāng)形式填空(專項訓(xùn)練)人教PEP版英語六年級上冊
- 江蘇省常州市2023-2024學(xué)年八年級上學(xué)期期末道德與法治試題(含答案解析)
- 人教版 五年級上冊道德與法治全冊各課及單元同步檢測試卷【含答案】
- 給水管網(wǎng)設(shè)計計算說明書
- 四川地質(zhì)勘查單位大全
- 烏克蘭胚胎干細胞全新獨創(chuàng)治療,世界先進
- 經(jīng)典魚骨圖ppt模板PPT學(xué)習(xí)教案
評論
0/150
提交評論