Product Documentation
Virtuoso Layout Suite XL: Connectivity Driven Editing User Guide
Product Version IC23.1, November 2023

viaDefs

Vias—both standard and custom—are defined using the ViaDefs section of the technology file.

The connectivity extractor derives the following information from via definitions.

Via Layer Connectivity

Via layer connectivity is defined in terms of:

Cut Layer Connectivity

Cut layers always connect to the associated pair of layers. For example, for the following via definition:

(M2_M1 M2 M1 ("V1" 0.1 0.1) (1 1 (0.1 0.1))
(0.04 0.0) (0.02 0.02) (0.0 0.0) (0.0 0.0) (0.0 0.0))

Layout XL derives the following connectivity stack:

 M2 -> V1 -> M1

Local Interconnect Connectivity

Local interconnect layers, which are contact-less metal layers, connect directly to the associated layer. For example, for the following via definition:

(LI_POLY LI POLY ("LI" 0.1 0.1) (1 1 (0.1 0.1))
(0.04 0.0) (0.02 0.02) (0.0 0.0) (0.0 0.0) (0.0 0.0))

Layout XL derives the following connectivity stack:

 LI -> POLY

In this example, the via definition, LI_POLY is included in the technology file to properly define the connectivity stack.

Substrate Layer Connectivity

A substrate via can be defined using the well/substrate construct in the standardViaDefinition, such as in the example below:

standardViaDefs(
;(viaDefName layer1 layer2 (cutLayer cutWidth cutHeight
;[resistancePerCut])
;(cutRows cutCol (cutSpace))
;(layer1Enc) (layer2Enc);(layer1Offset) (layer2Offset) (origOffset)
;[implant1 (implant1Enc) [implant2 (implant2Enc)]])
;[well/substrate]]])
);standardViaDefs

The well/substrate construct can be defined using the keyword substrate or a physical well layer name to allow the connectivity extractor to connect to these using the diffusion defined in the viaDef. When the function of the diffusion is defined as diff instead of ndiff or pdiff, the connection is made through the implant defined in the viaDef.

Implant Layer Connectivity

Implant layers are currently derived only from standardViaDefs; for example,

standardViaDefs(
(M1_NWELL Oxide Metal1 ("Cont" 0.12 0.12)
(1 1 (0.16 0.16))
(0.07 0.07) (0.06 0.06) (0.0 0.0) (0.0 0.0) (0.0 0.0)
Nimp (0.15 0.15) Nwell (0.24 0.24)S)
);standardViaDefs

The implant layers are Nimp and Nwell. Often the second implant is used to target a well layer, not as a real implant definition. You can also use a well/substrate construct in such situations to avoid using the second implant. For more information on defining a well/substrate construct, see Substrate Layer Connectivity.

In the example shown above,

In both the cases, a cut shape will connect to an oxide shape only if there is an implant shape of n-type or a p-type available.

Some manufacturing processes define diffusion layers that are implicitly implanted by an n-type or p-type material. This is the case when the layer function of the diffusion layer is set to ndiff or pdiff in the functions table in the technology file. In this case, no implant shapes are required. The foundry uses the diffusion layer to create the masks both for diffusion and for n- or p-type implants. The layer interconnection stack is typically defined as:
Metal1 -> Cont -> Ndiff -> Nwell or N-substrate
Metal1 -> Cont -> Pdiff -> Pwell or P-substrate
Some manufacturing processes define only one diffusion layer and one implant layer, for example a, n-type diffusion and a p-type implant. In that case, the implant layer has precedence over the implicitly implanted diffusion:
Metal1 -> Cont -> Ndiff -> Nwell or N-substrate
Metal1 -> Cont -> ( Ndiff & Pimp ) -> Pwell or P-substrate

Related Topics

extractConsiderAllCutLayersInVias


Return to top
 ⠀
X