techSetPrNonDefaultRule
techSetPrNonDefaultRule(
d_techID
t_constraintGroupName
l_layerConstsProps
l_viaDefNames
[ l_vias ]
)
=> t / nil
Description
Creates or updates the named constraint group with the specified place and route constraints specified technology database. ASCII technology file location: techLayerProperties section.
Arguments
|
d_techID
|
The database identifier of the technology database.
|
|
t_constraintGroupName
|
|
|
The name of the constraint group to create or update.
Valid values: Any unique string
|
|
l_layerConstsProps
|
|
|
A list of lists containing the constraints and layer properties. The list has the following syntax:
list ( list( tx_layer g_width g_space [ n_notch ] g_wireExt g_cap g_resistance [ g_edgecap ] ) … )
where,
-
tx_layer is the routing layer, stored in the named constraint group as follows:
interconnect( ( validLayers (layer) ) )
Valid values: The layer name or the layer number
|
|
|
-
g_width is the width, in user units, of a horizontal or vertical route segment on the specified layer, stored in the named constraint group as follows:
spacings( ( minWidth layer value) ) -
g_space is the space, in user units, between horizontal or vertical route segments on the specified layer, stored in the named constraint group as follows:
spacings( ( minSpacing layer value) ) -
n_notch is the notch spacing, in user units, allowed for the layer, stored in the named constraint group as follows:
spacings( ( minSameNetSpacing layer value) ) -
g_wireExt is the wire extension, in user units, for the layer, stored in the named constraint group as follows:
spacings( ( minWireExtension layer value) ) -
g_cap is the capacitance for the layer, stored in
techLayerProperties as areaCapacitance for the layer. -
g_resistance is the resistance for the layer, stored in
techLayerProperties as sheetResistance for the layer. -
g_edgecap is the edge capacitance for the layer, stored in
techLayerProperties as edgeCapacitance for the layer.
|
|
l_viaDefNames
|
A list of via definition names. The list has the following syntax:
list ( t_viaDefName … )
where, t_viaDefName is the via definition name, stored in the named constraint group as follows:
interconnect( validVias ( viaDefName ) )
|
|
l_vias
|
A list of lists of via data. The list has the following syntax:
[ list( list( tx_viaLayer1 tx_viaLayer2 n_minSpace g_stack ) … ) ]
where,
-
tx_viaLayer1 specifies the bottom routing layer for the via.
Valid values: The layer name, the layer number -
tx_viaLayer2 specifies the top routing layer for the via.
Valid values: The layer name, the layer number -
n_minSpace is the minimum spacing, in user units, allowed between via layers.
-
g_stack indicates whether you can stack the via layers.
Valid values: t (can be stacked), nil (cannot be stacked).
This via data is stored in the named constraint group as follows:
spacings(
( minSameNetSpacing layer1 layer2 value )
( stackable layer1 layer2 t | nil )
)
|
Value Returned
|
t
|
The constraint group was created or updated, along with the specified layer properties.
|
|
nil
|
The technology database does not exist.
|
Example
techSetPrNonDefaultRule(tfID "rule1" list(
list("metal1" 1.0 .3 .2 .1 20 .01 10)
)
list("M2_M1")
list(
list("metal1" "metal2" .5 t)
)
)
=> t
Creates or edits the constraint group rule1 in the technology database identified by tfID. The constraint group is as follows:
;( group [override] )
;( ----- ---------- )
( "rule1" nil
interconnect(
( validLayers (metal1 ) )
( validVias (M2_M1_via ) )
) ;interconnect
spacings(
( minWidth "metal1" 1 )
( minSpacing "metal1" 0.3 )
( minSameNetSpacing "metal1" 0.2 )
( minWireExtension "metal1" 0.1 )
( minSameNetSpacing "metal1" "metal2" 0.5 )
( stackable "metal1" "metal2" t )
) ;spacings
) ;rule1
Also adds the following to the techLayerProperties subsection of the layerDefinitions section of the technology database:
( areaCapacitanc metal1 20.000000 )
( edgeCapacitance metal1 10.000000 )
( sheetResistance metal1 0.010000 )
Return to top