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

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

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

FPGA開發(fā):Vivado時序波形圖保存和讀取

454398 ? 來源:CSDN博主 ? 作者:逸璞丷昊 ? 2020-12-24 11:19 ? 次閱讀

如何存儲關(guān)鍵數(shù)據(jù)的方法,屬于規(guī)模測試驗證的手段,但對于Verilog的調(diào)試過程還不夠直觀,因為無法確切地了解Verilog代碼仿真中各個關(guān)聯(lián)信號是如何作用的。Verilog的確可以像C/C++一樣啟動調(diào)試模式,針對每行代碼進行調(diào)試。但請注意,由于Verilog是并行執(zhí)行的,而仿真是采用delta時間逐步并行推進的,采用代碼調(diào)試較為困難,所以常常需要存儲全部或部分仿真數(shù)據(jù),這就是波形文件。

在進行FPGA開發(fā)的過程中,稍微大一點的項目,進行一次編譯綜合與布線是非常耗時的,所以在開發(fā)的過程中一般采取先進行功能仿真,功能仿真結(jié)果正確無誤以后再進行綜合和布局布線。一般來說,先添加好時鐘約束,進行綜合與布線時無嚴重警告,此時如果功能仿真(前仿)仍然正確,那么任務就基本完成了。但如果是一個比較完整的項目開發(fā),應該還需要進行布線后的時延仿真(后仿)。這里,主要介紹如何將前仿和后仿的時序波形圖保存以及再次打開上一次的仿真結(jié)果。

相關(guān)文件說明
1. 波形數(shù)據(jù)庫文件(.WDB),其中包含所有的仿真數(shù)據(jù)。
2. 波形配置文件(.WCFG),其中包含于波形配置文件中的對象相關(guān)聯(lián)的順序和設置

在保存 .WCFG文件之前,對波形配置的修改(包括創(chuàng)建波形配置或添加HDL對象)不是永久性的,可以通過 File -> Save Waveform Configuration As 將波形配置保存下來。波形數(shù)據(jù)庫文件(.WDB)包含了波形配置文件中所有信號的仿真數(shù)據(jù),單個 .WDB可以對應多個 .WCFG文件, 可以通過打開 .WDB文件查看上一次保存下來的仿真波形。

具體的保存與讀取
保存
1. 將需要觀測的信號拉倒圖形窗口界面
2. 設置仿真時間
3. 保存 .WCFG 波形配置文件到指定路徑
4. 保存 .WDB 仿真波形。為了能將波形數(shù)據(jù)保存下來,需要在測試代碼中加上如下代碼,放在最末端即可。為了下一次仿真不影響已保存的仿真波形,建議將 .WDB 文件拷貝并修改名字。
`define dump_level 10
//module dump_task;
initial begin#1; //延遲1ns記錄,方便與其他仿真動作協(xié)調(diào)
`ifdef VCS_DUMP //Synopsys VCD+格式存儲
$display("Start Recording Waveform in VPD format!");
$vcdpluson();
$vcdplustraceon;
`endif

`ifdef FSDB_DUMP //Synopsys fsdb格式存儲
$display("Start Recording Waveform in FSDB format!");
$fsdbDumpfile("dump.fsdb");
$fsdbDumpvars('dump_level);
`endif

`ifdef NC_DUMP//cadence 格式存儲
$recordsetup("dump","version=1","run=1","directory=.");
$recordvars("depth=6");
`endif

`ifdef VCD_DUMP//工業(yè)標準VCD格式存儲
$display("Start Recording Waveform in VCD format!");
$dumpfile("dump.vcd");
$dumpvars('dump_level);
`endif
end

5. 運行仿真(前后仿的 .WDB 會自動保存到 .sim/sim_1/ 下的三個路徑之一,與仿真類型有關(guān))。

讀取
1. 點擊Vivado的菜單欄中的 Flow -> Open Static simulation,然后選中之前保存的 .WDB 文件即可。

2. 點擊Vivado的菜單欄中的 File -> Open Waveform Configuration,選擇我們之前保存的 .WCFG文件即可恢復上一次的仿真結(jié)果

總結(jié)
時序仿真波形的保存與讀取在大工程的功能仿真、時序仿真、以及問題分析中,可以為開發(fā)者節(jié)約很多時間。當一個項目比較復雜時,跑一次仿真耗時會非常長,尤其是需要進行后仿時,耗時比綜合和布局布線更長,所以我們最好是將時序波形保存下來進行分析,可以避免浪費許多不必要的時間。

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

    關(guān)注

    1625

    文章

    21620

    瀏覽量

    601239
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    804

    瀏覽量

    66224
  • 時序仿真
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    7400
收藏 人收藏

    評論

    相關(guān)推薦

    Vivado使用小技巧

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

    FPGA電源時序控制

    電子發(fā)燒友網(wǎng)站提供《FPGA電源時序控制.pdf》資料免費下載
    發(fā)表于 08-26 09:25 ?0次下載
    <b class='flag-5'>FPGA</b>電源<b class='flag-5'>時序</b>控制

    三菱PLC數(shù)據(jù)怎么讀取保存

    進行讀取保存,以便于對生產(chǎn)過程進行監(jiān)控、分析和管理。本文將對三菱PLC數(shù)據(jù)的讀取保存方法進行詳細介紹,包括軟件工具的使用、通信接口的選擇、數(shù)據(jù)格式的處理等方面,旨在為讀者提供全面而
    的頭像 發(fā)表于 06-18 10:53 ?3279次閱讀

    FPGA 高級設計:時序分析和收斂

    今天給大俠帶來FPGA 高級設計:時序分析和收斂,話不多說,上貨。 這里超鏈接一篇之前的STA的文章,僅供各位大俠參考。 FPGA STA(靜態(tài)時序分析) 什么是靜態(tài)
    發(fā)表于 06-17 17:07

    示波器如何保存波形數(shù)據(jù)?

    大多數(shù)現(xiàn)代示波器都具備內(nèi)置的存儲功能,允許用戶保存波形數(shù)據(jù)。這些數(shù)據(jù)可以保存在示波器的內(nèi)部存儲器中,或者直接導出到外部存儲設備。
    的頭像 發(fā)表于 05-31 17:31 ?2024次閱讀

    示波器如何直連電腦進行波形讀取

    示波器作為電子工程師和科研人員的重要工具,其功能是顯示和分析電子信號的波形。在某些情況下,我們需要將示波器與電腦直接連接,以便在電腦上讀取和分析波形數(shù)據(jù)。本文將詳細介紹示波器如何直連電腦進行
    的頭像 發(fā)表于 05-29 17:05 ?3693次閱讀

    深入探索Vivado非工程模式FPGA設計流程

    在設計過程的每個階段,設計者均可以打開Vivado集成開發(fā)環(huán)境,對存儲器中保存的當前設計進行分析和操作。
    發(fā)表于 04-03 09:36 ?804次閱讀
    深入探索<b class='flag-5'>Vivado</b>非工程模式<b class='flag-5'>FPGA</b>設計流程

    proteus波形發(fā)生器怎么把波形圖調(diào)出來

    波形圖的詳細指南。 第一步:創(chuàng)建電路 在Proteus中,首先需要創(chuàng)建一個適當?shù)碾娐?b class='flag-5'>圖。您可以從零開始設計電路,或者使用Proteus的示例電路來進行實踐。創(chuàng)建電路的方法包括拖動并
    的頭像 發(fā)表于 02-23 16:53 ?7306次閱讀

    Vivado時序問題分析

    有些時候在寫完代碼之后呢,Vivado時序報紅,Timing一欄有很多時序問題。
    的頭像 發(fā)表于 01-05 10:18 ?1780次閱讀

    使用STM32F103的SPI接口與ADIS6465通信,讀取product-ID結(jié)果大多時候都不正確是為什么?

    ,看起來沒什么問題。以下兩個,一個是結(jié)果正確時的波形圖,一個是結(jié)果不正確時候的波形圖。 綠色:CS,黃色:CLK,紅色:MO,藍色:MI IMU返回結(jié)果正確時0x4051 IMU返回不正確時:0x4040 以下是連續(xù)
    發(fā)表于 12-28 08:16

    在Saber中如何輸出高質(zhì)量的原理波形圖呢?

    在撰寫與Saber有關(guān)的建模文檔和仿真報告時,必然會涉及到相關(guān)的原理和仿真波形圖,這時候在Word或PowerPoint中插入高質(zhì)量的原理或圖形圖像是必不可少的。
    的頭像 發(fā)表于 12-05 14:59 ?1462次閱讀
    在Saber中如何輸出高質(zhì)量的原理<b class='flag-5'>圖</b>或<b class='flag-5'>波形圖</b>呢?

    AD9253采樣波形異常的原因?如何解決?

    的 50M采樣正常時候的波形 100M的采樣時鐘: 50M的采樣時鐘: AD9253原理: 我們FPGA工程師調(diào)試 采樣時序 調(diào)了很多天,沒什么效果;因為AD9253在
    發(fā)表于 12-01 07:16

    LabVIEW繪制帶有多個不同標尺的波形圖

    LabVIEW繪制帶有多個不同標尺的波形圖 通過在同一波形圖上使用多個軸,可以使用不同的標尺繪制數(shù)據(jù)。請按照以下步驟操作。 將波形圖或圖表控件放在前面板上。 1. 右鍵點擊您要創(chuàng)建多個標尺的軸,然后
    發(fā)表于 11-24 19:20

    LabVIEW如何獲取波形圖上游標所在位置的數(shù)值

    LabVIEW如何獲取波形圖上游標所在位置的數(shù)值 獲取游標所在位置數(shù)值的一種方法是利用波形圖的游標列表屬性。 在VI的程序框圖中,右鍵單擊波形圖并選擇創(chuàng)建?引用 ,然后將創(chuàng)建的引用節(jié)點放在程序框圖
    發(fā)表于 11-20 20:25

    FPGA時序約束--基礎理論篇

    。 時序約束可以讓VIvado和Quartus等FPGA開發(fā)軟件,在布線時檢測綜合出來的邏輯電路是否滿足這個時序要求,并生成
    發(fā)表于 11-15 17:41