difference between an instance terminal, terminal, pin, and instance pin?

Discussion in 'Cadence' started by Erik Wanta, May 3, 2004.

  1. Erik Wanta

    Erik Wanta Guest

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

    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 Wanta, May 3, 2004
  2. 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 Beckett, May 3, 2004
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.