• 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. Exclude macros from addMetalFill

Stats

  • Locked Locked
  • Replies 2
  • Subscribers 92
  • Views 13061
  • 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

Exclude macros from addMetalFill

Johann Glaser
Johann Glaser over 14 years ago

Hi!

In my design there are two SRAM macros which should not be covered with metal fill. Although I've searched the documentation, forums and the internet, I didn't find a way to tell addMetalFill to exclude certain areas or macros. Could you please help me to find who to accomplish this?

Thanks

  Hansi

  • Cancel
  • icmaple
    icmaple over 14 years ago

    I also find nothing options to exclude Macro for adding metal fill.  i often create routing blockages over Macros.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Johann Glaser
    Johann Glaser over 14 years ago

    Hi again!

    After some playing I had the idea to remove the fillers from where I don't want them. Please find attached a section of the script doing this for a certain list of instances.

    # remove metal fill above certain instances
    set exclude_instances {core_1/TopAcchs_1/ram_interface core_1/TopAcchs_1/xram_interface}
    set offset 5.0
    
    foreach inst $exclude_instances {
      # use "eval" to get four individual parameters for iobox
      eval set box [dbGet [dbGetInstByName $inst].box]
      set x1 [lindex $box 0]
      set y1 [lindex $box 1]
      set x2 [lindex $box 2]
      set y2 [lindex $box 3]
      set x1 [expr $x1 - $offset]
      set y1 [expr $y1 - $offset]
      set x2 [expr $x2 + $offset]
      set y2 [expr $y2 + $offset]
      set area "$x1 $y1 $x2 $y2"
      puts "Removing metal fill for instance $inst in area $area"
      eval editDelete -shapes FILLWIRE -area $area
    }
    

    Note that the editDelete instruction is sensitive to the preferences setting whether you want to delete "Enclosed by Box" or "Intersecting Box".

    Bye

      Hansi

    • 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