Instance Placement Modes
In a FinFET-based chip, all instances must be aligned to a fin grid, either to several independent local grids or to a global grid.
For the placement of Pcells and small instances, placement is done by searching the instance master for fin grids. If no fin grids are found, snapping shapes are searched. This functionality is referred to as detail mode placement. Detail mode placement is suitable only for small blocks.
For the placement of large blocks, it is not feasible to search the instance master for fin grids or snapping shapes. It is recommended that you use abstract mode placement, in which an instance snaps to a global snap pattern grid using its snap boundary or PR boundary. If a snap boundary or PR boundary is not found, then the origin axis of the instance is used as the reference point for placement. Abstract mode placement allows fast placement of large layout blocks.
You can switch between detail and abstract modes of instance placement using the environment variable. The following example shows how you can enable detail mode placement:
envSetVal("layout" "snapPatternSnappingMode" 'cyclic "detail")
There may be a situation when both detail mode and abstract mode placements are not appropriate. One such example is when the design has a third-party IP block laid out in a different methodology. For such cases, you can use manual mode placement override.
Related Topics
Manual Mode Placement Override
Return to top