Vivado中XDC文件的约束顺序

描述

很对人在使用Vivado时喜欢使用多个约束文件对整个工程进行约束,同时Vivado允许设计者使用一个或多个约束文件。虽然使用一个约束文件对于一个完整的编译流程来说看似更方便,但是在一些情况下,这会使得问题更加复杂,比如一个设计使用了不同的IP核或者由不同团队开发的模块。不管设计者在设计中,使用了一个还是多个XDC文件,Xilinx推荐设计者使用下面的顺序来组织约束。XDC文件的约束顺序如下:

## Timing Assertions Section# Primary clocks# Virtual clocks# Generated clocks

# Clock Groups# Input and output delay constraints## Timing Exceptions Section(sorted by precedence)# False Paths# Max Delay / Min Delay

# Multicycle Paths# Case Analysis# Disable Timing

## Physical Constraints Section

# located anywhere in the file, preferably before or after the timing constraints# or stored in a seprarte XDC file

注:

(1)Xilinx推荐将时序约束和物理约束分别保存在两个不同的文件中。设计者也可以在一个单独的文件中对某个模块指定约束(每个模块对应一个约束)。

(2)如果在工程中,包含了一个IP,这个IP有自己的约束,则在约束集中,并不出现相应的约束文件,它将和IP源文件一起出现(即IP有自己的约束文件,常见的就是MMCM和PLL)。

(3)如果在工程中,包含了多个约束文件。一般来说,Vivado工具首先读取列表最上面的约束文件,最后读取最下面的约束文件。设计者可以在集成开发环境中,将约束文件移动到所期望的位置,用来修改约束文件在整个设计中的处理顺序。等效的Tcl命令格式为

Reorder_files - fileset constrs_l - before[get_files XDC文件名][get_files XDC文件名]

在非工程模式下,read_xdc的调用顺序决定了xdc文件的评估顺序。

(4)如果存在IP约束文件,则先读取1P约束文件,然后再读取用户约束文件。设计者可以在源文件属性窗口修改读取IP约束文件的顺序。等效的Tcl命令格式为

set_property PROCESSING_ORDER EARLY [get_files XDC文件名]

常用的 XDC 约束命令

相关的命令作用会在后续文章继续解释。

责任编辑:haq

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分