IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 3, MARCH 1999
301
Modeling Digital Substrate Noise Injection
in Mixed-Signal IC’s
Edoardo Charbon, Member, IEEE, Paolo Miliozzi, Luca P. Carloni, Senior Member, IEEE, Alberto Ferrari,
and Alberto Sangiovanni-Vincentelli, Fellow, IEEE
Abstract— Techniques are presented to compactly represent
substrate noise currents injected by digital networks. Using
device-level simulation, every gate in a given library is modeled
by means of the signal waveform it injects into the substrate,
depending on its input transition scheme. For a given sequence of
input vectors, the switching activity of every node in the Boolean
network is computed. Assuming that technology mapping has
been performed, each node corresponds to a gate in the library,
hence, to a specific injection waveform. The noise contribution
of each node is computed by convolving its switching activity
with the associated injection waveforms. The total injected
noise for the digital block is then obtained by summing all the
noise contributions in the circuit. The resulting injected noise
can be viewed as a random process, whose power spectrum is
computed using standard signal processing techniques. A study
was performed on a number of standard benchmark circuits
to verify the validity of the assumptions and to measure the
accuracy of the obtained power spectra.
Index Terms— Floorplanning, high-performance, mismatch,
noise, parasitics, placement.
I. INTRODUCTION
I
N the design of today’s very large scale integration (VLSI)
integrated circuits (IC’s) noise immunity is becoming a major concern at all production levels. Increased chip complexity
and speed in general tend to make the circuit more sensitive
to both internal and external noise.
Feature miniaturization has been mainly responsible for
dramatically reducing the distance between high-frequency
noise sources and sensitive devices, the substrate being a
major carrier of this type of spurious signals. The problem
is particularly acute in mixed-signal circuits, where signals of
different nature and strength interfere, thus affecting overall
performance. Heavily over-designed structures are generally
used to alleviate the problem, thus limiting the positive impact
of advanced technologies. Furthermore, with the emergence of
submicron technologies, the problem of high-speed substrate
noise interference may compromise performance at the nomiManuscript received January 30, 1998; revised June 8, 1998. This paper
was recommended by Associate Editor D. Ling.
E. Charbon is with Cadence Design Systems, Inc., San Jose, CA 95134
USA (e-mail: charbon@cadence.com).
P. Miliozzi is with Conexant Systems, Newport Beach, CA 92660 USA.
L. P. Carloni and A. Sangiovanni-Vincentelli are with the University of
California at Berkeley, Berkeley, CA 94720 USA.
A. Ferrari is with PARADES Labs, 00186 Rome, Italy.
Publisher Item Identifier S 0278-0070(99)01595-X.
nal frequencies for which the circuits were designed. These are
the main reasons why substrate modeling has recently received
renewed attention from designers attempting to integrate radiofrequency analog and baseband digital circuitry on a single
chip.
A signal transition occurring in a typical logic gate causes
a spike of current to be absorbed from the supply and to
charge a load. A similar spike traveling toward ground is
generated when the load is discharged. A significant portion
of transitional current is discharged to ground through direct
feedthrough. Spurious currents can also be injected directly
into the substrate through various mechanisms [1]. The cumulative effect of spurious microcurrents absorbed/discharged
by switching gates, is referred to as switching noise. Switching noise can quickly travel through interconnect coupling,
power/ground busses and substrate, to be picked up by sensitive devices through capacitive coupling and body effect.
Any given circuit injects a unique current waveform into
the substrate as a direct consequence of switching noise. Such
waveform, known as substrate noise signature, is dependent
on the circuit implementation, technology and input vector
set. Evaluating accurate substrate noise signatures is useful to
speed up the estimation of the impact of physical design on
performance. Such estimates are often critical during architecture definition, floorplan and placement phases, where they are
used to drive a number of design optimizers. Unfortunately,
the level of complexity reached by today’s digital circuits
has made exact waveform characterizations impractical. To
overcome the complexity problem, substrate noise signatures
are often approximated by a single Gaussian white or pink
noise source. The underlying assumption is that the global
switching activity of the circuit is uniformly distributed over a
large section of the spectrum. Substrate noise signatures have
also been modeled in the literature [2], [3] as a capacitively
and/or resistively coupled current or voltage generator whose
waveform is derived from the circuit’s global clock. The
accuracy of these models is often the main limiting factor
in the circuit performance. Simple approximations for injected
noise often capture only a relatively small portion of the entire
noise energy spectrum. Thus, potentially detrimental noise
components may be underestimated.
In this paper a methodology is proposed to accurately
evaluate substrate noise signatures in arbitrary circuits. The
restriction to substrate noise is by no means binding and a
similar scheme can be applied to compute supply and ground
0278–0070/99$10.00 1999 IEEE
302
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 3, MARCH 1999
Fig. 1. Flow diagram of SUBWAVE.
ripple noise. The methodology exploits the fact that any given
logic gate injects a particular signal into the substrate through
capacitive coupling and impact ionization. Such signal, known
as substrate injection pattern, is a unique fingerprint of gate,
input transition and technology. It can be accurately calculated
using standard device modeling and circuit simulation. The
substrate noise signature of the entire circuit is then evaluated
using the substrate injection patterns and a precise analysis of
the switching activity in the circuit’s internal nodes. Switching activities are computed from user-specified input vector
sequences. No restriction has been imposed on the selection
of input vectors. Hence, the user can simulate a realistic load
or perform a worst-/best-case analysis, exploring alternative
scenarios of operation.
The methodology, called SUBWAVE [4], consists of the following phases. First, the substrate injection patterns associated
with all the gates in the library are accurately simulated using
detailed extraction. Second, using event-driven simulation
techniques the switching activity of the entire Boolean network
is computed, thus producing a transition trace for each node
of the network. Third, assuming that technology mapping
has been performed, every node corresponds to the output
of a gate, hence, the convolution of the nodal trace with
the substrate injection pattern of the gate yields its substrate
noise contribution. The substrate noise signature is computed
as the sum of the contributions of all the nodes in the network.
Fourth, the energy spectrum of the substrate noise signature is
estimated using high-order autoregressive process modeling.
Fig. 1 shows the flow of SUBWAVE.
The advantages of this procedure are threefold. First, the
model of substrate noise is compact and can be translated into
a single voltage source for any given digital circuit, hence,
it can be reused in future redesign cycles. Second, glitch
energy is completely captured by the power spectrum and,
hence, even high-frequency power spikes can be accurately
evaluated for performance degradation analysis. Third, the
model computation is inherently fast due to the efficiency of
event-driven simulation.
The obtained models are useful in several design and
optimization processes. During floorplanning, specific wellisolated areas can be allocated to noisy circuits. Minimum
distance requirements can be computed based on the overall
spectral energy produced by such circuits and the maximum
levels of spurious energy tolerated by sensitive circuits [5].
When space is not available, specific guard rings can be designed to block those frequencies in the spectrum which could
interfere with the operation of surrounding circuits. The design
of guard rings and other blockage devices can be tuned to work
optimally for problematic noise spectra. Rapid characterization
of injected noise can be used to test whether redesigned logic
blocks are compatible with existing circuitry or if special measures—including further redesign—must be taken. Similarly,
spectral characterization of substrate noise could be provided
as part of intellectual property interface description, along with
the block basic functionality, to reduce the risk of system
failure due to unexpected second-order effects.
The efficient generation of substrate noise signature models
can be used to drive logic synthesis in circuits which have a
limitation in the amount of noise they can produce. A model
of the performance degradation due to the effects of noise at
specific frequencies can be embedded in the synthesis tool
or used to assist a designer. Electromagnetic compatibility
requirements for block and systems can be tested at or before
actual integration, or a posteriori to verify existing problems
and causes. Finally, substrate noise signatures can be used as
fingerprints for fault analysis and diagnosis.
The paper is organized as follows. In Section II techniques
are described for characterizing substrate injection patterns
associated with the gates used in the circuit. Section III
outlines the evaluation of the switching activity generated by
the digital circuit. In Section IV the substrate noise signature is
evaluated in time-domain and its power spectrum is estimated
using autoregressive process modeling. Finally, in Section V a
number of experiments on industrial benchmarks is presented
and discussed.
II. SUBSTRATE INJECTION PATTERN EVALUATION
Noise injection is caused at the device level by either impact
ionization or drain/source-substrate junctions or both. Reversebiased
junctions form nonlinear capacitances through
which noise can easily propagate to substrate. Impact ionization is a highly localized phenomenon. A current is generated
in the drain-channel-substrate interface due to the high electric
fields present in that region. In submicron technologies, short
channels and reduced oxide thicknesses cause electric fields to
exceed the electric field’s critical value, thus resulting in large
electron-hole pair generation.
Over 99% of all spurious substrate currents are injected
during CMOS gate transitions. Generally, at least one type
of MOSFET can be isolated effectively using individual or
group wells, thus providing an adequate reduction of substrate
coupling. As a consequence, for a particular technology,
only one type of MOSFET is responsible for most of the
noise injected into the substrate. For this reason, in what
follows, only models associated with -type MOSFET’s were
considered. Similar considerations can be extended to -type
devices.
A. Impact Ionization
Electron-hole pairs are generated in the pinch-off region,
when the electric field exceeds a given threshold. The excess
CHARBON et al.: MODELING DIGITAL SUBSTRATE NOISE INJECTION IN MIXED-SIGNAL IC’S
303
(a)
(b)
Fig. 3. Typical substrate doping profiles: (a) high resistivity; (b) low resistivity.
(a)
(a)
(b)
Fig. 4. Current flow lines (low-resistivity substrate): (a) with a distant
substrate contact; (b) with a near substrate contact.
(b)
Fig. 2. (a) Impact ionization current density versus Vgs @Vds = 5 V
simulated using PISCES; (b) family of curves obtained from HSPICE simulations
while fitting parameter C2 .
holes are collected in the region of substrate under the device
and from there they are transported throughout the chip. The
total current produced by impact ionization is evaluated as
(1)
,
,
, and
are source electric field, maxwhere
imum electric field, local electric field and drain current,
and
are material related coefrespectively. Constants
ficients. Formulae relating these parameters to measurable
quantities and the derivation of (1) can be found in [6]. Since
integral (1) can be approximated to
(2)
, and
are effective channel length, drainwhere ,
and
source voltage and saturation voltage, respectively.
are material related coefficients [6].
Equation (2) is used by most MOSFET models to represent
impact ionization currents [7]. Simulations of industrial device
structures were performed using the 2-D drift-diffusion device
simulator PISCES [8]. Using HSPICE and standard curve-fitting
techniques, it was possible to fit (2) to the measured data
and
. Fig. 2(a) depicts the
by adjusting parameters
impact ionization current density as it results from a PISCES
simulation. Fig. 2(b) shows a family of curves obtained from
.
HSPICE simulations by varying fitting parameter
B. Noise Source Analysis
There exist two main substrate types: one referred to as
high-resistivity and the other as low-resistivity substrate. Fig. 3
shows examples of such types. In general, the first substrate
type is composed of a uniformly doped layer with a resistivity
coefficient of 20–50 cm. The second type consists of a thick,
m,
10–15 cm)
high-resistivity epitaxial layer (
m
cm). Low-resistivity
and a low-resistivity bulk (
substrates have been widely adopted for desirable latch-up
suppression properties [6]. In general, it has been found that
at low and medium frequencies, typically less than 5 GHz,
substrates show a resistive behavior. At higher frequencies, the
transport patterns are too complex to be accurately modeled
using resistive or resistive-capacitive meshes [1].
In high-resistivity substrates, distance and guard rings are
effective attenuation techniques to reduce signal interaction.
In low-resistivity substrates, the current tends to flow through
low-impedance paths located deep in the chip’s lower layers,
as shown in Fig. 4(a). As a result, guard rings are generally
304
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 3, MARCH 1999
Fig. 5. SPICE simulations of low-to-high and high-to-low transitions in an inverter for different rising and falling times of the input signal for 0.6
m and 0.8 m technologies.
ineffective in blocking substrate currents. Fig. 4(b) on the
contrary shows a substrate section with a more even current
distribution across the top layers. In low-resistivity substrates
the use of a very low impedance backplate contact is often
preferred. In particular, the inductance of the backplate conductive glue and of the bond wires must be controlled very
accurately.
To analyze the amount of substrate current generated by
switching gates, consider a simple inverter. Impact ionization
induced currents are always positive since they are generated
by hole injection. As a result, during both transitions (high-tolow and low-to-high) a positive pulse of current is generated
in the substrate (see Fig. 5). The power spectrum associated
with this type of signals accounts for low-frequency and DC
components. Injection due to capacitive coupling provides positive and negative contributions, thus resulting in a reciprocal
cancellation, on average, when the two transitions are equally
probable. The injection waveform due to impact ionization
has the following features:
corresponding to its maximum depends on the
• time
rising and falling time of the input signal;
of the pulse depends on the rising
• duration in time
and falling time of the input signal;
• the maximum shown from DC simulations (see Fig. 2),
which corresponds to the value obtained by (2), is an
upper bound for the maximum during a transient.
These characteristics are shown in Fig. 5 where different rising
and falling times for the input signal have been chosen. The
positive pulse due to impact ionization has approximately the
same shape in all cases and only its duration is different
Fig. 6. Distribution of analog and digital sections throughout a mixed-signal
chip.
(see different time scales). Capacitive coupling due to drainsubstrate and source-substrate reverse-biased junctions begins
to dominate in rising/falling times of less than 10 ns.
C. Noise Source Partitioning
The gate count of realistic digital circuits is typically in
the millions. A complete extraction and detailed simulation
of each individual substrate noise injector is impractical. If
the substrate underlying the circuit can be approximated to be
equipotential, then simultaneous substrate currents injected in
different locations contribute in a cumulative fashion to the
spurious potential sensed remotely.
CHARBON et al.: MODELING DIGITAL SUBSTRATE NOISE INJECTION IN MIXED-SIGNAL IC’S
305
Fig. 7. Substrate injection patterns of the nand gate for all possible input transitions.
Definition 1: Let be a set of all the gates producing an
identical substrate injection pattern for a given input transition
scheme. Call injection class and let
be the substrate
be the collection of
injection pattern of . Moreover, let
all such classes.
Not only do some of the injection patterns depend on the
input transition scheme but also on the load configuration.
This problem can be overcome by parametrizing each injection
pattern with respect to the load value.
Definition 2: Let
be the physical location of the critical
analog block where the substrate noise signature of the digital
block is sensed.
In [1] it was observed that, in the case of low-resistivity
substrates, the relative location of different sections of the
circuit is not critical within certain spatial limits. Hence, the
following assumption seems reasonable.
Assumption 1: Let
be far enough from the logic block.
Then, the propagation time of substrate injection patterns
between each source and the sensing point can be assumed
to be approximately the same.
As a direct consequence of Assumption 1, a logic circuit
can be thought as being a collection of clusters of nodes of
the Boolean network sharing the same injection characteristics,
namely identical injection class and simultaneous injection
event. Due to this fact, a partitioning based on time rather than
space is conceivable. If complete spatial independence cannot
be assumed (as in high-resistivity substrates), a partitioning
based on both space and time is needed. In this case, injection classes will encompass exclusively those simultaneously
switching gates which are placed within well-defined boundaries. The size and location of such boundaries are the result
of tradeoffs between computation time and accuracy. In the
remainder of this paper, we will suppose that Assumption 1
is satisfied.
Assumption 2: Let us model a cluster of simultaneously
switching gates associated with injection class as a single
equivalent noise source applied through a single contact of
appropriate dimensions.
In most synchronous circuits, a large portion of signals
switch at or near clock edges. The remaining signals, switching
at later times in combinatorial blocks, are spread throughout
the clock cycle. In this way the injection activity of the chip
can be represented by a few hundred equivalent noise sources
which can be easily simulated with SPICE.
types
As an illustration, assume that a circuit consists of
substrate injection patterns,
of gates. If each gate produces
depending on its input, then, under Assumption 2, the total
.
number of classes for that circuit will be
Suppose now that all the gates associated with a given class are
clustered in a specific chip location (bubble in Fig. 6). Then,
equivalent noise sources need be used to properly
only
model the circuit’s substrate injection signature.
To clarify how substrate injection patterns are derived, let us
consider the nand gate shown in Fig. 7. The substrate terminals
of the nand’s NMOS transistors are connected to ground as
is measured
shown in Fig. 7. The total substrate current
on that net. The resulting waveform is shown in the figure
for raising, falling and mixed inputs. In this case, only two
classes are necessary to capture the behavior of each gate with
respect to substrate injection, as only two types of pulses are
injected for several input transitions. In fact, it can be shown
that injections only depend on output transitions (rise and fall).
III. COMPUTING SWITCHING ACTIVITIES
Several tools have been proposed for fast evaluation of
switching activity (see [9] for a review). Event-driven simulation was chosen for its efficiency and its ability of detecting
switching signals originated from logic glitches. The core
algorithm of the simulator is described in Fig. 8, the notation
is similar to that used in [10].
Let us assume that the Boolean network associated with
the logic circuit is mapped onto a specific technology, call
Mapped Network the resulting network. Let us define sequence Input Vectors, as the input to the simulator. The
simulator produces table Gate Table which associates each
306
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 3, MARCH 1999
Fig. 8. Event-driven logic simulator.
injection class with the corresponding switching activity. Let
be the set of nodes of the Boolean network,
the logic
the logic variable
function associated with node , and
associated with the output of . Let
denote the primary
the set of fan-out nodes of
and
input set,
the set of transitive fan-in of
i.e.,
directed path from
to
Finally, let the ordered set
contain the elements of
ordered in such a way that every
node appears somewhere after all of its transitive fan-in nodes
(Depth-First Order from the outputs).
For simplicity, but without loss of generality, assume that
the Mapped Network consists only of one- or two-input
logic gates. Furthermore, assume that for each gate , only
two injection classes, one for the rise and one for the fall
transition are necessary to fully describe the injection patterns.
SIMULATE performs internally an event-driven gate level simulation based on a pure bounded wire delay model [11]. All the
input vectors are processed sequentially as if they were read
from an external register file controlled by a clock having
a clock period longer than the longest delay in the circuit
(critical path).
changes its output at , each fan-out of
Suppose node
is marked by Mark
, with
wire delay
, so
that when SIMULATE processes the instant , IsMarked
returns a true value and function
is evaluated by
. SimulateNode
computes the
SimulateNode
at instant , detecting if an event, i.e.,
output for node
a logic transition, has occurred, while Event
returns
at the
its type. When an event is detected for a node
instant , SIMULATE calls UpdateGateTable to update the
within the Table Gate Table. At
data associated to
the end of the simulation Gate Table contains an entry
for each injection class with a complete trace of its rate of
occurrence. Furthermore SIMULATE allows the user to scale
such that
,
its time granularity by a parameter
where
is the default minimum time step of the simulator.
This feature is necessary to synchronize the output to the time
steps of a SPICE simulation.
In an event-driven simulation each change in the output of a
gate in the circuit produces as many events as the fanout of
. Each event refers to a fanout gate and it is stored in the
Event Queue together with the time at which it is scheduled.
At time the event is processed forcing a logic evaluation
changes, new events are generated and inserted in
of . If
the queue. All the scheduled events are processed in sequence
until the queue becomes empty, then a new input vector is
read. The time associated with an event is determined by the
delay model which is adopted. The pure bounded wire delay
model implies that there is exactly one delay element per gate
input. Hence, since a gate has generally more than one input,
we may have more than one evaluation per gate during a clock
cycle: in general, the gate output may oscillate between the two
logic values before settling to the correct value for the current
cycle. This model allows us to consider implicitly and with
good accuracy every possible spurious transition (glitch) in
the circuit. The level of accuracy is bounded by the precision
of the characterization of the cell library and, for example, can
be improved by accounting for interconnect delay.
For each vector in the input sequence SIMULATE determines
the output vector together with the traces of values associated
to the output of each gate
. Such data are obtained by
for each node
after
evaluating the Boolean equation
considering the delay elements associated with the particular
instance of
. Two injection classes are associated to a
particular gate and the transition activities of all the nodes
being mapped with each gate are cumulated to produce the
trace for the corresponding injection class. This operation is
automatically performed by SIMULATE and results in the loss
of the relative location of the transition occurrence. This fact
is of no concern under the assumptions of Section II.
SIMULATE introduces a discretization of time based on the
delay information available from the gate library and the
be the instant at which the
network topology. Let
simulation begins,
the delay of the longest path in
the number of input vectors. Then, the
the network, and
simulation interval is
, with
.
Moreover, while processing the th vector, only subinterval
, where
and
,
has to be considered.
Fig. 9 illustrates the trace computation with an example
consisting of two injection classes. The corresponding Boolean
network has four nodes: three are instances of the AND-gate
and one of the OR-gate. For simplicity, we assume a unit
wire delay model and we observe the following transition at
the primary inputs:
.
It can be proven that, as the example shows, the delay of the
critical path of the circuit is 4 time units, therefore all the nodes
and
at the output of the gates settle at time . The traces
are evaluated by cumulating the transition activity at the
output of nodes
for the AND gate, and , for the
OR gate. Notice that at time in trace
a double falling
transition occurs. This is due to the fact that the waveforms of
and
have a falling edge. On the contrary, at time
both
a single raising transition occurs, since
and
have a
has a falling edge.
raising edge while
Gate Table contains a complete trace of the switching
activity of each injection class within the digital circuit,
for the overall simulation time interval . This trace is
denominated as
. Each injection class is also associated
CHARBON et al.: MODELING DIGITAL SUBSTRATE NOISE INJECTION IN MIXED-SIGNAL IC’S
with
307
is computed as
where
is the trace of the cumulative switching activity
Injected
of all the nodes in the network associated with
noise
can be viewed as the response of a linear
. The trace
shift-invariant system with impulse response
can be interpreted as its input. Due to the time-invariance
of the circuit, note that the statement
ergodic random process
is necessarily true. Summing all
as
substrate noise signature
Fig. 9. Example of trace computation.
with a unique substrate injection pattern
stored in
Wave Table. Both signals are used for the computation
of the substrate noise signature of the logic.
IV. NOISE SPECTRAL ESTIMATION
To make our observation of the injected noise more realistic
at the macroscopic level, we may select one or more sequences
derived from either digital simulations or measurements coming from a digital analyzer, thus allowing the user to consider
scenarios of interest for a particular application.
Note that in general the digital input bit sequences are not
known a priori, in fact they can be video or audio data streams,
for this reason they are normally modeled as random processes,
called input processes. The digital input bit sequences, given
by simulations or measurements, are realizations of the input
processes and are used to compute the digital activity present
at every node of the circuit in a well-defined time window and
with a predefined resolution, as outlined in Section III.
It is reasonable to assume that input processes be ergodic. It
is, however, not required—hence not assumed—that the processes be wide-sense stationary, cyclo-stationary, nor quasistationary [12], [13]. Assuming that the digital circuit be fully
specified and deterministic, from the statistical characteristics
of the input processes one could analytically compute the
statistics of the substrate noise. However this is obviously a
tedious process, in fact, due to the complexity of the circuit,
the final expression could be unmanageable. Moreover, any
simplification should not exploit the statistical properties of
the input process.
A valid alternative is the conversion of the substrate
noise signature in the frequency domain. Consider injection
. Using the manipulations of Section II one
class
associated with
obtains the substrate injection pattern
. By Assumption 2, the injected noise
associated
over set
one obtains
The frequency domain estimation of the substrate noise signacan be computed using a variety of techniques.
ture
In order to capture the characteristics of substrate noise,
spectral estimation methods based on direct application of the
discrete Fourier transform (DFT) should be avoided, while non
parametric methods, like periodograms, do not characterize
the noise spectrum in a compact form. For these reasons,
we decided to adopt a parametric method. In this case,
is given and, based on the observed
a model for
sequence, identified. Suppose the input processes are stationary
and zero-mean (the extension to the quasi-stationary case is
straightforward), since the circuit is time invariant we can
apply Wold’s theorem [14]. The substrate noise signature can
be represented as the output of a stable, causal, shift-invariant
linear filter with a white noise input. For computational
-pole transfer function for the
efficiency, we adopted an
linear filter, giving an th-order autoregressive (AR) model
of the noise process. The AR model of the filter is
ARN
where
are the filter coefficients. Hence, the
spectrum of the output zero-mean noise sequence takes the
following form
where
is the variance of the white noise. The estimation
process consists of selecting the correct order of the AR model
(i.e., ) and estimating the filter coefficients and the power
.
of the white noise
The AR model condenses the characteristic of the injection
and the statistic of the input process
patterns
for all injection classes. Since the former is modeled as a
response of a linear shift-invariant system, if the input process
is well modeled by an AR process (i.e., audio data stream),
this approach to the noise estimation can be very accurate.
Unlike periodogram based methods, the AR spectral estimation is consistent, i.e., an increase in the number of data
samples results in the decrease of the variance of the estimator
308
Fig. 10.
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 3, MARCH 1999
Noise spectral estimation scheme.
at any given frequency. Hence, in our case the accuracy of the
noise estimation monotonically grows with the length of the
simulation. Furthermore, the estimator does not suffer from
resolution limitations since no signal windowing is used, and
long simulations give very good noise spectral estimation.
The Yule-Walker method [15] has been used for estimating
in the AR model. This method computes
the parameters
the AR parameters from the autocorrelation matrix using the
Levinson–Durbin recursion [16]. The selection of , i.e., the
order of the model, has been done using subjective judgement
since the standard criteria proposed did not give satisfactory
results, as shown in [16]. Nevertheless, this problem is not
crucial, since it is normally driven by the noise information
that the designer wishes to consider. We view this process as
one based on successive refinements. At first, few parameters
are computed (low ) in order to have a rough noise spectral
estimation, then, based on the incremental details of the noise
spectrum, additional coefficients (high ) are estimated from
the same simulation data. The method is illustrated in Fig. 10.
V. RESULTS
The methodology proposed in this paper is supported by
several tools which implement the various functions described
running under
in Fig. 1. The tools are implemented in C/C
the UNIX operating system. Fig. 11 shows the flow adopted
to test the methodology. A Boolean network was mapped
onto the selected technology using the logic synthesis tool
SIS [17]. SUBWAVE was then run on the mapped network
using the substrate injection patterns stored in Wave Table to
obtain the substrate noise signature as outlined in Sections III
and IV. Wave Table had been previously computed for the
was established
given technology. A single sensing node
at a reasonable distance from the logic circuit, to ensure
that Assumption 2 hold. The substrate noise signature was
sensed in . Equivalent
evaluated in terms of potential
computed using the techniques
noise sources
of Section III, were connected to the sensing node via a
lumped resistive model extracted by SUBRES [1], a substrate extraction tool based on the Boundary Element Method.
Fig. 12 shows the approach. In our experiments we assumed
a backplate contact, although this assumption is not necessary
in SUBWAVE.
In order to verify the accuracy of the resulting substrate
noise signature, we proceeded as follows. First, a layout was
generated in the OCTTOOLS environment from the mapped network using TIMBERWOLF [18]. Then, the entire layout contact
resistance matrix was extracted using ESTPAR and SUBRES.
Fig. 11. Comparing substrate noise signatures obtained using SUBWAVE and
full extraction and simulation.
RESULTS
ON
TABLE I
MCN91 BENCHMARKS
Finally, when possible,1 the resulting contact resistance matrix
was simulated by SPICE using current injectors obtained from
the models of Section II. Noise spectral analysis was carried
out using the PTOLEMY [19] simulation environment. Then,
estimated noise power spectra were computed for different
from SPICE (when available) and SUBWAVE data.
orders
with the
Values between 16 and 512 have been used for
benchmark circuits, while all the presented results have been
of 32.
carried out with a value for
Several circuits from the MCNC91 benchmark suite were
tested using one thousand randomly generated input vectors.
It was assumed that the benchmarks would be implemented
in a low-resistivity substrate technology of the type depicted
in Fig. 3(b). In Table I the CPU times for the generation
of the models and for the verification step are reported for
a DEC AlphaServer 2100 5/250. Typically, substrate noise
signatures were computed two orders of magnitude faster
when SUBWAVE, rather than full simulation, was used. A
direct comparison of the waveforms obtained with the two
approaches shows a contained error estimated to be less than
10% for all the benchmarks. The largest circuits, such as the
16-b multiplier, could not be simulated using SPICE due to their
extreme complexity. Fig. 13 shows the spectrum generated
for misex1 using SUBWAVE and full extraction/SPICE. One
observes that most of the spectrum is centered around 1 GHz.
An identical behavior was observed in other benchmarks, such
as C6288, which had been mapped onto the same library
1 Matrices corresponding to more than 1000 contacts could be extracted by
SUBRES but the underlying network could not be simulated in a reasonable
time.
CHARBON et al.: MODELING DIGITAL SUBSTRATE NOISE INJECTION IN MIXED-SIGNAL IC’S
Fig. 12.
309
Observation point and substrate noise sources on logic block.
to compute the substrate noise signature for the entire circuit.
Standard benchmarks have been used to test the assumptions
and the resulting accuracy of the computed models.
ACKNOWLEDGMENT
The authors would like to thank R. Gharpurey and A.
Saldanha for their support and useful discussions.
REFERENCES
Fig. 13. Normalized substrate noise spectrum of misex1 in decibels versus
gigahertz.
Fig. 14. Normalized substrate noise spectrum of C6288 in decibels versus
gigahertz.
based on 1-ns delay gates (see Figs. 13 and 14). This behavior
suggests that the substrate noise spectrum is mainly dependent
on technology rather than other design parameters (clock,
topology). Benchmark C6288, shown in Fig. 14, consists of
2731 gates. In this case the SPICE simulation result could not
be obtained, hence, a direct comparison could not be drawn.
However, the example shows that similar complexities can be
addressed efficiently by SUBWAVE.
VI. CONCLUSIONS
A comprehensive methodology has been presented for
the automated generation of compact models for spurious
substrate noise currents in realistically complex logic
blocks. Every gate in the library is characterized based
on its input-dependent substrate injection patterns. The
switching activity of the circuit is efficiently computed using
event-driven simulation, which produces a transition trace for
each node in the circuit. Such trace is convolved with the
appropriate gate substrate injection patterns, thus allowing
[1] R. Gharpurey and R. G. Meyer, “Modeling and analysis of substrate
coupling in IC’s,” in Proc. IEEE Custom-Integrated Circuit Conf., May
1995, pp. 125–128.
[2] B. R. Stanisic, N. K. Verghese, D. J. Allstot, R. A. Rutenbar, and L. R.
Carley, “Addressing substrate coupling in mixed-mode ICs: Simulation
and power distribution synthesis,” IEEE J. Solid-State Circuits, vol. 29,
pp. 226–237, Mar. 1994.
[3] S. Mitra, R. A. Rutenbar, L. R. Carley, and D. J. Allstot, “Substrateaware mixed-signal macro-cell placement in WRIGHT,” in Proc. IEEE
Custom-Integrated Circuit Conf., May 1994, pp. 529–532.
[4] P. Miliozzi, L. Carloni, E. Charbon, and A. L. Sangiovanni-Vincentelli,
“SUBWAVE: A methodology for modeling digital substrate noise injection in mixed-signal IC’s,” in Proc. IEEE Custom-Integrated Circuit
Conf., May 1996, pp. 385–388.
[5] P. Miliozzi, I. Vassiliou, E. Charbon, E. Malavasi, and A. L.
Sangiovanni-Vincentelli, “Use of sensitivities and generalized substrate
models in mixed-signal IC design,” in Proc. IEEE/ACM Design
Automation Conf., June 1996, pp. 227–232.
[6] C. Hu, VLSI Electronics: Microstructure Science, vol. 18. New York:
Academic, 1981.
[7] Y. Cheng, M. Chan, K. Hui, M. Jeng, Z. Liu, J. Huang, K. Chen, J.
Chen, R. Tu, P. K. Ko, and C. Hu, BSIM3v3 Manual, Univ. California
at Berkeley, Berkeley, CA, 1996.
[8] M. R. Pinto, C. S. Rafferty, H. R. Yeager, and R. W. Dutton, PISCESIIB, Stanford University, Stanford, CA, 1985.
[9] F. Najm, “Power estimation techniques for integrated circuits,” in Proc.
IEEE Int. Conf. on Computer Aided Design, Nov. 1995, pp. 492–499.
[10] R. K. Brayton, G. D. Hachtel, and A. L. Sangiovanni-Vincentelli,
“Multilevel logic synthesis,” Proc. IEEE, vol. 78, pp. 264–300, Feb.
1990.
[11] L. Lavagno and A. Sangiovanni-Vincentelli, Algorithms for Synthesis
and Testing of Asynchronous Circuits. Amsterdam, The Netherlands:
Kluwer, 1993.
[12] C. W. Gardiner, Handbook of Stochastic Methods for Physics, Chemistry,
and the Natural Sciences, Springer Series in Synergetics, vol. 13.
Berlin, Germany: Springer-Verlag, 1983.
[13] W. A. Gardner, Introduction to Random Processes with Applications to
Signals & Systems, 2nd ed. New York: McGraw Hill, 1990.
[14] H. O. A. Wold, A Study in the Analysis of Stationary Time-Series.
<Publisher’s location: Almquist and Wiksell, 1938.
[15] S. M. Kay, Modern Spectral Estimation: Theory and Application. Englewood Cliffs, NJ: Prentice-Hall, 1988.
[16] P. M. Clarkson, Optimal and Adaptive Signal Processing. Boca Raton,
FL: CRC, 1993.
[17] E. M. Sentovich, K. J. Singh, C. Moon, H. Savoj, R. K. Brayton, and
A. L. Sangiovanni-Vincentelli, “Sequential circuit design using synthesis
and optimization,” in Proc. IEEE Int. Conf. on Computer Design, Oct.
1992, pp. 328–333.
[18] C. Sechen, VLSI Placement and Routing Using Simulated Annealing.
Boston, MA: Kluwer, 1988.
310
IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 3, MARCH 1999
[19] J. Buck, S. Ha, E. A. Lee, and D. G. Messerschmitt, “Ptolemy: A
framework for simulating and prototyping heterogeneous systems,” Int.
J. Comput. Simulation, vol. 4, pp. 155–182, Apr. 1994.
Edoardo Charbon (S’90–M’92), for a photograph and biography, see p. 190
of the February 1999 issue of this TRANSACTIONS.
Paolo Miliozzi received the Laurea degree in electrical engineering, summa cum laude, from the University of Bologna, Italy, in 1992 and the Ph.D.
degree in electrical engineering and telecommunications from the University of Padova, Italy, in 1996.
Between 1994 and 1996 he visited the Department of Electrical Engineering and Computer Science of the University of California at Berkeley,
where he was involved in substrate noise characterization within top-down constraint-driven design
methodologies of mixed-signal IC’s. In 1996 he
joined Rockwell Semiconductor Systems, Newport Beach, CA. His research
interests include development of CAD tools and methodologies for radiofrequency, analog, and mixed-signal IC’s; parasitic analysis and substrate
noise characterization for automatic layout generation; device modeling for
circuit simulation.
Luca P. Carloni (M’95–SM’95) received the Laurea degree in electrical engineering, summa cum
laude, from the University of Bologna, Italy, in July
1995 and the M.S. degree in electrical engineering
and computer sciences from the University of California, Berkeley, in December 1997. He is currently
a Ph.D. degree candidate in the Department of
Electrical Engineering and Computer Sciences of
the University of California, Berkeley.
His research interests are in the area of computeraided design of electronic systems and include logic
synthesis, high-level synthesis, and combinatorial optimization.
Alberto Ferrari received the Dr.Eng. degree
summa cum laude and the Ph.D. degree in electrical
engineering at the University of Bologna, Italy,
focusing on low-power low-voltage digital signal
processing (DSP) architecture.
He visited the Electrical Engineering Department
of University of California at Berkeley, where he
worked on low-power digital design for DSP’s,
and the SGS-Thomson Berkeley Lab, working
on subvolt low-power speech-recognition systems.
He recently joined the PARADES, Rome, Italy,
working on design of embedded systems.
Alberto Sangiovanni-Vincentelli (M’74–SM81–F’83), for a photograph and
biography, see p. 190 of the February 1999 issue of this TRANSACTIONS.