Transient Fault Characterization in Dynamic Noisy Environments Ilia

Transient Fault Characterization in Dynamic Noisy Environments
Ilia Polian1
1
John P. Hayes2,1
Sandip Kundu3,1
Bernd Becker1
3
Advanced Comp. Architecture Lab
Department of ECE
University of Michigan
University of Massachusetts
Ann Arbor, MI 48109-2122, USA Amherst, MA 01003, USA
[email protected]
[email protected]
{polian|becker}@informatik.uni-freiburg.de
Albert-Ludwigs-University
Georges-Köhler-Allee 51
79110 Freiburg i. Br., Germany
2
Abstract
Technology trends are increasing the frequency of serious
transient (soft) faults in digital systems. For example, ICs
are becoming more susceptible to cosmic radiation, and are
being embedded in applications with dynamic noisy environments. We propose a generic framework for representing
such faults and characterizing them on-line. We formally
define the impact of a transient fault in terms of three basic parameters: frequency, observability and severity. We
distinguish fault modes in systems whose noise environment
changes dynamically. Based on these ideas, the problem of
designing on-line architectures for transient fault characterization is formulated and analyzed for several optimization
goals. Finally, experiments are described that determine
transient fault impact and the corresponding tests for various
simulated fault modes of the ISCAS-89 benchmark circuits.
Keywords: Fault detection, fault modeling, on-line characterization, soft faults, transient faults
1
Introduction
Transient or soft faults in ICs may be broadly defined as
faults that occur at unpredictable times but do not result in
permanent hardware or software damage. They are typically caused by temporary environmental “noise” such as
power-supply spikes or external radiation strikes. If a radiation source is sufficiently strong, or if the affected circuit
elements are sufficiently small, then logic signals may be
flipped causing a system crash. Some rare data-dependent
operating conditions also cause hard-to-identify crashes that
may be placed in the transient fault category. It has long
been observed that transient failures far outnumber permanent ones in computer-based systems, and that the transient
errors they produce are much harder to detect [1]. Furthermore, soft errors induce the highest failure rate of all other
reliability mechanisms combined [2].
Historically, special radiation-hardened ICs were employed in fields with a high exposure to ionizing radiation.
Consequently, much of the prior research on transient faults
Paper 40.1
has focused on specific applications including aircraft [3, 4],
space [5], and medicine (radiotherapy) [6]. However, the
scaling of CMOS technology in accordance with Moore’s
Law into the very deep submicron (VDSM) range appears to
be steadily increasing the susceptibility of “ordinary” ICs to
transient faults. This can be attributed to several factors: (1)
Transistors and their interconnections are shrinking to sizes
that are more readily affected by external radiation [7, 8]. (2)
Supply and threshold voltages, along with signal-to-noise ratios, are also shrinking [9]. (3) Process parameters such as
transistor doping levels are beginning to exhibit variability
that makes circuit behavior fluctuate unpredictably [10]. (4)
ICs are being increasingly embedded in applications such
as automobile engines that have very noisy operating environments. Hence, soft error tolerance is emerging as a new
requirement for ICs in “conventional” applications. On the
other hand, customers from the fields that require radiation
hardness are increasingly shifting to the COTS (commercial
off the shelf) paradigm, i.e. they demand commercial ICs
that are suited for their needs [11]. Since high-volume manufacturing is associated with low margins and cost pressure,
low-cost soft error detection and correction methods are urgently needed. A further new trend is that soft errors in combinational logic are gaining in importance: it is projected in
[8] that they will outnumber their counterparts in memories
employing 65 nm process technology.
Some semiconductor industry commentators have recently speculated that new design methodologies that are
probabilistic and/or fault-tolerant will be required for CMOS
ICs in the near future [12, 13]. Others suggest that novel
nanotechnologies, such as biomolecular or quantum circuits,
will eventually replace CMOS ICs in advanced applications.
Even if this turns out to be the case, soft errors are likely
to remain a major problem for designers and manufacturers.
For example, quantum circuits are inherently fragile to an
extent that may make fault-tolerant design essential [14].
Since soft errors may occur at any time, the conventional
post-manufacturing test approach is not useful for such errors. Characterization testing and On-line testing are employed instead. Table 1 provides details on the methodology, targets and limitations of these two methods and their
INTERNATIONAL TEST CONFERENCE
c IEEE
0-7803-9039-3/$20.00 2005 1
Testing
method
Application
time
Needed
equipment
Primary goals
Limitations
Prop. method
applicable?
Characterization test
Non-accelerated
Accelerated
Apply test vectors to many As in non-accelerated
devices for an extended case, but irradiate deperiod; count number of vices to increase tranobserved transient faults.
sient fault probability.
Before shipment or before start of high-volume manufacturing.
Automatic test equipment ATE and/or on-chip
(ATE) and/or on-chip structures; radiation
structures.
source.
Determine soft error rate Determine accelerated
(SER) of device. Exces- SER (ASER) and estisive SER can be used to mate SER from ASER.
modify device’s design or
manufacturing process.
Very high number of SER–ASER converdevice-hours required for sion inaccurate [15],
statistically
significant poorly understood for
data.
combinational logic.
Yes
On-line test
Concurrent
Non-concurrent
Determine
occurrence Apply vectors to modof transient faults during ules that are idle, e.g.,
operation by consistency waiting for a request.
checks e.g., parity.
During operation (only ac- During operation (only
tive modules).
idle modules).
On-chip structures. Could On-chip structures.
be switchable, e.g., in
high-rad. environment.
Transient fault detection Determine
device’s
and correction of fault ef- SER and detect sudden
fects; detecting permanent changes; characterizafaults occurring after ship- tion of environment in
ment.
which device operates.
Area and power overhead; Area,
power and
possible
performance performance overhead
degradation.
tend to be lower than
for concurrent test.
Yes
No
Yes
Table 1: Test methods for transient faults
sub-classes: non-accelerated and accelerated characterization testing and concurrent and non-concurrent on-line testing.
This paper proposes a built-in self test (BIST) architecture
for non-concurrent on-line test. The focus on non-concurrent
test is explained by the prevalence of blocks which are idle
most (over 99%) of the time in many of today’s systems
(such as sensor networks). If the idle blocks are equipped
with on-line BIST, they can identify sudden increases in soft
error rate (SER) which may be, e.g., due to entry into a highradiation environment. If the blocks which are currently active are equipped with switchable concurrent on-line BIST,
the reported SER increase can be used as a trigger to switch
it on. If the performance of a block deteriorates when its
concurrent BIST is active, this procedure is related to the
graceful degradation strategy.
Although the proposed BIST solution is intended for nonconcurrent on-line test, the blocks can also be used for characterization test, as indicated by the last row of Table 1. In
case of non-accelerated test, billions of device-hours are necessary to get statistically significant data, suggesting massively parallel testing of many thousands chips. This task is
clearly better accomplished by on-line test than by dedicating a tester to each device. It can be used for accelerated
test also, leading to application of test vectors that expose
many faults and thus provide further acceleration. Furthermore, it can gather long-term statistics on soft errors, reducing the need for the expensive characterization testing mentioned above.
Paper 40.1
To support the synthesis of the BIST architecture, we attempt to develop a unified framework for dealing with many
types of transient errors in current and future digital technologies. At issue are how to model such faults and how to
detect them during operation, i.e., on-line, in various noisy
environments. A central concept of the proposed framework
is the notion of a transient fault’s impact. Faults with a higher
impact are more likely to occur, have higher probability of
changing the system state, and induce more severe errors.
Consequently, high-impact faults are primary targets of any
on-line testing strategy. In addition to fault impact, we also
consider the possibility of a system having multiple transient
fault modes, i.e., dynamically changing transient fault profiles.
As a result, we obtain an on-line BIST architecture that
consists of a test pattern generator block that applies a predefined deterministic test set to the block under test and a
comparator of the responses of the block to the expected values. The applied vectors are selected to maximize the detection probability of high-impact faults, and there are further
optimization targets. Experimental results demonstrate that
the number of required vectors is extremely low, and we formally prove that for several important cases the best detection probability is achieved by just one vector.
Note that the proposed architecture cannot be employed
for concurrent on-line testing (in which the block under test
receives functional inputs and cannot process deterministic
test vectors). If all blocks are equipped with switchable
concurrent on-line BIST, non-concurrent BIST functional-
INTERNATIONAL TEST CONFERENCE
2
ity could be mimicked by switching it on and applying some
random data. However, our architecture is superior: First,
it applies highly optimized deterministic vectors, while random data applied to the block would have mediocre fault detection properties. Second, it has no aliasing, in contrast to
most concurrent BIST schemes. Third, the power consumption of the block under test and the concurrent BIST would
be excessive. The power consumption of the proposed architecture is expected to be low, especially in those cases when
a single vector is applied continuously. Last but not least, it
may not be practical to equip each and every block with an
expensive concurrent on-line BIST of sufficient quality; in
contrast, the proposed architecture is a low-cost one.
Soft errors in random logic have been identified as
one of difficult challenges in the International Technology
Roadmap for Semiconductors [16] (p. 33). Its accompanying document on reliability [17] includes a chapter on soft
errors, in which cost-effective soft error detection schemes
for random logic with low performance overhead are cited
as the main challenge. Also the need for both accelerated
and non-accelerated SER estimation methods is highlighted.
The remainder of the paper is organized as follows. The
next section provides an overview of the physics of the transient faults in combinational logic. Section 3 introduces the
generic framework for modeling transient faults. On-line test
architecture and ATPG for it is described in Section 4. The
application of the generic framework to VDSM ICs is examined in Section 5 and several models with different accuracy
and complexity are suggested. Experimental results are reported in Section 6. Section 7 concludes the paper.
2
Transient Faults in VDSM Combinational Logic
The main causes of soft errors due to ionizing radiation are
alpha particles and low-energy neutrons originating from
radioactive impurities in materials used in manufacturing.
High-energy neutrons (from cosmic rays) react with silicon
and oxygen atoms and produce heavy ions [18].1 .
When an alpha particle or a heavy ion strikes on a semiconductor device, its kinetic energy is transferred into charge
described by the linear energy transfer (LET) of the particle
[20]. As a result, a certain amount of free electrons and holes
are created (the number of 1,000,000 electron-hole-pairs is
quoted in [21]). If the particle strike happens in the vicinity
of a p/n junction (a MOS transistor has two p/n junctions),
some of the carriers will end up at the junction. If a significant number of charge carriers arrive at the junction, it
breaks down temporarily, and current flows through it. As a
consequence, there may be a voltage glitch on the line driven
by the transistor.
1 Soft errors may also be triggered by power supply noise. However,
these events are not totally unpredictable as is the case with radiation strikes;
they can be detected by production test if special test patterns are provided
[19]. Hence, our main focus is on radiation.
Paper 40.1
A voltage glitch of sufficient strength, i.e. with a magnitude large enough to exceed (or fall below) the logic threshold of a succeeding gate, can flip a node (introduce a faulty
logic value) for a limited amount of time. Such a glitch is
called a single event transient (SET) [2]. An SET occurs if
the total charge Q deposited by the particle exceeds the critical charge Qcrit of the node in question. The concept of
Qcrit is commonly accepted although it is an approximation
([10] points out the importance of the timing and demonstrates a memory cell that upsets (does not upset) when collecting less (more) charge). There are accepted closed-form
Qcrit equations for memory cells but not for combinational
logic.
The duration of an SET is typically less than or equal to
the logic delay of the gate that drives the node. This is because the charge deposition is normally very quick and the
charge limited, so the time needed to remove it should be
less than the time which the driving gate needs to switch,
i.e. interrupt the connection with VDD (ground) and establish
a connection with ground (VDD ). One exception are deposition processes with a large diffusion component in which
more charge arrives at the node over time.
A single event upset (SEU) occurs if the SET is propagated to a primary output or a latch and critically changes
the output or the state of the system. A soft error is a direct
consequence of an SEU. The propagation of a pulse through
a logic gate can be prevented by a controlling value on a
side-input of the gate. Furthermore, pulse attenuation has
been reported in the literature, i.e. the duration of the pulse
on the gate output is less than on the gate input [22, 23, 8, 7].
All studies observe that no attenuation takes place for pulses
wider than the delay of the gate through which it is propagated, and narrower pulses disappear completely after a few
propagations. A very recent experiment by NAVSEA Crane
[23] compared a SPICE model for attenuation with measured
data for a broad range of heavy ions. The results showed
that SPICE models were off by an order magnitude or more
for narrower transients. Similar effects were reported in an
earlier Boeing experiment [22] (which matched heavy ion
and pulsed laser test data with simulation) and attributed to
charge diffusion.
The SEU frequency, which corresponds to the SER defined earlier, is measured in Failures In Time (FIT), where
1 FIT is one failure per 109 device-hours. The ITRS quotes
1 kFIT as a typical SER of modern products [16], while according to [2] tens of kFITs are possible (100 kFIT is approximately one error per year).
The SER is estimated by either testing a system under
nominal or accelerated conditions, i.e. irradiating it during
test. For a further acceleration, power supply voltage is
sometimes lowered [9]. Accelerated test yields accelerated
ASER from which SER must be derived. There is recent data
that accelerated testing does not yield accurate SER numbers
even for very well controlled experiments. In a Sony experiment [15] ten possible reasons for this mismatch are listed
and a wrong assumption on the neutron flux at sea level used
INTERNATIONAL TEST CONFERENCE
3
in the ASER to SER conversion is identified as the major error source. As a remedy, the authors suggest performing a
test under nominal (non-accelerated) conditions for at least
one reference device, and using SER and ASER values for
this device when converting ASER to SER for other products. Furthermore, converting ASER to SER is poorly understood for combinational logic.
Soft errors due to α particles and low-energy neutrons
can be addressed by optimizing the manufacturing process,
e.g., using boron-free PSG instead of BPSG, adding shielding layers, creating dummy junctions below the active area,
and altering the package design [2, 21]. In contrast, there is
no effective shielding against high-energy neutrons. Thus,
no matter how elaborate a process is, there is no way to prevent SET from happening. Not every SET will cause a soft
error, and not every soft error is critical. However, the remaining soft errors have to be addressed.
3
Fault Modeling Framework
The system of interest is a collection of nodes
{N1 , N2 , · · · , Ns }, where a node is any elementary
logical element, typically a wire or signal net, that is a
potential fault target. Node N is assumed to carry a logic
value 0 or 1. As before, if the disturbance is large enough to
flip N ’s logic value, it is called a SET and any observable
error resulting from it is called an SEU.
3.1
Fault impact
The impact of a transient fault f on node N is defined as
Imp(f ) = F req(f ) · Obs(f ) · Sev(f ).
(1)
Here F req(f ) is the frequency of occurrence of an SET on
N . It is a function of the frequency with which the fault happens, and the SET’s “strength” relative to the fault-free value
on N . Obs(f ) is the probability that the SET propagates to
an observable point where it has an observable effect to the
system, i.e., that it changes the system’s state and becomes
an SEU. Finally, Sev(f ) is the severity of f , and measures
the effect of f on the system as a whole, e.g., the likelihood
of it causing an application to crash. For example, a fault
that changes one pixel in a video frame is less severe than
one that flips an interrupt signal, and a fault occurring in a
floating-point unit when an integer operation is being executed is not severe at all. In general, to assign severity to a
fault requires system-level information.
The three components F req(f ), Obs(f ) and Sev(f ) of
Eq. (1) can be regarded as independent, since their effects
depend primarily on the fault source, the system design, and
the intended application, respectively. It is also convenient
to limit their values to the interval [0, 1], i.e., treat them all
like probabilities.
Imp(f ) and its components reduce to conventional fault
types in limiting cases. For instance, F req(f ) = 1 corresponds to a permanent fault; if Obs(f ) = 0, then the
Paper 40.1
fault is redundant. The impact is highest when F req(f ) =
Obs(f ) = Sev(f ) = 1, i.e., the fault is permanent, affects
the system for every input, and is maximally severe. When
any one of the three parameters is zero, then Imp(f ) = 0,
suggesting that the fault is not worth considering from a logical point of view.
Eq. (1) resembles the expression for soft-error susceptibility used by Mohanram and Touba [24]:
RSEU (N ) · Psensitized (N, l) · Platched (N, l)
F req(f ) corresponds to their RSEU (N ). Our Obs(N ) is
similar to the term Psensitized (N, l) · Platched (N, l), which
is with respect to an individual latch l. Since our model is
generic enough to describe systems without latches or equivalent structures, we use a single parameter for the propagation probability. If the generic model is applied to a specific
system with latches, propagation probability to latches can
be included in the definition of Obs(n). Fault severity is not
considered in [24].
3.2
Fault Modes
SEU rates can vary widely in a noisy environment, giving
rise to several distinct SER ranges which we call fault modes.
We noted in the introduction that aircraft, and even automobiles, experience very different cosmic ray levels at different altitudes. If a heart pacemaker user undergoes radiotherapy, the radiation level affecting the pacemaker’s electronics increases dramatically during treatment and returns
to its original value after treatment [6]. In this case we have
two fault modes: mode 1 for normal operation, and mode
2 for the elevated radiation level due to radiotherapy. Another example is a CMOS IC with multiple power levels
(sleep/standby/normal) for energy conservation. Some of
these modes use design techniques such as duplication of
a block using several transistor threshold voltage levels. In
different modes, different blocks are used, which affects the
occurrence of faults, especially delay faults. Similar multimodal effects can result from process variations during IC
manufacture.
We denote the occurrence probability of an SEU in fault
mode i by F reqi (f ). We assume that environment changes
which manifest themselves as fault mode changes do not
modify the system’s internal structure or its application.
Consequently, neither the observability nor the severity of
a fault are affected by the fault mode. The impact of a
fault f on the node N in a fault mode i then has the form
Impi (f ) = K · F reqi (f ), where K is a constant equal to
Obs(f ) · Sev(f ).
While some environmental changes that affect fault
modes are discrete, such as in the pacemaker example above,
others, like the changes in cosmic radiation that an aircraft
experiences as it changes altitude, are continuous. In order
to limit the complexity of the analysis, we only consider scenarios with a few discrete fault modes.
INTERNATIONAL TEST CONFERENCE
4
(continuously
applies
vectors)
Block
Under
Test
(idle)
Comparator
Test
Pattern
Generator
Figure 1: Generic non-concurrent on-line BIST architecture
In general, whether a system is currently in fault mode 1
or 2 may or may not be known to the system. Also switches
between fault modes may or may not be announced to the
system. If the fault mode changes due to activation of a
different power saving mode, for example, then the system
will possess this information. This cannot be assumed if
the fault mode switch is triggered by a change in environmental noise. In some cases, information about the current
fault mode might be needed to ensure the system’s operation.
Hence, one of the goals in an on-line detection strategy for
transient faults is to determine the current fault mode with
high probability.
In both the pacemaker and the aircraft examples, the difference between fault modes is the intensity of the radiation
while the basic failure mechanism is the same. If the radiation is more intensive for mode 2 than for mode 1, then for
every fault f F req1 (f ) ≤ F req2 (f ) holds. However, the
proposed framework is capable of modeling environments
with fundamentally different SEU mechanisms described by
different fault modes. There may be a fault f1 that occurs
in fault mode 1 but cannot occur in fault mode 2, and a
fault f2 for which the opposite holds: F req1 (f1 ) > 0 =
F req2 (f1 ) = F req1 (f2 ) < F req2 (f2 ).
4
On-line Transient Fault Characterization
Figure 1 shows the generic non-concurrent on-line BIST architecture. The major difference to the “usual” off-line BIST
for permanent faults is that the test vectors are applied continuously and as long as the block under test is in the idle
mode. Our goal is to determine which vectors should be applied in order to optimize the detection of transient faults
(where “detection” will be formalized below. Note, however,
that detection of a transient fault in an idle block serves the
characterization of the device and its environment and does
not expose a functional error). The following example points
out the difference from off-line BIST.
Assume that a block has two transient faults: f1 and f2 .
Suppose that test vector t1 detects f1 , vector t2 detects f2 and
no vector detects both faults simultaneously. Let the overall occurrence probability (F req · Obs) of f1 and f2 be 5%
and 1%, respectively, and let the severity of each fault be 1
(for simplicity). Suppose that we are interested in maximiz-
Paper 40.1
ing the overall detection probability, i.e. the probability that
a fault is detected when it occurs. If f1 and f2 were permanent faults, then applying t1 and t2 by an off-line BIST block
could prove the absence of both faults. In case of transient
faults, if t1 (t2 ) is applied in a clock cycle, there is a chance
that f2 (f1 ) will occur in just that cycle and will not be noticed. Consequently, the detection of 100% of the occurring
faults is impossible.
The result for permanent faults suggests applying t1 in
all odd and t2 in all even cycles (sequence t1 , t2 , t1 , t2 , . . .).
The average probability that a fault is detected by this sequence is (5% + 1%) / 2 = 3%. Now consider the sequence t1 , t1 , t2 , t1 , t1 , t2 , . . . Its average detection probability is (5% + 5% + 1%) / 3 = 3.7%. Since the occurrence
probability of f1 and f2 remained the same, the second sequence detects more faults on average. Finally, consider the
sequence t1 , t1 , t1 , t1 , . . . Its average detection probability is
5%. As a somewhat counterintuitive result, it is optimal not
to apply t2 at all.
The reason for this paradox is that the occurrence (and detection) of f1 in clock cycle 1 does not prevent it from showing up in later clock cycles. The benefit of applying t2 in a
clock cycle (detection of f2 ) is outweighed by the penalty of
not detecting the higher-impact fault f1 in this clock cycle.
In the following, we will formalize the concept of detection
and introduce additional constraints under which an optimal
solution may have multiple vectors.
4.1
On-line test architecture
We assume that the test pattern generator from Figure 1 has
a memory for storing the test set T whose members are continuously applied to the block under test. Each test tj ∈ T is
assigned a usage factor ufj , a real number between 0 and 1,
that indicates how often tj is applied compared to the other
tests. We require that uf1 + uf2 + · · · + uf|T | = 1. In
this paper, we concentrate on test selection for various fault
detection and diagnosis goals, which we consider next.
From the preceding discussion, we can identify the following optimization objectives:
Goal (1) Find the maximum expected value for the overall
detection probability.
Goal (2) For each fault mode i, guarantee some minimal detection probability M inDPi .
Goal (3) Deduce, with high probability, the current fault
mode from the test responses.
Recall that our main target is characterization of the soft
error intensity. This is achieved best if as many of the faults
that occur are detected. Goal (1) minimizes the probability
that a fault is not detected. Goal (2) helps avoid the situation in which a system becomes overly vulnerable in one
rare fault mode. For instance, the radiotherapy mode in the
pacemaker example has very low probability, so going solely
after Goal (1) neglects this mode, which could be fatal. Goals
(1) and (2) can be optimized simultaneously.
INTERNATIONAL TEST CONFERENCE
5
Goal (3) is concerned with diagnosing the current fault
mode. The rationale behind it is as follows: Suppose that
each fault mode has a “hardening” technique that makes the
system less vulnerable to high-impact faults in that mode,
and that this technique can be switched on and off. (An
instance of such a technique is the triple modular redundancy architecture). Furthermore, assume that switching
the hardening technique on incurs overhead such as performance degradation or greater power consumption. Hence, it
is desirable to activate the hardening only when it is really
needed, i.e. only when the system is in the corresponding
fault mode. Again considering the pacemaker example, the
hardening should be switched on automatically in radiotherapy mode. Keeping it on in normal operating mode might
reduce the battery life and become a risk factor on its own.
To control this situation, it is necessary to determine the current fault mode. Goal (3) is most relevant when the fault
mode changes are not communicated to the system control
by other means.
To satisfy Goal (3), test vectors with high test diversity,
i.e. large differences in detection probabilities across the
fault modes, should be applied. Goal (3) should be considered together with either of Goals (1) or (2), because such
tests are not guaranteed to be effective at detecting highimpact faults.
DP2
t3
t2
6
DP1 > 7
Optimum
DP2 > 3
3
t1
2
2
6
7
9
DP1
Figure 2: A graphical solution of Example 1
Now the ATPG problem can be formulated as a linear programming (LP) problem over variables uf1 , . . . , uf|T | :
Maximize
M Pi · DPi (U F )
(3)
i∈M
under the following constraints:
0 ≤ ufj
|T |
ufj
≤ 1,
=
∀1 ≤ j ≤ |T | (4)
1
(5)
j=1
4.2
ATPG for on-line testing
Let us first address Goals (1) and (2). For circuits with few
inputs, a candidate test set T might be all possible input vectors. For larger circuits, T might be a particular sample of
the tests, e.g., a set of n-detection stuck-at tests[25]. We require usage factors U F = {uf1 , uf2 , . . . , uf|T | } for T that
maximize Goal (1) without violating constraints arising from
Goal (2). Note that test tj should not be selected iff ufj = 0.
Let the set of fault modes under consideration be M . If
Det(t) ⊆ F is the set of faults detected by t, the utility of t
in fault mode i is defined by
U tili (tj ) =
1
|F |
Impi (f )
(2)
f ∈Det(tj )
where |F | is the number of faults. Given U F , the fault detection
probability in fault mode i is defined as DPi (U F ) =
tj ∈T U tili (tj ) · ufj . Let the probability that the system
is in fault mode i, i.e., the mode detection probability, be
denoted by M Pi . Goal
(1) is then equivalent to maximizing
the objective function i∈M M Pi ·DPi (U F ). Note that this
function is related to the fault coverage for permanent faults,
however we are not using the term “coverage” to avoid confusion.
Goal (2) imposes for each fault mode i a guaranteed minimum detection probability M inDPi . This can be written
as DPi (U F ) ≥ M inDPi . If no such bound is desired for
some fault mode , M inDPi can simply be set to 0.
Paper 40.1
DPi
DPi
|T |
=
j=1
U tili (tj ) · ufj , ∀1 ≤ i ≤ |M | (6)
≥ M inDPi ,
∀1 ≤ i ≤ |M | (7)
This problem can be solved using any LP solver. Note that
no integer constraints occur.
In order to incorporate Goal (3) into the problem formulation, a concept of “diversity” among tests is required. If
a fault is detected by test tj , the probability that the system
is in fault mode i is given as U tili (tj )/(U til1 (tj ) + · · · +
U til|M | (tj )). Intuitively, test diversity is minimal when this
probability is 1/|M | for every i. Like the definition of the
standard deviation σ 2 , we define the test diversity of a test tj
as
T div(tj ) =
|M | i=1
2
U tili (tj )
1
−
(8)
U til1 (tj )+· · ·+U tilM (tj ) |M |
It is possible to add constraints of the kind
uf1 · T div(t1 ) + · · · + uf|T | · T div(t|T | ) ≥ M inT div
to the LP problem to ensure some minimal level of diversity. Test diversity can also be integrated into the objective
function (3).
Theorem The LP problem with Goals (1) and (2) always
has an optimal solution in which the number of selected tests
is less than or equal to the number of fault modes |M |.
2
(The proof can be found in the Appendix).
INTERNATIONAL TEST CONFERENCE
6
Example Consider two equiprobable fault modes 1 and
2, and three tests t1 , t2 and t3 . Let their respective utilities in these fault modes be U til1 (t1 ) = 9, U til2 (t1 ) =
2, U til1 (t2 ) = 6, U til2 (t2 ) = 6, U til1 (t3 ) = 2, and
U til2 (t3 ) = 8. Then the detection probabilities are DP1 =
9uf1 +6uf2 +2uf3 and DP2 = 2uf1 +6uf2 +8uf3 , and the
objective function is 5.5uf1 +6uf2 +5uf3 . Let the following
constraints hold: DP1 ≥ 7 and DP2 ≥ 3. A graphical solution of the corresponding LP problem is sketched in Fig. 2.
The set of detection probability vectors corresponding to test
stimuli combinations consistent with Eqs. (4 – 6) is the triangle t1 t2 t3 (which we call P ∈ R2 ), and the coordinate axes
correspond to detection probabilities. With no constraints,
the solution space is this triangle, and the optimal solution its
vertex t2 . Both constraints are given by hyperplanes (in this
case vertical and horizontal lines) that reduce the solution
space to the shaded region R. The optimal solution is among
the vertices of R. It can be seen that, although R has more
vertices than P, every vertex of R lies on a face of P (in
this case, either segment t1 t2 or segment t1 t3 ). The optimum
(≈ 5.8) is assumed for uf1 = 1/3, uf2 = 2/3, uf3 = 0. The
number of test vectors required for on-line detection (having non-zero ufi values), which is also the number of fault
modes.
The |T |-dimensional space spanned by the ufi ’s is
mapped to the |M |-dimensional space spanned by the DPi ’s.
The hyperplanes in R|T | corresponding to Goal (2) constraints remain hyperplanes in R|M | after the mapping. This
is not necessarily the case for Goal (3) constraints based on
T div. For the example, T div(t1 ) = 24.5, T div(t2 ) = 0
and T div(t3 ) = 18. If we add the Goal (3) constraint
24.5uf1 + 18uf3 ≥ 22 to the LP, the optimal solution requires all three stimuli (uf1 ≈ 0.81, uf2 ≈ 0.07, uf3 ≈
0.12, with objective function value ≈ 5.5).
2
Corollary For |M | = 1 or in the absence of constraints
Eq. (7), there is an optimal solution with only one test vector
2
for which ufj = 0.
5
Case Study: VDSM ICs
We now demonstrate the application of the generic framework to a particular technology, namely random combinational logic in VDSM ICs. Unlike memory [26], random
logic has received relatively little attention in this respect so
far [24, 27, 28]. Furthermore, the modeling problem is not as
straightforward, which helps to illustrate the possibilities of
our unified framework. Our goal is to create a hierarchy of
models with accuracy vs. complexity tradeoffs. The simplest
models use only information available at the gate level; more
complex models may require further data.
5.1
Frequency of occurrence
For a node N in the circuit that corresponds to an SEUinduced fault f , it is possible to compute the amount of
charge Qcrit (N ) needed to flip the node’s logic value.
F req(f ) is the probability that a particle exceeding this
Paper 40.1
charge threshold shows up on the node. We propose three
models in order of increasing complexity and accuracy.
Model 1: The probability of an SEU is given by the overall
occurrence probability BaseOcc of an ionizing particle and
the probability that the charge it deposits exceeds Qcrit (N ).
Since we are ultimately interested in relative numbers for the
nodes and BaseOcc is the same for all nodes, we can ignore
this constant. Qcrit is higher (and hence F req(f ) is lower)
for nodes driven strongly. This is the case for outputs of a
gate with large fanout. Hence, F req(f ) is set to 1 / (fanout
of the gate driving N ).
Model 2: Qcrit can be calculated more accurately using layout information from the cell library [24, 29]. Note that these
methods are still rough estimates as they use sea-level ambient neutron flux that cannot be determined accurately by
current techniques [15, 9].
Model 3: The most accurate Qcrit estimations are obtained
from 3-D and Monte-Carlo simulations that are computationally expensive and still do not describe all the involved
physical effects properly [20].
5.2
Probability of observation
Obs is the probability that an SET is propagated from the site
N of the strike to a (primary or secondary) output without
being masked. Shivakumar et al. [8] distinguish between logical masking (no sensitized path from N to an output exists),
electrical masking (a pulse was attenuated during propagation and did not arrive) and latching-window masking (the
pulse did arrive, but lasted for less than a clock cycle and did
not coincide with the strobing or latching time). As pointed
out in Section 2, most SETs have duration up to a gate delay.
Electrical masking occurs for narrower SETs, and if a pulse
gets attenuated, it disappears completely after a few gates,
although even SPICE models do not describe narrow pulse
propagation accurately. We suggest the following models:
Model 1: Assume pulse duration of one cycle and no attenuation. This model accounts for logical masking only. Obs
is equal to the detection probability of a stuck-at fault at N .
Model 2: Use the unit delay model, e.g. assume that all gates
in the circuit have a uniform delay 1/K, where K is the
length of the longest path. Assume that all pulses have the
duration of 1/K and do not attenuate. Obs is K times less
than in Model 1, except when there are sensitized paths of
different lengths from N to an output.
Model 3: Like Model 2, but assign the shorter paths from
N to an output a higher probability, in order to account for
narrower pulses that are attenuated but do not disappear completely. The extent of probability increase is unclear, as even
the SPICE models are not accurate.
Model 4: Using static timing analysis, set the initial pulse
duration to the delay of the gate that drives N . When propagating, keep the pulse duration constant for gates with a
smaller delay than the pulse duration, and reduce the pulse
duration for other gates.
Model 5: Perform a SPICE simulation, ideally using technology files based on measured data.
INTERNATIONAL TEST CONFERENCE
7
Circuit
OptObj
p = 5%
p = 10%
p = 15%
p = 20%
p = 25%
p = 30%
p = 31%
p = 32%
p = 33%
p = 34%
p = 35%
p = 36%
p = 37%
p = 38%
s298
0.183092
100.00 (1V)
99.97 (2V)
99.83 (2V)
99.69 (2V)
99.51 (3V)
99.23 (3V)
99.18 (3V)
99.12 (3V)
99.06 (3V)
99.01 (3V)
98.93 (4V)
95.53 (4V)
–
–
s344
s382
s526
s641
s820
s1196
s1423
0.264016
0.210181
0.155802
0.390284 0.0883724 0.0954154
0.173421
100.00 (1V) 100.00 (1V) 100.00 (1V) 100.00 (1V) 100.00 (1V) 100.00 (1V) 100.00 (1V)
100.00 (1V) 100.00 (1V) 100.00 (1V) 100.00 (1V) 99.96 (2V) 100.00 (1V) 100.00 (1V)
100.00 (1V) 100.00 (1V) 100.00 (1V) 100.00 (1V) 99.84 (2V) 100.00 (1V) 100.00 (1V)
100.00 (1V) 99.93 (2V) 99.95 (2V) 100.00 (1V) 99.72 (2V) 99.89 (2V) 99.83 (2V)
100.00 (1V) 99.85 (2V) 99.90 (2V) 100.00 (1V) 99.57 (3V) 99.76 (2V) 99.58 (2V)
100.00 (1V) 99.77 (2V) 99.84 (2V) 100.00 (1V) 99.39 (3V) 99.63 (2V) 99.32 (2V)
100.00 (1V) 99.75 (2V) 99.83 (2V) 96.88 (2V) 99.36 (3V) 99.61 (2V) 99.27 (2V)
100.00 (1V) 99.23 (3V) 95.18 (2V) 92.40 (2V) 99.32 (3V) 99.58 (2V) 99.22 (2V)
87.92 (2V) 97.36 (2V) 76.22 (2V) 87.05 (3V) 99.29 (3V) 99.11 (2V) 99.17 (2V)
– 95.24 (3V)
–
– 99.25 (3V) 98.39 (2V) 98.36 (2V)
– 86.94 (3V)
–
– 98.02 (2V) 97.57 (3V) 95.91 (2V)
– 71.67 (4V)
–
– 96.59 (2V) 96.17 (4V)
–
–
–
–
– 91.56 (3V) 87.85 (2V)
–
–
–
–
–
–
–
–
Table 2: Experimental results for various ISCAS-89 benchmark circuits
5.3
Severity
One obvious severity metric for a block is the portion of the
time it is in use. For example, if a 64-bit pipeline processes
32-bit data 70% of the time, soft errors that impact only the
upper 32 bits of the pipeline have a severity of 0.3 (or less)
[7]. Further instances of the same concept are floating-point
units or pipeline stages used only for some of the instructions. For gated clock designs, the severity of a node can
be calculated as the proportion of time the clock driving the
node is activated [7].
A different severity metric is derived from the concept of
error-tolerance [30], which assumes that some of the errors a
circuit produces are acceptable. One concrete manifestation
of error-tolerance is threshold testing [31], where faults affecting control lines are considered severe while faults with
impact solely on data buses are only regarded as severe if
they result in a change of signal values that exceeds some
given threshold.
While the two approaches above (utilization and threshold testing) have potential to be largely automated, a meaningful severity model should also incorporate some designer
knowledge about system behavior. For example, a cellphone
chip could have two data buses, one to control the display
and the other to transmit billing information. Obviously soft
errors affecting the second bus are very severe, even though
it is a data bus.
5.4
Fault modes
One obvious phenomenon that can be modeled using the
fault mode concept is a shift in environmental radiation level,
e.g., due to a change in altitude. Basically, the number
BaseOcc from the definition of F req(f ) in Section 5.1 becomes larger with increasing altitude, resulting in a uniform
increase in frequency of occurrence of all faults. In order to
Paper 40.1
keep the model simple, faults with very low impact not exceeding some threshold might not be considered at all; their
number can change as a result of an increase in BaseOcc.
VDSM circuits are subject to considerable process variations, which may change the susceptibility of a node to a
transient error. Moreover, active body biasing techniques
used for leakage current reduction in dynamic threshold
logic [32, 33, 34] can impose changes in SEU susceptibility of up to an order of magnitude. A transient fault detection strategy should be robust with respect to that changes.
In order to ensure this, several fault modes can be defined.
In the first mode, fault impact Imp1 can be calculated using models from Sections 5.1 – 5.3. For the other modes,
these calculated numbers can be changed randomly within
one order of magnitude, to account for the above-mentioned
variation mechanisms.
6
Experimental Results
To evaluate the impact concept, we calculated Imp(f )
for transient faults affecting the combinational parts of the
ISCAS-89 benchmark circuits. Our focus was on test generation in presence of various constraints and not on using
the most accurate models for individual components. Consequently we used the simplest discussed models (Model 1)
for both F req and Obs. Stuck-at fault collapsing was performed before running the experiment. Since no system information was available, we set the severity Sev to 1.0 for all
faults. We considered 1,000 randomly generated test vectors
and ten equiprobable fault modes. In the first fault mode, the
utility of a test vector was computed using the impact of the
faults it detects. For the other nine fault modes, utility values were obtained by randomly multiplying the utility for the
first mode by 0.25, 0.5, 2 or 4, in order to model sensitivity
to changes due to process variations.
INTERNATIONAL TEST CONFERENCE
8
p
5
10
15
20
25
30
31
32
33
34
35
36
37
T div = 0
100.00 (1V)
100.00 (1V)
100.00 (1V)
99.89 (2V)
99.76 (2V)
99.63 (2V)
99.61 (2V)
99.58 (2V)
99.11 (2V)
98.39 (2V)
97.57 (3V)
96.17 (4V)
87.85 (2V)
T div=0.05
92.38 (2V)
92.38 (2V)
92.38 (2V)
92.29 (3V)
92.12 (3V)
91.95 (3V)
91.91 (3V)
91.88 (3V)
91.84 (3V)
91.81 (3V)
91.77 (3V)
91.74 (3V)
87.85 (2V)
T div=0.10
72.67 (2V)
72.67 (2V)
72.67 (2V)
72.50 (3V)
72.33 (3V)
72.15 (3V)
72.12 (3V)
72.08 (3V)
72.05 (3V)
72.01 (3V)
71.98 (3V)
71.94 (3V)
67.06 (4V)
T div=0.15
52.97 (2V)
52.97 (2V)
52.88 (3V)
52.71 (3V)
52.53 (3V)
52.36 (3V)
52.32 (3V)
52.29 (3V)
52.25 (3V)
52.22 (3V)
52.18 (3V)
50.21 (6V)
–
T div=0.20
33.27 (2V)
33.26 (3V)
33.08 (3V)
32.40 (9V)
–
–
–
–
–
–
–
–
–
Table 3: Results for s1196 incorporating the test diversity
constraint
on-line. Such faults are of increasing concern as IC technology moves into the VDSM range and will remain relevant in
nanotechnology, suggesting the need for a generic modeling
approach. We have identified a number of useful fault parameters, including fault mode, frequency, observability and
severity, which collectively determine the impact of a transient fault. We have shown that, using these parameters, online architectures for transient fault detection and diagnosis
can be optimized to meet multiple objectives, such as ensuring minimum fault detection probabilities, and identifying
fault modes on the fly. Our experiments, though still preliminary, suggest that the proposed framework can provide
useful, quantitative insights into the complex design issues
and trade-offs associated with transient fault management at
low area, power and delay overhead.
Acknowledgment
We calculated the optimal value of the objective function
OptObj in the absence of constraints (Goal (1)). Recall that
this value is assumed for a test set consisting of one vector.
We added Goal (2) constraints by requiring that the detection
probability in each individual fault mode be at least p% of
OptObj, for different values of p.
The results are reported in Table 2. The benchmark circuits are listed in columns. The second row of the table reports the value of the objective function with no constraints.
Subsequent rows report the values of the objective function
when the detection probability in each fault mode is at least
p% · OptObj. The value is given as a percentage of OptObj,
i.e., 100% corresponds to OptObj. The number of required
test vectors is given in parentheses, thus (2V) means that
two vectors are required. “–” denotes infeasible problem formulations, meaning that it was not possible to achieve the
required detection probability in all fault modes simultaneously.
It can be seen that moderate constraints on individual detection probabilities do not have an overly negative impact
on the overall detection probability. When the constraints are
tightened beyond a certain limit, the overall detection probability drops very quickly, and the problem becomes infeasible. The number of required vectors turns out to be quite low
and, somewhat surprisingly, not monotonic in p.
We also performed an experiment incorporating both the
detection probability (Goal (2)) and the test diversity constraints (Goal (3)). Results for circuit s1196 with various
values of p and test diversity T div (Eq. (8)) from 0 to 0.2 are
reported in Table 3. It can be seen that diagnostic capability
does impact detection probability. Note the high number of
required test vectors for test diversity of 0.20 and p = 20%
and test diversity of 0.15 and p = 36%.
7
Conclusions
We have developed a very general framework for modeling
and analyzing transient (soft) faults and characterizing them
Paper 40.1
John Hayes contributed to this work while visiting the University of Freiburg under an award from the Alexander von
Humboldt Foundation. Sandip Kundu contributed while visiting the University of Freiburg as a guest professor.
8
References
[1] D.P. Siewiorek and R.S. Swarz. Reliable Computer Systems –
Design and Evaluation. Digital Press, 1992.
[2] R. Baumann. Tutorial: Ghosts in the machine: A tutorial on
single-event upsets in advanced commercial silicon technology. In Int’l Test Conf., 2004.
[3] E. Normand. Single-event effects in avionics. IEEE Trans. on
Nuclear Science, 43(2):461–474, 4 1996.
[4] E. Normand. Single event upset at ground level. IEEE Trans.
on Nuclear Science, 43(6):2742–2750, 12 1996.
[5] M.A. Shea, D.F. Smart, J.H. Allen, and D.C. Wilkinson.
Spacecraft problems in association with episodes of intense
solar activity and related terrestrial phenomena during march
1991. IEEE Trans. on Nuclear Sceince, 39(6):1754–1760,
1992.
[6] P.D. Bradley and E. Normand. Single event upsets in implantable cardioverter defibrillators. IEEE Trans. on Nuclear
Science, 45(6):2929–2940, 12 1998.
[7] H.T. Nguyen and Y. Yagil. A systematic approach to SER
estimation and solutions. In Int’l Reiliability Physics Symp.,
pages 60–70, 2003.
[8] P. Shivakumar, M. Kistler, W. Keckler, D. Burger, and
L. Alvisi. Modeling the effect of technology trends on the
soft error rate of combinational logic. In Int’l Conf. on Dependable Systems and Networks, pages 389–398, 2002.
[9] N. Seifert, X. Zhu, and L.W. Massengill. Impact of scaling on
soft-error rates in commercial microprocessors. IEEE Trans.
on Nuclear Science, 49(6):3100–3106, 2002.
[10] P.E. Dodd and F.W. Sexton.
Critical charge concepts
for CMOS SRAMs. IEEE Trans. on Nuclear Sceince,
42(6):1764–1770, 1995.
[11] M. Pignol. How to cope with SEU/SET at system level? In
Int’l On-Line Testing Symp., pages 315–318, 2005.
INTERNATIONAL TEST CONFERENCE
9
[12] K. Driscoll, B. Hall, H. Sivencrona, and P. Zumsteg. Byzantine fault tolerance, from theory to reality. In SAFECOMP
Conf., volume 2788 of LNCS, pages 235–248. Springer, 2003.
[13] P.P. Gelsinger. Gigascale integration for teraops performancechallenges, opportunities, and new frontiers. In Design Automation Conf., page xxv, 2004.
[14] M.A. Nielsen and I.L. Chuang. Quantum Computation and
Quantum Information. Cambridge Univ. Press, 2000.
[15] H. Kobayashi, H. Usuki, K. Shiraishi, H. Hiroo Tsuchiya,
N. Kawamoto, G. Merchant, and J. Kase. Comparison between neutron-induced system-SER and accelerated-SER in
SRAMs. In Int’l Reliability Physics Symp., pages 288–293,
2004.
[16] International Technology Roadmap for Semiconductors
(ITRS) 2003 Edition: Process Integration, Devices, and Structures, 2003.
[17] R. Blish, T. Dellin, S. Huther, M. Johnson, J. Maiz, B. Likins,
N. Lycoudes, J. McPherson, Y. Peng, C. Peridier, A. Preussger, G. Propkop, and L. Tullos. Critical Reliability Challenges
for the International Technology Roadmap for Semiconductors (ITRS), 2003.
[18] R.C. Baumann and E.B. Smith. Neutron-induced boron fission as a major source of soft errors in deep submicron SRAM
devices. In Int’l Reliability Physics Symp., pages 152–157,
2000.
[19] C. Tirumurti, S. Kundu, S. Sur-Kolay, and Y.S. Chang. A
modeling approach for addressing power supply switching
noise related failures of integrated circuits. In Design, Automation and Test in Europe, 2004.
[20] P.E. Dodd and L.W. Massengill. Basic mechanisms and modeling of single-event upset in digital microelectronics. IEEE
Trans. on Nuclear Science, 50(3):583–602, 2003.
[21] M.G. Pecht, R. Radojic, and G. Rao. Managing Silicon Chip
Reliability. CRC Press, 1998.
[22] M.P. Baze and S.P. Buchner. Attenuation of single event induced pulses in CMOS combinational logic. IEEE Trans. on
Nuclear Sceince, 44(6):2217–2223, 1997.
[23] M.J. Gadlage, R.D. Schrimpf, P.H. Eaton, J.M. Benedetto,
and T.L. Turflinger. Modeling and verification of single event
transients in deep submicron technologies. In Int’l Reiliability
Physics Symp., pages 673–674, 2004.
[24] K. Mohanram and N.A. Touba. Cost-effective approach for
reducing soft error failure rate in logic circuits. In Int’l Test
Conf., pages 893–901, 2003.
[25] S.C. Ma, P. Franco, and E.J. McCluskey. An experimental
chip to evaluate test techniques experimental results. In Int’l
Test Conf., pages 663–672, 1995.
[26] T.C. May and M.H. Woods. Alpha-particle-induced soft errors in dynamic memories. IEEE Trans. on Electron Devices,
26(1):2–9, 1 1979.
[27] N.J. Wang, J. Quek, T.M. Rafacz, and S.J. Patel. Characterizing the effects of transient faults on a high-performance
processor pipeline. In Int’l Conf. on Dependable Systems and
Networks, 2004.
[28] E. Dupont, M. Nicolaidis, and P. Rohr. Embedded robustness
IP for transient-error-free ICs. IEEE Design & Test of Comp.,
19(3):56–70, 5 2002.
[29] Y.S. Dhillon, A.U. Diril, A. Chatterjee, and A.D. Singh. Sizing CMOS circuits for increased transient error tolerance. In
Paper 40.1
IEEE Int’l Online Testing Symposium, pages 11–16, 2004.
[30] M. Breuer. Error-tolerance and related test issues. In Asian
Test Symp., page xxi, 2004.
[31] Z. Jiang and S.K. Gupta. An ATPG for threshold testing:
Obtaining acceptable yield in future processes. In Int’l Test
Conf., pages 824–833, 2002.
[32] F. Assaderaghi, D. Sinitsky, S. Parke, J. Bokor, P. K. Ko, and
C. Hu. A dynamic threshold voltage MOSFET (DTMOS) for
ultra-low voltage operation. In Int’l Electron Devices Meeting, pages 809–812, 1994.
[33] H. Kotaki, S. Kakimoto, M. Nakano, T. Matsuoka, K. Adachi,
K. Sugimoto, T. Fukushima, and Y. Sato. Novel bulk dynamic
threshold voltage MOSFET (B-DTMOS) with advanced isolation (STIOS) and gate to shallow-well contact (SSS-C) processes for ultra low power dual gate CMOS. In Int’l Electron
Devices Meeting, pages 459–462, 1996.
[34] N. Lindert, T. Sugii, S. Tang, and C. Hu. Dynamic threshold
pass-transistor logic for improved delay at lower power supply voltages. IEEE Jour. of Solid-State Circ., 34(1):85–89, 1
1999.
Appendix: Proof of Theorem 1
Let us first abstract from the constraints in Eq. (7).
For
−−−−−→
every test stimulus tj , consider the vector U til(tj ) :=
(U til1 (tj ), . . . , U tilM (tj )) ∈ RM . If stimulus tj is assigned
frequency f aj , then the vector of detection probabilities in M
−−−−−→
fault modes is given as (DP1 , DP2 , . . . DPM ) = f a1 U til(t1 ) +
−−−−−→
· · · + f aN U til(tN ). The set of detection probability vectors corresponding to test stimuli combinations consistent with Eqs. (4 –
6) is a polytope P ∈ RM spanned by N M -dimensional vectors
−−−−−→
−−−−−→
U til(t1 ), . . . U til(tN ). The objective function is also defined on
that polytope. The maximal value must be assumed on a vertex of
the polytope P.
However, parts of the polytope P are not consistent with Goal
(2)-constraints from Eq. (7). Accounting for these constraints
corresponds to cutting away parts of the polytope, or more exactly,
intersecting it several times with a half-space (the number of
needed intersections corresponds to the number of constraints).
This results in a new polytope R, which is the actual definition
range of the objective function. Suppose that R is not empty (otherwise the constraints are too tight and there is no solution). The
maximal value of the objective function is assumed on a vertex of
R. Let this vertex be v. Since any vertex of R is either a vertex of
P or results from the intersection of P with a hyperplane, v is guaranteed to be on a face F of P. The facet F is (M − 1)-dimensional
and can be mapped onto a congruent polytope A(F ) ∈ RM −1 by
a linear bijection A. A(F ) ∈ RM −1 is a convex hull of N vectors
A(U til1 (t1 ), . . . U tilM (t1 )), . . . A(U til1 (tN ), . . . U tilM (tN )).
According to Carathéodory’s Fundamental Theorem, each
point in A(F ), including A(v), is in the convex combination of (M − 1) + 1 = M or fewer points of
A(U til1 (t1 ), . . . U tilM (t1 )), . . . A(U til1 (tN ), . . . U tilM (tN )).
Mapping M (or fewer) points such that A(v) is in their convex
combination, back to RM (using A−1 ) yields ≤ M vectors. They
correspond to ≤ M test stimuli with non-zero values of f aj . The
other values of f aj are obtained from the coefficients of the convex
combination of A(v).
2
INTERNATIONAL TEST CONFERENCE
10