• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. Different instances reference different masters

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 143
  • Views 14088
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Different instances reference different masters

MichaelKoch
MichaelKoch over 14 years ago

I have a layout with multiple instances of the same cell (libName, cellName, viewName). 

However some of the instances refer to the same master css()~>master and some not.

Looking at the master most of the properties are the same, with the exception of addresses/pointers which are completely different 

and the css()~>modifiedCounter. 

I already found the post called Re: instance->master != dbOpenCellViewByType() but those instances don't seem to have a

superMaster.

The original task was to creep through a design hierarchically, which I would want to do by collecting all the instance masters and then 

crawling through those instead of repeatedly crawling through the masters of all the instances. 

 

Please see the code below to collect all the masters in a table, counting the times these masters were referenced.

    l_insts=sCV~>instances
    t_instType=makeTable("instType" 0)
    foreach(inst l_insts
      printf("  inst~>master %L inst~>master~>superMaster %L %d\n"
         inst~>master inst~>master~>superMaster t_instType[inst~>master])
      t_instType[inst~>master]=t_instType[inst~>master]+1
    )
    foreach(instType t_instType
      printf("  Would check %-30s / %-30s / %-30s %L %d occurences\n"
               instType~>libName instType~>cellName instType~>viewName instType t_instType[instType])
      ; bppCheckVias(list(instType~>libName instType~>cellName instType~>viewName) quiet)
    )

 The output in question looks like: 

 ...

  Would check rbc22s                         / cr_invert_e_h                  / layout                         db:0x1c2b501a 1 occurences
  Would check rbc22s                         / cr_invert_e_h                  / layout                         db:0x1c2b691a 1 occurences
  Would check rbc22s                         / cr_invert_e_h                  / layout                         db:0x1c2b741a 2 occurences

...

  • Cancel
  • Andrew Beckett
    Andrew Beckett over 14 years ago

    Michael,

    If the master does not have a superMaster, perhaps you can try doing:

    dbCheck(sCV)
    dbFix(sCV)

    maybe the instHeaders have got messed up - this can happen if something was once a pcell, but is no longer a pcell. Pretty rare though...

    Otherwise, you should log a service request so somebody in Cadence can look at the data.

    Regards,

    Andrew.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • MichaelKoch
    MichaelKoch over 14 years ago

     I was wrong.Either the instances have superMasters or refer to the same master.

    Please close. 

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information