Home > Community > Forums > Custom IC SKILL > Routing using terminals coordinates (SKILL)

Email

* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

 Routing using terminals coordinates (SKILL) 

Last post Thu, Jul 4 2013 9:25 AM by TaherKotb. 3 replies.
Started by TaherKotb 04 Jul 2013 12:31 AM. Topic has 3 replies and 705 views
Page 1 of 1 (4 items)
Sort Posts:
  • Thu, Jul 4 2013 12:31 AM

    • TaherKotb
    • Top 500 Contributor
    • Joined on Wed, Apr 24 2013
    • Posts 27
    • Points 375
    Routing using terminals coordinates (SKILL) Reply

    Hello

    I want to create path leCreatePath() to connect between terminals of instances in the layout, i used inst_id~>instTerm~>termPosition to get the drain, source, gate and bulk coordinates to draw a path from these coordinates but the output i get is (nil nil nil nil). Is there a better way to draw a path without using coordinates(using the database ids' of the terminals) ?

    One more question, How can i get the db_id of terminals that are tied together in the schematic ?

    Thanks

    Taher

    • Post Points: 5
  • Thu, Jul 4 2013 8:47 AM

    • TaherKotb
    • Top 500 Contributor
    • Joined on Wed, Apr 24 2013
    • Posts 27
    • Points 375
    Re: Routing using terminals coordinates (SKILL) Reply
    Can any one help me on this please ?
    • Post Points: 20
  • Thu, Jul 4 2013 9:04 AM

    Re: Routing using terminals coordinates (SKILL) Reply

    Taher,

    If this is so urgent that you need to chase it within a day, you really should be using customer support. This forum is manned by volunteers (including those folks such as me who work for Cadence) - who try to fit this in during their spare time (which is rather limited for me at the moment), and as such you shouldn't expect fast response.

    termPosition is not what you want. From the documentation:

    Returns the position to which this terminal is assigned. Assigning a position or indicating an order for terminals is typically used by netlisters to compare the actual pin position to the position specified in the netlist.

    In fact the terminals are not what you need. It's the pins - because the pins carry the physical information (e.g. geometry) of the pins, whereas the terminals hold the connectivity information.

    So, assuming your instance has instTerms - which it will if it was created in VLS XL - you can  find the figures. For example:

    inst_id~>instTerms~>name
    ("D" "G" "S")
    inst_id~>instTerms~>term~>pins~>figs
    (((db:0x18a87315 db:0x18a8731b))
        ((db:0x18a87323))
        ((db:0x18a87314 db:0x18a87316))
    )

    So as you can see, some of these may have more than one fig (in OA-based releases). For example:

    D_figs=car(car(inst_id~>instTerms)~>term~>pins)~>figs

    D_figs_bboxes=foreach(mapcar D_fig D_figs dbTransformBBox(D_fig~>bBox inst_id~>transform))

    (((19.73 6.41)
        (20.03 7.61)
        )
        ((19.79 6.41)
        (19.91 7.61)
        )
    )

    This gives me a list of the transformed bounding boxes (i.e. the location of the pins) in the coordinate space of the cellView. The pin figures are in the instantiated master, and hence we have to transform it into the current cellView using dbTransformBBox.

    Alternatively maybe you can use lxSelectedRoute to auto-route the selected nets?

    I didn't really understand your second question. You also didn't say which version you're using, or whether you're using Layout XL or not.

    Regards,

    Andrew.

     

    • Post Points: 20
  • Thu, Jul 4 2013 9:25 AM

    • TaherKotb
    • Top 500 Contributor
    • Joined on Wed, Apr 24 2013
    • Posts 27
    • Points 375
    Re: Routing using terminals coordinates (SKILL) Reply
    Andrew, Thank you so much, you reply clarified a lot of things. Sorry for the inconvenience
    • Post Points: 5
Page 1 of 1 (4 items)
Sort Posts:
Started by TaherKotb at 04 Jul 2013 12:31 AM. Topic has 3 replies.