Design IO, Corner Cells, and Blocks
Abstract Generator uses the cover blockage model for IO cells, preventing the router from routing over IO cells.
Abstract Generator uses the same model for generating abstracts for corner cells.
-
Maximize porosity for over-the-block routing.
Leave unobstructed areas for over-the-block routing. Minimize the number of M2 and M3 geometries inside the block, so that these routing resources can be used to route over the block. -
Create power rings around large macro blocks.
It might be easier to accommodate power routing around a macro block if you create a power ring around it and connect the internal buses to the ring. -
Pad around block boundaries.
It is always good to have extra routing resources around a block, because this area can get congested. Leave extra room around the corners. - Create as much open vertical M2 space as possible on the left and right sides.
- Create as much open M1 and M3 space as possible on the top and bottom.
-
Space pins apart by at least line-to-via spacing.
If your design requires line-to-line spacing, add flare outs to line-to-via spacing even if this sticks out from the macro, as shown in the following figure.

Related Topics
Guidelines for Designing a Cell Library
Return to top