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

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

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

Questasim與Visualizer的livesim仿真如何啟動呢?

冬至子 ? 來源:CSDN ? 作者:谷公子 ? 2023-10-10 11:33 ? 次閱讀

1.前言

Live-Simulation (live-sim)模式允許Visualizer調(diào)試環(huán)境與Questasim進(jìn)行交互操作,此模式將Visualizer GUI與Questasim仿真相結(jié)合,因此可以在線調(diào)試當(dāng)前仿真的結(jié)果和波形。

在livesim模式中,可以在Visualizer GUI中控制仿真、設(shè)置斷點(Breakpoints)、單步調(diào)試、檢查記錄或未記錄的數(shù)據(jù)值、以及跟蹤類對象。因此,在調(diào)試驗證環(huán)境或RTL的問題時,livesim可以更有效率地定位問題。下文介紹下live-simulation模式如何啟動以常用功能。

2.啟動live-sim模式

Questasim要求使用3步仿真流程(vlog, vopt, vsim)來調(diào)用livesim模式下的Visualizer,而不是2步仿真流程(vlog, vsim+vopt)。

第一步:準(zhǔn)備TB和RTL代碼

這里簡單創(chuàng)建名為livesim_example.sv的文件,它的內(nèi)容是:

module livesim_example;  
    int a = 600;  
    int b = 66;  
    int c;  
    reg clk = 1'b0;
    initial begin
        c = a + b; 
        $display("result1: The sum of a(%0d) and b(%0d) is c(%0d)", a, b, c);  
        # 10ns;
        forever begin
            # 5ns;
            clk = ~clk;
            c   = c + 1;
            $display("The current c: %0d", c);
            # 5ns;
            c   = c + 2;
            $display("The current c: %0d", c);
        end
    end
endmodule

第二步:vlog命令編譯

需要調(diào)用Questasim的vlog命令把代碼先編譯過,命令如下:

vlib work
vlog livesim_example.sv

這時候會生成livesim_example的top module。(注意,如果是VHDL文件的話,要使用vcom命令,而不是vlog)

第三步:vopt命令優(yōu)化

需要調(diào)用Questasim的vopt命令把design優(yōu)化下,命令如下:

vopt -debug livesim_example -o live_opt -designfile design.bin

這時候會生成名為live_opt的優(yōu)化design名。

在優(yōu)化過程中,必須的-designfile參數(shù)的作用是創(chuàng)建Visualizer所需的design數(shù)據(jù)庫文件名稱(design.bin),如果默認(rèn)用design.bin名稱的話,其實-designfile design.bin可以替換為+designfile,這樣Questasim默認(rèn)生成的bin文件名字為design.bin。必須的-o參數(shù)為design的優(yōu)化版本指定一個名稱,名稱可以包含小寫字母、大寫字母、數(shù)字字符或下劃線??蛇x的-debug參數(shù)限制優(yōu)化以保證行號的可見性,這就可以在Visualizer的livesim模式下啟用行breakpoints。其它需要的vopt參數(shù)大家可以根據(jù)需要添加。

第四步:vsim命令仿真

使用vsim命令開始仿真,命令如下:

vsim -visualizer live_opt

這里live_opt的名字就是第三步vopt命令-o參數(shù)生成的名字。vsim命令將design加載到仿真器中,然后將design.bin文件和仿真控制傳遞給Visualizer GUI。

在design elaboration過程中,仿真elaboration消息顯示在啟動shell中,并且也保存在visualizer.log文件中。如果elaboration有錯誤,則顯示消息并退出仿真。如果elaboration成功,將調(diào)用Visualizer GUI。Visualizer GUI首先讀取數(shù)據(jù)并連接到仿真器,當(dāng)GUI準(zhǔn)備好接受CLI命令時,在transcript窗口會出現(xiàn)” Visualizer 1>”。

只要完成了以上的幾個步驟,就會出現(xiàn)以下界面,表示進(jìn)入livesim模式了,也就是聯(lián)合Questasim和Visualizer進(jìn)行實時仿真調(diào)試。

image.png

3. livesim仿真常用功能

進(jìn)入livesim模式后,就是使用Visualizer GUI界面去debug代碼了,這里簡單介紹幾個常用功能,更多的用法大家可以去探索下。

3.1 變量值提示

當(dāng)啟用變量值提示(Value Tool Tip)功能后,記那個鼠標(biāo)懸停在源代碼、原理圖和許多其它窗口中的對象上時,彈出的工具提示將顯示該對象的值、大小和帶有下劃線 (_) 的基數(shù)前綴。此默認(rèn)值格式化在仿真期間被記錄。

不過通過vsim命令中指定+vis_no_format_num,可以禁用值格式化,只顯示對象值。變量值提示(Value Tool Tip)啟動和關(guān)閉按鈕在下圖紅色箭頭指向的地方。

image.png

3.2 Debugger菜單

在Debugger菜單下有運行、步進(jìn)、重新啟動、保存或恢復(fù)checkpoints點,以及使用C調(diào)試器。

image.png

3.3 工具欄的調(diào)試

在工具欄上也可以方便的控制仿真的進(jìn)行。

image.png

3.4 設(shè)置breakpoint

右鍵代碼的前方,會出現(xiàn)以下窗口,我們就可以設(shè)置一些breakpoint來輔助debug。

image.png

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

    關(guān)注

    14

    文章

    1018

    瀏覽量

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

    關(guān)注

    1

    文章

    385

    瀏覽量

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

    關(guān)注

    3

    文章

    660

    瀏覽量

    39685
  • VHDL電路
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    1405
收藏 人收藏

    評論

    相關(guān)推薦

    NCSIM、VCS和QuestaSim仿真如何屏蔽冗余的違例信息?

    在進(jìn)行數(shù)字電路后仿真時,經(jīng)常會遇到很多時序為例,通常這些違例都是由網(wǎng)表中大量的時序檢查報出的。
    的頭像 發(fā)表于 01-03 09:43 ?2621次閱讀

    如何用questasim進(jìn)行systemverilog仿真

    剛接觸systemverilog,最近在采用questasim10.1版本進(jìn)行仿真時,發(fā)現(xiàn)貌似questasim不支持?jǐn)U展類的操作?代碼如下:`timescale 1ns/1nsmodule
    發(fā)表于 04-11 09:44

    ISE設(shè)計,questasim仿真時庫編譯的問題

    設(shè)計中用到了GTP_DUAL,利用questasim仿真。Simulation時報錯,說找不到GTP_DUAL_fast.v這個文件。在xilinx的安裝目錄下mti文件中搜索到
    發(fā)表于 08-30 16:04

    PROTOLINK PROBE VISUALIZER的優(yōu)勢

    —SpringSoft 今天發(fā)表ProtoLink? Probe Visualizer,這款產(chǎn)品能夠大幅提升設(shè)計能見度,同時簡化 FPGA 原型板的偵錯工作。新推出的 Probe Visualizer 采用創(chuàng)新
    發(fā)表于 07-06 17:52

    介紹一下波形仿真如何進(jìn)行

    下載的仿真軟件路徑添加到location of executable中即可。 在設(shè)計FPGA時,要求我們有仿真的波形圖,所以我們需要進(jìn)行波形仿真,下面就介紹一下波形仿真如何進(jìn)行。第一步
    發(fā)表于 01-19 08:05

    Proteus仿真如何將40110的7段數(shù)碼管輸出信號轉(zhuǎn)換成BCD二進(jìn)制信號?

    Proteus仿真如何將40110的7段數(shù)碼管輸出信號轉(zhuǎn)換成BCD二進(jìn)制信號?
    發(fā)表于 03-29 17:27

    求助,請問LTspice仿真如何讀取PF值?

    LTspice仿真如何讀取PF值?
    發(fā)表于 08-01 14:44

    questasim 6.5 (for xp/linux)

    questasim 6.5 (for xp/linux)
    發(fā)表于 04-01 00:17 ?192次下載
    <b class='flag-5'>questasim</b> 6.5 (for xp/linux)

    全新WEBENCH Visualizer設(shè)計工具

    全新WEBENCH Visualizer設(shè)計工具 美國國家半導(dǎo)體公司 (NS)宣布推出一套稱為WEBENCH® Visualizer設(shè)計工具。憑借這套性能卓越的比較及選擇工具,工程師能夠迅速選擇一款最理
    發(fā)表于 11-11 09:39 ?970次閱讀

    ModelSim和QuestaSim功能簡介及應(yīng)用

    ModelSim和QuestaSim功能簡介及應(yīng)用 ModelSim是工業(yè)界最優(yōu)秀的語言仿真器,它提供最友好的調(diào)試環(huán)境
    發(fā)表于 04-29 09:07 ?2w次閱讀
    ModelSim和<b class='flag-5'>QuestaSim</b>功能簡介及應(yīng)用

    WEBENCH Visualizer的特點及應(yīng)用介紹

    WEBENCH Visualizer概述
    的頭像 發(fā)表于 08-20 00:02 ?3812次閱讀

    基于FPGA的仿真如何工作

    工程師更廣泛地理解基于FPGA的仿真,因為工程師習(xí)慣于使用FPGA進(jìn)行設(shè)計。對基于處理器的仿真器的理解不太了解,而且有大量錯誤信息的例子比比皆是。本文將嘗試消除解釋基于處理器的仿真如何工作以及如何將設(shè)計構(gòu)造映射到其中的謎團(tuán),例如
    的頭像 發(fā)表于 09-14 12:54 ?1.1w次閱讀
    基于FPGA的<b class='flag-5'>仿真如</b>何工作

    如何通過自動化腳本實現(xiàn)Questasim和Verdi的聯(lián)合仿真

    Verdi是用來仿真以及debug波形的工具,但它不能夠用來編譯verilog和systemverilog文件,所以需要借助第三方EDA工具去做編譯的工作。 這里主要分享一下使用questasim
    的頭像 發(fā)表于 06-13 17:00 ?4583次閱讀
    如何通過自動化腳本實現(xiàn)<b class='flag-5'>Questasim</b>和Verdi的聯(lián)合<b class='flag-5'>仿真</b>

    Modelsim/Questasim基本命令

    Modelsim/Questasim基本命令
    發(fā)表于 10-21 15:06 ?1次下載

    使用Vivado調(diào)用questasim仿真報錯的原因及其解決辦法

    有一天使用Vivado調(diào)用questasim(modelsim估計也一樣),仿真報錯
    的頭像 發(fā)表于 05-08 17:12 ?3162次閱讀