ArticlePDF Available

A Discrete Event System Approach to Online Testing of Speed Independent Circuits

Authors:
  • Indian Institute of Information Technology Bhagalpur

Abstract and Figures

With the increase in soft failures in deep submicron ICs, online testing is becoming an integral part of design for testability. Some techniques for online testing of asynchronous circuits are proposed in the literature, which involves development of a checker that verifies the correctness of the protocol. This checker involves Mutex blocks making its area overhead quite high. In this paper, we have adapted the Theory of Fault Detection and Diagnosis available in the literature on Discrete Event Systems to online testing of speed independent asynchronous circuits. The scheme involves development of a state based model of the circuit, under normal and various stuck-at fault conditions, and finally designing state estimators termed as detectors. The detectors monitor the circuit online and determine whether it is functioning in normal/failure mode. The main advantages are nonintrusiveness and low area overheads compared to similar schemes reported in the literature.
This content is subject to copyright. Terms and conditions apply.
Research Article
A Discrete Event System Approach to Online Testing of
Speed Independent Circuits
P. K. Biswal, K. Mishra, S. Biswas, and H. K. Kapoor
Department of Computer Science and Engineering, Indian Institute of Technology, Guwahati 781 039, India
Correspondence should be addressed to S. Biswas; santoshbiswas@yahoo.com
Received  November ; Revised  March ; Accepted  March 
Academic Editor: Marcelo Lubaszewski
Copyright ©  P. K. Biswal et al. is is an open access article distributed under the Creative Commons Attribution License,
which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
With the increase in so failures in deep submicron ICs, online testing is becoming an integral part of design for testability. Some
techniques for online testing of asynchronous circuits are proposed in the literature, which involves development of a checker that
veries the correctness of the protocol. is checker involves Mutex blocks making its area overhead quite high. In this paper, we
have adapted the eory of Fault Detection and Diagnosis available in the literature on Discrete Event Systems to online testing of
speed independent asynchronous circuits. e scheme involves development of a state based model of the circuit, under normal
and various stuck-at fault conditions, and nally designing state estimators termed as detectors. e detectors monitor the circuit
online and determine whether it is functioning in normal/failure mode. e main advantages are nonintrusiveness and low area
overheads compared to similar schemes reported in the literature.
1. Introduction
With the advancement of VLSI technology for circuit design,
there is a need to monitor the operations of circuits for
detecting faults []. ese needs have increased dramatically
in recent times because, with the widespread use of deep
submicrontechnology,thereisariseintheprobabilityof
development of faults during operation. Performing tests
before operation of a circuit and assuming continued fault-
free behaviour may decrease the reliability of operation. In
other words, there is a need for online testing (OLT) of
VLSI circuits, whereupon they are designed to verify, during
normal operation, whether their output response conforms to
the correct behaviour.
MostofthecircuitsusedinVLSIdesignsaresyn-
chronous. Compared to synchronous circuits, asynchronous
designs oer great advantages such as no clock skew problem,
low power consumption, and average case performances
rather than the worst case performances. Testing asyn-
chronous circuits as compared to synchronous circuits is
considered dicult due to the absence of the global clock [].
OLT has been studied for the last two decades and can be
broadly classied into the following main categories:
(i) Self-checking design.
(ii) Signature monitoring in FSMs.
(iii) Duplication.
(iv) Online BIST.
e approach of self-checking design consists of encoding
the circuit outputs using some error detecting code and
then checking some code invariant property (e.g., Parity) [
]. Some examples are Parity codes [], m-out-of-n codes
[],andsoforth.eareaoverheadformakingcircuits
self-checkable is usually not high. ese techniques, termed
as “intrusive OLT methodologies,” require some special
properties in the circuit structure to limit the scope of fault
propagation. ese properties can be achieved by resynthesis
and redesign of the original circuit, which may aect the
critical paths in the circuit.
Signature monitoring techniques for OLT [,]work
by studying the state sequences of the circuit FSM model
Hindawi Publishing Corporation
VLSI Design
Volume 2015, Article ID 651785, 16 pages
http://dx.doi.org/10.1155/2015/651785
VLSI Design
during its operation. ese schemes detect faults that lead to
illegal paths in the control ow graph, that is, paths having
transitions which do not exist in the specied FSM. To make
the runtime signature of the fault-free circuit FSM dierent
from the one with fault, a signature invariant property is
forcedduringFSMsynthesis,makingthetechniqueintrusive.
Further, the state explosion problem in FSM models makes
the application of this scheme dicult for practical circuits.
Duplication based OLT technique works by simply
replicating the original circuit and comparing the output
responses []; a fault is detected if the outputs do not
match. e major advantage of duplication based scheme is
nonintrusivity; however, area overhead is more than double.
To address this issue, partial duplication technique is applied
[,]. is scheme rst generates a complete set of test
vectors for all the faults possible, using Automatic Test Pattern
Generation (ATPG) algorithms. Aer that, a subset of faults
areselected(basedonrequiredcoverage)andasubsetoftest
vectors (based on tolerable latency) for the selected faults are
taken and synthesized into a circuit which is used for OLT. It
may be noted that ATPG algorithms are optimized to gener-
ate the minimum number of test vectors that detect all faults.
As the scheme applies ATPG algorithms in a reverse philos-
ophy, it becomes prohibitively complex for large circuits.
e technique of designing circuits with additional on-
chip logic, which can be used to test proper operation of
the circuit before it starts, is called o-line BIST. O-line
BIST resources are now being used for online testing [
]. is technique utilizes the idle time of various parts of
the circuit to perform online BIST. Idle times are reducing in
circuits because of pipelining and parallelism techniques and
so online BIST scheme is of limited utility.
Motivation of the Work.Fromtheabovediscussionwemay
state that an ecient approach for OLT should have the
following metrics:
(i) e OLT scheme should be nonintrusive. is is
the most important constraint as designers meet
requirements, like frequency, area, power, and so
forth, of the circuit to produce an ecient design and
do not want the test engineers to change them.
(ii) e OLT technique should support well accepted fault
models.
(iii) e scheme should be computationally ecient so
that it can handle reasonably large circuits.
Mostofthepaperscitedintheabovediscussionarefor
OLT of synchronous circuits and only a few of them [,,]
are applicable to asynchronous circuits. Now, we elaborate on
these three works on OLT of asynchronous circuits and derive
motivation of the present work.
Traditionally, double redundancy methods were used for
OLT of asynchronous designs []. In this scheme, two copies
of the same circuit work in parallel and the online tester
checks whether they generate the same output. is scheme
results in more than % area and power overheads. Further,
both being the same circuit, they are susceptible to similar
nature of failures. e schemes reported in [,]basically
work by checking whether the output of the asynchronous
circuit maintains a predened protocol (i.e., there is no
premature or late occurrence of transitions). e checker
circuit is implemented using David cells (DCs), Mutual
Exclusion (Mutex) elements, C-elements, and logic gates.
e checker circuit has two modes: operation-normal mode
andself-testmode.Innormalmode,thecheckerisusedto
detect whether there is any violation in the protocol being
executed by the CUT. On the other hand, in self-test mode,
the checker is used to detect faults that may occur within the
checker itself. Mutex elements (component of asynchronous
arbiter) were used to grant exclusive access to the shared
DCs between dierent modes of operation. e area overhead
of the Mutex blocks is high, even compared to the original
circuit. So, area overhead of the online tester in this case
wouldbemuchhigherthanthatoftheoriginalcircuitand
even the redundancy based methods. Further, this tester only
checks the protocol and so fault coverage or detection latency
cannot be guaranteed.
Discrete event system (DES) model based methods are
usedforfailuredetectionforawiderangeofapplications
because of the simplicity of the model as well as the associated
algorithms []. A DES is characterized by a discrete state
space and some event driven dynamics. Finite state machine
(FSM) based model is a simple example of a DES. In the state
based DES model, the model is partitioned according to the
failure or normal condition. e failure detection problem
consists in determining, in nite time aer occurrence of the
failure, whether the system is traversing through normal or
failure subsystem. A fault is detectable by virtue of certain
transitions (in the failure states) which are called fault detect-
ing transitions (FD-transitions). FD-transition is a transition
of the faulty subsystem, for which there is no corresponding
equivalent transition in the normal subsystem. Using the FD-
transitions, a DES fault detector is designed, which is a kind of
state estimator of the system. For OLT of circuits, the detector
is synthesized as a circuit which is executed concurrently with
the circuit under test (CUT). Biswas et al. in [,]have
developed an OLT scheme for synchronous circuits using the
FSM based DES theory, which satises most of the metrics
mentioned above for an ecient online tester design. In this
paper, we aim at using the theory of failure detection of DES
models for OLT of SI circuits.
Just like synchronous circuits, the basic FSM framework
is also used to model asynchronous circuits with slight
modication. In case of synchronous circuits, state changes
intheFSMoccuronlyattheactiveedgeoftheregister
clock, irrespective of the time of change of the inputs. On
theotherhand,inasynchronouscircuits,statechangescan
occur immediately aer transition in the inputs. FSM used
to model asynchronous circuit is called AFSM []. An
alternative to AFSM is burst-mode (BM) state machines [].
AFSMandBMstatemachinearesimilarfromthemodeling
perspective; however, in case of BM state machine transitions
are labeled with signal changes rather than their explicit
values, which is the case in AFSMs. AFSMs and BM state
machines assume that rst inputs change followed by outputs
andnallynewstateisreached.Duetothestrictsequence
of signal changes, all asynchronous protocols cannot be
VLSI Design
modeled using AFSMs or BM state machines. Extended
BM state machines address this modeling issue by allowing
some inputs in a burst to change monotonically along a
sequence of bursts rather than in a particular burst. Petri
net(PN)iswidelyacceptedmodelingframeworkforhighly
concurrent systems []. PN models a system using interface
behaviors which are represented by allowed sequence of
transitions or traces. e view of an asynchronous circuit as a
concurrent system makes PN based models more appropriate
than AFSMs and BM state machines for their analysis and
synthesis. ere are several variants of PNs among which
signal transition graph (STG) is generally used to model
asynchronous circuits. e major reason is that the STG
interprets transitions as signal transitions and species circuit
behavior by dening casual relations among these signal
transitions [].
In this paper, we aim at using the theory of failure
detection of DES model for OLT of SI asynchronous circuits.
Several modications are made in the DES framework used
for synchronous circuits [,]whenappliedforSIcircuits.
e modications are as follows:
(i) We rst model SI circuits along with their faults as
STGs and then translate them into state graphs. State
graphs are similar to FSM based DES models from
which FD-transitions can be determined.
(ii) In case of synchronous circuits, the fault detector
is an FSM which detects the occurrence of FD-
transitions. A synchronous circuit can be synthesized
in a straightforward way from the FSM specication
[,] that performs online testing. Why the same
design cannot be synthesized as an asynchronous
circuit will be discussed in this paper. As the use
of synchronous circuit for OLT of asynchronous
modules is not desirable, we propose a new technique
for detector design which can be synthesized as a SI
circuit. e detector is designed as state graph model
whichisliveandhascompletestatecoding(CSC);
these properties ensures its synthesizability as a SI
circuit.
e paper is organized as follows. In Section ,wepresent
some denitions and formalisms of the DES framework.
Section  illustrates DES modeling for a speed independent
circuit under normal and stuck-at faults. In Section ,the
DES detector for the SI asynchronous circuit is designed.
Synthesizing the DES detector as online tester circuit is also
discussed in the same section. Section  presents experi-
mental results regarding area overhead and fault coverage of
the DES detector based online tester. Also, comparison of
area overhead of the proposed approach with other similar
schemes is reported. Finally, we conclude in Section .
2. DES Modeling Framework:
Definitions and Formalisms
Adiscrete event system (DES) model is dened as =
,, I,0where ={V1,V2,....,V𝑛}(Incaseofmodeling
SI circuits as DES, the state variables are values of the I/O
signals. So, in this work, we will interchangeably use the
terms signal and variable.) is a nite set of discrete variables
assuming values from the set {0,1}, called the domains of
the variables, is a nite set of states, Iis a nite set of
transitions, and 0 is the set of initial states. A state
is a mapping of each variable to one of the elements of the
domain of the variable. A transition ∈Ifrom a state to
another state +is an ordered pair ,+,whereis denoted
by () and +is denoted as ().
2.1. Failure Modeling. e failure of the system is modeled by
dividing the DES model into submodels and each submodel is
used to model the system under normal or failure conditions.
To dierentiate between the submodels, each state is
assigned a failure label by a status variable with its domain
being equal to { ∪ 1∪
2⋅⋅⋅
𝑑},whereis normal
status, 𝑖,1≤≤,isfailurestatus,andis the number of
possible faults.
Denition 1 (normal -state). A -state is normal if () =
{}. e set of all normal states is denoted by 𝑁.
Denition 2 (𝑖--state). A -state is failure state or
synonymously an 𝑖-state, if 𝑖∈ ().esetofall𝑖-states
is denoted by 𝐹𝑖.
Denition 3 (normal -transition). A -transition ,+is
called a normal -transition if ,+∈
𝑁.
Denition 4 (𝑖--transition). A -transition ,+is
called an 𝑖--transition if ,+∈
𝐹𝑖.
Denition 5 (equivalent states). Two states and are said to
be equivalent, denoted by ,if|𝑉=|
𝑉and () = ().
Inotherwords,twostatesaresaidtobeequivalentifthey
have the same values for state variables and dierent value for
status variable.
A transition ,+,where() =
+(),iscalledafailure
transition indicating the rst occurrence of some failure in
the system. Since failures are assumed to be permanent,there
is no transition from any state in 𝐹𝑖to any state in 𝑁or
from any state in 𝐹𝑖to any state in 𝐹𝑗.
Denition 6 (equivalent transitions). Two transitions 1=
1,+
1and 2=
2,+
2are equivalent, denoted by 12,
if 12,+
1+
2andtheymustassociatewiththesamesignal
change.
Suppose that there is a transition in failure DES model
for which there is no corresponding equivalent transition
in normal DES model, then that transition is called failure
detecting transition (FD-transition). e failure is detected
when the system traverses through the FD-transition. us,
we can dene FD-transition as follows.
Denition 7 (FD-transition). A 𝑖--transition of faulty DES
model 󸀠=
󸀠,󸀠+is an FD-transition, if there is no -
transition =,
+in the normal DES model such that
󸀠.
VLSI Design
e motivation of failure detection using DES model is to
nd out such FD-transitions and design DES detector using
these transitions. In the next section, we discuss how to model
SI circuits using DES.
3. DES Model of a Speed Independent Circuit:
Normal and Faulty
As already discussed, the rst step to design a DES based
online tester is to obtain the normal and faulty state based
model of the CUT. However, the traditional state based DES
paradigm cannot be directly used for modeling SI circuits. So
in this case we will start with signal transition graph (STG),
which is a type of Petri net based DES, to specify fault-free
and faulty conditions. e STGs will be converted into state
graphs(similartoFSMs)usingtheconceptpresentedin[].
We rst discuss fault modelling at the STG level using
an example and concepts from []. In addition to the
models (i.e., faults in transistors of the C-elements) given in
[], we have also modeled stuck-at faults on all wires (i.e.,
input/output of gates).
3.1. Fault Modeling. e SI asynchronous CUT example
being considered to illustrate the proposed scheme is shown
in Figure  (taken from []). Traditionally, synchronous
circuits consist of blocks of combinational logic connected
with clocked latches or registers, while, in case of SI circuit
designs, we basically have logic gates as building blocks with
C-elements, which act as storage elements. Transistor level
diagram of C-element is shown in Figure ; logic function of
the C-element can be described by the Boolean equation =
+󸀠+󸀠,whereisthenextstateand󸀠is the old state
value [,]. e output of C-element becomes logically
high (low) when both the inputs are logically high (low);
otherwise it keeps its previous logic value. ere are two
types of C-elements used in SI circuits: static C-element and
dynamic C-element. e static version of C-element promises
that the information inside it can be stored for unbounded
periods. However, dynamic versions of C-element provide
gains in terms of area, power, and delay []. Since the
circuits having high operating speed, low area, and power
consumption are preferred in modern days, we have chosen
SI circuits with dynamic C-elements instead of static ones.
Figure  shows the STG for the CUT being considered.
Rising (falling) transitions on signals, indicated by + (), are
shown in the STG. e dark circles along the arcs are called
tokens. e token indicates one of possibly a set of signals that
enable transition to re. If all input arcs for a signal transition
have tokens then that signal transition is said to be enabled.
For example, when signal in goes high (denoted by in+)and
out goes high (denoted by out+), only then out +transition
can take place. Upon ring out +, a token is placed on each
of its outgoing arcs, thus enabling in.Notethatout is
enabled aer out+and in +.
In this paper, we have considered SI circuits that contain
C-elements (we assumed dynamic version) and logic gates.
For the logic gates, the most popular fault model is the
stuck-at fault model, which is at the gate level. However,
C1
C2
5
6
10
11
12
13
4
2
1
38
7
9
B
A
B
A
Rin
Ain
Aout
Rout
F : Example of speed independent asynchronous CUT.
n1
p1
p2
n2
n3
p3
A
B
C
V
dd
F : Transistor diagram of dynamic C-element.
for the C-elements stuck-on and stuck-o faults for each
transistor are an accepted fault model []. So we have chosen
a mixed gate/transistor level description for modeling the
faults. To illustrate fault modeling at both C-elements and
basic gates, we consider the circuit example from []which
is shown in Figure .
3.1.1. STG Based Modeling. In this work, we model single
stuck-at faults in the gates and transistors (for the C-
elements) and map them to STGs of the circuit. For the
analysis, the signals attached to the inputs and of the C-
elements are also indicated in the gate level circuit diagram
of Figure . Now, we consider some of these faults (one at
a time), analyze their eects, and nally modify the STG to
model the faults.
VLSI Design
Aout
Rin+
Rin
Aout+
Rout
Ain
Rout+
Ain+
F : Signal transition graph of sample circuit.
Consider the C-element C of Figure  and refer to
transistor level circuit of Figure . e C-element C has out
and in as inputs and out as output. If the transistor 1 has
a stuck-on fault, this leads to error in the circuit that it needs
to wait for only 2 to be enabled to generate output. When 2
turns on, then a path to ground via 1 and 2gets established,
which makes 3 on and 3 o, making C high. So C has to
wait only for 2 (i.e., in+which corresponds to input of
C to become ) to turn on and change the output. In other
words, it has to wait for only in +(and not also for out+,
which is the requirement under normal condition) before it
can generate out+.us,thefaultin1 leads to premature
ring of the out+transition. We represent this by including
atokenonthearcconnectingout +to out+. Availability of
this token will enable out+to re as soon as in+arrives,
without waiting for out+. is token is denoted by a “”
shown on the arc in Figure .
Now, consider C-element C producing output out,with
transistor 1 having stuck-on fault. As 1 is on, the gate has to
wait for 2 to turn on before it can change the output. When
2 turns on (by virtue of =0) then there is no path to
ground as 2 is o, which makes 3 o and 3 on, making C
low. Here, C has to wait for the input =0to generate out.
Referring to Figure ,forto become , we need either out
tobecome(thesameasin becoming ) or in to become
. us, as soon as we have either out+or in+,outwould
re. It may be noted that, under normal condition, for out
to re, we also require =0,whichmandatesbothout+and
in+. is failure condition is indicated in the STG by adding
a“”totheinputarcsofout,whichisshowninFigure .
To elabor ate, Figure (a) (Figure (b))showsthatoutcan
be red as soon as in+(out +) res and does not wait for
out+(in +).
As the third fault, let C have stuck-on fault at 2.e
stuck-on fault at 2 enforces the circuit to wait only for 1 to
Aout
Rin+
Rin
Aout+
Rout
Ain
Rout+
Ain+
1
F:STGlevelmodelofstuck-onfault1 of C [].
be enabled for generating output out+.As1 is connected to
input ,whichislogicalORingofoutand in , transition
out+can re aer outor in (without requiring to
wait for in+). is premature ring of transition out +is
indicated in the STG by adding a “” to in+,whichisshown
in Figure .
For the gates, stuck-at- and stuck-at- faults are consid-
ered at their inputs and output nets. Let Line  of the AND
gate from Figure  have a stuck-at- fault. is makes Line 
stuck-at- fault. As Line  is connected to the input of the
C-element C, we have transistor 2 on and transistor 2 o.
Note that as 2 is always o, there is no path to the ground. So
the output out can never become  because 3can never turn
on. In other words, we will never have the out +transition.
isisindicatedbyaddinga“”ontheoutputarcsofout+
in Figure .
If Line  gets stuck at , this will lead to Lines  and  being
stuck at , further leading to Line  being stuck at . As Line
isconnectedtotheinputoftheC-element,wewillhave
the fault manifestation similar to the case of Line  stuck at .
Now, we consider a stuck-at- fault at Line . As this line is
connected to the input of the C-element C, it will lead to
output out neverbecoming.eeectisshownbyadding
a“”totheoutputarcsofout+in Figure .
Now, we consider an example of a redundant fault; that
is,nologicaldierenceisobservedintheoperationofthe
circuitaerfault.Aninstanceofsuchafaultis1 stuck-on
fault in C. is fault enforces the circuit to wait only for 2
to be enabled (i.e., to be ) for generating output out+.As
2 is connected to input , which is logical ANDing of in+,
out,andin ,out+can re only aer three transitions,
namely, in +and outand in re. It may be noted that
outand in also imply that input (connected to 1)of
C is , which in turn implies condition for 1.Asfaultand
normal condition both imply 1 to be on, stuck-on fault at 1
VLSI Design
1
Aout
Rin+
Rin
Aout+
Rout
Ain
Rout+
Ain+
(a) 𝑅outdoes not wait for 𝐴out+
1
Aout
Rin+
Rin
Aout+
Rout
Ain
Rout+
Ain+
(b) 𝑅outdoes not wait for 𝐴in+
F : STG level model of stuck-on fault in 1 of C [].
1
Aout
Rin+
Rin
Aout+
Rout
Ain
Rout+
Ain+
F:STGlevelmodelofstuck-onfault2 of C [].
of C does not generate any behavioral dierence. Obviously,
such faults cannot be detected and under the single stuck-at
fault assumption do not cause signicant reliability issues.
For the fault model considered, the total number of faults
in a SI circuit having dynamic C-elements is equal to 
times the number of C-elements (each C-element consists
of  transistors and each transistor can have stuck-on and
stuck-o faults) plus twice the number of I/O lines of the
gates (each line has either stuck-at- or stuck-at- fault).
0
0
Aout
Rin+
Rin
Aout+
Rout
Ain
Rout+
Ain+
F : STG level model of stuck-at- fault in Line .
Sothenumberoffaultsincaseofthecircuitconsideredin
Figure  is not too small and listing them all would make a
tabular representation long. So a partial list of faults and their
eectsontheSTGisgiveninTa b l e  .
3.1.2. State Graph Based Fault Modeling and FD-Transitions.
As already discussed, the rst step of DES based OLT
design is to generate the normal and faulty models. For SI
circuits, rst the STGs under normal and faulty conditions are
VLSI Design
00
Aout
Rin+
Rin
Aout+
Rout
Ain
Rout+
Ain+
F : STG level model of stuck-at- fault in Line .
obtained and then converted into state based models. In this
subsection, we explain the concept using the example circuit
of Figure  under normal condition and two faults, namely,
stuck-on fault in 1 of C and stuck-on fault in 1 of C.
e state based DES model for the normal circuit is
shown in Figure .Itmaybenotedthatinthecircuitthere
are  I/O signals, namely, in,out ,in ,andout .Inthe
DES model corresponding to each signal, there is a discrete
variable: V1=
in,V2=
out,V3=
in,V4=
out
which assumes values from the set {0,1}. e set of states
are 0 to 13 and 0 is the initial state. State mappings and
transitions are shown in Figure ; for example, state 0 maps
variables in,out,in,out to 1,1,0,0.Instates0 and
1 mappings are 1,1,0,0and 1,1,0,1,respectively.So
transition from 0 to 1 changes out from  to ; this is
indicated by transition out+.Now,ifwelookattheSTGfor
the normal circuit in Figure  we note that out +can re if
in+and out +have a token (i.e., in =1and out =1). In
state 0 as in =1and out =1,out+can re. Similarly, the
wholeDEScanbeconstructed.
e state based DES model for the circuit under 1 stuck-
on fault in C is shown in Figure . e set of states are
󸀠0to 󸀠13 and 󸀠0is the initial state. e transitions
andstatemappingareshowninthegure.Asdiscussedin
the previous subsection, 1 stuck-on fault in C results in
premature ring of out +(i.e., it need not wait for out+
and can re only if in +holds).Ifweobservethefailure
DES model in Figure ,wenotethattherearetwodotted
transitions, which correspond to the failure condition, that is,
premature ring of out +. One dotted transition is between
󸀠11 and 󸀠6.Itmaybenotedthatin󸀠11 we have in =1,
out =0,in =1,andout =0,whereeventhough
out+is not enabled, because in+is enabled, out+res. A
similar premature ring of out +occurs between 󸀠13 and
T:ApartiallistoffaultsandtheireectsonSTG.
Fault type Eect of fault on the transitions
Tra n sist o r 1 stuck-on fault
for C
out+ can only be red aer in +,
out,andin(the same as
normal condition)
Tra n sist o r 2 stuck-on fault
for C
out+ can be red aer either out
or in
Tra n sist o r 1 stuck-on fault
for C
outcan be red aer either out+
or in+
Tra n sist o r 2 stuck-on fault
for C
outcan only be red aer out+
and in+
Tra n sist o r 1 stuck-on fault
for C out+ can be red aer in+
Tra n sist o r 2 stuck-on fault
for C out+ can be red aer out+
Tra n sist o r 1 stuck-on fault
for C outcan be red aer in
Tra n sist o r 2 stuck-on fault
for C outcan be red aer out
Tra n sist o r 1 stuck-o fault
for C All arcs from out +arealways
Tra n sist o r 2 stuck-o fault
for C All arcs from out +arealways
Tra n sist o r 1 stuck-o fault
for C All arcs from out are always 
Tra n sist o r 2 stuck-o fault
for C All arcs from out are always 
Tra n sist o r 1 stuck-o fault
for C All arcs from out +arealways
Tra n sist o r 2 stuck-o fault
for C All arcs from out +arealways
Tra n sist o r 1 stuck-o fault
for C All arcs from out are always 
Tra n sist o r 2 stuck-o fault
for C All arcs from out are always 
Tra n sist o r 3 stuck-on fault
for C
Tra n sist o r 3 stuck-o fault
for C
All arcs from out +arealways
Tra n sist o r 3 stuck-on fault
for C
Tra n sist o r 3 stuck-o fault
for C
All arcs from out are always 
Tra n sist o r 3 stuck-on fault
for C
Tra n sist o r 3 stuck-o fault
for C
All arcs from out are always 
Tra n sist o r 3 stuck-on fault
for C
Tra n sist o r 3 stuck-o fault
for C
All arcs from out +arealways
Stuck-at- fault at Line  or
Line  or Line 
Stuck-at- fault at Line  or
Line 
Stuck-at- fault at Line  or
Line 
All arcs from out +arealways
VLSI Design
T  : C on t i nued.
Fault type Eect of fault on the transitions
Stuck-at- fault at Line 
and Line  All arcs from out +arealways
Stuck-at- fault at Line  or
Line 
Stuck-at- fault at Line  or
Line 
Stuck-at- fault at Line  or
Line 
All arcs from out are always 
Stuck-at- fault at Line  All arcs from out +arealwaysand
all arcs from out +arealways
Stuck-at- fault at Line  All arcs from out are always  and
all arcs from out are always 
Stuck-at- at Line  All arcs from out are always  and
all arcs from out +arealways
Stuck-at- fault at Line  All arcs from out+arealwaysand
all arcs from out are always 
Stuck-at- fault at Line 
or Line  All arcs from out +arealways
Stuck-at- fault at Line  or
Line  All arcs from out are always 
1010
1011
0001
1101
0101
1110
1111
0111
0011
0010
1000
0000
1001
X0
1100
X1
X4
X2
X5 X6
X7 X8
X10
X9
X11 X12
X13
X3
Aout
Aout
Rin+
Rin+
Rin
Rin
Rin
Rin
Aout+
Aout+
Rout
Rout
Ain
Ain
Ain
Ain
Rout+
Ain+
Ain+
Ain+
F : DES model for normal circuit (STG of Figure ).
󸀠8.So,forthefault1 stuck-on fault in C, there are two
FD-transitions, namely, 󸀠11,󸀠6 and 󸀠13,󸀠8.
e state based DES model for the circuit under 1 stuck-
on fault in C is shown in Figure . e set of states are 󸀠󸀠0to
󸀠󸀠13 and 󸀠󸀠 0is the initial state. As discussed in the previous
subsection, 1 stuck-on fault in C results in premature ring
of outtriggered by either in+or out+. is is captured
bythedottedtransitions󸀠󸀠 2, 󸀠󸀠11 and 󸀠󸀠1,󸀠󸀠 8 in
failure DES model in Figure . e transition 󸀠󸀠2,󸀠󸀠11
represents ring of outby in+in spite of out+not being
1010
1011
0001
1101
0101
1110
1111
0111
0011
0010
1000
0000
1001
1100
X󳰀1X󳰀2
X󳰀0
X󳰀3
X󳰀4
X󳰀5X󳰀6
X󳰀7X󳰀8
X󳰀9X󳰀10
X󳰀11 X󳰀12
X󳰀13
Aout
Aout
Rin+
Rin+
Rin
Rin
Rin
Rin
Aout+
Aout+
Aout+
Aout+
Rout
Rout
Ain
Ain
Ain
Ain
Rout+
Ain+
Ain+
Ain+
F : DES model for circuit with 1 stuck-on fault in C (STG
of Figure ).
1010
1011
0001
1101
0101
1110
1111
0111
0011
0010
1000
0000
1001
1100
X󳰀󳰀1
X󳰀󳰀0
X󳰀󳰀2
X󳰀󳰀3
X󳰀󳰀4
X󳰀󳰀5X󳰀󳰀 6
X󳰀󳰀7X󳰀󳰀 8
X󳰀󳰀9X󳰀󳰀 10
X󳰀󳰀11 X󳰀󳰀 12
X󳰀󳰀13
Aout
Aout
Rin+
Rin+
Rin
Rin
Rin
Rin
Aout+
Aout+
Rout
Rout
Rout
Rout
Ain
Ain
Ain
Ain
Rout+
Ain+
Ain+
Ain+
F : DES model for circuit with 1 stuck-on fault in C (STGs
of Figure ).
enabled and the transition 󸀠󸀠1, 󸀠󸀠8 represents ring of
outby out +in spite of in+not being enabled. us, for
this fault there are two FD-transitions, namely, 󸀠󸀠2, 󸀠󸀠11
and 󸀠󸀠1, 󸀠󸀠 8.
e set of FD-transitions is shown in Table .
VLSI Design
T : FD-transitions.
FD-transitions Start
state
Final
state Eect
  Premature re of out+
before in+(byin)
  Premature re of out+
before in+(byin)
  Premature re of out
before out+(byin +)
  Premature re of out +
before out+(byin+)
  Premature re of out+
before out+(byin+)
  Premature re of out
before out(by in)
  Premature re of out
before out(by in)
  Premature re of out
before in(by out)
  Premature re of out
before in(by out)
   Premature re of out
before in+(byout +)
In the next section, we will discuss the procedure for
design of the DES detector from FD-transitions and its
synthesis as a SI circuit.
4. DES Detector Based Online Tester
A DES detector is basically a state estimator which predicts
whether the Circuit Under Test (CUT) traverses through
normal or faulty states/transitions. Broadly speaking, the
detector is constructed using transitions which can manifest
the fault eects. In other words, such a transition is a faulty
transition for which there is no corresponding equivalent
normal transition. As already mentioned, we call such transi-
tions failure detecting transitions (i.e., FD-transitions). In the
circuit under consideration, comparing the normal (Figure )
and 1 stuck-on fault at C DES models (Figure ), we may
note that there are two transitions (dotted) 󸀠11,󸀠6 and
󸀠13,󸀠8 which manifest the fault eect. Corresponding
to these transitions, there are no equivalent transitions in the
normal model. ese two transitions are FD-transitions for
thefaultandareusedinDESdetectorconstruction.
If the CUT is a synchronous circuit then obviously the
online tester is also a synchronous circuit that can be designed
from the FD-transitions using straightforward FSM synthesis
philosophy [,]. e detector FSM has three classes of
states, namely, initial, intermediate, and nal. e detector
measures the I/O signals of the CUT (i.e., variables) to
determine whether the following happens.
On startup the detector is in its initial state and it
checks whether the CUT is in the initial state of any FD-
transition. For example, if we consider only two faults in
the circuit under consideration, stuck-on fault in 1 of C
and stuck-on fault in 1 of C, then the FD-transition set
is {󸀠11,󸀠6,󸀠13, 󸀠8, 󸀠󸀠 2, 󸀠󸀠11}.Sointheinitial
state the detector checks whether the signals in ,out,in ,
and out are 1,0,1,and0or , , , and  or , , , and . If so,
the detector moves to an intermediate state (in the next clock
edge) corresponding to the value matched. For each of the
FD-transitions, there is a corresponding intermediate state
in the detector. For example, if in,out,in,andout are
measured to be , , , and  in the initial state of the detector,
the detector moves to the intermediate state corresponding
to FD-transition 󸀠11,󸀠6.However,ifthesignalsdonot
match initial state of any FD-transition the detector loops in
the initial state. In the intermediate state whether the values
of the signals of the CUT match with the nal state of the
corresponding FD-transition is checked; if so, the fault is
detected and the detector moves to the nal state and is
deadlocked there. Otherwise, it moves to the initial state.
Continuing with the example, if the values of in,out,in ,
and out are,,,andfromtheintermediatestate,FD-
transition 󸀠11, 󸀠6 is detected (i.e., stuck-on fault in 1 of
C) and detector moves to nal state in the next clock edge.
Otherwise, if in,out,in,andout are , , , and  then
CUT is normal and the detector moves to the initial state.
e above mentioned philosophy of constructing the
detector and then synthesizing it into a synchronous system
is widely used in the DES theory [] and has been applied for
OLT of synchronous circuits [,]. Obviously, if the CUT is
an asynchronous circuit and so must be the detector circuit.
However, it may be noted that the same philosophy cannot be
directly used in the case of SI circuits. e reason is that the
FSM of the detector designed above has liveness issue in the
nalstateandhascompletestatecoding(CSC)violationsin
the intermediate states.
Now we propose a new technique for detector design
which can be synthesized as a SI circuit. e detector is
designed as state graph model which is live and has complete
state encoding, that ensures its synthesizability as a SI circuit.
Before formalizing the algorithm for the design of the state
graph of the detector, we rst introduce the basic philosophy
of its working using the examples from the previous section.
An FD-transition in SI circuit design paradigm can be
stated as, “under failure, a signal canchangeinthepresence
of signals 1,2,...,,(1≤)whichisnotpossible
under normal condition.” For example, in the case of 1 of
C stuck-on fault, 󸀠11,󸀠6 is an FD-transition which
changes signal out from  to  (i.e., out+) and the other
signals are in =1,out =0,andin =1(Figure ). It
may be noted that in normal condition for changing out
from  to  we need in =1,out =1,andin =0
(Figure ). Comparing with the faulty condition we may state
that, “under 1 of C stuck-on fault, signal out can change
from  to  in presence of signals in =1,out =0,and
in =1which is not possible under normal condition.” So,
to detect whether FD-transition 󸀠11,󸀠6 has occurred,
the detector needs to tap lines out,in ,andout (in is not
required to be monitored as its value is same under normal
and faulty case) of the CUT and determine whether out+
has red and at that time whether out =0or in =1or
both; if so, a status output line is made . For optimization
 VLSI Design
of the detector in terms of number of states, tap lines, and
so forth, without loss of fault detection capability, we may
consider checking out +in presence of either out =0or
in =1but not both. If we consider the other FD-transition
󸀠13,󸀠8 for the fault, it can be detected by checking
whether out+has red and at that time whether out =0;
in and in are not required to be monitored as their values
are the same under normal and faulty case. So, it may be
stated that to detect the fault by FD-transitions 󸀠11,󸀠6
and 󸀠13,󸀠8 we need to check whether out +has red
and at that time whether out =0. e design and ow of the
detector for these two FD-transitions are as follows:
(1) e state encoding tuple is out,out,.e
initial state of the detector 0is encoded as 100.e
rst two bits represent the complement of out =
0and out =1, that is, complement of value of
out in state 󸀠11 and complement of change of out
by the FD-transition. e third bit represents 
output of the detector which is  until FD-transition
is detected.
(2) e detector waits for signal out to become  and
if so it moves to state 1say, which is encoded as
000.However,fromstate0,ifout becomes , FD-
transition cannot be detected because this is normal
situation (state 0 in Figure )whereout+res
when out =1; detector moves to state 5having
encoding 110.Whenout becomes  in state 5,the
detector moves back to 0from where it again waits
to detect whether the FD-transition occurs.
(3) From state 1the following may happen:
(a)If out becomes , then FD-transition cannot be
detected and so the detector moves back to 0.
(b)If out becomes , then FD-transition and hence
fault are detected. e detector moves to state 2
having encoding 010. Following that detector
makes  output high and moves to state 3
with encoding 011.
Once  line is , that is, fault is detected
online, the system should switch to an alterna-
tive backup circuit, as under the single stuck-at
fault model faults are assumed to be permanent
[]. By that logic, the detector should stop or
loop in 3indenitely; however, it would lead to
deadlock and is nonsynthesizable as a SI circuit.
To avoid this deadlock, a simple modication
is made in the detector state graph without
aecting the fault detection performance. We
wait at state 3for any signal to change (i.e., out
from  to  or out from  to ) and we move to
state 4;letusselectout for this purpose. State
encoding of 4is 111.Fromstate4we have a
transition to state 3on change of out from  to
.
Figure  illustrates the state graph for detecting 1 stuck-
onfaultatCbyFD-transitions󸀠11, 󸀠6 and 󸀠13, 󸀠8.
100 000 010 111
011
110
d0d1d2d3d4
d5
Status+
Aout
Aout+
Aout+
Rout
Rout
Rout+
Rout+
State encoding tuple Rout,Aout, status
F : State graph for detecting FD-transitions 󸀠11, 󸀠6 and
󸀠13,󸀠8.
In similar way we can design detectors for the other FD-
transitions shown in Table .However,itmaybenotedthat
dierent circuits may be required for the other FD-transitions
because merging all FD-transitions in a single detector state
graph will lead to CSC problems. As shown in the example
above, some FD-transitions can be merged into a single state
graph maintaining CSC. Figures  illustrate the SGs for all
the FD-transitions shown in Tab l e  . Also, the FD-transitions
which could be merged are mentioned in the gures.
Before discussing the algorithm for generating the detec-
tor for a set of FD-transitions we introduce the notion of
compatible FD-transitions.
Denition 8 (compatible FD-transitions). Two FD-transi-
tions 󸀠1=
󸀠1,󸀠1+and 󸀠2=
󸀠2,󸀠2+are compati-
ble if the following holds:
(i) If 1 is the signal change by 󸀠1and 2 is the signal
change by 󸀠2,then1 isthesameas2.Inother
words, signal change by both FD-transitions is the
same.
(ii) Let 󸀠1⊆(for FD-transition 󸀠1=
󸀠1,󸀠1+)be
the set of variables whose values at 󸀠1are dierent
compared to state(s) ,where is any state under
normal condition (normal DES) from which 1 is the
signal change. Similarly, the set 󸀠2⊆is calculated
for FD-transition 󸀠2=
󸀠2,󸀠2+.en,󸀠1∩
󸀠2 =. In other words, there exists at least one
signal(i.e.,avariable)whosevalueisthesamein
initial state of both FD-transitions and that is dierent
compared to the initial state(s) of the corresponding
transition(s) under normal condition.
For example, consider two FD-transitions 󸀠11,󸀠6
(=
󸀠1,say)and󸀠13, 󸀠8 (=
󸀠2, say). We calculate 󸀠1
for 󸀠1as follows. e value of variables at initial state 󸀠11
is {in =1,
out =0,
in =1,
out =0}.esignal
change for =
󸀠1is out+.Wegettwostates(0 = {in =
1,out =1,
in =0,
out =0}and 2 = {in =1,
out =
1,in =1,
out =0}) in normal condition from which the
signal change out+occurs. us, 󸀠1={
out(= 0)} because
out istheonlyvariablethatisdierentin󸀠11 compared to
normal states 0 and 2.Similarly,wecalculate󸀠2for 󸀠2
as 󸀠2={
out(= 0)}.Since󸀠1∩󸀠2 =={
out(= 0)},thus,
these two transitions are compatible and can be merged (as
shown in state graph of Figure ).
Algorithm 9. Algorithm for construction of detectors given
the set of FD-transitions.
VLSI Design 
100 000 010 111
011
110
d0d1d2d3d4
d5
Status+Rin +
Rin+
Rin
Rin
Rout
Rout+
Rout+
State encoding tuple ⟨Rin,R
out,status
F : State graph for detecting FD-transitions–Sl. numbers 
and  of Tabl e  .
110 010 000 101
001
100
d0d1d2d3d4
d5
Status+
Aout
Aout
Aout+
Aout+
Rout
Rout
Rout+
State encoding tuple ⟨Aout ,R
out,status
F : State graph for detecting FD-transition–Sl. numbers  of
Tabl e  .
010 110 100 001
101
000
d0d1d2d3d4
d5
Status+
Aout
Aout Aout +
Rout
Rout
Rout +
Rout +
State encoding tuple ⟨Rout,A
out,status
F : State graph for detecting FD-transitions–Sl. numbers 
and  of Tabl e  .
010 110 100 001
101
000
d0d1d2d3d4
d5
Status+
Aout
Aout
Rin+
Rin+
Rin
Rin
Aout+
State encoding tuple Rin,Aout,status
F : State graph for detecting FD-transitions–Sl. numbers 
and  of Tabl e  .
Input.IFD is set of FD-transitions.
Output. Detectors for determining occurrence of FD-transi-
tions are as follows:
() Partition IFD into equivalence classes. Let I1FD,
I2FD,...,IFD be the sets generated.
() For each of these sets (IFD,(1 ≤  ≤ )), generate a
detector state graph using Step (3) to Step (10).
() is the signal changed by 󸀠IFD and is any
signal whose value is the same in initial states of all
󸀠IFD.Further,signalis dierent in the initial
state of the corresponding normal transition which
also makes the same change in .
() Let state encoding of the detector be the tuple
,,.
() Create the initial state 0. e values of the variables
in 0are as follows: (i) in the tuple for 0is com-
plement of the value of the variable in (󸀠),
󸀠IFD, (ii) in the tuple for 0is complement of
the value of the variable aer its change by 󸀠IFD,
and (iii) in 0is .
() Create state 1, with transition from 0to 1labeled
as + (−)ifvalueofin 0is  (). Also, create
a transition from 1to 0labeled with inverse of
the signal change as in transition from 0to 1.
Accordingly, encode state 1.
() Create state 2, with transition from 1to 2labeled as
+ (−)ifvalueofin 1is  (1). Accordingly, encode
state 2.
() Create state 3, with transition from 2to 3labeled
as +. Accordingly, encode state 3.
() Create state 4, with transition from 3to 4labeled
as + (−) if transition from 0to 1is − (+). Add
a transition from 4to 3with inverse of the signal
change as in transition from 3to 4. Accordingly,
encode state 4.
() Create state 5, with transition from 0to 5labeled
as + (−) if transition from 1to 2is + (−). Add
a transition from 5to 0with inverse of the signal
change as in transition from 0to 5. Accordingly,
encode state 4.
4.1. Circuit Synthesis for DES Detector. It is clear f rom the
construction of the state graphs of detectors that they have
complete state coding [,]andarelive.Sotheycanbe
synthesized as SI circuits using C-elements and logic gates by
applying standard asynchronous circuit synthesis procedures
[,].
Figure  illustrates some snapshots regarding the steps
of synthesizing the state graph of the detector shown in
Figure  using CAD tool Petrify []; Figure (a) is the
description of the state graph that is input to Petrify,
Figure (b) illustrates the output of Petrify showing CSC
and no liveness issues, and Figure (c) shows the equations
obtained from Petrify. e circuit schematic (of the DES
detector) that is synthesized for this state is shown in
Figure .
Now, we explain some details of the Petrify equations.
 is a keyword of Petrify to represent all I/O
signals of the corresponding state graph.  is the
keyword to represent the output signals of the state graph.
Each subsequent line (denoted by [0,1]...)representsagate
of the circuit in terms of the function it implements. In case
of the circuit of Figure , = out,out,
and  = .eequations[0] = 󸀠
out󸀠
out
and [1] = 0 represent the logic expressions of the internal
Gate  and Gate , respectively. e equation [] =
[1]󸀠([0] + ) + [0] represents the output of the
circuit.
In similar way, all state graphs for the FD-transitions have
been synthesized into dierent circuits. en, the nal DES
detector circuit for CUT is constructed by simply ORing
 VLSI Design
(a) State graph (b) Output of Petrify
(c) Output equations of Petrify
F : Screenshot showing the synthesis of DES detector from state graph using Petrify.
C
Logic 0
Status
1
2
3
4
5
6
7
Aout
Rout
F : DES detector circuit for state graph shown in Figure .
the outputs of these circuits. e output of the detector circuit
becomes high when output of at least one individual detector
becomes high, thereby detecting the fault.
5. Experimental Evaluation
To validate the ecacy of the scheme, we analyze the area
overheadratiooftheonlinetestercircuittothatofthecircuit
under test. Further, we also compare the overhead with other
techniques reported in the literature. In our experiments,
we have considered some standard SI benchmark circuits
[]. Further, for comparison, we have also implemented our
scheme on the circuits used in [].
e algorithm discussed in previous section is used to
design a CAD tool OLT-ASYN which generates detectors for
OLT given an asynchronous circuit specication. e design
procedure includes the following steps.
(i) First, the behavior description of the SI circuit is
represented using STG.
(ii) e STG representation of the SI circuit is converted
into its corresponding state graph using Petrify.
(iii) Using Petrify, the state graphs are implemented as SI
circuits using generalized C-element.
(iv) s-a- and s-a- faults are inserted in all the nets of the
gates and stuck-on and stuck-o faults are inserted in
the transistors of the C-elements of the circuit (one at
a time) and the corresponding faulty state graphs are
generated.
(v) FD-transitions are generated for all the faults using
the DES theory.
(vi) Using Algorithm  state graphs of the detector(s) are
generated.
(vii) e state graphs are implemented as SI circuits using
generalized C-element implementation using Petrify.
Area overhead ratio of the online tester circuit to that of
the circuit under test is computed using the formula
Area overhead ratio
=Combined area of the Detector circuits
Area of the CUT .()
Area of gates and C-elements are considered in terms of
number of transistors used in their CMOS implementation.
VLSI Design 
T : Fault coverage, area overhead ratio, and execution time for the online detector designed using the proposed approach.
CUT Number of gates Number of faults Fault coverage (%) Area overhead Execution (sec)
Circuit    . .
Circuit    . .
Circuit   . .
Davidcells[]    . .
Davidcells[]    .
chu   . .
alloc-outbound    . .
sbuf-read-ctl    . .
sbuf-send-ctl    . .
ram-read-sbuf    . .
Executed in AMD Phenom IIX  Processor with  GB RAM in Linux OS.
For example, a two-input NAND gate has four transistors
(two PMOS and two NMOS). Fault coverage is calculated as
ratio of number of faults detected by the tester to the total
number of faults.
Table  shows the number of gates, number of faults,
fault coverage, area overhead ratio, and execution time of
theproposedapproachforthedierentSIcircuitsbeing
considered.
e rst three circuits in the table are simple examples
whosegateleveldesignsareshowninFigures,,and
.efourthandhcircuitshavebeenusedin[]. e
others are standard asynchronous benchmarks []whichare
complexintermsofarea,states,andsignalcomparedtorst
vecircuitsinthetable.
Broadlyspeaking,itcanbeobservedfromTa b l e  that
area overhead decreases with the increase of the size of the
circuit. In [], Drineas and Makris have identied that the
area overhead ratio for partial replication based OLT for
stuck-at faults is approximately +1/,whereis the fraction
of test patterns incorporated in detector design (=1when
all FD-transitions are incorporated in detector design) and
is the number of state bits required for circuit representation
(i.e., proportion to circuit size). In this work, we have taken all
possible FD-transitions and the obtained area overhead ratio
acts (approximately) in accordance with the fact mentioned
above.
From the discussion in the last section regarding design
of the detector from the FD-transitions, it may appear that a
large number of such detectors may be required for complex
circuits. In the worst case, the number of detectors may be
equal to the number of FD-transitions. Further, in case of
large circuits as the number of nets and C-elements are high
the number of FD-transitions may be proportionally large.
However, interestingly, the experiments illustrated reverse
trends. Large circuits have larger number of possible stuck-at
faults; however, many of them are mapped to similar eects
andhencethesameFD-transitions;thiscanbeobservedfrom
Table  for the running example. Further, using the principle
of compatible of FD-transitions, it was found that multiple
FD-transitions fall in the same clusters thereby resulting in
the fact that a single detector suces for more than one FD-
transition. To conclude, it was observed that a few detectors
a1
r1
a2
r2
F : Circuit .
c
Cc
a
b
F : Circuit .
are actually required to cover all the faults. To the best of
our knowledge, such facts regarding OLT of asynchronous
circuits were not reported in the literature.
It may be noted that percentage of fault coverage is more
than%inaverage.enumberoffaultsthatcouldnotbe
detectedwasfoundtoberedundant.
5.1. Mutex Approach to Testing. Now, we will discuss, in brief,
the Mutex approach for online testing proposed in []and
compare its area overhead ratio with our scheme. In [], the
scheme is demonstrated on the following specication of a
handshaking protocol:
+ → + → − →  −. ()
Online testing is performed using checkers which verify that
sequencing of the signals as per the protocol is maintained;
 VLSI Design
C
C
a
b
c
d
a
bc
d
F : Circuit .
that is, there is no premature or late ring of signals, no
signal is stuck-at-/stuck-at- fault, and so forth. All the
protocol signals are used as the input for the checker. e
checker has two functionalities, namely, self-checking and
online testing of the handshaking protocol. e signal “mode”
decides this selection. e block diagram of the checker is
given in Figure . A part of the checker circuit is shown in
Figure  whichwillbeusedtopresentthebasicworkingof
thechecker.efullcircuitdiagramandfunctionalitycan
be found in []. As shown in Figure ,therearetwoMutex
components; one is used for the arbitration between − and
−, while the other is used to arbitrate between +,
11+,and11+; the details of the signals 11+ and
11+ are given below.
e initial state is  (both req and ack are high). is
is guaranteed by the previous state. In the previous cycle of
operation, + occurs before +,whichsets11 = 1,
thus providing the appropriate initial condition for the given
cycle. e next signal change should be − (as per the
handshaking protocol). So, once − occurs, 11 signal is
set to  (le Mutex), as  signal is still high. As a result, the
checker goes to next state  indicating no errors. If there is
an error in the protocol under test, then − precedes −,
and 11 is set to . is moves the checker along the fault
branch.
When the mode signal is set to logic , the three-input
arbiter (right Mutex in Figure ) is used to arbitrate +,
11+,and11+.isMutexisusedforself-testingofthe
checker.
e asynchronous circuit under test (which realizes the
above handshaking protocol) is implemented using David
cells []. e partial checker circuit illustrated in Figure 
basically tests the handshake protocol between a pair of
David cells and performs self-checking. Along with the
partial circuit shown in Figure ,therearefourDavidcells
(not shown), which together test the handshaking protocol
(between a pair of David cells) and self-testing of the checker.
Among the two Mutex blocks and four David cells, half of
themareusedforhandshakingprotocolandtheotherhalfis
used for self-testing. e logic gates are shared resources for
both types of testing. In [], both the circuit under test and
Checker
req ack
Mode
Error
F : Block diagram of the checker.
Mutex
Mutex
Mode
Te r ro r
req
ack
gr11
ga11
ga11e
F : A part of the checker circuit [].
the checker circuity are implemented using David cells, using
the ow of converting a Petri net model to asynchronous
circuitsbasedonDavidcells[].
5.2. Comparison with the Mutex Approach. e proposed
DES based approach for online testing does not involve self-
testing of the detector. So, for comparison of area overhead
oftheproposedschemewith[], we require only half of
the resources used in []. Table  shows area overhead ratio
of the checker (for online testing only) for two circuits
implementing handshaking protocols involving two and four
David cells, respectively. e table also reports the number
of David cells, Mutex elements, and logic gates involved in
the checker (for online testing). From Tables and (fourth
and h circuit), we can deduce that the area overhead
requirement for the Mutex method is higher compared to
that of the purposed scheme. e advantages of the proposed
method over the Mutex approach are as follows:
()eareaoverheadfortheonlinetestercircuitisless
as compared to that of the Mutex approach by about
%.
() ere is exibility to trade o area overhead, by
reducing fault coverage depending upon the testa-
bility requirements. Such exibility is not easy to be
achieved by the Mutex approach. It may be noted that
the proposed scheme veries that there are no stuck-
at faults while the Mutex approach veries a protocol.
Inparticular,itchecksforthecorrectsequencing
of the outputs. Fault coverage can be easily traded
o with area overhead in our approach, while it is
dicult to achieve something like “partial verication
of protocol,” avoiding checking certain incomplete
output sequences.
VLSI Design 
T : Area ratio for the Mutex approach.
CUT Circuits for OLT
Area overhead
ratio for Mutex
method
David
cells
 David cells +  Mutex elements +
gates .
David
cells
 David cells +  Mutex elements +
gates .
() In the detector of the proposed scheme, there is no
dependency on Mutex elements. e Mutex element
itself can undergo a metastable state which needs to be
handled by the metastability detector, adding to area
overhead.
Inthiswork,wecouldnotcomparefaultcoverageof
our approach with the Mutex approach. e Mutex approach
veries online whether the output of the CUT follows the
specied handshaking protocol. So, the Mutex approach
basically follows functional testing. e scheme proposed
in our paper works on structural testing and hence fault
coverage can be given, while it is not possible for functional
testing.
It may be noted that the circuits considered in the Mutex-
based OLT scheme []weresimple.Forcomparisonwith
our scheme, we have done manual implementation of Mutex-
based tester design on those circuits.
6. Conclusion
In the present paper, a method for the online testing of SI
circuits has been proposed. We start by obtaining the STG
of the SI circuit under test using the tool Petrify. Aer that,
eects of stuck-at faults were modeled in the STGs. e
normal and faulty STGs were transformed into state graphs
and a DES detector was designed. e detector is capable
of determining, online, whether any of the modeled stuck-
at faults have occurred in the circuit. Finally, the detector
is synthesized as a SI circuit with C-elements which is to
be placed on chip. Several circuits were considered as case
study and area overhead ratio of the detector was studied
for these circuits. Results illustrated that area requirement
of the detector of the proposed scheme is less than that of
the Mutex approach []byabout%ontheaverage.Apart
from this, there are several other advantages of the proposed
approach, namely, independence of circuit functionality,
nonintrusiveness, liveness, and CSC of the detector to ensure
synthesizability and so forth.
e present scheme is applicable only for SI circuits
with dynamic implementation of C-elements. As a further
direction of research, this technique can be extended for other
types of asynchronous circuits like Delay Insensitive (DI)
circuits. It is required to verify whether this proposed DES
based OLT scheme can be directly applied for DI circuits or
some modications would be needed.
Also, in case of SI circuits, the present scheme can be
extended for static C-elements. OLT of static C-elements
may be comparatively more complex than that of dynamic
C-element because the dynamic C-element comprises less
number of transistors than that of static C-element. Addi-
tionally, in the present work, it is found that transistor stuck-
o or stuck-on faults lead to premature/nonoccurrence of a
transition in the STG. Whether similar fault manifestation
remains for static C-elements or there is a change needs to
be veried. Clearly further research is required to solve these
issues.
Conflict of Interests
e authors declare that there is no conict of interests
regarding the publication of this paper.
References
[] M. Nicolaidis and Y. Zorian, “On-line testing for VLSI—
a compendium of approaches,Journal of Electronic Testing:
eory and Applications,vol.,no.-,pp.,.
[] H. Hulgaard, S. M. Burns, and G. Borriello, “Testing asyn-
chronous circuits: a survey,Integration, the VLSI Journal,vol.
, no. , pp. –, .
[] M. Nicolaidis, “Design for so-error robustness to rescue deep
submicron scaling,” in Proceedings of the IEEE International
Test Conference, pp. –, IEEE, Washington, DC, USA,
October .
[] D.Shang,A.Yakovlev,F.P.Burnsand,F.Xia,andA.Bystrov,
“Low-cost online testing of asynchronous handshakes,” in
Proceedings of the 11th IEEE European Test Symposium (ETS ’06),
pp. –, IEEE, Southampton, UK, May .
[]D.Shang,A.Bystrov,A.Yakovlev,andD.Koppad,“On-line
testing of globally asynchronous circuits,” in Proceedings of the
11th IEEE International On-Line Testing Symposium (IOLTS ’05),
pp.,July.
[] K. De, C. Natarajan, D. Nair, and P. Banerjee, “RSYN: a system
for automated synthesis of reliable multilevel circuits,IEEE
Transactions on Very Large Scale Integration Systems,vol.,no.
, pp. –, .
[] W.-F. Chang and C.-W. Wu, “Low-cost modular totally self-
checking checker design for -out-of-code,IEEE Transac-
tions on Computers,vol.,no.,pp.,.
[] R. Leveugle and G. Saucier, “Concurrent checking in dedicated
controllers,” in Proceedings of the IEEE International Conference
on Computer Design, pp. –, October .
[] R. Leveugle and G. Saucier, “Optimized synthesis of concur-
rently checked controllers,” IEEE Transactions on Computers,
vol.,no.,pp.,.
[] T. Verdel and Y. Makris, “Duplication-based concurrent error
detection in asynchronous circuits: shortcomings and reme-
dies,” in Proceedingsofthe17thIEEEInternationalSymposium
on Defect and Fault Tolerance in VLSI Systems, pp. –,
IEEE, .
[] P. Drineas and Y. Makris, “Non-intrusive design of concurrently
self-testable FSMs,” in Proceedings of the 11th Asian Test Sympo-
sium (ATS ’02).,pp.,November.
[] P. Drineas and Y. Makris, “Selective partial replication for
concurrent fault-detection in FSMs,IEEE Transactions on
Instrumentation and Measurement,vol.,no.,pp.,
.
[] Y.Balasubrahamanyam,G.L.Chowdary,andT.J.V.S.Sub-
rahmanyam, “A novel low power pattern generation technique
 VLSI Design
for concurrent BIST architecture,International Journal of
Computer Technology and Applications,vol.,no.,pp.,
.
[] P. Daniel and R. Chandel, “Dynamic self programming archi-
tecture for concurrent fault detection,International Journal of
Research in IT, Management and Engineering,vol.,no.,pp.
–, .
[] I.Voyiatzis,A.Paschalis,D.Gizopoulos,C.Halatsis,F.S.Makri,
and M. Hatzimihail, “An input vector monitoring concurrent
BIST architecture based on a precomputed test set,IEEE
Transactions on Computers,vol.,no.,pp.,.
[]V.Gherman,J.Massas,S.Evain,S.Chevobbe,andY.Bon-
homme, “Error prediction based on concurrent self-test and
reduced slack time,” in Proceedings of the 14th Design, Automa-
tion and Test in Europe Conference and Exhibition (DATE ’11),
pp. –, March .
[] M. Sampath, R. Sengupta, S. Lafortune, K. Sinnamohideen, and
D. Teneketzis, “Diagnosability of discrete-event systems,IEEE
Transactions on Automatic Control,vol.,no.,pp.,
.
[] S.Biswas,S.Mukhopadhyay,andA.Patra,“Aformalapproach
to on-line monitoring of digital VLSI circuits: theory, design
and implementation,Journal of Electronic Testing,vol.,no.
, pp. –, .
[] S.Biswas,G.Paul,andS.Mukhopadhyay,“Methodologyforlow
power design of on-line testers for digital circuits,International
Journal of Electronics,vol.,no.,pp.,.
[] C. J. Myers, Asynchronous Circuit Design,JohnWiley&Sons,
New York, NY, USA, .
[] J. Cortadella, M. Kishinevsky, A. Kondratyev, L. Lavagno,
and A. Yakovlev, “Hardware and petri nets: application to
asynchronous circuit design,” in Application and eory of Petri
Nets 2000,vol.ofLecture Notes in Computer Science,pp.
–, .
[] D. Lu and C. Q. Tong, “High level fault modeling of asyn-
chronous circuits,” in Proceedings of the 13th IEEE VLSI Test
Symposium, pp. –, May .
[] M.Shams,J.C.Ebergen,andM.I.Elmasry,“Modelingand
comparing CMOS implementations of the C-element,” IEEE
Transactions on Very Large Scale Integration (VLSI) Systems,vol.
, no. , pp. –, .
[] M. Shams, J. C. Ebergen, and M. I. Elmasry, “A comparison of
CMOS implementations of an asynchronous circuits primitive:
the C-element,” in Proceedings of the International Symposium
on Low Power Electronics and Design (ISLPED ’96),pp.,
Monterey, Calif, USA, August .
[] M. Moreira, B. Oliveira, F. Moraes, and N. Calazans, “Impact of
C-elements in asynchronous circuits,” in Proceedings of the 13th
International Symposium on Quality Electronic D esign (ISQED
’12), pp. –, March .
[] M. T. Moreira, F. G. Moraes, and N. L. Calazans, “Beware the
Dynamic C-Element,IEEE Transactions on Very Large Scale
Integration (VLSI) Systems,vol.,no.,pp.,.
[] C. N. Liu, “A state variable assignment method for asyn-
chronous sequential switchingcircuits,” Journal of the ACM,vol.
, no. , pp. –, .
[] J.Cortadella,M.Kishinevsky,A.Kondratyev,L.Lavagno,andA.
Yakovlev, “A region-based theory for state assignment in speed-
independent circuits,IEEE Transactions on Computer-Aided
Design of Integrated Circuits and Systems,vol.,no.,pp.
, .
[] J. Gu and R. Puri, “Asynchronous circuit synthesis with Boolean
satisability,IEEE Transactions on Computer-Aided Design of
Integrated Circuits and Systems,vol.,no.,pp.,.
[] T. Chu, “Automatic synthesis and verication of hazard-free
control circuits from asynchronous nite state machine speci-
cations,” in Proceedings of the IEEE International Conference on
ComputerDesign:VLSIinComputersandProcessors,pp.
, Cambridge, Mass, USA, .
[] J. Cortadella, M. Kishinevsky, A. Kondratev, L. Lavagno, and
A. Yakovlev, “Petrify: a tool for manipulating concurrent spec-
ications and synthesis of asynchronous controllers,IEICE
Transactions on Information and Systems,vol.E-D,no.,pp.
–, .
[] Myers Research Group, Atacs Online Demo,MyersResearch
Group, , http://www.async.ece.utah.edu/.
[] D. Shang, F. Xia, and A. Yakovlev, “Asynchronous circuit
synthesis via direct translation,” in Proceedings of the IEEE
International Symposium on Circuits and Systems (ISCAS ’02),
vol. , pp. –, Phoenix-Scottsdale, Ariz, USA, May .
... Since last two decades, a number of OLT techniques have been proposed for digital circuits, which can be broadly classified as−signature monitoring in Finite State Machines (FSMs) [13,27], self-checking design [16,21], on-line BIST [1,2,30] and partial replication [4,5,8,9,15]. Signature monitoring techniques for OLT basically work by studying the state sequences of the circuit FSM model (called signature) during its operation. Signatures are analyzed concurrently with the execution of the circuit and target to detect faults that lead to the paths having transitions which do not exist in the FSM specification [13,27]. ...
... It has been found that most of the OLT schemes are designed for synchronous circuits compared to asynchronous circuits. There are few works that have been proposed on OLT of asynchronous circuits [4,8,25,26,29]. Now we elaborate these works one after another. ...
... Further these schemes only check the protocol, thus there is no guarantee for fault coverage and detection latency. The OLT schemes reported in papers [4,8] are non-intrusive in nature and have low area overhead, however they are not scalable because of state explosion problem in discrete event system model. From the above discussion, we aim at developing a Binary Decision Diagram (BDD) based OLT scheme for asynchronous circuits with static and dynamic C-elements, which is protocol independent, scalable and incurs low area overhead. ...
Article
Full-text available
The fast growing in complexity of digital VLSI circuits with the advance of deep sub-micron scaling causes occurrence of faults during normal operation of the circuits. These faults cannot be detected by off-line test or Built-In-Self-Test (BIST) techniques. Further, a number of critical faults may require detection at the functional mode during run-time. On-line Testing (OLT) provides a solution to both the problems, and can be implemented using appropriate Design-for-Testability (DFT) techniques. Nowadays, use of asynchronous circuits in semiconductor industry has rapidly increased because of no clock skew problem, low power consumption, average case performances and high degree of modularity. It has been found in the literature of OLT of VLSI circuits that the number of OLT schemes proposed for asynchronous circuits is very few compared to synchronous circuits. The main drawbacks of the existing OLT schemes for asynchronous circuits are protocol dependency, high area overhead and scalability. In this work, we have proposed a partial replication based OLT scheme for asynchronous circuits with dynamic and static C-elements using Binary Decision Diagram (BDD). The proposed scheme works for all circuits irrespective of their design protocols and achieves high fault coverage and comparatively low area overhead. It has been observed that the area overhead is further reduced with increase in values of FD-transitions (Fault Detecting transitions) exclusion. Furthermore, the use of BDD enables the scheme to handle fairly large circuits.
... Similar is the case with automation systems [9], [10]. On the other hand, for electronic systems the diagnoser is implemented in terms of hardware and placed on-chip with the circuit under test [40], [41]. Also, the sensors and the communication techniques differ based on the systems and the parameters being measured. ...
Article
Full-text available
Fault Detection and Diagnosis U+0028 FDD U+0029 facilitates reliable operation of systems. Various approaches have been proposed for FDD like Analytical Redundancy U+0028 AR U+0029, Principal Component Analysis U+0028 PCA U+0029, Discrete Event System U+0028 DES U+0029 model etc., in the literature. Performance of FDD schemes greatly depends on accuracy of the sensors which measure the system parameters. Due to various reasons like faults, communication errors etc., sensors may occasionally miss or report erroneous values of some system parameters to FDD engine, resulting in measurement inconsistency of these parameters. Schemes like AR, PCA etc., have mechanisms to handle measurement inconsistency, however, they are computationally heavy. DES based FDD techniques are widely used because of computational simplicity, but they cannot handle measurement inconsistency efficiently. Existing DES based schemes do not use Measurement Inconsistent U+0028 MI U+0029 parameters for FDD. These parameters are not permanently unmeasurable or erroneous, so ignoring them may lead to weak diagnosis. To address this issue, we propose a Measurement Inconsistent Discrete Event System U+0028 MIDES U+0029 framework, which uses MI parameters for FDD at the instances they are measured by the sensors. Otherwise, when they are unmeasurable or erroneously reported, the MIDES invokes an estimator diagnoser that predicts the state U+0028 s U+0029 the system is expected to be in, using the subsequent parameters measured by the other sensors. The efficacy of the proposed method is illustrated using a pump-valve system. In addition, an MIDES based Intrusion Detection System has been developed for detection of rogue Dynamic Host Configuration Protocol U+0028 DHCP U+0029 server attack by mapping the attack to a fault in the DES framework.
Article
Full-text available
This paper proposes a low power Linear Feedback Shift Register (LFSR) for Test Pattern Generation (TPG) technique with reducing power dissipation during testing. The correlations between the consecutive patterns are higher during normal mode than during testing. The proposed approach uses the concept of reducing the transitions in the test pattern generated by conventional LFSR. The goal of having intermediate patterns is to reduce the transitional activities of primary inputs which eventually reduce the switching activities inside the circuit under test, and hence, power consumption .The testing power is reduced by 46%with respect to the power consumed during the testing carried by conventional LFSR. Built-In Self-Test (BIST) techniques constitute an attractive and practical solution to the problem of testing VLSI circuits and systems. Input vector monitoring concurrent BIST schemes can circumvent problems appearing separately in on-line and in of-line BIST techniques
Conference Paper
Full-text available
The problem of on-line testing of asynchronous circuits is analyzed, several infrastructures are proposed and a self-checking tree checker is designed. The checker uses on-demand self-test, which reduces power consumption and guarantees bounded self-test period. Objects under test are tested by observing protocols at their primary inputs and outputs. The checker does not slow down the functional system, as it only samples the signals. The protocols are checked by identifying enabled and refused signal transitions in each state of the system. The fault coverage of internal faults of the checker is calculated. Simulation results are included.
Conference Paper
Full-text available
A new low-cost low-complexity checker for online testing of asynchronous interfaces in globally-asynchronous locally-synchronous circuits is proposed. The solution is fully based upon the standard gate libraries. The checker itself is fully offline testable. It also provides a fault-locating functionality, which is achieved by combining the online mode with scan techniques
Article
The C-element is a well known component of asynchronous circuits. To overcome problems of current CMOS technologies, its use has even been extended to specific domains of the synchronous paradigm, such as clock generation, clock gating, and registers. An economical implementation of this component is the dynamic C-element. Its advantages over static implementations are reduced power, transition, and propagation delays as well as lower silicon area. Yet, research evaluating its electrical behavior, functionality, and robustness is scarce. This brief presents an in-depth analysis of the dynamic C-element electrical behavior. The analysis points to a constrained nature, which can lead to undefined output logic values, as well as excessive static power consumption. The brief also proposes a technique for robust design of such components that avoids such undefined values.
Conference Paper
Asynchronous circuits are a potential solution to address some of the obstacles in deep submicron (DSM) design. One of the most frequently used devices to build asynchronous circuits is the C-element, a device present as a basic building block in several asynchronous design styles. This work measures the impact of three different C-element types. The paper compares the use of each implementation to build a real case asynchronous circuit, an RSA cryptographic core, and reports results of precise electrical simulations of each C-element. Findings in this work show that previous results in the literature about C-element implementation types must be re-evaluated when using C-elements in DSM technologies.
Article
Petrify is a tool for (1) manipulating concurrent specifications and (2) synthesis and optimization of asynchronous control circuits. Given a Petri Net (PN), a Signal Transition Graph (STG), or a Transition System (TS) it (1) generates another PN or STG which is simpler than the original description and (2) produces an optimized net-list of an asynchronous controller in the target gate library while preserving the specified input-output behavior. An ability of back-annotating to the specification level helps the designer to control the design process. For transforming a specification petrify performs a token flow analysis of the initial PN and produces a transition system (TS). In the initial TS, all transitions with the same label are considered as one event. The TS is then transformed and transitions relabeled to fulfill the conditions required to obtain a safe irredundant PN. For synthesis of an asynchronous circuit petrify performs state assignment by solving the Complete State Coding problem. State assignment is coupled with logic minimization and speed-independent technology mapping to a target library. The final net-list is guaranteed to be speed-independent, i.e., hazard-free under any distribution of gate delays and multiple input changes satisfying the initial specification. The tool has been used for synthesis of PNs and PNs composition, synthesis and re-synthesis of asynchronous controllers and can be also applied in areas related with the analysis of concurrent programs. This paper provides an overview of petrify and the theory behind its main functions.
Article
This work is concerned with the development of an algorithm for lowering the power consumption of the tester used in digital circuits with on-line testing (OLT) capability. The proposed scheme is generic and flexible in terms of tradeoffs regarding fault coverage and detection latency versus power and area overheads. Most of the works presented in the literature on OLT have emphasised on minimising area overhead and maintaining high fault coverage. However, power, which was mainly a concern for handheld devices, is now a first order impact factor for deep sub-micron designs. Its increased importance for OLT can be realised from the fact that the tester is executed concurrently with the circuit. The proposed technique can handle generic digital circuits with cell count as high as 15,000 and having the order of 2 states. Results for design of on-line fault detectors for various ISCAS89 benchmark circuits are provided. The results illustrate that with marginal impact on performance in terms of coverage and latency, the proposed technique can lower the power and area consumption significantly, compared to traditional approaches.
Article
This paper presents an overview of a comprehensive collection of on-line testing techniques for VLSI. Such techniques are for instance: self-checking design, allowing high quality concurrent checking by means of hardware cost drastically lower than duplication; signature monitoring, allowing low cost concurrent error detection for FSMs; on-line monitoring of reliability relevant parameters such as current, temperature, abnormal delay, signal activity during steady state, radiation dose, clock waveforms, etc.; exploitation of standard BIST, or implementation of BIST techniques specific to on-line testing (Transparent BIST, Built-In Concurrent Self-Test,...); exploitation of scan paths to transfer internal states for performing various tasks for on-line testing or fault tolerance; fail-safe techniques for VLSI, avoiding complex fail-safe interfaces using discrete components; radiation hardened designs, avoiding expensive fabrication process such as SOI, etc.
Article
Asynchronous circuit design has been studied for decades, but it has only recently been feasible to construct large and efficient asynchronous systems. The inherent differences between asynchronous and synchronous circuits, primarily that asynchronous circuits do not have a global clock, necessitate a review of the testing techniques used for synchronous circuits and a re-evaluation of the trade-offs involved. This paper surveys different techniques for checking whether an asynchronous circuit has fabrication defects. These techniques include approaches to self-checking design, methods for test generation, design for testability, and delay test of asynchronous circuits.