Placement of a Virtual Hierarchy
When a virtual hierarchy is generated, the Design Planning and Analysis (DPA) tool creates an area boundary around each top-level virtual hierarchy. The size of this area boundary is based on the actual size of the layout views present inside the hierarchy rather than the estimated sizes. This allows for a realistic placement of the blocks at the top level. DPA supports the following two types of placements for a virtual hierarchy:
Manual Placement
Manual placement can be achieved by stretching, resizing, or chopping the area boundary of a virtual hierarchy to change the aspect ratio of the virtual hierarchy. Manual placement can help optimize the floorplan across the hierarchical levels.
The DPA tool also lets you use the Analyze Connectivity tool to get a visual display of the connectivity profile of the virtual hierarchies in a design. When you select a virtual hierarchy at any level, the Analyze Connectivity command visualizes the connectivity from the selected hierarchical level and displays flight lines on the layout canvas to represent the cross-hierarchical connections.
With the visual connectivity aid to support you in your placement of the virtual hierarchies at the top level, you can make more informed decisions when manually placing the top-level objects.
Automatic Placement
Automatic placement is performed by the automatic placer to perform an analog, Like Schematic placement after a Stretch, Reshape, or Chop operation. The automatic placer is useful when a manual adjustment of the virtual hierarchy has resulted in some of its contents being placed outside the area boundary. The automatic placer can switch between placement modes, depending on the design conditions.
By default, the automatic placer places only those instances that are currently outside the area boundary. The automatic placer does not run when all the virtual hierarchy components already fit inside the area boundary or the area boundary is too small to accommodate the area of the contents. To control the number of devices that can be placed in this mode, you can use the autoPlaceLimit environment variable. The devices can be placed with a minimum spacing value of 0 between them. This placement mode is suitable for designs that have constraints. Virtual hierarchies that have a rowRegion defined are also supported by this placement mode.
The automatic placer runs a full placement when the autoPlaceAllInstances environment variable is set during interactive edits to the area boundary or when the Auto Place context-sensitive menu command is used. In this mode, the placer can support a larger limit on the number of devices that can be placed, provided the virtual hierarchy area boundary is rectangular, does not contain a rowRegion, and the design does not contain any constraints. The placement limit in this mode can be controlled using the autoPositionLimit environment variable and the minimum spacing between the devices can be controlled using the autoPlaceMinSep environment variable. If any of the placement conditions is not met, the placement limit is controlled using the autoPlaceLimit environment variable.
Related Topics
Return to top