Built-In Self-Test. Outline

Size: px
Start display at page:

Download "Built-In Self-Test. Outline"

Transcription

1 Built-In Self-Test Outline Motivation for BIST Testing SoC with BIST Test per Scan and Test per Clock HW and SW based BIST Exhaustive and pseudoexhaustive test generation Pseudorandom test generation with LFSR Hybrid BIST Response compaction methods Signature analyzers

2 Testing Challenges: SoC Test Cores have to be tested on chip Source: Elcoteq Source: Intel

3 Self-Test in Complex Digital Systems Source SoC Test Access Mechanism SRAM CPU MPEG Peripheral Component Interconnect Wrapper Core Under Test UDL SRAM ROM DRAM Test Access Mechanism Sink Test architecture components: Test pattern source & sink Test Access Mechanism Core test wrapper Solutions: Off-chip solution need for external ATE Combined solution mostly on-chip, ATE needed for control On-chip solution BIST

4 Self-Test in Complex Digital Systems SoC SRAM CPUSource MPEG Peripheral Component Interconnect Wrapper Core Under Test UDL Sink SRAM ROM DRAM Test architecture components: Test pattern source & sink Test Access Mechanism Core test wrapper Solutions: Off-chip solution need for external ATE Combined solution mostly on-chip, ATE needed for control On-chip solution BIST

5 What is BIST On circuit Test pattern generation Response verification Random pattern generation, very long tests Response compression IC BIST Control Unit Test Pattern Generation (TPG) Circuitry Under Test CUT Test Response Analysis (TRA)

6 SoC BIST Optimization: Embedded Tester Test Controller Core BIST Test access mechanism - testing time Core 2 - memory cost - power consumption BIST - hardware cost - test quality Tester Memory BIST BIST BIST Core 3 Core 4 Core 5 System on Chip

7 Built-In Self-Test Motivations for BIST: Need for a cost-efficient testing (general motivation) Doubts about the stuck-at fault model Increasing difficulties with TPG (Test Pattern Generation) Growing volume of test pattern data Cost of ATE (Automatic Test Equipment) Test application time Gap between tester and UUT (Unit Under Test) speeds Drawbacks of BIST: Additional pins and silicon area needed Decreased reliability due to increased silicon area Performance impact due to additional circuitry Additional design time and cost

8 BIST in Maintenance and Repair Useful for field test and diagnosis (less expensive than a local automatic test equipment) To overcome the disadvantages of software tests for field test and diagnosis (nonbist): Low hardware fault coverage Low diagnostic resolution Slow to operate Hardware BIST benefits: Lower system test effort Improved system maintenance and repair Improved component repair Better diagnosis Possibility to use the functionality of microprocessors

9 BIST techniques are classified: BIST Techniques on-line BIST - includes concurrent and nonconcurrent techniques off-line BIST - includes functional and structural approaches On-line BIST - testing occurs during normal functional operation Concurrent on-line BIST - testing occurs simultaneously with normal operation mode, usually coding techniques or duplication and comparison are used Nonconcurrent on-line BIST - testing is carried out while a system is in an idle state, often by executing diagnostic software or firmware routines Off-line BIST - system is not in its normal working mode, usually on-chip test generators and output response analyzers or microdiagnostic routines Functional off-line BIST is based on a functional description of the Component Under Test (CUT) and uses functional high-level fault models Structural off-line BIST is based on the structure of the CUT and uses structural fault models (e.g. SAF)

10 General Architecture of BIST BIST Control Unit Test Pattern Generation (TPG) Circuitry Under Test CUT Test Response Analysis (TRA) BIST components: Test pattern generator (TPG) Test response analyzer (TRA) TPG & TRA are usually implemented as linear feedback shift registers (LFSR) Two widespread schemes: test-per-scan test-per-clock

11 Detailed BIST Architecture Source: VLSI Test: Bushnell-Agrawal

12 BIST: Test Generation Methods Universal test sets. Exhaustive test (trivial test) 2. Pseudo-exhaustive test Properties of exhaustive tests. Advantages (concerning the stuck at fault model): - test pattern generation is not needed - fault simulation is not needed - no need for a fault model - redundancy problem is eliminated - single and multiple stuck-at fault coverage is 00% - easily generated on-line by hardware 2. Shortcomings: - long test length (2 n patterns are needed, n - is the number of inputs) - CMOS stuck-open fault problem

13 Exhaustive and Pseudo-Exhaustive Testing Exhaustive combinational fault model: - exhaustive test patterns - pseudoexhaustive test patterns - exhaustive output line oriented test patterns - exhaustive module oriented test patterns

14 BIST: Pseudoexhaustive Testing Pseudo-exhaustive test sets: Output function verification maximal parallel testability partial parallel testability Module function verification Module Under Test Primitive polynomials Output function verification 4 4 F F & 2 6 = Exhaustive test >> 4x6 = 64 Pseudoexhaustive sequential > 6 Pseudoexhaustive parallel Subcircuits for internal signal propagation

15 Testing ripple-carry adder Output function verification (maximum parallelity) Exhaustive test generation for n-bit adder: Good news: Bit number n - arbitrary Test length - always 8 (!) Bad news: The method is correct only for ripple-carry adder c 0 a 0 b 0 c a b c 2 a 2 b 2 c bit testing -bit testing 2-bit testing 3-bit testing etc

16 Pseudo-Exhaustive Test for Multiplier Multiplier array a 3 a 2 a a 0 + & + & + & b 0 = 0 + & + & + & b = c 4 + & c 3 + & c 2 + & b 2 = Multiplication with traditional paper and pencil method + s 5 & + s 4 & + s 3 & s 2 s = a 0 s 0 = 0 b 3 = 0

17 Pseudo-Exhaustive Test for Multiplier Replication of columns with pseudo-exhaustive patterns for Multiplier Adder No carry multiplier array 4-bit 3-bit 2-bit -bit 0-bit a 4 b 4 c 4 a 3 b 3 c 3 a 2 b 2 c 2 a b c a 0 b N 6-bit 5-bit 4-bit 3-bit 2-bit -bit 0-bit c 6 a 7 a 6 c 5 a 6 a 5 c 4 a 5 a 4 c 3 a 4 a 3 c 2 a 3 a 2 c a 2 a a a

18 Exhaustively Self-Testing Multiplier BIST Built-in Self-Test Multiplicand operands: Shifted Multiplier operands: Generated with FSM and replicated 5-bit patterns Test length: (n-)

19 Pseudoexhaustive Test Optimization Simple iterative algorithm: Output function verification (partial parallelism) F F 3 F F F 5 x x 2 x 3 x 4 F (x, x 2 ) F 2 (x, x 3 ) F 3 (x 2, x 3 ) F 4 (x 2, x 4 ) F 5 (x, x 4 ) F 6 (x 3, x 4 ) Exhaustive testing - 6 Pseudo-exhaustive, full parallel 4 (not possible) Pseudo-exhaustive, partially parallel - 6

20 Combined Pseudo-Exhaustive-Random Testing Pseudo- Random Test PE4 PE2 PE3 K K2 K3 K4 Segmented LFSR Combined PE-PR Test Circuit with 4 cones A set of Partial Pseudo-Exhaustive tests can be combined with () Pseudorandom BIST or (2) Stored Deterministic test set

21 Problems with Exhaustive Testing Problem: Sequential fault class - Transistor Level Stuck-off Faults NOR gate test: x V DD Stuck-off (open) x V DD x x 2 y y d Y x 2 x 2 Y Y x x 2 x x 2 V SS V SS No conducting path from V DD to V SS for Test sequence is needed: 00,0

22 Problems with Exhaustive Testing Problem: Sequential fault class - Bridging Fault Sequentiality A short will change the circuit into sequential one, and you will need because of that 2 4 = 6 input patterns Instead of 2 3 = 8 Y = F(x, x 2, x 3 ) Bridging fault State q y 0 x x 2 x 3 & & Y = F(x, x 2, x 3,q)

23 Built-In Self-Test Test pattern generator BIST Control Test response analysator Test per Scan: Scan Path Scan Path... Scan Path CUT Initial test set: T: 00 T2: 00 T3: 00 T4: 00 Assumes existing scan architecture Drawback: Long test application time Test application: 00 T 00 T 00T 00 T Number of clocks = (4 x 4) + 4 = 20

24 Built-In Self-Test Test per Clock: Combinational Circuit Under Test Initial test set: T: 00 T2: 00 T3: 00 T4: 00 Assume, this is the full test sequence needed Test application: Scan-Path Register T T 4 T 3 T 2 Number of clocks = 8 < 20

25 Pattern Generation Store in ROM too expensive Exhaustive too long Pseudo-exhaustive preferred Pseudo-random (LFSR) preferred Binary counters use more hardware than LFSR Modified counters Test pattern augmentation ( Hybrid BIST) LFSR combined with a few patterns in ROM LFSR with bit flipping LFSR with bit fixing

26 LFSR Based Testing: Some Definitions Exhaustive testing Apply all possible 2 n patterns to a circuit with n inputs Pseudo-exhaustive testing Break circuit into small, overlapping blocks and test each exhaustively Pseudo-random testing Algorithmic pattern generator that produces a subset of all possible tests with most of the properties of randomly-generated patterns LFSR Linear feedback shift register, hardware that generates pseudo-random pattern sequence BILBO Built-in logic block observer, extra hardware added to flip-flops so they can be reconfigured as an LFSR pattern generator or response compacter, a scan chain, or as flip-flops

27 Pattern Generation Pseudorandom test generation by LFSR: Xo X... ho h hn... LFSR CUT LFSR Xn Using special LFSR registers Test pattern generator Signature analyzer Several proposals: BILBO CSTP Main characteristics of LFSR: polynomial initial state test length

28 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Standard LFSR x x 2 x 3 x 4 Modular LFSR x x 2 x 3 x 4 Polynomial: P(x) = x 4 + x 3 +

29 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Why modular LFSR is useful for BIST? x x 2 x 3 x 4 UUT Test responses Test patterns Polynomial: P(x) = x 4 + x 3 +

30 Problems with BIST: Hard to Test Faults The main motivations of using random patterns are: - low generation cost - high initial efeciency Problem: Low fault coverage Pseudorandom Patterns from LFSR: test window: 2 n - Fault Coverage Hard to test faults Start (seed) Finish Dream solution: Find LFSR such that: 2 n - Time Hard to test faults

31 Pseudorandom Test Generation Scan-based BIST Bit-flipping BIST H.-J. Wunderlich, G. Kiefer. Bit flipping BIST. Proc. ICCAD, Nov. 996, pp

32 Pseudorandom Test Generation Bit-fixing BIST N.A. Touba, E.J. McCluskey. Bit-fixing in pseudorandom sequences for scan BIST. IEEE Trans. on CAD of IC and Systems, Vol.20, No.4, Apr.200.

33 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Why modular LFSR is useful for BIST? x x 2 x 3 x 4 UUT Test responses Test patterns Polynomial: P(x) = x 4 + x 3 +

34 BILBO BIST Architecture Working modes: B B2 0 0 Normal mode 0 Reset 0 Test mode Scan mode Testing modes: CC: LFSR - TPG LFSR 2 - SA CC2: LFSR 2 - TPG LFSR - SA B B2 B B2 LFSR CC LFSR 2 CC2

35 BILBO BIST Architecture Working modes: B B2 0 0 Normal mode 0 Reset 0 Test mode Scan mode Testing modes: CC, CC2 Tested in parallel: B B2 B B2 LFSR CC LFSR 2 LFSR LFSR 2 TPG, SA CC2

36 Reconfiguration of the LFSR Unit Under Test LFSR FEEDBACK MUX Normal & Reset From & & T i- T i Test & OR T i+ Scan & To T i+2 Signature analyzer mode B B MUX 4 working modes

37 Pseudorandom Test Generation - LFSR Shift x x 2 x 3 x 4 Two approaches to LFSR simulation: Polynomial: P(x) = x 4 + x 3 + t x x 2 x 3 x 4 t x x 2 x 3 x 4 Matrix calculation: X 4 (t + ) X 3 (t + ) X 2 (t + ) X (t + ) = h h h 0 0 X 4 (t) X 3 (t) X 2 (t) X (t) = Feedback X 3 X 2 X X 4 X

38 Matrix Equation for Standard LFSR X n (t + ) X n- (t + ). X 3 (t + ) X 2 (t + ) X (t + ) = h n h n h h X n (t) X n- (t). X 3 (t) X 2 (t) X (t) X (t + ) = T s X (t) (T s is companion matrix) x x 2 x n- x n

39 Theory of LFSR: Primitive Polynomials Properties of Polynomials: Irreducible polynomial cannot be factored, is divisible only by itself Any polynomial with all even exponents can be factored and hence is reducible Irreducible polynomial of degree n is characterized by: An odd number of terms including term Divisibility into x k +, where k = 2 n An irreducible polynomial of degree n is primitive if it divides the polynomial x k + for k = 2 n, but not for any smaller positive integer k x 3 x x 7 + 2

40 Theory of LFSR: Examples Polynomials of degree n=3 (examples): k = 2 n = 2 3 =7 Primitive polynomials: x x 3 3 x 2 x The polynomials will divide evenly the polynomial x 7 + but not any one of k<7, hence, they are primitive They are also reciprocal: coefficients are 0 and 0 Reducible polynomials (non-primitive): Primitive polynomial x x 3 3 x 2 ( x )( x x 2 x ) ( x )( x 2 )

41 Theory of LFSR: Examples Is x 4 x 2 a primitive polynomial? Irreducible polynomial of degree n is characterized by: x 4 - An odd number of terms including term? Yes, it includes 3 terms - Divisibility into + x k, where k = 2 n x No, there is remainder 2 is non-primitive? x 4 Divisibility check: x 2 x x x x x x x x x x x 9 x x x x x x x x x x x x 3

42 Theory of LFSR: Examples Simulation of the behaviour of LFSR by polynomial: Primitive polynomials x 3 x x x 2 x 3

43 Theory of LFSR: Examples Comparison of test sequences generated: Primitive polynomials Non-primitive polynomials x x x x x x x x

44 Theory of LFSR: Examples Non-primitive polynomial x 4 + x 2 + Primitive polynomial x 4 + x + x x 2 x 3 x 4 x x 2 x 3 x

45 Theory of LFSR: Examples Primitive polynomial x 4 + x + x x 2 x 3 x 4 Zero generation: x x 2 x 3 x The code 0000 is missing

46 Pseudorandom Testing with LFSR Primitive polynomial x 4 + x + For testing the fault x 2 the test patterns 000, 00 and 00 can be used x x 2 x 3 x (-) - (0) 0 x x 2 x 3 x 4 x 2 x 22 0 & & a b y

47 Pseudorandom Testing with LFSR Non-primitive polynomial x 4 + x 2 + For testing the fault x 2 the test patterns 000, 00 and 00 can be used x x 2 x 3 x x x 2 x 3 x (-) (0) Be careful: no proper patterns can be generated using the seed 00 x x 2 x 3 x 4 x 2 x & & a b y

48 Theory of LFSR: Primitive Polynomials Number of primitive polynomials of degree N N No Table of primitive polynomials up to degree 3 N Primitive Polynomials,2,3,4,6,7,5,22 + X + X n 5,, 2, 29 + X 2 + X n 0,7,20,25,28,3 + X 3 + X n 9 + X 4 + X n 23 + X 5 + X n 8 + X 7 + X n 8 + X 2 + X 3 + X 4 + X n 2 + X + X 3 + X 4 + X n 3 + X + X 4 + X 6 + X n 4, 6 + X + X 3 + X 4 + X n

49 Theory of LFSR: Primitive Polynomials Examples of PP (exponents of terms): n other n other x 3 + x + x 3 + x 4 + x 3 + x +

50 BIST: Fault Coverage Pseudorandom Test generation by LFSR: Motivation of using LFSR: - low generation cost - high initial efeciency BIST Control Unit Test Pattern Generation (TPG) Circuitry Under Test CUT Fault Coverage Test Response Analysis (TRA) Drawback: 00% fault coverage is difficult to achieve Time

51 BIST: Fault Coverage Pseudorandom Test generation by LFSR: Motivation of using LFSR: Fault Coverage - low generation cost - high initial efeciency Reasons of the high initial efficiency: A circuit may implement n 2 2 functions A test vector partitions the functions into 2 equal sized equivalence classes (correct circuit in one of them) The second vector partitions into 4 classes etc. After m patterns the fraction of functions distinguished from the correct function is 2 m n 2 i 2 2 n i, n m 2 Time

52 ... Raimund Ubar Fault Coverage: Functional View Why we need 2 64 patterns 2 64 Fault coverage 00% Number of patterns 2 m n 2 i 2 2 n n m 2 i Test quality:, First pattern 00% 0% 93,75% Second pattern 87,5% 75% 50%

53 BIST: Fault Coverage # all functions Explanation of the formula of fault coverage: ) General case: 2 m n 2 i 2 2 n i 2) Example: n = 2, m =, i = : 2 i, n m n number of inputs, m number of test patterns, i share of each pattern # tested functions % will be reached only after 2 n test patterns Faulty functions covered by. pattern 00% 0% 50% 4. pat. 87,5% 3. pattern Faulty functions covered by 2. pattern 93,75% 75%

54 BIST: Structural Approach to Test Deterministic test approach: Testing of structural faults: 2 n Combinational circuit under test Not tested faults 3. patttern 4. pat. 2. pattern Faults covered by. pattern 00% Fault coverage Number of patterns 4

55 BIST: Two Approaches to Test Testing of functions: 00% 0% 93,75% 4. pat. 87,5% Deterministic test approach: Testing of faults: Not tested faults 3. patttern 4. pat. 2. pattern 00% will be reached only after 2 n test patterns Faulty functions covered by. pattern 50% 3. pattern Faulty functions covered by 2. pattern 75% Testing of faults 00% Testing of functions Faults covered by. pattern 00% will be reached when all faults from the fault list are covered

56 Problems with BIST: Hard to Test Faults The main motivations of using random patterns are: - low generation cost - high initial efeciency Problem: Low fault coverage Pseudorandom Patterns from LFSR: test window: 2 n - Hard to test faults Fault Coverage Dream solution: Find LFSR such that: 2 n - Time Hard to test faults

57 Deterministic Scan-Path Test Test per Clock: Combinational Circuit Under Test Initial test set: T: 00 T2: 00 T3: 00 T4: 00 Test application: Scan-Path Register T T 4 T 3 T 2 Number of clocks = 8 < 20

58 Deterministic Synthesis of LFSR Generation of the polynomial and seed for the given test sequence ) Given test sequence: () 00x0 (2) x00 (3) 00 (4) 0 2) Creation of the shortest bit-stream: Seed States of the LFSR This deterministic test set is generated by ATPG However, only patterns which detects the hard-totest faults can be chosen 3) Expected shortest LFSR sequence: 0 (4) (3) 0 00 (2) () Shift LFSR

59 Deterministic Synthesis of LFSR Generation of the polynomial and seed for the given test sequence System of linear equations: a k x b k x 2 c k x 3 d k x 4 e k x 5 =f k Expected shortest LFSR sequence: 0 (4) (3) 0 00 (2) () Currrent state of the LFSR k=,2 6 j=,2,,,5 f k a k b k c k d k e k k x x x 2 x 3 x 4 x 5 : x x 2 x 3 x 4 x5 x x 2 x 3 x 4 x 5 = We are looking for the values of x i x j j f k k Next input signal into LFSR

60 Deterministic Synthesis of LFSR Generation of the polynomial and seed for the given test sequence System of linear equations: x x x 2 x 3 x 4 x 5 = Solving the equation by Gaussian elimination with swapping of rows Rows:,2,4,6 4,6,3 2,4,3,6 a k x b k x 2 c k x 3 d k x 4 e k x 5 = f k, k=,2,..,6 Results: x x x 2 x 3 x 4 x 5 = f k f 2 f 3 k=2 (4) 00 0 (6) 000 (4 6) 0000 k=3 () 0 (3) 00 ( 3) ) Solution: x x 2 x 3 x 4 x

61 Deterministic Synthesis of LFSR Embedding deterministic test patterns into LFSR sequence: 4) Solution: x x 2 x 3 x 4 x LFSR sequence: 5) Polynomial: x 5 + x + Seed: 0 x x x 2 x 3 x 4 x 5 Given deterministic test sequence: () 00x0 (2) x00 (3) 00 (4) 0 x5 () 0 (4) (2) 0 (3) 00 (4) 00 (3) (5) 000 (2) (6) 000 (7) 000 ()

62 Which Test Patterns to Select for as HTF? Frequences of fault detection For deterministic LFSR based BIST, only the patterns which detects HTFs can be chosen for the synthesis process Fault detection frequences for the given random test sequence Different faults Easily detectable faults Hard-to-test faults (HTF)

63 Other Problems with Pseudorandom Test The main motivations of using random patterns are: - low generation cost - high initial efeciency Problem: low fault coverage & LFSR Decoder S 0 A = S S 5 Counter A = 0 Fault Coverage Reset If Reset = signal has probability 0,5 then counter will not work and for AND gate may never be produced S 2 B = 0 B = S 3 S 4 Time

64 Sequential BIST A DFT technique of BIST for sequential circuits is proposed The approach proposed is based on all-branches coverage metrics which is known to be more powerful than all-statement coverage S 0 S 0 S 0 A = S S 5 A = S S 5 A = S S 5 A = 0 S 2 B = 0 B = A = 0 S 2 B = 0 B = A = 0 S 2 B = 0 B = S 3 S 4 S 3 S 4 S 3 S 4

65 Sequential BIST reset clock test/normal mode (TM) primary inputs masked status bits Digital System primary outputs FSM control signals Datapath observation points status signals MUX Status signals entering the control part are made controllable In the test mode we can force the UUT to traverse all the branches in the FSM state transition graph The proposed idea of architecture requires small device area overhead since a simple controller can be implemented to manipulate the control signals

66 Example for Sequential BIST Control Part y y 2 y 3 y 4 R IN M M 2 b a + * c d M 3 e R 2 Data Part

67 BIST: Different Techniques Pseudorandom Test generation by LFSR: Full identification is achieved only after 2 n input combinations have been tried out (exhaustive test) 2 m n 2 n 2 i n m 2 2 A better fault model (stuck-at-0/) may limit the number of partitions necessary, Pseudorandom testing of sequential circuits: The following rules suggested: clock-signals should not be random control signals such as reset, should be activated with low probability data signals are chosen randomly Microprocessor testing A test generator picks randomly an instruction and generates random data patterns By repeating this sequence a specified number of times it will produce a test program which will test the microprocessor by randomly exercising its logic

68 BIST: Weighted pseudorandom test Calculation of signal probabilities: LFSR PI PI 2 PI 3 PI 4 PI 5 PI & For PI : P = 0.5 For PI 2 and PI 3 : P = 0.6 For PI 4 - PI 6 : P = 0.4 G Probability of detecting the fault at the input 3 of the gate G: ) equal probabilities (p = 0.5): P = 0.5 ( ) = = = = ) weighted probabilities: P = 0.85 ( ) = = = = 0.6

69 BIST: Weighted pseudorandom test Hardware implementation of weight generator LFSR & & & /6 /8 /4 /2 Weight select MUX Desired weighted value Scan-IN

70 BIST: Weighted pseudorandom test Faults to be tested Problem: random-pattern-resistant faults Solution: weighted pseudorandom testing The probabilities of pseudorandom signals are weighted, the weights are determined by circuit analysis NCV NCV non-controlling value The more faults that must be tested through a gate input, the more the other inputs should be weighted to NCV & Propagated faults NDI G NDI I NDI - number of primary inputs for each gate determined by the back-trace cone NDI - relative measure of the number of faults to be detected through the gate I & G

71 BIST: Weighted pseudorandom test Faults to be tested NCV & Propagated faults R I = NDI G / NDI I R I - the desired ratio of the NCV () to the controlling value (0) for each gate input NCV - noncontrolling value The more faults that must be tested through a gate input, the more the other inputs should be weighted to NCV NDI G NDI I I & G

72 BIST: Weighted pseudorandom test Example: PI PI PI PI PI PI 2 3 & G R = NDI G / NDI I = 6/ = 6 R 2 = NDI G / NDI I = 6/2 = 3 R 3 = NDI G / NDI I = 6/3 = 2 More faults must be detected through the third input than through others This results in the other inputs being weighted more heavily towards NCV

73 BIST: Weighted pseudorandom test Calculation of signal weights: R 2 = 3 W0 2 = W 2 = 3 PI PI PI PI PI PI 2 3 R 3 = 2 W0 3 = W 3 = 2 & R = 6 W0 = W = 6 G W0 G = W G = W0, W - weights of the signals are calculated by backtracking Calculation of W0, W for inputs Function W0 IN W IN AND W0G RI WG NAND WG RI W0G OR RI W0G WG NOR RI WG W0G

74 BIST: Weighted pseudorandom test Calculation of signal weights: R = W0 = 6 W = R = 2 W0 = 2 W = 3 R = 3 W0 = 3 W = 2 PI PI 2 PI 3 PI 4 PI 5 PI & W0 = W = 6 G W0 2 = W 2 = 3 Backtracing from all the outputs to all the inputs of the given cone Weights are calculated for all gates and inputs Function W0 I W I OR RI W0G WG NOR RI WG W0G W0 3 = W 3 = 2

75 BIST: Weighted pseudorandom test Calculation of signal probabilities: R = W0 = 6 W = PI R = 2 W0 = 2 W = 3 R = 3 W0 = 3 W = 2 PI 2 PI 3 PI 4 PI 5 PI & G PI : W0 = 6 W = P = /7 = 0.5 PI 2 and PI 3 : W0 = 2 W = 3 P = 3/5 = 0.6 PI 4 - PI 6 : W0 = 3 W = 2 P = 2/5 = 0.4

76 BIST: Weighted pseudorandom test Calculation of signal probabilities: PI PI PI PI PI PI 2 3 & For PI : P = 0.5 For PI 2 and PI 3 : P = 0.6 For PI 4 - PI 6 : P = 0.4 G Probability of detecting the fault at the input 3 of the gate G: ) equal probabilities (p = 0.5): P = 0.5 ( ) = = = = ) weighted probabilities: P = 0.85 ( ) = = = = 0.6

77 The Main BIST Problems On circuit Test pattern generation Test Pattern Generation (TPG) Response verification Random pattern generation, Very long tests Hard-to-test faults Response compression Aliasing of results IC BIST Control Unit Circuitry Under Test CUT Test Response Analysis (TRA)

78 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Standard LFSR x x 2 x 3 x 4 Modular LFSR x x 2 x 3 x 4 Polynomial: P(x) = x 4 + x 3 +

79 BIST: Signature Analysis Signature analyzer: Standard LFSR UUT x x 2 x 3 x 4 Modular LFSR Response string x x 4 x 2 Response in compacted by LFSR The content of LFSR after test is called signature x 3 Polynomial: P(x) = x 4 + x 3 +

80 BIST: Signature Analysis Parallel Signature Analyzer: Single Input Signature Analyser UUT x 4 x 2 x x 3 x 4 x 2 x x 3 UUT Multiple Input Signature Analyser (MISR)

81 Special Cases of Response Compression. Parity checking P( R) ( m i r i ) mod 2 2. One counting P( R) m i r i 3. Zero counting P( R) m i r i Test UUT r i P i- Test r i UUT Counter T

82 Special Cases of Response Compression 4. Transition counting r i a) Transition 0 P( R) m i 2 ( r i r i ) Test UUT T & r i- b) Transition 0 r i P( R) m i 2 ( r i r i ) Test UUT T r i- & 5. Signature analysis

83 Theory of LFSR The principles of CRC (Cyclic Redundancy Coding) are used in LFSR based test response compaction Coding theory treats binary strings as polynomials: Example: R = r m- r m-2 r r 0 - m-bit binary sequence (binary string) R(x) = r m- x m- + r m-2 x m r x + r 0 - polynomial in x 00 R(x) = x 4 + x 3 + Only the coefficients are of interest, not the actual value of x However, for x = 2, R(x) is the decimal value of the bit string

84 Arithmetic of coefficients: Theory of LFSR - linear algebra over the field of 0 and : all integers mapped into either 0 or - mapping: representation of any integer n by remainder r resulting from the division of n by 2: n = 2m + r, r { 0, } or r = n (modulo 2) Linear - refers to the arithmetic unit (modulo-2 adder), used in CRC generator (linear, since each bit has equal weight upon the output) Examples (addition, multiplication): x 4 + x 3 + x + + x 4 + x 2 + x x 3 + x 2 + x 4 + x 3 + x + x + x 5 + x 4 + x 2 + x x 4 + x 3 + x + x 5 + x 3 + x 2 +

85 Theory of LFSR Characteristic Polynomials: ) ( m m m m m x c x c x c x c c x G Division of polynomials x x x x x x x x x x x x x x x Quotient Remainder Dividend Divider

86 BIST: Signature Analysis Division of one polynomial P(x) by another G(x) produces a quotient polynomial Q(x), and if the division is not exact, a remainder polynomial R(x) ) ( ) ( ) ( ) ( ) ( x G x R x Q x G x P Example: ) ( ) ( x x x x x x x x x x x x x G x P Remainder R(x) is used as a check word in data transmission The transmitted code consists of the message P(x) followed by the check word R(x) Upon receipt, the reverse process occurs: the message P(x) is divided by known G(x), and a mismatch between R(x) and the remainder from the division indicates an error

87 BIST: Signature Analysis In signature testing we mean the use of CRC encoding as the data compressor G(x) and the use of the remainder R(x) as the signature of the test response string P(x) from the UUT P( x) G( x) Q( x) R( x) G( x Signature is the CRC code word ) Example: P( x) G( x) G(x) 7 3 x x x 5 3 x x x Signature 0 = Q(x) = x P(x) = R(x) = x 3 + x 2 +

88 BIST: Signature Analysis G(x) 0 IN: P(x) P( x) G( x) x x 2 x 3 x 4 x 5 G(x) x x x 5 3 x x x 0 Shifted into LFSR Compressor x Signature 0 x 5 x 4 x 3 x 2 x Dvision process can be mechanized using LFSR Divisor polynomial G(x) is defined by the feedback connections Last shift creates x 5 which is replaced by x 5 = x 3 + x + Response P(x) = R(x) = x 3 + x 2 +

89 BIST: Signature Analysis Aliasing: UUT Response L SA N L - test length N - number of stages in Signature Analyzer All possible responses All possible signatures L k 2 Faulty response Correct response N << L N k 2

90 BIST: Signature Analysis Aliasing: UUT Response L SA N L - test length N - number of stages in Signature Analyzer L k 2 - number of different possible responses No aliasing is possible for those strings with L - N leading zeros since they are represented by polynomials of degree N - that are not divisible by characteristic polynomial of LFSR 2 L N Probability of aliasing: ---- No aliasing is possible P L 2 2 N L XXXXX L L P 2 N N

91 BIST: Signature Analysis Parallel Signature Analyzer: Single Input Signature Analyser UUT x 4 x 2 x x 3 x 4 x 2 x x 3 UUT Multiple Input Signature Analyser (MISR)

92 BIST: Signature Analysis Signature calculating for multiple outputs: LFSR - Test Pattern Generator LFSR - Test Pattern Generator Combinational circuit Combinational circuit Multiplexer Multiplexer LFSR - Signature analyzer LFSR - SA

93 BIST Architectures General Architecture of BIST BIST Control Unit Test Pattern Generation (TPG) Circuitry Under Test CUT Test Response Analysis (TRA) BIST components: Test pattern generator (TPG) Test response analyzer (TRA) BIST controller A part of a system (hardcore) must be operational to execute a self-test At minimum the hardcore usually includes power, ground, and clock circuitry Hardcore should be tested by external test equipment or it should be designed selftestable by using various forms of redundancy

94 BIST Architectures Test per Clock: Disjoint TPG and SA: BILBO Joint TPG and SA: CSTP - Circular Self-Test Path: LFSR - Test Pattern Generator LFSR - Test Pattern Generator & Signature analyser Combinational circuit Combinational circuit LFSR - Signature analyzer

95 BIST: Joining TPG and SA LFSR UUT x x 2 x 3 x 4 FF FF FF FF Response string for Signature Analysis Test Pattern (when generating tests) Signature (when analyzing test responses)

96 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Why modular LFSR is useful for BIST? x x 2 x 3 x 4 UUT Test responses Test patterns Polynomial: P(x) = x 4 + x 3 + Instead of BILBO we have now CSTP architecture

97 BIST: Circular Self-Test Architecture Circuit Under Test FF FF FF

98 BIST: Circular Self-Test Path CC CSTP CC CSTP CSTP CC R R CC CC CSTP CSTP

99 BIST Embedding Example LFSR LFSR2 M M2 CSTP M4 MUX M5 M3 BILBO Concurrent testing: MISR LFSR, CSTP M2 MISR M2 M5 MISR2 (Functional BIST) CSTP M3 CSTP LFSR2 M4 BILBO MUX MISR2 M6

100 Scan chain Scan chain BIST Architectures STUMPS: Self-Testing Unit Using MISR and Parallel Shift Register Sequence Generator Test Pattern Generator LOCST: LSSD On-Chip Self-Test Scan Path BS BS CUT CUT... CUT TPG SA MISR SI IC Test Controller SO Error

101 Scan-Based BIST Architecture PS Phase shifter Scan-Forest Scan-Trees Scan-Segments (SC) Weighted scanenables for SS Compactor - EXORs Copyright: D.Xiang 2003

102 Problems with BIST The main motivations of using random patterns are: - low generation cost - high initial efeciency Problems: Very long test application time Low fault coverage Area overhead Additional delay Fault Coverage Time Possible solutions Weighted pseudorandom test Combining pseudorandom test with deterministic data Multiple seed Bit flipping Hybrid BIST Fault Coverage Time

103 Problems with BIST: Hard to Test Faults The main motivations of using random patterns are: - low generation cost - high initial efeciency Problem: Low fault coverage Pseudorandom Patterns from LFSR: test window: 2 n - Hard to test faults Fault Coverage Dream solution: Find LFSR such that: 2 n - Time Hard to test faults

104 Deterministic Synthesis of LFSR Generation of the polynomial and seed for the given test sequence ) Given test sequence: () 00x0 (2) x00 (3) 00 (4) 0 2) Creation of the shortest bit-stream: Seed States of the LFSR This deterministic test set is generated by ATPG However, only patterns which detects the hard-totest faults can be chosen 3) Expected shortest LFSR sequence: 0 (4) (3) 0 00 (2) () Shift LFSR

105 Deterministic patterns Hybrid Built-In Self-Test ROM BIST Controller Pseudorandom patterns PRPG... CORE UNDER TEST MISR SoC Core Hybrid test set contains pseudorandom and deterministic vectors Pseudorandom test is improved by a stored test set which is specially generated to target the random resistant faults Optimization problem: Where should be this breakpoint? Pseudorandom Test Determ. Test

106 Optimization of Hybrid BIST Cost of BIST: FAST estimation Number of remaining faults after applying k pseudorandom test patterns rnot(k) # faults Brake point min C TOTAL Total Cost C TOTAL Cost of pseudorandom test patterns C GEN Cost of stored test C MEM Number of pseudorandom test patterns applied, k Figure 2: Cost calculation for hybrid BIST Pseudorandom Test C TOTAL = k + t(k) k SLOW analysis # tests Det. Test t(k) PR test length k PR test length # faults not detected (fast analysis) # tests needed (slow analysis) k r DET (k) r NOT (k) FC(k) t(k) % % % % % % % % % % % % % % % % % 0 How to convert #faults to #tests

107 Deterministic Test Length Estimation Fault coverage 00% F* F F D k ( i ) F P E k ( i ) j i Deterministic test (DT) Pseudorandom test (PT) i * Brake point search T D F k i Fast estimation for the length of deterministic test: For each PT length i* we determine - PT fault coverage F*, and - the imaginable part of DT FD k (i) to be needed for the same fault coverage Then the remaining part of DT TD E k(i) will be the estimation of the DT length T D E k ( i ) Pseudorandom test length Deterministic test length estimation

108 Deterministic Test Length Estimation Cost of BIST: FAST estimation Number of remaining faults after applying k pseudorandom test patterns rnot(k) # faults Brake point min C TOTAL Total Cost C TOTAL Cost of pseudorandom test patterns C GEN Cost of stored test C MEM Number of pseudorandom test patterns applied, k Figure 2: Cost calculation for hybrid BIST Pseudorandom Test C TOTAL = k + t(k) k SLOW analysis # tests Det. Test t(k) PR test length k PR test length # faults not detected (fast analysis) # tests needed (slow analysis) k r DET (k) r NOT (k) FC(k) t(k) % % % % % % % % % % % % % % % % % 0 How to convert #faults to #tests

109 Calculation of the Deterministic Test Cost Two possibilities to find the length of deterministic data for each possible breakpoint in the pseudorandom test sequence: ATPG based approach For each breakpoint of P- sequence, ATPG is used Fault table based approach A deterministic test set with fault table is calculated For each breakpoint of P-sequence, the fault table is updated for not yet detected faults FAST estimation Only fault coverage is calculated ATPG based: ATPG Detected Faults All PR patterns? No Next PR pattern End Yes Fault table based: ATPG Fault table update All PR patterns? No Next PR pattern Yes End

110 Calculation of the Deterministic Test Cost ATPG based approach For each breakpoint of P-sequence, ATPG is used ATPG based: ATPG R R 2 R k R k+ R k+2 R n Detected Faults All PR patterns? Task for fault simulator Brake point T T T n Faults detected by pseudorandom patterns Faults to be detected by deterministic patterns No Next PR pattern End Yes Task for ATPG T n+ T p New detected faults

111 Calculation of the Deterministic Test Cost Fault table based approach A deterministic test set with fault table is calculated For each breakpoint of P-sequence, the fault table is updated and remaining det. patterns are determined Fault table based: R R 2 R k R k+ R k+2 R n ATPG Fault table update Task for fault simulator T T T n Faults detected By pseudorandom patterns Fault table for full deterministic test All PR patterns? No Next PR pattern Yes End Updated fault tabel T n+ T p To be detected faults

112 Experimental Data: HybBIST Optimization Finding optimal brakepoint in the pseudorandom sequence: Pseudorandom Test Det. Test L OPT L MAX S OPT S MAX Optimized hybrid test process: Pseudorandom Test Det. Test Circuit LMAX LOPT SMAX SOPT Bk CTOTAL C C C C C C C C C C

113 Hybrid BIST with Reseeding The motivation of using random patterns is: - low generation cost - high initial efeciency Problem: low fault coverage long PR test Pseudorandom test: 2 n - Fault Coverage Hard to test faults Solution: many seeds: Pseudorandom test: 2 n - Time

114 Hybrid BIST with Reseeding Using many seeds: Pseudorandom test: 2 n - Problems: Which deterministic patterns should be the seeds for the blocks?

115 Store-and-Generate Test Architecture # seeds ROM TPG UUT ADR Seeds RD Window Counter 2 Counter Pseudorandom test windows Seeds ROM contains deterministic data for BIST control to target hard-to-test-faults Each pattern P k in ROM serves as an initial state of the LFSR for test pattern generation (TPG) - seeds Counter counts the number of pseudorandom patterns generated starting from P k - width of the windows After finishing the cycle for Counter 2 is incremented for reading the next pattern P k+ for starting the new window CL

116 Store-and-Generate vs. Hybrid BIST Store and generate method (Reseeding) LFSR ROM Seed UUT Deterministic test pattern Hybrid BIST method

117 HBIST Optimization Problem Using many seeds: Pseudorandom test: 2 n - Seed Pseudorandom sequences: Problems: How to calculate the number and size of blocks? Which deterministic patterns should be the seeds for the blocks? Deterministic test (seeds): Seed Seed 2 Seed n L Seed 2 Seed n Block size: 00% FC Memory Constraints Minimize L at given M and 00% FC

118 Hybrid BIST Optimization Algorithm D-patterns are ranked ATPG patterns Pattern selection Pseudorandom sequence PR i Algorithm is based on D-patterns ranking Deterministic test patterns with 00% quality are generated by ATPG Modified ATPG pattern table FC(PR i ) Detected faults subtraction, optimization of ATPG patterns The best pattern is selected as a seed A pseudorandom block is produced and the fault table of ATPG patterns is updated The procedure ends when 00% fault coverage is achieved

119 Hybrid BIST Optimization Algorithm 2 P-blocks are ranked PT min Deterministic test vector (seed) DT i Pseudorandom test sequence PR i Pseudorandom sequence removed with the block length optimization PT * Algorithm is based on P-blocks ranking Deterministic test patterns with 00% quality are generated by ATPG All P-blocks are generated for all D-patterns and ranked The best P-block is selected included into sequence and updated The procedure ends when 00% fault coverage is achieved

120 Cost Curves for Hybrid BIST with Reseeding Two possibilities for reseeding: Constant block length (less HW overhead) Dynamic block length (more HW overhead) Test length L L(b) C908 L2(b) M(b) Memory cost M Block size b

121 Functional Self-Test Traditional BIST solutions use special hardware for pattern generation on chip, this may introduce area overhead and performance degradation New methods have been proposed which exploit specific functional units like arithmetic blocks or processor cores for on-chip test generation It has been shown that adders can be used as test generators for pseudorandom and deterministic patterns Today, there is no general method how to use arbitrary functional units for built-in test generation

122 Hybrid Functional BIST To improve the quality of FBIST we introduce the method of Hybrid FBIST The idea of Hybrid FBIST consists in using the mixture of functional patterns produced by the microprogram (no additional HW is needed), and additional stored deterministic test patterns to improve the total fault coverage (HW overhead: MUX-es, Memory) Tradeoffs should be found between the testing time and the HW/SW overhead cost

123 Example: Functional BIST for Divider Functional BIST quality analysis for Samples from N=20 cycles DB=64 Register block Control K Data SB=05 ALU Signature analyser K*N Functional test Data compression: K pairs of operands B, B2 N*SB / DB = 97 Fault simulator Fault coverage Test patterns (samples) are produced on-line during the working mode

124 Example: Functional BIST Quality for Divider Fault coverage of FBIST compared to Functional test Data Functional testing Functional BIST B B2 Total B B2 Total 4/ / / / / / / / / / Aver Gain Traditional Functional test UUT Result Reference Go/NoGo FBIST UUT Result HW overhead Signature Reference Go/NoGo FBIST: collection and analysis of samples during the working mode Fault coverage is better, however, still very low (ranging from 42% to 70%)

125 Hybrid Functional BIST for Divider Hybrid Functional BIST implementation MUX M Automatic Test Pattern Generator Register block ALU Deterministic test set Random resistant faults K Data Signature analyser Test patterns are stored in the memory

126 Cost Functions for Hybrid Functional BIST Total cost: Cost C Total = C FB_Total +C D_Total C Total = C FB_Total +C D_Total The cost of functional test part: C FB_Total = C FB_Const + C FB_T + C FB_M Opt. cost The cost of deterministic test part: C FB_T + C FB_M C D_T + C D_M C D_Total = C D_Const + C D_T + C D_M C D_Const C FB_Const Length of FBIST C FB_Const, C D_Const - HW/SW overhead C FB_T, C D_T - testing time cost, - weights of time and memory expenses Opt. length Problem: minimize C Total

127 Hybrid Functional BIST Quality Hyb FBIST with multiple seeds (data operands) Functional test part k N j N FC % Total cost Determ. test part D Total cost Total cost k number of operands used in the FBIST , , , The fault coverage increases if k increases , ,

128 Functional Self-Test with DFT Example: N-bit multiplier N cycles Improving controllability T MUX Register block ALU F EXOR Improving observability K Signature analyser Data

129 Hybrid BIST for Multiple Cores Embedded tester for testing multiple cores Embedded Tester C2670 C3540 Deterministic test patterns: C880 C355 C908 C2670 C3540 Test Controller Tester Memory BIST BIST Test access mechanism BIST BIST BIST Pseudorandom or functional test patterns generated on-line C908 C880 C355 SoC

130 Hybrid BIST for Multiple Cores Deterministic test (DT) How to pack knapsack? How to compress the test sequence? Pseudorandom test (PT)

131 Multi-Core Hybrid BIST Optimization Cost of BIST: C TOTAL = k + t(k) FAST estimation Number of remaining faults after applying k pseudorandom test patterns r NOT (k) # faults min C TOTAL Total Cost C TOTAL k SLOW analysis # tests Cost of pseudorandom test patterns C GEN Cost of stored test C MEM t(k) Number of pseudorandom test patterns applied, k Figure 2: Cost calculation for hybrid BIST Pseudorandom Test Det. Test PR test length k Two problems: ) Calculation of DT cost is difficult 2) We have to optimize n (!) processes How to avoid the calculation of the very expensive full DT cost curve?

132 Deterministic Test Length Estimation Deterministic test (DT) Fault coverage Pseudorandom test (PT) 00% F* F F D k ( i ) F P E k ( i ) j i i * T D F k i Solution of the first problem: For each PT length i* we determine - PT fault coverage F*, and - the imaginable part of DT FD k (i) to be used for the same fault coverage Then the remaining part of DT TD E k(i) will be the estimation of the DT length T D E k ( i ) Pseudorandom test length Deterministic test length estimation for a single core

133 Deterministic Test Cost Estimation Total cost calculation of core costs: 8000 DT cost Memory Constraint Constraint Core name: c499 c880 c355 c908 c535 c6288 c432 Memory usage: 5357 bits Memory usage: Deterministic time: Memory (bits) 4000 Core costs Cost Estimates for Individual Cores Real Cost Real cost Estimated Cost Solution Estimated cost 000 Total Test Lenght (clocks) 500 Total test length

134 Total Test Cost Estimation COST Using total cost solution we find the PT length: DT cost PT cost E COST D,k COST E* T COST T,k Total cost Total cost solution COST P,k j* k j min PT length solution E Solution Pseudorandom test (PT) length j Using PT length, we calculate the test processes for all cores: c432 c c c908 c535 c355 c Total Test 23 Deterministic Pseudorandom

135 Multi-Core Hybrid BIST Optimization Iterative optimization process: - First estimation * - Real cost calculation 2 - Correction of the estimation 2* - Real cost calculation 3 - Correction of the estimation 3* - Final real cost G.Jervan, P.Eles, Z.Peng, R.Ubar, M.Jenihhin. Test Time Minimization for Hybrid BIST of Core-Based Systems. Asian Test Symposium 2003, Xi an, China, November 7-9, 2003,

136 Optimized Multi-Core Hybrid BIST Pseudorandom test is carried out in parallel, deterministic test - sequentially

137 LFSR LFSR LFSR LFSR Test-per-Scan Hybrid BIST Every core s BIST logic is capable to produce a set of independent pseudorandom test The pseudorandom test sets for all the cores can be carried out simultaneously Embedded Tester Test Controller LFSR s327 Scan Path Scan Path Scan Path Scan Path LFSR s298 Scan Path Scan Path Scan Path Scan Path TAM Deterministic tests can only be carried out for one core at a time Tester Memory Only one test access bus at the system level LFSR Scan Path Scan Path Scan Path LFSR Scan Path Scan Path Scan Path is needed. Scan Path Scan Path SoC s423 s838

138 Bus-Based BIST Architecture Self-test control broadcasts patterns to each CUT over bus parallel pattern generation Awaits bus transactions showing CUT s responses to the patterns: serialized compaction Source: VLSI Test: Bushnell-Agrawal

139 Broadcasting Test Patterns in BIST Concept of test pattern sharing via novel scan structure to reduce the test application time: CUT CUT CUT CUT 2 Traditional single scan design Broadcast test architecture While one module is tested by its test patterns, the same test patterns can be applied simultaneously to other modules in the manner of pseudorandom testing

140 Broadcasting Test Patterns in BIST Examples of connection possibilities in Broadcasting BIST: CUT CUT 2 CUT CUT 2 j-to-j connections Random connections

141 Broadcasting Test Patterns in BIST Scan configurations in Broadcasting BIST: Scan-In Scan-In CUT... CUT n MISR Scan-Out Common MISR CUT CUT n MISR MISR n Scan-Out Individual and multiple MISRs

142 Software BIST SoC Software based test generation: CPU Core load (LFSRj); for (i=0; i<nj; i++)... end; Core j Core j+ ROM LFSR: N: 275 LFSR2: N2: Core j+... To reduce the hardware overhead cost in the BIST applications the hardware LFSR can be replaced by software Software BIST is especially attractive to test SoCs, because of the availability of computing resources directly in the system (a typical SoC usually contains at least one processor core) The TPG software is the same for all cores and is stored as a single copy All characteristics of the LFSR are specific to each core and stored in the ROM They will be loaded upon request. For each additional core, only the BIST characteristics for this core have to be stored

143 Embedded Built-in Self-Diagnosis (BISD) Introduction to Fault Diagnosis Combinational diagnosis (effect-cause approach) Sequential (adaptive) diagnosis (cause-effect approach) General conception of embedded BISD Diagnostic resolution Intersection based on test subsequences Intersection based on using signature analyzers Fault model free diagnosis Fault evidence based diagnosis

144 Raimund Ubar Research in ATI Why Fault Masking is Important Issue? Diagnosis method Devil s advocate approach Single fault assumption Multiple faults allowed Angel s advocate Fault table Tested faults Tested faults Tested faults Fault candidates? Fault candidates Proved OK Fault candidates Test result Passed Failed Failed Diagnosis 44/24

145 Fault Diagnosis Fault modeling How many rows and columns should be in the Fault Table? Fault table F F 2 F 3 F 4 F 5 F 6 F 7 T T T T T T Fault simulation Fault F 5 located Fault diagnosis Test experiment E E 2 E Testing Test generation

146 Combinational Fault diagnosis Fault localization by fault tables (cause-effect concept) F F 2 F 3 F 4 F 5 F 6 F 7 T T T T T T E E 2 E Fault F 5 located Faults F and F 4 are not distinguishable No match, diagnosis not possible

147 Combinational Fault Diagnosis Fault localization by fault dictionaries (cause-effect concept) Fault dictionaries contain the sama data as the fault tables with the difference that the data is reorganised The column bit vectors can be represented by ordered decimal codes or by some kind of compressed signature No Bit vectors Decimal numbers Faults F F F F, F F F 2 Test results: E = 06, E = 24, E = 38 No match

148 Sequential Fault Diagnosis Sequential fault diagnosis by Edge-Pin Testing (cause-effect) F F 2 F 3 F 4 F 5 F 6 F 7 T T T T T T F,F 2 F 3,F 4 F 5,F 6 F 7 P T F,F 4,F 5,F 6,F 7 F F 2, F 3 T 3 P F F 3 T 2 F P F,F 4 F 5,F 6,F 7 T 3 P Diagnostic tree Two faults F,F 4 remain indistinguishable Not all test patterns used in the fault table are needed F Different faults need for identifying test sequences with different lengths The shortest test contains two patterns, the longest four patterns F 5,F 7 T 4 F P F 7 F 2 F 6 F 5

149 Raimund Ubar CREDES Summer School Sequential Fault Diagnosis Guided-probe testing at the gate level (effect-cause) x 8 Searh tree: P F No faults x 6 P x 4 F F x 5,2 P F Line x 2 is faulty OR- x 8 is faulty x 2 P F x 3, Faulty circuit: P F NOR- x 5 is faulty x 3 Line x 2 is faulty P F x 2 x 3 x 4 x 3, x 3,2 Line x 3, is faulty Line x 3 is faulty x 5 x 6 x 5, x 5,2 x 7 x 8 P x 3,2 P AND- x 6 is faulty F x 3 P F Line x 3,2 is faulty Line x 3 is faulty 49

150 Embedded BIST Based Fault Diagnosis BISD scheme: Pseudorandom test sequence: Test Pattern Generator (TPG) BISD Control Unit Circuit Under Diagnosis (CUD) Output Response Analyser (ORA) Test patterns Pattern Signature Faults Diagnostic Points (DPs) patterns that detect new faults Further minimization of DPs as a tradeoff with diagnostic resolution May -4, th International Conference on Microelectronics, Niš, Serbia 4/20

151 Built-In Fault Diagnosis Diagnosis procedure: Test Pattern Generator (TPG) BIST Control Unit. test 2. test 3. test Faulty signature Circuit Under Test (CUT) Output Response Analyser (ORA) Test patterns Number Signature Faults Correct signature 3. test Faulty signature Pseudorandom test sequence

152 Introduction to Information Theory Entropy H X of a discrete random variable X is a measure of the amount of uncertainty associated with the value of X H = p i log 2 ( p i ) i where p i is the probability of occurrence of the i-th possible value of the source symbol; (the entropy is given in the units of "bits" (per symbol) because it uses log of base 2) H X = - p log 2 p (-p) log 2 (-p) I = - p log 2 p (-p) log 2 (-p) p probability of detecting a fault

Overview. 4. Built in Self-Test. 1. Introduction 2. Testability measuring 3. Design for testability. Technical University Tallinn, ESTONIA

Overview. 4. Built in Self-Test. 1. Introduction 2. Testability measuring 3. Design for testability. Technical University Tallinn, ESTONIA Overview. Introduction 2. Testability measuring 3. Design for testability 4. Built in Self-Test Built-In Self-Test Outline Motivation for BIST Testing SoC with BIST Test per Scan and Test per Clock HW

More information

IHS 3: Test of Digital Systems R.Ubar, A. Jutman, H-D. Wuttke

IHS 3: Test of Digital Systems R.Ubar, A. Jutman, H-D. Wuttke IHS 3: Test of Digital Systems R.Ubar, A. Jutman, H-D. Wuttke Integrierte Hard- und Softwaresysteme RT-Level Design data path and control path on RT-level RT level simulation Functional units (F1,..,F4)

More information

Logic BIST. Sungho Kang Yonsei University

Logic BIST. Sungho Kang Yonsei University Logic BIST Sungho Kang Yonsei University Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2 Built In Self Test Test/ Normal Input Pattern

More information

Design for Testability

Design for Testability Design for Testability Outline Ad Hoc Design for Testability Techniques Method of test points Multiplexing and demultiplexing of test points Time sharing of I/O for normal working and testing modes Partitioning

More information

Design for Testability

Design for Testability Design for Testability Outline Ad Hoc Design for Testability Techniques Method of test points Multiplexing and demultiplexing of test points Time sharing of I/O for normal working and testing modes Partitioning

More information

Introduction to VLSI Testing

Introduction to VLSI Testing Introduction to 李昆忠 Kuen-Jong Lee Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan Class Problems to Think How are you going to test A 32 bit adder A 32 bit counter A 32Mb

More information

Outline - BIST. Why BIST? Memory BIST Logic BIST pattern generator & response analyzer Scan-based BIST architecture. K.T. Tim Cheng 08_bist, v1.

Outline - BIST. Why BIST? Memory BIST Logic BIST pattern generator & response analyzer Scan-based BIST architecture. K.T. Tim Cheng 08_bist, v1. 1 Outline - BIST Why BIST? Memory BIST Logic BIST pattern generator & response analyzer Scan-based BIST architecture 2 Why Built-In Self Test? TYPES On-Line Self-Test (Concurrent Checking) Functional Self-Test

More information

UMBC. At the system level, DFT includes boundary scan and analog test bus. The DFT techniques discussed focus on improving testability of SAFs.

UMBC. At the system level, DFT includes boundary scan and analog test bus. The DFT techniques discussed focus on improving testability of SAFs. Overview Design for testability(dft) makes it possible to: Assure the detection of all faults in a circuit. Reduce the cost and time associated with test development. Reduce the execution time of performing

More information

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Final Examination

Department of Electrical and Computer Engineering University of Wisconsin Madison. Fall Final Examination Department of Electrical and Computer Engineering University of Wisconsin Madison ECE 553: Testing and Testable Design of Digital Systems Fall 2013-2014 Final Examination CLOSED BOOK Kewal K. Saluja Date:

More information

Test Pattern Generator for Built-in Self-Test using Spectral Methods

Test Pattern Generator for Built-in Self-Test using Spectral Methods Test Pattern Generator for Built-in Self-Test using Spectral Methods Alok S. Doshi and Anand S. Mudlapur Auburn University 2 Dept. of Electrical and Computer Engineering, Auburn, AL, USA doshias,anand@auburn.edu

More information

EECS150 - Digital Design Lecture 21 - Design Blocks

EECS150 - Digital Design Lecture 21 - Design Blocks EECS150 - Digital Design Lecture 21 - Design Blocks April 3, 2012 John Wawrzynek Spring 2012 EECS150 - Lec21-db3 Page 1 Fixed Shifters / Rotators fixed shifters hardwire the shift amount into the circuit.

More information

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs April 16, 2009 John Wawrzynek Spring 2009 EECS150 - Lec24-blocks Page 1 Cross-coupled NOR gates remember, If both R=0 & S=0, then

More information

One-Dimensional Linear Hybrid Cellular Automata: Their Synthesis, Properties and Applications to Digital Circuits Testing

One-Dimensional Linear Hybrid Cellular Automata: Their Synthesis, Properties and Applications to Digital Circuits Testing One-Dimensional Linear Hybrid Cellular Automata: Their Synthesis, Properties and Applications to Digital Circuits Testing M. Serra, K. Cattell, S. Zhang, J.C. Muzio, D.M. Miller Dept. of Computer Science

More information

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs)

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) EECS150 - igital esign Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Nov 21, 2002 John Wawrzynek Fall 2002 EECS150 Lec26-ECC Page 1 Outline Error detection using parity Hamming

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world. Outline EECS 150 - Components and esign Techniques for igital Systems Lec 18 Error Coding Errors and error models Parity and Hamming Codes (SECE) Errors in Communications LFSRs Cyclic Redundancy Check

More information

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR Linear Feedback Shift Registers (LFSRs) These are n-bit counters exhibiting pseudo-random behavior. Built from simple shift-registers with a small number of xor gates. Used for: random number generation

More information

CprE 281: Digital Logic

CprE 281: Digital Logic CprE 28: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Simple Processor CprE 28: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev Digital

More information

LOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D.

LOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D. Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Digital IC packages TTL (transistor-transistor

More information

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering

ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN. Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering ECEN 248: INTRODUCTION TO DIGITAL SYSTEMS DESIGN Week 9 Dr. Srinivas Shakkottai Dept. of Electrical and Computer Engineering TIMING ANALYSIS Overview Circuits do not respond instantaneously to input changes

More information

Test Generation for Designs with Multiple Clocks

Test Generation for Designs with Multiple Clocks 39.1 Test Generation for Designs with Multiple Clocks Xijiang Lin and Rob Thompson Mentor Graphics Corp. 8005 SW Boeckman Rd. Wilsonville, OR 97070 Abstract To improve the system performance, designs with

More information

Built-In Test Generation for Synchronous Sequential Circuits

Built-In Test Generation for Synchronous Sequential Circuits Built-In Test Generation for Synchronous Sequential Circuits Irith Pomeranz and Sudhakar M. Reddy + Electrical and Computer Engineering Department University of Iowa Iowa City, IA 52242 Abstract We consider

More information

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power) EECS 150 - Components and esign Techniques for igital Systems Lec 26 CRCs, LFSRs (and a little power) avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler

More information

Information redundancy

Information redundancy Information redundancy Information redundancy add information to date to tolerate faults error detecting codes error correcting codes data applications communication memory p. 2 - Design of Fault Tolerant

More information

Counting Two-State Transition-Tour Sequences

Counting Two-State Transition-Tour Sequences Counting Two-State Transition-Tour Sequences Nirmal R. Saxena & Edward J. McCluskey Center for Reliable Computing, ERL 460 Department of Electrical Engineering, Stanford University, Stanford, CA 94305

More information

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS

EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS EGFC: AN EXACT GLOBAL FAULT COLLAPSING TOOL FOR COMBINATIONAL CIRCUITS Hussain Al-Asaad Department of Electrical & Computer Engineering University of California One Shields Avenue, Davis, CA 95616-5294

More information

A New Multiple Weight Set Calculation Algorithm

A New Multiple Weight Set Calculation Algorithm A New Multiple Weight Set Calculation Algorithm Hong-Sik Kim Jin-kyue Lee Sungho Kang hskim@dopey.yonsei.ac.kr jklee@cowboys.yonsei.ac.kr shkang@yonsei.ac.kr Dept. of Electrical Eng. Yonsei Univ. Shinchon-dong

More information

EECS150 - Digital Design Lecture 27 - misc2

EECS150 - Digital Design Lecture 27 - misc2 EECS150 - Digital Design Lecture 27 - misc2 May 1, 2002 John Wawrzynek Spring 2002 EECS150 - Lec27-misc2 Page 1 Outline Linear Feedback Shift Registers Theory and practice Simple hardware division algorithms

More information

EECS150 - Digital Design Lecture 26 - Faults and Error Correction. Types of Faults in Digital Designs

EECS150 - Digital Design Lecture 26 - Faults and Error Correction. Types of Faults in Digital Designs EECS150 - Digital Design Lecture 26 - Faults and Error Correction April 25, 2013 John Wawrzynek 1 Types of Faults in Digital Designs Design Bugs (function, timing, power draw) detected and corrected at

More information

Chapter 5. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 5 <1>

Chapter 5. Digital Design and Computer Architecture, 2 nd Edition. David Money Harris and Sarah L. Harris. Chapter 5 <1> Chapter 5 Digital Design and Computer Architecture, 2 nd Edition David Money Harris and Sarah L. Harris Chapter 5 Chapter 5 :: Topics Introduction Arithmetic Circuits umber Systems Sequential Building

More information

Adders, subtractors comparators, multipliers and other ALU elements

Adders, subtractors comparators, multipliers and other ALU elements CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Adders 2 Circuit Delay Transistors have instrinsic resistance and capacitance

More information

S No. Questions Bloom s Taxonomy Level UNIT-I

S No. Questions Bloom s Taxonomy Level UNIT-I GROUP-A (SHORT ANSWER QUESTIONS) S No. Questions Bloom s UNIT-I 1 Define oxidation & Classify different types of oxidation Remember 1 2 Explain about Ion implantation Understand 1 3 Describe lithography

More information

EECS 579: SOC Testing

EECS 579: SOC Testing EECS 579: SOC Testing Core-Based Systems-On-A-Chip (SOCs) Cores or IP circuits are predesigned and verified functional units of three main types Soft core: synthesizable RTL Firm core: gate-level netlist

More information

On Random Pattern Testability of Cryptographic VLSI Cores

On Random Pattern Testability of Cryptographic VLSI Cores On Random Pattern Testability of Cryptographic VLSI Cores A. Schubert, W. Anheier Institut für Theoretische Elektrotechnik und Mikroelektronik (ITEM) University of Bremen P.O. Box 33 04 40, D-28334 Bremen

More information

Digital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.

Digital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic. Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Arithmetic Circuits January, 2003 1 A Generic Digital Processor MEMORY INPUT-OUTPUT CONTROL DATAPATH

More information

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

LOGIC CIRCUITS. Basic Experiment and Design of Electronics Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Outline Combinational logic circuits Output

More information

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary EECS50 - Digital Design Lecture - Shifters & Counters February 24, 2003 John Wawrzynek Spring 2005 EECS50 - Lec-counters Page Register Summary All registers (this semester) based on Flip-flops: q 3 q 2

More information

Logic Design II (17.342) Spring Lecture Outline

Logic Design II (17.342) Spring Lecture Outline Logic Design II (17.342) Spring 2012 Lecture Outline Class # 10 April 12, 2012 Dohn Bowden 1 Today s Lecture First half of the class Circuits for Arithmetic Operations Chapter 18 Should finish at least

More information

On Application of Output Masking to Undetectable Faults in Synchronous Sequential Circuits with Design-for-Testability Logic

On Application of Output Masking to Undetectable Faults in Synchronous Sequential Circuits with Design-for-Testability Logic On Application of Output Masking to Undetectable Faults in Synchronous Sequential Circuits with Design-for-Testability Logic Irith Pomeranz 1 and Sudhakar M. Reddy 2 School of Electrical & Computer Eng.

More information

Design at the Register Transfer Level

Design at the Register Transfer Level Week-7 Design at the Register Transfer Level Algorithmic State Machines Algorithmic State Machine (ASM) q Our design methodologies do not scale well to real-world problems. q 232 - Logic Design / Algorithmic

More information

EECS150 - Digital Design Lecture 26 Faults and Error Correction. Recap

EECS150 - Digital Design Lecture 26 Faults and Error Correction. Recap EECS150 - Digital Design Lecture 26 Faults and Error Correction Nov. 26, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof.

More information

Sample Test Paper - I

Sample Test Paper - I Scheme G Sample Test Paper - I Course Name : Computer Engineering Group Marks : 25 Hours: 1 Hrs. Q.1) Attempt any THREE: 09 Marks a) Define i) Propagation delay ii) Fan-in iii) Fan-out b) Convert the following:

More information

Hardware testing and design for testability. EE 3610 Digital Systems

Hardware testing and design for testability. EE 3610 Digital Systems EE 3610: Digital Systems 1 Hardware testing and design for testability Introduction A Digital System requires testing before and after it is manufactured 2 Level 1: behavioral modeling and test benches

More information

VLSI Physical Design Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

VLSI Physical Design Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur VLSI Physical Design Prof. Indranil Sengupta Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur Lecture - 54 Design for Testability So, in the last lecture we talked

More information

Adders, subtractors comparators, multipliers and other ALU elements

Adders, subtractors comparators, multipliers and other ALU elements CSE4: Components and Design Techniques for Digital Systems Adders, subtractors comparators, multipliers and other ALU elements Instructor: Mohsen Imani UC San Diego Slides from: Prof.Tajana Simunic Rosing

More information

ECE 3060 VLSI and Advanced Digital Design. Testing

ECE 3060 VLSI and Advanced Digital Design. Testing ECE 3060 VLSI and Advanced Digital Design Testing Outline Definitions Faults and Errors Fault models and definitions Fault Detection Undetectable Faults can be used in synthesis Fault Simulation Observability

More information

Outline Fault Simulation

Outline Fault Simulation K.T. Tim Cheng, 4_fault_sim, v. Outline Fault Simulation Applications of fault simulation Fault coverage vs product quality Fault simulation scenarios Fault simulation algorithms Fault sampling K.T. Tim

More information

Relating Entropy Theory to Test Data Compression

Relating Entropy Theory to Test Data Compression Relating Entropy Theory to Test Data Compression Kedarnath J. Balakrishnan and Nur A. Touba Computer Engineering Research Center University of Texas, Austin, TX 7872 Email: {kjbala, touba}@ece.utexas.edu

More information

Single Stuck-At Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of Boolean Difference

Single Stuck-At Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of Boolean Difference Single Stuck-At Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of Boolean Difference Copyright 1998 Elizabeth M. Rudnick 1 Modeling the effects

More information

Fault Modeling. 李昆忠 Kuen-Jong Lee. Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan. VLSI Testing Class

Fault Modeling. 李昆忠 Kuen-Jong Lee. Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan. VLSI Testing Class Fault Modeling 李昆忠 Kuen-Jong Lee Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan Class Fault Modeling Some Definitions Why Modeling Faults Various Fault Models Fault Detection

More information

EECS 579: Logic and Fault Simulation. Simulation

EECS 579: Logic and Fault Simulation. Simulation EECS 579: Logic and Fault Simulation Simulation: Use of computer software models to verify correctness Fault Simulation: Use of simulation for fault analysis and ATPG Circuit description Input data for

More information

ELEN Electronique numérique

ELEN Electronique numérique ELEN0040 - Electronique numérique Patricia ROUSSEAUX Année académique 2014-2015 CHAPITRE 3 Combinational Logic Circuits ELEN0040 3-4 1 Combinational Functional Blocks 1.1 Rudimentary Functions 1.2 Functions

More information

Hardware Design I Chap. 4 Representative combinational logic

Hardware Design I Chap. 4 Representative combinational logic Hardware Design I Chap. 4 Representative combinational logic E-mail: shimada@is.naist.jp Already optimized circuits There are many optimized circuits which are well used You can reduce your design workload

More information

WITH increasing complexity in systems design from increased

WITH increasing complexity in systems design from increased 150 IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT, VOL. 51, NO. 1, FEBRUARY 2001 Data Compression in Space Under Generalized Mergeability Based on Concepts of Cover Table and Frequency Ordering

More information

VLSI Design I. Defect Mechanisms and Fault Models

VLSI Design I. Defect Mechanisms and Fault Models VLSI Design I Defect Mechanisms and Fault Models He s dead Jim... Overview Defects Fault models Goal: You know the difference between design and fabrication defects. You know sources of defects and you

More information

SIGNATURE ROLLBACK WITH EXTREME COMPACTION A TECHNIQUE FOR TESTING ROBUST VLSI CIRCUITS WITH REDUCED HARDWARE OVERHEAD

SIGNATURE ROLLBACK WITH EXTREME COMPACTION A TECHNIQUE FOR TESTING ROBUST VLSI CIRCUITS WITH REDUCED HARDWARE OVERHEAD Annales Univ. Sci. Budapest., Sect. Comp. 39 (2013) 161 180 SIGNATURE ROLLBACK WITH EXTREME COMPACTION A TECHNIQUE FOR TESTING ROBUST VLSI CIRCUITS WITH REDUCED HARDWARE OVERHEAD Thomas Indlekofer (Paderborn,

More information

A VLSI Algorithm for Modular Multiplication/Division

A VLSI Algorithm for Modular Multiplication/Division A VLSI Algorithm for Modular Multiplication/Division Marcelo E. Kaihara and Naofumi Takagi Department of Information Engineering Nagoya University Nagoya, 464-8603, Japan mkaihara@takagi.nuie.nagoya-u.ac.jp

More information

9. Datapath Design. Jacob Abraham. Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017

9. Datapath Design. Jacob Abraham. Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017 9. Datapath Design Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 2017 October 2, 2017 ECE Department, University of Texas at Austin

More information

CMPEN 411 VLSI Digital Circuits Spring Lecture 19: Adder Design

CMPEN 411 VLSI Digital Circuits Spring Lecture 19: Adder Design CMPEN 411 VLSI Digital Circuits Spring 2011 Lecture 19: Adder Design [Adapted from Rabaey s Digital Integrated Circuits, Second Edition, 2003 J. Rabaey, A. Chandrakasan, B. Nikolic] Sp11 CMPEN 411 L19

More information

Logic and Computer Design Fundamentals. Chapter 8 Sequencing and Control

Logic and Computer Design Fundamentals. Chapter 8 Sequencing and Control Logic and Computer Design Fundamentals Chapter 8 Sequencing and Control Datapath and Control Datapath - performs data transfer and processing operations Control Unit - Determines enabling and sequencing

More information

Design of Sequential Circuits

Design of Sequential Circuits Design of Sequential Circuits Seven Steps: Construct a state diagram (showing contents of flip flop and inputs with next state) Assign letter variables to each flip flop and each input and output variable

More information

DIGITAL TECHNICS. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute

DIGITAL TECHNICS. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute DIGITAL TECHNICS Dr. Bálint Pődör Óbuda University, Microelectronics and Technology Institute 4. LECTURE: COMBINATIONAL LOGIC DESIGN: ARITHMETICS (THROUGH EXAMPLES) 2016/2017 COMBINATIONAL LOGIC DESIGN:

More information

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University CS 530 Information redundancy: Coding theory Yashwant K. Malaiya Colorado State University March 30, 2017 1 Information redundancy: Outline Using a parity bit Codes & code words Hamming distance Error

More information

ECE 1767 University of Toronto

ECE 1767 University of Toronto Applications Why Two Fault Simulators Never Agree General Techniques Parallel Pattern Simulation Inactive Fault Removal Critical Path Tracing Fault Sampling Statistical Fault Analysis ECE 767 Fault grading

More information

Faculty of Engineering. FINAL EXAMINATION FALL 2008 (December2008) ANSWER KEY

Faculty of Engineering. FINAL EXAMINATION FALL 2008 (December2008) ANSWER KEY 1 McGill University Faculty of Engineering DIGITAL SYSTEM DESIGN ECSE-323 FINAL EXAMINATION FALL 2008 (December2008) ANSWER KEY STUDENT NAME McGILL I.D. NUMBER Examiner: Prof. J. Clark Signature: Associate

More information

Digital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.

Digital Integrated Circuits A Design Perspective. Arithmetic Circuits. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic. Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Arithmetic Circuits January, 2003 1 A Generic Digital Processor MEM ORY INPUT-OUTPUT CONTROL DATAPATH

More information

GF(2 m ) arithmetic: summary

GF(2 m ) arithmetic: summary GF(2 m ) arithmetic: summary EE 387, Notes 18, Handout #32 Addition/subtraction: bitwise XOR (m gates/ops) Multiplication: bit serial (shift and add) bit parallel (combinational) subfield representation

More information

Predicting IC Defect Level using Diagnosis

Predicting IC Defect Level using Diagnosis 2014 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising

More information

ECE 512 Digital System Testing and Design for Testability. Model Solutions for Assignment #3

ECE 512 Digital System Testing and Design for Testability. Model Solutions for Assignment #3 ECE 512 Digital System Testing and Design for Testability Model Solutions for Assignment #3 14.1) In a fault-free instance of the circuit in Fig. 14.15, holding the input low for two clock cycles should

More information

ALU A functional unit

ALU A functional unit ALU A functional unit that performs arithmetic operations such as ADD, SUB, MPY logical operations such as AND, OR, XOR, NOT on given data types: 8-,16-,32-, or 64-bit values A n-1 A n-2... A 1 A 0 B n-1

More information

CSE370: Introduction to Digital Design

CSE370: Introduction to Digital Design CSE370: Introduction to Digital Design Course staff Gaetano Borriello, Brian DeRenzi, Firat Kiyak Course web www.cs.washington.edu/370/ Make sure to subscribe to class mailing list (cse370@cs) Course text

More information

Digital Logic Appendix A

Digital Logic Appendix A Digital Logic Appendix A Boolean Algebra Gates Combinatorial Circuits Sequential Circuits 1 Boolean Algebra George Boole ideas 1854 Claude Shannon, apply to circuit design, 1938 Describe digital circuitry

More information

Lecture 8: Sequential Multipliers

Lecture 8: Sequential Multipliers Lecture 8: Sequential Multipliers ECE 645 Computer Arithmetic 3/25/08 ECE 645 Computer Arithmetic Lecture Roadmap Sequential Multipliers Unsigned Signed Radix-2 Booth Recoding High-Radix Multiplication

More information

Lecture 7: Logic design. Combinational logic circuits

Lecture 7: Logic design. Combinational logic circuits /24/28 Lecture 7: Logic design Binary digital circuits: Two voltage levels: and (ground and supply voltage) Built from transistors used as on/off switches Analog circuits not very suitable for generic

More information

Table of Content. Chapter 11 Dedicated Microprocessors Page 1 of 25

Table of Content. Chapter 11 Dedicated Microprocessors Page 1 of 25 Chapter 11 Dedicated Microprocessors Page 1 of 25 Table of Content Table of Content... 1 11 Dedicated Microprocessors... 2 11.1 Manual Construction of a Dedicated Microprocessor... 3 11.2 FSM + D Model

More information

Fault Modeling. Fault Modeling Outline

Fault Modeling. Fault Modeling Outline Fault Modeling Outline Single Stuck-t Fault Model Other Fault Models Redundancy and Untestable Faults Fault Equivalence and Fault Dominance Method of oolean Difference Copyright 1998 Elizabeth M. Rudnick

More information

VLSI Design. [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.] ECE 4121 VLSI DEsign.1

VLSI Design. [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.] ECE 4121 VLSI DEsign.1 VLSI Design Adder Design [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.] ECE 4121 VLSI DEsign.1 Major Components of a Computer Processor Devices Control Memory Input Datapath

More information

Unit 1 - Digital System Design

Unit 1 - Digital System Design LCTRICAL AN COMPUTR NGINRING PARTMNT, OAKLAN UNIVRSITY C-37: Computer Hardare esign Winter 8 IGITAL SYSTM MOL FSM (CONTROL) + ATAPATH CIRCUIT Unit - igital System esign ATAPATH CIRCUIT Inputs clock FINIT

More information

Chapter 2 Fault Modeling

Chapter 2 Fault Modeling Chapter 2 Fault Modeling Jin-Fu Li Advanced Reliable Systems (ARES) Lab. Department of Electrical Engineering National Central University Jungli, Taiwan Outline Why Model Faults? Fault Models (Faults)

More information

Dictionary-Less Defect Diagnosis as Surrogate Single Stuck-At Faults

Dictionary-Less Defect Diagnosis as Surrogate Single Stuck-At Faults Dictionary-Less Defect Diagnosis as Surrogate Single Stuck-At Faults Chidambaram Alagappan and Vishwani D. Agrawal Department of Electrical and Computer Engineering Auburn University, Auburn, AL 36849,

More information

A COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER. Jesus Garcia and Michael J. Schulte

A COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER. Jesus Garcia and Michael J. Schulte A COMBINED 16-BIT BINARY AND DUAL GALOIS FIELD MULTIPLIER Jesus Garcia and Michael J. Schulte Lehigh University Department of Computer Science and Engineering Bethlehem, PA 15 ABSTRACT Galois field arithmetic

More information

Case Studies of Logical Computation on Stochastic Bit Streams

Case Studies of Logical Computation on Stochastic Bit Streams Case Studies of Logical Computation on Stochastic Bit Streams Peng Li 1, Weikang Qian 2, David J. Lilja 1, Kia Bazargan 1, and Marc D. Riedel 1 1 Electrical and Computer Engineering, University of Minnesota,

More information

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function

( c) Give logic symbol, Truth table and circuit diagram for a clocked SR flip-flop. A combinational circuit is defined by the function Question Paper Digital Electronics (EE-204-F) MDU Examination May 2015 1. (a) represent (32)10 in (i) BCD 8421 code (ii) Excess-3 code (iii) ASCII code (b) Design half adder using only NAND gates. ( c)

More information

VLSI Design Verification and Test Simulation CMPE 646. Specification. Design(netlist) True-value Simulator

VLSI Design Verification and Test Simulation CMPE 646. Specification. Design(netlist) True-value Simulator Design Verification Simulation used for ) design verification: verify the correctness of the design and 2) test verification. Design verification: Response analysis Specification Design(netlist) Critical

More information

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan

Combinational Logic. Mantıksal Tasarım BBM231. section instructor: Ufuk Çelikcan Combinational Logic Mantıksal Tasarım BBM23 section instructor: Ufuk Çelikcan Classification. Combinational no memory outputs depends on only the present inputs expressed by Boolean functions 2. Sequential

More information

ISSN (PRINT): , (ONLINE): , VOLUME-4, ISSUE-10,

ISSN (PRINT): , (ONLINE): , VOLUME-4, ISSUE-10, A NOVEL DOMINO LOGIC DESIGN FOR EMBEDDED APPLICATION Dr.K.Sujatha Associate Professor, Department of Computer science and Engineering, Sri Krishna College of Engineering and Technology, Coimbatore, Tamilnadu,

More information

EXPERIMENT Bit Binary Sequential Multiplier

EXPERIMENT Bit Binary Sequential Multiplier 12.1 Objectives EXPERIMENT 12 12. -Bit Binary Sequential Multiplier Introduction of large digital system design, i.e. data path and control path. To apply the above concepts to the design of a sequential

More information

A Hardware Approach to Self-Testing of Large Programmable Logic Arrays

A Hardware Approach to Self-Testing of Large Programmable Logic Arrays EEE TRANSACTONS ON COMPUTERS, VOL. C-30, NO. 11, NOVEMBER 1981 A Hardware Approach to Self-Testing of Large Programmable Logic Arrays 829 WLFRED DAEHN AND JOACHM MUCHA, MEMBER, EEE Abstract-A hardware

More information

vidyarthiplus.com vidyarthiplus.com vidyarthiplus.com ANNA UNIVERSITY- COMBATORE B.E./ B.TECH. DEGREE EXAMINATION - JUNE 2009. ELECTRICAL & ELECTONICS ENGG. - FOURTH SEMESTER DIGITAL LOGIC CIRCUITS PART-A

More information

Chapter 2 Basic Arithmetic Circuits

Chapter 2 Basic Arithmetic Circuits Chapter 2 Basic Arithmetic Circuits This chapter is devoted to the description of simple circuits for the implementation of some of the arithmetic operations presented in Chap. 1. Specifically, the design

More information

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) WINTER 17 EXAMINATION Subject Name: Digital Techniques Model Answer Subject Code: 17333 Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given

More information

on candidate s understanding. 7) For programming language papers, credit may be given to any other program based on equivalent concept.

on candidate s understanding. 7) For programming language papers, credit may be given to any other program based on equivalent concept. WINTER 17 EXAMINATION Subject Name: Digital Techniques Model Answer Subject Code: 17333 Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given

More information

ECE 341. Lecture # 3

ECE 341. Lecture # 3 ECE 341 Lecture # 3 Instructor: Zeshan Chishti zeshan@ece.pdx.edu October 7, 2013 Portland State University Lecture Topics Counters Finite State Machines Decoders Multiplexers Reference: Appendix A of

More information

Boolean Algebra. Digital Logic Appendix A. Postulates, Identities in Boolean Algebra How can I manipulate expressions?

Boolean Algebra. Digital Logic Appendix A. Postulates, Identities in Boolean Algebra How can I manipulate expressions? Digital Logic Appendix A Gates Combinatorial Circuits Sequential Circuits Other operations NAND A NAND B = NOT ( A ANDB) = AB NOR A NOR B = NOT ( A ORB) = A + B Truth tables What is the result of the operation

More information

Delay Testing from the Ivory Tower to Tools in the Workshop

Delay Testing from the Ivory Tower to Tools in the Workshop Delay Testing from the Ivory Tower to Tools in the Workshop Einar Johan Aas Department of Electronics and Telecommunications, NTNU Nordic Test Forum, Tallinn, 25. November 2008 Name, title of the presentation

More information

Tribhuvan University Institute of Science and Technology 2067

Tribhuvan University Institute of Science and Technology 2067 11CSc. MTH. -2067 Tribhuvan University Institute of Science and Technology 2067 Bachelor Level/First Year/ Second Semester/ Science Full Marks: 80 Computer Science and Information Technology Pass Marks:

More information

Circuit for Revisable Quantum Multiplier Implementation of Adders with Reversible Logic 1 KONDADASULA VEDA NAGA SAI SRI, 2 M.

Circuit for Revisable Quantum Multiplier Implementation of Adders with Reversible Logic 1 KONDADASULA VEDA NAGA SAI SRI, 2 M. ISSN (O): 2349-7084 International Journal of Computer Engineering In Research Trends Available online at: www.ijcert.org Circuit for Revisable Quantum Multiplier Implementation of Adders with Reversible

More information

CSE477 VLSI Digital Circuits Fall Lecture 20: Adder Design

CSE477 VLSI Digital Circuits Fall Lecture 20: Adder Design CSE477 VLSI Digital Circuits Fall 22 Lecture 2: Adder Design Mary Jane Irwin ( www.cse.psu.edu/~mji ) www.cse.psu.edu/~cg477 [Adapted from Rabaey s Digital Integrated Circuits, 22, J. Rabaey et al.] CSE477

More information

MODEL ANSWER SUMMER 17 EXAMINATION Subject Title: Principles of Digital Techniques

MODEL ANSWER SUMMER 17 EXAMINATION Subject Title: Principles of Digital Techniques MODEL ANSWER SUMMER 17 EXAMINATION Subject Title: Principles of Digital Techniques Subject Code: Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word

More information

CMP 338: Third Class

CMP 338: Third Class CMP 338: Third Class HW 2 solution Conversion between bases The TINY processor Abstraction and separation of concerns Circuit design big picture Moore s law and chip fabrication cost Performance What does

More information

課程名稱 : 數位邏輯設計 P-1/ /6/11

課程名稱 : 數位邏輯設計 P-1/ /6/11 課程名稱 : 數位邏輯設計 P-1/55 2012/6/11 Textbook: Digital Design, 4 th. Edition M. Morris Mano and Michael D. Ciletti Prentice-Hall, Inc. 教師 : 蘇慶龍 INSTRUCTOR : CHING-LUNG SU E-mail: kevinsu@yuntech.edu.tw Chapter

More information