I am learning pcell creation , so I started out with this basic structure, a metal resistor.
problem : when the pcell is FIRST placed into a layout cell , the parameters for "metalLayer" and "squareSize"
I can address them and change them with css()~>metalLayer = some layer, or, css()~>squareSize = something.
If after they are first placed, I type in CIW : css()~>metalLayer <ret> the value returned is nil.
I cannot query the value of the parameter. Not until I type something like ,
if(!css()~>metalLayer then css()~>metalLayer="metal2" )
Why is that and how can I make visible the parameter value as soon as the instance is placed ??
(current cadence version 18 )
TIA. Malcolm
-------------------------------------------------------
pcDefinePCell(
; Identify the target cellview.
list(ddGetObj("myPcellLib") "metalResistor" "pcell")
; Define formal parameter name-value pairs.
(
(metalLayer "metal1")
(squareSize 2)
)
; Define the contents of this cellview.
let(()
rodCreateRect(
?layer list(metalLayer "resistor")
?width squareSize
?length squareSize
?origin list(-squareSize*0.5 -squareSize*0.5)
) ; close LET
) ; close pcDefinePcell