現在的硬件設計中,大量的時鐘之間彼此相互連接是很典型的現象。為了保證Vivado優化到關鍵路徑,我們必須要理解時鐘之間是如何相互作用,也就是同步和異步時鐘之間是如何聯系。
同步時鐘是彼此聯系的時鐘。例如,由MMCM或PLL生成的兩個相同周期的時鐘是典型的同步時鐘。如果MMCM或PLL生成了不同周期的時鐘,那么我們最好把他們當作異步時鐘處理,需要用到相應的同步技術。你可以通過運行report_clock_interaction生成報告,然后看報告中的“Path Req (WNS)”列、“Clock Pair Classification”列和 “Clock Pair Classification”列可以容易的辨別出同步時鐘。下面是3個場景,你需要使用合適的時鐘約束處理異步時鐘之間的關系。
1. 如果時鐘互聯報告有很多(或者一個)紅色的"Timed (unsafe)" 或者還有桔色的"Partial False Path (unsafe)"方框,那你應該是沒有正確地對異步時鐘約束。如果你的設計中有大量的跨時鐘域的異步時鐘,那么你需要對那些時鐘互聯約束。
2. 在時鐘互聯報告中看"Clock Pair Classification" 和 "Inter-Clock Constraints"這兩列。如果時鐘對類型是"No Common Clock" 或者 "No Common Period"或者Inter-clock約束顯示"Timed (unsafe)",就要把這種互聯當作異步時鐘。
3. 如果“Path Requirement (WNS)”列顯示時序非常緊,典型的是小于1ns,或者“Inter-Clock Constraints”列標記為時序“Unsafe”,或者“Partial False Path (unsafe)”,那么你需要把這種時鐘互聯看作異步時鐘。
如果“WNS Path Requirement (ns)”這一列的值是合理的(>1 ns), 并且"Inter-Clock Constraints”是滿足的,同時,“Clock Pair Classification”是“干凈”的,那么這樣的時鐘互聯可以被看作是同步的,你不需要添加任何時序約束。時序工具會自動的把那些路徑當作同步路徑處理。
為了正確約束跨時鐘域的路徑,需要考慮以下4個方面:
1. 如果兩個時鐘之間沒有路徑,在兩個時鐘之間可以簡單的使用set_clock_groups 或者set_false_path約束
2. 如果跨時鐘域路徑都是一位的,那么你可以在兩個時鐘之間使用set_clock_groups 或者 set_false_path。
3. 如果路徑都是多位的路徑,你需要考慮延遲和數據位的偏移,然后使用set_max_delay –datapath_only 和set_bus_skew約束。
4. 如果在兩個時鐘域之間存在單位和多位混合的跨時鐘域路徑,那么對于單位的跨時鐘域路徑要明確的對每一條路徑設置偽路徑來約束,對于多位的跨時鐘域路徑,使用set_max_delay –datapath_only 和 set_bus_skew約束。
如果時鐘是同步的,不需要任何約束。vivado的靜態時鐘分析工具會自動的設定路徑的時序。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
相關推薦
xilinx FPGA IOB約束使用以及注意事項 一、什么是IOB約束 在xilinx FPGA中,IOB是位于IO附近的寄存器,是FPGA上距離IO最近的寄存器,同時位置固定。當你輸入或者輸出
發表于 01-16 11:02
?126次閱讀
的輸出,對于Ultrascale和Ultrascale+系列的器件,定時器會自動地接入到GT的輸出。 1.2 約束設置格式 主時鐘約束使用命令create_clock進行創建,進入Timing
發表于 11-29 11:03
?620次閱讀
為了防止約束失敗,我們在Tcl輸入框中驗證,沒有告警或者錯誤說明約束的寫法是正確的set_max_delay 5.00 -from [get_cells key2_detect_ins
發表于 11-01 11:06
?249次閱讀
01 物聯網系統中為什么要使用 時鐘芯片 在物聯網系統中使用時鐘芯片的原因主要體現在以下幾個方面: 時間同步的重要性 物聯網設備通常需要基于時間執行各種任務,如數據采集、事件記錄、定時控制等。時間
發表于 09-26 14:57
?773次閱讀
電路的兩類約束通常指的是電氣約束和物理約束。這兩類約束在電路設計和分析中起著至關重要的作用。 一、電氣約
發表于 08-25 09:34
?1076次閱讀
在FPGA(現場可編程門陣列)設計中,消除時鐘抖動是一個關鍵任務,因為時鐘抖動會直接影響系統的時序性能、穩定性和可靠性。以下將詳細闡述FPGA中消除
發表于 08-19 17:58
?1632次閱讀
建立時間和保持時間是FPGA時序約束中兩個最基本的概念,同樣在芯片電路時序分析中也存在。
發表于 08-06 11:40
?805次閱讀
谷景教你正確處理貼片電感表面開裂故障 編輯:谷景電子 貼片電感作為當下應用普遍的一種電子元器件,我們在很多電子產品上都可以看到貼片電感的存在。大部分人在使用貼片電感的時候,都會遇到電感表面開裂的故障
發表于 07-10 21:21
?421次閱讀
的異常路徑(Path specific exceptions),使用虛假路徑、多周期路徑約束
一、輸入約束Input Constraint
OFFSET IN約束限定了輸入數據和輸入
發表于 05-06 15:51
添加約束的目的是為了告訴FPGA你的設計指標及運行情況。在上面的生成約束之后,在Result àxx.sdc中提供約束參考(請注意該文件不能直接添加到工程中,需要熱復制到別的指定目錄或
發表于 04-28 18:36
?2412次閱讀
LOC約束是FPGA設計中最基本的布局約束和綜合約束,能夠定義基本設計單元在FPGA芯片中的位置,可實現絕對定位、范圍定位以及區域定位。
發表于 04-26 17:05
?1329次閱讀
谷景教你如何正確選擇鐵氧體磁芯電感的規格 編輯:谷景電子 我們都知道在電感方案的應用中,選型工作至關重要。近年來隨著電子設備功能的不斷增強與完善,電磁兼容性成為了電路設計中不可忽視的問
發表于 04-24 16:14
?501次閱讀
,這一約束降低工具的布線難度而又不會影響時序性能。這種約束通常用在有時鐘使能控制的同步元件路徑中。
必須說明的是上圖Enable信號的產生周期必須大于等于n*PERIOD,且每
發表于 04-12 17:39
谷景教你正確解決扼流圈功率電感噪音問題 編輯:谷景電子 扼流圈功率電感噪音是比較常見的一個應用故障,噪音的問題對扼流圈功率電感的應用和電路的運行穩定性還是會有很直接的影響的。如果發現電感在應用中出
發表于 03-25 22:36
?381次閱讀
簡介時鐘是芯片正確高效運行的基礎,正確的時鐘配置是芯片能正確運行的必要條件,其重要性不言而喻。AT32各系列產品的
發表于 02-19 13:26
?683次閱讀
評論