ISE和Modelsim聯合仿真(轉)


相信很多人會遇到過這個問題,不知如何讓ISE調用Modelsim進行仿真。我也迷糊了不少時間,查查找找,終於弄明白了,所以有了本文,和大家分享一下。我盡量講得詳細點兒,多多上圖。

 我的環境:Windows 7 64位,Xilinx ISE Design Suite 13.4D:\Xilinx\13.4),ModelsimSE-64 10.1aD:\modeltech64_10.1a 哈,也是64位的)。不過32位的和64位的設置幾乎沒有什么區別。先安裝好ISEModelsim 網上看過一些文章總說先裝ISE再裝Modelsim,不過我整過一陣,其實二者的順序是無關緊要的。安裝過程不在本文的討論范圍內,就不多說了,不過一定要注意版本要合適,Modelsim的版本不要太低,這個可以自己到網上查一查,還有非常重要的一點是安裝路徑不能有中文或空格。

由於我裝的Modelsim SE是通用版的,只自帶了少許的仿真庫(Simulation Library),所以還要編譯一下Xilinx的仿真庫。只有XE才自帶Xilinx的仿真庫,如果裝的是XE版便不必編譯仿真庫了。編譯庫可以用ISE帶界面的工具,也可以用命令行下的,前者方便,先講前者。打開編譯庫工具“Simulation Library Compilation Wizard”:“開始—所有程序—Xilinx ISE Design Suite 13.4(版本不同就不同)—ISE Design Tools64-bit Tools32位的選32-bit Tools)—Simulation Library Compilation Wizard”。注意,64位系統中默認安裝了64位和32位的ISE,如果你想用32位的ISE,那你就得選32位的編譯庫工具,不能混着用的,而且Modelsim也得裝上32位的版本,所以我建議64位系統的就用64位的ISE,而32位系統的沒得選,只能用32位的。如圖01-164位)和圖01-232位)所示。

 

 

圖片

 圖01-1

 

圖片

 圖01-2

 

打開工具之后,在“Select Simulator”下面選中你所裝好的Modelsim版本,我這兒選“Modelsim SE”,在“Simulator Executable Location”下面填入Modelsim.exe的所在的文件夾,點“Browse…”按鈕添加也行,我這兒是“D:\modeltech64_10.1a\win64”(不含雙引號,下同,除非有特別的說明),如圖02,然后Next

 

 

圖片

圖02

 

之后是選擇需要編譯的語言,選“Both VHDL and Verilog”,一般兩種都要用,如圖03,然后Next

 

 

圖片

圖03

 

接下來是選擇設備,默認是全選,如果有一些你實在用不上就不選吧,這樣可以省點時間和硬盤空間,全選時挺大條的,如圖04,還是Next

 

 

圖片

圖04 

 

下一步默認就行,全選上,下面的兩行東東留空即可,那是添加額外庫的,第一行是路徑,第二行是命令參數,無視之。如圖05Next

 

 

圖片

 圖05

 

這一步比較關鍵,在“Output directory for compiled libraries”下面填入輸出已編譯庫的路徑,默認也行。個人建議新建一個單獨的文件夾,好管理,只要版本一樣的,下次直接拿來用,重裝也不怕。不過文件夾的名字和整個路徑中絕對不能有中文或空格,切記、切記!!!我這兒是“D:\modeltech64_10.1a\Xilinx_lib”。其他的選項默認便可,之后點“Launch Compiled Process”,如圖06。之后就開始編譯了,如圖07。其實這一頁是很有用處的,詳情請點下面的那個“More Info”按鍵,不過幫助是英文的。

 

 

圖片

 圖06

 

 

圖片

 圖07

 

等待……編譯完后就會出現一些編譯日志,圖08Next,圖09Finish。只要沒有Err就成,Warn無視。若有Err,就回顧下版本對不對,路徑有沒有中文或空格。

 

 

圖片

 圖08

 

 

圖片

 圖09

 

可能舊點兒的ISE版本沒有帶窗口化的編譯工具,所以下面再說說命令行下編譯仿真庫的方法。打開命令行,最好以管理員的身份運行,“開始—所有程序—附件—命令提示符—點右鍵—以管理員身份運行”,在里面輸入“set path=D:\Xilinx\13.4\ISE_DS\ISE\bin\nt64;D:\modeltech64_10.1a\win64”(還是不要雙引號),32位的輸入“set path=D:\Xilinx\13.4\ISE_DS\ISE\bin\nt;D:\modeltech32_10.1a\win32”,然后敲回車鍵,這一步是可選的,為了防止可能的問題還是要吧。這里面都是路徑,按自己的安裝目錄對應來輸入就對了。然后再輸入“compxlib -s mti_se -l all -arch all -liball -w -exclude_superseded -dir D:\modeltech64_10.1a\Xilinx_lib”,再次回車就開始編譯了,漫長等待。和前面編譯的內容是一樣的。如圖09-1、圖09-2和圖09-3

 

 

圖片

 圖09-1

 

 

圖片

 圖09-2

 

 

圖片

 圖09-3

 

下面設置ISEModelsim的關聯。在“D:\Xilinx\13.4\ISE_DS\ISE”文件夾中找到“modelsim.ini”,“D:\Xilinx\13.4”這個是你的ISE安裝目錄,后半路徑是一樣的,實在不行就進入安裝目錄然后搜索“modelsim.ini”,如圖10和圖11

 

 

圖片

 圖10

 

 

圖片

 圖11

 

 

打開“modelsim.ini”,用記事本打開時不要用自動換行功能,菜單中“格式—自動換行”把勾去掉。個人不建議用記事本,寫字板那就更不行了,有的文件用寫字板改了會出現問題,搞編程類的總得有個好點兒的文本編輯工具吧,我用的是EmEditor,到網上搜一下吧,有不少呢。在第九行左右(可能是)找到“[Library]”,下面一行的“others = $MODEL_TECH/../modelsim.ini”和行的開頭的分號(;)的全部都無視。那些行開頭沒有分號的,格式一般是“X···X = 路徑”,一直到“[vcom]”之上的都要,選的仿真庫多時可有好長的一段,全部復制。見圖12、圖13和圖14

 

 

圖片

 圖12

 

 

圖片

 圖13

 

 

圖片

 圖14

然后在Modelsim的安裝目錄下,我這兒是“D:\modeltech64_10.1a”,找到“modelsim.ini”,名字一樣。先去換個文本編輯工具吧,用記事本打開它會是亂糟糟的一片,沒法改。打開后,同樣是找到“[Library]”,在它的下面粘貼上剛剛復制的那一大段東西,注意,行開頭不要有分號(;),而且人家原有的就別動它,別刪掉了。只要在“[Library]”和“[vcom]”之間粘貼就行,然后保存。如圖15、圖16和圖17

 

 

圖片

 圖15

 

 

 

圖片

 圖16

 

 

圖片

 圖17

 

打開ISE,“開始—所有程序—Xilinx ISE Design Suite 13.4(版本不同就不同)—ISE Design Tools64-bit Project Navigator32位的就開32-bit Project Navigator)”,圖18

 

 

 

 

圖片

 圖18

 

然后在ISE的菜單上“EditPreferences…”調出Preferences設置窗口,在左邊的“Category”下選中“ISE GeneralIntegrated Tools”。在Integrated Tools項設置中,右邊的“Model Tech Simulator:”下面填入Modelsim.exe的文件路徑,點旁邊的“..”按鍵選中Modelsim.exe也行,我這兒是“D:\modeltech64_10.1a\win64\modelsim.exe”(不要雙引號)。32位的可能是“D:\modeltech32_10.1a\win32\modelsim.exe”。如圖19和圖20

 

 

圖片

 圖19

 

 

圖片

 圖20

 

到現在已經把家伙准備好了,接下來就是使用它了。新建一個工程,圖21,這步不多說,Next

 

圖片

 圖21

 

接下來這一步在“Simulator”一項選“Modelsim-SE Mixed”,“Mixed”支持兩語言,“SE”是版本,選你自己對應的就成,其它項不討論,如圖22NextFinish。忘了選或想重新選的看圖23

 

 

圖片

 圖22

 

 

圖片

 圖23

 

新建你的VHDLVerilog文件,這個不多說。如果是VHDL文件,則要打開兩個庫。在菜單上“EditPreferences…”調出Preferences設置窗口,選中“Category”下面的ISE Text Editor,之后在右邊“ISE Text Editor”設置中下面的那個大白框里有四行代碼,把后面兩行,“use IEEE.STD_LOGIC_ARITH.ALL;”和“use IEEE.STD_LOGIC_UNSIGNED.ALL;”復制一下,然后粘貼在你的VHDL文件的庫聲明中,也就是打開這些庫。如圖24、圖25和圖26

 

 

圖片

 圖24

 

 

圖片

 圖25

 

 

圖片

 圖26

 

完成之后,切換到仿真模式,就是點工程上面的“Simulation”,可能不同版本會不一樣,ISE9.1i 是在“Source for”的下拉菜單中選擇Behavioral simulation,不過意思明白就行。建立Test Bench文件,若是VHDL的,也按上面說的處理一下,就是把那兩個庫聲明一下。在“Hierarchy”框選中Test Bench文件,在下面的那個框中點“Modelsim Simulator”前的加號。展開得到“Simulate Behavioral Model”,在它上面點右鍵,選“Process Properties…,如圖27。這里如果直接選“Run”可能會出現如圖28的警告,如果不出現警告而且能調用Modelsim仿真,那恭喜你成功了,不然就接着看吧。

 

 

圖片

 圖27

 

 

圖片

 圖28

 

有圖28警告時,如果前面的設置沒問題,直接點“No”就可以用Modelsim仿真了。為了搞定這個警告,咱們接着整。把"D:\modeltech64_10.1a\modelsim.ini"復制到你所建的工程目錄下也能搞定這個警告,不過這樣太麻煩,每次都得復制,還是往下看吧。選“Process Properties…”后彈出Process Properties設置窗口,在右邊的“Compiled Library Directory”后面填入之前編譯庫時設置的已編譯庫的路徑,點旁邊的“”按鈕來選定也行。如果編譯庫時使默認的路徑,那這里就不用改了,不過得把下面的“Ignore Pro-Compiled Library Warning Check”給勾上,不然也可能有警告,反正我用默認路徑時就是有警告,不知道為什么。其實只要你前面設置的正確了,這里直接把“Ignore Pro-Compiled Library Warning Check”給勾上,路徑都不設也是可以的,搞定后點“Ok”,如圖29。不過,每次新建一個工程時,這個窗口的設置都會變為默認設置,又得重設一次。我找了不少地方,查了幫助文檔也沒發現哪里可以修改這些默認值的。如果能改,那么下次新建工程時都變成我們自己的設置,就不用重設一遍了。如果有哪位大蝦知道,希望可以告訴偶一聲,留個言也成,呵呵。

 

 

圖片

 圖29

 

在“Simulate Behavioral Model”上點右鍵,選“Run”就可以調用Modelsim進行仿真了,如圖30。另外提一點,在ISE上也可以編譯庫的。在仿真模式中,在“Hierarchy”框中選中FPGA名,我這兒是“xc7a8-3csg324”(下面就是仿真文件)。然后在下面的框中點“Design Utilities”前面加號。展開后得到“Compile HDL Simulation Libraries”,在其上點右鍵,選“Run”,這樣就會編譯你的工程中所需的仿真庫了,如圖31。不過,這樣的話每次都得編譯一次,工程大的話那可老耗時間了,所以我們還是預先編譯好吧,省時間。……其實Modelsim也可以編譯仿真庫,不過在這兒就不多說了,網上也有很多文章說到的,只是我覺得用ISE自帶的工具更方便。 

 

 

圖片

 圖30

 

 

圖片

 圖31

 

好了,所有的都搞定了,可以好好體驗了。以上有什么不對的地方還望指正。我們也可以互相探討探討,我的QQ503123346

原文見:http://user.qzone.qq.com/503123346/blog/1350396664?ptlang=2052#!app=2&via=QZ.HashRefresh&pos=1334215473


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM