A New ATPG Algorithm for 21st Century: The wojoRithm - PowerPoint PPT Presentation

About This Presentation
Title:

A New ATPG Algorithm for 21st Century: The wojoRithm

Description:

John Sunwoo sunwojo_at_auburn.edu Electrical & Computer Engineering Auburn University, AL Table of Contents Flow Diagram PI Assignment Mechanism Logic Simulation (How ... – PowerPoint PPT presentation

Number of Views:91
Avg rating:3.0/5.0
Slides: 16
Provided by: johns95
Category:

less

Transcript and Presenter's Notes

Title: A New ATPG Algorithm for 21st Century: The wojoRithm


1
A New ATPG Algorithm for 21st Century The
wojoRithm
  • John Sunwoo
  • sunwojo_at_auburn.edu
  • Electrical Computer Engineering
  • Auburn University, AL

2
Table of Contents
  • Flow Diagram
  • PI Assignment Mechanism
  • Logic Simulation (How Why Demo)
  • Backtrace()
  • Example
  • Results (Developing)
  • Significance Suggestions on future work
  • Q A

3
High Level Algorithm
  • 1)Assign PIs fully (Unique)
  • 2)Simulate
  • 3)Fault site activated? If not, then change PIs
    and goto step 2
  • 4)Fault propagates to PO? (D or D-bar detected?)
    If not, set an additional objective to make it
    propagate (change PIs) and goto step 2
  • 5)Save the vector
  • 6)Done
  • Activate the fault site
  • propagate the fault
  • 3) save the vector

4
Why Start with Fully Assigned PI?
  • Start with X-state
  • D, PODEM
  • FAN, TOPS, SOCRATES
  • Before let the algorithm to think (ex.
    Backtrace), why dont we give it a shot. (FEMT,
    Free Extra Missile Theory)
  • Can be lucky

5
High Level Flow Diagram
6
Initial Primary Input Assignment
7
Initial Primary Input Assignment (2)
Waste of step!
0
  • Why non-controlling values, not Random?
  • Random 50 to activate fault site accidentally
  • Non-controlling values ? (Add-in Intelligence)
  • Higher chance to make an effective change on the
    circuit

1
0
Random
0
0
1
0
0
1
1
N
-
C
1
0
1
1
8
Logic Simulator
  • Reads in circuit.lev
  • Logic evaluation from lowest level to highest
    level.
  • myVector A linked list to be updated
    simultaneously.
  • Demo

9
Backtrace( )
  • Backtrace(label, value)
  • while (PI has not updated)
  • 1) check input of gate l
  • 2) change one of the input x which needs to
    be change to v. If none of the input value
    needs to be change then backtrack.
  • 3) l l
  • 4) x v
  • return new myVector

10
Example (c17.bench)
myVector 13, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0,
1, 0
11
Example Decision Steps (c17.bench)
1
1
0
6
12
1
10
0
1
2
1
10
8
0
1
3
1
1
7
4
0
1
1
13
0
11
0
1
D
D
0
5
sa1
9
1
  1. Initial objective set 9 to 0
  2. Apply vector
  3. Backtrace from 9 save the path (learning)
  4. Apply updated vector
  5. D-bar propagates?
  6. Additional objective set 8 to 1

7. Backtrace from 8 8. Apply updated vector 9.
D detected at PO 13 10. Save vector, Done
12
Data ltDemogt
wojoRithm 5 01111 10011 10001 11111 11100 01101 11
011 11101 10100
  • HITEC
  • 5
  • 00011
  • 00010
  • 00100
  • 10001
  • 10111
  • 11111
  • 10000
  • 01001
  • 10011
  • 01100

One vector short! Both got 100 Fault
coverage Compact test vector size is possible
13
Significance Suggestion
  • Complete implementation on software
  • Experiment on bigger bench circuits
  • Artificial Intelligence (AI)
  • Random PI VS Static non-controlling PI

14
Conclusions
  • Algorithm is not fully implemented
  • More analysis is needed
  • The simplest but powerful
  • All node is in known state faster simpler
    backtracing.

15
Questions?
Write a Comment
User Comments (0)
About PowerShow.com