伦伦影院久久影视,天天操天天干天天射,ririsao久久精品一区 ,一本大道香蕉大久在红桃,999久久久免费精品国产色夜,色悠悠久久综合88,亚洲国产精品久久无套麻豆,亚洲香蕉毛片久久网站,一本一道久久综合狠狠老

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

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

3天內不再提示

詳細解析vivado約束時序路徑分析問題

電子設計 ? 來源:FPGA開源工作室 ? 作者:FPGA開源工作室 ? 2020-11-29 10:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

時序不滿足約束,會導致以下問題:

? 編譯時間長的令人絕望
? 運行結果靠運氣——時對時錯

導致時序問題的成因及其發生的概率如下表:


由上表可見,造成時序問題的主要原因除了約束不完整,就是路徑問題,本文就時序路徑分析問題作一介紹:

1、時鐘網絡分析

時鐘網絡反映了時鐘從時鐘引腳進入FPGA后在FPGA內部的傳播路徑。

報告時鐘網絡命令可以從以下位置運行:
① Vivado?IDE中的Flow Navigator
② Tcl命令:report_clock_networks -name {network_1}

報告時鐘網絡提供設計中時鐘樹的樹視圖。 如下圖。每個時鐘樹顯示從源到端點的時鐘網絡,端點按類型排序。


時鐘樹:
? 顯示由用戶定義或由工具自動生成的時鐘。
? 報告從I / O端口加載的時鐘。
? 可用于查找驅動其他BUFGs的BUFGs。
? 顯示驅動非時鐘負載的時鐘。

溫馨提醒:完整的時鐘樹僅在報告的GUI形式中詳細說明。此報告的文本版本僅顯示時鐘根的名稱。

以vivado自帶的例子wavegen為例。點擊Synthesis的Report CLock Networks如下圖所示:


時鐘clk_pin_p從輸入引腳輸入之后,經過IBUFDS,再通過MMCM生成時鐘,同時顯示了各個時鐘的頻率。如果我們未添加時鐘約束,報告將顯示Unconstrained(未約束的時鐘,root clock).可以選中未約束的時鐘右擊選擇Create Clock創建時鐘。

如下圖所示:


2、 跨時鐘域路徑分析

若要查看跨時鐘域路徑分析報告,可選擇以下內容之一來查看:

? Reports > Timing > Report Clock Interaction

? Flow Navigator > Synthesis > Report Clock Interaction

? Flow Navigator > Implementation > Report Clock Interaction

? Tcl command: report_clock_interaction -name clocks_1

如下圖所示,點擊Synthesis–>Report Clock Interaction.


跨時鐘域路徑分析報告分析從一個時鐘域(源時鐘)跨越到另一個時鐘域(目標時鐘)的時序路徑。跨時鐘域路徑分析報告有助于識別可能存在數據丟失或亞穩態問題的情況.

運行“Report Clock Interaction”命令后,結果將在“時鐘交互”窗口中打開。如下圖所示,時鐘交互報告顯示為時鐘域矩陣,源時鐘位于垂直軸,目標時鐘位于水平軸。


No Path --用黑色框來表示:沒有從源時鐘到目標時鐘的定時路徑。在這種情況下,沒有時鐘交互,也沒有任何報告。

Timed – 用綠色框來表示:源時鐘和目標時鐘具有同步關系,并安全地被約束在一起。當兩個時鐘具有共同的主時鐘和簡單的周期比時,該狀態由定時引擎確定。

User Ignored Paths–用深藍色框來表示:用戶定義的假路徑或時鐘組約束涵蓋從源時鐘到目標時鐘的所有路徑。

Partial False Path–用淡藍色框來表示:用戶定義的偽路徑約束覆蓋了從源時鐘到目標時鐘的一些時序路徑,其中源時鐘和目標時鐘具有同步關系。

Timed (Unsafe)–用紅色框來表示:源時鐘和目標時鐘具有異步關系。在這種情況下,沒有共同的主時鐘或沒有可擴展的時段。

Partial False Path (Unsafe)–用橘橙色框來表示:此類別與Timed(Unsafe)相同,只是由于偽路徑異常,從源時鐘到目標時鐘的至少一條路徑被忽略。

Max Delay Datapath Only --用紫色框來表示:set_max_delay -datapath_only約束涵蓋從源時鐘到目標時鐘的所有路徑。

Report_clock_interaction呈現的報告并不是根據時序約束生成的,但是和時序約束有關,它反映出用戶定義的偽路徑。

以wavegen工程為示例,點擊Report Clock Interaction,如下圖所示:


ID: 正在顯示的源/目標時鐘對的數字ID。

Source Clock: 路徑源時鐘域。

Destination Clock: 路徑終端的時鐘域。

Edges (WNS):用于計算最大延遲分析(設置/恢復)的最差裕度的時鐘邊緣。

WNS (Worst Negative Slack):為跨越指定時鐘域的各種路徑計算的最差裕度時間。負裕量時間表示路徑違反了所需的建立(或恢復)時間的問題。

TNS (Total Negative Slack):屬于跨越指定時鐘域的路徑的所有端點的最差松弛違規的總和。

Failing Endpoints (TNS): 交叉路徑中的端點數量無法滿足時序要求。違規的總和對應于TNS。

Total Endpoints (TNS):交叉路徑中端點的總數。

Path Req (WNS):定時路徑要求對應于WNS列中報告的路徑。如果兩個時鐘中的至少一個時鐘的上升沿和下降沿都有效,則在任何時鐘對之間可能存在若干路徑要求,或者在兩個時鐘之間的路徑上應用了一些時序異常。本專欄中報告的值并不總是最具挑戰性的要求。

Clock Pair Classification: 提供有關公共節點和時鐘對之間的公共周期的信息。從最高優先級到最低優先級:忽略,虛擬時鐘,無公共時鐘,無公共周期,部分公共節點,無公共節點和清除。

Inter-Clock Constraints: 顯示源時鐘和目標時鐘之間所有路徑的約束摘要。

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

    關注

    19

    文章

    860

    瀏覽量

    71333
  • 時序路徑
    +關注

    關注

    0

    文章

    12

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Vivado時序約束中invert參數的作用和應用場景

    Vivado時序約束中,-invert是用于控制信號極性的特殊參數,應用于時鐘約束(Clock Constraints)和延遲約束(De
    的頭像 發表于 02-09 13:49 ?364次閱讀
    <b class='flag-5'>Vivado</b><b class='flag-5'>時序</b><b class='flag-5'>約束</b>中invert參數的作用和應用場景

    vivado中常用時序約束指令介紹

    vivado中,我們常用的時序約束指令主要包括如下幾個方面。
    的頭像 發表于 01-20 16:15 ?585次閱讀

    輸入引腳時鐘約束_Xilinx FPGA編程技巧-常用時序約束詳解

    基本的約束方法 為了保證成功的設計,所有路徑時序要求必須能夠讓執行工具獲取。最普遍的三種路徑以及異常路徑為: 輸入
    發表于 01-16 08:19

    vivado時序分析相關經驗

    vivado綜合后時序為例主要是有兩種原因導致: 1,太多的邏輯級 2,太高的扇出 分析時序違例的具體位置以及原因可以使用一些tcl命令方便快速得到
    發表于 10-30 06:58

    移植E203到Genesys2開發板時遇到時序問題的常見原因

    在移植E203到自己的Genesys2開發板時候遇到時序問題的常見原因 1.在vivado中,連接的管腳的信號一般都會自動添加OBUF或IBUF。 但是對于inout類型的接口,不會主動添加
    發表于 10-29 07:04

    在Windows10上運行vivado使用tcl文件創建E203項目路徑錯誤的問題

    軟件版本是vivado2020.1,開發板是MCU200T。由于習慣使用了Windows系統所以想在Windows上創建vivado項目進行開發。但是由于Makefile更適合Linux系統,所以
    發表于 10-28 07:19

    win10環境下使用vivado生成.bit與.mcs文件

    ,這里介紹一種可以直接在windows環境下使用vivado生成system.bit和system.mcs文件的方法。 1.在windows環境安裝vivado,準備好e203_hbirdv2工程
    發表于 10-27 08:25

    E203內核移植到FPGA開發板時出現時序違例的解決方式

    在移植內核時,用VIVADO進行綜合實現后會出現時序違例,如圖: 雖然可以上板正常進行開發,但是還是想把這些違例解決下^_^ 檢查后,發現是 apb_adv_timer 這條路徑報的違例,解決方式
    發表于 10-27 07:32

    時序約束問題的解決辦法

    在使用vivado對 Verilog 代碼進行綜合后,點擊“SYNTHESIS”下的“Report Timing Summary”,可以查看綜合后的時序報告,查看 Setup Time 和 Hold
    發表于 10-24 09:55

    關于綜合保持時間約束不滿足的問題

    1、將 nuclei-config.xdc 和 nuclei-master.xdc 加入到項目工程中,綜合得到時序約束報告如下: 保持時間約束不滿足,分析原因,發現所有不滿足均出現在
    發表于 10-24 07:42

    E203分享之DDR擴展方案實施流程(下)

    soc_top層的ddr3的接口引出到最頂層system,mig的ddr3管腳約束在配置mig核的時候已經完成,不用再考慮。 (2)綜合時需要把ui_clk和clk_16M間的時序路徑設成
    發表于 10-23 06:16

    京東:調用用戶行為API分析購買路徑,優化頁面跳轉邏輯

    ? ?在電商平臺的激烈競爭中, 用戶購買路徑的流暢性 直接影響轉化率。京東通過深度整合用戶行為API,構建了完整的購買路徑分析體系,顯著優化了頁面跳轉邏輯。以下是關鍵技術實現路徑: 一、用戶行為
    的頭像 發表于 09-18 14:38 ?754次閱讀
    京東:調用用戶行為API<b class='flag-5'>分析</b>購買<b class='flag-5'>路徑</b>,優化頁面跳轉邏輯

    Vivado無法選中開發板的常見原因及解決方法

    對應的器件信息和約束文件(XDC),大大簡化工程初始化流程。然而,在某些情況下,我們可能會發現 Vivado 的界面中無法選中目標開發板,導致只能手動選擇器件。那么,遇到這種情況該如何處理呢?
    的頭像 發表于 07-15 10:19 ?1859次閱讀
    <b class='flag-5'>Vivado</b>無法選中開發板的常見原因及解決方法

    西門子再收購EDA公司 西門子宣布收購Excellicon公司 時序約束工具開發商

    精彩看點 此次收購將幫助系統級芯片 (SoC) 設計人員通過經市場檢驗的時序約束管理能力來加速設計,并提高功能約束和結構約束的正確性 ? 西門子宣布 收購 Excellicon 公司
    的頭像 發表于 05-20 19:04 ?1758次閱讀
    西門子再收購EDA公司  西門子宣布收購Excellicon公司  <b class='flag-5'>時序</b><b class='flag-5'>約束</b>工具開發商

    FPGA時序約束之設置時鐘組

    Vivado時序分析工具默認會分析設計中所有時鐘相關的時序路徑,除非
    的頭像 發表于 04-23 09:50 ?1571次閱讀
    FPGA<b class='flag-5'>時序</b><b class='flag-5'>約束</b>之設置時鐘組