Accurate Spice Netlist Extraction in STELLAR
Using New Substrate Partition Feature

Introduction

By default STELLAR calculates the capacitances between interconnect lines and the whole substrate. In certain conditions it may lead to some inaccuracies. For example STELLAR may calculate the capacitance of a poly line over an active area but this capacitance is already present in the spice compact model (Cox). Another example is that the substrate of a MOSFET transistor is usually connected to Vdd or Gnd depending on its polarity. So we may need to separate the Vdd areas from the grounded substrate. The aim of the substrate partition feature is to divide the substrate in different regions to calculate or not capacitances between interconnect lines and these different substrate regions. For example, we do not want to calculate the capacitance between a line over the substrate region shown in Figure 1.

Figure 1. Final mask layers defined in STELLAR.

 

STELLAR GUI

Techno file: layer setup
We will explain here how to define the mask layers shown in Figure 1. The NWELL, PACT, NACT regions are defined in the original gds file (Figure 2).

Figure 2. Original mask layers in the gds file. .

 

The other layers are defined in the technology panel of STELLAR

BULK is defined as a « Derived Layer » (Figure 3).

Figure 3. BULK derived layer definition.

 

SUBS is a key word in STELLAR which defined the total surface of the substrate (actually the smallest area including all the layout). The NWELL1, BULK1 are defined in the STELLAR GUI also as « Derived Layer » (Figure 4 and 5).

Figure 4. NWELL1 derived layer definition.

 

Figure 5. BULK1 derived layer definition.

 

By default STELLAR will name « Substrate » all the substrate region which does not belong to a defined region (Figure 1).

Techno file: connection setup
The connection is defined in the STELLAR techno panel. If there are layers that have to be connected to the substrate (CONT_BULK, CONT_WELL) then we have to use the connectivity panel as indicated in Figure 6.

Figure 6. Substrate connectivity.

 

Process Definition

The layers NWELL1, NBULK1 have to be defined in the Process panel of STELLAR using a specific key word: « Substrate_Partition » (Figure 7).

Figure 7. substrate partition definition.

 

From the « Substrate_Partition », STELLAR builder will generate a plane surface with a thickness=0.

Note that labels attach to the substrate_Partition is the name of that layer used in the process panel. For example in Figure 7 we use BULK1 as a substrate layer and STELLAR will output in the spice netlist the capacitance between BULK1 and poly.

Example
We take an example as shown below :

 

The capacitance calculation without the substrate partition gives:

Final capacitance report ( in F )- sorted

poly substrate 1.471416e-14

 

The capacitance calculation with the substrate partition gives:

Final capacitance report ( in F )- sorted

poly substrate 1.093147e-14
BULK1 poly 1.901284e-15
NWELL1 poly 1.881415e-15

 

Application: Hiding layer

We want to calculate capacitances using the substrate partition feature of STELLAR and compare to CLEVER for validation purpose. The layout used for this study is shown in Figure 8.

Figure 8. Layout under study.

 

There are 3 mask layers identified in the STELLAR techno panel (Figure 9). We want to calculate the capacitance between the Metal1 plate and the substrate without taking into account the overlap capacitance between the Metal1 plate and substrate. Note that layer 2, named hiding_layer, was specifically design in order to define the substrate partition. Indeed GND layer is defined in the techno panel (Figure 9) as a derived layer: GND=substrate - hiding_layer and will be used in the process panel as a substrate_Partition (Figure 10).

Figure 9. Layer setup definition.

 

Figure 10. Process panel showing the use of GND layer as a substrate partition layer type.

Note that from the « Substrate_Layer », (GND) STELLAR builder will generate a plane surface with a thickness=0 as shown in Figure 11.

Figure 11. 3D structure without oxide.

 

The capacitance calculation with the substrate partition gives:

Final capacitance report ( in F )- sorted

plate GND 4.81e-15

 

The capacitance calculation without the substrate partition gives:

Final capacitance report ( in F )- sorted

plate substrate 3e-14

 

In this last case the overlap capacitance between the plate and the substrate was calculated increasing significantly the overall capacitance.

 

Comparison with CLEVER

We wanted to compare STELLAR results with CLEVER for validation purpose. For that we obviously used the same layout (Figure 8) and the same process. What we did in CLEVER to mimic the substrate partition feature used in STELLAR is shown in Figure 12. We use the metal1 mask to define a region in the substrate that we fill with a dielectric and on top of that we set a very low permittivity for this dielectric. The resulting 3D structure is shown in Figure 13.

The capacitance calculation for the standard structure gives:

Final capacitance report ( in F )- sorted

plate substrate 3.08e-14

The capacitance calculation in CLEVER which mimic the STELLAR substrate partition:

Final capacitance report ( in F )- sorted

plate GND 4.59e-15

The difference between CLEVER and STELLAR results are less than 5%.

 

Conclusion

We have shown that STELLAR is able to define different substrate regions. This feature is useful to avoid the calculation of some capacitances like Cox already present in the spice compact model or to separate the Vdd areas from the grounded substrate.

 

Download PDF of this article