set total [llength [dbget top.insts.isphysOnly 0]]
set svt [llength [dbget [dbget top.insts.isphysOnly 0 -p].cell.name *CPD]]
set lvt [llength [dbget [dbget top.insts.isphysOnly 0 -p].cell.name *CPDLVT]]
set ulvt [llength [dbget [dbget top.insts.isphysOnly 0 -p].cell.name *CPDULVT]]
expr $svt / $total.0 (svt比例)
expr $lvt / $total.0 (lvt比例)
expr $ulvt / $total.0 (ulvt比例)
expr $total - $lvt - $svt - $hvt (如果库里只有3种类型,这个值等于mem数量)
foreach i [dbget [dbget top.insts.isphysOnly 0 -p].cell.name] {
if {![regexp CPD|CPDLVT|CPDULVT $i]} {
echo $i
}
}

本文深入探讨了从RTL到GDSII的设计流程中,如何使用特定的脚本来分析标准单元库中不同类型的晶体管(如SVT、LVT、ULVT)的比例,以及如何识别内存实例。通过具体的TCL脚本示例,读者可以学习到如何在设计过程中量化和优化晶体管使用,这对于高性能和低功耗设计至关重要。
2367

被折叠的 条评论
为什么被折叠?



