Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Skill Qn: How to change pin name using skill code

2,510 views
Skip to first unread message

suresh j

unread,
Jan 20, 2004, 1:06:10 AM1/20/04
to
Hi,
We create pins using the interactive command leHiCreateChoiceOfPin().
This has options so that the pin name is displayed as a label and
attached to the metal layer. When we change the pin name in the
interactive mode, the label text also gets changed automatically.
I want to do this using skill. Could somebody suggest a way?

Thanks.

regards,
Suresh J

Andrew Beckett

unread,
Jan 20, 2004, 4:44:16 PM1/20/04
to
Hi Suresh,

The label created is a textDisplay (I think for that command), and shows the
name of the terminal for the pin. If the terminal name changes, it automatically
will change what it displays. So all you'd have to do is change the terminal
associated with the pin object. Should be doable with db functions.
(sorry about the brief answer; I'm in a hotel (as usual...))

Andrew.

--
Andrew Beckett
Senior Technical Leader
Custom IC Solutions
Cadence Design Systems Ltd

okguy

unread,
Nov 20, 2005, 11:47:48 PM11/20/05
to
I succeed to change the terminal name but in the schematic the net names
connected by label are not change. I just rename it: term~>name=new_name
I cannot find the way to chage the net label using skill code.
Any trick ?

Trevor Bowen

unread,
Nov 21, 2005, 2:42:11 PM11/21/05
to
It is possible for the database to support a net name that is different
than the attached terminal name. However, changing the terminal name,
as you suggested, and then performing a "Check and Save" will update the
old net to the new name.

In case you do not want to have run "Check and Save", and you want your
code to do it for you, try this:

dbMergeNet(dbCreateNet(term~>cellView new_name) term~>net)
term~>name = new_name

Currently, you cannot rename a net directly, as you can for a terminal,
(I think this should be possible, personally) so you have to create a
new net with the new name and merge the old net into the new net.

okguy

unread,
Nov 22, 2005, 8:49:40 PM11/22/05
to
I tried it but it does not change the labels.
My problem is that it generate errors when netlisting. Another way could
be to selct all labels and rename the label. Do you know the skill to
rename a label ?

OkGuy

Andrew Beckett

unread,
Nov 24, 2005, 1:32:56 AM11/24/05
to

I assume you're talking about the labels attached to wires attached to the pin
you just renamed (by changing the terminal name)? If so, these will not change
automatically at check-and-save time as was suggested.

Say you have three variables already set:

cv - database object of cellView
oldName - old terminal name
newName - new terminal name

then:

term=dbFindTermByName(cv oldName)
term~>name=newName
foreach(fig term~>net~>figs
foreach(child fig~>children
when(child~>objType=="label" && child~>theLabel==oldName
child~>theLabel=newName
) ; when
) ; foreach
) ; foreach

will do it. This looks at all the figures associated with the net (e.g the
wires), and then looks for children of these wires (the attached labels) and
changes them.

Regards,

Andrew.

0 new messages