国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

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

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

FPGA之家 ? 來源:網(wǎng)絡(luò)交換FPGA ? 作者:董勐 ? 2021-09-02 10:12 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

Vivado調(diào)用Questa Sim仿真中存在的一些問題

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

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

Vivado直接調(diào)用Modelsim/QuestaSim進行仿真時,波形文件里默認只會出現(xiàn)仿真最頂層中包含的信號,若此時將仿真運行一段時間后,想要查看其他模塊信號波形時,需要重新仿真或者運行do XXX_simulate.do方可。

在這個工程中,我們調(diào)用Questa Sim進行仿真,可以看到頂層模塊會自動跑100ns。

此時,我們?nèi)粝氩榭磍_ethernet_0_pkt_gen_mon這個模塊的波形時,直接進入波形界面進行添加,結(jié)果如圖3所示。

b72ff162-0b49-11ec-8fb8-12bb97331649.jpg

圖3 QuestaSim仿真波形

從圖3中可以看到,當(dāng)模塊的信號被添加進來后,已經(jīng)運行過的仿真時間內(nèi),新加入的信號沒有仿真結(jié)果。

2、修改邏輯代碼后,需要重新調(diào)用仿真器

在代碼調(diào)試過程中,修改部分邏輯代碼后(不包括IP核),如果想要查看修改后工程的仿真結(jié)果,需要關(guān)閉當(dāng)前的仿真器,從vivado中重新調(diào)用方可。其原因是vivado在生成XXX_compile.do文件時,會在其末尾自動添加“quit -force”語句,而更改了相應(yīng)的代碼文件后,我們需要執(zhí)行“do XXX_compile.do”命令重新編碼整個庫,然而在運行此文件時,當(dāng)前的仿真器會被強制退出。

解決方案

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

1、對XXX_compile.do自動修改

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

set filename [glob *_compile.do]

set content [open $filename r+]

set row 0while {![eof $content]} {

incr row

gets $content line

set list($row) $line

}

close $contentset filename2 “compile.do”;

set content [open $filename2 w+]

for {set i 1} {$i 《= $row} {incr i} {

if {![string match “quit -force” $list($i)]} {

puts $content $list($i)

}

};

close $content

2、使用“l(fā)og -r /*”命令

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

3、保證仿真器不退出

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

set filename compile.do

do $filenameset filename [glob *_simulate.do]

do $filenamelog -r /*

restart -force

run 1ms

例程

在使用該do文件之前,需要首先通過vivado調(diào)用modelsim/ questasim,然后將do文件拷貝到工程對應(yīng)的behave文件夾下。仍以工程為例,當(dāng)修改了代碼內(nèi)部分邏輯后,在QuestaSim的transcrip界面,輸入命令do auto_update_sim.do即可自動重新編譯、仿真,結(jié)果如圖4所示(默認仿真時間設(shè)置為1ms)

b73a161a-0b49-11ec-8fb8-12bb97331649.png

圖4 QuestaSim仿真波形

添加了l_ethernet_0_pkt_gen_mon這個模塊,可以發(fā)現(xiàn)仿真過的時間內(nèi)同樣有仿真結(jié)果,如圖5所示。

b74a2398-0b49-11ec-8fb8-12bb97331649.jpg

圖5 QuestaSim仿真波形

完整源碼

set filename [glob *_compile.do]

set content [open $filename r+]

set row 0while {![eof $content]} {

incr row

gets $content line

set list($row) $line

}

close $contentset filename2 “compile.do”;

set content [open $filename2 w+]

for {set i 1} {$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

編輯:jq

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

    關(guān)注

    5

    文章

    1862

    瀏覽量

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

    關(guān)注

    14

    文章

    1051

    瀏覽量

    87262
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4967

    瀏覽量

    73960
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    857

    瀏覽量

    71106

原文標(biāo)題:[源碼]Vivado調(diào)用Questa Sim仿真小技巧

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    如何使用Modelsim仿真I2C控制器

    ModelSim是Model Technology(Mentor Graphics的子公司)的HDL硬件描述語言的仿真軟件。該軟件可以用來實現(xiàn)對設(shè)計的VHDL、Verilog HDL 或是兩種語言
    的頭像 發(fā)表于 01-10 14:14 ?5369次閱讀
    如何使用<b class='flag-5'>Modelsim</b><b class='flag-5'>仿真</b>I2C控制器

    【產(chǎn)品介紹】Questa One Sim軟件

    優(yōu)勢與平臺支持優(yōu)勢行業(yè)領(lǐng)先的高性能多語言仿真器用于可測性設(shè)計(DFT)向量驗證的最快仿真器高性能、高容量的集成調(diào)試環(huán)境覆蓋率加速功能,助力更快實現(xiàn)覆蓋率收斂智能編譯(SmartCompile)和多核
    的頭像 發(fā)表于 11-17 10:39 ?759次閱讀
    【產(chǎn)品介紹】<b class='flag-5'>Questa</b> One <b class='flag-5'>Sim</b>軟件

    【產(chǎn)品介紹】Modelsim:HDL語言仿真軟件

    概述ModelSim是業(yè)界最優(yōu)秀的HDL語言仿真軟件,它能提供友好的仿真環(huán)境,是業(yè)界唯一的單內(nèi)核支持VHDL和Verilog混合仿真仿真
    的頭像 發(fā)表于 11-13 11:41 ?496次閱讀
    【產(chǎn)品介紹】<b class='flag-5'>Modelsim</b>:HDL語言<b class='flag-5'>仿真</b>軟件

    利用 NucleiStudio IDE 和 vivado 進行軟硬件聯(lián)合仿真

    本文利用NucleiStudio IDE 和 vivado 對 NICE demo協(xié)處理器進行軟硬件聯(lián)合仿真。 1. 下載demo_nice例程:https://github.com
    發(fā)表于 11-05 13:56

    Hbirdv2在vivado2018.3上的仿真工作

    一、隊伍介紹 本篇為蜂鳥E203系列分享第一篇。本篇介紹的內(nèi)容是Hbirdv2在vivado2018.3上的仿真工作。 二、前言 仿真前,我們首先需要獲得仿真需要的.verilo
    發(fā)表于 10-31 08:43

    Vivado仿真之后沒有出現(xiàn)仿真結(jié)果的解決方法

    ;Run Behavioral Simulation之后,會出現(xiàn)如下圖界面,此時,在Tcl Console中并沒有出現(xiàn)仿真結(jié)果。 沒有出現(xiàn)仿真結(jié)果的原因是沒有給Vivado時間進行仿真
    發(fā)表于 10-31 06:24

    利用vivado實現(xiàn)對e200_opensource 蜂鳥E203一代的仿真

    最后,點擊run simulation進行 行為級仿真 得到最后的仿真結(jié)果如圖所示 本文參考論壇內(nèi)另外兩篇文章: [1] 在Windows環(huán)境下用Vivado調(diào)試E203作者:leon [2
    發(fā)表于 10-31 06:14

    VIVADO中對NICE進行波形仿真的小問題的解決

    分別如下圖 可以看到,輸出運算結(jié)果的pritnf函數(shù)被#ifdef所定義,所以我們?nèi)绻朐?b class='flag-5'>VIVADO的控制臺看到輸出結(jié)果,要先在main.c中定義DEBUG_INFO,如下圖 這樣,將編譯后生成的.verilog文件再用VIVADO讀入
    發(fā)表于 10-27 06:41

    vivado上進行benchmark跑分(微架構(gòu)優(yōu)化之前)

    已有的vivado工程中將simulation文件加入sim_source: 將top.v加入,并設(shè)置到頂層: 修改tb_top.v文件(https://www.rvmcu.com
    發(fā)表于 10-24 09:39

    vcs和vivado聯(lián)合仿真

    我們在做參賽課題的過程中發(fā)現(xiàn),上FPGA開發(fā)板跑系統(tǒng)時,有時需要添加vivado的ip核。但是vivado仿真比較慢,vcs也不能直接對添加了vivado ip核的soc系統(tǒng)進行
    發(fā)表于 10-24 07:28

    Nucleistudio+Vivado協(xié)同仿真教程

    編譯完成后,我們會在工程目錄下發(fā)現(xiàn)生成了.verilog文件,此即為我們仿真需用到的文件,可以將改文件復(fù)制保存在tb目錄下 聯(lián)合仿真 在我們前面創(chuàng)建的Vivado工程中添加仿真
    發(fā)表于 10-23 06:22

    如何在Vivado仿真蜂鳥SOC,仿真NucleiStudio編譯好的程序

    如標(biāo)題所示,我們分享如何在Vivado仿真蜂鳥SOC,仿真NucleiStudio編譯好的程序 具體步驟 1. 將蜂鳥soc移植到Vivado 只要將端口映射好,注意配置好時鐘和
    發(fā)表于 10-21 11:08

    vivado仿真時GSR信號的影響

    利用vivado進行設(shè)計xilinx FPGA時,寫完設(shè)計代碼和仿真代碼后,點擊run simulation(啟動modelsim進行仿真)。
    的頭像 發(fā)表于 08-30 14:22 ?1362次閱讀
    <b class='flag-5'>vivado</b><b class='flag-5'>仿真</b>時GSR信號的影響

    西門子推出Questa One智能驗證解決方案

    西門子數(shù)字化工業(yè)軟件宣布推出 Questa One 智能驗證軟件產(chǎn)品組合,以人工智能(AI)技術(shù)賦能連接性、數(shù)據(jù)驅(qū)動方法和可擴展性,突破集成電路 (IC) 驗證流程限制,助力工程團隊有效提高生產(chǎn)效率。
    的頭像 發(fā)表于 05-13 18:19 ?1460次閱讀

    Vivado調(diào)用MIG產(chǎn)生DDR3的問題解析

    下面是調(diào)用的DDR3模塊的,模塊的倒數(shù)第二行是,模塊的時鐘輸入,時鐘源來自PLL產(chǎn)生的系統(tǒng)時鐘的倍頻。
    的頭像 發(fā)表于 05-03 10:21 ?1531次閱讀
    在<b class='flag-5'>Vivado</b><b class='flag-5'>調(diào)用</b>MIG產(chǎn)生DDR3的問題解析