高压为什么cover不住低压的hold问题
常规下我们认为hold问题常发生在高压下,但很多情况下高压的hold无法cover低压的hold
hold slack = (tlaunch -tcapture) + (tcq+tcomb) -thold -tuncertainty
(tlaunch -tcapture):代表时钟skew
(tcq+tcomb):代表data path的长度
thold:代表查表的hold值
tuncertainty:人为的加严
以一条低压路径0p6v违例而言
对hold有好处:低压下数据路径增加60p
对hold不利:skew增加了71ps,hold增加了2ps,uncertainty增加了33ps
最后hold相比高压恶化46ps
分析原因:
1.低压下hold uncertainty更大
2.低压下时钟偏差skew更大
3.引申至时钟分叉早的高低压一致性更差,因而接口因为分叉早,一致性差;func的时序较差;SI串链分叉晚,一致性更好
改进建议
1.低压下<=0p6v下时时钟树做到最短,且用ULVT,减少时钟skew的影响
2.在APR的过程中 reg使用cell padding / abut rule等方式留出额外空间