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

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

3天内不再提示

FPGA知识之xdc约束优先级

454398 来源: 科学计算technomania 作者:猫叔 2020-11-16 17:37 次阅读

xdc约束优先级

在xdc文件中,按约束的先后顺序依次被执行,因此,针对同一个时钟的不同约束,只有最后一条约束生效。

虽然执行顺序是从前到后,但优先级却不同;就像四则运算一样,+-x÷都是按照从左到右的顺序执行,但x÷的优先级比+-要高。

时序例外的优先级从高到低为:
① Clock Groups (set_clock_groups)
② False Path (set_false_path)
Maximum Delay Path (set_max_delay) and Minimum Delay Path (set_min_delay)
④ Multicycle Paths (set_multicycle_path)

set_bus_skew约束并不影响上述优先级且不与上述约束冲突。原因在于set_bus_skew并不是某条路径上的约束,而是路径与路径之间的约束。

对于同样的约束,定义的越精细,优先级越高。各对象的约束优先级从高到低为:

① ports->pins->cells
② clocks。

路径声明的优先级从高到低为:
① -from -through -to
② -from -to
③ -from -through
④ -from
⑤ -through -to
⑥ -to
⑦ -through

优先考虑对象,再考虑路径。

Example1:

set_max_delay 12 -from [get_clocks clk1] -to [get_clocks clk2]
set_max_delay 15 -from [get_clocks clk1]

该约束中,第一条约束会覆盖第二条约束。

Example2:

set_max_delay 12 -from [get_cells inst0] -to [get_cells inst1]
set_max_delay 15 -from [get_clocks clk1] -through [get_pins hier0/p0] -to
[get_cells inst1]

该约束中,第一条约束会覆盖第二条约束。

Example3:

set_max_delay 4 -through [get_pins inst0/I0]
set_max_delay 5 -through [get_pins inst0/I0] -through [get_pins inst1/I3]

这个约束中,两条都会存在,这也使得时序收敛的难度更大,因为这两条语句合并成了:

set_max_delay 4 -through [get_pins inst0/I0] -through [get_pins inst1/I3]

编辑:hfy


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

    关注

    1629

    文章

    21736

    浏览量

    603387
  • xdc
    xdc
    +关注

    关注

    1

    文章

    24

    浏览量

    5928
收藏 人收藏

    评论

    相关推荐

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

    先后顺序的 XDC里面每一行相当于一条指令,Vivado按照行序从前往后读取XDC指令,所以越后面的XDC指令,其优先级越高。比如
    发表于 02-08 02:10 5219次阅读

    FPGA设计约束技巧XDC约束I/O篇 (上)

    从UCF到XDC的转换过程中,最具挑战的可以说便是本文将要讨论的I/O约束了。 I/O 约束的语法 XDC 中可以用于 I/O 约束的命令包
    发表于 11-17 18:54 1.3w次阅读
    <b class='flag-5'>FPGA</b>设计<b class='flag-5'>约束</b>技巧<b class='flag-5'>之</b><b class='flag-5'>XDC</b><b class='flag-5'>约束</b><b class='flag-5'>之</b>I/O篇 (上)

    FPGA设计约束技巧XDC约束I/O篇(下)

    XDC中的I/O约束虽然形式简单,但整体思路和约束方法却与UCF大相径庭。加之FPGA的应用特性决定了其在接口上有多种构建和实现方式,所以从UCF到
    发表于 11-17 19:01 7430次阅读
    <b class='flag-5'>FPGA</b>设计<b class='flag-5'>约束</b>技巧<b class='flag-5'>之</b><b class='flag-5'>XDC</b><b class='flag-5'>约束</b><b class='flag-5'>之</b>I/O篇(下)

    XDC和UCF的区别及映射关系

    XDC和UCF约束的区别主要包括:XDC是顺序语言,它是一个带有明确优先级的规则。一般来说,UCF应用于网络,而XDC可以应用到引脚、端口和
    发表于 11-18 03:01 1.2w次阅读

    XDC约束及物理约束的介绍

    观看视频,了解和学习有关XDC约束,包括时序,以及物理约束相关知识
    的头像 发表于 01-07 07:10 6217次阅读
    <b class='flag-5'>XDC</b><b class='flag-5'>约束</b>及物理<b class='flag-5'>约束</b>的介绍

    2.FreeRTOS中断优先级和任务优先级

    FreeRTOS中断优先级和任务优先级架构:Cortex-M3版本:FreeRTOS V9.0.0前言:最开始,我并没有搞清楚什么是中断优先级和任务优先级,但看了部分资料后发现这两个并
    发表于 12-04 20:21 9次下载
    2.FreeRTOS中断<b class='flag-5'>优先级</b>和任务<b class='flag-5'>优先级</b>

    STM32F103芯片中断优先级以及FreeRTOS优先级设置

    STM32F103只用了4个位来表达优先级,因此最多支持16的可编程优先级(0~15),15为最低优先级
    发表于 01-25 18:59 1次下载
    STM32F103芯片中断<b class='flag-5'>优先级</b>以及FreeRTOS<b class='flag-5'>优先级</b>设置

    uC/OS-II学习笔记——优先级反转与优先级继承机制

    优先级反转,是指某同步资源被较低优先级的进程/线程所拥有,较高优先级的进程/线程竞争该同步资源未获得该资源,而使得较高优先级进程/线程反而推迟被调度执行的现象。
    发表于 02-09 10:33 2次下载
    uC/OS-II学习笔记——<b class='flag-5'>优先级</b>反转与<b class='flag-5'>优先级</b>继承机制

    中断优先级处理的原则及配置 抢占优先级和响应优先级的区别

    首先我们需要知道什么是中断优先级:中断优先级是CPU响应中断的先后顺序
    的头像 发表于 05-18 15:10 2.7w次阅读
    中断<b class='flag-5'>优先级</b>处理的原则及配置 抢占<b class='flag-5'>优先级</b>和响应<b class='flag-5'>优先级</b>的区别

    FreeRTOS任务的优先级示例

    任务的优先级:0~24之间。数字越大,任务优先等级越高。高优先级的任务优先执行。
    的头像 发表于 09-15 11:13 2811次阅读

    Free RTOS的优先级翻转

    优先级翻转简介:就是高优先级的任务运行起来的效果好像成了低优先级,而低优先级比高优先级先运行;
    的头像 发表于 02-10 15:31 1324次阅读
    Free RTOS的<b class='flag-5'>优先级</b>翻转

    XDC约束技巧CDC篇

    上一篇《XDC 约束技巧之时钟篇》介绍了 XDC 的优势以及基本语法,详细说明了如何根据时钟结构和设计要求来创建合适的时钟约束。我们知道 XDC
    的头像 发表于 04-03 11:41 2072次阅读

    XDC约束技巧I/O篇(上)

    XDC 约束技巧之时钟篇》中曾对 I/O 约束做过简要概括,相比较而言,XDC 中的 I/O 约束虽然形式简单,但整体思路和
    的头像 发表于 04-06 09:53 1364次阅读

    XDC约束技巧I/O篇(下)

    继《XDC 约束技巧 I/O 篇(上)》详细描述了如何设置 Input 接口 约束后,我们接着来聊聊怎样设置 Output 接口约束,并分
    的头像 发表于 04-10 11:00 1136次阅读

    什么是优先级反转

    假设现在有三个任务TaskA(优先级高)、TaskB(优先级中)、TaskC(优先级低),一个信号量(Semaphore),此信号量用于任务之间争夺某个资源。在某一时刻,高优先级的Ta
    的头像 发表于 04-24 13:01 2281次阅读
    什么是<b class='flag-5'>优先级</b>反转