Implementation of Algorithm For Testability Measures Using MATLAB
Implementation of Algorithm For Testability Measures Using MATLAB
Implementation of Algorithm For Testability Measures Using MATLAB
net/publication/257947095
CITATIONS READS
0 1,338
3 authors:
Kankar S Dasgupta
Dhirubhai Ambani Institute of Information and Communication Technology
112 PUBLICATIONS 795 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
"Development of Radiation hardened Polymer composites". This material is developed to withstand high frequency cosmic radiation especially for electronics devices used
in space craft and other such applications. View project
All content following this page was uploaded by Usha Mehta on 21 May 2014.
Abstract— Increase in transistor density has a great impact on can be observed that the number of possible paths that the test
testing as well as design. In worst case, test complexity increases generator must examine, in order to compute a test pattern,
exponentially with number of transistors and number of flipflops. increases exponentially with the number of nodes of the
The amount of data and complexity of data generation required circuit, i.e. the number of gates [4,5].
to test ICs is growing rapidly in each new generation of
technology. The testing of any circuit is based on two specific
This paper describes a procedure that can be used to estimate
tasks : to set a particular net to a specific value ( to control the
net) and to observe the value available on a particular net( to the testability of the nodes of a combinational circuit [6-81; an
observe the net). Depending upon the type of net, the types of existing ATPG procedure [9] uses the algorithm as a pre-
components connected to the net and the level of the net, the processing step in order to improve its performance; in fact, as
effort needed to control the net or to observe the net varies. In proved in [2], searching test patterns using the nodes of the
such era, the search process of any Test Generation algorithms circuit having the highest testability insures the reduction of
involved with the combinational automatic test pattern the test generation time, and guarantees the computation of a
generation involves two important decisions. The first one being better quality test set.
to select one of the several unsolved problems existing at a certain
stage in the execution of the algorithm . The second type is to
The rest of this paper is organized as follows. Section 2
select one possible way to solve the selected problem. Selection
criteria differ mainly by the cost functions they are used to describes the motivation behind developing testing measures
measure “difficulty’. This paper describes a technique to estimate algorithm, Section 3 introduces the circuit representation that
the testability of the nets of a combinational circuit, whose has been used. Section 4 formally defines the testability
description can be either at the gate-level. Three weight measures, section 5 gives the implementation steps for their
functions, CC0( combinational controllability 0), CC1( computation. Section 6 illustrates how these measures can be
combinational controllability 1) and CO ( combinational determined on a practical example. Section 7 shows the
observability ) are evaluated for each net of the network, and the benefits, in terms of test generation time, produced by the
results obtained are employed in an existing ATPG procedures in application of the testability measures to the test generator
order to reduce the test generation time. Experimental results
described in [9]. Finally, Section 8 is devoted to conclusions.
obtained on the ISCAS’ 85 benchmark circuits show the
effectiveness of the method.
II MOTIVATION
I. INTRODUCTION
The amount of data and complexity of data generation
The study and the implementation of efficient algorithms for required to test ICs is growing rapidly in each new generation
integrated circuits testing becomes every day more difficult of technology. The combinational automatic test pattern
because of the large number of logic gates that can be packed generator (ATPG) is the main building block of any testing
together on a single silicon wafer [1,2]. tool. The automatic test pattern generator for combinational
design is of the most importance because after scan chain
An automatic test pattern generation (ATPG) program is a insertion, any of sequential testing will also use the
computer aided design (CAD) tool that, given a fault in the combinational ATPG for a given state of sequential circuit. So
circuit under test, calculates the sequence of input vectors (i.e. it may be said that the combinational ATPG is the backbone of
the test pattern) that has to be applied to the circuit in order to today’s testing tool. The testing of any circuit is based on two
detect the fault. Given the location of the fault, the procedure specific tasks. 1. To set a particular net (either primary input
starts investigating all possible paths of the network that allow or any internal net to a particular value) 2. To observe the
its propagation through the circuit, until its symptoms can be value on a particular net (i.e. either primary output or any
observed on a primary output (forward propagation); then, it internal net). Depending upon the type of net, the types of
computes the input vectors required to satisfy all the components connected to the net and the level of the net ( i.e
conditions imposed on the internal nodes of the network place : how far it is from the primary input or output ) the
during the propagation phase (backward justification) [3]. It effort needed to set that net or to observe that net varies. In
such era, the search process of any Test Generation(TG) In this section we discuss the format of the circuit
algorithms involved with the combinational ATPG involves specification that we input to the program which calculates the
two important decisions. The first one being to select one of testability measures of the circuit. In particular, we focus our
the several unsolved problems existing at a certain stage in the attention on circuit description
execution of the algorithm . The second type is to select one The topological description of the combinational network under
possible way to solve the selected problem. Selection criteria consideration is gate –level.
differ mainly by the cost functions they are used to measure Any ATPG tool takes the Design Under Test (DUT) as an
“difficulty’. Typically cost functions are of two types: input and generate the test vector for given fault in the DUT.
1. Controllability - For a digital circuit it is defined as Most of the ATPG tool accepts DUT as an input in form of
the difficulty of setting a particular logic signal to netlist (text file) and by processing on netlist; it generates the
state 0 or 1. fault directory which will contain the fault and its
2. Observability - For a digital circuit it is defined as the corresponding test vector. Considering the same concept, for
difficulty of observing the state of a logic signal . testability algorithm implementation also the input is required
Controllability measures can be used both to select the most in the standard format for netlist. A set of standard benchmark
difficult line-justification problem , and then to select among type circuit set on which the results can be proved was also
the unspecified inputs of G the one that it is easiest to set to required. For both of these reasons, ISCAS 85 (International
the controlling value of the gate. Observability measures can Symposium for Circuits and Systems) combinational circuits
be used to select the gate from the D-frontier whose input and netlist format were quite adequate so the ISCAS85 format
error is the easiest to observe. Goldstein was the first one to is used as an input netlist format.
implement a computer program to calculate those
controllability and observability values which he named as IV TESTABILITY MEASURES
SCOAP acronym for Sandia Controllability and Observability
Analysis Program. An attempt to quantify testability by Goldstein ’79 and Grason
’79 resulted in two testability measures, controllability and
The testing system consists of two basic tasks 1. Test observability. Controllability is defined as the difficulty of
Generation 2. Fault Simulation. setting a particular logic signal to a 0 or a 1. PIs are free
To reduce the cost and complexity of test pattern generation, (usually assigned a value of 1). Output 1 values for AND gates
the following goals should be achieved. are more expensive than OR gates.
1. to increase the fault coverage Observability defined as the difficulty of observing the state of
2. to reduce the overall efforts (CPU time) a logic signal. Purpose to define such terms are :
3. to reduce the number of test vectors required ( to 1. Analysis of difficulty of testing internal circuit nodes
reduce the test application time) 2. May need to modify circuit, add observation points or
To reduce the cost and complexity of fault simulation, the test hardware
following goals should be achieved 3. Can be used to guide ATPG algorithms, i.e., to help
1. to reduce the fault list them make decisions by providing information about
2. to use efficient and diverse fault simulation methods the difficulty of setting lines.
3. to use efficienf fault sampling methods 4. Can be used to estimate fault coverage
The testability measures is a powerful heuristic used during 5. Can be used to estimate test vector length.
test generation which will show its effect on fault simulation Testability analysis attributes requires topological analysis
also. (but no test vectors). It should be linear in complexity
The testability measures are useful in following ways. otherwise it’s pointless, i.e., might as well use ATPG to
• In ATPG during backtracing (controllabilities) and compute exact fault coverage.
propagating the fault effect (observabilites) since they • Controllability: From 1 (easiest) to infinity (hardest).
give the path of least resistance. Some caution is • Observability: From 0 (easiest) to infinity (hardest).
necessary since reconvergent fanout introduce error in Combinational measures are related to the number of signals
controllabilites and fanout stems introduce error in that may be manipulated to control or observe l.
observabilities. This method consists of 3 numerical measures for each signal
• It tells designer which parts of the design are extremely (l) in the circuit:
hard-to-test. Either redesign or special-purpose test • Combin. 0-controllability, CC0(l)
hardware is needed to achieve high fault coverage. • Combin. 1-controllability, CC1(l)
• Extremely useful for estimating fault coverage and test • Combin. observability, CO(l)
vector length. Fault coverage estimation via testability
can reduce CPU time by orders of magnitude over fault Controllabilities:
simulation (and has only a 3-5% error).
The basic process: Set PIs to 1, progress from PIs to POs, add
III CIRCUIT FORMAT 1 to account for logic depth.
In general, if only one input sets gate’s output:
output controllability = min(input controllabilites) + 1
If all inputs set gate output:
output controllability = sum(input controllabilities) + 1
If gate output is determined by multiple input sets, e.g., XOR:
output controllability = min(controllabilities of input sets) + 1
For the fanouts the controllability values remain to be same as
for the line from which it is emerging. Details are given in
figure 2.1
V IMPLEMENTATION
VII RESULTS