set_clock_group之后,对于异步时钟组的时钟,设置从reg1的cp端口到reg2的D端口,这种合法的起始点,是不能生效的,但是从reg1/Q到reg2/D端这种非法起始点,是有效的。不过同时会导致path segmentation,部分同步path失效。 set_false_path之后,设置max delay将不能生效。 set_clock_group -allow_path,这种允许异步时...
Rise/Fall:勾选后可设置最大时延只对上升沿触发或下降沿触发的路径有效,未勾选时不区分边沿触发。 Set Maximum delay for only the datapath:勾选后设置的时延约束只对数据路径有效,时钟偏斜和hold检查会被忽略,即等效于该路径也设置了set_false_path -hold约束,此时如果约束中设置了set_min_delay约束也不会生效。
Vivado 可包含层级约束、顶层用户约束和 IP 提供的约束。这些约束可能存在某些依赖关系,必须满足这些依赖关系后才能正确生效。比如,时钟创建。某些 IP 会创建其他 IP 或顶层约束所需的时钟,而某些 IP 则要求顶层约束中存在时钟才能正常工作,并避免生成严重警告。
约束的优先级 XDC描述的时序约束是有优先级的,尤其是涉及到时序例外的约束,如set_clock_groups、set_false_path、set_max_delay和set_multicycle_path。如果这些约束施加到同一条路径上,那么其优先级如下图所示。 对于同类型的约束,遵循的原则则是越具体的优先级越高。如下图所示,都是set_max_delay约束,且都使...
(1)为了更长的平均无故障时间 MTBF( Mean Time Between Failures),需要配合一个 ASYNC_REG 的约束,把用作简单同步器的多个寄存器放入同一个 SLICE,以降低走线延时的不一致和不确定性。 代码语言:javascript 复制 (*ASYNC_REG="TRUE"*)reg rst_reg_0;(*ASYNC_REG="TRUE"*)reg rst_reg_1; ...
Set Maximum...ignored):勾选后设置的时延约束只对数据路径有效,时钟偏斜和hold检查会被忽略,即等效于该路径也设置了set_false_path -hold约束,此时如果约束中设置了set_min_delay约束也不会生效。并且该设置不能用于set_min_delay约束中。 Remove...path delays:勾选后,如果设置的约束路径上有其他时例外约束(如...
Set Maximum delay for only the datapath:勾选后设置的时延约束只对数据路径有效,时钟偏斜和hold检查会被忽略,即等效于该路径也设置了set_false_path -hold约束,此时如果约束中设置了set_min_delay约束也不会生效。并且该设置不能用于set_min_delay约束中。
Set Maximum...ignored):勾选后设置的时延约束只对数据路径有效,时钟偏斜和hold检查会被忽略,即等效于该路径也设置了set_false_path -hold约束,此时如果约束中设置了set_min_delay约束也不会生效。并且该设置不能用于set_min_delay约束中。 Remove...path delays:勾选后,如果设置的约束路径上有其他时例外约束(如...