Symbolic Via Issue.

Discussion in 'Cadence' started by eric.d.fitzsimmons, Mar 18, 2009.

  1. Hi All,

    Andrew gave me some code, which I changed slightly, to place Text on
    all Instances in a heirarchy. I ran into a case where I have
    "Symbolic" vias that are getting Text placed on them. When I select
    one of the vias and perform Edit Instance Properties, the View is
    symbolic. I think the safest thing would be to label with text only
    "layout" views.

    I have tried to do this, but I couldn't get it.

    Any help would be greatly appreciated.

    Thank you in advance,
    Eric



    procedure(AllCustomNamesDeviceText(@key (cv geGetEditCellView())
    (layerName "text") (height EFHeightAns) (orient EFOrientationAns)
    (justification EFJustificatonAns) (font EFFontAns))
    let( (label)
    foreach(mapcar inst cv~>instances
    unless(leIsContact(inst); This strips out vias made with Create
    Contact. We are not using IC61
    label=dbCreateLabel(
    cv
    layerName
    list((leftEdge(inst)+rightEdge(inst))/2 (topEdge(inst)+bottomEdge
    (inst))/2)
    EFCustomLabelAns; From the form, "Enter Custom Label"
    justification
    orient
    font
    height
    ) ; dbCreateLabel
    leAttachFig(label inst)
    label
    ) ; leIsContact
    ) ; foreach
    ) ; let
    ) ; procedure
     
    eric.d.fitzsimmons, Mar 18, 2009
    #1
  2. eric.d.fitzsimmons

    Marc Heise Guest

    You could try to replace

    unless(leIsContact(inst)

    with:

    unless(inst~>viewName=="symbolic" ; skipping all views called "symbolic"

    or:

    unless(inst~>viewName!="layout" ; skipping everything which is not "layout"

    Regards,
    Marc
     
    Marc Heise, Mar 18, 2009
    #2
  3. Marc,

    unless(inst~>viewName!="layout"; this worked perfectly.

    I was pretty close to getting this myself, but couldn't find or figure
    out "viewName". I tried "view" and View and cellView.

    Oh well, every day learn something new.

    Thank you very much for your help,
    Eric
     
    eric.d.fitzsimmons, Mar 18, 2009
    #3
  4. eric.d.fitzsimmons

    I-F AB Guest


    Eric,
    You could've checked the available properties (is this the right
    term?) with:
    inst~>? [-or-] inst~>?? [-shows all properties & their
    values-]
    of course it would be easier to check if you did it on 1 particular
    instance or else if you do something like:
    cv~>instances~>?
    you'll get a list of properties for each & every instance.
    I do this with forms & fields as well, though I sometimes type '->'
    instead of '~>' of which I'm not sure what difference it makes here.

    Best regards,
    I-FAB

    PS: I haven't tried the code yet since I usually put my internet
    browser on 1 desktop & open virtuoso on another desktop; switching
    between desktops can be a pain on my low-memory pc. So I rarely open
    virtuoso unless I really have to since the time-lag & the potential
    license queue can be quite a hassle.
     
    I-F AB, Mar 19, 2009
    #4
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.