描述
如何将以下ISE FROM:TO约束转换为XDC?
NET“clk_rx”TNM_NET =“TNM_clk_rx”;
NET“clk_tx”TNM_NET =“TNM_clk_tx”;
TIMESPEC TS_clk_rx_to_clk_tx =从“TNM_clk_rx”到“TNM_clk_tx”5 ns;
TIMESPEC TS_clk_tx_to_clk_rx =从“TNM_clk_tx”到“TNM_clk_rx”5 ns;
解
如果此FROM:TO是多周期(例如,2x周期)约束,则使用以下内容:
set_multicycle_path -from [all_fanout -from [get_nets clk_rx] -flat -endpoints_only] -to [all_fanout -from [get_nets clk_tx] -flat -endpoints_only] -setup 2
set_multicycle_path -from [all_fanout -from [get_nets clk_rx] -flat -endpoints_only] -to [all_fanout -from [get_nets clk_tx] -flat -endpoints_only] -hold 1
set_multicycle_path -from [all_fanout -from [get_nets clk_tx] -flat -endpoints_only] -to [all_fanout -from [get_nets clk_rx] -flat -endpoints_only] -setup 2
set_multicycle_path -from [all_fanout -from [get_nets clk_rx] -flat -endpoints_only] -to [all_fanout -from [get_nets clk_tx] -flat -endpoints_only] -hold 1
set_multicycle_path -from [get_clocks clk_rx] -to [get_clocks clk_tx] -setup 2
set_multicycle_path -from [get_clocks clk_rx] -to [get_clocks clk_tx] -hold 1
set_multicycle_path -from [get_clocks clk_tx] -to [get_clocks clk_rx] -setup 2
set_multicycle_path -from [get_clocks clk_tx] -to [get_clocks clk_rx] -hold 1
如果此FROM:TO是明确要求,请使用以下内容:
set_max_delay -from [all_fanout -from [get_nets clk_rx] -flat -endpoints_only] -to [all_fanout -from [get_nets clk_tx] -flat -endpoints_only] 5
set_max_delay -from [all_fanout -from [get_nets clk_tx] -flat -endpoints_only] -to [all_fanout -from [get_nets clk_rx] -flat -endpoints_only] 5
如果clk_rx和clk_tx是时钟且具有周期约束(例如,带有-name clk_rx / clk_tx的create_clock约束),则set_max_delay约束也可以是:
set_max_delay -from [get_clocks clk_rx] -to [get_clocks clk_tx] 5
set_max_delay -from [get_clocks clk_tx] -to [get_clocks clk_rx] 5
注意:本答复记录中的示例不适用于所有设计。
用户有责任验证他们的设计约束。
有关ISE FROM-TO约束的更多信息,请参阅UG625和UG612。
有关Vivado set_multicycle_path和set_max_delay约束的更多信息,请参阅UG903。
没有回复内容