Product Documentation
Virtuoso Custom Digital Placer User Guide
Product Version IC23.1, March 2023

5


Finishing Tasks

This section describes the following tasks performed after running the Virtuoso Custom Digital Placer:

Inserting and Deleting Filler Cells

From the layout window menu bar, choose Place – Custom Digital – Insert/Delete Fillers to display the Insert/Delete Filler Cells Form.

Use the options in the form to insert or delete filler cells. During insertion of filler cells, all the existing filler cells in the design are deleted, and new filler cells are inserted according to the specified component type/cell names. For example, filler cells of component types A and B are present in a design. If you specify that filler cells of component type B need to be inserted, then filler cells of both type A and B are deleted, and new filler cells of type B are inserted.

To insert filler cells:

  1. Select the Boundary within which filler cells must be added. The default is prBoundary. You can specify any custom boundary that is defined in the design.
  2. Select the Insert Mode.
  3. Select whether you want to filter the filler cells based on the Component Types or Cell Names.
  4. Click Choose. The Select Cells form is displayed.
    • With Component Types selected, the Select Cells form lets you select the required Comptypes and Library. Filler cells that are assigned to a component type with the component class FILLER are listed. For more information on component types, see Defining a Component Type and Defining a Standard Cell Substrate Contact.
    • With Cell Names selected, the Select Cells form lets you select the required Library, Cell, and View names. You can select multiple cells. View displays only the common layout views.
      In this mode, you can select Filter by celltype to restrict the Cell list to only those cells that belong to the coreSpacer cellType.
  5. Click Add to add the selections to the Selected Cells section.
    Remove lets you delete individual cells from the list, whereas Remove All clears all entries from the list.
  6. Click OK to return to the Insert/Delete Filler Cells form.
  7. Select Ignore Placement Blockages in the Options section to ignore blockages during filler cell creation.
  8. Select Physical Only to set the physOnly attribute for filler cells.
  9. Click OK to insert filler cells.

Filler cells are added into the empty spaces between the standard cells in each row without impacting the row size.

The same options and procedure apply to the Delete mode. Filler cells are deleted from the empty spaces between standard cells in each row without impacting the row size. All filler cells of the specified component type or cell names are deleted from the design. For example, if the filler cells of component types A and B are present in a design, and you want to replace the filler cells of component type B with the new filler cells. In this case, if you do an Insert, then all filler cells are deleted and replaced. To retain the filler cells of component types A, first delete the existing filler cells of component type B, and then insert the new filler cells of component type B. For more information, see Insert/Delete Filler Cells Form.

Related Environment Variables

You can use environment variables to define the filler cell component types or cell names that are to be loaded when the form is invoked.

The following example populates cells based on the filler cell component types defined in the CPH form.

envSetVal("layoutXL.placement" "selectFillerCellsFrom" 'cyclic "Component Types")
envSetVal("layoutXL.placement" "fillerCompTypes"  'string "comptye1 comptype2")

The following example gets cells from a selected filler cell component type.

envSetVal("layoutXL.placement" "selectFillerCellsFrom" 'cyclic "Component Types")
envSetVal("layoutXL.placement" "insertFillerCells"  'string "comptype1")

The following example gets cells from a list of selected cells.

envSetVal("layoutXL.placement" "selectFillerCellsFrom" 'cyclic "Cell Names")
envSetVal("layoutXL.placement" "selectFillerCells" 'string "(mylib fillc21 layout)(mylib fillc41 layout)")

List of Environment Variables

fillerCompTypes

insertFillerCells

insertFillers

selectFillerCellsFrom

selectedFillerCells

Swapping Tap Cells

The Swap Tap Cells feature helps you to detect tap cells with maximum spacing violations. You can also replace them with tap cells that have valid maximum spacing values.

To run this command:

  1. Select PlaceSwap Tap Cells to view the Swap Tap Cells form.
  2. Specify the Component Type for which you need to perform the check.
    Ensure that the same component type is assigned to both, the existing tap cells and the tap cells to be swapped.
  3. Select the Default Cell with which the tap cells in the designs need to be replaced.
  4. Specify the permitted Maximum Diffusion Spacing for validation.
  5. Select the action that needs to be performed:
    • Check Only: Checks and reports maximum diffusion spacing violations in the current design. All tap cells in the design are highlighted in white and the tap cells with violations are highlighted in yellow.
      You can click Hide at any point to hide the form to review the violations.
    • Check and Replace: This is a two-step process. First, all tap cells in the design are replaced with the selected Default Cell. Next, all maximum diffusion spacing violations are detected and their tap cells are replaced with the alternate best-matched tap cells that are available in the design.
  6. Click Run.

For information about inserting tap cells, see Defining a Standard Cell Substrate Contact.


Return to top
 ⠀
X