问一下做前端的,一般一个电路的Timing slack有多少啊?
这样的话如果要满足ss下面也能跑,难道要在nom设计时多留200%的slack?
不是一回事。
最简单的一阶path delay模型就是把path上的各个delay叠加啊。
所以0.6:1.0:3.0的比例的propagation delay们叠加起来,最后的path delay也大致上应该是0.6:1.0:3.0的比例吧?
就是因为有这种不确定性,才限制了频率的提升啊。就像前面有人说intel可以用.18的工艺做上G,但是smic就只能做个几百M,就是因为他们对于corner的控制能力差太多了
所以我的问题是,在design的时候,需要预留多少百分比(相对于一个cycle的周期)的Slack?
难道说直接不管慢速corner时的情况?
PVT corner其实也要分P和VT的吧?P在制造出来时就决定了,如果不小心做成了慢板的,那就是废品或者赛扬货。VT其实是实时的吧,每个die都会承受相同的V、T变化。design的时候预留,一般都是给VT预留slack吧?standard cell library里面不会提到P的variation吧?
我多说两句。通常前端工程师在综合的时候需要用ss的corner作为worst condition来map logic以期得到符合要求的timing。如果仅用typical case来synthesis,到worst corner下面timing可不是想象的1:3的关系。
业界也不乏大牛公司直接用typical来synthesis,通常其PLL能够工作在很宽的频率范围上,到了worst corner给个合适的频率就可以了。
如果你的电路需要跑在一个定频上,还是用ss做setup timing driven比较好吧。
用worst corner就能cover你担心的这些VT的变化
worst corner可以cover的是VT变化我知道。我所担忧的是能否cover P的变化比如Vth、Tox、迁移率什么的。ITRS不是允许大约10的变化么?
P的变化也在其中,否则foundary提供的timing library不就是胡扯吗?
仔细的看看lib file里面的operation condition就知道了。
谢谢你的答复!
我用的是Nangate 45nm Open Cell Library
该lib里面,Fast, Typical, Slow的三种condition:
* Characterization Corner : fast
* Process : FastFast
* Temperature : 0C
* Voltage : 1.25V
* Characterization Corner : typical
* Process : TypTyp
* Temperature : 25C
* Voltage : 1.1V
* Characterization Corner : slow
* Process : SlowSlow
* Temperature : 125C
* Voltage : 0.95V
请问所谓的FastFast、TypTyp、SlowSlow都是什么Process啊?一般CD越小越快,所以FastFast就是NMOS、PMOS的POLY CD统统都小于标称值,比如原定50nm的POLY,实际只有50 * 90% = 45nm?
此外,Fast和Slow都是极端情况吧?我的意思是,如果FastFast的Process+125C的Temparature+1.25V的Voltage(Temparature不是0C的Fast极端值),那么其速度应该比Fast的极端(FastFast+0C+1.25V)情况慢吧?
FF的确表达的是pmos和nmos的gate length最快的情形。
第二个问题FF/125c/1.25V应该比FF/0c/1.25V来得慢,至少在你提供的这个library里面,foundary将后者定为fast corner。
FF/SS会考虑gate length variation吗?
我拿我手头的Nangate 45nm Open Cell Library的post_spice电路跑,只是把library改成了ff/ss的,并且把T和VDD设置为FF/SS所对应的情况,并没有修改gate CD,其结果约等于lib里面的值。所以说我推测lib里面的值并没有考虑gate length variation。我的方法应该没错吧?这个Nangate能反应商用的Cell Library的情况吗?
都要Meet 才可以
比如你系统设计是500M
你最好综合的时候按照 500/0.8 来设综合指标
你没有必要看里面的库吧
其实