您好,欢迎访问代理记账网站
  • 价格透明
  • 信息保密
  • 进度掌控
  • 售后无忧

听说Latch可以高效修hold违例(Timing borrowing及其应用)

听说Latch可以高效修hold违例(Timing borrowing及其应用)

小编的公众号前几天收到腾讯的邀请,已经试开通三天广告了。现在小编每天中午都能加个鸡腿了,谢谢各位的点击!在每篇文章底部都有 “广告” 字样的广告,希望各位每天看文章的同时,顺便蛮点击下,对各位来说举手之劳的事情,也算是支持下。感谢!好了,今天吾爱 IC 社区为各位分享数字 IC 后端设计实现中关于 Timing borrowing 的概念及其应用。

我们假定时钟周期为 10ns,clock skew 和 library setup time,library hold time 均为 0,图 1 中所示为一个简单的电路示意图。我们以 F1 到 F2 这条 timing path 为例,寄存器 F1 在 T=0 时刻获得数据,寄存器 F2 在一个时钟 cycle 后进行数据采集。如果前一级的数据在 T>10ns 时刻到达寄存器 F2,则存在 setup 违例。

图 1 简单电路图

现在我们将寄存器 F2 替换成锁存器 L2(Latch),如图 2 所示。此时如果前一级 F1 的数据在 T>10ns 时刻到达寄存器 F2,setup 是否还存在 setup violation?

图 2 寄存器 F2 替换成 Latch L2 后的电路图

我们知道 Latch 和触发器最大不同的地方在于,触发器是边沿 edge 触发,而锁存器是电平触发(敏感)。对于高电平有效的 Latch 来说,在 Opening edge 和 Closing edge 之间都是透明的。数据在 opening edge 之前到达,setup slack 大于 0,数据在 opening edge 和 closing edge 之间到达,setup slack 等于 0。只有当数据在 closing edge 之后到达,才会有 setup violation。

图 3 Latch Timing Violation Window

假设 F1 的数据在 T=12ns 时刻到达 L2,由于在 t=10ns 时刻前一级的数据还没有 ready,Latch 还采集不到数据。但是由于锁存器在 10ns—15ns 期间是透明,因此 F1 的数据可以晚到一些,此时需要借用下一个 cycle 2ns 的时间。具体可以画波形图,非常清晰,波形图必须会自己画哦。这个就是 Timing borrowing 的概念(也称为 cycle stealing)。

显然,改进后电路的性能有一个较大的提升。

其实在数字 IC 设计中,我们常常见到的是下面这个电路,如图 4 所示。值得注意的是 LatchB 是低电平有效的。

图 4 典型电路结构

对应的波形图如图 5 所示。从图中可以看出,当 RegA 的数据在 T=10ns 之前到达锁存器 B,setup 都是 meet 的(因为可以借用半个 cycle 的 timing)。对于 RegA 到 LatchB 之间的 Hold check 如往常一样。

对于图 4 中的电路,如果我们假设 RegA 和 RegC 的驱动时钟是不一样的 (Func 模式下),即分别被两个不同的时钟驱动,这两个寄存器是不需要做 balance 的。那么在 Test mode 下,寄存器 A 和寄存器 C 之间可能存在比较大的 hold violation(两个 clock latency 差异较大)。

为了解决这种 hold violation,我们在 RegA 和 RegC 之间插了一个低电平有效的 LatchB(通常我们所说的 Lockup Latch)。在 LatchB 到 RegC 进行 hold check 时,RegC 对应的 capture edge 直接提前了半个周期,从而大大改善了 hold 违例问题。看到这里,有的人可能会觉得那 LatchB 到 RegC 的 setup 是否更紧了?其实不用怕,为什么?(test mode 下 clock 频率比较低)

图 5 setup 和 hold check 波形图

相关文章推荐(不看保证后悔)

15 天零基础入门到精通 python - 最全的视频教程

数字后端面试问答 No.4-6(每日三问)

IR Drop 分析之 Redhawk 分析流程

CRPR 能补偿 crosstalk 吗?

原来电路最高工作频率是这么算出来的(STA 基础篇)

数字后端面试问答 No.1-3(每日三问)

秒杀数字后端实现中 clock gating 使能端 setup violation 问题

教你轻松调 DCT 和 ICC 之间 Timing 与 Congestion 的一致性

数字芯片设计实现中修复 setup 违例的方法汇总

数字 IC 设计中 ECO 的那些事,其实并不是事!

Scan chain reordering 怎么用你知道吗?

如何评价数字后端设计中 floorplan 的好坏?

数字后端实现时 congestion 比较严重,你 hold 得住吗?

数字后端实现 place 过程进阶

Final netlist release 前,你应该做好哪些工作?

基于 Physical Aware 的动态功耗优化实现方案

深入浅出讲透 set_multicycle_path,从此彻底掌握它

【大师必备】最全的数字 IC 设计经典书籍电子版下载

你与数字后端大神的差距在这里,快来瞧瞧!

数字后端实现时 congestion 比较严重,你 hold 得住吗?

时钟树综合(clock tree synthesis)基础篇

【福利】数字 IC 后端各种 Userguide 下载

好了,今天的内容分享就到这里。另外,因为公众号更改推送规则,小编分享的每篇干货不一定能及时推送给各位。为了避免错过精彩内容,请关注星标公众号,点击 “在看”,点赞并分享到朋友圈,让推送算法知道你是社区的老铁,这样就不会错过任何精彩内容了。

如果你想和小编有更进一步的沟通交流的机会,欢迎加入小编知识星球,让我们一起学习成长,共同进步。相信在这里能让你成就一个更完美的自己

小编知识星球简介(如果你渴望进步,期望高薪,喜欢交流,欢迎加入 ****)

在这里,目前已经规划并正着手做的事情:

  • ICC/ICC2 lab 的编写

  • 基于 ARM CPU 的后端实现流程

  • 利用 ICC 中 CCD(Concurrent Clock Data)实现高性能模块的设计实现

  • 基于 ARM 四核 CPU 数字后端 Hierarchical Flow 实现教程

  • 时钟树结构分析

  • 低功耗设计实现

  • 定期将项目中碰到的问题以案例的形式做技术分享

  • 基于 90nm 项目案例实现教程(ICC 和 Innovus 配套教程)

  • 数字 IC 行业百科全书

吾爱 IC 社区知识星球星主为公众号” 吾爱 IC 社区” 号主,从事数字 ic 后端设计实现工作近八年,拥有55nm,40nm,28nm,22nm,14nm等先进工艺节点成功流片经验,成功tapeout 过三十多颗芯片

这里是一个数字 IC 设计实现高度垂直细分领域的知识社群,是数字 IC 设计实现领域中最大,最高端的知识交流和分享的社区,这里聚集了无数数字 ic 前端设计,后端实现,模拟 layout 工程师们。

在这里大家可以多建立连接,多交流,多拓展人脉圈,甚至可以组织线下活动。在这里你可以就数字 ic 后端设计实现领域的相关问题进行提问,也可以就职业发展规划问题进行咨询,也可以把困扰你的问题拿出来一起讨论交流。对于提问的问题尽量做到有问必答,如遇到不懂的,也会通过查阅资料或者请教专家来解答问题。在这里鼓励大家积极发表主题,提问,从而促进整个知识社群的良性循环。每个月小编会针对活跃用户进行打赏。

最重要的是在这里,能够借助这个知识社群,短期内实现年薪百万的梦想!不管你信不信,反正已经进来的朋友肯定是相信的!相遇是一种缘分,相识更是一种难能可贵的情分!如若有缘你我一定会相遇相识!知识星球二维码如下,可以扫描或者长按识别二维码进入。目前已经有 881 星球成员,感谢这881童鞋的支持!欢迎各位渴望进步,期望高薪的铁杆粉丝加入!终极目标是打造实现本知识星球全员年薪百万的宏伟目标
在这里插入图片描述

欢迎关注 “吾爱 IC 社区

微信号:ic-backend2018
在这里插入图片描述

https://mp.weixin.qq.com/s/WXyiFhkteX2_MwhXPy4rXA


分享:

低价透明

统一报价,无隐形消费

金牌服务

一对一专属顾问7*24小时金牌服务

信息保密

个人信息安全有保障

售后无忧

服务出问题客服经理全程跟进