ISE 时序约束技巧
于端口信号,不能应用于内部信号,包括OFFSET_IN_BEFORE,OFFSET_IN_AFTER,OFFSET_OUT_BEFORE,
OFFSET_OUT_ AFTER 等4 类基本约束。偏移约束的基本语法为:
OFFSET = [IN | OUT]“ offset_time” [units] {BEFORE | AFTER}“ clk_name”
[TIMEGRP“ group_name”];
其中[IN | OUT] 说明约束的是输入还是输出。“offset_time”为数据和有效时钟沿之间的时间差,{BEFORE
| AFTER} 表明该时间差是在有效时钟之前还是之后,“clk_name”为有效时钟的名字,[TIMEGRP “group_
name”] 是用户添加的分组信号,在缺省时,默认为时钟clk_name 所驱动的所有触发器。偏移约束通知布局布线器输入数据的到达时刻,从而可准确调整布局布线的过程,使约束信号建立时间满足要求。
1)“OFFSET IN”偏移约束
“OFFSET IN ”偏移约束是输入偏移约束,有OFFSET_IN_AFTER 和OFFSET_IN_BEFORE 两种,前者定义了输入数据在有效时钟到达多长时间后可以到达芯片的输入管脚,这样可以得到芯片内部的延迟上限,从而对那些与输入引脚相连的组合逻辑进行约束;后者定义数据比相应的有效时钟沿提前多少时间到来,是与其相连的组合逻辑的最大延时,否则在时钟沿到来时,数据不稳定,会发生采样错误。输入偏移的时序关系如图5-10所示。
DATA_IN
TIN_AFTER TIN_BEFORE
TP
CLK_SYS
图5-10 输入偏移的时序关系
例如:
NET“ DATA_IN” OFFSET = IN 10.0 BEFORE“ CLK_50MHz”;
表明在时钟信号CLK_50MHz 上升沿到达前的10ns 内,输入信号DATA_IN 必须到达数据输入管

