Product Documentation
Virtuoso Floorplanner User Guide
Product Version IC23.1, November 2023

Push I nto Blocks Form

(Virtuoso Layout Suite EXL) Use the Push Into Blocks form to push the following objects to the block level:

The following table describes the fields available in the Push Into Blocks form when launched from Layout XL.

Field Description

Target View

This section lets you specify the target cellview in the Target View section. If the form is invoked after selecting a soft block, the library, cell, and view names are populated by default. You can edit these values based on your requirements.

Library, Cell, View

Lets you edit the Target Lib, Target Cell, and Target View values as per your requirement.

Environment variable: pibLibName, pibCellName

Options

This section provides you options for pushing and re-mastering soft blocks.

Re-master Instance(s) With Target View

Re-masters the selected soft block using the target design. This option is useful when the target design and the existing master design are different and you want to re-master the selected soft block using the target design.

Push Close Outside Wire(s) As Blockage(s)

Pushes the pre-route objects that do not overlap the soft block, but are in close proximity into the selected soft block instance. The pre-route objects that are located at distances lesser than the minSpacing value from the block are also pushed as blockages.

Push Blockage(s)

Pushes blockages inside the soft block instance.

Environment variable: pibPushBlockage

Push All As Blockages

Pushes the routes that have connectivity as blockages and not as routes with pins created on them.

Environment variable: pibPushAllAsBlockage

Push Row(s) inside Soft Block(s)

Pushes the standard and custom rows inside the soft block. Overlapping rows and the rows that are completely inside the boundary are not impacted. To avoid any possible row region abutment, the size of the constituent instances is shrunk by one unit. Also, only full height rows, not partial height rows, are pushed inside soft blocks. The rows outside the boundary are not pushed.

Net Filter

This section provides you options to specify the net shapes to be pushed into the selected soft block.

Power/Ground Net(s)

Selects the net shapes that are connected to power and ground pins.

Signal

Selects the net shapes that are connected to signal pins.

Float

Selects all floating shapes, which are shapes without any connections.

Environment variable: pibPushFloats

Create Pin Layer Selection

This section provides you options to specify the layers on which pins are to be created.

Same LPP

Specifies that pins are to be created on the same layers and purposes as the source pin shapes.

Environment variable: pibCreatePinLPPChoice

Custom Purpose

Creates pins on the same layers as the source pin shapes and allows you to specify the purpose.

Environment variable: pibPinPurposeName

Custom LPP

Lets you specify the layer and purpose on which pins are to be created.

Environment variable: pibPinLPPName

The following table describes the fields available in the Push Into Blocks form when launched from Layout EXL. The form includes additional options in this case.

Field Description

Select Source and Target View

This section lets you specify the target cellview in the Target View section. If the form is invoked after selecting a soft block, the library, cell, and view names are populated by default. You can edit these values based on your requirements.

Library Name, Cell Name, View Name

Lets you edit the Library Name, Cell Name, and View Name values as per your requirement.

Environment variable: pibLibName, pibCellName

Options

This section provides you options in General section, P&R Objects section, Shapes & Wires section, and Net Filter group box.

General

This section provides you options for re-mastering soft blocks, and pushing objects at all levels.

Re-master Instance(s) With Target View

Re-masters the selected soft block using the target design. This option is useful when the target design and the existing master design are different and you want to re-master the selected soft block using the target design.

Push At All Levels

Allows objects to be pushed at all levels. Changes are dynamically updated in the table.

Auto Suffix Occurrence Path

Adds the occurrence path of the object as the suffix to the target view name. For example, if objects are to be pushed into block1 (instance name I1) present at level1 inside the top level instance I2, then the target view name would be layout_pushed_I2_I1.

P&R Objects

This section provides you options for pushing objects and blockages in soft blocks.

Push Close Outside Wire(s) As Blockage(s)

Pushes the pre-route objects that do not overlap the soft block, but are in close proximity into the selected soft block instance. The pre-route objects that are located at distances lesser than the minSpacing value from the block are also pushed as blockages.

Environment variable: pibPushCloseWire

Push Blockage(s)

Pushes blockages inside the soft block instance.

Environment variable: pibPushBlockage

Push Row(s) inside Soft Block(s)

Pushes the standard and custom rows inside the soft block. Overlapping rows and the rows that are completely inside the boundary are not impacted. To avoid any possible row region abutment, the size of the constituent instances is shrunk by one unit. Also, only full height rows, not partial height rows, are pushed inside soft blocks.

Follow pins are created at the intersection of rows and the power stripes. Therefore, pushing rows is important for follow pin creation. After pushing power structures, follow pins cannot be created because rows remain at the top level. However, after pushing rows, the follow pins can be appropriately created.

Push Width Spacing Pattern

Pushes top-level WSP patterns into sub-blocks such that the top-level WSP pattern and the soft block WSP pattern are aligned. Before running the command, ensure that the PR boundaries of the selected soft blocks are aligned with the period of the top-level WSP grid.

Shapes & Wires

This section provides you options for modifying whole shapes and nets.

Push Whole Shape

Specifies that whole shapes that overlap the selected soft block must not be clipped when they are pushed inside the blocks.

Push Selected Nets & Shapes

Pushes only the selected nets and shapes inside the soft block. You can use this option to push objects in the incremental mode. For example, power nets can be pushed first followed by signal nets. The target design will have both power and signal routes. If this option is not used, the target design will have only signal routes.

Copy Paste Shapes

Pushes shapes into the target level without deleting them from the top level. Therefore, top-level shapes are retained as they are.

Net Filter

This section provides options to select the net shapes to be pushed into the selected soft block.

Power/Ground Net(s)

Selects the net shapes that are connected to power and ground pins.

Signal

Selects the net shapes that are connected to signal pins.

Float

Selects all floating shapes, which are shapes without any connections.

Environment variable: pibPushFloats

Push as Route

Pushes all shapes into the selected soft blocks. Floating shapes are pushed in as floating shapes, connected shapes are pushed in as connected shapes, and unconnected shapes are pushed in as blockages.

Create Net & Push with Feed Thru Pins

Creates missing nets before pushing all shapes into the selected soft blocks. Here, floating shapes are pushed in as floating shapes and connected shapes are pushed in as connected shapes. However, unconnected shapes are pushed in as feed-thru terminals.

Push as Blockage

Pushes all routing objects as blockages. Use the pibCreateBlockageType environment variable to set the blockage type to one of the following value.

  • Fill: Pushes routing objects as fill blockages.
  • Routing: Pushes routing objects as routing blockages.

You can select both the Fill and Routing check boxes to push routing objects as both fill and routing blockage simultaneously.

LPP Filter

This section provides options to specify the layers that can be pushed into soft blocks.

Environment variable: pibPurposeNames

Define

Displays the LPP Selection dialog box. By default, all LPPs are selected.

Create Pin Layer Selection

This section provides options to specify the layers on which pins are to be created.

Same LPP

Specifies that pins are to be created on the same layers and purposes as the source pin shapes.

Environment variable: pibCreatePinLPPChoice

Custom Purpose

Creates pins on the same layers as the source pin shapes and allows you to specify the purpose.

Environment variable: pibPinPurposeName

Custom LPP

Lets you specify the layer and purpose on which pins are to be created.

Environment variable: pibLayerNames

Related Topics

Pushing Top-level Power Structures into Soft Blocks


Return to top
 ⠀
X