Essentials of electronic testing solutions manual




















ABC def gY h k Z front. Implied signal values D X No. Explanation: An X-path is a path from the fault site to a PO, such that the signals on it are either faulty states D or D or undetermined. Having no X-path is a reason for backup because its existence is a necessary condition for the detection of the fault.

As a result, the fault h s-a-1 cannot be activated and, hence, it is redundant. Three backtracks. Step 2. Goal: propagate D from r to Z. Headlines are m and l. Head objectives: not used. See Problem 7. The head- lines are m and l. No applications of Modus Tollens or constructive dilemma. Forward implications D X goal stack frontier path 1 Fault act. The signal velues are those determined by the steps described below. Hence, the fault is proved redundant in two steps without any backtracks.

In this case there are no headlines. No need for dynamic learning, no use of the constructive dilemma or Modus Tollens. Constructive Dilemma and Modus Tollens are not useful. Step 1: Goal — sensitize fault. D-frontier — g. Step 2: Goal — propagate fault. Fault proved redundant because D-frontier disappears at q — no alternative assignments possible.

D-frontier — p. Start with redundant fault d s-a Set fault site to the faulty state and find all implications. Thus, OR gate g is removed and k and m become fanouts of PI b. The reduced circuit is shown on the left in the following figure.

Circuit after removing m sa0 fault. Examine the reduced circuit for another redundant fault. We find that m s-a-0, which was testable in the original circuit, is now redundant. Repeat steps B and C until all faults in the reduced circuit are testable. It is possible to remove several redundant faults to- gether, provided they are selected such that the circuit function is preserved.

Removal of a single redundant fault leaves the circuit function unchanged. Implications — none. D-frontier — empty. Objective cannot be met with these inputs. Objective cannot be met with this input. Backtrack — Implication stack — empty. No other input choices left, test is impossible, fault is redundant. D-frontier — Z. The next figure shows the result of this step. Propagation blocked, no alternative choices, fault found to be redundant with 0 backtracks. Dynamic learning, Constructive Dilemma and Modus Tollens not used.

The following figure shows step 2. We identify k as a headline. D-frontier — n. Step 2: Objective — propagate any fault effect from l to n. Step 3: Objective — sensitize fault. Step 6: Objective — sensitize fault. Step 7: Objective — propagate fault to k. Step 8: Objective — propagate fault to k. Step 9: Objective — sensitize fault. Fault is redundant 4 backtracks.

Static learning indicates that f can never be 0. Redundant fault, found with 0 backtracks. D-frontier — null. D-frontier — null; since D-frontier vanishes, backtrack.

D-frontier — null; fault not sensitized, backtrack. Step 5: Objective — sensitize fault. D-frontier — null; fault not sensitized, no choices left, fault is redundant, found with 3 backtracks.

X-path check indicates no D-frontier. No alternative decisions possible. Re- dundant fault, found with no backtracks. We assume ideal logic signals that change at times 0, 1, 2, etc. Neither the state of the master latch nor that of the slave latch is affected by the change in D.

To be stored correctly in the flip-flop, the data input D should change earlier than the rising edge of CK by an interval known as the setup time.

Also, the data should remain unchanged beyond the rising edge of CK for a duration known as the hold time. Hold time is the delay of the clock control gates OR gates in the flip-flop of Figure 8.

It is the interval that the clock takes to isolate the storing gates two NAND gates of the master latch from the data input. In the above case, data and clock changed simultaneously and the flip-flop recorded the wrong old data. We illustrate a peculiar behavior of the latch when data and clock changes occur close to each other. As shown in the next figure, suppose the N OT gate has a delay of two units and all other gates have one unit of delay.

Suppose CK rises one unit after the fall of D. The two equal delay NAND gates now oscillate between 00 and 11 states. Any unbalance in the delays of the NAND gates will stabilize the state of the latch to either 01 or 10 state.

Such delay-dependent behavior is commonly known as the race condition or metastability. In our example, a race is possible if the separation between the clock and data transitions is less than the delay of NOT gate. In general, a race condition or metastability is avoided if the setup and hold time restrictions are satisfied.

If the initial state is unknown, i. Given this state, detection of any output fault at the output reduces to a combinational ATPG problem of setting the output to the opposite value. Thus, just two vectors, an initialization vector 11 followed by an appropriate vector to set the output, will detect the output fault in the circuit of Figure 8. Thus, the circuit must be first initialized. Any input fault in the circuit of Figure 8. If the fault is s-a-1 type, then vector 11 is used to initialize the circuits both good and faulty to 1.

If the fault is s-a-0 type, then vector 00 initializes the circuits to 0. Vcetor 2 Fault activation and path sensitization. For a s-a-1 fault, the cir- cuit has been initialized to a 1 state. For a s-a-0 fault, the circuit is initialized to a 0 state. An input vector 11 now activates the fault and also propagates its effect to S n. Thus, only two vectors are needed to test any input fault. Fault activation. Assuming the present state to be unknown, we set the next state to 1.

Path sensitization. For the next vector, the above next state becomes the present state and the fault Cn s-a-0 is sensitized. DD is not possible due to the state input being X in the time- frame Thus, the faulty circuit cannot be initialized to any known state, including the 1 needed for the test.

Hence, it is impossible to find a test by the 5-valued algebra. Notice that the fault is detected although the faulty circuit is never initialized.

After the application of the input vector, the flip-flop is clocked before the output can be observed. Even if we add more vectors to the test sequence, the faulty circuit output will not become deterministic. This is because the faulty circuit is not initializable. The fault is only potentially detectable. Test simulation with initial state 0. Note: Some test generators will find the potential detection test of the above type.

Others will consider the fault untestable conservative approach. Most fault simulators will find the fault potentially detectable. Interestingly, the two test simu- lation scenarios in the figure show that the fault is definitely detectable, though the detection requires multiple observations.

However, this c Solution Manual V1. A con- ventional fault simulator will not report such detection because it does not enumerate the possible initial state scenarios. For such multiple observation tests see reference [] of the book. Besides simulation, a multiple observation test can also be derived by the following procedure. An observable state variable, which cannot be initialized in the faulty circuit but must be observed for fault detection, is represented symbolically by a Boolean variable s.

Inversion of s is s. When the feedback in the circuit of Figure 8. This is a multiple observation test. Details on multiple observation tests may be found in reference [] cited in the book. Notice that the output measures for a flip-flops are obtained by just adding 1 to the input measures.

This is due to assumptions that the clock has controllabilities 1,1 and the combinational depth of a flip-flop is 0. Drivabilities of all other signals are successively computed by simple path sensitization. The path shown in bold lines is the least drivability minimum effort path. A test obtained by a drivability-based ATPG procedure is shown in the lower fig- ure. Bold lines show easiest drivability path. Dotted lines show an additional path sensitized. In order to apply the required approximation, we assume no fault during justification.

We find that the test fails to detect the fault. This is due to the fault being present in the previous time-frame. A valid test is generated by time-frame expansion when the fault is assumed to be present in all time-frames as we did for simulation in the above figure.

The new c Solution Manual V1. In the last time-frame A is changed to 0. Since the fault is combinationally untestable it is impossible to satisfy these condi- tions even though the state inputs are assumed to be fully controllable.

Thus, no vector sequence can be generated to test the fault in the sequential circuit. A time- frame consists of combinational logic with some fault activity fault activation and path sensitization. There are two types of time-frames, ones in which the fault is activated, and others where the fault is not activated. Let us consider the time-frame in which the fault is activated for the first time. To be a part of the test sequence, this time-frame must propagate the fault effect either to a PO or to a state variable.

In the first detection time-frame a combinational test detects the fault at its boundary PO or state output when a suitable test vector at PI and state inputs is applied.

All preceding time-frames then only generate fault-free states leading to a state input that is necessary for the first detection time-frame. If the combinational test cannot be justified then the first detection time-frame will be impossible and no sequential test can be obtained for the targeted fault.

A more detailed discussion of this result may be found in the reference [30] cited in the book. We assume that the initial states of all three flip-flops are X.

Our proof is based on a series of observations: Observation 1: A clocked flip-flop is equivalent to a delay that equals the clock period, T. Observation 2: The output of a combinational circuit with arbitrary delays is uniquely determined by the input vector provided a output is allowed to stabilize through a time interval, which equals the longest input to output combinational path delay after the input is applied, and b the input is held constant throughout that time interval.

Observation 3: A combinational circuit with a single stuck-at fault and many other non-feedback types of faults is also a combinational circuit. Observations 1 and 2 specify that the basic difference between an acyclic se- quential circuit and its pseudo-combinational circuit is the delay. The delay of the latter equals that of the longest combinational path in that circuit. Note that T is greater than the longest combinational path delay.

The given test vector produces two different outputs from the good and faulty pseudo-combinational circuits. If the conditions of Observation 1 are satisfied, then the good and faulty acyclic sequential circuits will produce outputs that will differ in a similar way.

Initializability is often considered in a narrower and practical sense to mean that the finite-length sequence, when simulated by a three-valued logic simulator, will set all flip-flops in deterministic 0 or 1 states. The required proof follows from contradiction. We begin with an assertion that an uninitializable circuit is cycle-free. Then its s-graph is a directed acyclic graph DAG , which can be levelized according to the maximum distance from PIs. Levels of flip-flop vertices must be contiguous integers from 1 to dseq , the sequential depth.

All flip-flops in level 1 are controlled by PIs and can be set to some may not be every known states by one input vector followed by a clock. Similarly, all flip-flops in level 2 are controlled by PIs and the flip-flops of level 1 which are now in known states and these can be set to known states by a second input vector followed by another clock.

Following this procedure, by the time dseq input vectors have been applied, each followed by a clock, all flip-flops will be in known states. Since, dseq for a DAG is a finite integer, the circuit is initialized by a finite length input sequence.

This contradicts our assertion. Hence, the circuit cannot be cycle-free and must be cyclic. The levels shown give the minimum distance from PIs. The depths of the two circuits are 1 and 2, respectively.

This depth gives a lower bound on the length of a test sequence for a fault. In practice, however, a test sequence is almost always longer than this lower bound. The maximum distance levelization and the corresponding depth is a more realistic measure of the test length for a cycle-free circuit.

For cyclic circuits no tight measure of test length exists. For an upper bound of 9Nf f on the test length, where Nf f is the number of flip-flops in the circuit, see Section 8. Cyclic circuit of Figure 8. We assume that the two NOR gates have equal delays and simulate their outputs independently, with the feedback inputs in the unknown X state. This is illustrated in time-frame 1 in the following figure.

The outputs of NOR gates are applied after the feedback delays in time-frame 2. Time-frames 3 through 5 show that in the good circuit the Q output stabilizes to state 0 and the output of the other NOR gate stabilizes to 1. In the faulty circuit, the outputs of the two NOR gates oscillate as 11, 00, 11,.

This oscillation in the idealized logic model is a manifestation of a metastable behavior. The output Q may settle to a 1 or to a 0 state depending upon the relative delays of the two NOR gates. In the absence of more detailed knowledge of circuit parameters delays, etc. Strictly speaking, the logic model does not have the information to find tests for such faults, which are often classified as race faults.

When dealing with the analog behavior of the circuit, this condition is referred to as metastability. For some set of gate delays the circuit will settle in the correct state and the fault would be considered redundant. For other delays the c Solution Manual V1. The following figure shows test generation using nine-value logic. This means that the fault-free circuit will produce a constant 1 output, while the faulty circuit output will fluctuate between 1 and 0.

The period of fluctuation will equal the combined delay of the path including the four gates. Solution of Problem 8. The function and its two gate combinational feedback-free implementation are shown in the figure.

The procedure is illustrated in the following table where the selected vectors are shown in boldface. Unit Hamm. The initialization sequence for the circuit of Figure 8. The procedure is illustrated in the following table where the selected vector is shown in boldface. Simulation-based initialization of circuit of Figure 8. This procedure cannot initialize the circuit in Figure 8. These are the only pos- sible trial vectors. Thus, the initial cost of 2 will never be reduced.

An arbitrary X 0 0 0 X 0 Phase I completed. Vector 00 accepted. Unit Hamming 0 0 1 0 1 No cost reduction by any trial vector; 8 distance vectors vector 10 arbitrarily selected. The selected vectors are shown in boxes in the table.

The signal values, dynamic controllabilities, DC0 and DC1, and propagation cost P C are shown in the following circuit diagram.

P C is always 0 for the PO Sn. We use a weighting factor of 1, that multiplies AC. Step 4: Now, 10 becomes the current vector. Further, cell i will be the coupled cell victim cell and cell j will be coupling cell aggressor cell.

States of the memory as desired by the excitation conditions: The state is 0, 0 at the end of march steps M0, M2 and M4. The state is 1, 1 at the end of march steps M1 and M3.

The state 0, 1 occurs during the march steps M2 and M3. The state 0, 1 occurs during the march steps M1 and M4.

Solution provided by K. Saluja 9. Proof by counterexample: Any NPSF test initializes the base cell, then writes the test pattern to the deleted neighborhood cells, and finally reads the base cell to check for a fault.

The two neighborhood definitions are shown below: For the c Solution Manual V1. For the type 2 neighborhood, let cell a be cell 0 and cell b be the base cell 4. This either removes the fault effect at cell b or prevents sensitization of the fault, since cell a cannot be written. Since cell a is a 1, the read is apt to produce the good machine value. This either writes the good machine value to the base cell or prevents fault sensitization because cell a cannot be written.

This completes the proof. Notice that if the chip powers up with CS set to 1, the fault is not active. Conclusions: 1. Otherwise, the first time we select the chip, it works, but it remains perma- nently selected. This will appear to be an address decoder fault. Write a 0 to location x through the DRAM port. If both BU SY lines are 1, then the chip is faulty. If only one line is 1, then the chip is good. If it is 1 bit per location, an LFSR compresses the response. It need not test very many cells.

It is done separately from functional test because it needs a short test sequence to keep the test cheap. Also, it needs a flying-probe tester, since the chip is not packaged. That is another reason why probe test is done separately. The contact test forces a current out of a pin and then precisely measures the pin voltage, which may be negative.

It requires an analog tester with a parametric measurement unit PMU , whereas the functional tests only require a digital tester. That is why the contact test is not combined with functional test.

Proof: I. That completes the proof. The base cell can go to 0, 1, or invert. Necessary condition: For all cells that are coupled, each should be read after series of possible CFins may have occurred, and the number of coupled cell transitions must be odd. Necessary condition: For each cell, a 0 and a 1 must be read.

S-a-0 fault is detected by M 2 when a 0 is read from the cell, while a 1 was expected. S-a-1 fault is detected by M 1 when a 1 is read from the cell, while a 0 was expected. Necessary condition: After initializing the coupled cell, a read write of the coupling cell must be followed by a read of the coupled cell, without any intervening operations on the coupled cell.

For a write, i initialized by M1, j written by M2, i checked by M2 fault detected. For a read, c Solution Manual V1. For a write, i initialized by M3, j written by M4, i checked by M4 fault detected. For a read, i initialized by M3, j read by M4, i checked by M4 fault detected. For a write, i initialized by M4, j written by M4, i checked by M5 fault detected.

For a read, i initialized by M0, j read by M1, i checked by M1 fault detected. For a write, i initialized by M2, j written by M2 i checked by M3 fault detected. For a read, i initialized by M2, j read by M3, i checked by M3 fault detected. For a write, i initialized by M1, j written by M1, i checked by M2 fault detected.

For a read, i initialized by M1, j read by M2, i checked by M2 fault detected. For a write, i initialized by M3, j written by M3 i checked by M4 fault detected.

For a read, i initialized by M4, j read by M4, i checked by M4 fault detected. For a write, i initialized by M0, j written by M1, i checked by M1 fault detected. For a write, i initialized by M2, j written by M3 i checked by M3 fault detected. For a read, i initialized by M2, j read by M2, i checked by M3 fault detected.

Necessary condition: Each cell must have a 0 1 written to it, and after a suitable delay e. The fault models are discussed next.

If we are writing 0 into this cell, no error occurs. Otherwise, no error occurs. Then cases 2 i and 2 ii are a SA0 fault in the crosspoint cell. This makes all cells in the row having the faulty cell active. If drivers other than those of the faulty column are also activated which is usually true with a word-oriented SRAM , then any write of a 0 into any part of the affected column also activates a write into the faulty row, at least for the rest of the bits in this memory word.

This fails for the type-2 neighborhood, bacause the test patterns for cell 4 as the base cell do not provide all necessary test patterns when diagonal cells 0, 2, 6 or 8 are considered to be the base cell. It is caused by a fault in the sense amplifier that causes it to saturate its transistors after the first write. The immediately following read or write will fail if the data value is the opposite of the data value for the first write. This happens because the fault prevents the sense amplifier transistors from leaving saturation and applying the opposite data value.

That completes the proof of the second part. The test need not be the optimal one. We get only eight unique samples and as the Samples Amplitude Time figure shows every ninth sample repeats.

This is a totally inadequate sample set. So we get unique samples. In both cases, we get unique samples. However, the negative of this definition may also be considered to be correct. We add 2 samples on either side for virtual codes. We add 4 samples on either side for virtual codes. In a real converter, each of these will deviate in different ways from the quantum voltage. The FFT of the circuit response the analog output is taken and the magnitudes in the bins of the harmonics are measured, along with the magnitude in the bin of the fundamental.

We usually only need to test for the location of the dominant and secondary poles, and for any zeroes that cancel poles which should also be tested. These considerations will simplify the testing of multiple parametric feedback faults.

R controls bias current. KM C1 dominant pole location. This can be verified either by an ATPG program or by manually simulating all four input vectors. The circuit has six paths. The following figure illustrates path counting. Each PI or gate is assigned a label that gives the number of paths from all PIs. Labels of PIs are 1. The label of a gate is the sum of labels of its fanins. The label of the output gate gives the total number of paths.

Eight tests and the singly-testable nonrobustly testable path-delay faults PDFs detected by them are listed in the following table. We note that the non-robust de- tection of a PDF requires an input transition and a statically sensitized path by the second vector of the two-vector test. Elimination of untestable PDFs: This part may be expected only from a stu- dent of an advanced course.

The procedure in the next figure illustrates the KMS algorithm, which results in a fully testable circuit. See reference [] of the book. For details of this procedure one may refer to Chapter 7. The resulting circuit is shown below. For each path, all off-path inputs can be directly controlled from PIs. Now, applying a rising or a falling transition at C will robustly test the path for the corresponding transition.

A similar argument applies to the other two paths. Note: This is a fanout-free circuit. It has exactly one path between each PI-PO pair. Each path has two single input change SIC test vector pairs that are robust tests for the path.

A general output waveform is shown in the figure. Each path to the output can potentially produce a transition, whose time of occurrence depends on the delay of the path. To be discriminated with the correct or expected output value, this must be different from the initial value. Notice that the other slow transitions can make the test to show a failure even when the target path is not faulty.

But they can never make the test to pass when the target path is faulty. In general, a robust test only guarantees detection and not diagnosis. The circuit of Figure Thus, no robust test is possible for any path in this circuit. For non-robustly testing an input to output path, the sequence should satisfy two conditions: 1.

Static sensitization — the second vector V 2 must sensitize the entire path. Transition at the origin — the two vectors must produce a signal transition at the origin of the path. Note: If the circuit is free from fanouts, then the input change in V 1 can only affect the signals on the path. As a result, all off-path signals will remain steady S0 or S1 during both vectors and the path will remain sensitized.

This is an over specification of the conditions required for a robust test. Thus, for a fanout free circuit, there exists a robust path-delay test for every path that is statically sensitizable. Also see Problem The output rises after three units of time and will have an incorrect value of 0 at 2. Any one or both can be faulty.

A diagnosis is not possible with this test. The given input is a non-robust test and, by definition, is only guaranteed to work if the target path is the only faulty path.

Thus, a robust test is impossible. There are two paths from input A to output Z. Tests for an inverting path. Thus, the off-path input of an XOR circuit should be set to a steady value. If it is set to S0, then the output transition will be of the same type as the on-path input. If the off-path input is set to S1, then the output transition will be an inversion of the on-path input.

In general, one might assume that the inverting path would have greater delay three gates vs. When the pretransition state of A is the controlling value for the Boolean gate then B, C, etc. Using these two conditions, off-path signal values can be obtained for propagating the delay test signal through A. For example, consider an AND gate. A rising transition at A will require all off-path signals to be U 1. A falling transition at A will require all off-path signals to be S1.

We add two vertices, a vertex named source from which arcs are directed to all PI vertices, and a sink vertex to which arcs are directed from all PO vertices. Each vertex v is given a label, N v , whose value denotes the number of paths from source to v. The path counting algorithm is as follows: 1. Initialization: Set all labels to 0.

Count: Update each vertex only after all of its fanin vertices have been up- dated. Complexity: Since each vertex is processed once, there are n updates, where n is the number of vertices in the graph. Each update requires adding the labels of the fanin vertices. An upper bound on fanin is n. In general, however, the fanin of a gate does not grow with the number of gates, and the complexity remains closer to O n.

Thus, all PI labels are 1. The output label of ith cell is shown as Ni. Path counting proceeds from left to right. The label of a node is determined as the sum of the fanin node labels.

The values of inputs a, b and c are set in such a way that any change at the path destination g must be preceded by a change at the path origin d. A transition is applied at the path origin d. In this case, however, g is the next state for the input d. So any change in d must be preceded by a change in g. Therefore, as long as a, b and c satisfy the robust test condition, a transition in d awaits a transition in g, which awaits a transition in d. Hence, no robust test is possible for this path.

Note: This result can be generalized — a path is rubustly untestable if it has an even number of inversions and its destination feeds back into the origin through a single clocked flip-flop. Such a path need not be a false path and can often be tested by a non-robust test. Now the state of c will remain 1 irrespective of the signal value at A. We need to make 0. Then, transistors 2.

The number of BIC sensors for a partitioned ground bus is given by, 0. Thus, the fault is potentially detected. Since no input can initialize the circuit, P S always remains X and the fault can only be potentially detected.

All other faults are untestable. A possible design change is shown in the top right diagram. We add an ini- tialization input clr. As shown in the lower right di- agram, a test for the given s-a-1 fault is obtained in three time-frames. This is the required state for testing the fault. Use of an ATPG program on the toggle circuit with the initialization input will show that all faults are deterministically detectable with the exception of one fault. That fault, clr s-a-1, is potentially detectable.

A requirement of a static design is that incoming signals should not be connected to transistor channels. Design b uses CMOS transmission gates. Static inverters in signals A and B provide isolation between the two input signals.

The output inverter cancels the inversion. In that multiplexer, which will require only six transistors, a path between the inputs A and B can be created momentarily if there is a time delay between the signals C and C. Such a path can sometimes upset the states of the flip-flops that supply A and B signals. The design c uses only complementary CMOS gates.

Both designs b and c require 12 transitors. These corrections are included in second printing of Input pins will not require any additional MUXes as the MUXes added at the first flip-flop of each scan chain can be used to multiplex the corresponding input also.

Saluja Gate Overhead: All scanin inputs are obtained as fanouts of normal PIs. A multi- plexer is inserted between each PO and its normal output signal. The other data input of the multiplexer is a scanout and control is the test control TC PI.

A multiplexer is assumed to have 4 gates. Only one multiplexer is added for the scanout. As shown in the state dia- gram, the states are encoded as , , , and The clock signal applied to the three D flip-flops is not shown. FF FF Circuit. The combinational circuit shown in the grey box is made completely single-fault testable by removing redundant faults that were identified by an ATPG program.

The five untestable faults were all s-a-1 type and are shown in the figure. Among these the s-a-1 fault on the CLR signal was potentially detected by the test set. The number of vectors obtained may vary depending on the ATPG program used. All of these faults were detected by 16 vectors. A complete scan sequence consists of 74 vectors see Equation The scan circuit contains a collapsed set of 79 faults. Fault simulation of the vector sequence showed that 78 faults were detected. The undetected s-a-1 fault is marked on the circuit diagram.

It is at the output of the test control T C inverter in the first multiplexer. The reason this fault is not detected is that it was never targeted. Since the scan register test holds T C to 0 for a continuous scan mode, this fault was not activated. The fault is, however, activated every time the circuit is set in the normal mode during the application of the scan sequence.

That prevented the propagation of the fault effect. The fault effect is now propagated to the flip-flop and can be scanned out. We notice that similar faults in the other two multiplexers were detected by our scan sequence. This is due to the chance occurrence of normal data as 0 and scan c Solution Manual V1. F1 F2 s-graph for the circuit of Figure By scanning F1 all cycles can be eliminated.

Added circuitry is shown in grey and wiring, in bold lines. We insert a multiplexer at the input of F1. One input of this mul- tiplexer is the normal input of F1. The control input of the multiplexer is a new PI, T C.

This is accomplished by using the grey-shaded AND gate. This circuit is shown in the next figure. These vectors were converted into scan sequences see Chapter 14 of the book.

Thus, a set of 28 vectors was produced, which also includes 5 vectors for testing the scan register. The following table shows the test sequence. When the partial-scan circuit was simulated in the sequential mode, these 28 vectors detected all faults, except one fault that was potentially detected.

That fault was a s-a-1 fault in the M U X circuit and is shown in the next figure. This happened because we left the input R in the unknown state X during the scan mode.

See Chapter 8 of the book. The detection of such faults is not guaranteed since they are not targeted by the ATPG. This is a typical situation for scan design. Test sequence for partial-scan design of circuit of Figure Since there are no self-loops in the original s-graph, this partial scan circuit has no cycles. We will prove the optimality of this design by showing that no flip-flop in this c Solution Manual V1.

Suppose we were to drop one flip-flop from scan. Because the s-graph is fully connected, the two non-scan flip-flops will form a cycle of length two.

By a similar argument, no flip-flop can be dropped from scan without creating a cycle. Thus, the single non-scan flip-flop design is optimal. A simple heuristic may select a vertex that is likely to be on the largest number of cycles.

Deletion of such a vertex removes all those cycles. It has been observed3 that a vertex with the highest product of indegree and outdegree offers a good choice. Once such a vertex and all its edges are deleted, the remaining s-graph may have one or more smaller SCCs. So, for the calculation of the area overhead the non-scan flip-flop cells can be treated like combinational cells. In Equation We get the required area overhead simply upon replacing s by ps.

Thus, the formula of Equation Bhawmik, C. Lin, K. Cheng and V. Since there are 10 output pins, we select a bit word size. To have the capability of 1, flip-flops, we require a word memory. One input pin will be used for the test control T C signal.

The remaining 19 input pins will be reconfigured as 10 pins for input data, 7 pins for address, and one pin each for SEL and ACK signals shown in Figure The 10 output pins will be multiplexed under the control of T C to the bit memory output data. N k The denominator is the number of ways in which k tests for the fault can possibly be distributed among N vectors.

Wagner, C. Chin, and E. C, no. Vector No. Input a, b, c, d Output f 1. Notice that none of the 41 , 18 or 16 1 bits are helpful here. Its period is 4. Using this polynomial we design the following maximal length 7 three-bit LFSR. The next figure gives an augmented LFSR and the patterns it produces.

This definitely uses less hardware than a counter, which needs more complex gates. It gets comparatively simpler as the counter width increases. A counter and its patterns are shown below. The error vector is set to 1 on an output when it differs from a good machine. Here are the other error vectors: c Solution Manual V1. This is why aliasing does not occur. The logic to detect this signature can be implemented by a NAND gate as evident from the following equation.

Saluja and M. Bushnell c Solution Manual V1. A logic design was synthesized using the Synopsys design compiler, which produced a netlist for simulation. The signature was obtained by simulation. The working -- hardware is obtained from the Synopsys system. The final signature after 12 functional clock periods each of which requires 3 more shifting clock periods is: X11,.

Little DFT hardware is needed inside the circuit, except for the full-scan chains. This is a test-per-scan system. So, it is quite slow, and test time is long and costly. It was necessary to use 2 control pins, test and shift, for test mode, because in test mode, we still wanted to ignore the circuit inputs in the leftmost scan chain, whereas in the other scan chains, we wanted to capture the circuit responses in the scan chain.

A bit MISR was used to reduce aliasing. There is no initialization hardware on this flip-flop, so it comes up in a random state. The variation in signatures happens because sometimes the flip-flop initializes as 0, and sometimes as 1. The following circuit produces all patterns including , which appears immediately after the initialization pattern, The pattern sequence is shown after the circuit diagram.

We conclude that the inverse LFSR does not exist, so we must synthesize it as a finite state machine. The following circuit is based on a design synthesized by Synopsys. Let us assume a 6-bit instruction register. So, all boundary registers of all chips must be active throughout interconnect test. Also, correct board input signals must be applied to the board inputs during the interconnect test. Sequence of JTAG commands: 1.

Click here to register now. Register Log in. JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.

You are using an out of date browser. It may not display this or other websites correctly. You should upgrade or use an alternative browser. Essentials of Electronic Testing for Digital solution manual. Thread starter oneeyeeddie Start date Oct 5, Status Not open for further replies. Bushnell, and Vishwani D. Zaib Newbie level 6. Please share the link for this solution. We are also in need of this one. Download ElectronicTest.

Similar threads N. Analog Circuit Design. Part and Inventory Search. Welcome to EDABoard. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.



0コメント

  • 1000 / 1000