• 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. Digital Implementation
  3. instance renaming

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 92
  • Views 14650
  • 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

instance renaming

Rajesh Vembu
Rajesh Vembu over 16 years ago

How do we rename instances in encounter? I'm aware of changeInstName command, but it does not change the hierarchical name.

 

For example, if i have to change an instance name from a/b/c to x/y/z, how to accomplish it?

 

 

  • Cancel
  • BobD
    BobD over 16 years ago

    Could you clarify whether you are truly looking to change the level of hierarchy at which the instance resides? In other words, if I specified the a/b hierarchial instance as a partition, and the design was partitioned after renaming a/b/c to x/y/z- would you expect to see x/y/z within the netlist written out for a/b?

    Thanks,
    Bob

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Rajesh Vembu
    Rajesh Vembu over 16 years ago

     Hi Bob,

    I'm not looking to change the hierarchy of the instance. I still want to maintain the same hierarchy, but just want to rename the instance.

    I have a db whose one module name is changed in the latest verilog. Instead of redoing the entire flow, i'm trying to convert the existing db to match with the new netlist.

     Is there any way to do it?

     

    Thanks,

    Rajesh

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • magicflute
    magicflute over 16 years ago

    ### usage: rename_FEhcells  a/b/c  a1/b1/c1 

    proc rename_FEhcells { oldhcell newhcell } {

    set ptr_oldhcell [dbGetHInstByName $oldhcell]
    set ptr_newhcell [dbGetHInstByName $newhcell]
    set i 0
    dbForEachHInstTreeInst $ptr_oldhcell instptr {
     set oldHinst [dbInstName $instptr]
     set oldhcells_rootpath_length [expr [string length $oldhcell] + 1]
     #set last_name [dbInstBaseName $instptr]
     set last_name [string range $oldHinst $oldhcells_rootpath_length end]

     set cellName [dbInstCellName $instptr]
     set instLoc [dbInstLoc $instptr]
     set x [dbDBUToMicrons [lindex $instLoc 0] ]
     set y [dbDBUToMicrons [lindex $instLoc 1] ]

     set R [string range [dbInstOrient $instptr] 3 end]

     deleteInst  $oldHinst
     addInst -cell $cellName -inst $newhcell/$last_name -loc $x $y -ori $R   -physical

    incr i

                                                  }
    puts "#######################################################"
    puts "Total $i Hinsts changed Hierarchy for ECO in Encounter!"
    puts "#######################################################"
    }
    ~                                              

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • eminemshow
    eminemshow over 16 years ago

    magicflute said:

    ### usage: rename_FEhcells  a/b/c  a1/b1/c1 

    proc rename_FEhcells { oldhcell newhcell } {

    set ptr_oldhcell [dbGetHInstByName $oldhcell]
    set ptr_newhcell [dbGetHInstByName $newhcell]
    set i 0
    dbForEachHInstTreeInst $ptr_oldhcell instptr {
     set oldHinst [dbInstName $instptr]
     set oldhcells_rootpath_length [expr [string length $oldhcell] + 1]
     #set last_name [dbInstBaseName $instptr]
     set last_name [string range $oldHinst $oldhcells_rootpath_length end]

     set cellName [dbInstCellName $instptr]
     set instLoc [dbInstLoc $instptr]
     set x [dbDBUToMicrons [lindex $instLoc 0] ]
     set y [dbDBUToMicrons [lindex $instLoc 1] ]

     set R [string range [dbInstOrient $instptr] 3 end]

     deleteInst  $oldHinst
     addInst -cell $cellName -inst $newhcell/$last_name -loc $x $y -ori $R   -physical

    incr i

                                                  }
    puts "#######################################################"
    puts "Total $i Hinsts changed Hierarchy for ECO in Encounter!"
    puts "#######################################################"
    }
    ~                                              

     

    Are you sure with this solution? It will only construct a DUMMY hier instance with not right connections. Please think harder when you want to propose an answer.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • magicflute
    magicflute over 16 years ago

    this script should be used for postmask eco flow.   after performing the script, you should modify the DEF file.(for hier renamed cell ,there will be such as a/\b/\c  structure, which should be manully modify to a/b/c) , then do ecoDefIn old.def  .  it will restructure the netlist database for routing.

     

    • 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