在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Vivado調用第三方仿真軟件查看波形的過程中存在的一些問題

FPGA技術江湖 ? 來源:網絡交換FPGA ? 2023-02-10 16:28 ? 次閱讀

Vivado調用Questa Sim或ModelSim仿真中存在的一些自動化問題的解決方案。

Vivado調用Questa Sim仿真中存在的一些問題

首先說明一下Modelsim與Questa Sim都可以與Vivado聯調,也比較相似,但是Questa Sim比Modelsim功能更加廣泛,對于System Verilog的語法支持更加完善,本文以Questa Sim為例說明一下Vivado調用第三方仿真軟件查看波形的過程中存在的一些問題。

1、添加新的觀測信號需要重新仿真

Vivado直接調用Modelsim/QuestaSim進行仿真時,波形文件里默認只會出現仿真最頂層中包含的信號,若此時將仿真運行一段時間后,想要查看其他模塊信號波形時,需要重新仿真或者運行do XXX_simulate.do方可。 以圖1所示工程為例,

2907441a-a91a-11ed-bfe3-dac502259ad0.jpg

圖1 vivado示例工程

在這個工程中,我們調用Questa Sim進行仿真,可以看到頂層模塊會自動跑100ns,如圖2所示。

2922d414-a91a-11ed-bfe3-dac502259ad0.jpg

圖2 QuestaSim仿真波形

此時,我們若想查看l_ethernet_0_pkt_gen_mon這個模塊的波形時,直接進入波形界面進行添加,結果如圖3所示。

293f6dae-a91a-11ed-bfe3-dac502259ad0.jpg

圖3 QuestaSim仿真波形

從圖3中可以看到,當模塊的信號被添加進來后,已經運行過的仿真時間內,新加入的信號沒有仿真結果。

2、修改邏輯代碼后,需要重新調用仿真器

在代碼調試過程中,修改部分邏輯代碼后(不包括IP核),如果想要查看修改后工程的仿真結果,需要關閉當前的仿真器,從vivado中重新調用方可。

其原因是vivado在生成XXX_compile.do文件時,會在其末尾自動添加“quit -force”語句,而更改了相應的代碼文件后,我們需要執行“do XXX_compile.do”命令重新編碼整個庫,然而在運行此文件時,當前的仿真器會被強制退出。

解決方案

為了解決上述問題,同時更加方便使用,本文使用TCL語言,編寫了一個較為方便的do文件,其可以實現如下功能:

1、對XXX_compile.do自動修改

對XXX_compile.do自動修改,去除其末尾的“quit -force”,并生成新的compile.do文件,其對應的源代碼如下:

setfilename[glob*_compile.do]
setcontent[open$filenamer+]
setrow0
while{![eof$content]}{
incrrow
gets$contentline
setlist($row)$line
}
close$content
setfilename2"compile.do";
setcontent[open$filename2w+]
for{seti1}{$i<=?$row}?{incr?i}?{
????if?{![string?match?"quit?-force"?$list($i)]}?{
????????puts?$content?$list($i)
????}????
};
close?$content

2、使用“log -r /*”命令

該命令可以讓modelsim/Questa Sim在進行仿真中,對所有信號同步進行仿真,從而解決新加入的觀測信號沒有仿真結果的問題;

3、保證仿真器不退出

當修改工程中的邏輯代碼(不含IP核)后,只需要運行該do文件,其自動進行編譯和仿真,且使用修改后的compile.do文件,保證仿真器不退出,其對應的源代碼如下:

setfilenamecompile.do
do$filename
setfilename[glob*_simulate.do]
do$filename
log-r/*
restart-force
run1ms

例程

在使用該do文件之前,需要首先通過vivado調用modelsim/ questasim,然后將do文件拷貝到工程對應的behave文件夾下。

仍以圖1所示工程為例,當修改了代碼內部分邏輯后,在QuestaSim的transcrip界面,輸入命令do auto_update_sim.do即可自動重新編譯、仿真,結果如圖4所示(默認仿真時間設置為1ms)

29857fec-a91a-11ed-bfe3-dac502259ad0.png

圖4 QuestaSim仿真波形

添加了l_ethernet_0_pkt_gen_mon這個模塊,可以發現仿真過的時間內同樣有仿真結果,如圖5所示。

2998bbfc-a91a-11ed-bfe3-dac502259ad0.jpg

圖5 QuestaSim仿真波形

完整源碼

setfilename[glob*_compile.do]
setcontent[open$filenamer+]
setrow0
while{![eof$content]}{
incrrow
gets$contentline
setlist($row)$line
}
close$content
setfilename2"compile.do";
setcontent[open$filename2w+]
for{seti1}{$i<=?$row}?{incr?i}?{
????if?{![string?match?"quit?-force"?$list($i)]}?{
????????puts?$content?$list($i)
????}????
};
close?$content
set?filename?compile.do
do?$filename
set?filename?[glob?*_simulate.do]
do?$filename
log?-r?/*
restart?–force
run?1ms





審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 仿真器
    +關注

    關注

    14

    文章

    1019

    瀏覽量

    83841
  • questasim
    +關注

    關注

    0

    文章

    5

    瀏覽量

    7501
  • Vivado
    +關注

    關注

    19

    文章

    815

    瀏覽量

    66704
  • MODELSIM仿真
    +關注

    關注

    0

    文章

    15

    瀏覽量

    7326

原文標題:Vivado調用Questa Sim仿真小技巧

文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    如何用Python實現Vivado和ModelSim仿真自動化?

    我們在Windows系統下使用Vivado的默認設置調用第三方仿真器比如ModelSim進行仿真時,
    的頭像 發表于 09-13 09:23 ?1342次閱讀
    如何用Python實現<b class='flag-5'>Vivado</b>和ModelSim<b class='flag-5'>仿真</b>自動化?

    如何打開第三方軟件

    請問大神們 誰知道如何在Labview 打開第三方軟件,我現在想打開工程后 自動打開USB視頻采集卡,然后就直接顯示出采集卡采集到的圖像了請問如何打開在這先謝過了
    發表于 09-11 16:26

    求高手討教!求指點!求鄙視!各種求!調用第三方軟件!

    各位大神,目前在做個項目其中有個功能,要求我對加載過來的TCL腳本 進行編譯查看腳本是否正確! 我想調用第三方軟件(ActiveTCL)編
    發表于 04-25 10:44

    如何在LabVIEW嵌入第三方軟件界面

    如何把第三方軟件的界面嵌入到labview,并且能夠在LabVIEW的前面板第三方軟件進行
    發表于 04-27 23:06

    第三方dll調用問題?。。?/a>

    第三方dll,沒有.h,labview怎么實現調用,dll可以用VS打開,類庫說明也有
    發表于 05-11 09:14

    LabVIEW與第三方軟件交互問題

    現在做軟件,就是通過LabVIEW去與第三方軟件進行交互操作!已經通過百度找到了利用user32.dll調用FindWindowA與Po
    發表于 12-26 17:13

    關于LabVIEW調用第三方exe,如何去控制第三方exe按鈕的問題

    我想調用第三方的exe,但并沒有給出任何接口,就單單個exe程序,通過查資料得出可以用window自帶的user32.dll可以控制第三方軟件
    發表于 08-12 16:37

    頭文件包含第三方文件

    macrocmake如果源文件(例如 CPP)包含第三方頭文件,但是頭文件(例如 hpp)不包含該第三方文件頭,采用 PRIVATE。如果源文件和頭文件中都包含該
    發表于 08-18 08:10

    第三方數字認證

    第三方數字認證 、實驗目的: 熟悉數字證書的申請過程,了解數字證書的使用。二、實驗前準備: 先查看本機的證書狀況,在IE中點工
    發表于 03-18 18:23 ?2972次閱讀
    <b class='flag-5'>第三方</b>數字認證

    基于Vivado設計的第三方仿真器版本說明

    本文列出了能夠與 Vivado 設計套件聯用的支持性第三方仿真器。 這些也在隨該軟件起發布的“Viva
    發表于 11-15 16:18 ?2130次閱讀

    如何將Vivado IP和第三方綜合工具配合使用

    觀看視頻,學習如何將 Vivado IP 和第三方綜合工具配合使用。 此視頻將通過個設計實例引導您完成創建自定義 IP 的步驟;用第三方綜合工具IP黑盒子來審查所需 IP 輸出;整合
    的頭像 發表于 11-21 06:34 ?5140次閱讀

    Vivado調用Questa Sim或ModelSim仿真小技巧

    調用第三方仿真軟件查看波形過程中
    的頭像 發表于 09-02 10:12 ?8569次閱讀
    <b class='flag-5'>Vivado</b><b class='flag-5'>調用</b>Questa Sim或ModelSim<b class='flag-5'>仿真</b>小技巧

    在SpringBoot重試調用第三方API教程

    作為后端程序員,我們的日常工作就是調用一些第三方服務,將數據存入數據庫,返回信息給前端。但你不能保證所有的事情直都很順利。像有些第三方AP
    的頭像 發表于 05-11 10:43 ?732次閱讀

    Vivado關聯第三方編輯器的方法

    Vivado個非常強大的工具,但是在一些方面可能不能完全滿足我們的需求,比如代碼編輯器的功能。幸運的是,Vivado允許我們關聯第三方
    的頭像 發表于 05-16 16:36 ?1774次閱讀
    <b class='flag-5'>Vivado</b>關聯<b class='flag-5'>第三方</b>編輯器的方法

    調用第三方 API 接口會遇到哪些問題

    了 11、接口時好時壞 12、文檔和接口邏輯不致 13、欠費了 ? 前言 在實際工作,我們經常需要在項目中調用第三方API接口,獲取數據,或者上報數據,進行數據交換和通信。 那么,
    的頭像 發表于 05-29 14:31 ?1552次閱讀
    主站蜘蛛池模板: 天堂bt在线| 男人和女人在床做黄的网站| 日本不卡视频一区二区| 色综合色综合色综合色综合网| 美女艹逼视频| 四虎永久在线精品影院| 美女免费视频一区二区三区| 国产在线干| 天天爽夜夜爽精品免费| 国产三级一区| 久久综合性| 欧美性受一区二区三区| 婷婷5月天| 国产免费久久精品99久久| yiren22亚洲综合高清一区| 孩交啪啪网址| 人人做人人看| 69er小视频| 国产在线观看色| 美女被色| 成人欧美一区二区三区视频不卡 | 永久免费影视在线观看| 国产黄色高清视频| 黄视频在线播放| 久久精品5| 精品四虎免费观看国产高清| 国产成人精品亚洲日本在线| 国产美女一级ba大片免色| 国模伊人| 窝窝午夜视频| 天天摸天天澡天天碰天天弄| 五月国产综合视频在线观看| 久久啊| 国产成人1024精品免费| 成人福利在线视频| 大片免费看| 亚洲一区二区高清| 视频一区视频二区在线观看| 特黄特a级特别特级特毛片| 亚洲大成色www永久网| 婷婷激情五月|