CTS笔记

作者: 飞奔的大虎 | 来源:发表于2023-01-14 12:22 被阅读0次

    CTS阶段,大致要解决DRC、Clock OPT、power这几个问题,首当其冲就是要满足DRC,准确来说,就是要解决两个问题,一个是transition(slew),一个是fanout; transition有呢signal transition和clock transition,并且clock transition要更严格一些。

    transition的大小影响fanout,transition越大,fanout将越大;DRC阶段呢,caps问题,caps过大的话,EM(electro-migration)变大,换句话来说,由于caps violation,电流变大,那么transition也变大;所有的caps问题都可以归结为transition问题;fanout呢与transition是紧密联系的。关于Clock OPT就是要满足DRC的一些要求,分为skew和latency的要求,skew分为正skew和负skew,正(positive)skew对于hold是不利的,负(negative)skew对于setup是不利的,具体的话,大家可以研究一下,那有人说,skew可不可以做到零呢,答案是不可以,skew为零,电路的峰值电流变得很大,会烧坏电路。

    关于CTS呢,master与generate clock是在leaf cell pin上建立时钟,如果建立在hier pin(非实际物理pin)上将报错。

    对于不同数量的fanout,下一级net的电容不一样,fanout越大,下一级net的电容就越大,rc乘积变大,transition就越大。对于fanout大的情况,可以考虑插buffer, 因为buffer的驱动较强,这样就能降低fanout(驱动负载的能力大小)的数量。cell输出看负载电容,输入看transition.

    大驱动的cell面积大,delay小,会造成较多的fanout, 容易出现EM问题,而且功耗较大。小驱动的cell面积小,功耗小,delay大。驱动太弱的cell容易造成slew问题,级数会比较多,clock tree会做太长;

    一般来说,用inverter来长树,是因为拉高和拉低transition均衡,大驱动的clock inverter(负载电容对其影响小)(LVT cell)容易出现EM问题,小驱动的clock inverter(HVT cell)受pvt影响较大,长树必须使用LVT cell.  用buffer长树的话会造成时钟信号的高低电平的宽度的不均衡。

    降低阈值电压可以让transition变小,可以减少后面load(电容)的大小。cell delay就会变小。主要是cell的电压能更快到有效高电平了。下面讲讲影响阈值电压的因素吧,这里会提到背栅这个名词,栅上通电压,会使栅下的衬底区表面反型,形成沟道。衬底也叫背栅,如果衬底浓度过大,栅上需要加大于0.7v的电压才能形成沟道,这就是背栅效应。阈值电压会升高。另外,电介质也会影响阈值电压,厚电介质削弱了电场,使阈值电压升高。另一个是栅级的功函数,会影响阈值电压。

    那为什么设置DRV呢,因为过大的slew和load都会造成lookup table查找表的数值较大且不准确。

    金属长度越长,电阻越大。

    transition time变大会影响建立和保持时间,还会增加短路时间。

    关于昨天提到的skew,其实还分为Global skew和local skew(design中两个相关寄存器latency之差的最大值),而且昨天提到的skew主要是针对Global skew来说,那么local skew有什么作用呢,local skew又称为useful skew, useful skew有什么用呢,当数据在多级寄存器之间传输时,前一级的slack为正,后一级的slack为负,这是通过调整skew呢,就把后一级的slack变成正了,这是useful skew的用武之地。

    cts好坏的评价就是clock tree latency和clock skew,那怎么做短clock tree latency呢,1、我们可以设置一些float pin, 用于对某些sink设置useful skew, 用法是在sink的floating pin上加上一个正的或者负的delay,从而在工具计算latency的时候考虑这些delay而把clock tree做长或者做短。2、控制clock line上使用cell的种类(一般在多重vth共存的design中,总是会使用最快的cell, 同时尽可能避免特别小和特别大的cell来做CTS,过大的cell,容易有EM问题。过小的cell,容易受到PVT的影响。3、控制时钟线上net的绕线规则,一般来说clock绕线需要选取尽量高层的金属,尽量宽的线宽来实现更短的latency.

    时钟树的latency为什么要尽量小?

    主要有两点:latency大说明路径上的buf或inv比较多

    1、延迟大,说明CTS功耗会比较大

    2、latency大,受到OCV的影响比较大

    skew为什么要尽量小?

    1、对于skew大的时钟树,工具修复时序会增加更大的面积和功耗,

    2、timing不好满足

    原文链接:https://zhuanlan.zhihu.com/p/517584073

    相关文章

      网友评论

        本文标题:CTS笔记

        本文链接:https://www.haomeiwen.com/subject/ibzgxdtx.html