validVias
interconnect(
( validVias ( t_viaName … ))
( validVias
(
(( "width" nil nil "width" nil nil )
'viaLayerDirection ((( "viaLayerDirection" )) (g_dirTable))
l_default
)
(g_table)
)
)
) ;interconnect
Specifies a list of vias to be used to connect two wires, on two different layers, with width in a certain width range. Vias and via variants not listed by this constraint may not be recognized as valid routing vias. For more information about how to define vias and via variants, see Via Definitions in Virtuoso® Technology Data ASCII Files Reference.
Values
|
t_viaName
|
The names of valid routing vias or via variants.
|
|
"width" nil nil "width" nil nil
|
|
|
This identifies the index for table.
|
|
g_table
|
The via or via variant to be used to connect wires on different layers, depending on the width of the wires.
The table has the following format:
(f_width1 f_width2) (t_viaName …)
where,
-
f_width1 is the width of the wire on the bottom layer (layer1).
-
f_width2 is width of the wire on the top layer (layer2).
-
t_viaName is the via or via variant that can be used to connect the two wires. Valid values include the name of a via or a via variant or
nil.
Type: A 2-D table specifying width and via or via variant names
|
Parameters
|
'viaLayerDirection
|
A pair of direction values corresponding to each entry in table. The first direction value applies to layer1 and the second direction applies layer2 in the via definition.
The table (dirTable) has the following format:
x_index ((t_direction1 t_direction2) (t_direction1 t_direction2) …)
where,
-
index is a positive integer value starting at
0. -
direction1 and direction2 can be
horizontal or vertical.
Type: A 1-D table specifying integer and string values
|
|
l_default
|
The vias to be used when no table entry applies.
|
Examples
Example 1: validVias
interconnect(
( validVias ("via2" "via3" "via4" "via5" "via2Variant1") )
) ;interconnect
Example 2: validVias (2-D table)
interconnect(
( validVias
(
(( "width" nil nil "width" nil nil)
(via2Variant1 via2)
)
(
(0.6 0.7) (via2 via2Variant1)
(0.8 0.9) (via3)
)
)
)
) ;interconnect
Example 3: validVias with viaLayerDirection
interconnect(
( validVias
(
(( "width" nil nil "width" nil nil)
'viaLayerDirection ( (( "viaLayerDirection" ))
( 0 (("horizontal" "vertical") ("horizontal" "vertical"))
1 nil
2 nil
3 nil
)
)
(
(0.72 4.5 ) (M2_M1_FP M3_M2_FP)
(0.72 4.501) nil
(0.721 4.5 ) nil
(0.721 4.501) nil
)
)
)
) ;interconnect
Return to top