0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Vivado中XDC文件的约束顺序

OpenFPGA 来源:OpenFPGA 作者:碎碎思 2021-10-13 16:56 次阅读

很对人在使用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

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

    关注

    5

    文章

    1724

    浏览量

    150093
  • 约束
    +关注

    关注

    0

    文章

    82

    浏览量

    12787
  • Vivado
    +关注

    关注

    19

    文章

    815

    浏览量

    66959

原文标题:【Vivado那些事儿】约束的顺序

文章出处:【微信号:Open_FPGA,微信公众号:OpenFPGA】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Vivado开发技巧:综合策略与合适的编译顺序

    击Settings,切换到Synthesis标签: 1.Constraints部分 选择用于综合的约束集,一个约束集是一组XDC约束
    的头像 发表于 12-29 14:07 6322次阅读

    无法在XDC文件设置maxdelay约束

    XDC文件设置maxdelay约束。 (摘自ug911:MAXDELAY:Vivado Design Suite在
    发表于 10-25 15:17

    在使用Vivado GUI实现和分配引脚信息后xdc约束文件中看不到结果

    在使用Vivado GUI实现和分配引脚信息后,我没有在xdc约束文件中看到结果。例如,引脚和iostandard。他们在哪里攒钱?以上来自于谷歌翻译以下为原文After
    发表于 11-07 11:24

    如何使用IP核生成的xdc文件

    当我们通过IP目录在Vivado创建一些IP内核时,将使用xdc文件生成一些内核。在这个xdc文件
    发表于 03-26 12:29

    如何创建自己的xdc文件

    你好我目前正在使用外部多路复用器在Vivado 2017上开展一个项目。关于约束文件(.xdc),我有一个更普遍的问题。如何创建自己的xdc
    发表于 05-22 10:27

    正则表达式在Vivado约束文件的应用

      使用xdc文件进行管脚、位置、时序和属性等约束的时候,经常会使用各种get命令。Vivado提供了很丰富的匹配表达式,比如等于==、不等于!=、匹配=~、不匹配!~、《、》、《=、
    发表于 01-26 07:03

    关于XDC约束文件,你需要知道的几点

    作者: 圆宵 FPGA那点事儿 在ISE时代,使用的是UCF约束文件。从Vivado开始,XDC成了唯一支持的约束标准。
    发表于 02-08 02:10 5286次阅读

    ISE约束导入vivado总共分几步

    最近有些朋友在ISE做的V7项目需要切换到vivado来,但导入代码后,导入约束时,发现vivado不再支持UCF文件,如果手抄UCF
    发表于 03-24 13:54 8949次阅读
    ISE<b class='flag-5'>约束</b>导入<b class='flag-5'>vivado</b>总共分几步

    XDC的时钟约束及优势

    Xilinx©的新一代设计套件 Vivado 引入了全新的约束文件 XDC,在很多规则和技巧上都跟上一代产品 ISE 中支持的 UCF 大
    发表于 11-18 03:59 3680次阅读

    如何将Altera的SDC约束转换为Xilinx XDC约束

    了解如何将Altera的SDC约束转换为Xilinx XDC约束,以及需要更改或修改哪些约束以使Altera的约束适用于
    的头像 发表于 11-27 07:17 5209次阅读

    XDC时钟约束的三种基本语法

    和运算符等等,对其它复杂的循环以及文件 I/O 等语法可以通过在 Vivado source 一个 Tcl 文件的方式来补充。
    的头像 发表于 01-30 17:29 9766次阅读

    Vivado IDE全面了解XDC文件约束顺序

    Vivado IDE约束管理器将任何已编辑的约束保存回XDC文件的原始位置,但不会保存在Tcl
    的头像 发表于 11-13 10:53 4273次阅读
    <b class='flag-5'>Vivado</b> IDE全面了解<b class='flag-5'>XDC</b><b class='flag-5'>文件</b>的<b class='flag-5'>约束</b><b class='flag-5'>顺序</b>

    Vivado设计约束功能概述

    XDC约束可以用一个或多个XDC文件,也可以用Tcl脚本实现;XDC文件或Tcl脚本都要加入到工
    的头像 发表于 06-30 11:27 3947次阅读

    XDC约束技巧之时钟篇

    Xilinx的新一代设计套件Vivado引入了全新的约束文件 XDC,在很多规则和技巧上都跟上一代产品 ISE 中支持的 UCF 大不相同
    的头像 发表于 03-28 09:51 2771次阅读

    如何在Vivado添加时序约束呢?

    今天介绍一下,如何在Vivado添加时序约束Vivado添加约束的方法有3种:xdc
    的头像 发表于 06-26 15:21 4383次阅读
    如何在<b class='flag-5'>Vivado</b><b class='flag-5'>中</b>添加时序<b class='flag-5'>约束</b>呢?