1 在timing path中为何ICG的delay跟一个组合逻辑似的?-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

在timing path中为何ICG的delay跟一个组合逻辑似的?

冬至子 来源:志芯 作者:Jack Xu 2023-11-23 17:21 次阅读

ICG结构知识

ICG timing check 的瓶颈

在不人工干预的情况下,tool默认会尝试把reg1的CK pin和Reg2的CK pin做平。但是静态时序分析时,reg1→ICG也会做时序check;所以,ICG会天然存在一个很大的clock skew,导致建立时间违例。

image.png

如何解决呢?

在place阶段,在ICG的CK pin设置一个负的latency,这个负的latency的值可以大概等于CTS之后T3的delay大小;这样就可以让tool在给reg1的CK pin的树长识别时,会尽力将T1(即reg1的launch path)做短至少T3(ICG→reg2的时钟树长度)的大小。

Place阶段工具也会考虑时钟树skew引入的时序问题,让某些cell尽可能的靠近和不要在path上过多插入delay。

Innovus命令:

set_cloCK_latency -0.300 [get_pins ICG/CK]

在CTS阶段,在Reg1的CK pin上设置一个insert delay,这就是所谓的floating pin,这个insert delay的值大概也等于CTS后T3(ICG→reg2的时钟树长度)的大小。

Innovus命令:

set_ccopt_property insertion_delay 0.300 -pin reg1/CK

在timing path中为何ICG的delay跟一个组合逻辑似的

如下图所示,ICG在reg2icg的timing path中只体现一个组合逻辑的delay。其实icg就是一个组合逻辑。

image.png

芯片工作时,时钟电平本身一直在高低变化,因为晶振不会停止振动;但ICG的ENABLE信号是固定在高电平1(开启模块时钟)或者低电平0(关断模块时钟)。

ICG的两个输入端一个是ENABLE信号,一个是clock信号,因为ENABLE的电平是固定的(例如固定在高电平1),所以每个时钟周期内锁存器向后面输出的信号一直是固定的(信号电平等于ENABLE 信号电平),ICG的delay大概就是一个锁存器环路的delay(结合锁存器结构一看便知)。

为何在timing path中ICG一般不体现timing borrow

ICG可以是latch + AND组成;或reg + AND组成。肯定要用一个时序器件,因为ICG的ENABLE信号是上一级reg产生的,这样就和ICG组成了两级同步电路,可以规避亚稳态的风险。

为什们ICG一般用latch + AND组合,而不是reg + AND组合呢?我个人理解,一方面latch的面积更小,功耗更低;另一方面,ICG上很容易有建立时间违例,latch有半个时钟周期的timing borrow可以用,可以作为ICG时序瓶颈的“紧急钥匙”。

那为什么ICG 的timing borrow一般不打开呢?因为如果打开了,ICG就由边沿触发check变成电平触发check,采集到亚稳态的概率增大,可能导致clock信号不稳定,影响电路状态。

在INNOVUS中怎么打开ICG timing check的timing borrow:

image.png

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

    关注

    8

    文章

    906

    浏览量

    41491
  • 同步电路
    +关注

    关注

    1

    文章

    60

    浏览量

    13309
  • 时钟树
    +关注

    关注

    0

    文章

    54

    浏览量

    10741
  • CTS
    CTS
    +关注

    关注

    0

    文章

    35

    浏览量

    14103
收藏 人收藏

    评论

    相关推荐

    组合逻辑太多了

    我的代码通道得到了奇怪的逻辑,而且有些人认为它很明显,因为某些地方的组合逻辑太多了。我更改了些代码并添加了少量DFF,然后逻辑似乎是正确的
    发表于 05-15 06:42

    【技巧分享】时序逻辑组合逻辑的区别和使用

    时钟上升沿信号后才会输出信号c。 波形图层面,我们可以画出时序图来分析,如下图所示。可以看出第一个时钟时a=1,b=2,此时组合逻辑立刻得出c=3,是
    发表于 03-01 19:50

    FPGA何时用组合逻辑或时序逻辑

    FPGA的最小单元往往是由LUT(等效为组合逻辑)和触发器构成。 进行FPGA设计时,应该采用组合逻辑设计还是时序
    发表于 03-06 16:31

    Timing Groups and OFFSET Const

    Timing Groups and OFFSET Constraints: •Use the Constraints Editor to create groups of path
    发表于 01-11 08:55 4次下载

    Path-Specific Timing Constrain

    Path-Specific Timing Constraints:Constraining Between Risingand Falling Clock Edges•
    发表于 01-11 08:56 10次下载

    Skew Correction Using Delay Li

    Abstract: This application note describes using delay lines to correct system timing or "skew
    发表于 04-22 11:21 1286次阅读
    Skew Correction Using <b class='flag-5'>Delay</b> Li

    简单的组合逻辑编写

    简单的组合逻辑编写 实验内容:完成实验内容:
    发表于 02-08 14:37 1009次阅读

    逻辑分析仪Timing-State存储方式的应用

    本内容介绍了逻辑分析仪Timing-State存储方式的应用
    发表于 09-22 14:26 14次下载
    <b class='flag-5'>逻辑</b>分析仪<b class='flag-5'>中</b><b class='flag-5'>Timing</b>-State存储方式的应用

    组合逻辑电路设计步骤详解(教程)

    组合逻辑电路的设计与分析过程相反,本文小编主要大家介绍下关于组合逻辑电路的设计步骤,顺便回顾
    发表于 01-30 16:46 12.2w次阅读
    <b class='flag-5'>组合</b><b class='flag-5'>逻辑</b>电路设计步骤详解(教程)

    EDA技术组合逻辑电路的设计概述

    组合逻辑电路的设计就是将实际的,有因果关系的问题用较合理、经济、可靠的逻辑电路来实现。般来
    发表于 01-21 16:46 2922次阅读
    EDA技术<b class='flag-5'>在</b><b class='flag-5'>组合</b><b class='flag-5'>逻辑</b>电路<b class='flag-5'>中</b>的设计概述

    不同VT cell的delay差异

    Path1容易出现hold问题,path2容易出现setup问题;如果在path1和path2的commen part修timing就会导致
    的头像 发表于 10-18 09:36 4205次阅读

    组合逻辑电路的危害

    本文介绍开发组合逻辑电路时可能发生的意外开关事件,称为危险。 本文是关于使用逻辑门进行组合电路设计和仿真的介绍性系列文章的第二部分。在上
    的头像 发表于 01-27 14:18 1693次阅读
    <b class='flag-5'>组合</b><b class='flag-5'>逻辑</b>电路<b class='flag-5'>中</b>的危害

    数字电路组合逻辑电路设计步骤详解

    数字电路组合逻辑电路的设计与分析过程相反,本文小编主要大家介绍下关于组合
    的头像 发表于 02-03 09:56 5630次阅读

    如何做条合格的path?同path物理设计不同阶段的变化

    Delay值是多少才算合格呢?这篇开始讲解路径(Path)的概念,以及衡量Path Delay是否合格的标准----建立时间(setup
    的头像 发表于 06-27 14:12 1153次阅读
    如何做<b class='flag-5'>一</b>条合格的<b class='flag-5'>path</b>?同<b class='flag-5'>一</b>条<b class='flag-5'>path</b><b class='flag-5'>在</b>物理设计不同阶段的变化

    什么是时序路径timing path呢?

    今天我们要介绍的时序分析概念是 **时序路径** (Timing Path)。STA软件是基于timing path来分析timing的。
    的头像 发表于 07-05 14:54 2184次阅读
    什么是时序路径<b class='flag-5'>timing</b> <b class='flag-5'>path</b>呢?