白山头讲PV系列, 实践经验分享,迅速提高芯片LVS的速度。
LVS, layout versus schematic的缩写,保证的是layout与我们的网表的一致性。
LVS通常比较耗时,cpu与memory也消耗较大。本文将给出非常实用的建议来提高LVS的速度。工具将基于业内广泛使用的PV工具,calibre。
天下武功,唯快不破。
想象一下,别人刚跑完一轮lvs的时候,可能你已经debug完几轮了。
增加cpu并行,提高运行速度。
执行时,加上这个option
calibre -turbo <cpu_num> -turbo_all ...
LVS,虽然叫做layout versus schematic,其实,也是先将layout进行提取,转化为spice nelist,再和netlist转化而来的cdl进行对比。
而layout抽取spice netlist的过程非常耗时,甚至比进行实际进行lvs比对的时间还要长。
而在debug的过程中,通常会需要修改cdl,而layout重复抽取,将浪费大量时间。
这里建议是将LVS的流程分为两步。
calibre -turbo -turbo_all -spice layout.sp lvs_rules
在lvs rule文件中,找到类似下面的关键字。
LAYOUT PATH "path/to/layout.gds"
LAYOUT PRIMARY "top_design"ll
LAYOUT SYSTEM GDSII
SOURCE PATH "path/to/design.cdl"
SOURCE PRIMARY "top_design"
SOURCE SYSTEM SPICE
修改为
LAYOUT PATH "path/to/layout.sp"
LAYOUT PRIMARY "top_design"
LAYOUT SYSTEM SPICE
SOURCE PATH "path/to/design.cdl"
SOURCE PRIMARY "top_design"
SOURCE SYSTEM SPICE
执行lvs