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

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

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

Vivado Waveform功能使用技巧詳解

電子設(shè)計 ? 來源:CSDN 博主 ? 作者:FPGADesigner的博客 ? 2021-01-03 09:22 ? 次閱讀

使用波形配置文件

Vivado Simulator允許用戶自定義波形顯示方式,當(dāng)前的顯示狀態(tài)稱作波形配置。波形配置可以保存為WCFG文件,供以后使用。一個波形配置對應(yīng)一個Wave窗口,沒有保存的波形配置顯示為untitled。打開仿真后,F(xiàn)ile菜單中有與波形配置相關(guān)的指令:

pIYBAF9uJ2eAOJu8AAAe350sa0w911.png

這些控制功能依次是:

  • New Waveform Configuration:創(chuàng)建一個新的波形配置,Vivado會打開一個新波形窗口,但是不包含任何HDL對象,設(shè)計者從Scope或Object窗口中人工添加;
  • Open Waveform Configuration:打開配置文件同時打開一個波形窗口,會顯示存儲在WCFG文件中對象的波形數(shù)據(jù);
  • Saving a Wave Configuration:保存當(dāng)前波形配置到WCFG文件中。

如果關(guān)閉了仿真,下次需要使用是只是想查看上次仿真的結(jié)果,而不是重新運行仿真,點擊Flow菜單下的Open Static Simulation,選擇WDB文件即可(在project.sim/sim_1/behav路徑下)。靜態(tài)仿真模式下,Vivado Simulator會從WDB文件中讀取數(shù)據(jù)并顯示。

運行仿真過程中,會將顯示的HDL對象的波形活動、Sope窗口中的對象、Objects窗口中的對象存儲到WDB文件中。但注意,Vivado不能打開2014.3版本之前創(chuàng)建的WDB文件。

窗口對象(wave object)

向波形配置中添加一個HDL對象,其實并不是直接添加該對象,Vivado會創(chuàng)建一個窗口對象,該對象與HDL對象有聯(lián)系也有區(qū)別。借助此特性,一個HDL對象可以創(chuàng)建多個與其相關(guān)的窗口對象,且每個窗口對象的顯示設(shè)置可以不同。比如一個用16進制顯示,另一個用10進制顯示。

由HDL對象而來的窗口對象稱作設(shè)計窗口對象,除此之外,還有其它的對象類型:隔離帶(divider)、群組(group)、虛擬總線(virtual buses)。這些對象都是為了提高觀察波形的便捷性,前兩者示例如下圖。虛擬總線是將多個信號組合為一個總線顯示。

o4YBAF9uJ2iAReidAACHpYoHFgE233.png

波形窗口中包含Name、Value和波形三部分。

  • Name默認(rèn)顯示為short形式,右鍵菜單中Rename指令可以創(chuàng)建custom名稱,Name指令選擇顯示方式為short、long(顯示對象所處層次路徑)或custom。
  • Value根據(jù)格式和基數(shù)設(shè)置顯示方式不同,注意波形窗口中的radix和Objects窗口中的radix設(shè)置只作用于各自的窗口。

默認(rèn)Value顯示的基數(shù)為16進制,想要改變默認(rèn)設(shè)置,在波形窗口中點擊Settings,選擇一個Radix:

o4YBAF9uJ2qAZyvsAAAgMCrKUgQ573.png

順便再介紹下其它設(shè)置選項實現(xiàn)的功能效果:

  • Elide Setting:如果信號名字太長無法完整顯示,該選項設(shè)置從哪邊開始省略字符顯示,包括left、middle和right。
  • Draw Waveform Shadow:選中,波形顯示會帶有陰影效果。
  • Show signal indices:選中,波形對象的Name左側(cè)會顯示對應(yīng)的行數(shù),并且可以拖動行數(shù)之間的橫線來改變波形對象的高度。
  • Show grid lines:選中,波形窗口中會顯示網(wǎng)格線。
  • Snap to Transition/Floating Ruler:與測量有關(guān),具體在下文介紹。

在選中對象的右鍵菜單->Radix中可以設(shè)置單個信號的基數(shù)(應(yīng)與該信號的本質(zhì)相符),常見的基數(shù)已經(jīng)非常熟悉。Radix還可以選擇為Real,設(shè)計者可以在Real Setting中設(shè)置Value按指定的定點數(shù)或浮點數(shù)格式顯示,提供了極大的便利性。

該功能非常實用,比如CORDIC IP核在計算arctan函數(shù)時,輸出數(shù)據(jù)為帶符號、小數(shù)點從MSB三位后的格式,只需要在這里設(shè)置相應(yīng)格式,就可以直接顯示為-pi~pi的范圍,而不需要人工計算。

pIYBAF9uJ2uAEj0yAABj6IvgNqc392.png

設(shè)置模擬波形顯示方式

有時總線數(shù)據(jù)用模擬波形的方式觀察更直觀,但注意信號的Radix設(shè)置必須符合其本質(zhì),才能顯示正確的波形。比如一個總線數(shù)據(jù)按帶符號二進制補碼編碼,Radix必須設(shè)置為一種帶符號格式;如果一個數(shù)據(jù)為浮點數(shù)格式,必須選擇real并做正確的設(shè)置。

在對象右鍵->Waveform Style,可選擇模擬(Analog)或數(shù)字(Digital)顯示方式,Anolog Settings中可以設(shè)置模擬波形的顯示方式。注意:模擬顯示僅支持位寬不超過64Bits的總線。

pIYBAF9uJ2yAJ9fKAABh6IsQul0968.png

下面介紹一下各選項的設(shè)置方法和效果:

  • Row Height:規(guī)定選中對象的顯示高度,單位為像素點數(shù)目,相當(dāng)于收縮或拉伸波形的高度(digital顯示方式高度為20,analog顯示高度默認(rèn)為100)。
  • Y Range:規(guī)定波形區(qū)域的數(shù)值顯示范圍。Auto模式下根據(jù)當(dāng)前的仿真時間內(nèi)的值自動選擇范圍,且會隨時間更新;Fixed設(shè)置固定的顯示范圍。
  • Interpolation Style:設(shè)置將數(shù)據(jù)點連成線的插值方式,Liner表示線性插值,Hold表示保持插值,兩個點之間的數(shù)據(jù)會保持前一個點的數(shù)據(jù)值。
  • Off Scale:設(shè)置超出顯示范圍的波形該如何處理,Hide會隱藏超出范圍的部分,Clip會超出范圍為的部分限制在最大值/最小值(即削頂),overlap在超出范圍時仍然會顯示波形,但是波形會疊在其它波形對象上。
  • Horizontal Line:選中會在指定值處畫一條水平線。

此外,某些總線信號的有效順序可能與定義的Bit順序相反,可以在右鍵菜單中選擇“Reverse bit order”交換總線Bit順序,如bus[7:0]交換后為bit[0:7],信號的值和波形也會跟著改變。

在時間刻度上右鍵,可以設(shè)置顯示時間的方式,包括fs、ps、ns、us、ms、s,Auto會自動選擇最適合的單位,Default表示HDL設(shè)計中規(guī)定的仿真精度。此外還有Samples以離散采樣數(shù)值的方式顯示,User為用戶自定義的時間單位,但這兩個設(shè)置對HDL無效。

觀察波形輔助工具

上文提到窗口對象中還包括如下三類,來幫助設(shè)計觀察仿真結(jié)果:

  • Group:一個Group相當(dāng)于一個容器,將相關(guān)的波形對象組合在一個文件夾中。選中想要添加的對象,右鍵->New Group即可建立一個新組。注意選中g(shù)roup后delete會刪除掉該組和內(nèi)部所有的對象,如果只是想解散組,使用右鍵菜單中的Ungroup。
  • Divider:divider用來隔離不同的HDL對象,點擊信號的右鍵菜單中->New Divider,會在其下方創(chuàng)建一條隔離帶,delete即可刪除。
  • Virtual Bus:可以將多個標(biāo)量或向量組合在一起作為虛擬總線顯示,按順序選中要添加的對象,右鍵->New Virtual Bus。同樣delete會刪除掉虛擬總線所有對象,僅刪除虛擬總線應(yīng)使用Ungroup。

除此之外,Vivado還提供了一些其它特性幫助設(shè)計者分析波形中的數(shù)據(jù):

1.光標(biāo)

在波形上單擊,會出現(xiàn)黃色的光標(biāo),稱之為主光標(biāo);按住Shift鍵,再在另一個地方點擊,會出現(xiàn)第二個光標(biāo),稱之為輔助光標(biāo)(虛線,會替換原主光標(biāo)所在位置)。頂部會顯示每個光標(biāo)所處的時間點,底部有刻度尺且顯示兩者之間的時間差(顯示刻度尺需要在設(shè)置中選中Floating Ruler)。單擊波形窗口的任意地方,即可隱藏輔助光標(biāo)。

o4YBAF9uJ22AH5kdAAAe-ftXLTk664.png

如果設(shè)置中選中了Snap to Transition,拖動光標(biāo)過程中會有一個根據(jù)數(shù)據(jù)轉(zhuǎn)換狀態(tài)變換的圈(不選中該功能始終為空心圈,不會變化)??招娜Α鸨硎竟鈽?biāo)處在信號的兩個過度點之間(過度點即為值發(fā)生改變的點);實心圈●表示光標(biāo)位于過度點處或標(biāo)記(marker)上。如下圖所示:

o4YBAF9uJ26AJfAnAABUgLR-XMw489.png

通過此功能,設(shè)計者即可準(zhǔn)確地將光標(biāo)置于信號的邊緣處。波形窗口工具欄中還有Previous Transition和Next Transition兩個功能,可以改變光標(biāo)位置到選定對象的前一個或后一個過度點??梢酝瑫r選中多個對象。

2.標(biāo)記

標(biāo)記(Marker)用來指示波形中設(shè)計者關(guān)心的重大事件,可以對與標(biāo)記事件相關(guān)的時間進行測量。在窗口工具欄中點擊Add Marker(如下圖紅框)添加標(biāo)記,自動測量并顯示標(biāo)記與光標(biāo)之間的時間差。

pIYBAF9uJ3CAahJ2AAAPANqPA3w166.png

標(biāo)記同樣支持Snap to Transition功能,讓設(shè)計者可以準(zhǔn)確地標(biāo)記信號邊緣。在標(biāo)記上右鍵,選中Delete Marke**r或**Delete All Markers即可刪除標(biāo)記。底部也會顯示時間刻度尺輔助時間測量,0時刻從輔助光標(biāo)開始,如果沒有輔助光標(biāo)會從選中的Marker處開始。

3.查找功能

右鍵菜單中Find/Find Value可分別用于查找某一對象或者選中對象中的特定值??瞻卓蛑休斎霂Р檎易址?,必須與設(shè)置的Radix相符,否則編輯框會變?yōu)榧t色提示錯誤(如十六進制就只能輸入0-F)。

o4YBAF9uJ3GAKqWZAABLLQ4yA8k020.png

句號的點‘.’相當(dāng)于通配符,如查找“1.2”,便會找到102、112等等。Match用于設(shè)置匹配模式,Beginning、End(以查找內(nèi)容為開頭或結(jié)尾)或Exact(精確值)。Previous和Next在結(jié)果之間切換,如果沒有找到工具條會顯示“Value not found”。

編輯:hfy


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

    關(guān)注

    3

    文章

    379

    瀏覽量

    31608
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    815

    瀏覽量

    66711
  • Waveform
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    1932
收藏 人收藏

    評論

    相關(guān)推薦

    Vivado Design Suite用戶指南:邏輯仿真

    電子發(fā)燒友網(wǎng)站提供《Vivado Design Suite用戶指南:邏輯仿真.pdf》資料免費下載
    發(fā)表于 01-15 15:25 ?0次下載
    <b class='flag-5'>Vivado</b> Design Suite用戶指南:邏輯仿真

    AMD Vivado Design Suite 2024.2全新推出

    AMD Vivado Design Suite 2024.2 全新推出,使用 AMD Versal Adaptive SoC 進行設(shè)計的重大改進。此版本為 AMD Versal 自適應(yīng) SoC
    的頭像 發(fā)表于 11-22 13:54 ?326次閱讀

    Xilinx_Vivado_SDK的安裝教程

    I Agree,然后點擊 Next: 選擇 Vivado HL System Edition(一般選擇這個設(shè)計套件比較完整,它比 Vivado HL Design Edition 多了一個 System Generator for DSP with Mat
    的頭像 發(fā)表于 11-16 09:53 ?1447次閱讀
    Xilinx_<b class='flag-5'>Vivado</b>_SDK的安裝教程

    每次Vivado編譯的結(jié)果都一樣嗎

    很多FPGA工程師都有這種困惑,Vivado每次編譯的結(jié)果都一樣嗎? 在AMD官網(wǎng)上,有這樣一個帖子: Are Vivado results repeatable for identical
    的頭像 發(fā)表于 11-11 11:23 ?472次閱讀
    每次<b class='flag-5'>Vivado</b>編譯的結(jié)果都一樣嗎

    使用Vivado通過AXI Quad SPI實現(xiàn)XIP功能

    本博客提供了基于2023.2 Vivado的參考工程,展示如何使用Microblaze 地執(zhí)行(XIP)程序,并提供一個簡單的bootloader。
    的頭像 發(fā)表于 10-29 14:23 ?432次閱讀
    使用<b class='flag-5'>Vivado</b>通過AXI Quad SPI實現(xiàn)XIP<b class='flag-5'>功能</b>

    Vivado使用小技巧

    有時我們對時序約束進行了一些調(diào)整,希望能夠快速看到對應(yīng)的時序報告,而又不希望重新布局布線。這時,我們可以打開布線后的dcp,直接在Vivado Tcl Console里輸入更新后的時序約束。如果調(diào)整
    的頭像 發(fā)表于 10-24 15:08 ?392次閱讀
    <b class='flag-5'>Vivado</b>使用小技巧

    Vivado編輯器亂碼問題

    ,但是在Vivado里面打開用sublime寫的代碼之后,經(jīng)常出現(xiàn)中文亂碼,讓人很不舒服。究其原因就是一般來說第三方的編輯器是采用utf8的編碼方式,而vivado的text editor不是這種方式。
    的頭像 發(fā)表于 10-15 17:24 ?929次閱讀
    <b class='flag-5'>Vivado</b>編輯器亂碼問題

    Vivado 2024.1版本的新特性(2)

    從綜合角度看,Vivado 2024.1對SystemVerilog和VHDL-2019的一些特性開始支持。先看SystemVerilog。
    的頭像 發(fā)表于 09-18 10:34 ?1007次閱讀
    <b class='flag-5'>Vivado</b> 2024.1版本的新特性(2)

    Vivado 2024.1版本的新特性(1)

    Vivado 2024.1已正式發(fā)布,今天我們就來看看新版本帶來了哪些新特性。
    的頭像 發(fā)表于 09-18 10:30 ?1517次閱讀
    <b class='flag-5'>Vivado</b> 2024.1版本的新特性(1)

    詳解工業(yè)網(wǎng)關(guān)在線探測功能及用途

    詳解工業(yè)網(wǎng)關(guān)在線探測功能及用途 工業(yè)網(wǎng)關(guān)作為工業(yè)物聯(lián)網(wǎng)(IIoT)架構(gòu)中的關(guān)鍵組件,扮演著橋梁的角色,它連接了現(xiàn)場的各類傳感器、執(zhí)行器以及更高級別的云平臺或企業(yè)系統(tǒng)。在線探測功能是工業(yè)網(wǎng)關(guān)諸多能力中
    的頭像 發(fā)表于 06-20 13:55 ?352次閱讀
    <b class='flag-5'>詳解</b>工業(yè)網(wǎng)關(guān)在線探測<b class='flag-5'>功能</b>及用途

    便攜三合一氣體檢測儀的功能使用說明

    便攜三合一氣體檢測儀的功能使用說明
    的頭像 發(fā)表于 06-20 11:42 ?1035次閱讀
    便攜三合一氣體檢測儀的<b class='flag-5'>功能使</b>用說明

    Vivado 使用Simulink設(shè)計FIR濾波器

    。 使用vivado的System Generator可以在simulink下快速的通過matlab的強大設(shè)計功能設(shè)計濾波器。這里使用fdatool設(shè)計了一個15階的FIR濾波器。 軟件環(huán)境
    發(fā)表于 04-17 17:29

    請問STM8S的AWU功能的時鐘源能使用外接的32.768KHZ晶振嗎?

    請問大神,STM8S的AWU功能的時鐘源能使用外接的32.768KHZ晶振嗎?
    發(fā)表于 04-16 08:07

    詳解Vivado非工程模式的精細(xì)設(shè)計過程

    將設(shè)置設(shè)計的輸出路徑,設(shè)置設(shè)計輸出路徑的步驟如下所示。 第一步:如圖4.3所示,在“Vivado%”提示符后輸入命令“set outputDir ./gate_Created_Data/top_output”。
    發(fā)表于 04-03 09:34 ?1864次閱讀
    <b class='flag-5'>詳解</b><b class='flag-5'>Vivado</b>非工程模式的精細(xì)設(shè)計過程

    手機信號屏蔽器:功能、原理及使用方法詳解

    深圳特信電子|手機信號屏蔽器:功能、原理及使用方法詳解
    的頭像 發(fā)表于 04-01 09:09 ?3292次閱讀