Title: Improvement of the Fault Coverage of the PseudoRandom Phase inColumnMatching BIST
1Improvement of the Fault Coverage of the
Pseudo-Random Phase in Column-Matching BIST
- Petr Fier, Hana Kubátová
- Department of Computer Science and Engineering
- Czech Technical University
2Outline
- Mixed-Mode BIST
- Pseudo-Random Fault Coverage
- Weighted Pattern Testing
- Column-Matching BIST
- Enhancing the Fault Coverage
- Conclusions
3Mixed-Mode BIST
- Generate test patterns
- Apply the patterns to the circuit
- Evaluate the response
4Mixed-Mode BIST
- Combination of pseudo-random and deterministic
testing - Two disjoint phases
5Pseudo-Random Fault Coverage
- The aim to cover maximum faults in the
pseudo-random phase - Experiments performed
- Difference between LFSR and CA
- Influence of the LFSR generating polynomial
- Influence of the LFSR generating seed
6Pseudo-Random Fault Coverage
- Influence of the LFSR Generating Polynomial on
Fault Coverage
- Questions
- Should we use primitive polynomials?
- Does the polynomial significantly influence the
fault coverage? - Whats the simplest way?
7Pseudo-Random Fault Coverage
- Influence of the LFSR Generating Polynomial on
Fault Coverage
- Answers
- Should we use primitive polynomials? No.
- Does the polynomial significantly influence the
fault coverage? No. - Whats the simplest way? One-tap poly.
8Pseudo-Random Fault Coverage
- Influence of the LFSR Generating Polynomial on
Fault Coverage
9Pseudo-Random Fault Coverage
- Fault Coverage Probability
10Pseudo-Random Fault Coverage
- Fault Coverage Probability
- Conclusions
- For a low number of patterns many faults are left
undetected, while also their number varies a lot - When increasing the number of test patterns, the
number of undetected faults rapidly decreases,
while the standard deviation of this number
decreases as well - Good choice of a PRPG becomes very important when
the number of the applied patterns is low
11Pseudo-Random Fault Coverage
- Cellular Automata vs. LFSRs
- Questions
- What is better?
- Is there any difference indeed?
- People say that CA are better. Really? And in
what sense?
12Pseudo-Random Fault Coverage
- Cellular Automata vs. LFSRs
- Answers
- What is better? Hard to say
- Is there any difference indeed? Definitely.
- People say that CA are better. Really?And in
what sense? ---gt
13Pseudo-Random Fault Coverage
- Cellular Automata vs. LFSRs
CA rule 60
14Pseudo-Random Fault Coverage
- Cellular Automata vs. LFSRs
- Mean value of the number of undetected faults is
the same - Standard deviation is decreased !
15Pseudo-Random Fault Coverage
- Influence of the Seed (for LFSRs and CA)
- Questions
- How important is the seed selection?
16Pseudo-Random Fault Coverage
- Influence of the Seed (for LFSRs and CA)
- Answers
- How important is the seed selection?
- VERY important. Sometimes
17Pseudo-Random Fault Coverage
- Influence of the Seed (for LFSRs and CA)
- Four experiments
- LFSR with balanced seed (random distribution of
1s and 0s) - CA with balanced seed
- LFSR with unbalanced seed, only one 1 value
- CA with unbalanced seed
18Pseudo-Random Fault Coverage
- Influence of the Seed (for LFSRs and CA)
19Pseudo-Random Fault Coverage
- Influence of the Seed (for LFSRs and CA)
- Conclusions
- Balanced seed almost eliminates differences
between LFSRs and CA - Using unbalanced seeds for LFSRs is BAD.
- Using unbalanced seeds for CA can be bad, but
also very good, if a proper seed is selected
20Weighted Pattern Testing
- Main idea it can be advantageous in
pseudo-random testing, when some CUT inputs have
a certain frequency of 1s(and 0s) - Thus we somehow modify the PRPG patterns, to
increase/decrease the probability of occurrence
of 1s at some outputs
21Weighted Pattern Testing
22Column-Matching
Example
23Enhancing Pseudo-Random Fault Coverage
- Four Methods
- Repetitive Balanced LFSR Reseeding
- Repetitive Unbalanced CA Reseeding
- Test Weight-Based Wire Reordering
- Weighted Random Pattern Testing
24Enhancing Pseudo-Random Fault Coverage
- Repetitive Balanced LFSR Reseeding
- Select LFSR polynomial
- Randomly generate the seed
- Simulate fault coverage of the LFSR
- Repeat several times 2 and 3, until
- Take the best seed
25Enhancing Pseudo-Random Fault Coverage
- Repetitive Unbalanced CA Reseeding
- Select CA type
- Randomly place one 1 into all-zero seed
- Simulate fault coverage of the CA
- Repeat several times 2 and 3, until
- Take the best seed
26Enhancing Pseudo-Random Fault Coverage
- Test Weight-Based Wire Reordering
- Select CA type
- Randomly place one 1 into all-zero seed
- Compute test weights, sort them
- Compute CA weights, sort them
- Assign the CA outputs to CUT inputs, by the order
of their weights
27Enhancing Pseudo-Random Fault Coverage
- Weighted Random Pattern Testing
- Select LFSR polynomial
- Randomly generate the seed (balanced)
- Compute test weights
- Add weight-modification logic to LFSR outputs
(ANDs, ORs)
28Enhancing Pseudo-Random Fault Coverage
29Conclusions
- When LFSR is used, the one-tap one is OK
- The pseudo-random phase should be altered, so
that maximum of faults are detected - Four methods were examined
- But no universal method can be found