https://open-source-silicon.dev logo
#sky130
Title
b

Burak Yakup Çakar

05/12/2022, 8:27 PM
Hello everyone, I want to place multiple macros in caravel user area, but I can not do this effectively. Although I leave about 200 um of gaps between macros, there are congestion errors when I run the flow. But I see many projects with much closer macro placements, so I think I miss an essential point. What are the key points to place macros closely?
v

Vijayan Krishnan

05/13/2022, 5:38 AM
First try with auto macro placement and see the routing. If its fails you've to go with manual macro placement. Based on macro pin connection, place macro near to core edge and pin connection. Use
Copy code
set ::env(PL_MACRO_CHANNEL) {30 30}
set ::env(PL_MACRO_HALO) {10 10}
above for MACRO spacing. This will sure fix your issues
m

Matt Venn

05/14/2022, 6:54 AM
I didnt know about auto macro placement, got a link to any docs?
v

Vijayan Krishnan

05/16/2022, 5:10 AM
@User If there is LEF/GDS variable define, tool will look for
marco.cfg
or OpenROAD app will do auto macor placement
b

Burak Yakup Çakar

05/16/2022, 6:06 AM
Thanks for the tip, it really solved the problem. But I really wonder what this config exactly do, what it changes and how it solves the problem.