一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

使用Vivado Simulator運行功能和時序仿真案例

電子設計 ? 來源:CSDN博主 ? 作者:FPGADesigner的博客 ? 2020-12-31 10:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Vivado Simulator基本操作
Vivado Simulator是一款硬件描述語言事件驅(qū)動的仿真器,支持功能仿真和時序仿真,支持VHDL、Verilog、SystemVerilog和混合語言仿真。點擊運行仿真后,工具欄中顯示了控制仿真過程的常用功能按鈕:

這些控制功能依次是:

  • Restart:從0時刻開始重新運行仿真;
  • Run All:運行仿真一直到處理完所有event或遇到指令指示停止仿真 ;
  • Run For:按照設定的時間運行仿真,每點擊一次都運行指定時長;
  • Step:運行仿真直到下一個HDL狀態(tài);
  • Break:暫停仿真運行;
  • Relaunch Simulation:重新編譯仿真源文件且restart仿真,當修改了源代碼并且保存了文件后,只需要Relaunch即可,而不必關閉仿真再重新打開運行。

Scope窗口

Vivado Simulator中將HDL設計中的一個層次劃分稱作一個scope,比如實例化一個設計單元便創(chuàng)建了一個scope。在Scope窗口中可以看到設計結構,選中一個scope后,該scope中所有的HDL對象都會顯示在Object窗口中??梢赃x擇將Object窗口中的對象添加到波形窗口中,這樣便可以觀察到設計中的內(nèi)部信號。

pIYBAF9uKHCAb4GgAABhBV2NiYo015.png

Scope窗口中可以在Settings中設置顯示哪種類型的scope,但注意當某一scope被關閉顯示后,其內(nèi)部的所有對象(不論什么類型)都會被隱藏。對某一scope右鍵,彈出菜單如下:

  • Add to Wave Window:將所有狀態(tài)為可見的HDL對象添加到波形窗口,值從添加到仿真波形的時刻開始顯示,想要顯示插入之前的值,必須restart(注意不是relaunch,否則會耗費更多的時間);
  • Go to Source Code:打開定義選中scope的源代碼;
  • Go to Instantiation Source Code:打開實例化選中實例的源代碼(對于Verilog而言是module,對于VHDL而言是entity)
  • Log to Wave Database:可以選中記錄當前scope的對象,或者記錄當前scope的對象與所有下級的scope。相關數(shù)據(jù)會存儲在project_name.sim/sim_1/behav目錄下的wdb文件中。

Objects窗口
該窗口中顯示了當前選中的scope所包含的HDL對象,不同類型或端口的對象顯示為不同的圖標,在Settings中可以設置顯示的類型:

Object的右鍵菜單中有一些新的設置功能:

  • Show in Wave Window:在波形窗口中高亮選定的對象;
  • Radix:設置Objects窗口中選定對象的值的顯示數(shù)字格式,包括默認、2進制(Binary)、16進制(Hexadecimal)、8進制(Octal)、ASCII碼、無符號10進制(Unsigned Decimal)、帶符號10進制(Signed Decimal)和符號量值(Signed Magnitude)。注意此處設置不會影響到波形窗口中的顯示方式;
  • Defult Radix:設置Radix中Default所表示的值;
  • Show as Enumeration:顯示SystemVerilog枚舉信號的值,不選中時,枚舉對象的值按radix的設置方式顯示;
  • Force Constant:將選中對象的值強行定義為一個常量;
  • Force Clock:將選中對象強行設定為一個來回振蕩的值(像時鐘一樣);
  • Remove Force:移除選定對象的所有Force設置。

Wave窗口
當運行仿真后,會自動打開一個波形窗口,默認顯示仿真頂層模塊中的HDL對象的波形配置。如果關閉了波形窗口,可以點擊Window->Waveform重新打開。

窗口中的HDL對象和分組情況稱作一個波形配置,可以將當前配置保存為wcfg文件,下次運行仿真時就不需要重新添加仿真對象或分組。窗口中還有游標、記號、時間尺等功能幫助設計者測量時間。右鍵菜單中有一些新的設置功能:

  • Show in Wave Window:在Object窗口中高亮選定的對象;
  • Find/Find Value:前者是搜尋某一對象,后者是搜索對象中的某一值;
  • Ungroup:拆分group或虛擬總線(virtual bus);
  • Rename/Name:前者設置用戶自定義的對象顯示名稱,后者選中名稱的顯示方式:long(顯示所處層次結構)、short(僅顯示信號名稱)、custom(Rename設置的名稱);
  • Waveform Style:設置波形顯示為數(shù)字方式或模擬方式;
  • Signal Color:設置波形的顯示顏色;
  • Divider Color:設置隔離帶的顏色;
  • Reverse Bit Order:將選定對象的數(shù)值bit顯示順序反轉;
  • New Virtual Bus:將選定對象的bit組合為一個新的邏輯向量;
  • New Group:將選定對象添加到一個group中,可以像文件夾一樣排列;
  • New Divider:在波形窗口中添加一個隔離帶,將信號分開,便于觀察。

Vivado Simulator會將配置(用戶接口控制和Tcl命令)保存到仿真運行目錄的xsimSettings.ini文件中,下此打開仿真時就會自動恢復相關設置。使用此功能時在Simulation Settings中關閉clean up simulation files,以防止重新運行仿真時配置文件被刪除。如果想要恢復默認設置,則開啟clean up simulation files,或直接刪除xsimSettings.ini文件即可。

本文只對Wave窗口做了簡單介紹,本系列第20篇對其中的具體術語和功能使用做了詳細描述。

運行功能和時序仿真

工程創(chuàng)建好后,便可運行行為級仿真(behavioral simulation),在成功地綜合和實現(xiàn)之后,可以運行功能仿真(functional simulation)和時序仿真(timing simulation)。在Flow Navigator中點擊Run Simulation,彈出菜單中選擇需要運行的仿真:

  • 綜合后功能仿真:綜合后,通用的邏輯轉換為器件相關的原語,綜合后功能仿真可以確保綜合優(yōu)化不會影響到設計的功能性。運行時,會生成一個功能網(wǎng)表,并使用UNISIM庫。
  • 實現(xiàn)后功能仿真:實現(xiàn)后,設計已經(jīng)在硬件中完成布局和布線工作,實現(xiàn)后功能仿真可以確保物理優(yōu)化不會影響到設計的功能性。運行時,會生成一個功能網(wǎng)表,并使用UNISIM庫。
  • 綜合后時序仿真:該仿真使用器件模型中估算的時間延遲,并且不包括內(nèi)部連線延遲。通用的邏輯轉換為器件相關的原語后,可以使用估算的布線和組件間延遲。使用此仿真可以在實現(xiàn)之前查看潛在的時序嚴苛路徑。
  • 實現(xiàn)后時序仿真:該仿真使用真實的時間延遲。使用該仿真來檢查設計功能是否能工作在設定的速度上,可以檢測出設計中未約束的路徑、異步路徑時序錯誤(比如異步復位)。

添加仿真啟動腳本文件

設計者可以創(chuàng)建一個批處理文件,添加到工程中,其中的命令將在仿真開始后運行,常用的流程步驟如下所示:
1. 創(chuàng)建一個包含仿真命令的Tcl腳本,比如如果想仿真運行到5μs,添加“run 5us”命令;如果想監(jiān)測設計內(nèi)部信號,將其添加到波形窗口中,添加“add_wave/top/I1/signalName”命令;
2. 將腳本文件命名為post.tcl并保存;
3. 將post.tcl文件以仿真源文件的形式添加到工程中,會顯示在Sources窗口的Simulation文件夾下;
4. 在仿真工具欄中點擊“Relaunch”重新編譯運行仿真,Vivado會自動讀取并執(zhí)行文件中的命令。

編輯:hfy


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

    關注

    0

    文章

    7

    瀏覽量

    8295
  • Vivado
    +關注

    關注

    19

    文章

    835

    瀏覽量

    68784
  • 時序仿真
    +關注

    關注

    0

    文章

    14

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    AMD Vivado Design Suite 2025.1現(xiàn)已推出

    AMD Vivado Design Suite 2025.1 現(xiàn)已推出,支持 AMD Spartan UltraScale+ 和新一代 Versal 器件。這一最新版本還新增了多項功能,可顯著提升 Versal SSIT 器件的 FMAX 值,并對所有系列產(chǎn)品在 IP 集
    的頭像 發(fā)表于 06-16 15:16 ?551次閱讀

    如何使用One Spin檢查AMD Vivado Design Suite Synth的結果

    本文講述了如何使用 One Spin 檢查 AMD Vivado Design Suite Synth 的結果(以 Vivado 2024.2 為例)。
    的頭像 發(fā)表于 05-19 14:22 ?512次閱讀
    如何使用One Spin檢查AMD <b class='flag-5'>Vivado</b> Design Suite Synth的結果

    Pico示波器在電源時序測試中的應用

    在航天電子系統(tǒng)研發(fā)中,電源模塊時序一致性是保障設備穩(wěn)定運行的核心指標。
    的頭像 發(fā)表于 05-15 15:55 ?327次閱讀
    Pico示波器在電源<b class='flag-5'>時序</b>測試中的應用

    FPGA時序約束之設置時鐘組

    Vivado時序分析工具默認會分析設計中所有時鐘相關的時序路徑,除非時序約束中設置了時鐘組或false路徑。使用set_clock_groups命令可以使
    的頭像 發(fā)表于 04-23 09:50 ?468次閱讀
    FPGA<b class='flag-5'>時序</b>約束之設置時鐘組

    一文詳解Vivado時序約束

    Vivado時序約束是保存在xdc文件中,添加或創(chuàng)建設計的工程源文件后,需要創(chuàng)建xdc文件設置時序約束。時序約束文件可以直接創(chuàng)建或添加已存在的約束文件,創(chuàng)建約束文件有兩種方式:Con
    的頭像 發(fā)表于 03-24 09:44 ?3519次閱讀
    一文詳解<b class='flag-5'>Vivado</b><b class='flag-5'>時序</b>約束

    集成電路設計中靜態(tài)時序分析介紹

    Analysis,STA)是集成電路設計中的一項關鍵技術,它通過分析電路中的時序關系來驗證電路是否滿足設計的時序要求。與動態(tài)仿真不同,STA不需要模擬電路的實際運行過程,而是通過分析
    的頭像 發(fā)表于 02-19 09:46 ?623次閱讀

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

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

    利用.func命令運行仿真的方法

    在上篇 LTspice 系列文章中,我們分享了如何利用ISO模型進行電源線瞬態(tài)電傳導干擾測試,本文將介紹使用 .func 命令中的指定常數(shù)以有效運行仿真并進行參數(shù)分析的方法。更多參數(shù)分析的內(nèi)容,可查閱《活學活用LTspice進行電路設計 — 用 .step 命令更改參數(shù)》
    的頭像 發(fā)表于 01-14 16:48 ?913次閱讀
    利用.func命令<b class='flag-5'>運行</b><b class='flag-5'>仿真</b>的方法

    AMD Vivado Design Suite 2024.2全新推出

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

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

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

    Vivado使用小技巧

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

    時序邏輯電路有記憶功能

    時序邏輯電路確實具有記憶功能 。這一特性是時序邏輯電路與組合邏輯電路的本質(zhì)區(qū)別之一。
    的頭像 發(fā)表于 08-29 10:31 ?1596次閱讀

    時序邏輯電路的功能表示方法有哪些

    復雜邏輯功能的關鍵組成部分。它們能夠存儲信息,并根據(jù)輸入信號和當前狀態(tài)產(chǎn)生輸出。時序邏輯電路的設計和分析對于理解和實現(xiàn)數(shù)字系統(tǒng)至關重要。 2. 時序邏輯電路的基本概念 2.1 時序邏輯
    的頭像 發(fā)表于 08-28 11:41 ?1491次閱讀

    時序邏輯電路的描述方法有哪些

    時序邏輯電路是數(shù)字電路中的一種重要類型,它具有存儲功能,能夠根據(jù)輸入信號和內(nèi)部狀態(tài)的變化來改變其輸出。時序邏輯電路廣泛應用于計算機、通信、控制等領域。本文將介紹時序邏輯電路的描述方法,
    的頭像 發(fā)表于 08-28 11:37 ?1423次閱讀

    TPS621和TPS821系列的時序控制和跟蹤功能

    電子發(fā)燒友網(wǎng)站提供《TPS621和TPS821系列的時序控制和跟蹤功能.pdf》資料免費下載
    發(fā)表于 08-26 14:38 ?0次下載
    TPS621和TPS821系列的<b class='flag-5'>時序</b>控制和跟蹤<b class='flag-5'>功能</b>