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

Size: px
Start display at page:

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

Transcription

1 Overview. Introduction 2. Testability measuring 3. Design for testability 4. Built in Self-Test

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

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

4 Built-In Self-Test System-on-Chip 4 9. S c U D L e g Da c o r e c I C U D L C o p c o r E D n o m Advances in microelectronics technology have introduced a new paradigm in IC design: System-on-Chip (SoC) Many systems are nowadays designed by embedding predesigned and preverified comple functional blocks (cores) into one single die Such a design style allows designers to reuse previous designs and will lead to shorter time-to-market and reduced cost SoC structure breakdown: 0% UDL 75% memory 50% in-house cores 60-70% soft cores

5 Self-Test in Comple 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 eternal ATE Combined solution mostly on-chip, ATE needed for control On-chip solution BIST

6 Self-Test in Comple 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 eternal ATE Combined solution mostly on-chip, ATE needed for control On-chip solution BIST

7 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)

8 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

9 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

10 Costly Test Problems Alleviated by BIST Increasing chip logic-to-pin ratio harder observability Increasingly dense devices and faster clocks Increasing test generation and application times Increasing size of test vectors stored in ATE Epensive ATE needed for GHz clocking chips Hard testability insertion designers unfamiliar with gatelevel logic, since they design at behavioral level In-circuit testing no longer technically feasible Shortage of test engineers Circuit testing cannot be easily partitioned

11 BIST in Maintenance and Repair Useful for field test and diagnosis (less epensive than a local automatic test equipment) 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

12 Benefits and Costs of BIST with DFT Level Design and test Fabrication Manuf. Test Maintenance test Diagnosis and repair Service interruption Chips + / Boards + / System + / Cost increase - Cost saving +/- Cost increase may balance cost reduction

13 Economics BIST Costs Chip area overhead for: Test controller Hardware pattern generator Hardware response compacter Testing of BIST hardware Pin overhead -- At least pin needed to activate BIST operation Performance overhead etra path delays due to BIST Yield loss due to increased chip area or more chips In system because of BIST Reliability reduction due to increased area Increased BIST hardware compleity happens when BIST hardware is made testable

14 Faults tested: BIST Benefits Single stuck-at faults Delay faults Single stuck-at faults in BIST hardware BIST benefits Reduced testing and maintenance cost Lower test generation cost Reduced storage / maintenance of test patterns Simpler and less epensive ATE Can test many units in parallel Shorter test application times Can test at functional system speed

15 BIST Techniques BIST techniques are classified: 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 eecuting 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)

16 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

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

18 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 eisting scan architecture Drawback: Long test application time Test application: 00 T 00 T 00T 00 T Number of clocks = = 20

19 Scan-Path Design IN Combinational circuit OUT The compleity of testing is a function of the number of feedback loops and their length Scan-IN q R q The longer a feedback loop, the more clock cycles are needed to initialize and sensitize patterns Scan-register is a aregister with both shift and parallel-load capability Scan-OUT T = 0 - normal working mode T = - scan mode q Scan-IN T & & D C T q Scan-OUT Normal mode : flip-flops are connected to the combinational circuit Test mode: flip-flops are disconnected from the combinational circuit and connected to each other to form a shift register

20 Built-In Self-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 = 0

21 BILBO BIST Architecture Working modes: B B2 0 0 Reset 0 Flip-flop (normal) 0 Scan mode Test mode Testing modes: CC: LFSR - TPG LFSR 2 - SA CC2: LFSR 2 - TPG LFSR - SA B B2 B B2 LFSR CC LFSR 2 CC2

22 BILBO BIST Architecture: Eample Testing epoch I: LFSR generates tests for CUT and CUT2 BILBO2 (LFSR3) compacts CUT (CUT2) Testing epoch II: BILBO2 generates test patterns for CUT3 LFSR3 compacts CUT3 response Source: VLSI Test: Bushnell-Agrawal

23 Pattern Generation Store in ROM too epensive Ehaustive Pseudo-ehaustive Pseudo-random (LFSR) Preferred method Binary counters use more hardware than LFSR Modified counters Test pattern augmentation LFSR combined with a few patterns in ROM Hardware diffracter generates pattern cluster in neighborhood of pattern stored in ROM

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

25 Some Definitions LFSR Linear feedback shift register, hardware that generates pseudo-random pattern sequence BILBO Built-in logic block observer, etra 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 Ehaustive testing Apply all possible 2 n patterns to a circuit with n inputs Pseudo-ehaustive testing Break circuit into small, overlapping blocks and test each ehaustively Pseudo-random testing Algorithmic pattern generator that produces a subset of all possible tests with most of the properties of randomly-generated patterns

26 More Definitions Irreducible polynomial Boolean polynomial that cannot be factored Primitive polynomial Boolean polynomial p() that can be used to compute increasing powers n of n modulo p() to obtain all possible non-zero polynomials of degree less than p() Signature Any statistical circuit property distinguishing between bad and good circuits TPG Hardware test pattern generator PRPG Hardware Pseudo-Random Pattern Generator MISR Multiple Input Response Analyzer

27 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Standard LFSR Modular LFSR Polynomial: P() =

28 Theory of LFSR c c 2 c 3 y y 2 y 3 y 4 c y 0 y j y j ( t) = y ( t ) ( t) = y0( t j) y = ( t) j ( t) y0 j where j represents the time translation units j for j j 0 j = y0( t) = c j y j ( t) j= n j = n 0( t) = c j y0 j= y ( t) j

29 Theory of LFSR c c 2 c 3 y y 2 y 3 y 4 c y 0 j = n 0( t) = c j y0 j= y ( t) j n = y t y t 0 ( ) = 0( ) = j c j j j j = n j= j y0 ( t)( c j + ) = Polynomial: y0 ( t) Pn ( ) = 0 0

30 Theory of LFSR c c 2 c 3 y y 2 y 3 y 4 c y 0 Characteristic polynomial: y0 ( t) Pn ( ) = 0 For y where 0 ( t) 0 P n P n ( ) = ( ) = j n + = j= 0 c j j

31 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Polynomial: P() =

32 Matri 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 matri) 2 3 4

33 Pseudorandom Test Generation Polynomial: P() = 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) t t

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

35 Theory of LFSR: Eamples Polynomials of degree n=3 (eamples): k = 2 n = 2 3 =7 Primitive polynomials: The polynomials will divide evenly the polynomial 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): = + 2 ( + )( + + = ) ( + )( 2 + ) The polynomials don t divide evenly the polynomial 7 +

36 Theory of LFSR: Eamples Comparison of test sequences generated: Primitive polynomials Non-primitive polynomials

37 Theory of LFSR: Eamples Reducible polynomial (non-primitive): = ( + )( ) Primitive polynomial Multiplication of two primitive polynomials: Is a primitive polynomial?

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

39 Theory of LFSR: Eamples Non-primitive polynomial Primitive polynomial

40 Theory of LFSR: Eamples Primitive polynomial Zero generation:

41 Theory of LFSR: Reciprocal Polynomials The reciprocal polynomial of P(X) is defined by: (X) =X N P N (/X) = X N { + C j X -J } (X) = X N + C j X N-J for i N Thus every coefficient C i in P(X) is replaced by C N-I. Eample: The reciprocal of polynomial P 3 (X) = + X + X 3 is P 3 (X) = + X 2 + X 3 The reciprocal of a primitive polynomial is also primitive

42 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

43 Theory of LFSR: Primitive Polynomials Eamples of PP (eponents of terms): Number of PP of degree n n No n other n other

44 Deterministic Synthesis of LFSR Generation of the polynomial and seed for the given test sequence Creation of the shortest bit-stream: Epected shortest LFSR sequence: Given test sequence: () 000 (2) 00 (3) 00 (4) Seed 0 (4) (3) 000 (2) ()

45 Deterministic Synthesis of LFSR Generation of the polynomial and seed for the given test sequence Epected shortest LFSR sequence: 0 (4) (3) 0 00 (2) () System of linear equations: : = We are looking for values of i

46 Deterministic Synthesis of LFSR Generation of the polynomial and seed for the given test sequence System of linear equations: = Polynomial: Seed: 0,2,4,6 4,6,3 2,4,2,3,4,6 Solving the equation by Gaussian elimination: = Solution:

47 Deterministic Synthesis of LFSR Embedding deterministic test patterns into LFSR sequence: Polynomial: Seed: Given deterministic test sequence: () 000 (2) 00 (3) 00 (4) 0 5 LFSR sequence: () 0 (4) (2) 0 (3) 00 (4) 00 (3) (5) 000 (2) (6) 000 (7) 000 ()

48 BIST: Test Generation Pseudorandom Test generation by LFSR: breakpoint Fault Coverage Problems: Very long test application time Low fault coverage Area overhead Additional delay Fault Coverage Possible solutions Weighted pattern PRPG Combining pseudorandom test with deterministic test Multiple seed Hybrid BIST Time Time

49 BIST: Fault Coverage Fault coverage is rapidly growing: 00% 2 0% 93,75% 4. pat. 87,5% n Combinational circuit under test Faulty functions covered by. pattern 3. pattern Faulty functions covered by 2. pattern 75% Number of patterns Truth table: Patterns Functions n - 2 tested 50%! 50% 2 n Number of functions n 2

50 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

51 BIST: Different Techniques Pseudorandom Test generation by LFSR: Full identification is achieved only after 2 n input combinations have been tried out (ehaustive 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 may be 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 ecercising its logic

52 BIST: Structural Approach to Test 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

53 BIST: Two Approaches to Test Testing of functions: 00% 0% 93,75% 4. pat. 87,5% 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

54 BIST: Other test generation methods Universal test sets. Ehaustive test (trivial test) 2. Pseudo-ehaustive test Properties of ehaustive 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

55 BIST: Other test generation methods Pseudo-ehaustive test sets: Output function verification maimal parallel testability partial parallel testability Segment function verification Segment function verification Primitive polynomials Output function verification F & 2 6 = >> 46 = 64 > 6 Ehaustive test Pseudoehaustive sequential Pseudoehaustive parallel

56 Testing ripple-carry adder Output function verification (maimum parallelity) Ehaustive 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

57 Testing carry-lookahead adder General epressions: i i i b a G = i i i i i b a b a P = = n n n n C P G C 2 2 ) ( = = n n n n n n n n n n n n C P P P G G C P G P G C n-bit carry-lookahead adder: C P P P P P G P G G C = ),, ( C b a f a b C b C a a b PC G C = = = ) )( )( ( C a b b a b a b a b a b a P PC P =

58 Testing carry-lookahead adder P 3 P2 PC 0 = a3b3 a3b3 )( a2b2 a2b2 )( ab ab ) ( C 0 R Testing 0 Testing For 3-bit carry lookahead adder for testing only this part of the circuit at least 9 test patterns are needed Increase in the speed implies worse testability

59 BIST: Other test generation methods Output function verification (partial parallelity) F F 3 F 2 F 4 F F (, 2 ) F 2 (, 3 ) F 3 ( 2, 3 ) F 4 ( 2, 4 ) F 5 (, 4 ) F 6 ( 3, 4 ) Ehaustive testing - 6 Pseudo-ehaustive, full parallel - 4 Pseudo-ehaustive, partially parallel - 6

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

61 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

62 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

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

64 BIST: Weighted pseudorandom test Problem: random-pattern-resistant faults Solution: weighted pseudorandom testing The probabilities of pseudorandom signals are weighted, the weights are determined by circuit analysis Faults to be tested 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 circuit inputs for each gate to be the number of PIs or SRLs in the backtrace cone PI - primary inputs SRL - scan register latch NDI - relative measure of the number of faults to be detected through the gate I & G

65 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 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

66 BIST: Weighted pseudorandom test Eample: 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

67 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 WV - the value to which the input is biased WV = 0, if W0 > W else WV = Calculation of W0, W Function WO I W I AND WO G R I W G NAND W G R I WO G OR R I WO G W G NOR R I W G WO G

68 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 PIs Function WO I W I OR R I WO G W G NOR R I W G WO G W0 3 = W 3 = 2

69 BIST: Weighted pseudorandom test Calculation of signal probabilities: 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 & G WF - weighting factor indicating the amount of biasing toward weighted value WF = ma {W0,W} / min {W,W0} Probability: P = WF / (WF + ) For PI : W0 = 6 W = P = /7 = 0.5 For PI 2 and PI 3 : W0 = 2 W = 3 P = 3/5 = 0.6 For PI 4 - PI 6 : W0 = 3 W = 2 P = 2/5 = 0.4

70 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

71 BIST: 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

72 BIST: 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

73 Pseudorandom Test Generation LFSR Linear Feedback Shift Register: Standard LFSR Modular LFSR Polynomial: P() =

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

75 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: Eample: R = r m- r m-2 r r 0 - m-bit binary sequence R() = r m- m- + r m-2 m r + r 0 - polynomial in 00 R() = Only the coefficients are of interest, not the actual value of However, for = 2, R() is the decimal value of the bit string

76 BIST: Signature Analysis Arithmetic of coefficients: - linear algebra over the field of 0 and : all integers mapped into either 0 or - mapping: representation of any integer n by the remainder 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) Eamples:

77 Theory of LFSR Characteristic Polynomials: = = = ) ( m m m m m c c c c c G Multiplication of polynomials

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

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

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

81 BIST: Signature Analysis G() IN: P() P( ) G( ) = G() Shifted into LFSR Compressor The division process can be mechanized using LFSR The divisor polynomial G() is defined by the feedback connections Shift creates 5 which is replaced by 5 = Response P() Signature = R() =

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

83 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 L N 2 Probability of aliasing: - aliasing is possible P = L 2 2 N L XXXXX L >> L P = 2 N N

84 BIST: Signature Analysis Parallel Signature Analyzer: Single Input Signature Analyser UUT UUT Multiple Input Signature Analyser (MISR)

85 BIST: Signature Analysis Signature calculating for multiple outputs: LFSR - Test Pattern Generator LFSR - Test Pattern Generator Combinational circuit Combinational circuit Multipleer Multipleer LFSR - Signature analyzer LFSR - Signature analyzer

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

87 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 eecute a self-test At minimum the hardcore usually includes power, ground, and clock circuitry Hardcore should be tested by eternal test equipment or it should be designed selftestable by using various forms of redundancy

88 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

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

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

91 BIST Embedding Eample 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

92 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 Scan chain CUT... Scan chain CUT TPG SA MISR SI IC Test Controller SO Error

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

94 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

95 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 test Multiple seed Bit flipping Hybrid BIST Fault Coverage Time

96 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

97 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

98 Optimization of Hybrid BIST Cost of BIST: FAST estimation Number of remaining faults after applying k pseudorandom test patterns r NOT (k) # faults 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 # tests needed k r DET (k) r NOT (k) FC(k) t(k) % % % % % % % % % % % % % % % % % 0

99 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 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 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

100 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 Net PR pattern Yes End Fault table based: ATPG Fault table update All PR patterns? No Net PR pattern Yes End

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

102 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 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 Net PR pattern Yes End Updated fault tabel T n+ T p To be detected faults

103 Eperimental Data: HBIST 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 L MAX L OPT S MAX S OPT B k C TOTAL C C C C C C C C C C

104 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 Pseudorandom test: 2 n - Solution: many seeds: Time

105 Store-and-Generate Test Architecture # seeds ROM TPG UUT ADR Seeds RD Window Counter 2 Counter ROM contains test patterns for 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 net pattern P k+ beginning of the new window CL Pseudorandom test windows Seeds

106 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 M Constraints Minimize L at given M and 00% FC

107 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

108 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 includeed into sequence and updated The procedure ends when 00% fault coverage is achieved

109 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

110 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 eploit 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

111 Functional BIST Quality 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%)

112 Eample: Functional BIST Functional BIST quality analysis Samples from N=20 cycles DB=64 Register block Control K Data SB=05 ALU Signature analyser K*N Functional test Data compression: N*SB / DB = 97 Fault simulator Fault coverage Test patterns (samples) are produced on-line during the working mode

113 Hybrid Functional BIST To improve the quality of FBIST we introduce the method of Hybrid FBIST The idea of Hybrid FBIST consists in using for test purposes the miture 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) Tradeoff should be found between the testing time and the HW/SW overhead cost

114 Functional Hybrid Self-Test 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

115 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 epenses Opt. length Problem: minimize C Total

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

117 Hybrid BIST for Multiple Cores Embedded tester for testing multiple cores Embedded Tester C2670 C3540 Test Controller BIST Test access mechanism BIST Tester Memory BIST BIST BIST C908 C880 C355 SoC

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

119 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 epensive full DT cost curve?

120 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

121 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

122 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

123 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

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

125 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 LFSR s298 Scan Path Scan Path Scan Path Scan Path LFSR 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 LFSR Scan Path Scan Path Scan Path LFSR is needed. Scan Path Scan Path SoC s423 s838

126 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

127 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

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

129 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

130 Fault-Model Free Fault Diagnosis Combined cause-effect and effect-cause diagnosis Effect Effect Cause Faulty area Cause Faulty area ) Cause-Effect Fault Diagnosis Suspected faulty area is located Faulty system 2) Effect-Cause Fault Diagnosis Faulty block is located in the suspected faulty area 3) Fault Reasoning Failing test patterns are mapped into the suspected defect or into a set of suspected defects in the faulty block Test Faulty block Fault Failing test patterns

131 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

132 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

133 Built-In Fault Diagnosis Pseudorandom test fault simulation Binary search with bisectioning of test patterns All faults New faults Coverage % % % % % % % % % % Average number of test sessions: 3,3 Average number of clocks: 8,67 0

134 Built-In Fault Diagnosis Pseudorandom test fault simulation Binary search with bisectioning of faults All faults New faults Coverage % % % % % % % % % % Average number of test sessions: 3,06 Average number of clocks: 6,43 0

135 Built-In Fault Diagnosis Diagnosis with multiple signatures: Test pattern generator SA SA 2 Fault CUD D 3 D D 2 D 7 D 5 D6 SA 3 D 4 SA SA 2 SA 3

136 Built-In Fault Diagnosis Diagnosis with multiple signatures: No Codeword Diagnosis h 0 0 R Diagnostic tree R i 0 0 R R, R 2, R 3 h R j 0 R 2 P F/00 F/00 k l 0 R, R 2 R 3 v F/ F/0 k P i P j R 2 F/0 l R 3 F/ R, R 2 v R, R 2, R 3

137 Built-In Fault Diagnosis BIST with multiple signature analyzers Faulty signature Fault Test pattern generator CUD Intersection using tests Faulty signature Correct signature SA SA 2 SA SA 2 SA 3 Intersection using SA-s D 3 D D 2 D 7 D 5 D 6 Optimization of the interface between CUD and SA-s SA 3 D 4

138 Built-In Fault Diagnosis SA Resolution 5 SA Resolution 0 SA Resolution SA Test length 5 SA Test length 0 SA Test length Average resolution Gain in speed of diagnosis Optimal number of failed patterns ALL Average test length Diagnosis with multiple signatures: Measured: - average resolution - average test length Compared: SA, 5SA, 0SA Gain in test length: 6 times Failed patterns

139 Etended Fault Models Etensions of the parallel critical path tracing for two large general fault classes for modeling physical defects: 0 0 Defect Multiple fault Resistive bridge fault SAF Conditional fault Pattern fault Constrained SAF Single faulty signal X-fault Byzantine fault Bridges Stuck-opens Multiple faulty signal

140 Diagnosis of Fault Model Free Defects Real test eperiment Simulation Circuit Under Diagnosis τ t Faulty machine FM(f) Fault evidence: for test pattern t σ t l t f Fault e(f,t) = ( τ t, σ t, l t, γ t ) γ t = min ( σ t, l t ) for full test T (sum) e(f,t) = ( τ, σ, l, γ) Test pattern t Copyright: H.J.Wunderlich 2007

141 Diagnosis of Fault Model Free Defects Real test eperiment Simulation Different classical fault cases Circuit Under Diagnosis Faulty machine FM(f) Classic model l t τ t γ t τ t σ t l t Test pattern t f Fault Single SAF Multiple SAF 0 >0 0 Single conditional SAF >0 0 0 Multiple cond. SAF >0 >0 0 Delay fault >0 0 >0 General case >0 >0 >0 Copyright: H.J.Wunderlich 2007

142 Diagnosis of Fault Model Free Defects Real test eperiment Circuit Under Diagnosis τ t σ t l t Test pattern t Simulation Faulty machine FM(f) f Fault Ranking (on the top the most suspicious faults): () By increasing γ T (single SAF on top) (2) If γ T are equal then by decreasing σ T (3) If γ T and σ T are equal then by increasing l T γ t = min ( σ t, l t ) Eample: SAF γ T σ T l T f f f f f f f Copyright: H.J.Wunderlich 2007

143 Fault Diagnosis Without Fault Models Transistor level Reverse defect mapping Logic level & & & & & & R IN M M 2 RT Level + * M 3 R Defect W d Logic level Defective area dy System level Error detection Error (defective area) diagnosis

144 Fault Model Free Fault Diagnosis System network graph Test response: 0 0 S S 2 S 5 S 8 S S 3 S 6 S 9 Diagnosis: s S 4 S 7 S 0 No match Because of the unidirectional distortions of test responses, rectification is possible Rectified code Diagnostic table Technical University Tallinn, ESTONIA 0 0

Built-In Self-Test. Outline

Built-In Self-Test. Outline 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

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

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

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

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

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

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

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

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

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

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

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

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 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

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

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

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

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

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

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

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

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

Latches. October 13, 2003 Latches 1

Latches. October 13, 2003 Latches 1 Latches The second part of CS231 focuses on sequential circuits, where we add memory to the hardware that we ve already seen. Our schedule will be very similar to before: We first show how primitive memory

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

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

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

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

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

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

DIGITAL LOGIC CIRCUITS

DIGITAL LOGIC CIRCUITS DIGITAL LOGIC CIRCUITS Introduction Logic Gates Boolean Algebra Map Specification Combinational Circuits Flip-Flops Sequential Circuits Memory Components Integrated Circuits Digital Computers 2 LOGIC GATES

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

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

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

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

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

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

Introduction to Wireless & Mobile Systems. Chapter 4. Channel Coding and Error Control Cengage Learning Engineering. All Rights Reserved.

Introduction to Wireless & Mobile Systems. Chapter 4. Channel Coding and Error Control Cengage Learning Engineering. All Rights Reserved. Introduction to Wireless & Mobile Systems Chapter 4 Channel Coding and Error Control 1 Outline Introduction Block Codes Cyclic Codes CRC (Cyclic Redundancy Check) Convolutional Codes Interleaving Information

More information

Lecture 13: Sequential Circuits, FSM

Lecture 13: Sequential Circuits, FSM Lecture 13: Sequential Circuits, FSM Today s topics: Sequential circuits Finite state machines 1 Clocks A microprocessor is composed of many different circuits that are operating simultaneously if each

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

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

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

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

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

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

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

Chapter 7. Sequential Circuits Registers, Counters, RAM

Chapter 7. Sequential Circuits Registers, Counters, RAM Chapter 7. Sequential Circuits Registers, Counters, RAM Register - a group of binary storage elements suitable for holding binary info A group of FFs constitutes a register Commonly used as temporary storage

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

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

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

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

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

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

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

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

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

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

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

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

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

Boolean Algebra. Digital Logic Appendix A. Boolean Algebra Other operations. Boolean Algebra. Postulates, Identities in Boolean Algebra

Boolean Algebra. Digital Logic Appendix A. Boolean Algebra Other operations. Boolean Algebra. Postulates, Identities in Boolean Algebra Digital Logic Appendix A Gates Combinatorial Circuits Sequential Circuits George Boole ideas 1854 Claude Shannon, apply to circuit design, 1938 (piirisuunnittelu) Describe digital circuitry function programming

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

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

CS470: Computer Architecture. AMD Quad Core

CS470: Computer Architecture. AMD Quad Core CS470: Computer Architecture Yashwant K. Malaiya, Professor malaiya@cs.colostate.edu AMD Quad Core 1 Architecture Layers Building blocks Gates, flip-flops Functional bocks: Combinational, Sequential Instruction

More information

CPU DESIGN The Single-Cycle Implementation

CPU DESIGN The Single-Cycle Implementation CSE 202 Computer Organization CPU DESIGN The Single-Cycle Implementation Shakil M. Khan (adapted from Prof. H. Roumani) Dept of CS & Eng, York University Sequential vs. Combinational Circuits Digital circuits

More information

Fundamentals of Digital Design

Fundamentals of Digital Design Fundamentals of Digital Design Digital Radiation Measurement and Spectroscopy NE/RHP 537 1 Binary Number System The binary numeral system, or base-2 number system, is a numeral system that represents numeric

More information

Chapter 1. Binary Systems 1-1. Outline. ! Introductions. ! Number Base Conversions. ! Binary Arithmetic. ! Binary Codes. ! Binary Elements 1-2

Chapter 1. Binary Systems 1-1. Outline. ! Introductions. ! Number Base Conversions. ! Binary Arithmetic. ! Binary Codes. ! Binary Elements 1-2 Chapter 1 Binary Systems 1-1 Outline! Introductions! Number Base Conversions! Binary Arithmetic! Binary Codes! Binary Elements 1-2 3C Integration 傳輸與介面 IA Connecting 聲音與影像 Consumer Screen Phone Set Top

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

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

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

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3

Digital Logic: Boolean Algebra and Gates. Textbook Chapter 3 Digital Logic: Boolean Algebra and Gates Textbook Chapter 3 Basic Logic Gates XOR CMPE12 Summer 2009 02-2 Truth Table The most basic representation of a logic function Lists the output for all possible

More information

Section 3: Combinational Logic Design. Department of Electrical Engineering, University of Waterloo. Combinational Logic

Section 3: Combinational Logic Design. Department of Electrical Engineering, University of Waterloo. Combinational Logic Section 3: Combinational Logic Design Major Topics Design Procedure Multilevel circuits Design with XOR gates Adders and Subtractors Binary parallel adder Decoders Encoders Multiplexers Programmed Logic

More information

ECE/CS 250 Computer Architecture

ECE/CS 250 Computer Architecture ECE/CS 250 Computer Architecture Basics of Logic Design: Boolean Algebra, Logic Gates (Combinational Logic) Tyler Bletsch Duke University Slides are derived from work by Daniel J. Sorin (Duke), Alvy Lebeck

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

ECE 250 / CPS 250 Computer Architecture. Basics of Logic Design Boolean Algebra, Logic Gates

ECE 250 / CPS 250 Computer Architecture. Basics of Logic Design Boolean Algebra, Logic Gates ECE 250 / CPS 250 Computer Architecture Basics of Logic Design Boolean Algebra, Logic Gates Benjamin Lee Slides based on those from Andrew Hilton (Duke), Alvy Lebeck (Duke) Benjamin Lee (Duke), and Amir

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

Combinational Logic Design Combinational Functions and Circuits

Combinational Logic Design Combinational Functions and Circuits Combinational Logic Design Combinational Functions and Circuits Overview Combinational Circuits Design Procedure Generic Example Example with don t cares: BCD-to-SevenSegment converter Binary Decoders

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

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

CMPEN 411 VLSI Digital Circuits Spring 2012 Lecture 17: Dynamic Sequential Circuits And Timing Issues

CMPEN 411 VLSI Digital Circuits Spring 2012 Lecture 17: Dynamic Sequential Circuits And Timing Issues CMPEN 411 VLSI Digital Circuits Spring 2012 Lecture 17: Dynamic Sequential Circuits And Timing Issues [Adapted from Rabaey s Digital Integrated Circuits, Second Edition, 2003 J. Rabaey, A. Chandrakasan,

More information

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

Review. EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power) EECS 50 - Components and esign Techniques for igital Systems Lec 6 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

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process Parity Checker Example A string of bits has even parity if the number of 1 s in the string is even. Design a circuit that accepts a bit-serial stream of bits and outputs a 0 if the parity thus far is even

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

EECS150 - Digital Design Lecture 23 - FSMs & Counters

EECS150 - Digital Design Lecture 23 - FSMs & Counters EECS150 - Digital Design Lecture 23 - FSMs & Counters April 8, 2010 John Wawrzynek Spring 2010 EECS150 - Lec22-counters Page 1 One-hot encoding of states. One FF per state. State Encoding Why one-hot encoding?

More information

Memory, Latches, & Registers

Memory, Latches, & Registers Memory, Latches, & Registers 1) Structured Logic Arrays 2) Memory Arrays 3) Transparent Latches 4) How to save a few bucks at toll booths 5) Edge-triggered Registers L13 Memory 1 General Table Lookup Synthesis

More information

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10)

ELEC Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10) ELEC 2200-002 Digital Logic Circuits Fall 2014 Sequential Circuits (Chapter 6) Finite State Machines (Ch. 7-10) Vishwani D. Agrawal James J. Danaher Professor Department of Electrical and Computer Engineering

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

CSE140: Components and Design Techniques for Digital Systems. Decoders, adders, comparators, multipliers and other ALU elements. Tajana Simunic Rosing

CSE140: Components and Design Techniques for Digital Systems. Decoders, adders, comparators, multipliers and other ALU elements. Tajana Simunic Rosing CSE4: Components and Design Techniques for Digital Systems Decoders, adders, comparators, multipliers and other ALU elements Tajana Simunic Rosing Mux, Demux Encoder, Decoder 2 Transmission Gate: Mux/Tristate

More information

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits.

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits. CS211 Computer Architecture Digital Logic l Topics l Transistors (Design & Types) l Logic Gates l Combinational Circuits l K-Maps Figures & Tables borrowed from:! http://www.allaboutcircuits.com/vol_4/index.html!

More information

T st Cost Reduction LG Electronics Lee Y, ong LG Electronics 2009

T st Cost Reduction LG Electronics Lee Y, ong LG Electronics 2009 Test Cost Reduction LG Electronics Lee, Yong LG Electronics 2009 Contents Introduction Key factors for test cost reduction in DFT Test vector volume Low cost ATE Test time Reuse a large block Test cost

More information

Binary addition example worked out

Binary addition example worked out Binary addition example worked out Some terms are given here Exercise: what are these numbers equivalent to in decimal? The initial carry in is implicitly 0 1 1 1 0 (Carries) 1 0 1 1 (Augend) + 1 1 1 0

More information

CMPE12 - Notes chapter 1. Digital Logic. (Textbook Chapter 3)

CMPE12 - Notes chapter 1. Digital Logic. (Textbook Chapter 3) CMPE12 - Notes chapter 1 Digital Logic (Textbook Chapter 3) Transistor: Building Block of Computers Microprocessors contain TONS of transistors Intel Montecito (2005): 1.72 billion Intel Pentium 4 (2000):

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

DE58/DC58 LOGIC DESIGN DEC 2014

DE58/DC58 LOGIC DESIGN DEC 2014 Q.2 a. In a base-5 number system, 3 digit representations is used. Find out (i) Number of distinct quantities that can be represented.(ii) Representation of highest decimal number in base-5. Since, r=5

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 25 Shifters and Counters. Recap

EECS150 - Digital Design Lecture 25 Shifters and Counters. Recap EECS150 - Digital Design Lecture 25 Shifters and Counters Nov. 21, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof. John

More information

DIGITAL LOGIC CIRCUITS

DIGITAL LOGIC CIRCUITS DIGITAL LOGIC CIRCUITS Introduction Logic Gates Boolean Algebra Map Specification Combinational Circuits Flip-Flops Sequential Circuits Memor Components Integrated Circuits BASIC LOGIC BLOCK - GATE - Logic

More information

CS61C : Machine Structures

CS61C : Machine Structures CS 61C L15 Blocks (1) inst.eecs.berkeley.edu/~cs61c/su05 CS61C : Machine Structures Lecture #15: Combinational Logic Blocks Outline CL Blocks Latches & Flip Flops A Closer Look 2005-07-14 Andy Carle CS

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