在靜態時序分析中介紹了4種時序路徑,其中有3種是與外部I/O有關,即觸發器到輸出端,輸入端到觸發器和輸入端到輸出端,所以在時序分析中需要對外部IO的延時進行時序約束,如下圖所示。
1.設置輸入延時
輸入延時定義爲在一個有效時鐘週期內,外部邏輯的輸出數據到達設計輸入端口所佔用的延時,如下圖所示。
使用SDC命令set_input_delay來定義IO輸入延時,命令如下。
set_input_delay -min 2.0 -clock CLK [get_ports IN]
set_input_delay -max 2.0 -clock CLK [get_ports IN]
以上命令定義一個基於時鐘CLK的外部邏輯到輸入端口IN的延時信息,其延時波形如下圖所示。
2.設置輸出延時
輸出延時定義爲在一個有效時鐘週期內,輸出端口數據到外部邏輯所佔用的延時,如下圖所示。
使用SDC命令set_output_delay來定義IO輸入延時,命令如下。
set_output_delay -clock CLK -max 1.5 [get_ports OUT]
set_output_delay -clock CLK -min 1.5 [get_ports OUT]
以上命令定義一個基於時鐘CLK的輸出端口OUT到外部邏輯的延時信息,其延時波形如下圖所示。