微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC后端设计交流 > 后端面试--每日一题(014)

后端面试--每日一题(014)

时间:10-02 整理:3721RD 点击:
what is pros and cons of using buffer and invters in CTS?
CTS中使用buffer和inverter的优缺点是什么?
难度:3

认真想了一下,这样解释有点像了。
比如一个面积/驱动buffer=2inv 在90nm之后net delay是主要因素了,比如一根net point to point是1500nm,如果插入2个buffer,平均插的话,把net 切成3段,每段500um,假设每500um 长度产生一个RC的delay,那么只考虑线delay的话,total 产生3RC的delay,如果只是用inv的话,我们用4个inv,面积与2个buffer相等,那么如果平均切断驱动的话,每个inv就负责驱动300um长的线,那么对应产生的net delay是3/5 x 3/5 x RC=9/25 x RC,五段就是5 x 9/25 x RC= 9/5 x RC ,那么 就是说把buffer拆分成inv的话,就可以减少6/5 X RC的delay,也就是减少了40%的net delay,可见inv优势是挺明显的。可是cell 的内部迟延可能又不大一样。buffer肯定有它的优势的地方,我还没有想到,否则,按我的推理的话岂不是只用inv不用buffer就最好了,欢迎大家积极讨论。

我们现在就只用INV,不用BUF

我记得有两种buffer吧,一种buf=2inv,还有一种是延迟的buf,buf=2inv+transmission gate

使用BUF:
优点:逻辑简单,便于post-CTS对时钟树的修改
缺点:面积大,功耗大,insertion delay大
使用INV:
优点:面积小,功耗小,insertion delay小,对时钟duty cycle有利
缺点:不易做时钟树的修改

还是不太明白。时钟树的修改具体指的是什么呢?
请陈大指点。
另外我觉得2楼说的也很有道理

时钟树的修改:skew的调整,branch的重新连接等
我的观点和2#没有矛盾

问下小编,你说的clkinv对时钟的duty cycle这个是怎么得来的呢?
谢谢!

对班主的这种解释不能理解,是否可以展开谈谈?

同问

过来学习一下

学习中。

摘录一段解释
Buffers versus inverters
As input goes into a buffer, the input of the first stage inverter, it only drives the output stage inverter with no wire. Therefore, buffer has a transition time recovery benefit to clock signals.If a slower transition gets feed into an inverter, the input slow transition will also affect the output transition time directly.This will cause more skew and jitters in the clock tree, especially, in the high level of clock tree, where long wire is predominant.
When the entire clock tree uses buffers only, at rise clock edge, all clock nets need to be charged up.VDD power net needs to provide the charge required to raise the entire clock nets. For inverters, input signal will switch in the opposite direction as the output.Therefore, when using inverters, the simultaneous switching power noise will be reduced.

还是不懂为何inverter不利于skew的调整和branch的重新连接,而buffer就便于作此修改

还是不懂为何inverter不利于skew的调整和branch的重新连接,而buffer就便于作此修改

这个解释好精辟!

感谢分享

是不是因为inverter 的话必须保证是双数的地方才能动的原因呢?
buffer tree 随便哪里都行,但是inverter 必须保证不是奇数个的地方

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top