set_multicycle_path 多周期约束

本文介绍了FPGA时序分析中的set_multicycle_path约束使用,详细阐述了建立时间与保持时间的分析原理,并通过多个实例展示了如何调整不同情况下的时序约束,以实现路径约束的合理放松。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、时序引擎是如何进行建立时间和保持时间分析的

  1. setup检查
    时序引擎会找出发起时钟和捕获时钟的最小公共周期,然后在最小公共周期内找到所有发起时钟沿和捕获时钟沿的所有可能情况,并在所有情况中挑选出最严苛的情况确定launch edge 和capture edge.

  2. hold time检查
    保持时间要求是以建立时间要求为基准的。
    有两种保持时间发起沿和捕获沿确定方法:
    a.当前建立时间发起沿产生的数据不能被当前建立时间捕获沿的前一个时钟沿捕获;
    b.当前建立时间发起沿的下一个有效沿产生的数据不能被当前建立时间的捕获沿捕获。
    从两种状况中确定所有的保持时间需求(可正可负),并以最大的保持时间需求来确定保持时间发起沿和捕获沿的位置。
    在这里插入图片描述

二、Multicycle约束

  1. 为什么要进行Multilcycle约束
    时序引擎默认情况下会分析建立时间/保持时间需求最严苛的情况,而这不一定与实际需要相符。实际情狂可能并不需要这么严格的时序,因此用户可以借用set_multicycle_path命令来放松某些路径的约束力度。
  2. tcl命令格式
    set_multicycle_path <path_multiplier> [setup|hold] [-start|-end] [-from] [-to] [-through<pins|cells|nets>]
  3. 调整规则
    a.[setup|hold
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值