資源描述:
《Modelsim 仿真方法總結》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。
1、Modelsim仿真方法總結Modeling仿真工具是Model公司開發(fā)的。它支持Verilog、VHDL以及他們的混合仿真。Modelsim各版本的使用方法大體一致,Modelsim仿真主要分為前仿真和后仿真。下面來具體介紹modelsim的仿真方法,涉及quartus-modelsim聯(lián)合(使用)仿真的差異會特別提示。前仿真與后仿真說明1.1前仿真前仿真也稱為功能仿真、行為仿真。旨在驗證電路的功能是否符合設計要求,其特點是不考慮延遲(包括門延遲與線延遲),主要驗證電路與理想情況是否一致。前仿真需要用到RTL級代碼(由源代碼經(jīng)過綜合后產(chǎn)生)與Testbench。1.2)后仿真后仿真
2、也稱為時序仿真或者布局布線仿真。是指在電路已經(jīng)映射到特定的工藝環(huán)境以后,綜合考慮門延遲與線延遲的影響,驗證電路在一定的時序條件下是否存在時序違規(guī)以及能否滿足設計構想的過程。需要用到的文件是——從布局布線結果中抽象出來的門級網(wǎng)表、testbench和后綴名為sdo或者sdf的標準時延文件。注:擴展名為sdo和sdf的標準時延文件包含門延遲與實際布線延遲,能較好的反應芯片的實際工作情況。二)modelsim仿真主要有以下幾個步驟:(1)建立庫并映射庫到物理目錄;(2)編譯源代碼(包括Testbench);(3)執(zhí)行仿真;解釋:①庫:modelsim中有兩類仿真庫。一種是工作庫,默認名為w
3、ork;另一種是資源庫。Work庫中存放當前工程下所有已經(jīng)編譯過的文件,所以編譯前一定要建立一個work庫。資源庫存放work庫中已經(jīng)編譯文件所要調用的資源,這樣的資源可能有很多,它們被存放在不同的資源庫內(nèi)。(例如要想對綜合在cyclone芯片中的設計做后仿真,就需要有一個名為cyclone_ver的資源庫。)映射庫用于將已經(jīng)預編譯好的文件所在目錄映射為一個modelsim可識別的庫。(此即是為仿真庫建立一個邏輯映像的行為過程,后面會提到,在modelsim中新建庫時,createanewlibraryandalogicalmappingtoit或amaptoanexistingli
4、braryd的提示)上述三個步驟是大的框架,前仿真和后仿真均是按照這個框架進行的,建立modelsim工程對前后仿真來說都不是必須的。下面分別介紹每一步的操作。2.1)建立庫在執(zhí)行一個仿真前先建立一個單獨的文件夾,將操作對象文件放在該文件夾下面。然后啟動modelsim軟件將modelsim當前路徑改動到此文件下。修改方法是File>ChangeDirectory。注意:上面說的是獨立運行modelsim仿真的情況。當采用quartus聯(lián)合modelsim仿真時,在quartus里面設置第三方EDA仿真工具后,編譯成功會自動在quartus工程目錄下面創(chuàng)建一個simulationm
5、odelsim的文件夾,此文件夾等同于獨立運行moddelsim仿真時最先建立的文件夾。另quartus聯(lián)合modelsim仿真,modelsim默認路徑即為其自動創(chuàng)建文件夾simulationmodelsim下,不必人為更改。啟動modelsim后,建立仿真庫。點擊file>new>library,出現(xiàn)對話框,選擇anewlibraryandalogicalmappingtoit(已默認),在libraryname中輸入要創(chuàng)建庫的名稱??偨Y步驟為:啟動modelsim-->點擊file-->changdirectory(如需更改路徑的話);再file-->new-->(proje
6、ct)-->library,進行相關設置。即可。2.2)編寫源代碼及testbench;在編寫目標測試文件(testbench)之前,我們先寫完目標文件(既可在quartus中編寫,也可以在modelsim中編寫),把它編譯進工作庫。(當然此步也可以等到和測試文件寫完以后一起編譯)。源代碼的編寫就不用介紹了,下面介紹編寫testbench的兩種方法。A)可以在modelsim內(nèi)直接編寫測試文件,而且modelsim提供各種testbench模板,我們只需更改其中小部分即可。在modelsim中執(zhí)行File>New>Source>Library或者直接點新建文件,會出現(xiàn)一個verilo
7、g(或VHDL)文本編輯頁面,編輯測試文件即可。另modelsim中提供各種測試文件模板,直接拿過來用會減少工作量。在verilog文本編輯頁面空白處右鍵點擊ShowLanguageTemplates,然后會出現(xiàn)一個加載工程,接著在剛才文本編輯窗口左邊出現(xiàn)一個LanguageTemplates窗口,雙擊CreatTestbench會出現(xiàn)一個創(chuàng)建向導,選擇SpecifyDesignUnit工作庫下,work工作庫中的目標文件(即為目標文件配套testbenc