difference between an instance terminal, terminal, pin, and

E

Erik Wanta

Guest
I am reading:
Integrator's Toolkit: Database Reference Manual, Product Version 5.0
Chapter 11
Connectivity

I am having difficulty understanding what the difference is between an
instance terminal, terminal, pin, and instance pin.

If I open up a layout I would expect that
dbGetWindowCellView()~>terminals~>name would match the schematic
terminals list. I notice that in some cases I have more terminals in
the layout if terminals were renamed. That is if a terminal in the
schematic was changed from "A" to "B" I see both "A" and "B" in the
layout terminal list.

When I get the dbGetWindowCellView()~>terminals~>pins~>name list I get
a list of terminals and numbers. I was expecting to see the same
number of pins as terminals with the pin names matching the terminal
names. What do the numbers represent in the pins list?
---
Erik
 
Erik,

To be honest you'd probably be better off reading the Design Framework II SKILL
functions manual - the ITK documentation is a little sparse, to say the least.

Terminals are the logical connections to a block; pins represent the physical
connections. When netlisting, it only uses the terminals - the pins don't really
have to be there.

Pins can either be symbolic (i.e. instances) or geometric (i.e. shapes). A
pin object in the database has a fig attribute which indicates the instance or
shape. It also has a term object which indicates the logical terminal.
Generally speaking the pin name is irrelevant - it has a name, but it is hardly
used for anything. The terminal name is the important thing. Bear in mind that
you can have multiple pins for the same terminal (for example, alternative
connections for a power pin).

An instance terminal is (as the name suggests) an object that represents the
connections to a particular terminal on a particular instance. For example, if
you have two instances, I1 and I2 of a symbol, nand2, with pins A,B and Z,
then there will be a total of 6 instTerms. Each instTerm indicates which
instance it belongs to, which terminal it belongs to, and which net is connected
to that instance terminal.

I don't believe there is anything special in the database for instance pins.

I suspect the extra terminals you are seeing are hangovers where VXL is
not cleaning up; this is a known problem, with a PCR, and I think is fixed
in IC5141 (if I remember rightly; I had a customer with the same problem).

Andrew.

On 3 May 2004 04:15:24 -0700, erikwanta@starband.net (Erik Wanta) wrote:

I am reading:
Integrator's Toolkit: Database Reference Manual, Product Version 5.0
Chapter 11
Connectivity

I am having difficulty understanding what the difference is between an
instance terminal, terminal, pin, and instance pin.

If I open up a layout I would expect that
dbGetWindowCellView()~>terminals~>name would match the schematic
terminals list. I notice that in some cases I have more terminals in
the layout if terminals were renamed. That is if a terminal in the
schematic was changed from "A" to "B" I see both "A" and "B" in the
layout terminal list.

When I get the dbGetWindowCellView()~>terminals~>pins~>name list I get
a list of terminals and numbers. I was expecting to see the same
number of pins as terminals with the pin names matching the terminal
names. What do the numbers represent in the pins list?
---
Erik
--
Andrew Beckett
Senior Technical Leader
Custom IC Solutions
Cadence Design Systems Ltd
 
"Erik Wanta" <erikwanta@starband.net> wrote in message
news:84018314.0405030315.646c32e3@posting.google.com...
I am reading:
Integrator's Toolkit: Database Reference Manual, Product Version 5.0
Chapter 11
Connectivity

I am having difficulty understanding what the difference is between an
instance terminal, terminal, pin, and instance pin.
An instance terminal in your top cell view "connects" to a terminal in an
instance's master in your cell view.

Multiple pins in that instance's master can be assigned to the same terminal
in that master.

For example, if you have a feedthrough in that instance's master, then for
VXL that instance master must have one terminal for that feedthrough, and
the top cell view one instance terminal that connects to that terminal, and
that instance's master must have two pins, one on each side of the
feedthrough. You can guess what pin connectivity constraint you want in
order to guarantee the top cell view hooks up to both sides of that
feedthrough.

Instance pins are useless, ignored by the VXL, and probably every other
piece of software even though they can be inserted into the database. They
may not even exist in OA2.2, or so some rumors go.

If I open up a layout I would expect that
dbGetWindowCellView()~>terminals~>name would match the schematic
terminals list.
Not necessarily. You can change the terminal names in the layout as long as
you keep a pin name mapping attribute on the schematic (or through the
mapping file).

I notice that in some cases I have more terminals in
the layout if terminals were renamed. That is if a terminal in the
schematic was changed from "A" to "B" I see both "A" and "B" in the
layout terminal list.
Bug.

When I get the dbGetWindowCellView()~>terminals~>pins~>name list I get
a list of terminals and numbers.
Pin names are useless.

I was expecting to see the same
number of pins as terminals with the pin names matching the terminal
names. What do the numbers represent in the pins list?
The order in which they were created in the master. Ignore pin names for
your own sanity.

spaller

--

....
 

Welcome to EDABoard.com

Sponsor

Back
Top