開發(fā)目的
FPGA項目開發(fā)的過程中,需要完成設(shè)計代碼開發(fā)、驗證環(huán)境搭建、仿真分析、板級驗證等操作,在這個過程中,許多操作雖然必不可少但是步驟是重復(fù)的。輔助軟件通過預(yù)先定義的處理模式,對一些重復(fù)性復(fù)雜操作通過Python輔助軟件使操作簡化以提高項目開發(fā)效率。獨立仿真可以不依賴Vivado,簡化仿真步驟,但建立獨立仿真往往需要復(fù)雜繁瑣的步驟,所以簡化建立獨立仿真的步驟很有必要。
重要的是,有了脫離Vivado建的第三方仿真工具單獨的環(huán)境,為FPGA工程后續(xù)ASIC化提前搭建好仿真環(huán)境,只把用到的庫和相關(guān)文件從Vivado庫里抽取出來,同時,每次仿真時不用啟動非常占資源的Vivado軟件,直接運行仿真腳本即可。同時,軟件生成的仿真環(huán)境后也可以手動進行優(yōu)化調(diào)整,按照用戶自己熟悉的仿真習(xí)慣進行定制化修改。
功能描述
該軟件用于提升FPGA仿真效率,節(jié)省仿真時間和步驟。本軟件可以建立獨立仿真,生成Questasim、modesim或VCS環(huán)境下的獨立仿真,可視化界面,更加方便用戶操作。
RTL設(shè)計完后會進行仿真Vivado內(nèi)自帶仿真器,或者可以通過Vivado啟動第三方仿真工具聯(lián)合仿真。但是在實際項目開發(fā)過程中,當(dāng)我們修改代碼后,需要關(guān)閉仿真軟件并重啟仿真,之前加載的波形信號也需要重新加載。因而很多時候,我們希望脫離Vivado,利用Modelsim或者VCS等第三方仿真工具,提高仿真效率;在這個過程中,通過提取工程中的代碼文件和IP核信息文件,縮減工程所占用的內(nèi)存空間,方便項目開發(fā)人員同步及備份。該軟件建立獨立仿真首先會提取源仿真工具、目的仿真工具,了解要建立哪種環(huán)境下的獨立仿真。
還要提取自動化仿真文件名和創(chuàng)建獨立仿真的路徑,用于建立獨立仿真文件夾,該文件夾有rtl和sim兩個文件夾,仿真用到的文件都會放到該文件夾里面。然后會提取tb的module名字和vivado生成do文件路徑,該軟件會根據(jù)路徑和tb的module名字找到Vivado生成do文件,提取do文件里面的信息,把對應(yīng)文件放到自動化仿真文件夾里面。提取目的仿真工具的win64和.setup文件的路徑,用于建立批處理文件和makefile文件。提取完信息后,點擊“開始生成按鈕”即完成建立自動化仿真操作。
該軟件在可執(zhí)行python的環(huán)境下均可以運行,在實際項目測試中,能夠自動生成自動化仿真工程,減少仿真對vivado的依賴,減少了大量的重復(fù)性操作。
為了方便項目開發(fā)人員對輔助軟件的使用,輔助軟件需要具有良好的可視化操作界面,在完成一些基本參數(shù)的配置后,可一鍵式完成復(fù)雜操作。GUI界面如圖1所示:
使用說明
1 安裝和初始化
本軟件免安裝,通過點擊FPGA_simulate_tool.exe文件即可執(zhí)行,如圖2所示:
2 輸入
根據(jù)GUI界面的提示輸入需要執(zhí)行的命令。
3 輸出
運行軟件后,首先會根據(jù)選擇生成不同的輸出文件,選擇“自動化仿真生成工具”,輸入提示信息后,點擊生成“開始生成”,會生成自動化仿真工程,如圖3所示,其中所有rtl文件存放在rtl文件夾下,include文件存放在inlcud文件夾下,sim文件存放do文件和批處理文件。
操作步驟
本軟件在Window10的python可執(zhí)行環(huán)境下示例操作。自動化仿真生成工具使用步驟如下:
步驟1:首先選擇源仿真工具和目的仿真工具。源仿真工具可供選擇的有:ModeSim、Questasim,目的仿真工具可供選擇的有ModeSim、Questasim、VCS,如圖7所示。
步驟2:輸入tbmodule名字、自動化仿真文件名字,會產(chǎn)生該名字的文件夾,自動化仿真工程在該文件夾里面。
步驟3:選擇“創(chuàng)建獨立仿真路徑”后面的“選擇路徑”按鈕,會讓選擇路徑,選擇好后點擊“選擇文件夾”按鈕,選擇創(chuàng)建獨立仿真路徑,如圖8所示:
步驟4:點擊“選擇路徑”按鈕,選擇vivado的do文件路徑和win64或.setup路徑,整體輸入信息如圖9所示:
步驟5:點擊“開始生成”按鈕,生成獨立仿真工程,生成成功會顯示“PASS”。如圖10所示。其中獨立仿真工程目錄在D盤文件夾“bus0123_40_25_NO_UDP_1”,文件名為“2”。該文件夾下內(nèi)容如圖11所示,其中所有rtl文件在rtl文件夾下,所有include文件在include文件夾下。
當(dāng)目的仿真工具選擇“modelsim”或者“questasim”,sim文件夾內(nèi)容如圖12所示。其中.coe文件是源vivado工程的RAM的初始化文件,不是該軟件生成的文件。filelist.f文件存放所有需要編譯的rtl列表,run.do文件是用于自動化仿真,sim.bat和sim_fast_no_gui.bat是批處理文件,以上四個文件都是該軟件生成。點擊sim.bat或者sim_fast_no_gui.bat即可運行仿真工具進行自動化仿真,其中sim_fast_no_gui.bat省去了仿真工具的GUI界面,可以加速仿真速度。
當(dāng)目的仿真工具選擇“VCS”時(雖然Vivado聯(lián)合VCS仿真時有自帶的一鍵轉(zhuǎn)換到VCS仿真的功能,但本文軟件提供的是一種更直接的脫離方式,把用到的庫和所有文件單獨提取出來放到一個文件夾中,便于分享,也便于為ASIC化的IP替換創(chuàng)建必要的環(huán)境),sim文件夾內(nèi)容如圖13所示。其中.coe文件是源vivado工程的RAM的初始化文件,不是該軟件生成的文件。
filelist.f文件存放所有需要編譯的rtl列表,makefile是自動仿真文件,輸入make即可進行VCS的自動化仿真,仿真完后輸入makeverdi,即可用verdi打開波形文件。
上圖中雙擊sim.bat文件即可運行。
說明:建議在原Vivado工程所在的機器上運行該軟件提取相關(guān)腳本信息,原Vivado工程需要調(diào)用第三方仿真工具運行過并保留相應(yīng)的sim文件夾。如有問題,請檢查vivado版本和仿真工具版本,以及編譯的vivado仿真庫所用的vivado版本和仿真工具版本。
結(jié)論
本軟件根據(jù)預(yù)先定義的Python腳本命令,通過用戶與GUI界面的交互,輸入必要的信息,將原本重復(fù)繁瑣操作通過輔助軟件進行簡化,提升了RTL的仿真的工作效率。本軟件通過將大量重復(fù)性文件和文件夾進行批處理,減少了人力創(chuàng)建文件夾,書寫重復(fù)代碼,人工轉(zhuǎn)化表項等繁瑣操作。此外,通過GUI界面的交互,提供了一個可視化界面,極大的提高了軟件的可操作性。
審核編輯:劉清
-
FPGA
+關(guān)注
關(guān)注
1629文章
21729瀏覽量
602986 -
FPGA設(shè)計
+關(guān)注
關(guān)注
9文章
428瀏覽量
26509 -
仿真
+關(guān)注
關(guān)注
50文章
4070瀏覽量
133552 -
仿真器
+關(guān)注
關(guān)注
14文章
1017瀏覽量
83721 -
RTL
+關(guān)注
關(guān)注
1文章
385瀏覽量
59759 -
GUI
+關(guān)注
關(guān)注
3文章
659瀏覽量
39654 -
python
+關(guān)注
關(guān)注
56文章
4792瀏覽量
84627 -
Vivado
+關(guān)注
關(guān)注
19文章
812瀏覽量
66470
原文標(biāo)題:脫離Vivado建立單獨仿真環(huán)境軟件
文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術(shù)江湖】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論