文章 ID: 000080400 內容類型: 產品資訊與文件 最近查看日期: 2025 年 06 月 11 日

如何限制我的跨時鐘域?

環境

    Intel® Quartus® Prime Pro Edition 軟體
BUILT IN - ARTICLE INTRO SECOND COMPONENT
描述

將時序約束應用於多位頻率域交叉至關重要。如果此總線具有 set_false_path 約束,則總線上的偏差可能超過1個時鐘週期,這可能會導致功能錯誤。

第一個要求是兩個時鐘域之間沒有 set_false_path 約束。如果不希望分析它們之間的路徑以進行設置和保持,則可以使用 set_clock_groups,其優先順序較低。

接下來,使用 set_net_delay 約束路徑以使它們盡可能短,並使用 set_max_skew. set_max_skew 不會約束擬合者,但您可以在時序分析器中針對此約束進行分析。

解決方法

時鐘域clk_a中的data_a和時鐘域clk_b中的data_b之間的時鐘域約束可能如下所示。

create_clock -name clk_a -period 4.000 [get_ports {clk_a}]

create_clock -name clk_b -period 4.500 [get_ports {clk_b}]

set_clock_groups -異步 -group [get_clocks {clk_a}] -group [get_clocks {clk_b}]

set_net_delay -from [get_registers {data_a[*]}] -to [get_registers {data_b[*]}] -max -get_value_from_clock_period dst_clock_period -value_multiplier 0.8

set_max_skew -from [get_keepers {data_a[*]}] -to [get_keepers {data_b[*]}] -get_skew_value_from_clock_period min_clock_period -skew_value_multiplier 0.8

偏斜要求將取決於您的設計以及您如何處理時鐘域交叉。

最後,通過在時間分析器中運行「報告最大偏差摘要」和「報告淨延遲摘要」來檢查時鐘域交叉的計時。

相關產品

本文章適用於 3 產品

Intel® Stratix® 10 FPGA 與 SoC FPGA
Intel® Arria® 10 FPGA 與 SoC FPGA
Intel® Cyclone® 10 GX FPGA

1

這個頁面的內容綜合了英文原始內容的人工翻譯譯文與機器翻譯譯文。本內容是基於一般資訊目的,方便您參考而提供,不應視同完整或準確的內容。如果這個頁面的英文版與譯文之間發生任何牴觸,將受英文版規範及管轄。 查看這個頁面的英文版。