• 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 Design
  3. How to get the valid instance db_Id "d_instId" of a instance...

Stats

  • Replies 2
  • Subscribers 125
  • Views 561
  • Members are here 0

How to get the valid instance db_Id "d_instId" of a instance.

YC202502167727
YC202502167727 5 months ago

Hello,

I am trying using "dbFlattenInst2" skill to smash a instance.

skill:  dbFlattenInst2(  d_instId    x_levels   [ g_options ] )  => t / nil   

and the Arguments says the definition of "d_instId"  is "Specifies the database ID of the instance to flatten.    

Then I tryed to find out this d_insld by using (geGetEditCellView)->instances~>? ?   

I have put the content that produced by (geGetEditCellView)->instances~>? ?  one by one into the d_instId position and all failed.

For  xample:     dbFlattenInst2( 0x7b6555a0  2 )      → from  ((db:0x7b6555a0 cellView db:0x7b65519a objType...

                or       dbFlattenInst2( 0x6d422e1a  2 )     →from      ... master db:0x6d422e1a ...

I really have no clue about the exact location and appearance of the "d_instId" 

Any advise would be helpful and thankful.

Best Regards.

 

  • Sign in to reply
  • Cancel
  • Andrew Beckett
    Andrew Beckett 5 months ago

    When Virtuoso prints out a database id, it shows it with the print representation as you've seen - for example db:0x7b6555a0 . You cannot just type this in as a literal value to be passed to another function - it's merely there to print something that gives an indication that it's a database id, and that two database id's with the same address mean the same object.

    Instead you need to process this list so that the database ids are directly referenced or stored in a variable. For example:

    instances=geGetEditCellView()~>instances
    ; flatten just the first
    ;dbFlattenInst2(car(instances) 2)
    ; or flatten them all one by one
    foreach(inst instances
      dbFlattenInst2(inst 2)
    )

    Andrew

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Cancel
  • YC202502167727
    YC202502167727 5 months ago in reply to Andrew Beckett

    Hi Andrew

    Thank you four your detailed reply.

    The code is running smoothly and I finally understand how to use the database ids.

    Thanks again!

    Best Regards.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • 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