Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
vdd
Abstract Package
vss
Power
Supply
vdd vss avd avs
As the design complexity increases, a detailed SPICE model can-
not be used to study substrate noise injected by the digital logic Switching noise
generator Digital Analog
into the analog circuit in a mixed-signal system. Hence a reduced Logic Circuit Affected by substrate noise
yet accurate model is needed. Previous work [7] shows that the
current drawn by the digital circuit from the power supply has a substrate
methodology (PIM) [7]. PDM simulates the circuit model Rnw Repi2 Repi2 Rnw
Substrate Network : N
on a sequence of input vectors, whereas PIM estimates the
Cnw Cnw
worst-case noise over all possible input vectors. PDM is
more accurate, but takes enormous CPU time. In contrast,Vin1 Cload Cload Vin2
PIM is faster, but less accurate. We propose new algorithms Vss Repi1 Rs1s2 Repi1 Vss
S1 S2
to embed our scheme in PDM and PIM.
Rpw Rpw
3. Package influences the substrate noise considerably. We in-
Repi3 Repi3
clude effect of package in our noise model by incorporating
a package model.
4. Results on several benchmarks show that the proposed
Local Vss
scheme is, on average, within 4.5% of the reference BSIM3- Rvia
based model for PDM and within 12% for PIM. In contrast,
Lvia
the previously proposed scheme of [7] has an average dis-
Package Model
crepancy of 176% with the reference model for PIM. RLC Mesh
Vss
The paper is organized as follows. Section 2 describes the prob-
lem addressed in this paper. The necessary background is pro-
vided in Section 3. Previous work on substrate noise analysis is Figure 2: Reference model for a design with only two inverters
summarized in Section 4. In Section 5, we present details of the
proposed scheme for accurately modeling the current drawn by
S1 S2 S3
a digital circuit from the power supply, using it to compute sub- U1 U2 U3
strate noise, and integrating the scheme into pattern-dependent and
pattern-independent SNA methodologies. Section 6 presents ex-
perimental evidence of the accuracy of our scheme. Conclusions U4 U5 U6
and directions for future work are presented in Section 7. S4 S5 S6
spice simulation
substrate voltage
The value of the resistance between two adjacent cells is directly Figure 5: Pattern-independent methodology (PIM) [7]
proportional to the distance between the two cells.
The reference model for a block consisting of two inverters is
shown in Figure 2. Although for simplicity we show NMOS and
PMOS transistors in each inverter, in the actual model these tran- ulated for each input vector. The gates that switch and their switch-
ing times are recorded. This information is used to derive the total
sistors are replaced by their BSIM3/BSIM4 models. The substrate
network for each inverter is also shown. The substrate network
current that the digital circuit draws from the power supply.
contains one substrate node referred to as BULK (nodes ½ and This current is, in turn, embedded in the reduced model, which is
¾ in Figure 2). The substrate noise is measured at the BULK simulated to yield the substrate noise waveform. One big problem
node. The PMOS transistor substrate node is connected to the with this methodology is that it may not capture the worst-case
BULK node through a series connection of a capacitor and noise pattern (when this pattern is not in the test-bench). Also, the
a resistor ¾ . represents the reverse-biased NWELL to approach is too CPU-intensive to be practical for a full-chip analy-
P- epi layer junction diode and ¾ represents the P- epi layer sis. Another problem with some of these approaches [3, 15] is that
resistance under the NWELL area. For an NMOS transistor, its they do not consider package inductance and the associated power
substrate node is connected to the BULK node through a resistor supply noise. Also, the library module characterization carried out
½ (the P- epi layer resistance under the transistor). The BULK in [3, 15] for the current waveform is not accurate, as it does not
nodes ½ and ¾ of the two inverters are connected with a resis- take into account the gate output load and input slew. As we will
tance ½ ¾ . If the substrate has low resistivity and the block show in Figures 7 and 8, the current depends strongly on these two
is small, the resistance between BULK nodes of adjacent cells is parameters. [4, 5] also do not consider the dependency of noise
negligible. In other words, the BULK nodes of the cells in a small on the load at each gate. In [8] a time-series divided parasitic
block are effectively the same electrical node. capacitance model is proposed for time-domain power supply cur-
Each block has local VDD and local VSS nodes, which are con- rent estimation. Pre-characterization technique for substrate noise
nected to the package model, which, in turn, is connected to the based on frequency domain analysis was presented in [12].
external VSS and VDD lines respectively. In the package model, [7] presented a pattern-independent methodology (Figure 5)
and
are the cumulative via resistance and inductance. suitable for chip-level designs that addresses some of these prob-
The RLC mesh model is derived from the power and ground layers lems. It does not use any test-bench and is much faster than the
in the package; the details can be found in [7]. pattern-dependent flows. It is also based on deriving a reduced
model of the digital part of the design. The basic reduced model
of [4] (Figure 6) is used. It contains only passive circuit elements.
4 Previous Work The presence of only passive elements and that too in a small num-
ber ensures that the circuit simulation is fast. The reduced model
A lot of research work has been done on modeling the substrate consists of two parts: gate model and package model. The gate
noise during the design phase. A common feature of almost all model represents the digital gates of the circuit or block under
the work is the use of a reduced model for the digital circuit. consideration. It contains a current source, internal capacitors and
Two different substrate analysis methodologies have been pro- resistors. Capacitors and resistors model transistors in the gates,
posed: pattern-dependent methodology (PDM) [3, 15, 6, 4, 5] and capacitance cells, and parasitics on the power/ground nets. In the
pattern-independent methodology (PIM) [7]. As shown in Figure gate model, and are the cumulative resistance and capac-
4, in PDM, we are given a digital gate-level circuit and a test-bench itance of transistors and wires in the block. is the average of
consisting of input vectors. Each module in the library is simulated pull-up and pull-down turn-on resistances of the transistors.
with SPICE for all possible inputs, and power supply current and is the sum of all gate capacitances and wire loads in the block.
substrate injection currents are extracted. The digital circuit is sim- and
correspond to the decoupling capacitance cells placed in
I(VDD) (mA)
Substrate S
0.03
Local Vdd
Cnw
0.02
Cm Cc
Cp 0.01
Rsub
Rm Rc
I 0
Vsub
-0.01
0 200 400 600 800 1000 1200
Local Vss
TIME (ps)
Vss 0.06
slew = 100ps
0.05 slew = 800ps
Figure 6: Reduced model of a digital circuit with package [4, 7] 0.04
I(VDD) (mA)
0.03
0.02
the vacant areas in the layout to guard against the voltage drop.
is the parasitic capacitance on power or ground nets.
is the 0.01
p-well substrate resistance. is the junction capacitance be- 0
tween n-well and the substrate. The current source, , models the -0.01
total current drawn by the gates in the block from the power sup- -0.02
ply. The gate model is attached to the package model at local VDD
-0.03
and VSS. The package model is the same as that in the reference 0 200 400 600 800 1000 1200
model (Section 3.1). The reduced model is enhanced by modeling
TIME (ps)
more accurately the components that affect substrate noise more,
such as the current . First, a static timing analysis (STA) tool
generates the timing information for each gate, such as the min- Figure 8: Sensitivity of w.r.t. input slew
imum and maximum rise/fall arrival and transition times. This,
along with the switching activity information, is used by the cur-
rent waveform generation algorithm to construct the current wave- do not result in an output transition are ignored. In this case, even
form used in the reduced model. The current drawn by a single
switching digital gate is modeled as VDD
, where is though the magnitude of the current through the gate may be neg-
the capacitive load driven by and is the transition time at the
ligible, the presence of inductance may inject substantial substrate
noise.
output of . Maximal sets of gates which can switch simultane- As a result, the discrepancy of LCB scheme vis-a-vis the refer-
ously are determined, leading to the computation of the maximum ence model can be up to 315% (Section 6).
current drawn from the power supply. This current is embedded
in the reduced model. The reduced model is simulated in SPICE
to yield the substrate noise voltage. Switching activities of various
blocks in the design are expected to be provided by the designer;
5 Module Current Characterization-
otherwise they may be deduced from a simulation test-bench. Let based (MCC) Scheme
us call the current modeling scheme of [7] load capacitance-based
(LCB). This scheme has several shortcomings. We propose an alternate scheme, the module current
1. It models the current for a switching cell as VDD / . characterization-based (MCC) scheme. In this scheme,
This is an approximation of the actual charging current
we pre-characterize each library module for the current
and can contribute significantly to the discrepancy. Also, does drawn from the power supply. This current is a function of the
not include the current through the NMOS when both NMOS and input value-pair vector , the input slew vector
, and the output
PMOS are conducting. load. Previous work that uses library module characterization
2. The current waveform is initially modeled as a rectangular pulse only considered the dependence of the current on the input value
with magnitude . Later, after the current for the entire design is pairs, but not on output load and input slews [3, 15, 4, 5].
derived, the discontinuities are smoothed by replacing steps with
ramps. The impact of this approximation on
noise could
be significant. 5.1 Accurate Module Current Model
3. LCB scheme only models switching at the output stage of a
To illustrate the dependence of the current drawn by a cell from the
cell. It ignores the current contribution of internal stages that are
switching. power supply on the output load , input slews , and
4. Also, substrate noise contribution due to switching inputs that input value-pair vector , we used an inverter from an industrial
0.1
that the time is discretized as well, and the current value is stored
0.08 for each discrete time point.
0.06
0.04
5.3 Current Waveform Generation for a Gate
0.02
0 Assume we have a gate in the design, driving a load . Let
be an instance of the library module . Let denote the input
-0.02
0 200 400 600 800 1000 1200 value-pair vector at time (with respect to the clock edge). For
TIME (ps)
simplicity, assume that only one input of makes a transition
with slew . This information can be obtained by logic simula-
Figure 9: Sensitivity of w.r.t. input transition. Curve tion and timing analysis. We wish to compute
,
is for rising input and curve for falling input. the current drawn by from VDD as a function of time.
Let lie between and ·½ . Let lie between
and ·½ . We derive
from the pre-computed
0.11 library. Figure 7 shows the dependence of for the and pre-stored waveforms
,
·½ ,
0.1
0.08
I(VDD) (mA)
0.04
0.02 SPICE
Run PrimeTime Library
To obtain pin/wire
0 loads
-0.02
0 0.05 0.1 0.15 0.2 no Library
Layout Info Available Characterization
TIME (ns)
yes
Estimate Size
2. Calculation of Cnw and Rsub values Characterization
3. Parasitic Power to Ground cap
node of :
, where and
are 4. Calculation of Decoupling caps
5. Obtain current waveform
Data
the effective resistance and inductance of the via and the package using module characterization data
(Figure 2). Note that can be computed if is known.
will be known if the input value pairs, input slews and out- no
put load of are known. The minimum and maximum input slew With Package
values are taken from the static timing analyzer. The output load yes
is known from the design and the layout. To determine the input Create Package
3 2.5
REF REF
MCC MCC
2.5 2
1.5
2
V(SBULK) (mV)
1
I(VDD) (mA)
1.5
0.5
1
0
0.5
-0.5
0 -1
-0.5 -1.5
4 4.2 4.4 4.6 4.8 5 4 4.2 4.4 4.6 4.8 5
TIME (ns) TIME (ns)
Figure 12: Current waveforms for 5-bit adder (c1): reference Figure 13: Substrate noise waveforms for 5-bit adder (c1): ref-
model vs. MCC reduced model erence model vs. MCC reduced model