精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

物理約束實踐:網表約束MARK_DEBUG

FPGA快樂學習 ? 來源:FPGA快樂學習 ? 作者:FPGA快樂學習 ? 2022-11-03 11:51 ? 次閱讀

16912bd6-5b2a-11ed-a3b6-dac502259ad0.jpg

概述

網表約束MARK_DEBUG可應用在源碼中的任意一個網絡信號上,被施加該約束的網絡信號在調試界面中可見,從而方便在線調試時快速定位該信號,提升調試效率。話不多說,下面以FPGA中的在線邏輯分析儀(ILA)的調試實踐為例,讓大家感受一下網表約束MARK_DEBUG的妙用。

工程實踐

以STAR FPGA開發板中的at7_ex10工程為例,這個工程實現UART傳輸的loopback功能。該實例中使用在線邏輯分析儀希望探測到FPGA端接收并進行串并轉換過程中所設計的一些主要信號。

首先需要找出待探測的信號。如圖1和圖2所示,在my_uart_rx.v模塊中,uart_rx、clk_bps、rx_data、rx_int、num、rx_temp_data是需要探測監控的信號。

16a5954e-5b2a-11ed-a3b6-dac502259ad0.jpg

圖1 識別需要進行探測的信號1

16c1d39e-5b2a-11ed-a3b6-dac502259ad0.jpg

圖2識別需要進行探測的信號2

如圖3所示,在待探測信號定義申明前面增加語句:(*mark_debug= "true"*)。當然了,如果后續不探測這個信號了,直接修改“true”為“false”就可以。

16d7a246-5b2a-11ed-a3b6-dac502259ad0.jpg

圖3 標注需要探測的信號

完成對探測信號的mark_debug標記后,如圖4所示,點擊“Synthesis à Run Synthesis”對工程進行綜合編譯。

16eae234-5b2a-11ed-a3b6-dac502259ad0.jpg

圖4 工程的綜合編譯

綜合編輯完成后,如圖5所示,接著點擊“Synthesis à Synthesized Design à Set Up Debug”。

16fb14a6-5b2a-11ed-a3b6-dac502259ad0.jpg

圖5 Set Up Debug菜單

如圖6所示,點擊Next進入下一步。

1712baac-5b2a-11ed-a3b6-dac502259ad0.jpg

圖6 Set Up Debug Wizard頁面

如圖7所示,Nets to Debug界面顯示的信號正是我們在前面的工程源碼中標記了(*mark_debug = "true"*)的信號。如果沒有被標記過的信號,我們希望添加到Nets to Debug界面中,就要點擊Find Netsto Add…按鈕逐個查找并添加了,效率要明顯低于直接在工程源碼中事先標記。對這些調試信號做采樣和觸發屬性設置后,點擊Next進入下一頁面。

173474a8-5b2a-11ed-a3b6-dac502259ad0.jpg

圖7 Nets to Debug頁面

如圖8所示,ILA Core Options頁面中,可以設定探測信號的采樣深度、緩存寄存器等級和信號采集觸發相關控制選項。完成設置后,點擊Next進入下一頁面。

17531f84-5b2a-11ed-a3b6-dac502259ad0.jpg

圖8 ILA CoreOptions頁面

如圖9所示,Set up Debug Summary中點擊Finish完成設置。

1769d134-5b2a-11ed-a3b6-dac502259ad0.jpg

圖9 Set upDebug Summary頁面

此時,如圖10所示,所有的探測信號出現在了Debug窗口中。

177e67a2-5b2a-11ed-a3b6-dac502259ad0.jpg

圖10 Debug窗口

接著,重新對工程進行編譯,將產生的比特流燒錄到FPGA器件中,最終便能捕捉到如圖11所示的實際的信號波形。

178ed380-5b2a-11ed-a3b6-dac502259ad0.jpg

圖11 觸發位置的波形

審核編輯 :李倩

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

    關注

    1626

    文章

    21667

    瀏覽量

    601864
  • 源碼
    +關注

    關注

    8

    文章

    633

    瀏覽量

    29140
  • 約束
    +關注

    關注

    0

    文章

    82

    瀏覽量

    12718

原文標題:物理約束實踐:網表約束MARK_DEBUG

文章出處:【微信號:FPGA快樂學習,微信公眾號:FPGA快樂學習】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    常用時序約束使用說明-v1

    為了節省每層導入網的時間,在設置中我們通常不會勾選Aoto Load place and route Data 前面的勾選框。這樣每次編譯完成之后Show/Hide Tcl Command
    的頭像 發表于 11-01 11:06 ?137次閱讀

    電路的兩類約束指的是哪兩類

    電路的兩類約束通常指的是電氣約束物理約束。這兩類約束在電路設計和分析中起著至關重要的作用。 一、電氣
    的頭像 發表于 08-25 09:34 ?734次閱讀

    深度解析FPGA中的時序約束

    建立時間和保持時間是FPGA時序約束中兩個最基本的概念,同樣在芯片電路時序分析中也存在。
    的頭像 發表于 08-06 11:40 ?561次閱讀
    深度解析FPGA中的時序<b class='flag-5'>約束</b>

    兩種SR鎖存器的約束條件

    基本約束條件: SR鎖存器是一種基本的數字邏輯電路,用于存儲一位二進制信息。它有兩個輸入端:S(Set)和R(Reset),以及兩個輸出端:Q和Q'(Q的反相)。以下是SR鎖存器的基本約束
    的頭像 發表于 07-23 11:34 ?826次閱讀

    鴻蒙ArkTS聲明式開發:跨平臺支持列表【布局約束】 通用屬性

    通過組件的寬高比和顯示優先級約束組件顯示效果。
    的頭像 發表于 05-30 09:35 ?331次閱讀
    鴻蒙ArkTS聲明式開發:跨平臺支持列表【布局<b class='flag-5'>約束</b>】 通用屬性

    Xilinx FPGA編程技巧之常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧之常用時序約束詳解,話不多說,上貨。 基本的約束方法 為了保證成功的設計,所有路徑的時序要求必須能夠讓執行工具獲取。最普遍的三種路徑以及異常路徑為
    發表于 05-06 15:51

    時序約束實操

    添加約束的目的是為了告訴FPGA你的設計指標及運行情況。在上面的生成約束之后,在Result àxx.sdc中提供約束參考(請注意該文件不能直接添加到工程中,需要熱復制到別的指定目錄或者新建自己的SDC文件添加到工程)。
    的頭像 發表于 04-28 18:36 ?2195次閱讀
    時序<b class='flag-5'>約束</b>實操

    Xilinx FPGA的約束設置基礎

    LOC約束是FPGA設計中最基本的布局約束和綜合約束,能夠定義基本設計單元在FPGA芯片中的位置,可實現絕對定位、范圍定位以及區域定位。
    發表于 04-26 17:05 ?1089次閱讀
    Xilinx FPGA的<b class='flag-5'>約束</b>設置基礎

    Xilinx FPGA編程技巧之常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧之常用時序約束詳解,話不多說,上貨。 基本的約束方法為了保證成功的設計,所有路徑的時序要求必須能夠讓執行工具獲取。最普遍的三種路徑以及異常路徑為
    發表于 04-12 17:39

    機器人運動學中的非完整約束與運動模型推導

    機器人運動學中的運動學約束是指機器人在運動過程中受到的限制,包括位置、姿態、速度和加速度等因素。這些約束會對機器人的自由度產生影響,從而影響機器人的運動和控制。運動學約束通常用數學模型來描述,為機器人的運動控制提供了理論基礎。
    的頭像 發表于 01-18 16:45 ?1661次閱讀
    機器人運動學中的非完整<b class='flag-5'>約束</b>與運動模型推導

    FPGA物理約束之布局約束

    在進行布局約束前,通常會對現有設計進行設計實現(Implementation)編譯。在完成第一次設計實現編譯后,工程設計通常會不斷更新迭代,此時對于設計中一些固定不變的邏輯,設計者希望它們的編譯結果
    的頭像 發表于 01-02 14:13 ?1413次閱讀
    FPGA<b class='flag-5'>物理</b><b class='flag-5'>約束</b>之布局<b class='flag-5'>約束</b>

    Pod一直處于Pending狀態?什么是Pod拓撲約束?

    起因: 今天在部署組件的時候,發現組件的pod一直處于Pending狀態,報錯顯示的原因是:不滿足Pod拓撲分布約束,看了代碼發現是原來同事給組件新增了Pod拓撲約束。
    的頭像 發表于 12-18 11:46 ?1163次閱讀
    Pod一直處于Pending狀態?什么是Pod拓撲<b class='flag-5'>約束</b>?

    FPGA物理約束之布線約束

    IS_ROUTE_FIXED命令用于指定網絡的所有布線進行固定約束。進入Implemented頁面后,Netlist窗口如圖1所示,其中Nets文件展開后可以看到工程中所有的布線網絡。
    的頭像 發表于 12-16 14:04 ?1145次閱讀
    FPGA<b class='flag-5'>物理</b><b class='flag-5'>約束</b>之布線<b class='flag-5'>約束</b>

    SV約束隨機化總結

    constraint 約束隨機化類中的變量 在main_phase 之前就已經提前產生一個變量的隨機值。 用法:一般在類中定義一個rand 類型的變量, 然后根據需求寫約束就可以
    的頭像 發表于 12-14 14:30 ?806次閱讀
    SV<b class='flag-5'>約束</b>隨機化總結

    FPGA器件幾個比較常用的配置配置約束

    Xilinx Vivado工具的配置約束隱藏得比較深,如圖1所示,在進入配置頁面前,首先需要點擊PROGRAM AND DEBUG->Generate Bitstream執行工程的全編譯,然后點擊IMPLEMENTATION->OpenImplemented Design
    發表于 12-02 12:19 ?779次閱讀
    FPGA器件幾個比較常用的配置配置<b class='flag-5'>約束</b>