女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

使用VCS觀察Verilog二維數組仿真值的方法

冬至子 ? 來源:Bug記錄 ? 作者:woodfan ? 2023-06-06 11:12 ? 次閱讀

FIR設計過程中,不可避免使用到reg/wire的二維數組;在仿真的過程中,這些二維數組卻帶來不少麻煩,因為根據之前的內容,我們根本看不到這些二維數組的值。

而且,Verilog端口定義是不支持二維數組這樣的定義,所以也無法把數組傳到頂層觀察。

而實現過程中,這些二維數組卻是流水線操作中的一部分,如果不知道它們的值,找BUG的過程肯定會十分艱難。

好在搜集各方資料后,經過一番實踐,總算是得出了如何觀察這些二維數組的值的方法。

首先,在testbench里面修改一下:

原來的版本:

initial begin  $fsdbDumpfile("tb.fsdb");  $fsdbDumpvars;end

第一個語句是產生一個fsdb文件,文件名為tb.fsdb,第二句是保存所有變量的波形。這里是為了產生fsdb文件,這樣Verdi才能看到根據fsdb文件顯示波形

修改后的版本:

initial begin  $fsdbDumpfile("tb.fsdb");  $fsdbDumpvars;  $fsdbDumpMDA();end

第三行加了$fsdbDumpMDA(),這樣就可以Dump所有的Memeory值,不管什么信號都可以保存到Memory。

VCS編譯命令使用參數如下:

vcs  \\*.v -LDFLAGS -Wl,--no-as-needed -timescale=1ns/1ps \\-fsdb  -full64  -R  +vc  +v2k -sverilog  -debug_all

仿真結束后,想使用Verdi查看二維數組的值,啟動Verdi。

命令行如下:

verdi  -nologo \\+v2k  -sverilog  *.v -ssf tb.fsdb  &

可以在Verdi添加信號時看到二維數組,如下圖:

圖片

Verdi查看可以看到二維數組

添加之后:

圖片

可以從圖中看到,很不直觀,不能直接看出有什么問題。

換個思路,按照下圖操作,選擇Memory里的Memory/MDA工具

圖片

按照序號操作

按照圖中1,2的順序,然后按照下圖選擇想查看的信號

圖片

點擊后選擇想觀察的信號

圖片

顯示信號結果

這里需要說明,查看二維數組內部存儲的值,可以使用框1里面的鍵,左右可以控制仿真時間,信號的值會跟隨仿真時間改變而改變。框1的時間跨度可以更改。

默認顯示的信號都是十六進制,如果想改變進制顯示,在2的位置右鍵可以改變進制顯示,并選擇有符號或無符號顯示。

地址數據也是十六進制顯示,可以在3的位置右鍵改變為十進制顯示。

有了這些工具的幫助,便可以從出錯的結果一步步往上查,追查BUG的效率提高不少。

總結,操作順序:

  1. Testbench加入$fsdbDumpMDA();
  2. 使用Verdi的Memory/MDA工具查看
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FIR
    FIR
    +關注

    關注

    4

    文章

    151

    瀏覽量

    33978
  • Verilog
    +關注

    關注

    28

    文章

    1365

    瀏覽量

    111701
  • VCS
    VCS
    +關注

    關注

    0

    文章

    80

    瀏覽量

    9827
  • MDA
    MDA
    +關注

    關注

    0

    文章

    13

    瀏覽量

    12357
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    二維數組各列循環更新程序

    程序實現了把生成的一數組更新二維數組各列功能。基本實現了LabVIEW二維數組插入的功能要求。
    發表于 10-13 13:20

    請問Verilog怎么實現二維數組輸出?

    各位大哥,求教一下,Verilog如何實現二維數組輸出。看過網上的例程,一般都是拆成一數組輸出的,但是如果
    發表于 05-23 22:23

    Labview之自動索引功能(二維數組--一數組

    Labview之自動索引功能(二維數組--一數組),很好的Labview資料,快來下載學習吧。
    發表于 04-19 10:56 ?0次下載

    Labview之簇數組二維數組顯示

    Labview之簇數組二維數組顯示,很好的Labview資料,快來下載學習吧。
    發表于 04-19 11:28 ?0次下載

    c語言二維數組定義及其規則詳解

    數組只有一個下標,,稱為一數組,其數組元素也稱為單下標變量。在實際問題中有很多量是二維的或
    發表于 11-16 08:49 ?2.2w次閱讀
    c語言<b class='flag-5'>二維</b><b class='flag-5'>數組</b>定義及其規則詳解

    c語言二維數組初始化及使用

    二維數組初始化也是在類型說明時給各下標變量賦以初值。二維數組可按行分段賦值,也可按行連續賦值。 數組是一種構造類型的數據。
    發表于 11-16 09:15 ?2w次閱讀
    c語言<b class='flag-5'>二維</b><b class='flag-5'>數組</b>初始化及使用

    二維數組重新排序

    labview進行二維數組的重新排序
    發表于 12-12 15:15 ?10次下載

    C語言程序設計教程之二維數組如何應用二維數組的資料概述

    本文檔的主要內容詳細介紹的是C語言程序設計教程之二維數組如何應用二維數組的資料概述主要內容包括了:1 了解二維
    發表于 10-26 16:48 ?3次下載

    Verilog中的二維數組說明

    Verilog中提供了兩數組來幫助我們建立內存的行為模型。具體來說,就是可以將內存宣稱為一個reg類型的數組,這個數組中的任何一個單元都可
    的頭像 發表于 09-28 11:35 ?3.1w次閱讀

    二維數組數組指針以及指針數組

    二維數組數組指針以及指針數組
    的頭像 發表于 08-16 09:02 ?3014次閱讀

    Python將二維數組輸出為圖片

    使用Python讀取二維數組,將二維數組輸出為圖片,并保存在本地。
    的頭像 發表于 01-11 16:18 ?1650次閱讀
    Python將<b class='flag-5'>二維</b><b class='flag-5'>數組</b>輸出為圖片

    C語言—二維數組介紹

    定義一個兩行三列的二維數組,總共有6個元素
    的頭像 發表于 09-11 14:51 ?1140次閱讀
    C語言—<b class='flag-5'>二維</b><b class='flag-5'>數組</b>介紹

    python怎么創建二維數組

    如何創建二維數組在Python中是一個常見的問題。在Python中,我們可以使用嵌套的列表(list of lists)或者使用NumPy庫來創建二維數組。在本文中,我們將詳細介紹這兩
    的頭像 發表于 11-21 15:10 ?4389次閱讀

    python如何定義二維數組

    在Python中,可以通過使用列表嵌套的方式來定義二維數組。具體步驟如下: Step 1: 創建一個空的二維列表 要創建一個空的二維數組
    的頭像 發表于 11-21 15:12 ?2191次閱讀

    將一數組轉為二維python

    將一數組轉為二維數組是一個常見的問題,特別是在處理數據時。一數組是由一個連續的數據塊組成,而
    的頭像 發表于 11-23 14:54 ?5853次閱讀