ModelSim是Model Technology(Mentor Graphics的子公司)的DHL硬件描述語(yǔ)言的仿真軟件,該軟件可以用來(lái)實(shí)現(xiàn)對(duì)設(shè)計(jì)的VHDL、Verilog或者是兩種語(yǔ)言混合的程序進(jìn)行仿真,同時(shí)也支持IEEE常見(jiàn)的各種硬件描述語(yǔ)言標(biāo)準(zhǔn)。
無(wú)論從友好的使用界面和調(diào)試環(huán)境來(lái)看,還是從仿真速度和仿真效果來(lái)看,ModelSim都可以算得上是業(yè)界最優(yōu)秀的HDL語(yǔ)言仿真軟件。它是惟一的單內(nèi)核支持VHDL和Verilog混合仿真的仿真器,是做FPGA/ASIC設(shè)計(jì)的RTL級(jí)和門級(jí)電路仿真的首選;它采用直接優(yōu)化的編譯技術(shù),Tcl/Tk技術(shù)和單一內(nèi)核仿真技術(shù),具有仿真速度快,編譯代碼與仿真平臺(tái)無(wú)關(guān),便于IP核保護(hù)和加快程序錯(cuò)誤定位等優(yōu)點(diǎn)。
Modelsim最大的特點(diǎn)是其強(qiáng)大的調(diào)試功能。
· 先進(jìn)的數(shù)據(jù)流窗口,可以迅速追蹤到產(chǎn)生錯(cuò)誤或者不定狀態(tài)的原因。
· 性能分析工具幫助分析性能瓶頸,加速仿真。
· 代碼覆蓋率檢測(cè)確保測(cè)試的完備。
· 多種模式的波形比較功能。
· 先進(jìn)的Signal Spy功能,可以方便地訪問(wèn)VHDL、Verilog或者兩者混合設(shè)計(jì)中的底層信號(hào)。
· 支持加密IP。
· 可以實(shí)現(xiàn)與MATLAB的Simulink的聯(lián)合仿真。
目前常見(jiàn)的Modelsim分為幾個(gè)不同的版本:ModelSim SE、ModelSim PE、ModelSim LE和ModelSim OEM。
如圖7.3所示,Modelsim的用戶界面和一般的Windows窗口相似,由上到下依次為:標(biāo)題欄、菜單欄,工具欄,工作區(qū)和狀態(tài)欄。
標(biāo)題欄
標(biāo)題欄位于整個(gè)用戶界面的最上方,標(biāo)題欄的左邊顯示當(dāng)前程序的名稱,右邊用來(lái)控制用戶界面的大小,包括最小化、最大化和關(guān)閉3種功能按鈕。
菜單欄
菜單欄里面一共有8個(gè)菜單選項(xiàng),分別是:File(文件)、Edit(編輯)、View(視圖)、Compile(編譯)、Simulate(仿真)、Tools(工具)、Window(窗口)、Help(幫助)。下面分別具體介紹。
1.“File”菜單
文件菜單通常包含了對(duì)工程及文件等的操作。ModelSim的文件菜單包含的命令有:New(新建)、Open(打開(kāi))、Close(關(guān)閉)、Import(導(dǎo)入)、Save(保存)、Delete(刪除)、Change Directory(更改路徑)、Transcript(對(duì)腳本進(jìn)行管理)、Add to Project(為工程添加文件)、Recent Directories(最近幾次的工作路徑)、Recent Projects(最近幾次工程)、Quit(退出)。
(1)新建文件命令(File/ New)。
單擊File/ New命令,將會(huì)出現(xiàn)一個(gè)子菜單,共包含4個(gè)選項(xiàng)。
· 單擊“Folder”(新建文件夾)后,會(huì)出現(xiàn)對(duì)話框,提示輸入新建的文件夾的名字,即可在當(dāng)前目錄下新建一個(gè)文件夾。
· 單擊“Source”(新建源文件)后,會(huì)出現(xiàn)源文件類型的選項(xiàng)(VHDL、Verilog、Other),單擊可分別新建對(duì)應(yīng)格式的源文件。
· 單擊“Project”(新建工程)后,會(huì)出現(xiàn)對(duì)話框,提示在“Project Name”處輸入新建工程的名稱,在“Project Location”處指定新建工程的存放路徑。在“Default Library Name”處指明默認(rèn)的設(shè)計(jì)庫(kù)的名稱,用戶設(shè)計(jì)的文件將編譯到該庫(kù)中。
· 單擊“Library”(新建一個(gè)庫(kù))后,會(huì)出現(xiàn)對(duì)話框,提示選擇“Create a New library and a logical mapping to it”(新建一個(gè)庫(kù)并建立一個(gè)邏輯映像)或“A map to an existing library”(新建一個(gè)到已存在庫(kù)的映像)。在“Library name”處輸入新建庫(kù)的名稱,在“Library physical name”處輸入存放庫(kù)的文件名稱。
(2)Open(打開(kāi)文件)。
單擊會(huì)出現(xiàn)子菜單選擇打開(kāi)File(文件)、Project(工程)及Dataset(WLF文件)。
(3)Close(關(guān)閉)。
單擊會(huì)出現(xiàn)子菜單選擇關(guān)閉Project(工程)或Dataset(仿真數(shù)據(jù)文件)。
(4)Import(導(dǎo)入)。
導(dǎo)入新的庫(kù)。在進(jìn)行某些仿真時(shí)需要的一些仿真庫(kù)可以通過(guò)該方法導(dǎo)入,根據(jù)提示指定仿真庫(kù)的路徑及目標(biāo)庫(kù)路徑,一步一步操作完成。注意ModelSim安裝目錄下的modelsim.ini文件不能為只讀,該文件保存了ModelSim的一些設(shè)置信息
(5)Save(保存)。
保存當(dāng)前仿真數(shù)據(jù)。
(6)Delete(刪除)。
刪除指定的工程,即刪除.mpf文件,.mpf是ModelSim工程的后綴名。
(7)Change Directory(改變路徑)。
改變當(dāng)前工作路徑,ModelSim使用的是絕對(duì)路徑,而不是相對(duì)路徑。這與ISE不同。在ISE中,用戶可以將設(shè)計(jì)的整個(gè)目錄復(fù)制到其他任何地方,只要目錄完整,可以直接打開(kāi)工程文件。而在ModelSim中,若將整個(gè)目錄復(fù)制到其他地方,打開(kāi)工程時(shí)其指向仍為原來(lái)工程的地址,可以通過(guò)更改路徑來(lái)設(shè)置新的路徑。
(8)Transcript(腳本)。
單擊會(huì)出現(xiàn)子菜單,可選擇操作Save Transcript(保存主窗口中腳本)、Save Transcript As(把主窗口中腳本另存為一個(gè)新文件)或Clear Transcript(清除主窗口中的腳本)。
(9)Add to Project(添加到工程)。
單擊會(huì)出現(xiàn)子菜單,可選擇操作File(添加文件到當(dāng)前工程)、Simulation Configuration(添加設(shè)定的仿真配置)或Folder(添加文件夾)。
(10)Recent Directories(最近幾次工作路徑)。
可以從中選取最近幾次的工作路徑。
(11)Recent Projects(最近幾次工程)。
可以打開(kāi)最近幾次的工程。
(12)Quit(退出)。
退出Modelsim。
2.“Edit”菜單
類似于Windows應(yīng)用程序,在編輯菜單中包含了對(duì)文本的一些常用的操作。
(1)Copy(復(fù)制)。
復(fù)制選中的文檔
(2)Paste(粘貼)。
把剪切或復(fù)制的文檔粘貼到當(dāng)前插入點(diǎn)之前。
(3)Select All(全選)。
選中主窗口中所有的抄本文檔。
(4)Unselect All(取消全選)。
取消已選文本的選中狀態(tài)。
(5)Find(查找)。
在命令窗口中查找字符或字符串。
3.“View”菜單
類似于其他Windows應(yīng)用程序,視圖菜單可以控制在屏幕上顯示哪些窗口。
(1)All Windows(所有窗口)。
打開(kāi)所有的ModelSim窗口,試一下該命令會(huì)發(fā)現(xiàn)ModelSim打開(kāi)了許多窗口,包括波形窗口、信號(hào)列表窗口、源文件窗口等。
(2)Dataflow(數(shù)據(jù)流)。
打開(kāi)Dataflow窗口,在該窗口中顯示數(shù)據(jù)的流向。
(3)List(列表)。
打開(kāi)列表窗口。
(4)Process(進(jìn)程)。
打開(kāi)過(guò)程窗口,該窗口顯示了設(shè)計(jì)中的進(jìn)程所在的位置。
(5)Signals(信號(hào))。
打開(kāi)信號(hào)窗口。該窗口顯示了設(shè)計(jì)中所有信號(hào)的列表。
(6)Source(源文件)。
打開(kāi)源文件窗口,可以在源文件窗口中顯示設(shè)計(jì)中使用的源文件。
(7)Structure(結(jié)構(gòu))。
打開(kāi)結(jié)構(gòu)窗口,該窗口以列表方式顯示了設(shè)計(jì)中所有到的結(jié)構(gòu),雙擊某一結(jié)構(gòu),可以查找定義該結(jié)構(gòu)的語(yǔ)句。
(8)Variables(變量)。
打開(kāi)變量窗口,該窗口以列表方式顯示了設(shè)計(jì)中定義的所有變量。
(9)Wave(波形)。
打開(kāi)波形窗口,這是我們仿真時(shí)經(jīng)常需要查看的窗口,在其中顯示了輸入和輸出的波形。
(10)Dataset。
打開(kāi)Dataset瀏覽器來(lái)打開(kāi)、關(guān)閉、重命名或激活一個(gè)Dataset。用戶在使用的時(shí)候會(huì)發(fā)現(xiàn)沒(méi)有什么變化,這時(shí)候可以看看Workspace窗口下是不是多了一個(gè)選項(xiàng)卡。該選項(xiàng)卡顯示的內(nèi)容與Structure窗口顯示的完全相同。
(11)Coverage(覆蓋率)。
查看仿真的代碼覆蓋率。
(12)Active Processes(活動(dòng)的進(jìn)程)。
當(dāng)前正在執(zhí)行的進(jìn)程。
(13)Workspace(工作區(qū))。
打開(kāi)當(dāng)前的工作區(qū)。
(14)Encoding(編碼)。
以不同的編碼查看。
(15)Properties。
顯示工作區(qū)中選中對(duì)象的屬性。
4.“Compile”菜單
(1)Compile(編譯)。
把HDL源文件編譯到當(dāng)前工程的工作庫(kù)中。
(2)Compile Options(編譯選項(xiàng))。
設(shè)置VHDL和Verilog編譯選項(xiàng),例如可以選擇編譯時(shí)采用的語(yǔ)法標(biāo)準(zhǔn)等。
(3)Compile All(全編譯)
編譯當(dāng)前工程中的所有文件。
(4)Compile Select(編譯選中的文件)
編譯當(dāng)前工程中的選中文件。
(5)Compile Order(編譯順序)
設(shè)置編譯順序,一般系統(tǒng)會(huì)根據(jù)設(shè)計(jì)對(duì)VHDL自動(dòng)生成編譯順序,但對(duì)于Verilog需要指定編譯順序。
(6)Compile Report(編譯報(bào)告)
有關(guān)工程中已選文件的編譯報(bào)告。
(7)Compile Summary(編譯摘要)
有關(guān)工程中所有文件的編譯報(bào)告。
5.“Simulate”菜單
這里的編譯及運(yùn)行命令類似于Visual Ctf等高級(jí)語(yǔ)言的調(diào)試時(shí)候的命令。
(1)Simulate(仿真)。
裝載設(shè)計(jì)單元。
(2)Simulation Options(仿真選項(xiàng))。
設(shè)置仿真選項(xiàng)。
(3)Run(運(yùn)行)。
· Run ***ns:在該仿真時(shí)間長(zhǎng)度內(nèi)進(jìn)行仿真。若要改變長(zhǎng)度,可在Simulation Options中設(shè)置或在工具欄中修改。
· Run-All(運(yùn)行所有仿真):進(jìn)行仿真,直到用戶停止它。
· Continue(繼續(xù)):繼續(xù)仿真。
· Run-Next(運(yùn)行到下一事件):運(yùn)行到下一個(gè)事件發(fā)生為止。
· Step(單步):?jiǎn)尾椒抡妗?br/>
· Step-Over:仿真至子程序結(jié)束。
· Restart:重新開(kāi)始仿真,重新加載設(shè)計(jì)模塊,并初始化仿真時(shí)間為零。
(4)Break(停止)。
停止當(dāng)前的仿真。
(5)End Simulation(結(jié)束仿真)。
結(jié)束當(dāng)前仿真。
6.“Tools”菜單
(1)Waveform Compare(波形比較)。
在子菜單中有具體進(jìn)行波形比較的命令。
(2)Coverage(覆蓋率)。
測(cè)試仿真的代碼覆蓋率,所謂代碼覆蓋率是指仿真運(yùn)行到當(dāng)前已運(yùn)行的代碼占所有代碼的比例,當(dāng)然是越接近100%越好。
(3)Breakpoints(斷點(diǎn)設(shè)置)。
單擊此選項(xiàng)出現(xiàn)斷點(diǎn)設(shè)置對(duì)話框,設(shè)置斷點(diǎn)。
(4)Execute Macro(執(zhí)行宏文件)。
所謂的宏文件就是保存后的腳本,腳本保存起來(lái),以后可以利用該命令來(lái)重新執(zhí)行。
(5)Options(選項(xiàng))。
· Transcript File:設(shè)置腳本文件的保存。
· Command History:命令歷史。
· Save File:保存腳本文件。
· Saved Lines:限制腳本文件的行數(shù)。
· Line Prefix:設(shè)置每一行的初始前綴。
· Update Rate:設(shè)置狀態(tài)條的刷新頻率。
· ModelSim Prompt:改變ModelSim的命令提示符。
· VSIM Prompt: 改變VSIM的命令提示符。
· Paused Prompt: 改變Paused的命令提示符。
· HTML Viewer:設(shè)置打開(kāi)在線幫助的文件。
(6)Edit Preferences(編輯參數(shù)選取)。
設(shè)置編輯參數(shù)。
(7)Save Preferences(保存參數(shù)選取)。
設(shè)置保存用的參數(shù)。
7.“Window”菜單
(1)Initial Layout(初始化版面)。
恢復(fù)所有窗口到初始時(shí)的大小和位置。
(2)Cascade(層疊)。
使所有打開(kāi)的窗口層疊。
(3)Tile Horizontally(水平平鋪)。
水平分隔屏幕,顯示所有打開(kāi)的窗口。
(4)Tile Vertically(垂直平鋪)。
垂直分隔屏幕,顯示所有打開(kāi)的窗口。
(5)Layout Style(版面格式)。
· Default(默認(rèn)格式):與Initial Layout格式相同。
· Classic(經(jīng)典格式):采樣低于5.5版本的格式。
· Cascade:與Cascade格式相同。
· Horizontally:與Tile Horizontally格式相同。
· Vertically:與Tile Vertically格式相同。
(6)Icon Children。
除了主窗口之外的其他窗口縮為圖標(biāo)。
(7)Icon All。
將所有窗口縮為圖標(biāo)。
(8)Deacon All。
將所有縮為圖標(biāo)的窗口還原。
8.“Help”窗口
(1)About ModelSim。
顯示ModelSim的版本、版權(quán)等信息。
(2)Release Notes。
顯示ModelSim的版本發(fā)布信息。
(3)Welcome Menu。
顯示歡迎畫面。
(4)PDF Documentation。
在子菜單中可以選擇ModelSim的PDF文檔。
SE HTML Documentation:ModelSim的超文本文檔。
(5)Tcl Help:Tcl幫助文檔。
Tcl是Tools Command Language的縮寫,它是一種可擴(kuò)充的命令解釋語(yǔ)言,具有與C語(yǔ)言的接口和命令的能力,應(yīng)用非常廣泛,這方面也有專門的書籍。
(6)Tcl Man Pages:Tcl主頁(yè)面。
(7)Technotes:技術(shù)文檔。
工具欄
ModelSim的工具欄如圖7.4所示。從左到右依次為:打開(kāi)、復(fù)制、粘貼、編譯選定、編譯全部、仿真、停止仿真、重新開(kāi)始仿真、仿真步長(zhǎng)、運(yùn)行一步、繼續(xù)運(yùn)行、運(yùn)行所有、單步執(zhí)行、主程序的單步執(zhí)行。
工作區(qū)
在用戶使用界面里面工作區(qū)占有的面積最大,工作區(qū)初始可以分為左右兩部分:左邊是文件或者工程列表,右邊是相應(yīng)的文件的顯示區(qū)。
狀態(tài)欄
ModelSim的狀態(tài)條如圖7.5所示,其中左面為當(dāng)前工程的名稱,右面為與當(dāng)前仿真相關(guān)的一些系數(shù),如仿真時(shí)間和仿真變量等。
溫馨提示:明德?lián)P2023推出了全新課程——邏輯設(shè)計(jì)基本功修煉課,降低學(xué)習(xí)FPGA門檻的同時(shí),增加了學(xué)習(xí)的趣味性,并組織了考試贏積分活動(dòng)
http://www.cqqtmy.cn/ffkc/415.html
(點(diǎn)擊→了解課程詳情?)
明德?lián)P除了培訓(xùn)學(xué)習(xí)還有項(xiàng)目承接業(yè)務(wù),擅長(zhǎng)的項(xiàng)目主要包括的方向有以下幾個(gè)方面:
1. MIPI視頻拼接
2. SLVS-EC轉(zhuǎn)MIPI接口(IMX472 IMX492)
3. PCIE采集系統(tǒng)
4. 圖像項(xiàng)目
5. 高速多通道ADDA系統(tǒng)
6. 基于FPGA板卡研發(fā)
7. 多通道高靈敏電荷放大器
8. 射頻前端
需要了解相關(guān)信息可以聯(lián)系:易老師13112063618(微信同號(hào))