chapter 7: testing of digital circuits 1 testing of digital circuits m. balakrishnan dept. of comp....
Post on 20-Dec-2015
219 views
TRANSCRIPT
![Page 1: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/1.jpg)
Chapter 7: Testing Of Digital Circuits 1
Testing of Digital Circuits
M. Balakrishnan
Dept. of Comp. Sci. & Engg.
I.I.T. Delhi
![Page 2: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/2.jpg)
Chapter 7: Testing Of Digital Circuits 2
Design Approaches
• Test pattern generation to cover a large fraction of the faults
• Design for testability
– Built-in-self-test (BIST)
• Fault tolerant design
![Page 3: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/3.jpg)
Chapter 7: Testing Of Digital Circuits 3
Faults: Sources and Types
• Sources– Design process– Device defects– Manufacturing process
• Types– Dynamic– Static
![Page 4: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/4.jpg)
Chapter 7: Testing Of Digital Circuits 4
Fault Models• Stuck-at faults correspond to a simple fault
model
– Stuck-at-0 (s-a-0)
– Stuck-at-1 (s-a-1)
• More complex models are also used but beyond the scope of this work
![Page 5: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/5.jpg)
Chapter 7: Testing Of Digital Circuits 5
Combinational Circuits: Test Pattern Generation
Problem definition:
Given a set of faults (F) and a set of test vectors (T), identify the smallest possible subset of test vectors (V) which covers either all the faults in F or say a predetermined fraction of faults (say 98%).
![Page 6: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/6.jpg)
Chapter 7: Testing Of Digital Circuits 6
Fault Simulation
Given a test vector, by simulating the circuit with the fault, identify all faults covered by the test vector.
Testvectors (T) Faults (F)
![Page 7: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/7.jpg)
Chapter 7: Testing Of Digital Circuits 7
Test Generation
• Given a fault, identify all the test vectors which can cover that fault.
Testvectors (T) Faults (F)
![Page 8: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/8.jpg)
Chapter 7: Testing Of Digital Circuits 8
Limitations• Only one fault is expected to occur at one
time
• Faults other than stuck-at faults are expected to show up as stuck-at faults at some other location
• By and large fault location is not possible
• These approaches are valid only for combinational circuits
![Page 9: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/9.jpg)
Chapter 7: Testing Of Digital Circuits 9
Typical Circuit Enhancements
• Insertion of test points
• Pin amplification
• Test modes
• Scan chains
![Page 10: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/10.jpg)
Chapter 7: Testing Of Digital Circuits 10
Test Generation Methods
M. Balakrishnan
Dept. of Comp. Sci. & Engg.
I.I.T. Delhi
![Page 11: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/11.jpg)
Chapter 7: Testing Of Digital Circuits 11
Parallel Fault Simulation
• In parallel fault simulation, evaluation is performed simultaneously for many faults
• The number of faults that can be simultaneously simulated corresponds the word length of the host machine
![Page 12: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/12.jpg)
Chapter 7: Testing Of Digital Circuits 12
Parallel Fault Simulation (Example)
a
bc
de
f
g
h
i
![Page 13: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/13.jpg)
Chapter 7: Testing Of Digital Circuits 13
Parallel Fault Simulation(Example contd.)
ff a0 a1 b0 b1 c0 c1 d0
a 0 0 1 0 0 0 0 0
b 1 1 1 0 1 1 1 1
c 0 0 0 0 0 0 1 0
d 1 1 1 1 1 1 1 0
e 0 0 0 0 0 0 0 0
f 0 0 0 0 0 0 1 0
g 0 0 0 0 0 0 0 1
h 1 1 1 1 1 1 1 1
i 1 1 1 1 1 1 1 1
![Page 14: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/14.jpg)
Chapter 7: Testing Of Digital Circuits 14
Deductive Fault Simulation
• At each of the primary inputs generate the list of faults that can be detected by the test vector
• Use these lists to generate the lists at other nodes by “appropriate” operations on these lists
![Page 15: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/15.jpg)
Chapter 7: Testing Of Digital Circuits 15
Deductive Fault Simulation (example)
a
bc
de
f
g
h
i
La = {a1} Lb = {b0} Lc = {c1} Ld = {d0} Le = {e1}
0
10
10
Lfp = Lb’ Lc = {c1}Lf = {c1, f1}Lgp = (Ld’ Le)’ = {d0}Lg = {d0, g1}Lhp’ = (Lf Lg)’, Lhp = Lh = {h0}Lip’ = La Lh’, Lip = {h0}Li = {h0, i0}
0
01
1
![Page 16: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/16.jpg)
Chapter 7: Testing Of Digital Circuits 16
Deductive Fault Simulation(example contd.)
a
bc
de
f
g
h
i
La = {a1} Lb = {b0} Lc = {c0} Ld = {d0} Le = {e1}
0
11
10
Lfp’ = Lb’ Lc’ = { b0, c0}Lf = {b0, c0, f0}Lgp = (Ld’ Le)’ = {d0}Lg = {d0, g1}Lhp’ = (Lf ‘ Lg)’Lhp = {d0,g1} , Lh = {d0,g1,h0}Lip’ = La Lh’, Lip = {d0, g1,h0}Li = {d0, g1, h0, i0}
1
01
1
![Page 17: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/17.jpg)
Chapter 7: Testing Of Digital Circuits 17
Test Generation Methods Boolean Difference & D-Algorithm
M. Balakrishnan
Dept. of Comp. Sci. & Engg.
I.I.T. Delhi
![Page 18: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/18.jpg)
Chapter 7: Testing Of Digital Circuits 18
Boolean Difference
Consider a function f of say 4 variables
f(x0, x1, x2, x3)
Boolean difference of f w.r.t to xi is defined as follows:
df/dxi = fxi=0 + fxi=1
![Page 19: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/19.jpg)
Chapter 7: Testing Of Digital Circuits 19
Boolean Difference (example)
a
bc
de
f
g
h
i
i = a + ((b.c). (d +e)’)’
di/da = ia=0 + ia=1 = ((b.c).(d+e)’)’ + 1 = (b.c)(d+e)’
![Page 20: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/20.jpg)
Chapter 7: Testing Of Digital Circuits 20
Example (contd.)
di/da = (b.c)(d+e)’
s-a-0 fault at a can be tested by
a.di/da = 1 or a.b.c(d+e)’ = 1
test vectors (1,1,1,0,0)
s-a-1 fault at a can be tested by
a’.di/da = 1 or a’.b.c(d+e)’ = 1
test vectors (0,1,1,0,0)
![Page 21: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/21.jpg)
Chapter 7: Testing Of Digital Circuits 21
Boolean Difference (contd.)
bc
de
f
g
h
i = a + (f. (d +e)’)’
di/df = if=0 + if=1 = 1 + (a +d+e)
= (a+d+e)’ = a’d’e’
a
![Page 22: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/22.jpg)
Chapter 7: Testing Of Digital Circuits 22
Boolean Difference (contd.)
di/df = a’.d’.e’
s-a-0 fault at f can be tested by
f.di/df = 1 or fa’d’e’ = b.c.a’d’e’ =1
test vectors (0,1,1,0,0)
s-a-01fault at f can be tested by
f’.di/df = 1 or f’.a’d’e’ = (b.c)’.a’d’e’ = 1
test vectors (0,0,X,0,0) and (0, X,0,0,0)
![Page 23: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/23.jpg)
Chapter 7: Testing Of Digital Circuits 23
D-Algorithm
There are three main steps in the D-Algorithm
• Generate the fault
• Propagate the fault to one of the outputs
(Forward or D-Drive)
• Back propagate to get consistent assignment for inputs (Backward drive or back-propagation)
![Page 24: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/24.jpg)
Chapter 7: Testing Of Digital Circuits 24
D-Algorithm (Step 1)
bc
de
f
g
h
Let us say we choose the fault g node s-a-0
1
2
3
4
Assign inputs to gate 2 to generate the faulti.e. d = 0 and e = 0
a i
![Page 25: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/25.jpg)
Chapter 7: Testing Of Digital Circuits 25
D-Algorithm (Step 2)
bc
de
f
g
h1
2
3
4a
00
D Choose a path to the o/pand propagate the fault
f is to be assigned 1 and a is to be assigned 0 to propagate D to the output i
i
![Page 26: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/26.jpg)
Chapter 7: Testing Of Digital Circuits 26
D-Algorithm (Step 3)
bc
de
f
g
h1
2
3
4a
00
D
i
1
0
D’
D’
Consistency Check
Assign inputs to gates (whose outputs have been specified ) consistent with other assignments
![Page 27: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/27.jpg)
Chapter 7: Testing Of Digital Circuits 27
D-Algorithm Result
bc
de
f
g
h1
2
3
4a
00
D
i
1
0
D’
D’1
1
The test vector is (0,1,1,0,0)
![Page 28: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/28.jpg)
Chapter 7: Testing Of Digital Circuits 28
D-Algorithm
M. Balakrishnan
Dept. of Comp. Sci. & Engg.
I.I.T. Delhi
![Page 29: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/29.jpg)
Chapter 7: Testing Of Digital Circuits 29
Terminology
• Singular Cover
• D-intersection
• Primitive D-cube of a fault (pdcf)
• Propagation D-cubes (pdf)
![Page 30: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/30.jpg)
Chapter 7: Testing Of Digital Circuits 30
Singular Cover
SC of a gate (or any circuit element) is nothing but a compact version of the truth table. SC of a AND gate with a and b as inputs and c as output
a b c
0 X 0
X 0 0
1 1 1
![Page 31: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/31.jpg)
Chapter 7: Testing Of Digital Circuits 31
Singular Cover (contd.)
SC of a NOR gate with a and b as inputs and c as output
a b c
1 X 0
X 1 0
0 0 1
![Page 32: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/32.jpg)
Chapter 7: Testing Of Digital Circuits 32
D-Intersection
0 1 X D D'
0 0 D' 0
1 D 1 1
X 0 1 X D D'
D D D *
D' D' * D'
![Page 33: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/33.jpg)
Chapter 7: Testing Of Digital Circuits 33
Primitive D-Cube of Fault (pdcf)
For generating a s-a-0 fault at node c, choose a SC row which gives an o/p of 1 for the nor gate and intersect with (X,X,0).
pdcf is (0, 0, D)
ab
c
![Page 34: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/34.jpg)
Chapter 7: Testing Of Digital Circuits 34
PDCF (contd.)
For generating a s-a-1 fault at node c, choose a SC row which gives an o/p of 0 for the nor gate and intersect with (X,X,1).
pdcf is (1, X, D) or (X, 1, D)
ab
c
![Page 35: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/35.jpg)
Chapter 7: Testing Of Digital Circuits 35
Propagation D-Cube (pdc)
• PDC consists of a table for each circuit element which has entries for propagating faults on any one of its inputs to the output.
• To generate PDC entry corresponding to any one column, D-intersect any two rows of SC which have opposite values (0 and 1) in that column.
• There can be multiple rows for one column
![Page 36: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/36.jpg)
Chapter 7: Testing Of Digital Circuits 36
PDC Example
PDC of a AND gate with a and b as inputs and c as output
a b c
1 D D
D 1 D
![Page 37: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/37.jpg)
Chapter 7: Testing Of Digital Circuits 37
PDC Example (contd.)
PDC of a NOR gate with a and b as inputs and c as output
a b c
0 D D’
D 0 D’
![Page 38: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/38.jpg)
Chapter 7: Testing Of Digital Circuits 38
D-Algorithm Steps
• Choose a stuck-at-fault at any of the nodes.• Choose a pdcf for generating the fault. • Choose an output and a path to the output and
propagate the fault to the output by choosing pdc for all circuit elements on the path. (D-Drive)
• Use the SC of all unassigned circuit elements to arrive at a consistent set of inputs. (back-propagate or consistency check)
![Page 39: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/39.jpg)
Chapter 7: Testing Of Digital Circuits 39
D-Algorithm: PDCF Examplea
bc
de
f
g
h
i
Choose a fault say g s-a-0. Choose pdcf of gate 2 for generating this fault(a b c d e f g h i ) = (X X X 0 0 X D X X)
1
2
3
4
![Page 40: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/40.jpg)
Chapter 7: Testing Of Digital Circuits 40
D-Algorithm: D-Drive Example
Propagate the fault to the o/p using pdc of gates 3 &4 a
bc
de
f
g
h
i
1
2
3
4
0
0D
pdc 3 (X X X 0 0 1 D D’ X)pdc 4 (0 X X 0 0 1 D D’ D’)
![Page 41: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/41.jpg)
Chapter 7: Testing Of Digital Circuits 41
D-Algorithm: Consistency Example
Perform consistency operation for gate 1 a
bc
de
f
g
h
i
1
2
3
4
0
0D
(X X X 0 0 1 D D’ X)sc 1 (0 1 1 0 0 1 D D’ D’)
![Page 42: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/42.jpg)
Chapter 7: Testing Of Digital Circuits 42
D-Algorithm: Summary
a b c d e f g h i
Initial x x x x x x x x x
pdcf 2 x x x 0 0 x D x x
pdc 3 x x x 0 0 1 D D' x
pdc 4 0 x x 0 0 1 D D' D'
consis. 1 0 1 1 0 0 1 D D' D'D
![Page 43: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/43.jpg)
Chapter 7: Testing Of Digital Circuits 43
Testing of Sequential Circuits
M. Balakrishnan
Dept. of Comp. Sci. & Engg.
I.I.T. Delhi
![Page 44: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/44.jpg)
Chapter 7: Testing Of Digital Circuits 44
Testing Techniques
• State table verification
• Random testing
• Transition count testing
• Scan based testing
• Signature analysis
![Page 45: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/45.jpg)
Chapter 7: Testing Of Digital Circuits 45
State Table Verification
Verify each transition by first taking the machine to a specific initial state, applying the input to perform the transition and then verifying the final state.
For this purpose we need a homing sequence and distinguishing sequence
![Page 46: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/46.jpg)
Chapter 7: Testing Of Digital Circuits 46
Homing & Distinguishing Sequence
• Homing sequence: An input is said to be a homing sequence for a m/c if the m/c’s response to the sequence is always sufficient to determine uniquely its final state.
• Distinguishing sequence: An input sequence which when applied to a machine will produce a different output sequence for each choice of initial state.
![Page 47: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/47.jpg)
Chapter 7: Testing Of Digital Circuits 47
Example
PS X = 0 X = 1
A B, 0 D, 0
B A, 0 B, 0
C D, 1 A, 0
D D, 1 C, 0
![Page 48: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/48.jpg)
Chapter 7: Testing Of Digital Circuits 48
Example: Homing Sequence
(ABCD)
(AB)(D) (ABCD)
(AB)(D) (BD)(C)
(A)(D)(D) (BC)(A)
0 1
0 1
0 1
![Page 49: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/49.jpg)
Chapter 7: Testing Of Digital Circuits 49
Random Testing
Randompatterngenerator
Knowngood ckt
Circuitunder test
Compare
![Page 50: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/50.jpg)
Chapter 7: Testing Of Digital Circuits 50
Transition Count Testing
• Count the number of transitions for a specific input pattern and compare with the value stored for “good” circuits
• Reduction in data storage for storing correct responses
• “Aliasing” errors
![Page 51: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/51.jpg)
Chapter 7: Testing Of Digital Circuits 51
Scan Based Testing
• Form a scan chain for all the storage elements (“flip-flops”) in the circuit
• Use this scan chain for inserting the test patterns as well as reading the results
• Use combinational circuit test pattern generator methods generating test inputs
![Page 52: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/52.jpg)
Chapter 7: Testing Of Digital Circuits 52
Scan Based Testing (contd.)
logic logicReg
Reg
Reg
![Page 53: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/53.jpg)
Chapter 7: Testing Of Digital Circuits 53
Signature Analysis & Built-in-self-test (BIST)
M. Balakrishnan
Dept. of Comp. Sci. & Engg.
I.I.T. Delhi
![Page 54: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/54.jpg)
Chapter 7: Testing Of Digital Circuits 54
Signature Analysis
• Test results available in a very compact form and thus very suitable for BIST
• In-speed testing possible
• PRBS generators use for test pattern generation as well as test result generation
![Page 55: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/55.jpg)
Chapter 7: Testing Of Digital Circuits 55
PRBS Generator
A PRBS or pseudo random binary sequence generator consists of a long shift register with serial input generated by taking exclusive-or of some of the intermediate inputs
![Page 56: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/56.jpg)
Chapter 7: Testing Of Digital Circuits 56
BIST Example
logicL1
logicL2
R1
R2
R3
![Page 57: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/57.jpg)
Chapter 7: Testing Of Digital Circuits 57
BIST Registers Modes
• Normal mode (PIPO)
• PRBS generator mode
• Signature capture mode
• Scan mode
![Page 58: Chapter 7: Testing Of Digital Circuits 1 Testing of Digital Circuits M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi](https://reader035.vdocument.in/reader035/viewer/2022062516/56649d425503460f94a1d0c2/html5/thumbnails/58.jpg)
Chapter 7: Testing Of Digital Circuits 58
BIST Steps: Example
• R1 : PRBS mode, R2: Signature mode
Generate finite number of test patterns• R1, R2, R3: Scan mode
Scan out the signature of L1 and compare • R2 : PRBS mode, R3: Signature mode
Generate finite number of test patterns• R1, R2, R3: Scan mode
Scan out the signature of L2 and compare