Create Pcell in Laker using Tcl script
来源:IC模拟版图设计发布时间:2023-03-111273浏览
询问 AI这两天试了下使用tcl写pcell,感觉还是非常方便的,按manual中command的参数要求与格式完成后,在laker里直接source 该tcl。即可在设置的lib 中找到这个pcell,不用再考虑如何去编译的问题。下面给个效果图与参考代码。
Syntax
dbDefineParameterizedCell -lib libName -cell cellName -params parameters [-vars localVariables] [-refresh 0|1][-encrypt encryptionKey] [-pcellVersion num] -execTcl_commands




# create a spiral inductordbDefineParameterizedCell -lib parameterizedCellLib \-cell Spiral_v2 -params [list [list spiralNo 10 Integer] \[list radius 10.0 Float] [list gap 3.0 Float] \[list width 2.0 Float] [list space 0.8 Float]] \-vars {Layer PI2 sin45 sec hgap cvId nCnt os is om im} \-exec {# create a spiral inductorset cvId $dbParameterizedCellset Layer MET1set PI2 [expr acos(0)]set sin45 [expr sin($PI2/2)]set sec [expr 1.0/cos($PI2/4)]set hgap [expr $gap*0.5]for {set nCnt 0} {$nCnt < $spiralNo} {incr nCnt} {set os [expr $radius*$sec]set is [expr double($radius-$width)*$sec]set om [expr $os*$sin45]set im [expr $is*$sin45]dbCreatePolygon -cv $cvId -layer $Layer \-point ($os,$hgap) ($om,[expr $om+$hgap])\(0,[expr $os+$hgap]) (0,[expr $is+$hgap])\($im,[expr $im+$hgap]) ($is,$hgap)dbCreatePolygon -cv $cvId -layer $Layer \-point ([expr -$os],$hgap)\([expr -$om],[expr $om+$hgap]) (0,[expr $os+$hgap])\(0,[expr $is+$hgap]) ([expr -$im],[expr $im+$hgap]) \([expr -$is],$hgap)dbCreatePolygon -cv $cvId -layer $Layer \-point ($os,[expr -$hgap]) ($om,[expr -$om-$hgap])\(0,[expr -$os-$hgap]) (0,[expr -$is-$hgap])\($im,[expr -$im-$hgap]) ($is,[expr -$hgap])dbCreatePolygon -cv $cvId -layer $Layer \-point ([expr -$os],[expr -$hgap])\([expr -$om],[expr -$om-$hgap]) \(0,[expr -$os-$hgap]) (0,[expr -$is-$hgap]) \([expr -$im],[expr -$im-$hgap])\([expr -$is],[expr -$hgap])set radius [expr double($radius+$width+$space)]}# return 1expr 1}
新闻来源:IC模拟版图设计,文中所述为作者独立观点,不代表icspec立场。更多精彩资讯请下载icspec App。如对本稿件有异议,请联系微信客服specltkj。
