資源描述:
《利用modelsim實(shí)現(xiàn)時(shí)序仿真》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、1)?打開一個(gè)工程文件。2)?打開Settings設(shè)置欄,選擇EDAToolsSettings下的Simulation欄。在右邊出現(xiàn)的設(shè)置欄中將“Toolname”的下拉菜單選擇“ModelSim(Verilog)”(如果工程用VHDL語(yǔ)言實(shí)現(xiàn),則可以選擇“ModelSim(VHDL)”;如果ModelSim使用的是forAltera的專用版本,則可以選擇“ModelSim-Altera(Verilog)”或“ModelSim-Altera(VHDL)”)。另外在設(shè)置欄中還有其他的核選框。1.如果選中“Maintainhierarchy”,則表
2、示在做時(shí)序仿真時(shí)就能看到像在功能仿真的工程文件層次結(jié)構(gòu),可以找到定義的內(nèi)部信號(hào)。因?yàn)樵谧龊蠓聲r(shí),源文件中的信號(hào)名稱已經(jīng)沒有了,被映射為軟件綜合后自己生成的信號(hào)名,觀察起來(lái)很不方便。這個(gè)設(shè)置與ISE里綜合右鍵屬性的KeepHierarchy選擇YES的功能是一樣的。2.如果選中“Generatenetlistforfunctionalsimulationonly”,則表示只能做功能仿真。3)?點(diǎn)擊?“StartCompilation”按鈕編譯工程,完成之后在當(dāng)前的工程目錄下可以看到一個(gè)名為“Simulation”的新文件夾,下面的“ModelSi
3、m”文件夾下包括仿真需要的.vo網(wǎng)表文件和包含延遲信息的.sdo文件。4)?打開ModelSim軟件(或者在Quartus下“Settings->EDAToolsSetting->Simulation”出現(xiàn)的設(shè)置欄中選中“Runthistoolautomaticallyaftercompilation”,直接從Quartus下調(diào)用ModelSim軟件),可以在當(dāng)前工程目錄下新建一個(gè)Project。在Project標(biāo)簽欄內(nèi)點(diǎn)擊右鍵,出現(xiàn)在快捷菜單中選擇“AddtoProject->ExistingFile…”。加入當(dāng)前工程目錄的“Simulat
4、ionModelSim”路徑下的.vo文件、TestBench文件和對(duì)應(yīng)當(dāng)前工程所選擇器件的網(wǎng)表文件。比如:當(dāng)前工程選擇的器件是Cyclone系列,Quartus安裝目錄在“C:altera”路徑下。因此需要在“C:alteraquartus50edasim_lib”路徑下找到“cyclone_atom.v”的網(wǎng)表文件導(dǎo)入到ModelSim下的Project。如果是其他器件亦是如此,只要在此目錄下找到對(duì)應(yīng)有“_atom”后綴的.v文件。當(dāng)然整個(gè)大前提是ModelSimSE版本已經(jīng)加入了Alterta的仿真庫(kù),不過(guò)ModelSim-
5、Altera版本就不會(huì)存在這樣的問(wèn)題。??5)?在出現(xiàn)的Project標(biāo)簽欄的快捷菜單中選擇“AddtoProject->SimulationConfiguration”,會(huì)出現(xiàn)如上圖所示的名為“Simulation1”的仿真配置。右鍵點(diǎn)擊選擇“Properties”,彈出的“SimulationProperties”對(duì)話框中有幾個(gè)標(biāo)簽欄。在“Design”標(biāo)簽欄內(nèi)需要選擇仿真的文件,也就是TestBench文件。?在“SDF”標(biāo)簽欄內(nèi)需要選擇包含延遲信息的文件,即Quartus下生成的.sdo文件。這里建議將.sdo文件與ModelSim的工
6、程文件(.mpf文件)放在同一個(gè)目錄下,不然ModelSim會(huì)報(bào)類似無(wú)法讀取.sdo文件的錯(cuò)誤。當(dāng)加入.sdo文件時(shí),需要在如下圖所示的“ApplytoRegion”的編輯框內(nèi)填寫延遲信息文件作用的區(qū)域。舉個(gè)例子來(lái)說(shuō)明:1.TestBench文件中定義了測(cè)試文件的Module名稱為ConvEncdTestBnch。2.TestBench文件中調(diào)用待測(cè)頂層文件的實(shí)例名為top_encode_1。(top_encodetop_encode_1(clk,rst,dataIn,serialData,parData);這是TestBench文件中調(diào)用頂層
7、的語(yǔ)句)3.所以在作用區(qū)域內(nèi)需要填寫“/ConvEncdTestBnch/top_encode_1”。?6)?右鍵點(diǎn)擊名為“Simulation1”的仿真配置,快捷菜單中選擇“Execute”命令,執(zhí)行仿真。7)?指定延時(shí)文件sdo路徑時(shí),特別注意“域”的指定,否則用戶會(huì)在timing仿真中報(bào)loaderror“can’tfindinstancefile”.指定的域可以從sim標(biāo)簽頁(yè)查看sim的top層,或要仿真的對(duì)象。另外,時(shí)序仿真時(shí),一定要記住要把頂層top.v用top.vo替換。同時(shí)要確保預(yù)編譯的庫(kù)中每個(gè)庫(kù)的名字必需遵循altera的要求
8、,比如:cylcone的device庫(kù)必需命名為cycclone,maxii的device命名為maxii,flex10Ke和acex1K都命名為fl