ANALYSIS AND EVALUATION OF SEQUENTIAL REDUNDANCY IDENTIFICATION ALGORITHMS. Master of Science Thesis In Electronic System Design By

Size: px
Start display at page:

Download "ANALYSIS AND EVALUATION OF SEQUENTIAL REDUNDANCY IDENTIFICATION ALGORITHMS. Master of Science Thesis In Electronic System Design By"

Transcription

1 TRITA-ICT-EX-2011:239 ANALYSIS AND EVALUATION OF SEQUENTIAL REDUNDANCY IDENTIFICATION ALGORITHMS Master of Science Thesis In Electronic System Design By Yulia Kuznetsova Stockholm, [October 2011] Supervisor and Examiner: Dr. Elena Dubrova

2 ANALYSIS AND EVALUATION OF SEQUENTIAL REDUNDANCY IDENTIFICATION ALGORITHMS ACKNOWLEDGEMENTS ABSTRACT CONTENTS 1. INTRODUCTION 2. BACKGROUND 2.1 TYPES OF FAULTS 2.2 COMBINATIONAL AND SEQUENTIAL CIRCUITS 2.3 WAYS OF TESTING 3. ALGORITHMS 3.1 SINGLE-FAULT THEOREM 3.2 MULTIFAULT THEOREM 3.3 SEQUENTIALLY UNTESTABLE FAULTS IDENTIFIED WITHOUT SEARCH 3.4 PARTIALLY DETECTABLE FAULTS IN SYNCHRONOUS SEQUENTIAL CIRCUITS 3.5 SEQUENTIAL REDUNDANCY IDENTIFICATION USING RECURSIVE LEARNING 3.6 A NOVEL, LOW-COST ALGORITHM FOR SEQUENTIALLY UNTESTABLE FAULT IDENTIFICATION 3.7 UNTESTABLE FAULT IDENTIFICATION ON RTL LEVEL 4. ANALYSING THE MISTAKES 5. EFFICIENCY COMPARISON

3 6. CONCLUSION 7. APPENDIX 8. GLOSSARY 9. REFERENCES

4 ACKNOWLEDGEMENTS I would like to thank my supervisor Dr. Elena Dubrova for all her guidance as well as Maxim Teslenko, Ph.D, for his invaluable help in this research. Also, many thanks to the Swedish Institute (Svenska Institutet, S.i.) for granting me the scholarship which made my studies at KTH possible.

5 ABSTRACT This thesis has a goal of analysing different methods used for identifying redundant faults in synchronous sequential circuits as a part of reducing the complexity of ATPG algorithms and minimizing the test sets. It starts with an overview of various faults which occur in digital circuits of different types and moves on to the common testing methods used for fault detection. As it is not possible to perform an exhaustive search in order to detect every possible fault in any given circuit due to time and power consumption issues, there are certain needs for minimizing the set of tests which detects the existing faults. Therefore discovering the untestable and redundant faults is so important when testing. The overview of both classical and novel methods for detecting untestable and redundant faults is presented followed by the analysis of the results and the benefits each of these methods promises.

6 - A fault is said to be undetectable if it is not detectable. * - Thank you, Captain Obvious...** 1. INTRODUCTION With the increasing complexity of current digital systems, reliability considerations have become increasingly important. As all physical devices, digital circuits are subject to failure. The current technologies used to construct digital systems are more reliable than earlier technologies, and that has led to a considerable decrease in the failure rate of individual components. However, this has been offset to a significant extent by the increased complexity of today s circuit designs. Therefore, more and more advanced maintenance methods are required. In digital systems, a typical maintenance procedure is all about quick detection, location and repair of any system fault. Nowadays fault detection algorithms are integrated into synthesis tools (such as Synopsis). It all relies heavily on Automatic Test Pattern Generation (ATPG) procedures which are notoriously very performance-demanding even for combinational circuits. When it comes to sequential circuits, whether synchronous or asynchronous, the complexity is increased even more. However, the problem with sequential circuits lies not only in generating test patterns for testable faults (even though they might prove to be difficult to detect). Another important issue is identification of untestable/undetectable faults which normally requires enormous amount of CPU time. While in combinational circuits the untestable/undetectable faults mean circuit redundancies, sequential untestability/undetectability may also imply the existence of unreachable states or impossible state transitions it is often not possible to declare a fault redundant because even if it s not active now, it might propagate its effect to the output in the next state. Whether untestable/undetectable or simply redundant, the presence of such a fault will negatively affect the performance of ATPG tool, it may also prevent detection of other faults in the circuit, and in case of redundancies occupy extra space, thus increasing chip area, power consumption and propagation delays. Therefore it makes sense to uncover untestable/undetectable faults and filter them out before standard ATPG tool is employed. * I. Pomeranz & S.M. Reddy On identifying undetectable and redundant faults in synchronous sequential circuits ** A sarcastic reply to a self-evident statement, commonly used on the Internet

7 2. BACKGROUND In order to comprehend the full complexity of the area covered by this research it is necessary to review the concepts of fault diagnoses - the origins of faults in digital circuits, different types of those circuits and the most common ways of fault detection depending on which fault it is and where it occurred. 2.1 TYPES OF FAULTS A fault is defined as any change in a system which causes it to behave differently from the original system. Faults are caused by internal or external factors and often lead to system errors which in turn may result in system failures. Fig. 1 shows a fault classification chart where the fault types are divided into hardware and software faults (first classification level), then by their duration (second level), and finally an example of what could have caused such a fault is given (bottom level). Faults Hardware Software Permanent Transient Intermittent Permanent Intermittent Short circuit Power failure Weak soldering Bohrbugs Heisenbugs Fig. 1 Types of faults

8 Hardware faults can be permanent, transient or intermittent. Permanent faults are usually caused by certain physical defects such broken connection, short circuits, etc. They remain in the system until manually corrected. They are usually the easiest to detect as one doesn t have to determine the conditions under which they are reproducible. Transient faults are activated for some period of time. Transient faults also known as glitches or soft faults, are most often caused by the environmental factors such as electrical power surges, mechanical shock, overheating, etc. If a transient fault is active periodically, it is called intermittent. These faults are usually caused by age-related deterioration, implementation flaws or both. For example, a weak soldering spot can cause a circuit to malfunction every now and then, thus resulting in an intermittent fault. Software faults are by their nature considerably different from hardware faults and harder to classify. Lacking mechanical or electronic parts, software cannot be physically broken, it cannot age or be affected by the environment. However, it is prone to bugs, and it is constantly changing during upgrades which is making it more complex and hard to test. Example of bugs which cause software faults are Bohrbugs (bugs that are consistent under certain conditions) and Heisenbugs (which disappear once an attempt to study them is made). 2.2 COMBINATIONAL AND SEQUENTIAL CIRCUITS Combinational circuit consists of a set of gates with no feedback loops (also known as acyclic circuit) this means that the output is dependant only on the present values of the input doesn t take into account previous values. x1 x2 X Combinational Circuit C Z x3 x2 Z=x1x2+x3x2+x1x4 x1 x4 Fig. 2 Combinational circuit diagram and example schematic

9 Sequential circuit s output depends on the present inputs as well as the previous ones. This is achieved by introducing a memory element which stores information about the previous state. There are two types of sequential circuits: the first is synchronous which has an extra clocking device that synchronises the inputs. X Combinational Circuit C Z Clock for memory elements Fig. 3 Sequential Circuit The other type of sequential digital circuit is an asynchronous one: it lacks the clock line and because of that is more difficult to test comparing to the synchronous sequential and combinational circuits due to the possibility of timing problems on the feedback path. However, it is often faster and cheaper to produce than the sequential ones. X Combinational Circuit C Z Memory elements Fig 5. Asynchronous Sequential Circuit

10 2.3 WAYS OF TESTING Generally speaking, testing is applying a set of inputs to a circuit and observing the output in order to compare it with a pre-computed result known to be the right one. Testing should be performed during the entire lifespan of an electronic device as faults may be introduced into any circuit during any stage such as manufacturing, assembly or storage. And as it was already mentioned in chapter 2.1 faults may eventually result in system failures. Properly applied testing procedures not only prevent system failures, but also fight imperfections of manufacturing process if a fault isn t random, detecting and eliminating a probable cause will benefit the system in the future. In order to perform proper testing, certain test patterns are required. They are applied to the unit (circuit) under test (UUT) with a use of Automatic Test Equipment (ATE). The process of generating such test patterns is a difficult, yet extremely important task. Nowadays it is most commonly computer-aided and performed by Automatic Test Patter Generation (ATPG) systems. Fig. 4 below shows a flow-chart of a typical ATPG system. Circuit description Faults Initial state information Pattern generator Fault simulator inadequate Evaluate test coverage Build detection and Location dictionaries Translate to ATE language Test program Fig. 4 ATPG System

11 Such a system receives a set of inputs consisting of description of a circuit for which test patterns are being generated, initial state information as well as the faults which will be tested. Then the test patterns are generated, faults are simulated, and the response from the tested circuit is analyzed in order to produce dictionaries in easily understandable format in order to be fed to the ATE. This process is then repeated for every test pattern until generation is completed. Over the years many algorithms have been proposed for test generation of digital circuits. They do differ considerably between each other depending on the basic approach and also the type of circuit they are applied to sequential circuits are generally more difficult to test than combinational circuits. Also, test pattern generation process for asynchronous sequential circuits is notoriously more complicated than for synchronous ones. For combinational circuits test pattern generation algorithm may use the algebraic description (equitation) of the UUT (i.e. Boolean difference) or other methods that are utilizing the topological gate level description of the circuit (i.e. D-algorithm). The first type is theoretically able to obtain a complete test set covering a given fault, but in practice is too time and memory consuming to be implemented on a computer. The second type is more realistic and in fact is the first one ever used for real life ATPG. ATPG processes for sequential circuits are much more complex than the ones meant for combinational circuits. Instead of a single input vector a whole test sequence is normally required. However, in case of synchronous sequential circuits (see previous chapter) most of the techniques for generating test patterns for combinational circuits can be extended for sequential circuits. In case of asynchronous sequential circuits this transformation isn t as precise as timing is a critical factor in this case, while asynchronous circuits lack the synchronizing clock signal. With increasing complexity of digital circuits, the number of tests required for adequate test coverage is also increasing. Therefore test minimization problem is as vital as ever. Scientists across the world are constantly working of various methods of obtaining compact test sets which would speed up and optimize the testing procedures and keep up with the constantly evolving technologies. There exist several different approaches for test reduction and minimization. In this paper I will consider one of them - it has to do with identifying the redundant and untestable faults in synchronous sequential circuits in order to ignore them in further test generation, thus saving computational resources and possibly removing the redundant circuit parts in order to reduce hardware.

12 3. REDUNDANCY IDENTIFICATION ALGORITHMS Identifying redundancy is not a trivial task, though it might sound simple to some: if there s no existing test for a given fault in a circuit, such a circuit is considered redundant. However, it requires a tremendous amount of computations in order to prove that there s no such a test for this particular fault. A redundant fault itself is not affecting the circuit behavior, but as already mentioned in the previous chapter, it is important that its existence is discovered for the sake of further test pattern generation and hardware reduction. It is also very important to distinguish the concepts of redundant and untestable faults in sequential circuits. These two types of faults are identical in a combinational circuit (provided that it contains only Boolean gates), but for a sequential circuit redundant faults represent a subset of untestable fauls (which sometimes can be detected by multiple observations) and unlike partially detectable (also known as partially testable) faults do not affect circuit s operation under any conditions. The diagram below shows a rough classification of faults in terms of their detectability. Faults Testable Untestable Partially testable Redundant Fig. 1 Faults classification

13 Consider the following example of a redundant fault in a combinational circuit: Fig. 2 Removing the redundancy In order to uncover the stuck-at-0 fault on line d (1), the following condition is necessary: A=B=1. However, if B=1, the resulting output E will also be equal to 1, thus, blocking the fault effect. This means that no matter if the fault is present or not, the output of the circuit will be the same. Thus, this fault is untestable, and in combinational circuits, as mentioned before, such faults are considered redundant. Therefore we can permanently ground line d (2) as it is doesn t affect the inputs of the OR gate and always behaves like a logical 0. Then the AND gate can be removed as it is no longer connected to anything, and so can be OR gate because it now acts like a wire. The resulting simplification can be seen at (3), where E = B instead of E= AB +B. Such hardware reduction is not only important in terms of reducing costs (though nowadays the price of single circuit components is much less than in 1970s when redundancy identification and removal became important). Removing the redundancy makes the hardware faster, reduces the power consumption and saves a lot of testing efforts during verification. In this paper a few major approaches to identification of sequential redundancy and untestability are investigated. The first two are the famous single-fault and multi-fault theorems which are considered the major break-through in the field.

14 3.1 SINGLE-FAULT THEOREM It was originally introduced by V. Agrawal and S. Chakladhar in 1993 [2] together with a multifault theorem (see chapter 3.2). It was an era when synchronous sequential redundancy received wide attention and scientists started actively looking for efficient ways of identifying and eliminating redundant and untestable faults in sequential circuits. However, until Agrawal and Chakladhar published their paper entitled Combinational ATPG Theorems for Identifying Untestable faults in Sequential Circuits the known solutions relied on sequential automatic test pattern generation which were naturally highly complex. The two new methods based on combinational ATPG presented in that article suggested faster and better way of identifying the untestable faults in the sequential circuits. The figure below shows a combinational array model of a sequential circuit. It represents an unrolled sequential circuit (see Fig. 3 from the previous chapter). Each block of this model represents a copy of a combinational logic, and each arrow represent a group of signals. An input arrow on the left side of each block is the present state and an output arrow on the right side is the next state. PI stands for the primary input and PO primary output. The present state of the left-most block is assumed to be unknown. A reset state is no enforced in this algorithm, but if it is provided, it is controlled by PI. The ATPG is looking for the input vectors which will be applied to PI in order to uncover fault effects on PO. PI PI PI PI n PO PO PO PO Fig. 3 Combinational array model

15 Definition C(n) is a combinational circuit containing n-blocks. These blocks are arranged in descending order from n 1 from left to right. (Note: I. Pomeranz and S. Reddy in their research [3] are using ascending order of block numeration as will be illustrated later on). PI PI PI PI X f PO PO PO PO Fig. 4 Insertion of a single fault in combinational array model The above figure illustrates the presence of a target single fault in the first block of a combinational array model. The fault model taken into consideration by this algorithm is single stuck-at fault (i.e. a fault which results in a line of a circuit being permanently stuck at a logic 1 or 0 ). Theorem: if a single fault in a combinational array is untestable then that fault is untestable in the sequential circuit. The array replicates the combinational logic and can have any finite length. The theorem can be easily illustrated by the following example of the modulo-3 counter (see Fig. 5 on the next page) which has 3 valid states (Q1Q0) corresponding to 00, 01 and 10. At the reset R = 1 the counter is set to 00. The output Z turns to 1 only when the counter is set to 10. When I = 0, R = 0, the counter retains its current state. When I = 1 and R = 0, the state changes the following way: and so on, as flip-flops (FF) are locked. The state 11 is invalid and should never be reached under

16 Fig 5. Modulo-3 counter [4] normal circumstances as it isn t reachable from any other state. The only way it can appear in the circuit is through a possible power up. There are six sequentially untestable faults in the circuit, out of which fault #1 (marked with * symbol on Fig. 5) is potentially detectable (as classified by GENTEST which was used for generating test patterns in this case) because it is interfering with the circuit s initialisation. This fault can be tested by applying the following inputs: I=1, R=1, clocking the FF and checking the output Z. Fault-free circuit would produce a steady zero ( ) while in the presence of that fault Z would be equal to The present of a 1 in the periodic output point out a fault. Unfortunately it is not possible to determine the exact time 1 will

17 be observed with the help of GENTEST as it initializes both faulty and fault-free circuits in the same way. When the experiment was concluded, GENTEST identified four out of five untestable faults in this example using the single fault theorem proving that it works successfully. 3.2 MULTIFAULT THEOREM Multifault theorem for sequential redundancy identification is the second fundamental ATPG theorem. Like single-fault theorem, it was introduced by V. Agrawal and S. Chakladhar in 1993 [2], but due to numerous corrections by I. Pomeranz and S. Reddy [3], was published again in 1995 [4]. The theorem is also based on the idea of using combinational array model for unrolling sequential circuits in order to apply combinational ATPG algorithms for undetectable fault identification, which are less complex and more time and processing power efficient than sequential ATPG algorithms. But, unlike single fault theorem, the fault is inserted in every block of the combinational array (Fig. 4). Note that word multifault means a single fault copied into every block, i.e. it is one fault in the same place of every block, but not multiple faults in each block of combinational array (i.e. not multiple stuck-at faults). Definition A target multifault is a multiple fault in C(n) such that the same single fault is introduced in each block [2] Multifault theorem A target multifault that is untestable in C(n) corresponds to an untestable single fault in sequential circuit. [2] The proof of this theorem isn t exceptionally complicated once an iterative array model of test generation is considered [11]. The state inputs of the leftmost block of our n-block combinational array model C(n) are assumed to be completely controllable, and state outputs of the rightmost block completely observable. If a multifault is undetectable, it means that it is not possible to activate it by n vectors for any of the 2 p initial states (where p is the number of FF). Thus, it is not possible to observe the fault effect neither at any of the n primary outputs (PO), nor at the state variable outputs of the rightmost block. If one takes an iterative array model for incorporating the C(n), it becomes obvious that its state

18 inputs can only be a subset of the possible 2 p states. This means that those faults which couldn t be activated in an isolated C(n) are still not activated, thus testing them is impossible. PI PI PI PI X X X X f PO PO PO PO Fig. 6 Multifault insertion in combinational array model The main idea is to introduce faults in each block of combinational array to reproduce one fault in sequential array. Agrawal and Chakradhar in [2] proved that it is possible to identify large number of untestable faults in circuits using this method. Theoretically, with infinite number of blocks in combinational array model (C(n), n ) it is possible to detect all untestable faults. However, in reality it is not achievable, and with a use of finite n in practise, which is normally kept reasonably small in order to reduce ATPG run time, some of untestable faults remain undetected. Comparing to a Single-fault theorem, Multifault theorem is more time-consuming and difficult to implement due to the use of complicated mutlifault ATPG algorithms, but it has been proved to work, and has become a base for several researches that use the core principals of the theorem for developing more effective methods of sequential redundancy identification.

19 3.3 SEQUENTIALLY UNTESTABLE FAULTS IDENTIFIED WITHOUT SEARCH This algorithm [6] was presented in 1994 by Mahesh A. Iyer and Miron Abramovici and is based on an idea that if a fault is requiring an illegal combination of values in order to be detected, it is untestable. It uses implications for obtaining a subset of faults which require conflicts on certain lines in the circuit in order to be detected. There s neither any assumption of any global reset state nor any need for state transition information. This algorithm is fault-independent and identifies untestable faults without any search on the contrary to the exhaustive search of fault-oriented test generation algorithms. In their previous work [12] Iyer and Abramovici presented an algorithm for indentifying redundancy in combinational circuits: Fault-Independent algorithm for Redundancy identification (FIRE) was dramatically different from any automatic test generation (ATG) algorithm for redundancy identification (RID). Unlike a typical ATG which confirms a fault as redundant when all possible approaches to its detection result in conflicts, FIRE starts with a possible conflict representing an impossible condition and uses it to find the untestable faults. Such faults are also considered redundant in a typical combinational circuit containing only Boolean gates, as was discussed in one of the previous chapters. The algorithm Iyer and Abramovici apply to sequential circuits is based on combinational FIRE algorithm and is extending it in order to identify sequentially untestable faults. It is called FUNTEST (Find UNTESTable faults) and like FIRE is also using the combinational iterative array model as in the single fault theorem by Agrawal and Chakladhar [2], but in this case it isn t based on ATG and is meant to identify sequentially untestable faults without search. The experimental results conducted with FUNTEST showed a considerable reduction in CPU time comparing to sequential test generator (GENTEST). Also, sequential test generator didn t manage to detect a large number of faults identified as untestable by this algorithm. However, FUNTEST is only able to identify a subset of the untestable faults. Taking all this into account, it makes sense to be using FUNTEST prior to GENTEST or another sequential ATG in order to improve the fault coverage. Indeed, the relevant tests proved this: the average fault coverage improved by nearly 4% and the CPU time reduced by 20%. The relation between faults identified by FUNTEST and GENTEST is illustrated in Fig.5.

20 GENTEST aborted FUNTEST faults GENTEST untestable faults faults Fig.7. FUNTEST vs GENTEST [6] The majority of faults discovered by FUNTEST are believed to be redundant, but in order to prove this a further analysis is required, such as checking if a particular untestable fault would interfere with circuit s initialization: if it doesn t, it will be redundant, otherwise it will be considered partially detectable. A little after FUNTEST the same researches presented a new algorithm called FUNI (Find UNtestable faults for which Illegal states are necessary for detection) [13] which was also meant to discover sequentially untestable faults without exhaustive search, but was more general than FUNTEST. It required pre-computing illegal states by another algorithm of theirs named FILL (Find ILLegal states) which was also presented in [13]. However, just like FUNTEST it couldn t distinguish between untestable and redundant faults. One year later a new and improved algorithm [14] appeared thanks to Iyer and Abramovici. They named it FIRES (sequential FIRE algorithm) and unlike anything that came out before, this algorithm successfully proven that it could identify sequentially redundant, and not just untestable faults using so called c-cycle redundancy concept [14] which is a generalization of a conventional redundancy concept. FUNTEST, FUNI and FIRES algorithms are illustrated by pseudo-code in the Appendix (Chapter 6) along with other functional outlines of methods used in fault detection.

21 3.4 PARTIALLY DETECTABLE FAULTS IN SYNCHRONOUS SEQUENTIAL CIRCUITS The paper [8] was published in 1996 by Dr. D. S. Dawoud of University of Botswana. As others before, Dawoud assumes that not all undetectable faults in the circuit are redundant and divide all faults in three types: FAULTS Detectable Partially Detectable Operationally Redundant Fig. 8 Fault types Although it doesn t come up with a functional algorithm for identifying the untestable faults, it introduces several interesting theories and definitions of partially detectable faults and how they behave under different modes of operations. Taking into account the mode of operation the same fault could be operationally redundant or not. It all depends on whether a partial test exists for the fault. The synchronization mode implies a specified input sequence (power-up sequence) at the start which synchronizes the circuit. The corresponding test strategy to this mode is called a restricted test strategy which employs only those test sequences that start with a power-up sequence. The special cases in synchronization mode are power-up and hardware resets. The other mode is called a free mode and it is not restricted to any power-up sequence. The test strategy used in this case is logically called unrestricted and may apply any test sequence, including the ones from restricted test strategy. Dawoud proposes and proves a theory that both unrestricted and restricted test strategies are equivalent when it comes to identifying undetectable faults. Therefore, the strategy that is less complicated may be used when generating the tests.

22 3.5 SEQUENTIAL REDUNDANCY IDENTIFICATION USING RECURSIVE LEARNING A sequential redundancy identification procedure based on uncontrollability analysis and recursive learning techniques was presented in 1996 by Wanlin Cao and Dhiraj K. Pradhan in Texas, USA. It was implied that the proposed algorithm could identify redundant faults. It was also implied that it could be used for identifying untestable faults, though with certain modifications. Like FIRES (see Chapter 3.3) the first algorithm is using c-cycle redundancy concept and can identify redundant faults that require conflicting assignments on multiple lines. Definition of c-cycle redundancy [7]: Consider a set of states {Sc} reachable after powering up the faulty circuit and applying any sequence of c input vectors. Then a fault is c-cycle redundant if it is not partially testable under the assumption that the initial states of the faulty circuit are restricted to {Sc}. In order to understand the concept of recursive learning one needs to get acquainted with the idea of implications. There are two types of implications: direct and indirect. A direct implication is a logical consequence of the truth table from some logic function. An indirect implication is a logical consequence that is not directly following from the truth s table, but rather from the circuit s structure. Consider the following example: a = 1 d = 1 f = 1 f = 1 y = 1! c = 1 e = 1 Fig. 9 An example of the Recursive Learning technique If y=1 it is not possible to make a direct implication about other values. On the other hand, using recursive learning technique, one can discover indirect implication that if y = 1 then f=1.

23 At the point y when there s no possibility for direct implication, we introduce temporary values: in case of y=1 there are two options: d=1 or e=1. As soon as such temporary assignments are performed, it is possible to apply direct implications: f=1 in case of d=1 or e=1. By using an indirect implication y = 1 f=1, test generation tool can set f=1 thus reducing the possible input variations by half. If the f value comes from another OR gate, then the process may recurse looking for further implications. This is why it is called a recursive learning procedure. The number of recursions is known as recursion or learning level. The time complexity of the procedure is derived from the number of recursion levels and is exponential, however as conflicting assignments are identified locally around the gates, the overall memory requirement is linear. From the previous example it can be concluded that using recursive learning one can extract all logical dependencies between signals in a circuit in order to perform direct implications for a given assignments of values. The algorithms presented by Cao and Pradhan extended and modified this concept to be used for identification of sequentially redundant and untestable faults (see the Appendix for algorithm outlines). The experiments conducted on ISCAS benchmarks showed that the proposed algorithm together with its own modification successfully identified a large number of c-cycle redundant and untestable faults (see Chapter 5). The first algorithm can be used for integration into a synthesis tool in order to remove redundancies which could be extremely useful as redundant faults represent parts of the circuit that could be removed in order to decrease chip area and power consumption. The second algorithm for identifying the untestable faults in general it takes longer during the initial pre-processing stage for finding and storing the implications information, but it is all worthwhile in the end: this information will be essential later for ATPG.

24 3.6 A NOVEL, LOW-COST ALGORITHM FOR SEQUENTIALLY UNTESTABLE FAULT IDENTIFICATION Presented by M. Syal and M. S. Hsiao of Bradley Department of Electrical and Computer Engineering Virginia Tech, Blacksburg in 2003 as new and low-cost way of identifying sequentially untestable faults, the algorithm [9] claimed to be able to handle a fault being introduced in any time frame within the unrolled sequential circuit (unlike the single fault theorem [2], where the target single fault is present in the first (right-most) block of a combinational array model). It is using sequential implications to extend the unobservability propagation of gates in multiple time frames. Like many others before, this approach is based on a single fault theorem by Agrawal and S. Chakradhar with principal difference mentioned above and is closely related to FIRE algorithm [12] in a sense that it is using similar single-line conflict analysis, but also a sequential implications engine as the basis for discovering the untestable faults in synchronous sequential circuits. An interesting classification of untestable faults group is presented together with this algorithm which is illustrated on the figure below: E D C B A Fig. 10 Untestable fault model

25 A - combinationally redundant fault B - if a fault can be uncovered in some time frame (i), but the fault effect will not be propagated to the next time frame (i+1) C a fault in i doesn t recombine with itself in any j > i D - a fault in i recombines with itself in j > i, but the compounded fault effect is blocked E all untestable faults The algorithm by Syal and Hsiao is handling untestable faults from group C and D according to the presented theorem: Theorem 1: If a target fault injected in any time frame i is found to be combinationally untestable, and if it can be guaranteed that the injected fault either does not recombine or does not become testable after re-combination with a copy of the same fault in any time frame greater than i, the fault would be truly sequentially untestable. [9] The theorem is brought to practise by a low-cost method using a sequential implications engine and a single-line conflict analysis like in FIRE. Experimental results on ISCAS 89 sequential benchmark circuits showed that many untestable faults could be identified using this algorithm at very little expense of memory and execution time. In 2006 the same authors presented an extended version of the same research complementing it with an algorithm for identification of untestable faults by maximizing impossibilities. This approach was aimed to discover more untestable faults by identifying multinode-conflicting assignments unlike many other approaches targeting only single-line conflicts. Application of this new approach on ISCAS 1985 and ISCAS 1989 circuits helped discovering more untestable faults than when using single-line conflicts analysis, even with the help of the implementation of Theorem 1.

26 3.7 UNTESTABLE FAULT IDENTIFICATION ON RTL LEVEL This method [16] presented in 2008 by J. Raik, H. Fujiwara, R. Ubar, A. Krivenko is radically different from any other before. While all previously published works in this area apply their fault-detection algorithms on a logic level, the algorithm presented here is targeting the Register-Transfer Level (RTL), thus scaling up with the increased complexity of the modern designs. The method is implemented using VHDL and PSL (Property Specification Language). In addition, it could be applied during high-level synthesis in order to improve the testing processes and minimize the chip area. A simplified diagram of the layers of abstraction is shown below illustrating that RTL is at a higher abstraction layer: Algorithm RTL Gates Fig. 11 Abstraction layers In RTL design consists of two parts: a control part (Finite State Machine, or FSM) and a data path part. FSM provides the control signals into the data path part, which consists of registers, multiplexers and functional units. Fig. 12 An example of RTL datapath

27 An example from the previous page shows a general case of a RTL datapath where an enable signal e that is controlling a datapath register r has a stuck-at-1 fault injected. The theorem introduced in [16] suggests that this fault is untestable if for all the control states of FSM where the guarding register (any register that has its inputs reachable from r though a combinational logic, e.g. r3 and r4 from Fig. 12) is reading from r, all the states that are immediately preceding control states (within one clock-cycle) write values to r. Obviously, not all registers with untestable faults will satisfy the conditions of the above theorem. However, when put to practise, this method has proven to work on many different sequential circuits (see results analysis in Chapter 5). The figure below illustrates the impact of an untestable fault on the register enable signal e from a logic level perspective. As can be seen, it makes four other signals to be untestable and this number grows the more bits there are in a register according to a formula: 4n+1 (where n is a number of bits). Fig. 13 Gate-level model with an untestable fault e It has been proven that this particular type of faults isn t covered very well by a typical sequential ATPG algorithm, but this novelty approach was able to identify them as untestable (in average 40% more than a sequential ATPG).

28 4. ANALYSING THE MISTAKES A single- and multi-fault theorems were originally presented by V. Agrawal and S. Chakladhar at the European Test Conference in 1993 [2], but due to numerous corrections by I. Pomeranz and S. Reddy [3] the entitled Combinational ATPG Theorems for Identifying Untestable faults in Sequential Circuits had to be published again in 1995 [4]. What went wrong? First, Agrawal and Chakladhar claimed that the faults found untestable by the single-fault theorem in a combinational circuit are by default redundant in a sequential circuit. This is far from the truth and the corrections presented by Pomeranz and Reddy in [3] illustrated that perfectly. An interested reader should refer to that paper. I will only repeat what has already been emphasized in the very beginning of Chapter 3 of this thesis: a redundant fault is a subset of untestable faults, but not every untestable fault is redundant. Therefore, procedures identifying untestable faults and procedure identifying redundant faults should be distinguished from each other. As for the undetectability of multifaults: initially Agrawal and Chakladhar claimed that if a target multifault was untestable in C(n) for a given value on n, it would also be untestable in C(m), where m > n. Pomeranz and Reddy again proven this incorrect: even if a multifault is untestable in C(n), there s still a possibility that it will be activated in the next state output of C(n) resulting in a detectable fault effect on one of C(m) s state variables. A good example proving this statement is given in [3]. A paper by Liang and others [18] proposed a symbolic simulation-based approach for sequential untestable fault identification. However, thanks to Long, Iyer and Abramovici it was proven in [19] that such a method could end up with false positives, i.e. a fault would be considered untestable when there could exist a test for it. In [19] it is suggested to use FUNI instead in order to avoid this problem.

29

30 5. EFFICIENCY COMPARISON This chapter illustrates the efficiency of the algorithms described in Chapter 3 by examples based on the experimental data collected during respective researches. Most of them were conducted on sequential benchmark circuits ISCAS 85 and ISCAS 89 the classical sequential benchmarks used widely in FPGA community. Sequential circuit s208 is a relatively small circuit with about 50 untestable faults, s386 is bigger and contains a total of 70 untestable faults, and s5378 is large and has over 700 untestable faults present. 5.1 FUNTEST vs GENTEST The horizontal line shows the name of the circuits the tests were conducted on, while the vertical axis represents number of untestable/undetectable/redundant faults identified. From the first chart it is obvious that if on a smaller circuit the results are not so much different for the methods under test, but the bigger the circuit gets, the more efficient FUNTEST becomes in terms of finding undetectable faults FUNTEST GENTEST 50 0 S208 S386 S5378 Fig 1. FUNTEST vs GENTEST

31 5.2 FUNTEST vs GENTEST vs SINGLE-FAULT THEOREM (SFT) FUNTEST GENTEST SFT S208 S386 S5378 Fig. 2 FUNTEST vs GENTEST vs Single Fault Theorem (SFT) However, when it comes to CPU time it becomes obvious that a Single Fault Theorem applied to GENTEST isn t holding its grounds in terms of processing time consumption: s5378 FUNTEST SFT GENTEST Fig. 3 FUNTEST, SFT and GENTEST in terms of consuming resources

32 5.3 FIRES & FUNI vs RECURSIVE LEARNING FIRES Proc FUNI Proc2 0 S386 S S386 S5378 Fig. 4 FIRES vs Procedure 1 from 3.5 Fig. 5 FUNI vs Procedure 2 from 3.5 comparing # of found redundant faults comparing # of found undetectable faults 5.4 FIRES & FUNI vs SYAL & HSIAO TOOL of untestable faults detected s386 s5378 s15850 S&H FUNI+FIRE sequential benchmark circuits Fig. 6 FUNI+FIRE vs Syal & Hsiao tool [9]

33 5.5 RTL APPROACH The experiments were conducted on HLSynth92 and HLSynth93 sequential benchmarks (newer and updated comparing to ISCAS 85 and ISCAS 89 in order to suit the challenges and demands of evolving hardware). The diagram below represents the CPU time spend on indentifying the untestable faults for respective sequential benchmarks. The next graph shows the fault coverage per circuit. CPU sec RTL search gcd sosq mult8x8 diffeq benchmark circuits Fig. 7 RTL approach time-wise RTL search gcd sosq mult8x8 diffeq Fig. 8 RTL approach fault coverage

34 As can be observed from Fig. 7 and Fig. 8, a large number of untestable faults has been identified using this method in rather short time periods. The biggest fault coverage was achieved at diffeq benchmark, but it also took the longest time. The least faults were discovered at mult8x8, but it also required the least CPU time. 5.6 HISTOTRICAL OVERVIEW The chart below shows the most interesting algoritms used for sequential redundancy/untestability identification that have been proposed over the years SFT &MFT FUNTEST FUNI FIRES Syal & Hsiao RTL In 1993 a Single Fault Theorem (SFT) and Multi-fault theorem (MFT) were proposed by Agrawal and Chakladhar [2]. These fault-oriented algorithms were the first of their kind and were based on applying combinational ATPG to the unrolled sequential circuit. FUNTEST (1994), FUNI (1995) and FIRES (1996) by Iyer and Abramovici [6],[13],[14] were based on SFT, but unlike it, were fault-independent algorithms which required very little CPU time. In 2003 Syal and Hsiao presented another fault-independent algorithm which relies on using powerful sequential implication. And finally, in 2008 a novel algorithm [16] by a group of Estonian and Japanese researches was presented that is meant to identify a large subset of untestable faults on RTL level something that hasn t been seen before.

35

36 6. CONCLUSION Over the years as the complexity of the digital systems was rapidly increasing, the reliability considerations have become particularly important. However, with the increasing complexity the number of test patterns required for adequate test coverage was increasing accordingly and the maintaining system reliability became a really challenging task. Thus the need for simpler fault detection algorithms has become more and more urgent. The main focus of this paper was to analyse the existing methods of identifying redundant and untestable faults in synchronous sequential circuits which is an important part in research aimed for test reduction and minimization. If it was possible to identify all the faults which do not affect the output, they could be ignored during testing (thus saving power and memory resources) or removed physically as redundant components (thus reducing hardware). However, in reality identification of all untestable and redundant faults isn t possible due to exponential complexity of test pattern generation process. During several decades scientists have struggled to avoid this problem proposing various algorithms for detecting the undetectable. One of the most remarkable discoveries in the area was made in 1993 by Agrawal and Chakladhar [2] and had to do with unrolling the synchronous sequential circuit in order to apply the combinational ATPG algorithms to it, successfully detecting single and multifaults. Many other methods that followed are to some extent based on this discovery. As time passes, sequential redundancy identification algorithms as well as ATPG algorithms in general become more and more efficient, consuming less and less resources, while discovering more and more faults. But as the systems complexity continues to increase, simplification of automatic test pattern generation procedures remains an open challenge, and the struggle for reliability goes on.

37

38 7. APPENDIX In this appendix a few most commonly used redundancy removal algorithms are illustrated by their pseudo-code outlines. The exact implementation depends on many different criteria. For more information please refer to the respective publications referred to as [..] in the figure captions (see Chapter 9 References ). Fig. 1 A typical redundancy removal algorithm [17] Fig. 2 Single Fault Theorem algorithm [2],[3],[4]

39 Fig. 3 Multifault Theorem algorithm [2],[3],[4] Fig. 4 FIRE algorithm [12]

40 Fig 5. FUNTEST algorithm [6] Fig 6. FUNI algorithm [13]

41 Fig 7. FIRES algorithm [14] Fig. 8 Recursive Learning algorithm [7]

42 Fig. 9 Recursive learning identifying redundant faults (Procedure 1)

43 Fig. 10 Recursive learning identifying untestable faults (Procedure 2) Fig. 11 Syal & Hsiao algorithm from 3.6 Fig. 12 Syal & Hsiao algorithm for maximizing local impossibilities from 3.6

44 Fig. 13 ATPG algorithm speedups over the years

45

46 8. GLOSSARY Fault - physical defect, imperfection, or flaw that occurs in some hardware or software component. [5] Error - deviation from correctness or accuracy in computation, which occurs as a result of a fault. Errors are usually associated with incorrect values in the system state. [5] Failure - non-performance of some action which is due or expected. A system is said to have a failure if the service it delivers to the user deviates from compliance with the system specification for a specified period of time. [5] ATPG Automatic Test Pattern Generation ATE Automatic Test Equipment UUT Unit Under Test (Operationally) redundant fault a fault that is never manifested as an output error. [10] Untestable/undetectable fault a fault which cannot be detected with some given test methodology [2] Partially detectable fault an undetectable fault for which there exists a partial test for at least one initial state of the faulty circuit. [10] Partial test a test that detects a fault only under certain initial states and fails to detect the a under other initial states [8] FIRE - a fault independent combinational redundancy algorithm. FUNTEST FIRE algorithm (see above) extended to sequential circuits GENTEST - an automatic test pattern generator for sequential circuits. DFT - design for testability BIST - build in self-test RID - redundancy identification ILA iterative logic array RTL Register-Transfer Level PSL - Property Specification Language VHDL - VHSIC Hardware Description Language VHSIC - Very High Speed Integrated Circuit FSM -Finite State Machine ISCAS - International Symposium on Circuits and Systems FPGA - field-programmable gate array

47

48 9. REFERENCES [1] M. A. Breuer, A. D. Friedman Diagnosis and reliable design of digital systems, Computer Science Press, 1976 [2] V. D. Agrawal and S. T. Chakradhar, Combinational ATPG theorems for identifying untestable faults in sequential circuits, Proc. Euro. Test Cont. pp , Apr [3] I. Pomeranz and S. M. Reddy On identifying undetectable and redundant faults in synchronous sequential circuits, in Proc. 12th IEEE VLSI Test Symp., Apr. 1994, pp [4] V. D. Agrawal and S. T. Chakradhar, "Combinational ATPG theorems for identifying untestable faults in sequential circuits," IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 14, pp , September 1995 [5] E. Dubrova Fault Tolerant Design: An Introduction, draft [6] M. A. Iyer and M. Abramovici Sequentially untestable faults identified without search, IEEE, 1994 [7] W. Cao and D. K. Pradhan Sequential redundancy identification using recursive learning, IEEE, 1996 [8] D. S. Dawoud Partially detectable faults in synchronous sequential circuits, IEEE, 1996 [9] M. Syal and M. S. Hsiao A novel low-cost algorithm for sequentially untestable fault identification, IEEE,2003 [10] I. Pomeranz and S. M. Reddy, Classification of Faults in Synchronous Sequential Circuits, IEEE, 1994 [11] P. Muth, A nine-valued circuit model for test generation, IEEE Trans. Comput., vol. C-25, pp. 63G-636, June [12] M. A. Iyer and M. Abramovici, Low-Cost Redundancy Identification for Combinational Circuits Proc. 7th. Intnl. Conf on VLSIDesign, India, pp , Jan [13] D.E. Long, M.A. Iyer and M. Abramovici, Identifying Sequentially Untestable Faults Using Illegal States, Proc. 13th. IEEE VLSI Test Symposium,pp.4-11, May [14] M.A. Iyer, D.E. Long and M. Abramovici, Identifying Sequential Redundancies Without Search, Proc. DAC 96, June 1996.

49 [15] M. Syal and M.S. Hsiao New Techniques for Untestable Fault Identification in Sequential Circuits, IEEE, 2006 [16] J. Raik, H. Fujiwara, R. Ubar, A. Krivenko Untestable Fault Identification in Sequential Circuits, IEEE, 2008 [17] M.L. Bushnell, V. D. Agrawal Essentials of electronic testing for digital, memory, and mixed-signal VLSI circuits,kluwer Academic Publishers, 2000 [18] H.-C. Liang, C. L. Lee, and E. J. Chen, Identifying untestable faults in sequential circuits, IEEE Des. Test. Comput., vol. 12, no. 3, pp , Sep [19] D. E. Long, M. A. Iyer, and M. Abramovici, "FILL and FUNI: Algorithms to identify illegal states and sequentially untestable faults", ACM Transact. Des. Automat. Electron. Syst., vol. 5, no. 3, pp , 2000.

Advanced Digital Logic Design EECS 303

Advanced Digital Logic Design EECS 303 Advanced igital Logic esign EECS 33 http://ziyang.eecs.northwestern.edu/eecs33/ Teacher: Robert ick Office: L477 Tech Email: dickrp@northwestern.edu Phone: 847 467 2298 Outline. 2. 2 Robert ick Advanced

More information

Adaptive Techniques for Improving Delay Fault Diagnosis

Adaptive Techniques for Improving Delay Fault Diagnosis Adaptive Techniques for Improving Delay Fault Diagnosis Jayabrata Ghosh-Dastidar and Nur A. Touba Computer Engineering Research Center Department of Electrical and Computer Engineering University of Texas,

More information

REDI: An Efficient Fault Oriented Procedure to Identify Redundant Faults in Combinational Logic Circuits *

REDI: An Efficient Fault Oriented Procedure to Identify Redundant Faults in Combinational Logic Circuits * REDI: An Efficient Fault Oriented Procedure to Identify Redundant Faults in Combinational Logic Circuits * Chen Wang, Irith Pomeranz and Sudhakar M. Reddy Electrical and Computer Engineering Department

More information

CHAPTER 1 INTRODUCTION

CHAPTER 1 INTRODUCTION CHAPTER 1 INTRODUCTION Rapid advances in integrated circuit technology have made it possible to fabricate digital circuits with large number of devices on a single chip. The advantages of integrated circuits

More information

High Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Testing Fault Tolerant Designs

High Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Testing Fault Tolerant Designs Vol. 3, Issue. 5, Sep - Oct. 2013 pp-2894-2900 ISSN: 2249-6645 High Speed Fault Injection Tool (FITO) Implemented With VHDL on FPGA For Testing Fault Tolerant Designs M. Reddy Sekhar Reddy, R.Sudheer Babu

More information

VLSI Test Technology and Reliability (ET4076)

VLSI Test Technology and Reliability (ET4076) VLSI Test Technology and Reliability (ET4076) Lecture 4(part 2) Testability Measurements (Chapter 6) Said Hamdioui Computer Engineering Lab Delft University of Technology 2009-2010 1 Previous lecture What

More information

Design and Synthesis for Test

Design and Synthesis for Test TDTS 80 Lecture 6 Design and Synthesis for Test Zebo Peng Embedded Systems Laboratory IDA, Linköping University Testing and its Current Practice To meet user s quality requirements. Testing aims at the

More information

Page 1. Outline. A Good Reference and a Caveat. Testing. ECE 254 / CPS 225 Fault Tolerant and Testable Computing Systems. Testing and Design for Test

Page 1. Outline. A Good Reference and a Caveat. Testing. ECE 254 / CPS 225 Fault Tolerant and Testable Computing Systems. Testing and Design for Test Page Outline ECE 254 / CPS 225 Fault Tolerant and Testable Computing Systems Testing and Design for Test Copyright 24 Daniel J. Sorin Duke University Introduction and Terminology Test Generation for Single

More information

On Test Generation by Input Cube Avoidance

On Test Generation by Input Cube Avoidance On Test Generation by Input Cube Avoidance Irith Pomeranz 1 and Sudhakar M. Reddy 2 School of Electrical & Computer Eng. Electrical & Computer Eng. Dept. Purdue University University of Iowa W. Lafayette,

More information

X(1) X. X(k) DFF PI1 FF PI2 PI3 PI1 FF PI2 PI3

X(1) X. X(k) DFF PI1 FF PI2 PI3 PI1 FF PI2 PI3 Partial Scan Design Methods Based on Internally Balanced Structure Tomoya TAKASAKI Tomoo INOUE Hideo FUJIWARA Graduate School of Information Science, Nara Institute of Science and Technology 8916-5 Takayama-cho,

More information

Chapter 9. Design for Testability

Chapter 9. Design for Testability Chapter 9 Design for Testability Testability CUT = Circuit Under Test A design property that allows: cost-effective development of tests to be applied to the CUT determining the status of the CUT (normal

More information

Origins of Stuck-Faults. Combinational Automatic Test-Pattern Generation (ATPG) Basics. Functional vs. Structural ATPG.

Origins of Stuck-Faults. Combinational Automatic Test-Pattern Generation (ATPG) Basics. Functional vs. Structural ATPG. Combinational Automatic Test-Pattern Generation (ATPG) Basics Algorithms and representations Structural vs functional test efinitions Search spaces Completeness Algebras Types of Algorithms Origins of

More information

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Lecture 40 VLSI Design Verification: An Introduction Hello. Welcome to the advance

More information

12. Use of Test Generation Algorithms and Emulation

12. Use of Test Generation Algorithms and Emulation 12. Use of Test Generation Algorithms and Emulation 1 12. Use of Test Generation Algorithms and Emulation Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin

More information

Digital VLSI Testing Prof. Santanu Chattopadhyay Department of Electronics and EC Engineering India Institute of Technology, Kharagpur.

Digital VLSI Testing Prof. Santanu Chattopadhyay Department of Electronics and EC Engineering India Institute of Technology, Kharagpur. Digital VLSI Testing Prof. Santanu Chattopadhyay Department of Electronics and EC Engineering India Institute of Technology, Kharagpur Lecture 05 DFT Next we will look into the topic design for testability,

More information

6 DESIGN FOR TESTABILITY I: FROM FULL SCAN TO PARTIAL SCAN

6 DESIGN FOR TESTABILITY I: FROM FULL SCAN TO PARTIAL SCAN 94 Advances in Microelectronics 6 DESIGN FOR TESTABILITY I: FROM FULL SCAN TO PARTIAL SCAN Chia Yee Ooi 6.1 CONTEXT It is important to check whether the manufactured circuit has physical defects or not.

More information

VLSI Test Technology and Reliability (ET4076)

VLSI Test Technology and Reliability (ET4076) VLSI Test Technology and Reliability (ET4076) Lecture 8 (1) Delay Test (Chapter 12) Said Hamdioui Computer Engineering Lab Delft University of Technology 2009-2010 1 Learning aims Define a path delay fault

More information

Sequential Circuit Test Generation Using Decision Diagram Models

Sequential Circuit Test Generation Using Decision Diagram Models Sequential Circuit Test Generation Using Decision Diagram Models Jaan Raik, Raimund Ubar Department of Computer Engineering Tallinn Technical University, Estonia Abstract A novel approach to testing sequential

More information

Redundant States in Sequential Circuits

Redundant States in Sequential Circuits Redundant States in Sequential Circuits Removal of redundant states is important because Cost: the number of memory elements is directly related to the number of states Complexity: the more states the

More information

VLSI System Testing. Fault Simulation

VLSI System Testing. Fault Simulation ECE 538 VLSI System Testing Krish Chakrabarty Fault Simulation ECE 538 Krish Chakrabarty Fault Simulation Problem and motivation Fault simulation algorithms Serial Parallel Deductive Concurrent Random

More information

On Using Machine Learning for Logic BIST

On Using Machine Learning for Logic BIST On Using Machine Learning for Logic BIST Christophe FAGOT Patrick GIRARD Christian LANDRAULT Laboratoire d Informatique de Robotique et de Microélectronique de Montpellier, UMR 5506 UNIVERSITE MONTPELLIER

More information

ACCELERATING DO-254 VERIFICATION

ACCELERATING DO-254 VERIFICATION ACCELERATING DO-254 VERIFICATION ACCELERATING DO-254 VERIFICATION INTRODUCTION Automated electronic control systems or avionics allow lighter, more efficient aircraft to operate more effectively in the

More information

Synchronization In Digital Systems

Synchronization In Digital Systems 2011 International Conference on Information and Network Technology IPCSIT vol.4 (2011) (2011) IACSIT Press, Singapore Synchronization In Digital Systems Ranjani.M. Narasimhamurthy Lecturer, Dr. Ambedkar

More information

l Some materials from various sources! Soma 1! l Apply a signal, measure output, compare l 32-bit adder test example:!

l Some materials from various sources! Soma 1! l Apply a signal, measure output, compare l 32-bit adder test example:! Acknowledgements! Introduction and Overview! Mani Soma! l Some materials from various sources! n Dr. Phil Nigh, IBM! n Principles of Testing Electronic Systems by S. Mourad and Y. Zorian! n Essentials

More information

A Controller Testability Analysis and Enhancement Technique

A Controller Testability Analysis and Enhancement Technique A Controller Testability Analysis and Enhancement Technique Xinli Gu Erik Larsson, Krzysztof Kuchinski and Zebo Peng Synopsys, Inc. Dept. of Computer and Information Science 700 E. Middlefield Road Linköping

More information

Nanometer technologies enable higher-frequency designs

Nanometer technologies enable higher-frequency designs By Ron Press & Jeff Boyer Easily Implement PLL Clock Switching for At-Speed Test By taking advantage of pattern-generation features, a simple logic design can utilize phase-locked-loop clocks for accurate

More information

Application of Binary Decision Diagram in digital circuit analysis.

Application of Binary Decision Diagram in digital circuit analysis. Application of Binary Decision Diagram in digital circuit analysis. Jyoti Kukreja University of Southern California For Dr. James Ellison Abstract: Binary Decision Diagrams (BDDs) are one of the biggest

More information

Preizkušanje elektronskih vezij

Preizkušanje elektronskih vezij Laboratorij za načrtovanje integriranih vezij Univerza v Ljubljani Fakulteta za elektrotehniko Preizkušanje elektronskih vezij Generacija testnih vzorcev Test pattern generation Overview Introduction Theoretical

More information

Functional extension of structural logic optimization techniques

Functional extension of structural logic optimization techniques Functional extension of structural logic optimization techniques J. A. Espejo, L. Entrena, E. San Millán, E. Olías Universidad Carlos III de Madrid # e-mail: { ppespejo, entrena, quique, olias}@ing.uc3m.es

More information

TSW Reliability and Fault Tolerance

TSW Reliability and Fault Tolerance TSW Reliability and Fault Tolerance Alexandre David 1.2.05 Credits: some slides by Alan Burns & Andy Wellings. Aims Understand the factors which affect the reliability of a system. Introduce how software

More information

Very Large Scale Integration (VLSI)

Very Large Scale Integration (VLSI) Very Large Scale Integration (VLSI) Lecture 10 Dr. Ahmed H. Madian Ah_madian@hotmail.com Dr. Ahmed H. Madian-VLSI 1 Content Manufacturing Defects Wafer defects Chip defects Board defects system defects

More information

A PRACTICAL GUIDE TO COMBINING ICT & BOUNDARY SCAN TESTING

A PRACTICAL GUIDE TO COMBINING ICT & BOUNDARY SCAN TESTING A PRACTICAL GUIDE TO COMBINING ICT & BOUNDARY SCAN TESTING Alan Albee GenRad, Inc. Abstract This paper focuses on the practical aspects of combining boundary scan testing with traditional In-Circuit Test.

More information

Static Compaction Techniques to Control Scan Vector Power Dissipation

Static Compaction Techniques to Control Scan Vector Power Dissipation Static Compaction Techniques to Control Scan Vector Power Dissipation Ranganathan Sankaralingam, Rama Rao Oruganti, and Nur A. Touba Computer Engineering Research Center Department of Electrical and Computer

More information

An Efficient Method for Multiple Fault Diagnosis

An Efficient Method for Multiple Fault Diagnosis An Efficient Method for Multiple Fault Diagnosis Khushboo Sheth Department of Electrical and Computer Engineering Auburn University, Auburn, AL Abstract: In this paper, failing circuits are analyzed and

More information

Testing And Testable Design of Digital Systems

Testing And Testable Design of Digital Systems بسم الله الرحمان الرحیم Testing And Testable Design of Digital Systems College of Electrical Engineering Iran University of Science and Technology Karim Mohammadi Faut-Tolerant Digital System Design week-1

More information

At-Speed Scan Test with Low Switching Activity

At-Speed Scan Test with Low Switching Activity 21 28th IEEE VLSI Test Symposium At-Speed Scan Test with Low Switching Activity Elham K. Moghaddam Department of ECE, University of Iowa, Iowa City, IA 52242 ekhayatm@engineering.uiowa.edu Janusz Rajski

More information

A New Optimal State Assignment Technique for Partial Scan Designs

A New Optimal State Assignment Technique for Partial Scan Designs A New Optimal State Assignment Technique for Partial Scan Designs Sungju Park, Saeyang Yang and Sangwook Cho The state assignment for a finite state machine greatly affects the delay, area, and testabilities

More information

COMP12111 Fundamentals of Computer Engineering Paul Nutter Vasilis Pavlidis Comments

COMP12111 Fundamentals of Computer Engineering Paul Nutter Vasilis Pavlidis Comments Fundamentals of Computer Engineering Paul Nutter Vasilis Pavlidis Comments Please see the attached report. 12 February 2016 Page 2 of 7 Exam Feedback 2015/16 Q1 set by Paul Nutter Q2 set by Vasilis Pavlidis

More information

THE EXHAUSTIVE TESTING OF FPGA LOGIC CELLS. E. BAREISA KTU, Studentu , Kaunas, Lithuania

THE EXHAUSTIVE TESTING OF FPGA LOGIC CELLS. E. BAREISA KTU, Studentu , Kaunas, Lithuania THE EXHAUSTIVE TESTING OF FPGA LOGIC CELLS E. BAREISA KTU, Studentu 50-406, Kaunas, Lithuania eduardas.bareisa@ktu.lt V. JUSAS KTU, Studentu 50-404, Kaunas, Lithuania vacius.jusas@ktu.lt K. MOTIEJUNAS

More information

Evaluation of FPGA Resources for Built-In Self-Test of Programmable Logic Blocks

Evaluation of FPGA Resources for Built-In Self-Test of Programmable Logic Blocks Evaluation of FPGA Resources for Built-In Self-Test of Programmable Logic Blocks Charles Stroud, Ping Chen, Srinivasa Konala, Dept. of Electrical Engineering University of Kentucky and Miron Abramovici

More information

(Refer Slide Time: 1:43)

(Refer Slide Time: 1:43) (Refer Slide Time: 1:43) Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras Lecture - 27 Pattern Detector So, we talked about Moore

More information

VLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27,

VLSI Testing. Virendra Singh. Bangalore E0 286: Test & Verification of SoC Design Lecture - 7. Jan 27, VLSI Testing Fault Simulation Virendra Singh Indian Institute t of Science Bangalore virendra@computer.org E 286: Test & Verification of SoC Design Lecture - 7 Jan 27, 2 E-286@SERC Fault Simulation Jan

More information

Circuit Partitioning for Application-Dependent FPGA Testing

Circuit Partitioning for Application-Dependent FPGA Testing Circuit Partitioning for Application-Dependent FPGA Testing by Rui Zhen Feng B.Eng, Hefei University of Technology, 1996 A Thesis Submitted in Partial Fulfillment of the Requirements for the Degree of

More information

N-Model Tests for VLSI Circuits

N-Model Tests for VLSI Circuits 40th Southeastern Symposium on System Theory University of New Orleans New Orleans, LA, USA, March 16-18, 2008 MC3.6 N-Model Tests for VLSI Circuits Nitin Yogi and Vishwani D. Agrawal Auburn University,

More information

Fault Simulation. Problem and Motivation

Fault Simulation. Problem and Motivation Fault Simulation Problem and Motivation Fault Simulation Problem: Given A circuit A sequence of test vectors A fault model Determine Fault coverage Fraction (or percentage) of modeled faults detected by

More information

Test Set Compaction Algorithms for Combinational Circuits

Test Set Compaction Algorithms for Combinational Circuits Proceedings of the International Conference on Computer-Aided Design, November 1998 Set Compaction Algorithms for Combinational Circuits Ilker Hamzaoglu and Janak H. Patel Center for Reliable & High-Performance

More information

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

More information

Upper Bounding Fault Coverage by Structural Analysis and Signal Monitoring

Upper Bounding Fault Coverage by Structural Analysis and Signal Monitoring Upper Bounding Fault Coverage by Structural Analysis and Signal Monitoring Abstract A new algorithm for determining stuck faults in combinational circuits that cannot be detected by a given input sequence

More information

Type T1: force false. Type T2: force true. Type T3: complement. Type T4: load

Type T1: force false. Type T2: force true. Type T3: complement. Type T4: load Testability Insertion in Behavioral Descriptions Frank F. Hsu Elizabeth M. Rudnick Janak H. Patel Center for Reliable & High-Performance Computing University of Illinois, Urbana, IL Abstract A new synthesis-for-testability

More information

TIMING-INDEPENDENT TESTING OF CROSSTALK IN THE PRESENCE OF DELAY PRODUCING DEFECTS USING SURROGATE FAULT MODELS *

TIMING-INDEPENDENT TESTING OF CROSSTALK IN THE PRESENCE OF DELAY PRODUCING DEFECTS USING SURROGATE FAULT MODELS * TIMING-INDEPENDENT TESTING OF CROSSTALK IN THE PRESENCE OF DELAY PRODUCING DEFECTS USING SURROGATE FAULT MODELS * Shahdad Irajpour Sandeep K. Gupta Melvin A. Breuer Department of EE Systems, University

More information

Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes

Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes Efficient Majority Logic Fault Detector/Corrector Using Euclidean Geometry Low Density Parity Check (EG-LDPC) Codes 1 U.Rahila Begum, 2 V. Padmajothi 1 PG Student, 2 Assistant Professor 1 Department Of

More information

High-level Variable Selection for Partial-Scan Implementation

High-level Variable Selection for Partial-Scan Implementation High-level Variable Selection for Partial-Scan Implementation FrankF.Hsu JanakH.Patel Center for Reliable & High-Performance Computing University of Illinois, Urbana, IL Abstract In this paper, we propose

More information

Design for Test Methodology Case Study for Motorola C-5e DCP Using the Cadence Incisive Accelerator/Emulator

Design for Test Methodology Case Study for Motorola C-5e DCP Using the Cadence Incisive Accelerator/Emulator Design for Test Methodology Case Study for Motorola C-5e DCP Using the Cadence Incisive Accelerator/Emulator Justin Hernandez SA837/CORP/GSG ZAS37/justin.hernandez@motorola.com Philip Giangarra RU433/SPS/NCSG

More information

Delay Test with Embedded Test Pattern Generator *

Delay Test with Embedded Test Pattern Generator * JOURNAL OF INFORMATION SCIENCE AND ENGINEERING 29, 545-556 (2013) Delay Test with Embedded Test Pattern Generator * Department of Computer Science National Chung Hsing University Taichung, 402 Taiwan A

More information

Accurate Logic Simulation by Overcoming the Unknown Value Propagation Problem

Accurate Logic Simulation by Overcoming the Unknown Value Propagation Problem Accurate Logic Simulation by Overcoming the Unknown Value Propagation Problem Sungho Kang Yonsei University Seoul, Korea shkang@yonsei.ac.kr Stephen A. Szygenda Southern Methodist University Dallas, Texas

More information

l Some materials from various sources! n Current course textbook! Soma 1! Soma 3!

l Some materials from various sources! n Current course textbook! Soma 1! Soma 3! Ackwledgements! Test generation algorithms! Mani Soma! l Some materials from various sources! n r. Phil Nigh, IBM! n Principles of Testing Electronic Systems by S. Mourad & Y. Zorian! n Essentials of Electronic

More information

Faults. Abstract. 1. Introduction. * Nur A. Touba is now with the Department of Electrical and Computer Engineering, University of Texas, Austin, TX

Faults. Abstract. 1. Introduction. * Nur A. Touba is now with the Department of Electrical and Computer Engineering, University of Texas, Austin, TX s Abstract While previous research has focused on deterministic testing of bridging faults, this paper studies pseudo-random testing of bridging faults and describes a means for achieving high fault coverage

More information

VLSI Testing. Fault Simulation. Virendra Singh. Indian Institute of Science Bangalore

VLSI Testing. Fault Simulation. Virendra Singh. Indian Institute of Science Bangalore VLSI Testing Fault Simulation Virendra Singh Indian Institute of Science Bangalore virendra@computer.org E0 286: Test & Verification of SoC Design Lecture - 4 Jan 25, 2008 E0-286@SERC 1 Fault Model - Summary

More information

Metodologie di progetto HW Il test di circuiti digitali

Metodologie di progetto HW Il test di circuiti digitali Metodologie di progetto HW Il test di circuiti digitali Introduzione Versione del 9/4/8 Metodologie di progetto HW Il test di circuiti digitali Introduction VLSI Realization Process Customer s need Determine

More information

At-Speed On-Chip Diagnosis of Board-Level Interconnect Faults

At-Speed On-Chip Diagnosis of Board-Level Interconnect Faults At-Speed On-Chip Diagnosis of Board-Level Interconnect Faults Artur Jutman Tallinn University of Technology artur@pld.ttu.ee Abstract This article describes a novel approach to fault diagnosis suitable

More information

(Refer Slide Time 3:31)

(Refer Slide Time 3:31) Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology Madras Lecture - 5 Logic Simplification In the last lecture we talked about logic functions

More information

CMOS Testing: Part 1. Outline

CMOS Testing: Part 1. Outline CMOS Testing: Part 1 Introduction Fault models Stuck-line (single and multiple) Bridging Stuck-open Test pattern generation Combinational circuit test generation Sequential circuit test generation ECE

More information

Testing Digital Systems I

Testing Digital Systems I Testing Digital Systems I Lecture 6: Fault Simulation Instructor: M. Tahoori Copyright 2, M. Tahoori TDS I: Lecture 6 Definition Fault Simulator A program that models a design with fault present Inputs:

More information

MULTI-NODE STATIC LOGIC IMPLICATIONS FOR REDUNDANCY IDENTIFICATION

MULTI-NODE STATIC LOGIC IMPLICATIONS FOR REDUNDANCY IDENTIFICATION MULTI-NODE STTI LOGI IMPLITIONS FOR REDUNDNY IDENTIFITION Kabir Gulrajani and Michael S. Hsiao Intel orporation, Dupont, W Department of Electrical and omputer Engineering, Rutgers University, Piscataway,

More information

VLSI Test Technology and Reliability (ET4076)

VLSI Test Technology and Reliability (ET4076) VLSI Test Technology and Reliability (ET476) Lecture 5 Combinational Circuit Test Generation (Chapter 7) Said Hamdioui Computer Engineering Lab elft University of Technology 29-2 Learning aims of today

More information

EE6301 DIGITAL LOGIC CIRCUITS UNIT IV ASYNCHRONOUS SEQUENTIAL CIRCUITSAND PROGRAMMABLE LOGIC DEVICES PART A

EE6301 DIGITAL LOGIC CIRCUITS UNIT IV ASYNCHRONOUS SEQUENTIAL CIRCUITSAND PROGRAMMABLE LOGIC DEVICES PART A EE6301 DIGITAL LOGIC CIRCUITS UNIT IV ASYNCHRONOUS SEQUENTIAL CIRCUITSAND PROGRAMMABLE LOGIC DEVICES PART A 1. What is deadlock condition? [N/D 14] A condition resulting when one task is waiting to access

More information

CPE 628 Chapter 4 Test Generation. Dr. Rhonda Kay Gaede UAH. CPE Introduction Conceptual View. UAH Chapter 4

CPE 628 Chapter 4 Test Generation. Dr. Rhonda Kay Gaede UAH. CPE Introduction Conceptual View. UAH Chapter 4 Chapter 4 Test Generation Dr. Rhonda Kay Gaede UAH 1 4.1 Introduction Conceptual View Generate an input vector that can the - circuit from the one Page 2 1 4.1 Introduction Simple Illustration Consider

More information

Testing Digital Systems I

Testing Digital Systems I Testing Digital Systems I Lecture 1: Introduction Instructor: M. Tahoori Copyright 2011, M. Tahoori TDS I: Lecture 1 1 Today s Lecture Logistics Course Outline Introduction Copyright 2011, M. Tahoori TDS

More information

An Efficient Test Relaxation Technique for Synchronous Sequential Circuits

An Efficient Test Relaxation Technique for Synchronous Sequential Circuits An Efficient Test Relaxation Technique for Synchronous Sequential Circuits Aiman El-Maleh and Khaled Al-Utaibi King Fahd University of Petroleum and Minerals Dhahran 326, Saudi Arabia emails:{aimane, alutaibi}@ccse.kfupm.edu.sa

More information

On Efficient Error Diagnosis of Digital Circuits

On Efficient Error Diagnosis of Digital Circuits On Efficient Error Diagnosis of Digital Circuits Nandini Sridhar Michael S. Hsiao Intel Corporation Bradley Dept. of ECE, Virginia Tech Dupont, WA 98327Blacksburg, VA 246 nandini.sridhar@intel.com mhsiao@vt.edu

More information

Implementing Synchronous Counter using Data Mining Techniques

Implementing Synchronous Counter using Data Mining Techniques Implementing Synchronous Counter using Data Mining Techniques Sangeetha S Assistant Professor,Department of Computer Science and Engineering, B.N.M Institute of Technology, Bangalore, Karnataka, India

More information

Fault Tolerant Computing CS 530 Testing Sequential Circuits

Fault Tolerant Computing CS 530 Testing Sequential Circuits CS 530 Testing Sequential Circuits Yashwant K. Malaiya Colorado State University 1 Why Testing Sequential Circuits is Hard To test a sequential circuit we need to Initialize it into a known state (reset

More information

FPGA Implementation of ALU Based Address Generation for Memory

FPGA Implementation of ALU Based Address Generation for Memory International Journal of Emerging Engineering Research and Technology Volume 2, Issue 8, November 2014, PP 76-83 ISSN 2349-4395 (Print) & ISSN 2349-4409 (Online) FPGA Implementation of ALU Based Address

More information

Two HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design

Two HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design Two HDLs used today Introduction to Structured VLSI Design VHDL I VHDL and Verilog Syntax and ``appearance'' of the two languages are very different Capabilities and scopes are quite similar Both are industrial

More information

Metodologie di progetto HW Il test di circuiti digitali

Metodologie di progetto HW Il test di circuiti digitali Metodologie di progetto HW Il test di circuiti digitali Introduzione Versione del 9/4/8 Metodologie di progetto HW Il test di circuiti digitali Introduction Pag. 2 VLSI Realization Process Customer s need

More information

Distributed Consensus Protocols

Distributed Consensus Protocols Distributed Consensus Protocols ABSTRACT In this paper, I compare Paxos, the most popular and influential of distributed consensus protocols, and Raft, a fairly new protocol that is considered to be a

More information

SEE Tolerant Self-Calibrating Simple Fractional-N PLL

SEE Tolerant Self-Calibrating Simple Fractional-N PLL SEE Tolerant Self-Calibrating Simple Fractional-N PLL Robert L. Shuler, Avionic Systems Division, NASA Johnson Space Center, Houston, TX 77058 Li Chen, Department of Electrical Engineering, University

More information

FishTail: The Formal Generation, Verification and Management of Golden Timing Constraints

FishTail: The Formal Generation, Verification and Management of Golden Timing Constraints FishTail: The Formal Generation, Verification and Management of Golden Timing Constraints Chip design is not getting any easier. With increased gate counts, higher clock speeds, smaller chip sizes and

More information

RTL Scan Design for Skewed-Load At-Speed Test under Power Constraints

RTL Scan Design for Skewed-Load At-Speed Test under Power Constraints RTL Scan Design for Skewed-Load At-Speed Test under Power Constraints Ho Fai Ko and Nicola Nicolici Department of Electrical and Computer Engineering McMaster University, Hamilton, ON, L8S 4K1, Canada

More information

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I

ECE 587 Hardware/Software Co-Design Lecture 11 Verification I ECE 587 Hardware/Software Co-Design Spring 2018 1/23 ECE 587 Hardware/Software Co-Design Lecture 11 Verification I Professor Jia Wang Department of Electrical and Computer Engineering Illinois Institute

More information

Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG

Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG Driving Toward Higher I DDQ Test Quality for Sequential Circuits: A Generalized Fault Model and Its ATPG Hisashi Kondo Kwang-Ting Cheng y Kawasaki Steel Corp., LSI Division Electrical and Computer Engineering

More information

VLSI Test Technology and Reliability (ET4076)

VLSI Test Technology and Reliability (ET4076) VLSI Test Technology and Reliability (ET4076) Lecture 2 (p2) Fault Modeling (Chapter 4) Said Hamdioui Computer Engineering Lab Delft University of Technology 2009-2010 1 Previous lecture What are the different

More information

Functional Fault Equivalence and Diagnostic Test Generation in Combinational Logic Circuits Using Conventional ATPG

Functional Fault Equivalence and Diagnostic Test Generation in Combinational Logic Circuits Using Conventional ATPG Functional Fault Equivalence and Diagnostic Test Generation in Combinational Logic Circuits Using Conventional ATPG Andreas Veneris, Robert Chang Magdy. Abadir ep eyedi Abstract Fault equivalence is an

More information

Sequential Circuit Testing 3

Sequential Circuit Testing 3 Sequential Circuit Testing 3 Recap: Approaches State table analysis Machine identification (checking sequence) method Time-frame expansion Misc. Issues Controlling and observing internal states of a sequential

More information

Efficient Algorithm for Test Vector Decompression Using an Embedded Processor

Efficient Algorithm for Test Vector Decompression Using an Embedded Processor Efficient Algorithm for Test Vector Decompression Using an Embedded Processor Kamran Saleem and Nur A. Touba Computer Engineering Research Center Department of Electrical and Computer Engineering University

More information

Defect Tolerance in VLSI Circuits

Defect Tolerance in VLSI Circuits Defect Tolerance in VLSI Circuits Prof. Naga Kandasamy We will consider the following redundancy techniques to tolerate defects in VLSI circuits. Duplication with complementary logic (physical redundancy).

More information

MODEL FOR DELAY FAULTS BASED UPON PATHS

MODEL FOR DELAY FAULTS BASED UPON PATHS MODEL FOR DELAY FAULTS BASED UPON PATHS Gordon L. Smith International Business Machines Corporation Dept. F60, Bldg. 706-2, P. 0. Box 39 Poughkeepsie, NY 12602 (914) 435-7988 Abstract Delay testing of

More information

Exploiting Off-Line Hierarchical Test Paths in Module Diagnosis and On-Line Test

Exploiting Off-Line Hierarchical Test Paths in Module Diagnosis and On-Line Test Exploiting Off-Line Hierarchical Paths in Diagnosis and On-Line lu Reliable Systems Synthesis Lab Computer Science & Engineering Department University of California San Diego 9500 Gilman Drive MC-0114

More information

Efficiently Utilizing ATE Vector Repeat for Compression by Scan Vector Decomposition

Efficiently Utilizing ATE Vector Repeat for Compression by Scan Vector Decomposition Efficiently Utilizing ATE Vector Repeat for Compression by Scan Vector Decomposition Jinkyu Lee and Nur A. Touba Computer Engineering Research Center University of Teas, Austin, TX 7872 {jlee2, touba}@ece.uteas.edu

More information

Functional Test Generation for Delay Faults in Combinational Circuits

Functional Test Generation for Delay Faults in Combinational Circuits Functional Test Generation for Delay Faults in Combinational Circuits Irith Pomeranz and Sudhakar M. Reddy + Electrical and Computer Engineering Department University of Iowa Iowa City, IA 52242 Abstract

More information

Overview ECE 753: FAULT-TOLERANT COMPUTING 1/21/2014. Recap. Fault Modeling. Fault Modeling (contd.) Fault Modeling (contd.)

Overview ECE 753: FAULT-TOLERANT COMPUTING 1/21/2014. Recap. Fault Modeling. Fault Modeling (contd.) Fault Modeling (contd.) ECE 753: FAULT-TOLERANT COMPUTING Kewal K.Saluja Department of Electrical and Computer Engineering Fault Modeling Lectures Set 2 Overview Fault Modeling References Fault models at different levels (HW)

More information

structure syntax different levels of abstraction

structure syntax different levels of abstraction This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

Race Catcher. Automatically Pinpoints Concurrency Defects in Multi-threaded JVM Applications with 0% False Positives.

Race Catcher. Automatically Pinpoints Concurrency Defects in Multi-threaded JVM Applications with 0% False Positives. Race Catcher US and International Patents Issued and Pending. Automatically Pinpoints Concurrency Defects in Multi-threaded JVM Applications with 0% False Positives. Whitepaper Introducing Race Catcher

More information

Testability Optimizations for A Time Multiplexed CPLD Implemented on Structured ASIC Technology

Testability Optimizations for A Time Multiplexed CPLD Implemented on Structured ASIC Technology ROMANIAN JOURNAL OF INFORMATION SCIENCE AND TECHNOLOGY Volume 14, Number 4, 2011, 392 398 Testability Optimizations for A Time Multiplexed CPLD Implemented on Structured ASIC Technology Traian TULBURE

More information

BIST is the technique of designing additional hardware and software. features into integrated circuits to allow them to perform self testing, i.e.

BIST is the technique of designing additional hardware and software. features into integrated circuits to allow them to perform self testing, i.e. CHAPTER 6 FINITE STATE MACHINE BASED BUILT IN SELF TEST AND DIAGNOSIS 5.1 Introduction BIST is the technique of designing additional hardware and software features into integrated circuits to allow them

More information

CS 147: Computer Systems Performance Analysis

CS 147: Computer Systems Performance Analysis CS 147: Computer Systems Performance Analysis Test Loads CS 147: Computer Systems Performance Analysis Test Loads 1 / 33 Overview Overview Overview 2 / 33 Test Load Design Test Load Design Test Load Design

More information

PROOFS Fault Simulation Algorithm

PROOFS Fault Simulation Algorithm PROOFS Fault Simulation Algorithm Pratap S.Prasad Dept. of Electrical and Computer Engineering Auburn University, Auburn, AL prasaps@auburn.edu Term Paper for ELEC 7250 (Spring 2005) Abstract This paper

More information

ATPG for Faults Analysis in VLSI Circuits Using Immune Genetic Algorithm

ATPG for Faults Analysis in VLSI Circuits Using Immune Genetic Algorithm ATPG for Faults Analysis in VLSI Circuits Using Immune Genetic Algorithm P.K.Chakrabarty 1, S.N.Patnaik 2 1Professor, Department of CSE., IT,BHU, India 2Asst.Professor, ECE Department, DRIEMS, Cuttack,

More information

Algorithm for Determining Most Qualified Nodes for Improvement in Testability

Algorithm for Determining Most Qualified Nodes for Improvement in Testability ISSN:2229-6093 Algorithm for Determining Most Qualified Nodes for Improvement in Testability Rupali Aher, Sejal Badgujar, Swarada Deodhar and P.V. Sriniwas Shastry, Department of Electronics and Telecommunication,

More information