D
dixit
Guest
Hi,
I have schematics using inherited nets for power and ground, and i want to replace that
global net name into a local one (without exclamation mark) and add a specific pin to the
schematic (and later also symbol). Below is my code to try the name replacement (not yet
pin placement) in the schematic. After i run this some "line" segments still have name
"VSS!" when i query them. Can anyone suggest how to improve the code?
thanks!
----------------
oldNetName = "VSS!"
newNetName = "VSS"
procedure( schRenameSupplyPins(libName viewName oldNetName newNetName)
let((lib cv cellName term)
lib = ddGetObj(libName)
foreach(cell lib~>cells
cv = dbOpenCellViewByType(libName cell~>name viewName "" "a")
net = dbFindNetByName(cv oldNetName)
foreach(fig net~>figs
when(fig~>objType=="label" && fig~>theLabel=="cdsNetExpr()"
fig~>theLabel=newNetName
fig~>prop~>value=nil
)
when(fig~>objType=="line"
fig~>net~>name=newNetName
)
);foreach
foreach(elem dbGetCellViewInheritedSig(cv)
dbDeleteSigNetExpr(elem)
);foreach
dbCheck(cv)
dbSave(cv)
dbClose(cv)
);foreach
);let
't
);procedure
I have schematics using inherited nets for power and ground, and i want to replace that
global net name into a local one (without exclamation mark) and add a specific pin to the
schematic (and later also symbol). Below is my code to try the name replacement (not yet
pin placement) in the schematic. After i run this some "line" segments still have name
"VSS!" when i query them. Can anyone suggest how to improve the code?
thanks!
----------------
oldNetName = "VSS!"
newNetName = "VSS"
procedure( schRenameSupplyPins(libName viewName oldNetName newNetName)
let((lib cv cellName term)
lib = ddGetObj(libName)
foreach(cell lib~>cells
cv = dbOpenCellViewByType(libName cell~>name viewName "" "a")
net = dbFindNetByName(cv oldNetName)
foreach(fig net~>figs
when(fig~>objType=="label" && fig~>theLabel=="cdsNetExpr()"
fig~>theLabel=newNetName
fig~>prop~>value=nil
)
when(fig~>objType=="line"
fig~>net~>name=newNetName
)
);foreach
foreach(elem dbGetCellViewInheritedSig(cv)
dbDeleteSigNetExpr(elem)
);foreach
dbCheck(cv)
dbSave(cv)
dbClose(cv)
);foreach
);let
't
);procedure