Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli

Slides:



Advertisements
Similar presentations
1 Non-uniform Crossover in Genetic Algorithm Methods to Speed up the Generation of Test Patterns for Sequential Circuits Michael Dimopoulos - Panagiotis.
Advertisements

Population-based metaheuristics Nature-inspired Initialize a population A new population of solutions is generated Integrate the new population into the.
CS6800 Advanced Theory of Computation
1 An Adaptive GA for Multi Objective Flexible Manufacturing Systems A. Younes, H. Ghenniwa, S. Areibi uoguelph.ca.
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Aiman El-Maleh, Ali Alsuwaiyan King Fahd University of Petroleum & Minerals, Dept. of Computer Eng., Saudi Arabia Aiman El-Maleh, Ali Alsuwaiyan King Fahd.
Spie98-1 Evolutionary Algorithms, Simulated Annealing, and Tabu Search: A Comparative Study H. Youssef, S. M. Sait, H. Adiche
An Efficient Test Relaxation Technique for Synchronous Sequential Circuits Aiman El-Maleh and Khaled Al-Utaibi King Fahd University of Petroleum & Minerals.
Multiobjective VLSI Cell Placement Using Distributed Simulated Evolution Algorithm Sadiq M. Sait, Mustafa I. Ali, Ali Zaidi.
Fuzzy Simulated Evolution for Power and Performance of VLSI Placement Sadiq M. Sait Habib Youssef Junaid A. KhanAimane El-Maleh Department of Computer.
Finite State Machine State Assignment for Area and Power Minimization Aiman H. El-Maleh, Sadiq M. Sait and Faisal N. Khan Department of Computer Engineering.
Efficient Test Compaction for Combinational Circuits Based on Fault Detection Count- Directed Clustering Aiman El-Maleh and Saqib Khurshid King Fahd University.
Fuzzy Simulated Evolution for Power and Performance of VLSI Placement Sadiq M. SaitHabib Youssef Junaid A. KhanAimane El-Maleh Department of Computer Engineering.
Fast Force-Directed/Simulated Evolution Hybrid for Multiobjective VLSI Cell Placement Junaid Asim Khan Dept. of Elect. & Comp. Engineering, The University.
Test Set Compaction for Sequential Circuits Computer Engineering, KFUPM Test Set Compaction for Sequential Circuits based on Test Relaxation M.S Thesis.
Artificial Intelligence Genetic Algorithms and Applications of Genetic Algorithms in Compilers Prasad A. Kulkarni.
Fuzzy Evolutionary Algorithm for VLSI Placement Sadiq M. SaitHabib YoussefJunaid A. Khan Department of Computer Engineering King Fahd University of Petroleum.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Christoph F. Eick: Applying EC to TSP(n) Example: Applying EC to the TSP Problem  Given: n cities including the cost of getting from on city to the other.
Genetic Algorithm.
VLSI Testing Lecture 7: Combinational ATPG
Zorica Stanimirović Faculty of Mathematics, University of Belgrade
An Iterative Heuristic for State Justification in Sequential Automatic Test Pattern Generation Aiman H. El-MalehSadiq M. SaitSyed Z. Shazli Department.
What is Genetic Programming? Genetic programming is a model of programming which uses the ideas (and some of the terminology) of biological evolution to.
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
Arindam K. Das CIA Lab University of Washington Seattle, WA MINIMUM POWER BROADCAST IN WIRELESS NETWORKS.
Applying Genetic Algorithm to the Knapsack Problem Qi Su ECE 539 Spring 2001 Course Project.
Genetic Algorithms Genetic Algorithms – What are they? And how they are inspired from evolution. Operators and Definitions in Genetic Algorithms paradigm.
Computational Complexity Jang, HaYoung BioIntelligence Lab.
A Hybrid Genetic Algorithm for the Periodic Vehicle Routing Problem with Time Windows Michel Toulouse 1,2 Teodor Gabriel Crainic 2 Phuong Nguyen 2 1 Oklahoma.
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
ECE 103 Engineering Programming Chapter 52 Generic Algorithm Herbert G. Mayer, PSU CS Status 6/4/2014 Initial content copied verbatim from ECE 103 material.
Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman.
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Genetic Algorithm (GA)
Genetic Algorithms. Underlying Concept  Charles Darwin outlined the principle of natural selection.  Natural Selection is the process by which evolution.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
Overview Last two weeks we looked at evolutionary algorithms.
Genetic Algorithms. Solution Search in Problem Space.
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Genetic Algorithms.
Genetic Algorithms.
Optimization Of Robot Motion Planning Using Genetic Algorithm
Evolutionary Algorithms Jim Whitehead
Author :Shigeomi HARA Hiroshi DOUZONO Yoshio NOGUCHI
Balancing of Parallel Two-Sided Assembly Lines via a GA based Approach
School of Computer Science & Engineering
Example: Applying EC to the TSP Problem
Comparing Genetic Algorithm and Guided Local Search Methods
VLSI Testing Lecture 7: Combinational ATPG
Example: Applying EC to the TSP Problem
Artificial Intelligence Chapter 4. Machine Evolution
Example: Applying EC to the TSP Problem
Automatic Test Generation for Combinational Circuits
VLSI Testing Lecture 8: Sequential ATPG
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
Fault Models, Fault Simulation and Test Generation
Esam Ali Khan M.S. Thesis Defense
VLSI Testing Lecture 7: Combinational ATPG
GENETIC ALGORITHMS & MACHINE LEARNING
Automatic Test Pattern Generation
Artificial Intelligence Chapter 4. Machine Evolution
EE368 Soft Computing Genetic Algorithms.
Boltzmann Machine (BM) (§6.4)
Searching for solutions: Genetic Algorithms
MS Thesis Defense Presentation by Mustafa Imran Ali COE Department
Case Injected Genetic Algorithms
Beyond Classical Search
Population Based Metaheuristics
Population Methods.
Presentation transcript:

An Iterative Heuristic for State Justification in Sequential Automatic Test Pattern Generation Aiman H. El-Maleh Sadiq M. Sait Syed Z. Shazli Department of Computer Engineering King Fahd University of Petroleum and Minerals Dhahran, Saudi Arabia

Outline Motivation Sequential Test Generation Genetic Algorithms for Test Generation Problem definition & existing solutions Proposed approach Experimental results Comparison with other approaches Conclusions

Motivation Testing of ICs accounts for significant percentage of design & production costs. Deterministic, fault-oriented sequential circuit test generation is highly complex and time consuming. Hard to detect faults require very high CPU time and often not detected. New approaches needed to reduce execution time and improve fault coverage. Evolutionary algorithms effective in solving many search and optimization problems. Genetic algorithms

Sequential Test Generation A sequential circuit has memory in addition to combinational logic. Testing for a fault in a sequential circuit requires A vector to activate the fault A propagation sequence to propagate the fault effect to a primary output A state justification sequence to justify the required state on the memory elements State justification using deterministic algorithms is a difficult problem with high execution times.

Genetic Algorithms for Test Generation Basic idea is population improves with each generation Population: A set of input vectors or vector sequences. Fitness function: Based on fault or logic simulation of candidate vectors or sequences Regeneration rules (heuristics): Members with higher fitness function values are selected to produce new members via transformations like mutation and crossover.

Problem Definition & Existing Solutions State justification: Process of finding a sequence of inputs that will drive the state machine from the reset (or unknown or KNOWN?) state to the present state required by the test. Existing solutions: Deterministic Algorithms: State justification involves backtracking, high CPU time Hard to detect faults often not detected More effective for control-dominant circuits Poor performance for circuits with large number of invalid states (retimed circuits) Able to identify redundant faults

Existing Solutions Simulation-based Approaches: Processing occurs in forward direction only More effective for data-path-dominant circuits Unable to identify redundant faults A Hybrid approach is needed Deterministic algorithms for fault activation and propagation State justification using Simulation-based approaches

Proposed Hybrid State Justification Framework Select Target Fault Run Deterministic ATPG Y Fault simulate generated sequence Fault detected N Justify state using Genetic Algorithm

The GA-Based State Justification Approach in [Hsiao 98] A chromosome is a sequence of test vectors (fixed length) Objective: To genetically engineer a state justification sequence Logic simulation is used to get the state reached by the sequence The fitness function matches only the last state reached, with the desired state. Drawbacks of the approach Length of the sequence depends on structural sequential depth of the circuit Quality of intermediate states reached is not considered while justifying a target state

The Approach used in [Hsiao 98] Desired state 10x10x 0110 V1 001100 1100 V2 1011 V3 0101 V4 Fit (P1) = 3 / 4 1110 V1 101001 0100 V2 0011 V3 1101 V4 Fit (P2) = 3 / 4 0110 V1 101101 0100 V2 0011 V3 0101 V4 Fit (Child) = 1

Proposed GA-Based State Justification We apply GA while moving from a state to a state A chromosome consists of a single vector instead of a sequence of vectors State justification sequences are genetically engineered vector-by-vector Fitness based on number of matching bits between reached and desired state (Hamming distance) A Tabu List containing the last visited states is maintained. Prevents algorithm from visiting recently visited FSM states If FSM state reached is Tabu, next fit vector is chosen

The Proposed Approach Reset state 0000 Target state 11x0 C1: 010011 0001 Fit(P1) = 0 / 3 C2: 110101 0010 Fit(P2) = 1 / 3 C3: 010101 0110 Fit(C) = 2 / 3 010101 is added to the state justification sequence 0110 becomes the new reset state

Proposed GA-Based State Justification Backtrack limit Backtrack to last visited state when all chromosomes produce states that are Tabu (happens in control dominated ckts) Algorithm stops searching for a state when limit exceeded Nlimit A minimum limit on the number of states to be traversed for reaching an objective state Algorithm stops if fitness of current state is less than average fitness of last Nlimit visited states If desired state is reached Compare all reached states by the derived sequence to desired states All desired states reached are removed

Proposed GA-Based State Justification

Experimental results Benchmark circuits List of desired states ISCAS 89 sequential circuits Retimed circuits (Used high CPU time in deterministic ATPG of HITEC) List of desired states Ran HITEC ATPG for 109 backtracks to remove undetectable faults States generated for all aborted faults (not detected) States relaxed to keep only necessary requirements States merged to reduce number of desired states

GA Parameters used (n+1) replacement strategy Random-Elitist strategy The initial population is randomly generated Rate of crossover is 1 Mutation rate is 0.01 Single point crossover Roulette-wheel used for selecting parents Three replacement strategies explored (n+1) replacement strategy Worst member of previous generation replaced new chromosome if new chromosome fitter Average fitness monotonically increases in every generation Random-Elitist strategy N/2 crossovers in every generation; N is population size Fittest half of chromosomes transferred directly to next generation Other half selected randomly Roulette Elitist strategy Other half selected by roulette wheel

Effect of Replacement Policies

Average & Best Fitness (n+1) replacement strategy Lowest execution time Reached comparable number of states (Best in most circuits except two)

Quality of States Reached Unreached State

Recommended Parameters Our technique Population size 32 Generations 400 TLS 15 Nlimit 1.5 * (#DFF) BT Limit 10 Technique in [Hsiao 98] Length of sequence = 4*seq.depth A population size of 32 Number of generations is 8 Two-point uniform crossover; probability of crossover is 1. Any vector in the chromosome is replaced with another random vector in mutation; probability of mutation is 0.01 Tournament selection mechanism

Recommended vs. Best

Comparison with [Hsiao 98]

Comparison with [Hsiao 98]

Comparison with [Hsiao 98]

Conclusions A hybrid ATPG approach for sequential circuits involving deterministic and GA-based state justification A novel state justification procedure based on GA Genetic engineering of a sequence ‘vector by vector’. Advantage of dynamically determining the length of justification sequence Benefit of taking quality of intermediate states into account Use of Tabu List to prevent the algorithm from visiting previously visited state Comparison of three replacement strategies (n+1) replacement strategy gave better results Achieved better results than the technique in [Hsiao 98]