create_pg_fill
create_pg_fill [ -setd_setObj| -nets {s_netName…} ] [ -all | -region {f_xlof_ylof_xhif_yhi} ] [ -layer {s_layerName…} ] [ -lock_via_layers {s_layerName…} ] [ -connections [ true | false ] ] [ -connections_type [all | via | same_layer] ] [ -keep_simple_connections [ true | false ] ] [ -silent | -verbose ] [ -threadsi_threads]
Description
Creates fill shapes connected to power and ground nets to improve IR drop while also increasing metal density. This command performs the following:
-
Inserts the maximum number of stripes as possible in the preferred routing direction on each given layer, respecting all the existing power/ground spacing and width constraints:
-
pgFillWidthis the width of the power/ground fill stripes to insert. A small width is recommended to minimize the impact on the timing. IfpgFillWidthis not defined, two timesminWidthis used. -
minPgFillSpacingis the minimum spacing between two power/ground fill stripes. IfminPgFillSpacingis not defined, the first defined value is used from the following:minSameNetSpacing*2orminSpacing*2. -
minPgFillSignalSpacingis the minimum spacing between power/ground fill stripes and signal nets. IfminPgFillSignalSpacingis not defined, two timesminSpacingis used. -
minPgFillClockSpacingis the minimum spacing between power/ground fill stripes and clock nets. IfminPgFillClockSpacingis not defined,minPgFillSignalSpacingis used. -
minPgFillPgSpacingis the minimum spacing between power/ground fill stripes and existing power/ground nets. IfminPgFillPgSpacingis not defined,minPGFillSignalSpacingis used. -
minPgFillFloatingFillSpacingis the minimum spacing between power/ground fill stripes and existing floating fill shapes. IfminPgFillFloatingFillSpacingis not set, thenminPgFillSpacingis used. -
minPgFillBoundarySpacingis the minimum spacing between power/ground fill stripes and the design boundary. IfminPgFillBoundarySpacingis not defined, thenminBoundaryInteriorHalois used, and if neither is defined, then the default is 0.
-
-
Connects all stripes to the given power/ground nets (
-netsor-set). -
Removes all fill shapes with less than two connections because these shapes will not help to improve the IR drop (
-connections true -keep_simple_connections false).
The create_pg_fill command does not consider metal density requirements. Following this command, run check_density to verify the metal density, and create_fill to add additional fill shapes as needed.
Arguments
|
(Default) If
If |
||
|
Specifies how power/ground fill shapes can be connected to power/ground rails. |
||
|
Both via and same-layer connections are used. This is the default. |
||
|
(Applies only with |
||
|
Specifies the layers to process. By default, all routing layers are processed. |
||
|
Prevents this command from adding vias on the specified cut layers. By default, all via layers can be used. |
||
|
Connect added fill stripes to the given nets. Specified power/ground nets must be listed in the |
||
|
Specifies the boundary of the area to process, given the lower-left and upper-right coordinates. |
||
|
Connects fill stripes to nets in the set. Specified power/ground nets must be listed in the |
||
|
Specifies the number of threads or processors to use in parallel to run this command. By default, if multi-threading has been enabled (enable_multithreading), the session threads are used, otherwise, one processor is used. |
||
Examples
The following commands set power/ground fill constraints for layer M3.
set_layer_constraint -constraint pgFillWidth -layer M3 -Value 0.1
set_layer_constraint -constraint minPgFillSpacing -layer M3 -Value 0.2
set_layer_constraint -constraint minPgFillSignalSpacing -layer M3 -Value 0.3
set_layer_constraint -constraint minPgFillClockSpacing -layer M3 -Value 0.6
set_layer_constraint -constraint minPgFillPgSpacing -layer M3 -Value 0.4
set_layer_constraint -constraint minPgFillBoundarySpacing -layer M3 -Value 0.5
The following figure shows fill stripes added to an area and the power-to-fill and fill-to-fill connections. Some fill stripes are interrupted by existing signal wires that are outlined in black. By default and when -connections is set true, the added fill stripes with only one connection to the power net will be removed as indicated in the figure. This example uses via connections only (-connections_type via).

Related Topics
Return to top