第8章-設(shè)計綜合與行為仿真.ppt_第1頁
第8章-設(shè)計綜合與行為仿真.ppt_第2頁
第8章-設(shè)計綜合與行為仿真.ppt_第3頁
第8章-設(shè)計綜合與行為仿真.ppt_第4頁
第8章-設(shè)計綜合與行為仿真.ppt_第5頁
已閱讀5頁,還剩55頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、設(shè)計綜合和行為仿真,何賓 2008.09,第8章 設(shè)計綜合和行為仿真-本章概要,本章詳細介紹了設(shè)計綜合和行為仿真的流程和方法。 在設(shè)計綜合部分,介紹了綜合的概念、綜合屬性配置方法 和綜合實現(xiàn),以及RTL原理圖查看。在行為仿真部分,介 紹了測試向量的生成、行為仿真工具、基于Modelsim軟件 的行為仿真和基于ISE仿真器的行為仿真的實現(xiàn),同時還 介紹了使用波形和VHDL語言建立測試向量的方法。,第8章 設(shè)計綜合和行為仿真-行為綜合,在集成電路設(shè)計領(lǐng)域,綜合是指設(shè)計人員使用高級 設(shè)計語言對系統(tǒng)邏輯功能的描述,在一個包含眾多結(jié)構(gòu)、 功能、性能均已知的邏輯元件的邏輯單元庫的支持下,將 其轉(zhuǎn)換成使用這

2、些基本的邏輯單元組成的邏輯網(wǎng)絡(luò)結(jié)構(gòu)實 現(xiàn)。這個過程一方面是在保證系統(tǒng)邏輯功能的情況下進行 高級設(shè)計語言到邏輯網(wǎng)表的轉(zhuǎn)換,另一方面是根據(jù)約束條 件對邏輯網(wǎng)表進行時序和面積的優(yōu)化。,第8章 設(shè)計綜合和行為仿真-行為綜合,行為級綜合可以自動將系統(tǒng)直接從行為級描述綜合為寄 存器傳輸級描述。 行為級綜合的輸入為系統(tǒng)的行為級描述,輸出為寄存 器傳輸級描述的數(shù)據(jù)通路。 行為級綜合工具可以讓設(shè)計者從更加接近系統(tǒng)概念模 型的角度來設(shè)計系統(tǒng)。同時,行為級綜合工具能讓設(shè)計者 對于最終設(shè)計電路的面積、性能、功耗以及可測性進行很 方便地優(yōu)化。 行為級綜合所需要完成的任務(wù)從廣義上來說可以分為分 配、調(diào)度以及綁定。,第8章

3、 設(shè)計綜合和行為仿真-行為綜合,分配包括決定系統(tǒng)實現(xiàn)所需要的各個功能組件的個數(shù)以 及種類。這些組件以及資源來自采用寄存器傳輸級描述的 元件庫,包括諸如運算邏輯單元、加法器、乘法器和多路 復(fù)用器等。分配同時也決定了系統(tǒng)中總線的數(shù)量、寬度、 以及類型。,第8章 設(shè)計綜合和行為仿真-行為綜合,調(diào)度為行為級描述中的每個操作指派時間間隙,這也成 為控制執(zhí)行步驟。數(shù)據(jù)流從一級寄存器流向下一級寄存器 并按調(diào)度所指定的執(zhí)行步驟在功能單元上執(zhí)行。每一個執(zhí) 行步驟的時間長度通常為一個時鐘周期,并且在這一個執(zhí) 行步驟中的操作被綁定到特定寄存器傳輸級描述的組件上。 上述這些操作都完成后,系統(tǒng)所完成的功能被分配到各個

4、功能單元模塊,變量被存儲在各個存儲單元,并且不同功 能單元之間的互連關(guān)系也建立起來了。 在實際的PLD設(shè)計流程中,邏輯綜合將使用硬件邏輯 描述語言如Verilog、VHDL等描述的寄存器傳輸級(RTL) 描述,轉(zhuǎn)換成使用邏輯單元庫中基本邏輯單元描述的門級 網(wǎng)表電路。,第8章 設(shè)計綜合和行為仿真-基于XST的綜合,當(dāng)所有的設(shè)計完成,并且進行完語法檢查后,就可以使 用Xilinx的XST工具或Synplify工具進行綜合了,綜合工具 使用HDL代碼,然后生成支持的網(wǎng)表格式EDIF或NGC, 然后Xilinx的實現(xiàn)工具將使用這些網(wǎng)表文件完成隨后的處 理過程。 綜合工具在對設(shè)計的綜合過程中,主要執(zhí)行以

5、下三個 步驟: 1、語法檢查過程,檢查設(shè)計文件語法是否有錯誤; 2、編譯過程,翻譯和優(yōu)化HDL代碼,將其轉(zhuǎn)換為綜合 工具可以識別的元件序列; 3、映射過程,將這些可識別的元件序列轉(zhuǎn)換為可識別 的目標(biāo)技術(shù)的基本元件;,第8章 設(shè)計綜合和行為仿真-基于XST的綜合,在ISE的主界面的處理子窗口的synthesis的工具可以完 成下面的任務(wù):查看綜合報告(view Synthesis Report)、查 看RTL原理圖(View RTL schematic)、查看技術(shù)原理圖 (View Technology Schematic)、檢查語法(Check Syntax) 和產(chǎn)生綜合后仿真模型(Gener

6、ate Post-Synthesis Simulation Model)。,第8章 設(shè)計綜合和行為仿真-約束及設(shè)計綜合的實現(xiàn),XST支持用戶約束文件格式(UCF,User Constraint File),該文件主要是用于綜合和時序的約束。這種文件 格式叫Xilinx的約束文件(XCF,Xilinx Constraint File)。下面 介紹該設(shè)計中所用到的用戶文件的生成和插入設(shè)計的步驟: 1、在ISE主界面,選擇Project-Add source,選擇 stopwatch.xcf文件,并打開; 2、stopwatch.xcf文件作為用戶文檔添加到用戶的設(shè)計 文件中; 3、打開該文件,下面

7、是對于該設(shè)計的約束描述: NET CLK TNM_NET = CLK_GROUP;,第8章 設(shè)計綜合和行為仿真-約束及設(shè)計綜合的實現(xiàn),TIMESPEC TS_CLK = PERIOD CLK_GROUP 20 ns; /時序約束 BEGIN MODEL stopwatch /以下是管腳約束 NET clk LOC = E12; NET sf_d LOC = Y15; NET sf_d LOC = AB16; NET sf_d LOC = Y16;,第8章 設(shè)計綜合和行為仿真-約束及設(shè)計綜合的實現(xiàn),NET sf_d LOC = AA12; NET sf_d LOC = AB12; NET sf_

8、d LOC = AB17; NET sf_d LOC = AB18; NET sf_d LOC = Y13; END;,第8章 設(shè)計綜合和行為仿真-約束及設(shè)計綜合的實現(xiàn),4、關(guān)閉該文件; 5、在工程管理窗口,選擇stopwatch.vhd文件。在處理 子窗口,選擇Synthesis,并單擊鼠標(biāo)的右鍵選擇Properity屬 性; 6、在Synthesis Options標(biāo)簽下,單擊Synthesis Constraints File屬性域,輸入stopwatch.xcf; 7、選中寫時序檢查(Write Timing Contraints)選項, 單擊OK; 8、選中stopwatch.vhd

9、文件,并在處理子窗口用鼠標(biāo)雙 擊Synthesize選項; 通過上面的步驟,完成對約束文件的配置過程。,第8章 設(shè)計綜合和行為仿真-RTL符號的查看,在綜合完成后,XST將產(chǎn)生RTL的原理圖(RTL Schematic)??梢酝ㄟ^RTL原理圖查看工具,看到綜合 后的邏輯連接關(guān)系。 RTL原理圖(RTL Schmatic)是優(yōu)化前的HDL代碼的 邏輯; 技術(shù)原理圖(Technology Schematic)是HDL綜合完成 后的設(shè)計和目標(biāo)技術(shù)的映射。,第8章 設(shè)計綜合和行為仿真-RTL符號的查看,通過下面的步驟,查看RTL對HDL設(shè)計的描述過程: 在處理子窗口,點擊+ Synthesize XS

10、T選項,將其下面 的功能分層展開; 雙擊 View RTL Schematic 或View Technology Schematic 選擇。如圖6.11,RTL的查看工具將顯示出HDL的頂層設(shè) 計的符號描述;雙擊該圖標(biāo),可以更進一步的看到底層模塊的連接關(guān)系。,第8章 設(shè)計綜合和行為仿真-RTL符號的查看,第8章 設(shè)計綜合和行為仿真-行為仿真的實現(xiàn)生成測試向量,VHDL還可以描述變化的測試信號。描述測試信號的 變化和測試過程的模塊叫做測試平臺(Testbench),它可 以對任何一個Verilog/VHDL模塊進行動態(tài)的全面測試。通 過對被測試模塊的輸出信號的測試,可以驗證邏輯系統(tǒng)的 設(shè)計和結(jié)構(gòu)

11、,并對發(fā)現(xiàn)的問題及時修改。 測試平臺是為邏輯設(shè)計仿真而編寫的代碼,它能直接 與邏輯設(shè)計接口。如圖8.2所示,通過向邏輯設(shè)計施加激 勵,檢測被測模塊的輸出信號。,第8章 設(shè)計綜合和行為仿真-行為仿真的實現(xiàn)生成測試向量,測試平臺通常使用VHDL、Verilog、e或者Open Vera 編寫,同時還能調(diào)用外部的文件和C函數(shù)。測試平臺可以 使用同邏輯設(shè)計不同的描述語言,仿真器通常提供支持不 同描述語言的混合仿真功能。,第8章 設(shè)計綜合和行為仿真-行為仿真的實現(xiàn)生成測試向量,硬件描述語言如Verilog和VHDL等,都提供了兩種基本 的建模方式:行為級和寄存器傳輸級。寄存器傳輸級是對 硬件邏輯進行可綜

12、合性的描述,使用的是VHDL語言中可 綜合邏輯設(shè)計激勵響應(yīng)測試平臺結(jié)果顯示平臺的描述部分。 寄存器傳輸級代碼可以由邏輯綜合工具直接轉(zhuǎn)換成門 級電路。 行為級描述是對硬件邏輯更為靈活和抽象的描述,描 述的重點在于硬件邏輯的功能,通常不考慮時序問題。行 為級代碼通常不能被邏輯綜合工具轉(zhuǎn)換成門級電路。 測試平臺以行為級描述為主,不使用寄存器傳輸級的 描述形式。,第8章 設(shè)計綜合和行為仿真-行為仿真的實現(xiàn)生成測試向量,測試平臺主要由兩個組件構(gòu)成:激勵生成和響應(yīng)檢測。 它們同被測單元(DUT, Device Under Test)的關(guān)系如圖 8.3所示。,第8章 設(shè)計綜合和行為仿真-行為仿真的實現(xiàn)生成測

13、試向量,DUT是待測的邏輯電路。通常,DUT是使用硬件邏輯 描述語言HDL編寫的寄存器傳輸級電路。 激勵生成模塊的主要功能是根據(jù)DUT輸入接口的信號 時序,對DUT產(chǎn)生信號激勵,將測試信號向量輸入到DUT 中。響應(yīng)檢測模塊根據(jù)DUT輸入接口的信號時序,響應(yīng) DUT的輸出請求,并檢查輸出結(jié)果的正確性。,第8章 設(shè)計綜合和行為仿真-行為仿真的實現(xiàn)生成測試向量,建立測試平臺時,首先應(yīng)針對DUT的功能定義測試 向量;然后根據(jù)每一個測試向量的要求分別設(shè)計激勵生成 和響應(yīng)檢測模塊,要求激勵生成模塊能夠能在DUT的接口 上產(chǎn)生該測試向量所需的信號激勵,響應(yīng)檢測模塊能夠?qū)?DUT在這種信號激勵下的結(jié)果輸出進行

14、響應(yīng)和檢測;最后 將激勵生成模塊、DUT和響應(yīng)檢測模塊相連,組成驗證環(huán) 境,在仿真器上進行仿真,根據(jù)響應(yīng)檢測模塊的檢測報告 來判斷測試向量是否通過測試。,第8章 設(shè)計綜合和行為仿真-設(shè)置仿真工具,Xilinx的ISE工具提供了集成設(shè)計流程,該設(shè)計流程支 持基于Mentor Graphics公司Modelsim仿真工具和ISE仿真 工具,這兩種仿真工具均可從工程向?qū)е羞\行。 只有安裝Modelsim軟件才能使用Modelsim仿真工具, ModelSim PE和ModelSim SE是Mentor Graphics公司 ModelSim軟件的完全版本。為配合ISE9.2庫的仿真,需要 使用Mod

15、elSim6.0或更高版本。ModelSim XE是基于 ModelSim PE的ModelSim Xinlinx版本。 當(dāng)安裝ISE軟件時,ISE仿真工具就自動安裝完成,所 以不需要進行額外安裝。,第8章 設(shè)計綜合和行為仿真-配置Xilinx仿真庫,當(dāng)設(shè)計中有需要例化的Xilinx基本元件、Core生成器 元件和其它IP核時,必須要使用Xilinx的仿真庫才能對這 樣的設(shè)計進行仿真。這些仿真庫保存了每一個元件的模型。 這些模型描述了每一個元件的功能,為仿真工具提供了仿 真時所需要的信息。 Modelsim軟件使用modelsim.ini文件確定編譯庫的位置。 比如,將UNISIM庫編譯到c:

16、libUNISIM路徑下,在該文 件中必須有下面的映射描述:UNISIM=C:libUNISIM。,第8章 設(shè)計綜合和行為仿真-建立波形測試向量,這一部分介紹通過波形編輯器產(chǎn)生測試向量的過程。 可以通過波形編輯器,以圖形的方式輸入激勵信號,生成 VHDL或Verilog 測試平臺。 下面的過程給出了為子模塊創(chuàng)建測試平臺波形的步驟 (當(dāng)然波形編輯器也能為頂層設(shè)計生成一個激勵源)。下 面給出通過波形編輯器創(chuàng)建一個測試平臺波形文件的步驟:,第8章 設(shè)計綜合和行為仿真-建立波形測試向量,1、在Source Tab選項卡中,選擇time_cnt; 2、選擇Project New Source; 3、在N

17、ew Source向?qū)е? 選擇源類型為Test Bench Waveform.; 4、輸入time_cnt_tb,單擊Next; 需要注意的是,在選 項對話框中, 文件time_cnt 為默認的源文件,這是因為在 Source Tab選項卡中,選擇了time_cnt;單擊Next,單擊 Finish; 5、在ISE中打開波形編輯器。顯示初始化時序?qū)υ捒颍?可以設(shè)定仿真時間參數(shù)。時鐘為高和低區(qū)域決定了時鐘周 期。輸入建立時間決定了輸入有效起始時間,輸出有效延 遲定義了時鐘有效后輸出有效的起始時間;,第8章 設(shè)計綜合和行為仿真-建立波形測試向量,6、初始化時序?qū)υ捒?,如下輸入?Clock Ti

18、me High: 10 Clock Time Low: 10 Input Setup Time: 5 Output Valid Delay: 5 7、在全局時鐘部分選擇GSR (FPGA) 8、將初始化的測試平臺(TestBench)長度改為3000, 單擊Finish。 通過上面的步驟,完成建立測試向量的過程。,第8章 設(shè)計綜合和行為仿真-波形測試向量的應(yīng)用,在波形編輯器中,可以應(yīng)用過渡帶(High/Low),其寬度 由Input setup delay 和the Output valid delay決定。對該測試 產(chǎn)生如下激勵輸入: 1、單擊CE在110 ns時為高 2、單擊CLR在150

19、 ns時為高 3、單擊CLR在230 ns時為低 4、單擊保存:新的測試平臺波形源(time_cnt_tb.tbw)自 動加入到工程中 5、在Source Tab選項卡中,選擇time_cnt_tb.tbw圖8.10 在波形編輯器中生成激勵信號 6、雙擊Generate Self-Checking Test Bench,第8章 設(shè)計綜合和行為仿真-波形測試向量的應(yīng)用,一個包含輸出數(shù)據(jù)和自檢碼的測試平臺產(chǎn)生并添加到工 程中,創(chuàng)建的測試平臺文件可用于與仿真后的數(shù)據(jù)比較,圖8.10 在波形編輯器中生成激勵信號,第8章 設(shè)計綜合和行為仿真 -基于Modelsim行為仿真實現(xiàn),下面所介紹的行為仿真是基于

20、前面的秒表設(shè)計完成,并 完成了設(shè)計綜合。為了實現(xiàn)對該設(shè)計的行為仿真,需要下 面的文件:設(shè)計文件,測試平臺(Testbench)文件和 Xinlinx仿真庫。 1、設(shè)計文件:VHDL、Verilog或原理圖文件。 2、Testbench文件:仿真設(shè)計過程中需要一個測試平臺 文件作為仿真激勵源。 3、Xinlinx仿真庫:當(dāng)在設(shè)計中涉及IP核時,應(yīng)該創(chuàng)建 Xinlinx仿真庫,庫中包含了DCM數(shù)字時鐘管理和核產(chǎn)生 器(CORE Generator)元件。,第8章 設(shè)計綜合和行為仿真 -添加HDL測試文件,下面給出添加測試平臺文件步驟和過程: 1、如果建立一個新的測試平臺文件,可選擇 Project

21、New Source,選擇文件類型為VHDL Test Bench 或Verilog Text Fixture,生成一個仿真文件,可以在這個 文件中定義所需要的測試平臺及其測試向量。 2、如果添加已經(jīng)設(shè)計完成的測試平臺文件,可選擇 ProjectAdd Source,在該設(shè)計中選擇測試平臺文件 stopwatch_tb.vhd。并在文件類型對話框中選擇VHDL Test Bench File/ Verilog Text Fixture File。ISE會自動識別頂層 設(shè)計文件并將其與測試文件進行關(guān)聯(lián)。,第8章 設(shè)計綜合和行為仿真 -添加HDL測試文件,如果在工程中已經(jīng)添加了一個測試平臺文件,那

22、么就 可以用ModelSim完成行為仿真,ISE與ModelSim已經(jīng)完全 一體化,ISE能使用ModelSim創(chuàng)建工作路徑,編譯源文 件,下載設(shè)計文件,并進行仿真。使用ISE軟件或 ModelSim軟件,仿真結(jié)果是相同的。,第8章 設(shè)計綜合和行為仿真 -添加HDL測試文件,下面給出ISE的工程向?qū)д{(diào)用ModelSim仿真的步驟: 1、在Source Tab選項卡中,右鍵單擊器件名,如 xc3s700A-4fg484,選擇Properties(屬性)選項; 2、在Project Properties(工程屬性)對話框的仿真器域 (Simulator field)中選擇所使用的ModelSim類

23、型,并和 所使用的VHDL語言進行關(guān)聯(lián)。,第8章 設(shè)計綜合和行為仿真 -定位仿真程序,在ISE的仿真過程中能夠使用ModelSim軟件對設(shè)計進 行仿真,下面給出定位ModelSim仿真程序的步驟: 1、在Source Tab選項卡中,選擇行為仿真(Behavioral Simulation); 2、選擇Testbench測試文件(stopwatch_tb); 3、在Processes tab選項卡中,單擊+旁邊的ModelSim Simulator展開程序目錄層次; 如果沒有ModelSim仿真程序,那么有可能是在Project Properties(工程屬性)對話框沒有將ModelSim選為

24、仿真 器,或者是Project Navigator無法找到modelsim.exe文件。,第8章 設(shè)計綜合和行為仿真 -定位仿真程序,下面給出設(shè)置ModelSim單元的步驟 1、選擇 EditPreferences; 2、單擊+展開ISE preferences; 3、單擊Integrated Tools; 4、在右欄中, Model Tech Simulator下,定位modelsim.exe 文件。如:c:modeltech_xe win32xoem modelsim.exe; 下面給出可用的仿真過程的步驟: 1、 Simulate Behavioral Model:這一過程開始設(shè)計仿真;

25、 2、產(chǎn)生一個自檢的HDL Testbench:這個過程產(chǎn)生一個 相當(dāng)于測試平臺波形(TBW)文件的自檢HDL Testbench文 件,并加入到工程中。也可以通過這一過程來更新現(xiàn)有的 自檢測試波形文件。,第8章 設(shè)計綜合和行為仿真-設(shè)置仿真屬性,在ISE中可以設(shè)置包括網(wǎng)表屬性的多個ModelSim仿真屬 性,下面給出設(shè)置行為仿真屬性的步驟: 1、在Source Tab選項卡中,選擇Testbench測試文件 (stopwatch_tb); 2、在Processes tab選項卡中,單擊+旁邊的ModelSim Simulator展開程序目錄層次; 3、右鍵單擊Simulate Behavio

26、ral Model,選擇屬性 (Properties); 4、 在Process Properties對話框中,見圖8.4 設(shè)置 Property display level為Advanced這個全局性的設(shè)置,可看 到所有可用的屬性; 5、將仿真運行時間改為2000ns,單擊OK;,第8章 設(shè)計綜合和行為仿真-設(shè)置仿真屬性,圖8.4 仿真屬性的設(shè)置,第8章 設(shè)計綜合和行為仿真-運行仿真,仿真屬性設(shè)置完成后,就可以準(zhǔn)備運行ModelSim仿真 軟件。雙擊Simulate Behavioral Model,啟動行為仿真。 ModelSim仿真工具可以創(chuàng)建工作目錄,編譯源文件,添 加設(shè)計,并進行指定

27、時間的仿真模擬過程。 該設(shè)計的工作頻率為100赫茲,因此需要設(shè)定足夠的時 間長度來仿真。第一次復(fù)位后,輸出過渡的SF_D和 LCD_E控制信號在大約33毫秒。這就是為什么計數(shù)器不 在短時間的仿真中使用,只有通過對DCM信號監(jiān)測來驗 證計數(shù)器工作是否正常。,第8章 設(shè)計綜合和行為仿真-添加信號,為了觀察仿真過程中的內(nèi)部信號,必須將這些信號添 加入到波形窗口中。ISE會自動將頂層端口信號加入到波 形窗口,其它信號在基于被選結(jié)構(gòu)的信號窗口中顯示,可 以通過兩種基本方法將其它信號加入仿真波形窗口: 1、從Signal/Object window中拖動到信號波形窗口; 2、在Signal/Object

28、window中選擇信號,選擇Add Wave Selected Signals; 下面介紹將DCM信號加入到波形窗口中的步驟(如果使 用的是ModelSim6.0或更高版本,在默認狀態(tài)下,所有窗 口均是docked,可選擇undock圖標(biāo)來取消):,第8章 設(shè)計綜合和行為仿真-添加信號,1、在Structure/Instance窗口中,單擊+展開uut目錄層次。 圖8.5為Verilog的Structure /Instance窗口。當(dāng)然原理圖或是 VHDL的Structure/Instance窗口可能有所不同; 2、在Structure/Instance窗口中選擇dcm1,那么在 Signal

29、/Object窗口中的信號列表將被更新; 3、單擊并將Signal/Object窗口中的CLKIN_IN信號拖動 到波形窗口中; 4、在Signal/Object窗口中,選擇下列信號:RST_IN、CLKFX_OUT、CLK0_OUT、LOCKED_OUT; 5、在Signal/Object窗口中右鍵單擊; 6、選擇Add to Wave Selected Signals;,第8章 設(shè)計綜合和行為仿真-添加信號,圖8.5 VerilogStructure /Instance窗口,第8章 設(shè)計綜合和行為仿真-添加信號分割,在ModelSim中,可以在波形窗口中添加分割,使得更容 易區(qū)分不同的信號

30、,下面給出在窗口中添加DCM信號分 割窗口的步驟: 1、右鍵單擊波形窗口信號部分的任意位置,如果需要 可先將窗口最大化; 2、選擇Insert Divider; 3、在Divider Name框中輸入DCM Signals; 4、單擊OK; 5、將新建的信號拖到CLKIN_IN信號上方;,第8章 設(shè)計綜合和行為仿真-添加信號分割,新增信號的波形還未給出,這是因為ModelSim還未 記錄這些信號的數(shù)據(jù)。在默認情況下,只有重新經(jīng)過 仿真后,ModelSim才會記錄新添加到波形窗口中的信 號。當(dāng)波形窗口添加新信號后,需要重新進行仿真。,第8章 設(shè)計綜合和行為仿真-添加信號分割,圖8.6 添加分割信

31、號后仿真波形,第8章 設(shè)計綜合和行為仿真-重新仿真,為了在ModelSim中重新完成仿真 過程,需要執(zhí)行以下操作步驟: 1、單擊Restart Simulation圖標(biāo); 2、在Restart對話框中,單擊 Restart; 3、在ModelSim命令行中,輸入run 2000ns,按下Enter鍵; 仿真運行2000ns,仿真結(jié)束后,在 波形窗口中可見DCM新波形。,圖8.7 重新仿真對話框,第8章 設(shè)計綜合和行為仿真-分析信號,通過分析DCM信號來驗證計數(shù)器工作是否正常。 CLK0_OUT信號需為50MHz,CLKFX_OUT需為26MHz。 只在LOCKED_OUT信號為高時,DCM輸出

32、信號有效。所 以只在LOCKED_OUT信號為高時,才能分析DCM信號。 ModelSim中可通過光標(biāo)來測量信號之間的距離。下面給 出測量CLK0_OUT信號的步驟: 1、選擇Add Wave Cursor,定位兩個光標(biāo)(Cursors); 2、在LOCKED_OUT信號為高后,單擊拖拽CLK0_OUT 信號的第一個上升沿; 3、單擊拖拽第二個光標(biāo); 4、單擊Find Next Transition圖標(biāo)兩次將光標(biāo)移到 CLK0_OUT信號的下一個上升沿;,第8章 設(shè)計綜合和行為仿真-分析信號,5、可觀察波形底部兩個光標(biāo)之間的距離。測量值 為20000ps(50MHz),即為測試平臺的輸入頻率,

33、 也是DCM的CLK0信號輸出; 6、同樣使用上述方式測量CLKFX_OUT。測量值 為38462ps,約為26MHz; 通過上面步驟,完成對CLK0_OUT信號的測量和 分析。,第8章 設(shè)計綜合和行為仿真-保存仿真,ModelSim可保存列表中的所有信號,也可保存波形窗 口中經(jīng)過重新仿真后的新增信號。下面給出保存信號的步 驟: 1、在波形窗口中,選擇File Save as; 2、在保存類型對話框中,將默認的wave.do重新命名為 dcm_signal.do; 3、單擊Save; 在重新啟動仿真之后,在波形窗口中選擇File Load重 新加載此文件。,第8章 設(shè)計綜合和行為仿真 -基于I

34、SE行為仿真實現(xiàn),如果在工程中已經(jīng)生成了一個測試平臺文件,那么就 可以在ISE中進行行為仿真。ISE能創(chuàng)建工作路徑,編譯源 文件,下載設(shè)計文件,并根據(jù)仿真屬性進行仿真。下面給 出了使用ISE仿真器進行仿真的步驟: 1、在Source Tab選項卡中,右鍵單擊器件名,如 xc3s700A-4fg484; 2、選擇Properties(屬性)選項; 3、在Project Properties(工程屬性)對話框的Simulator field 中選擇ISE Simulator; 通過上面的步驟完成對ISE仿真工作的屬性設(shè)置。,第8章 設(shè)計綜合和行為仿真-定位仿真程序,在仿真過程中能夠使用ISE仿真器

35、對設(shè)計進行仿真,并 定位ISE仿真程序。下面給出定位仿真程序的步驟: 1、在Source Tab選項卡中,選擇Behavioral Simulation; 2、選擇Testbench測試文件(stopwatch_tb); 3、在Processes tab選項卡中,單擊+旁邊的ISE Simulator 展開程序目錄層次;,第8章 設(shè)計綜合和行為仿真-定位仿真程序,下面是可使用的仿真過程: 1、Check Syntax:這個過程檢查測試平臺文件中的語法 錯誤; 2、Simulate Behavioral Model:這一過程開始設(shè)計仿 真; 3、產(chǎn)生一個自檢的HDL Testbench:這個過程

36、產(chǎn)生一個 相當(dāng)于測試平臺波形(TBW)文件的自檢HDL Testbench文 件,并加入到工程中。也可以通過這一過程來更新現(xiàn)有的 自檢測試平臺文件。,第8章 設(shè)計綜合和行為仿真-設(shè)置仿真屬性,在ISE中可以設(shè)置包括網(wǎng)表屬性的多個ISE仿真器的仿真 屬性。下面給出設(shè)置行為仿真屬性的步驟: 1、在Source Tab選項卡中,選擇測試平臺文件 (stopwatch_tb); 2、在Processes tab選項卡中,單擊+旁邊的ISE Simulator 展開程序目錄層次; 3、右鍵單擊Simulate Behavioral Model; 4、選擇屬性(Properties); 5、如圖8.8所示

37、,在Process Properties對話框中,設(shè)置 Property display level為Advanced. 這個全局性的設(shè)置,可 看到所有可用的屬性; 6、將仿真運行時間改為2000ns; 7、單擊Apply 和OK;,第8章 設(shè)計綜合和行為仿真 -設(shè)置仿真屬性,圖8.8 行為仿真屬性設(shè)置,第8章 設(shè)計綜合和行為仿真-運行仿真,一旦將Process Properties設(shè)置完成,那么已經(jīng)準(zhǔn)備好運 行ISE Simulator。啟動行為仿真,雙擊Simulate Behavioral Model。ISE Simulator 創(chuàng)建工作目錄,編譯源文件,加的 設(shè)計,并進行指定時間的仿真模擬。 大多數(shù)設(shè)計運行速度為100赫茲,并設(shè)定一定意義的時 間來仿真。第一次復(fù)位后,輸出過渡的SF_D和LCD_E 控 制信號在大約33毫秒。這就是為什么計數(shù)器不在短時間的 仿真中使用,只有DCM信號

溫馨提示

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

評論

0/150

提交評論