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

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

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

Vivado IDE 中的Timing Constraints窗口介紹

XILINX開發(fā)者社區(qū) ? 來源:XILINX開發(fā)者社區(qū) ? 作者:XILINX開發(fā)者社區(qū) ? 2022-09-15 10:24 ? 次閱讀

隨著設(shè)計復(fù)雜度和調(diào)用 IP 豐富度的增加,在調(diào)試時序約束的過程中,用戶常常會對除了頂層約束外所涉及的繁雜的時序約束感到困惑而無從下手。舉個例子,用戶在 XDC 里面并沒有指定 set_false_path,為什么有些路徑在分析時忽略了?那怎么去定位這些約束是哪里設(shè)定的?


事實上,Vivado 集成設(shè)計環(huán)境提供了很多輔助工具來協(xié)助用戶完成時序約束的分析。

本文闡述了如何結(jié)合 Timing Constraints 窗口對設(shè)計中的約束進(jìn)行查看及分析,希望為用戶的設(shè)計調(diào)試提供一些思路和方向。

Timing Constraints 窗口的開啟

Timing Constraints窗口僅對Synthesized Design或Implemented Design適用。您可以通過以下三種方式之一找到其入口:

1. Open Synthesized/Implemented Design,選擇菜單Windows > Timing Constraints

a8cbfc62-341d-11ed-ba43-dac502259ad0.png

2. Open Synthesized Design,選擇Flow Navigator里Synthesized Design 部分的 Edit Timing Constraints

a8ed7004-341d-11ed-ba43-dac502259ad0.png

3. Open Implemented Design,選擇Flow Navigator里Implemented Design 部分的 Edit Timing Constraints

a90b82c4-341d-11ed-ba43-dac502259ad0.png ? ?

Timing Constraints 窗口一覽

Timing Constraints 窗口可以以圖示的方式直觀顯示當(dāng)前導(dǎo)入的設(shè)計中所存儲的時序約束,以分類組織的架構(gòu),用戶可以方便地定位約束創(chuàng)建的順序及來源。

打開后的窗口整體如下圖所示:

a927e20c-341d-11ed-ba43-dac502259ad0.png

左上部分子窗口將約束做了分類,括號里是每一類約束的數(shù)量。

a953a540-341d-11ed-ba43-dac502259ad0.png

當(dāng)選定某一類約束后,設(shè)計中所有這類約束信息會以電子表格的形式顯示在右上部分子窗口。

以 Create Clock 約束為例:

a977aa76-341d-11ed-ba43-dac502259ad0.png

Position 列是約束的位置信息,跟約束的讀入順序?qū)?yīng)。前面帶鎖圖標(biāo)表明此約束無法在表格上直接編輯,通常是 IP 自帶的約束。


Source File 列顯示了約束來源于哪個 XDC 或 Tcl 文件。


Scoped Cell 列顯示了約束的作用范圍,是全局還是某一個實例,通常此列顯示的名稱對應(yīng)于自帶特定約束的 IP 實例名。

當(dāng)點(diǎn)擊某一行選中約束后,同時在下方的 All Constraints 子窗口會高亮此約束語句

a997a754-341d-11ed-ba43-dac502259ad0.png

用戶可以快速看到原始約束語句以及其來源 XDC 的具體文件位置。

All Constraints 子窗口顯示加載到內(nèi)存中的約束的完整列表,其順序與應(yīng)用它們的順序相同。 約束根據(jù)它們所源自的 XDC file 或 Tcl 腳本進(jìn)行分組,根據(jù)查看需要可切換多種視圖。

您可以點(diǎn)擊 expand 或 collapse 圖標(biāo)展開或折疊每個約束文件的約束,如下圖所示:

展開約束:

a9c1d22c-341d-11ed-ba43-dac502259ad0.png

折疊約束:

a9e9dcea-341d-11ed-ba43-dac502259ad0.png

此時點(diǎn)擊 Constraints 旁的箭頭可以看到所有關(guān)聯(lián)的約束文件,進(jìn)一步可以點(diǎn)擊某個約束文件旁的箭頭進(jìn)行逐一查看。

aa0141f0-341d-11ed-ba43-dac502259ad0.png

您也可以取消選擇 Group by Source 圖標(biāo),將視圖切換到一個表格,按序顯示設(shè)計中的所有時序約束,其中source constraint 文件和 Scoped Cell 信息顯示在右側(cè)的兩列中。

aa256698-341d-11ed-ba43-dac502259ad0.png ? ?

在 Timing Constraints 窗口進(jìn)行約束編輯

除了在表格中查看已有約束,還可以對已有約束進(jìn)行刪減、修改或者添加新的約束,改動結(jié)果也會實時反映在下方的All Constraints 窗口并應(yīng)用在當(dāng)前的 in-memory 設(shè)計,方便用戶在不重新跑綜合實現(xiàn)的前提下進(jìn)行多角度的時序分析試驗。

要刪除某一條約束,可以從任一子窗口選中此約束,右鍵選Remove Constraint,或者點(diǎn)擊-圖標(biāo),并點(diǎn)擊窗口下方的Apply 按鍵以刷新內(nèi)存中的約束。

aa52199a-341d-11ed-ba43-dac502259ad0.png

要編輯某一條約束(注意只能修改非只讀,即約束前沒有帶鎖標(biāo)志的),可以選中此約束,右鍵選 Edit Constraint,或者點(diǎn)擊編輯圖標(biāo)。

aa7f96ea-341d-11ed-ba43-dac502259ad0.png

在隨后打開的約束編輯對話框中完成修改,并點(diǎn)擊窗口下方的Apply 按鍵以刷新內(nèi)存中的約束。

要添加新的約束,可以點(diǎn)擊分類表格子窗口的+圖標(biāo),或者在某一類約束的空白處雙擊,在隨后打開的對話框中將約束信息補(bǔ)充完整。

aaad7862-341d-11ed-ba43-dac502259ad0.png

也可以在 Tcl Console 敲入新的約束進(jìn)行添加。

新約束出現(xiàn)在名為的組中的列表末尾。

aad1427e-341d-11ed-ba43-dac502259ad0.png

約束修改后可以直接在 in-memory 設(shè)計上生效,由此展開更新后的時序分析,在當(dāng)前布局布線的結(jié)果上評估修改后的時序。

評估完成后,如果需要保存所作的修改,可以在 Close Design的時候選擇 Save Constraints,工具會自動選擇標(biāo)記為 Target的 XDC 文件進(jìn)行保存。如果并不想改動原始約束或者并不需要保存全部改動,可以在退出設(shè)計時忽略 Save Constraints,之后再手動修改設(shè)計中的約束文件,加入想要的改動。

總結(jié)

以上內(nèi)容對 Vivado IDE 中的Timing Constraints 窗口做了介紹,與 write_xdc 命令相比,其最大的優(yōu)勢是能直觀顯示設(shè)計中所有約束的分組及來源,為時序約束的查看、驗證及假設(shè)分析提供了比較方便的接口,與其他調(diào)試手段結(jié)合,可以提升設(shè)計效率。

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

    關(guān)注

    33

    文章

    8257

    瀏覽量

    149953
  • 時序
    +關(guān)注

    關(guān)注

    5

    文章

    370

    瀏覽量

    37186
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    797

    瀏覽量

    65854

原文標(biāo)題:開發(fā)者分享|讀懂用好 Timing Constraints 窗口

文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    玩轉(zhuǎn)VivadoTiming Constraints

    玩轉(zhuǎn)VivadoTiming Constraints特權(quán)同學(xué),版權(quán)所有最近在熟悉Xilinx已經(jīng)推出好幾年的Vivado,雖然特權(quán)同學(xué)之前已經(jīng)著手玩過這個新開發(fā)工具,但只是簡單的玩玩
    發(fā)表于 01-11 16:55

    vivado約束參考文檔

    - Design Analysis and Closure TechniquesUG945- Vivado Design Suite Tutorial - Using Constraints (約束向?qū)?b class='flag-5'>介紹)
    發(fā)表于 09-26 15:35

    Vivado 2014.1工具流程結(jié)果不可重復(fù)

    Vivado toolchain in batch mode for the same project (everything is identical: scripts, constraints
    發(fā)表于 10-25 15:26

    vivado掛在place_design

    38-35] Done setting XDC timing constraints.INFO: [Timing 38-2] Deriving generated clocks
    發(fā)表于 11-08 11:38

    使用VIVADO IDE設(shè)計的最有效方法是什么?

    HDL。使用vivado,您現(xiàn)在可以使用IP集成商,在其中使用IP創(chuàng)建塊設(shè)計。使用VIVADO IDE設(shè)計的最有效方法是什么?Vivado IDE
    發(fā)表于 03-29 09:14

    Global Timing Constraints

    Without Timing Constraints• This design had no timingconstraints or pin assignments– Note
    發(fā)表于 01-11 08:54 ?6次下載

    Timing Groups and OFFSET Const

    Timing Groups and OFFSET Constraints: •Use the Constraints Editor to create groups of path
    發(fā)表于 01-11 08:55 ?4次下載

    Achieving Timing Closure

    Achieving Timing Closure:Timing Reports• Timing reports enable you to determine how and why
    發(fā)表于 01-11 08:56 ?0次下載

    具體介紹ISE通過編輯UCF文件來對FPGA設(shè)計進(jìn)行約束

    本文主要通過一個實例具體介紹ISE通過編輯UCF文件來對FPGA設(shè)計進(jìn)行約束,主要涉及到的約束包括時鐘約束、群組約束、邏輯管腳約束以及物理屬性約束。 Xilinx定義了如下幾種約束類型
    發(fā)表于 11-24 19:59 ?3233次閱讀
    具體<b class='flag-5'>介紹</b>ISE<b class='flag-5'>中</b>通過編輯UCF文件來對FPGA設(shè)計進(jìn)行約束

    通過一個實例具體介紹ISE通過編輯UCF文件來對FPGA設(shè)計進(jìn)行約束

    摘要:本文主要通過一個實例具體介紹ISE通過編輯UCF文件來對FPGA設(shè)計進(jìn)行約束,主要涉及到的約束包括時鐘約束、群組約束、邏輯管腳約束以及物理屬性約束。 Xilinx定義了如下幾種約束類型
    發(fā)表于 11-25 01:27 ?5127次閱讀
    通過一個實例具體<b class='flag-5'>介紹</b>ISE<b class='flag-5'>中</b>通過編輯UCF文件來對FPGA設(shè)計進(jìn)行約束

    Vivado進(jìn)行時序約束的兩種方式

    上面我們講的都是xdc文件的方式進(jìn)行時序約束,Vivado還提供了兩種圖形界面的方式,幫我們進(jìn)行時序約束:時序約束編輯器(Edit Timing Constraints )和時序約束
    的頭像 發(fā)表于 03-08 17:17 ?1.9w次閱讀
    <b class='flag-5'>Vivado</b>進(jìn)行時序約束的兩種方式

    Vivado IDE全面了解XDC文件的約束順序

    Vivado IDE約束管理器將任何已編輯的約束保存回XDC文件的原始位置,但不會保存在Tcl腳本。 任何新約束都保存在標(biāo)記為目標(biāo)的XDC文件的末尾。
    的頭像 發(fā)表于 11-13 10:53 ?3979次閱讀
    <b class='flag-5'>Vivado</b> <b class='flag-5'>IDE</b>全面了解XDC文件的約束順序

    如何在Vivado添加時序約束呢?

    今天介紹一下,如何在Vivado添加時序約束,Vivado添加約束的方法有3種:xdc文件、時序約束向?qū)В?b class='flag-5'>Constraints Wiza
    的頭像 發(fā)表于 06-26 15:21 ?3351次閱讀
    如何在<b class='flag-5'>Vivado</b><b class='flag-5'>中</b>添加時序約束呢?

    時序分析基本概念介紹Timing Arc

    今天我們要介紹的時序基本概念是Timing arc,中文名時序弧。這是timing計算最基本的組成元素,在昨天的lib庫介紹,大部分時序信
    的頭像 發(fā)表于 07-06 15:00 ?2627次閱讀
    時序分析基本概念<b class='flag-5'>介紹</b>—<b class='flag-5'>Timing</b> Arc

    Vivado設(shè)計套件用戶:使用Vivado IDE的指南

    電子發(fā)燒友網(wǎng)站提供《Vivado設(shè)計套件用戶:使用Vivado IDE的指南.pdf》資料免費(fèi)下載
    發(fā)表于 09-13 15:25 ?7次下載
    <b class='flag-5'>Vivado</b>設(shè)計套件用戶:使用<b class='flag-5'>Vivado</b> <b class='flag-5'>IDE</b>的指南