FATE: a Functional ATPG to Traverse Unstabilized EFSMs * Giuseppe Di Guglielmo Franco Fummi Cristina Marconcini Graziano Pravadelli Dipartimento di Informatica – Universit` a di Verona {diguglielmo, fummi, marconcini, pravadelli}@sci.univr.it Abstract The paper describes a functional ATPG that explores the DUT state space by exploiting an easy-to-traverse extended FSM model. The ATPG engine relies on learning, backjumping and constraint logic programming to deterministically generate test vectors for traversing all transitions of the EFSM. 1 Introduction The development of a functional ATPG requires to deal with four basic aspects: (a) the formalism used to model the design un- der test (DUT), (e.g., FSM [1], assignment decision diagram [2, 3], BDD [4], etc.); (b) the algorithm to take decisions to move from a state to another during DUT state exploration (e.g., genetic al- gorithms [5], SAT-solving [3], constraint logic programming [6], linear programming [3], etc.); (c) the strategy to deterministically reach particular states of the DUT representing corner cases (e.g., learning [7], justification [1], backtracking [2], backjumping [8], etc.); (d) the metrics to evaluate the quality of generated test se- quences (transition coverage [9], path coverage [10], statement coverage [10], fault coverage [4], etc.). In this context, the paper presents the functional ATPG FATE which addresses the previous aspects as follows (see Fig. 1): (a) The extended FSM (EFSM) paradigm is used to model the DUT. In particular, FATE works on a special kind of EF- SMs whose transitions present an high uniformly distributed probability of being deterministically fired [11]). (b) A constraint logic programming-based strategy (CLP) is adopted to deterministically generate test vectors that satisfy the guard of the EFSM transitions selected to be traversed. (c) A two-step ATPG engine is implemented which exploits CLP to traverse the DUT state space: first, a random walk-based approach is used to cover the majority of easy-to-traverse (ETT) transitions; then a backjumping-based mode is used to activate hard-to-traverse (HTT) transitions. In both modes, learning is exploited to get critical information that improve the performance of the ATPG. (d) Transition coverage is used to evaluate the quality of the gen- erated test sequences, since 100% transition coverage rep- resents a necessary condition for fault coverage and more accurate coverage metrics. * Research activity partially supported by the FP6-2005-IST-5-033709 VERTIGO European Project. Figure 1. The FATE flow. The EFSM model has been selected since it allows a more compact representation of the state space than traditional FSM. Thus, the risk of state explosion is sensibly reduced. Moreover, the EFSM model joins the valuable characteristics of the three main formalisms proposed in the literature [12]: (1) state-oriented, particularly suited to model control systems, (2) activity-oriented, targeted for data-dominated systems, (3) structure-oriented, con- venient to model the DUT as an interconnection of basic compo- nents. However, few papers in the literature propose ATPGbased on the EFSM model. The reason, that limits the use of EFSMs in the ATPG context, depends on the fact that traversing an EFSM is more difficult than traversing an FSM. In fact, moving between two states may require to satisfy a condition depending on primary inputs (PIs), but also on internal registers. Thus, the presence of conditions involving registers on the guard of transitions imposes that already existent approaches, developed for traversing FSMs, cannot be easily adapted to EFSMs. In [13, 14] different strategies are proposed to remove transi- tions whose guard involves conditions on registers (note as incon- sistent transitions) for reusing FSM-targeted ATPGs. However, the removal of inconsistencies can lead to the state space explosion if the DUT description contains a large number of conditions. A different approach is proposed in [9], where the authors present an orthogonalization process to extract an EFSM model from an HDL description. Then, a stabilization process is presented to improve the traversing of the EFSM. Finally, a breadth first search is used to generate a set of test patterns which covers all the transitions on the stabilized EFSM. The main limitations of this approach are repre- Proceedings of the Eleventh IEEE European Test Symposium (ETS’06) 0-7695-2566-0/06 $20.00 © 2006 IEEE