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

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

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

約束異步時鐘的方法

Xilinx賽靈思官微 ? 來源:djl ? 作者:賽靈思 ? 2019-07-29 18:05 ? 次閱讀

對于異步時鐘有四種方法進行約束。本文介紹了每種方法的優(yōu)缺點:

1、set_false_path

這是最原始的方法,在時序分析設計早期比較流行。

這種方法有兩個缺點:
a.兩個方向都需要約束:clock1->clock2 以及 clock2->clock1
b.該路徑?jīng)]有時序要求,因此理論上路徑延遲完全依賴于所使用的工具。而且這兩種路徑可能導向不同的節(jié)點,因為我們沒有辦法規(guī)范它們來滿足任何具體的要求。

2、set_clock_groups

該方法已被引入 SDC 中,與方法 1 相比有以下三個主要優(yōu)點:

a.只需要指定源時鐘與目的時鐘,盡量減少 XDC/SDC 文件的長度
b.與set_false_path方法相同,這里的路徑也沒有時序要求。但是它考慮到了信號完整性方面的問題,而set_false_path方法并沒有
c.在基于 FPGA 設計領(lǐng)域,可以說這是不重要的,因為在設計 FPGA 器件時信號完整性方面已經(jīng)被考慮到了
d.這種方法帶點哲學思辯的方法論
e.當我們使用set_false_path方法時,只是指定了這條路徑是錯誤的,但是并沒有明確的解釋路徑錯誤的原因
f.拿異步時鐘來舉例,在實際情況下,路徑并不是錯誤,所以時鐘信號會通過這條路徑,set_false_path則可作為一種機制來告知工具,時鐘信號不約束走這條路徑。

在set_clock_groups這種方法中,我們指定了準確的原因,即為什么每個時鐘信號組是不同的。實際上它們不能進行時序約束的原因完全是由你的意圖決定的。因此這也可以作為一個注意事項,可以更加容易理解具體約束設計的原因。

通常情況下方法 2 要優(yōu)于方法 1,主要是因為以上的 b 和 c 因素,其次 a 因素也是比較重要的。

3、set_multicycle_path

大約在21世紀中期的時候,設計者開始從set_false_path方法轉(zhuǎn)向set_multicycle_path方法。方法 1 和方法 2 并沒有約束一個路徑 —— 每條路徑的延遲是任意的。這種方法提供了跨越某個節(jié)點的路徑的延遲上限規(guī)定。

4、set_max_delay

這種方法的效果與方法 3 相同。Vivado工具里面有‘-datapath_only’選項,這讓設計者操作起來更簡單,不用擔心時鐘偏移情況的發(fā)生。同時與set_multicycle_path方法相比,set_max_delay方法更能表現(xiàn)出設計者的意圖。

如果你想選一種方法,我建議的順序是:4>2>3>1,有時我更傾向于選擇方法 2。

舉個例子,如果我正在進行一個局部的模塊設計,這個模塊還可以用于其他不同的應用,而且我不清楚這個部分會在什么外部設備或者器件上實現(xiàn)。這種情況下我也不確定max_delay值具體是多少合適,那么處于安全起見我會選擇方法2而不是方法4。

如果使用 Xilinx 提供的工具,我們可以借助 Vivado 來設置時鐘周期,在這個例子中我會根據(jù)時鐘周期來設置具體的延遲,因此我可能更希望采用方法 4。

然而,根據(jù)個人的選擇/需求/熟悉程度,不同的人可能有不同的選擇。

關(guān)于作者:Sanjay Churiwala

賽靈思公司工具與方法學應用專家,1993年畢業(yè)于印度理工學院電子工程專業(yè),一直從事 VLSIEDA 相關(guān)領(lǐng)域的工作。2011年加入賽靈思公司,專攻庫特性描述與建模,HDL,仿真與綜合,靜態(tài)時序分析以及跨時鐘域(CDC)與同步相關(guān)內(nèi)容。

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

    關(guān)注

    32

    文章

    1794

    瀏覽量

    131126
  • 約束
    +關(guān)注

    關(guān)注

    0

    文章

    82

    瀏覽量

    12708
  • 異步時鐘
    +關(guān)注

    關(guān)注

    0

    文章

    17

    瀏覽量

    9399
收藏 人收藏

    評論

    相關(guān)推薦

    FPGA時序案例分析之時鐘周期約束

    時鐘周期約束,顧名思義,就是我們對時鐘的周期進行約束,這個約束是我們用的最多的約束了,也是最重要
    的頭像 發(fā)表于 11-19 11:44 ?5604次閱讀
    FPGA時序案例分析之<b class='flag-5'>時鐘</b>周期<b class='flag-5'>約束</b>

    FPGA時序約束之衍生時鐘約束時鐘分組約束

    在FPGA設計中,時序約束對于電路性能和可靠性非常重要。在上一篇的文章中,已經(jīng)詳細介紹了FPGA時序約束的主時鐘約束。
    發(fā)表于 06-12 17:29 ?2557次閱讀

    FPGA時鐘周期約束講解

    時鐘周期約束是用于對時鐘周期的約束,屬于時序約束中最重要的約束之一。
    發(fā)表于 08-14 18:25 ?828次閱讀

    時序約束時鐘約束

    vivado默認計算所有時鐘之間的路徑,通過set_clock_groups命令可禁止在所標識的時鐘組之間以及一個時鐘組內(nèi)的時鐘進行時序分析。 1.
    發(fā)表于 09-21 12:40

    xilinx時序分析及約束

    詳細講解了xilinx的時序約束實現(xiàn)方法和意義。包括:初級時鐘,衍生時鐘,異步時終域,多時終周期的講解
    發(fā)表于 01-25 09:53 ?6次下載

    同步和異步時鐘之間是如何聯(lián)系_如何正確的約束時鐘

    現(xiàn)在的硬件設計中,大量的時鐘之間彼此相互連接是很典型的現(xiàn)象。為了保證Vivado優(yōu)化到關(guān)鍵路徑,我們必須要理解時鐘之間是如何相互作用,也就是同步和異步時鐘之間是如何聯(lián)系。 同步
    的頭像 發(fā)表于 05-12 10:15 ?2w次閱讀

    硬件設計中教你如何正確的約束時鐘

    ”列可以容易的辨別出同步時鐘。下面是3個場景,你需要使用合適的時鐘約束處理異步時鐘之間的關(guān)系。1. 如果
    的頭像 發(fā)表于 07-15 15:35 ?6421次閱讀

    時鐘域的同步時序設計和幾種處理異步時鐘域接口的方法

    外部輸入的信號與本地時鐘異步的。在SoC設計中,可能同時存在幾個時鐘域,信號的輸出驅(qū)動和輸入采樣在不同的時鐘節(jié)拍下進行,可能會出現(xiàn)一些不穩(wěn)定的現(xiàn)象。本文分析了在跨
    的頭像 發(fā)表于 07-24 09:52 ?4324次閱讀
    多<b class='flag-5'>時鐘</b>域的同步時序設計和幾種處理<b class='flag-5'>異步</b><b class='flag-5'>時鐘</b>域接口的<b class='flag-5'>方法</b>

    簡述FPGA時鐘約束時鐘余量超差解決方法

    在設計FPGA項目的時候,對時鐘進行約束,但是因為算法或者硬件的原因,都使得時鐘約束出現(xiàn)超差現(xiàn)象,接下來主要就是解決時鐘超差問題,主要
    的頭像 發(fā)表于 10-11 14:52 ?3452次閱讀
    簡述FPGA<b class='flag-5'>時鐘</b><b class='flag-5'>約束</b><b class='flag-5'>時鐘</b>余量超差解決<b class='flag-5'>方法</b>

    時鐘周期約束詳細介紹

    時鐘周期約束:?時鐘周期約束,顧名思義,就是我們對時鐘的周期進行約束,這個
    的頭像 發(fā)表于 08-05 12:50 ?3682次閱讀

    詳解數(shù)字設計中的時鐘約束

    ; ·行波時鐘; ·雙沿時鐘; ·Design Compiler中的時鐘約束。 ·補充:時鐘分配策略 1、同步電路與
    的頭像 發(fā)表于 01-28 07:53 ?2842次閱讀
    詳解數(shù)字設計中的<b class='flag-5'>時鐘</b>與<b class='flag-5'>約束</b>

    同步時鐘異步時鐘詳解

    當觸發(fā)器輸入端的數(shù)據(jù)和觸發(fā)器的時鐘不相關(guān)時,很容易導致電路時序約束不滿足。本章主要解決模塊間可導致時序 violation 的異步問題。
    的頭像 發(fā)表于 03-28 13:46 ?1.1w次閱讀
    同步<b class='flag-5'>時鐘</b>和<b class='flag-5'>異步</b><b class='flag-5'>時鐘</b>詳解

    時序約束---多時鐘介紹

    當設計存在多個時鐘時,根據(jù)時鐘的相位和頻率關(guān)系,分為同步時鐘異步時鐘,這兩類要分別討論其約束
    的頭像 發(fā)表于 04-06 14:34 ?1162次閱讀
    時序<b class='flag-5'>約束</b>---多<b class='flag-5'>時鐘</b>介紹

    約束、時序分析的概念

    很多人詢問關(guān)于約束、時序分析的問題,比如:如何設置setup,hold時間?如何使用全局時鐘和第二全局時鐘(長線資源)?如何進行分組約束?如何約束
    的頭像 發(fā)表于 05-29 10:06 ?742次閱讀
    <b class='flag-5'>約束</b>、時序分析的概念

    異步電路中的時鐘同步處理方法

    異步電路中的時鐘同步處理方法? 時鐘同步在異步電路中是至關(guān)重要的,它確保了電路中的各個部件在正確的時間進行操作,從而使系統(tǒng)能夠正常工作。在本
    的頭像 發(fā)表于 01-16 14:42 ?1048次閱讀