extract_net_connectivity
extract_net_connectivity
{-all
| -set d_setObj
| -window_id i_windowID
| -cells {s_libCellView…}}
[ -apply_pin_style_to_top_cell [ true | false ] ]
[ -clock_names {s_netName…}]
[ -extract_poly [ true | false ] ]
[ -flatten_all_lpps [ true | false ] ]
[ -flatten_blockages [ true | false ] ]
[ -flatten_to_depth {1|2}]
[ -ground_names {s_netName…}]
[ -ignore_cells {s_libCellView…}]
[ -layer_precedence {s_layerName…}]
[ -net_name_file s_lnnFileName ]
[ -net_name_prefix s_prefix]]
[ -net_name_property s_property]
[ -pin_style {labeled_shapes | connected_shapes | whole_net
| whole_net_all_layers}]
[ -power_names {s_netName…}]
[ -resolve_shorts [ true | false ] ]
[ -routify [ true | false ] ]
[ -save ]
[ -save_lib s_libName ]
[ -save_view s_viewName | -view s_viewName ]
[ -stop_level i_level]
[ -text_layer {shape_layer | s_layerName}]
[ -text_purpose s_lpp]
[ -use_layout_text [ true | false ] ]
[ -verbose ]
Description
Extracts connectivity from a layout without connectivity or with partial connectivity, such as data imported from GDSII Stream format. Adding connectivity to the data will allow it to be routed and/or optimized.
Operates on objects with the following characteristics:
- The object must be a rectangle, polygon, route wire, or route via
- Rectangles, polygons and route wires must be on a layer of material type metal, poly, or cut, and must be on one of the following purposes: wire:detail, via:detail, wire:pin, via:pin, or a user-defined purpose that is mapped to one of these purposes.
These objects are referred to as interconnect objects. In addition, the extractor can use text objects (-use_layout_text true), which must have purpose text.
Any interconnect object that is not part of a net is assigned to a net by the extractor by recursively identifying any other objects that are physically connected to that object. If any object in this connected set is already part of a net, then all unassigned objects in the set are assigned to that net. If none of the objects in the connected set is already assigned to a net, then a new net will be created.
Nets created by the extractor can be assigned a name by the extractor from one of the following sources:
-
The value of a property attached to an object in the net (
-net_name_property) -
The value of a text object in the layout that labels one of the objects in the net (-
use_layout_text) -
A user-given name prefix with a number appended to ensure unique naming (-
net_name_prefix)
Arguments
|
Specifies whether the
For example, if you are routing the top cell and you want all of the relevant shapes at level one of its hierarchy to be possible routing targets, specify |
||
|
Performs extraction on cells in the given list. Cells are specified with the format lib/cell/view. Wildcards are accepted. Cells can be excluded using
For example, |
||
|
Recognizes names in the list as clock nets in the design. If the extractor creates a net with one of these names, the signal type of the net will be set to " |
||
|
Applies only when |
||
|
Applies only when - |
||
|
Removes hierarchy from the design. If set to 1, layout data from all of the instances are copied into the extracted cell and the instances are removed from the extracted cell. If set to |
||
|
Recognizes names in the list as ground nets in the design. If the extractor creates a net with one of these names, the signal type of the net will be set to " |
||
|
Ignores layout in the given cells. Cells are specified with the format lib/cell/view. Wildcards are accepted. To include cells, use |
||
|
Specifies an ordered list of layers which must be valid technology layer names. Used with |
||
|
Specifies the name of the Mentor Graphics® Calibre® Layout Netlist Names (LNN) file to use for net name mapping. For more information on using this argument, refer to Using -net_name_property with Calibre Layout Netlist Names Files. |
||
|
Specifies a prefix string for names of nets created by the extractor that are not named with a label from text or property. The extractor will create a unique name for each net by appending a number at the end of the prefix.
For example, if you specify a prefix of " |
||
|
Names extracted nets using the value of this property attached to at least one of the net shapes. For more information on using this argument, refer to Using -net_name_property with Calibre Layout Netlist Names Files. |
||
|
Marked shapes and those that are recursively connected become pin shapes. |
||
|
Only shapes marked by text or property become pin shapes. This is the default. |
||
|
All of the shapes in the net, regardless of layer, become pin shapes. |
||
|
Recognizes names in the list as power nets in the design. If the extractor creates a net with one of these names, the signal type of the net will be set to " |
||
|
When |
||
|
Saves cell views after extraction, overwriting current views. By default, no save occurs, except when |
||
|
Saves the layout with the extracted nets to the given library. By default, no save occurs, except when |
||
|
Saves the layout with the extracted nets to the given view. Has the same function as |
||
|
Ignores all layout in hierarchy levels below the given level. By default, all levels are extracted. |
||
|
Specifies the layers on which the extractor looks for text objects to name nets. Valid only with |
||
|
The extractor looks on all routing layers for text. For any text object found, the extractor searches the text object’s layer for any interconnect object whose boundary contains the text origin. If such a shape is found, that shape’s net will be named with the text value. |
||
|
Only the given layer will be searched for text objects. For any text object found, all routing layers are searched for an interconnect object whose boundary contains the text origin. The search order of the layers can be specified using - |
||
|
(Applies only when |
||
|
Names extracted nets using text objects in the layout. For a text object to name a net, the following criteria must be satisfied:
Nets not named with text or properties are named using a prefix and number (see |
||
|
If set to |
||
|
Saves layout with extracted nets to the given view. By default, no save occurs, except when |
||
|
Specifies the identifier for the window to work in. If this option is not specified, the view in the active window is used. |
||
Examples
The following command extracts all nets in the active cellview. The subcells of the active cellview are flattened. For nets with terminals in the extracted cells, all of the shapes in the nets will be added to a terminal pin. This allows the router the most freedom for finding connections.
extract_net_connectivity -all -flatten_to_depth 2 -pin_style whole_net
Using -net_name_property with Calibre Layout Netlist Names Files
When GDSII data from Mentor Graphics Calibre is translated to OpenAccess, properties are attached to the layout objects whose value is a net name or number.
For example, the OpenAccess property is named "STREAM PROPERTY #5", where the number 5 depends on which property number was used in Calibre for this purpose. The property value may be a name or number, indicating the net that the object belongs to. If you specify -net_name_property "STREAM PROPERTY #5", the extractor will name nets using the values of those properties.
You can also specify a Calibre Layout Netlist Names (LNN) file, if available, for mappings to more meaningful names. For example, the following represents a typical set of lines in a Calibre LNN file:
% register
1 vdd
2 reset
where % represents a cell name and the next lines show the mapping of a number to a net name.
The following command will name nets by querying the values of "STREAM PROPERTY #5" properties, then mapping those values to the cell name entries in Calibre LNN file registerl.lnn.
extract_net_connectivity -all -net_name_property "STREAM PROPERTY #5" \
-lnn_file registerl.lnn
Using the example entries given previously for the LNN file, for an object in the register cell with a "STREAM PROPERTY #5" property value of 1, the extractor will name its net vdd. An object with a "STREAM PROPERTY #5" property value of 2 will have its net named reset.
Related Topics
Return to top