Product Documentation
Virtuoso Parameterized Cell SKILL Reference
Product Version IC23.1, August 2023

pcSkillGen

pcSkillGen(
d_cellViewId
t_outputFile
g_isSkillFile
[ ‘disablePrompt ]
)
=> t / nil

Description

Converts a specified cellview into a SKILL file. A SKILL file can be edited and loaded back to a cellview after modification. Loading a SKILL file generates a SKILL master; however, the cellview contains only a label with the text: Warning: The master is defined by the SKILL procedure associated with the cellview.

You must have defined the parameters in this cellview.

Arguments

d_cellViewId

Cellview to be converted to SKILL.

t_outputFile

The destination text file.

g_isSkillFile

If t, generates a pcGenCell procedure. If nil, generates a SKILL function.

‘disablePrompt

If set to t, a prompt, which is displayed during the Pcell master compilation, gets disabled whenever no parameter is specified in the cell.

Value Returned

t

The SKILL file was created.

nil

The SKILL file was not created.

Examples

pcSkillGen(cv ~/mySkillCell t)

Puts the SKILL code that creates the cellview cv in the ~/mySkillFile file. For example:

let( (  pcMember pcStretchGroup stretchOffsetX stretchOffsetY pcLib
pcMaster pcInst pcTerm pcPin pcPinName
pcNet pcTermNet pcNetName pcTermNetName pcMosaicInst
tpcParameters pcParamProp pcStep pcStepX pcStepY
pcRepeat pcRepeatX pcRepeatY pcIndexX pcIndexY
pcLayer pcPurpose pcLabelText pcLabelHeight pcPropText
pcParamText pcCoords pcPathWidth pcPolygonMargin )
pcLib = pcCellView~>lib
pcParameters = pcCellView~>parameters~>value
; generate all the cv's properties
; ---------------------------------


; generate all the primitive shapes in layer "pwell (drawing)"
; ---------------------------------------------------------------
pcLayer = 6
pcPurpose = "drawing"
pcInst = dbCreateRect(pcCellView list(pcLayer pcPurpose) list(2:0.5 6.5:7.5))
t

)
pcSkillGen(cv ~/mySkillCell nil)

Puts the SKILL code that creates the cellview cv inside a pcGenCell procedure and writes it to the ~/mySkillFile file. For example:

procedure( pcGenCell( pcCellView "d")
let( ( pcMember pcStretchGroup stretchOffsetX stretchOffsetY pcLib
pcMaster pcInst pcTerm pcPin pcPinName
pcNet pcTermNet pcNetName pcTermNetName pcMosaicInst
tpcParameters pcParamProp pcStep pcStepX pcStepY
pcRepeat pcRepeatX pcRepeatY pcIndexX pcIndexY
pcLayer pcPurpose pcLabelText pcLabelHeight pcPropText
pcParamText pcCoords pcPathWidth pcPolygonMargin )
pcLib = pcCellView~>lib
pcParameters = pcCellView~>parameters~>value
; generate all the cv's properties ; --------------------------------- ; generate all the primitive shapes in layer "pwell (drawing)" ; --------------------------------------------------------------- pcLayer = 6 pcPurpose = "drawing" pcInst = dbCreateRect(pcCellView list(pcLayer pcPurpose) list(2:0.5 6.5:7.5)) t ) )

Return to top
 ⠀
X