0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何脫離Vivado建立單獨(dú)仿真環(huán)境軟件呢?

FPGA技術(shù)江湖 ? 來(lái)源:網(wǎng)絡(luò)交換FPGA ? 2023-09-27 09:25 ? 次閱讀

開發(fā)目的

FPGA項(xiàng)目開發(fā)的過(guò)程中,需要完成設(shè)計(jì)代碼開發(fā)、驗(yàn)證環(huán)境搭建、仿真分析、板級(jí)驗(yàn)證等操作,在這個(gè)過(guò)程中,許多操作雖然必不可少但是步驟是重復(fù)的。輔助軟件通過(guò)預(yù)先定義的處理模式,對(duì)一些重復(fù)性復(fù)雜操作通過(guò)Python輔助軟件使操作簡(jiǎn)化以提高項(xiàng)目開發(fā)效率。獨(dú)立仿真可以不依賴Vivado,簡(jiǎn)化仿真步驟,但建立獨(dú)立仿真往往需要復(fù)雜繁瑣的步驟,所以簡(jiǎn)化建立獨(dú)立仿真的步驟很有必要。

重要的是,有了脫離Vivado建的第三方仿真工具單獨(dú)的環(huán)境,為FPGA工程后續(xù)ASIC化提前搭建好仿真環(huán)境,只把用到的庫(kù)和相關(guān)文件從Vivado庫(kù)里抽取出來(lái),同時(shí),每次仿真時(shí)不用啟動(dòng)非常占資源的Vivado軟件,直接運(yùn)行仿真腳本即可。同時(shí),軟件生成的仿真環(huán)境后也可以手動(dòng)進(jìn)行優(yōu)化調(diào)整,按照用戶自己熟悉的仿真習(xí)慣進(jìn)行定制化修改。

功能描述

該軟件用于提升FPGA仿真效率,節(jié)省仿真時(shí)間和步驟。本軟件可以建立獨(dú)立仿真,生成Questasim、modesim或VCS環(huán)境下的獨(dú)立仿真,可視化界面,更加方便用戶操作。

RTL設(shè)計(jì)完后會(huì)進(jìn)行仿真Vivado內(nèi)自帶仿真器,或者可以通過(guò)Vivado啟動(dòng)第三方仿真工具聯(lián)合仿真。但是在實(shí)際項(xiàng)目開發(fā)過(guò)程中,當(dāng)我們修改代碼后,需要關(guān)閉仿真軟件并重啟仿真,之前加載的波形信號(hào)也需要重新加載。因而很多時(shí)候,我們希望脫離Vivado,利用Modelsim或者VCS等第三方仿真工具,提高仿真效率;在這個(gè)過(guò)程中,通過(guò)提取工程中的代碼文件和IP核信息文件,縮減工程所占用的內(nèi)存空間,方便項(xiàng)目開發(fā)人員同步及備份。該軟件建立獨(dú)立仿真首先會(huì)提取源仿真工具、目的仿真工具,了解要建立哪種環(huán)境下的獨(dú)立仿真。

還要提取自動(dòng)化仿真文件名和創(chuàng)建獨(dú)立仿真的路徑,用于建立獨(dú)立仿真文件夾,該文件夾有rtl和sim兩個(gè)文件夾,仿真用到的文件都會(huì)放到該文件夾里面。然后會(huì)提取tb的module名字和vivado生成do文件路徑,該軟件會(huì)根據(jù)路徑和tb的module名字找到Vivado生成do文件,提取do文件里面的信息,把對(duì)應(yīng)文件放到自動(dòng)化仿真文件夾里面。提取目的仿真工具的win64和.setup文件的路徑,用于建立批處理文件和makefile文件。提取完信息后,點(diǎn)擊“開始生成按鈕”即完成建立自動(dòng)化仿真操作。

該軟件在可執(zhí)行python的環(huán)境下均可以運(yùn)行,在實(shí)際項(xiàng)目測(cè)試中,能夠自動(dòng)生成自動(dòng)化仿真工程,減少仿真對(duì)vivado的依賴,減少了大量的重復(fù)性操作。

為了方便項(xiàng)目開發(fā)人員對(duì)輔助軟件的使用,輔助軟件需要具有良好的可視化操作界面,在完成一些基本參數(shù)的配置后,可一鍵式完成復(fù)雜操作。GUI界面如圖1所示:

2d010bd2-5cc5-11ee-939d-92fbcf53809c.png

使用說(shuō)明

1 安裝和初始化

本軟件免安裝,通過(guò)點(diǎn)擊FPGA_simulate_tool.exe文件即可執(zhí)行,如圖2所示:

2d13c2ea-5cc5-11ee-939d-92fbcf53809c.png

2 輸入

根據(jù)GUI界面的提示輸入需要執(zhí)行的命令。

3 輸出

運(yùn)行軟件后,首先會(huì)根據(jù)選擇生成不同的輸出文件,選擇“自動(dòng)化仿真生成工具”,輸入提示信息后,點(diǎn)擊生成“開始生成”,會(huì)生成自動(dòng)化仿真工程,如圖3所示,其中所有rtl文件存放在rtl文件夾下,include文件存放在inlcud文件夾下,sim文件存放do文件和批處理文件。

2d1bbf18-5cc5-11ee-939d-92fbcf53809c.png

操作步驟

本軟件在Window10的python可執(zhí)行環(huán)境下示例操作。自動(dòng)化仿真生成工具使用步驟如下:

步驟1:首先選擇源仿真工具和目的仿真工具。源仿真工具可供選擇的有:ModeSim、Questasim,目的仿真工具可供選擇的有ModeSim、Questasim、VCS,如圖7所示。

2d2139a2-5cc5-11ee-939d-92fbcf53809c.png

步驟2:輸入tbmodule名字、自動(dòng)化仿真文件名字,會(huì)產(chǎn)生該名字的文件夾,自動(dòng)化仿真工程在該文件夾里面。

步驟3:選擇“創(chuàng)建獨(dú)立仿真路徑”后面的“選擇路徑”按鈕,會(huì)讓選擇路徑,選擇好后點(diǎn)擊“選擇文件夾”按鈕,選擇創(chuàng)建獨(dú)立仿真路徑,如圖8所示:

2d340ae6-5cc5-11ee-939d-92fbcf53809c.png

步驟4:點(diǎn)擊“選擇路徑”按鈕,選擇vivado的do文件路徑和win64或.setup路徑,整體輸入信息如圖9所示:

2d3b4aea-5cc5-11ee-939d-92fbcf53809c.png

步驟5:點(diǎn)擊“開始生成”按鈕,生成獨(dú)立仿真工程,生成成功會(huì)顯示“PASS”。如圖10所示。其中獨(dú)立仿真工程目錄在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文件是用于自動(dòng)化仿真,sim.bat和sim_fast_no_gui.bat是批處理文件,以上四個(gè)文件都是該軟件生成。點(diǎn)擊sim.bat或者sim_fast_no_gui.bat即可運(yùn)行仿真工具進(jìn)行自動(dòng)化仿真,其中sim_fast_no_gui.bat省去了仿真工具的GUI界面,可以加速仿真速度。

當(dāng)目的仿真工具選擇“VCS”時(shí)(雖然Vivado聯(lián)合VCS仿真時(shí)有自帶的一鍵轉(zhuǎn)換到VCS仿真的功能,但本文軟件提供的是一種更直接的脫離方式,把用到的庫(kù)和所有文件單獨(dú)提取出來(lái)放到一個(gè)文件夾中,便于分享,也便于為ASIC化的IP替換創(chuàng)建必要的環(huán)境),sim文件夾內(nèi)容如圖13所示。其中.coe文件是源vivado工程的RAM的初始化文件,不是該軟件生成的文件。

filelist.f文件存放所有需要編譯的rtl列表,makefile是自動(dòng)仿真文件,輸入make即可進(jìn)行VCS的自動(dòng)化仿真,仿真完后輸入makeverdi,即可用verdi打開波形文件。

2d527dfa-5cc5-11ee-939d-92fbcf53809c.png

2d6a0f60-5cc5-11ee-939d-92fbcf53809c.png

2d70aa8c-5cc5-11ee-939d-92fbcf53809c.png

上圖中雙擊sim.bat文件即可運(yùn)行。

2d830c40-5cc5-11ee-939d-92fbcf53809c.png

說(shuō)明:建議在原Vivado工程所在的機(jī)器上運(yùn)行該軟件提取相關(guān)腳本信息,原Vivado工程需要調(diào)用第三方仿真工具運(yùn)行過(guò)并保留相應(yīng)的sim文件夾。如有問(wèn)題,請(qǐng)檢查vivado版本和仿真工具版本,以及編譯的vivado仿真庫(kù)所用的vivado版本和仿真工具版本。

結(jié)論

本軟件根據(jù)預(yù)先定義的Python腳本命令,通過(guò)用戶與GUI界面的交互,輸入必要的信息,將原本重復(fù)繁瑣操作通過(guò)輔助軟件進(jìn)行簡(jiǎn)化,提升了RTL的仿真的工作效率。本軟件通過(guò)將大量重復(fù)性文件和文件夾進(jìn)行批處理,減少了人力創(chuàng)建文件夾,書寫重復(fù)代碼,人工轉(zhuǎn)化表項(xiàng)等繁瑣操作。此外,通過(guò)GUI界面的交互,提供了一個(gè)可視化界面,極大的提高了軟件的可操作性。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1620

    文章

    21510

    瀏覽量

    598904
  • FPGA設(shè)計(jì)
    +關(guān)注

    關(guān)注

    9

    文章

    428

    瀏覽量

    26421
  • 仿真
    +關(guān)注

    關(guān)注

    50

    文章

    3972

    瀏覽量

    132960
  • 仿真器
    +關(guān)注

    關(guān)注

    14

    文章

    1008

    瀏覽量

    83437
  • RTL
    RTL
    +關(guān)注

    關(guān)注

    1

    文章

    384

    瀏覽量

    59515
  • GUI
    GUI
    +關(guān)注

    關(guān)注

    3

    文章

    631

    瀏覽量

    39290
  • python
    +關(guān)注

    關(guān)注

    53

    文章

    4753

    瀏覽量

    84077
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    797

    瀏覽量

    65854

原文標(biāo)題:脫離Vivado建立單獨(dú)仿真環(huán)境軟件

文章出處:【微信號(hào):HXSLH1010101010,微信公眾號(hào):FPGA技術(shù)江湖】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于PFGA的脫離Vivado單獨(dú)仿真環(huán)境工程

    做FPGA樣機(jī)和做芯片的思路其實(shí)是有差異的。為了追求好的性能,節(jié)省成本,降低功耗(PPA),芯片設(shè)計(jì)者往往把事情做到極致,去做驗(yàn)證時(shí)把各種覆蓋率盡可能做到100%,把每個(gè)模塊電路結(jié)構(gòu)優(yōu)化到面積最小,通過(guò)Power Gating和Clock Gating等技術(shù)把功耗降到最低,爭(zhēng)取把每次流片(燒錢)的風(fēng)險(xiǎn)降到最低;相比芯片設(shè)計(jì)流程,F(xiàn)PGA樣機(jī)的開發(fā)人員往往不太注重上述要求,雖然有著與做芯片相同的目標(biāo)和追求,但往往因?yàn)镕PGA的可編程性,即便后續(xù)發(fā)現(xiàn)問(wèn)題,也可
    的頭像 發(fā)表于 12-03 12:53 ?1241次閱讀

    FPGA開發(fā)Vivado仿真設(shè)計(jì)案例分析

    仿真功能概述 仿真FPGA開發(fā)中常用的功能,通過(guò)給設(shè)計(jì)注入激勵(lì)和觀察輸出結(jié)果,驗(yàn)證設(shè)計(jì)的功能性。Vivado設(shè)計(jì)套件支持如下仿真工具:Vivado
    的頭像 發(fā)表于 12-31 11:44 ?5039次閱讀
    FPGA開發(fā)<b class='flag-5'>Vivado</b>的<b class='flag-5'>仿真</b>設(shè)計(jì)案例分析

    如何用Python實(shí)現(xiàn)Vivado和ModelSim仿真自動(dòng)化?

    我們?cè)赪indows系統(tǒng)下使用Vivado的默認(rèn)設(shè)置調(diào)用第三方仿真器比如ModelSim進(jìn)行仿真時(shí),一開始仿真軟件都會(huì)默認(rèn)在波形界面中加載t
    的頭像 發(fā)表于 09-13 09:23 ?1064次閱讀
    如何用Python實(shí)現(xiàn)<b class='flag-5'>Vivado</b>和ModelSim<b class='flag-5'>仿真</b>自動(dòng)化?

    怎樣單獨(dú)使用modelsim仿真xilinx?

    直接在modelsim軟件內(nèi)執(zhí)行.do文件進(jìn)行仿真,不通過(guò)vivado調(diào)用modelsim,vivado僅用于生成IP核。
    的頭像 發(fā)表于 12-04 18:26 ?1084次閱讀
    怎樣<b class='flag-5'>單獨(dú)</b>使用modelsim<b class='flag-5'>仿真</b>xilinx<b class='flag-5'>呢</b>?

    如何使用vivado仿真zynq7000ov5640程序?

    如何使用vivado仿真zynq7000ov5640程序?麻煩各位大哥給個(gè)思路,如何模擬攝像頭的時(shí)序和數(shù)據(jù)?
    發(fā)表于 08-29 09:37

    基于linux系統(tǒng)實(shí)現(xiàn)的vivado調(diào)用VCS仿真教程

    在linux系統(tǒng)上實(shí)現(xiàn)vivado調(diào)用VCS仿真教程 作用:vivado調(diào)用VCS仿真可以加快工程的仿真和調(diào)試,提高效率。 前期準(zhǔn)備:確認(rèn)安
    的頭像 發(fā)表于 07-05 03:30 ?1.1w次閱讀
    基于linux系統(tǒng)實(shí)現(xiàn)的<b class='flag-5'>vivado</b>調(diào)用VCS<b class='flag-5'>仿真</b>教程

    介紹一下xilinx的開發(fā)軟件vivado仿真模式

    本文介紹一下xilinx的開發(fā)軟件 vivado仿真模式, vivado仿真暫分為五種仿真
    的頭像 發(fā)表于 05-29 13:46 ?8045次閱讀

    Vivado軟件仿真DDS核的過(guò)程中應(yīng)該注意的問(wèn)題

    本人需要利用Vivado軟件中的DDS核生成一個(gè)正弦信號(hào)。由于后期還要生成線性調(diào)頻信號(hào),如果直接編寫代碼生成比特流文件下載到板子上進(jìn)行驗(yàn)證會(huì)使工作的效率大大下降,所有想利用Vivado軟件
    發(fā)表于 07-13 08:32 ?9666次閱讀

    Vivado 開發(fā)教程(四) 行為仿真

    本文介紹如何在教程(三)基礎(chǔ)上, 關(guān)聯(lián)ELF輸出文件并使用vivado對(duì)系統(tǒng)進(jìn)行行為仿真。
    發(fā)表于 03-01 10:25 ?24次下載
    <b class='flag-5'>Vivado</b> 開發(fā)教程(四) 行為<b class='flag-5'>仿真</b>

    Vivado調(diào)用Questa Sim或ModelSim仿真小技巧

    調(diào)用第三方仿真軟件查看波形的過(guò)程中存在的一些問(wèn)題。 1、添加新的觀測(cè)信號(hào)需要重新仿真 Vivado直接調(diào)用Modelsim/QuestaSim進(jìn)行仿
    的頭像 發(fā)表于 09-02 10:12 ?8129次閱讀
    <b class='flag-5'>Vivado</b>調(diào)用Questa Sim或ModelSim<b class='flag-5'>仿真</b>小技巧

    vivado仿真流程

    vivado開發(fā)軟件自帶了仿真工具,下面將介紹vivado仿真流程,方便初學(xué)者進(jìn)行仿真實(shí)驗(yàn)。
    的頭像 發(fā)表于 07-18 09:06 ?3836次閱讀
    <b class='flag-5'>vivado</b><b class='flag-5'>仿真</b>流程

    Vivado調(diào)用Modelsim仿真

    Modelsim是十分常用的外部仿真工具,在Vivado中也可以調(diào)用Modelsim進(jìn)行仿真,下面將介紹如何對(duì)vivado進(jìn)行配置并調(diào)用Modelsim進(jìn)行
    的頭像 發(fā)表于 07-24 09:04 ?3152次閱讀
    <b class='flag-5'>Vivado</b>調(diào)用Modelsim<b class='flag-5'>仿真</b>

    vivado軟件和modelsim軟件的安裝方法

    本文詳細(xì)介紹了vivado軟件和modelsim軟件的安裝,以及vivado中配置modelsim仿真設(shè)置,每一步都加文字說(shuō)明和圖片。
    的頭像 發(fā)表于 08-07 15:48 ?3969次閱讀
    <b class='flag-5'>vivado</b><b class='flag-5'>軟件</b>和modelsim<b class='flag-5'>軟件</b>的安裝方法

    仿真系統(tǒng)軟件的架構(gòu)是什么

    仿真系統(tǒng)軟件的架構(gòu)是什么? 智慧華盛恒輝仿真系統(tǒng)軟件的硬件載體大部分為專用計(jì)算機(jī)設(shè)備,并且通常沒(méi)有外圍設(shè)備用于測(cè)試過(guò)程中的監(jiān)測(cè)或觀察。而有
    的頭像 發(fā)表于 10-13 17:19 ?506次閱讀

    使用JTAG仿真器在vivado環(huán)境下抓信號(hào)時(shí)報(bào)錯(cuò)咋辦?

    在使用JTAG仿真器在vivado環(huán)境下抓信號(hào)時(shí),報(bào)如下錯(cuò)誤:
    的頭像 發(fā)表于 11-14 10:37 ?2965次閱讀