Connect with us

stuck at fault

Discussion in 'Electronics Homework Help' started by vead, Jun 23, 2014.

Scroll to continue with content
  1. vead

    vead

    473
    14
    Nov 27, 2011
    hello
    I would like to know how we can analyze the fault using

    look at this pdf file
    I Image 1st
    Fault-free function z = AB+CD
    Faulty function zf = AB

    Fault-free function z = AB+CD
    Faulty function zf = AB+D

    Q1 how we will know that function AB is faulty and function AB+D is faulty?
    Q2 how to generate test vector for this two circuit ?
     

    Attached Files:

  2. Harald Kapp

    Harald Kapp Moderator Moderator

    11,013
    2,506
    Nov 17, 2011
    A1 Because zf=AB+D will not react to a change in C.
    A2 Find values for A, B, C and D such that z=AB+CD <> zf=AB+D.
     
  3. vead

    vead

    473
    14
    Nov 27, 2011
    I did not understand

    z = AB+CD
    z= output of circuit
    Q how do you know that C is correct but AB+D is faulty?


    Code:
    A  B  C  D  Z   ZF
    0   0  0  0  0   1 
    0   0  0  1  0   1
    0   0  1  0  0   1
    0   1  0  0  1   0
    0   1  0  1  0   1
    0   1  1  0  0   1
    0   1  1  1  0   1
    1   0  0  0  1   0
    1   0  0  1  1   0
    1   0  1  0  0   1
    1   0  1  1  0   1
    1   1  0  0  1   0
    1   1  0  1  1   0
    1   1  1  0  1   0
    1   1  1  0  1   0 
     
    Last edited: Jun 23, 2014
  4. Harald Kapp

    Harald Kapp Moderator Moderator

    11,013
    2,506
    Nov 17, 2011
    You don't know. You haven't understood the principle of fault simulation and fault detection. A stuck-at fault means that the signal is not changing, it is stuck at a fixed value. In this case C=1 which makes CD=D and therefore zf= AB+D.

    And your code table is completely wrong. Take for example the last line:
    A=1, B=1, D=0 AB+D= 1*1+0=1, not 0.
     
    vead likes this.
  5. vead

    vead

    473
    14
    Nov 27, 2011
    look this table which test vector is used to cover fault
    Code:
    A B C D z zf
    0 0 0 0 0 1
    0 0 0 1 0 1
    0 0 1 0 0 1
    0 0 1 1 1 0
    0 1 1 0 0 1
    0 1 1 1 1 0
    1 0 0 0 0 1
    1 0 0 1 0 1
    1 0 1 0 0 1
    1 0 1 1 1 0
    1 1 0 0 1 0
    1 1 0 1 1 0
    1 1 1 0 1 0
    1 1 1 1 1 0
    
     
    Last edited: Jun 24, 2014
  6. Harald Kapp

    Harald Kapp Moderator Moderator

    11,013
    2,506
    Nov 17, 2011
    Your table is still wrong.
    Plus you do not use just a single test vector. You apply all test vectors in order to find any possiblöe fault.
     
  7. vead

    vead

    473
    14
    Nov 27, 2011
    which section is wrong I think output Z and ZF
    I want to determine test vector that cover maximum fault
    look Image 1st
    Fault-free function z = AB+CD
    Faulty function zf = AB
    stuck at s-a-0 ,so C must be set to 1
    we know the one vector C =1

    Q. If we know the C , can we determine D ?
    there are 16 combination
    now we have 8 combination where c=1
    so we have to choose one combination that cover maximum fault
     
  8. Harald Kapp

    Harald Kapp Moderator Moderator

    11,013
    2,506
    Nov 17, 2011
    Read my post #4 and go through the full table to correct it.

    No, read my post #6. You will have more than one test vector to find as many possible stuck-at faults as possible. A single vector will not suffice.

    Your question in post #3 was:
    If you have a s-a-0 at C, then AB+CD becomes AB.
    If you have a s-a-1 at C, then AB+CD becomes AB+D.
    Your truth table doesn't fulfill either of these equations.
     
    vead likes this.
  9. vead

    vead

    473
    14
    Nov 27, 2011
    ok look this
    if A=1 , B=1, C=1 D=0
    Z=AB+CD=1*1+1*0=1+0=1
    Zf=AB+D=1*1+0=1+0=1
     
  10. Harald Kapp

    Harald Kapp Moderator Moderator

    11,013
    2,506
    Nov 17, 2011
    This is correct and since Z=ZF this vector is not suitable to detect an s-a-0 nor an s-a-1 on C or D since by A*B=1 the output is already defined to 1.
    So you need to find another vector where a change in C (orD) has an effect on Z and ZF and where a s-a0 or s-a-1 on C (or D) makes Z<>ZF.
     
    vead likes this.
  11. vead

    vead

    473
    14
    Nov 27, 2011
    look this table
    Code:
    A B C D Z Zf
    0 0 0 0 0 0
    0 0 0 1 0 0
    0 0 1 0 0 0
    0 0 1 1 1 0
    0 1 0 0 0 0
    0 1 0 1 0 0
    0 1 1 0 0 0
    0 1 1 1 1 0
    1 0 0 0 0 0
    1 0 0 1 0 0
    1 0 1 0 0 0
    1 0 1 1 1 0
    1 1 0 0 1 1
    1  1 0 1 1 1
    1 1 1 0 1 1
    1 1 1 1 1 1
    test vector for s-a-0
    Code:
    A B C D Z ZF
    0 0 1 0 0 0
    0 0 1 1 1 0
    0 1 1 0 0 0
    0 1 1 1 1 0
    1 0 1 0 0 0
    1 0 1 1 1 0
    1 1 1 0 1 1
    1 1 1 1 1 1
    there are two test vector that can cover maximum fault
    Code:
    A B C D Z ZF
    0 0 1 1 1 0
    0 1 1 1 1 0
     
  12. (*steve*)

    (*steve*) ¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd Moderator

    25,477
    2,820
    Jan 21, 2010
    0.0 + 1.1 = 1 and 0.0 + 1 = 1, so the first solution is wrong
    0.1 + 1.1 = 1 and 0.1 + 1 = 1, so the second solution is wrong.

    You need to understand boolean algebra.

    There are three possible patterns that result in a different answer for these two functions.
     
    Last edited: Jun 24, 2014
    vead likes this.
  13. (*steve*)

    (*steve*) ¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd Moderator

    25,477
    2,820
    Jan 21, 2010
    In boolean algebra, what do the following equate to?

    1.1 = ?
    1.0 = ?
    0.0 = ?
    0.1 = ?

    1+1 = ?
    1+0 = ?
    0+0 = ?
    0+1 = ?

    1.0 + 1 = ?
    0.1 + 1 = ?
    0.1 + 0 = ?
     
  14. vead

    vead

    473
    14
    Nov 27, 2011
    ok look this
    Code:
    A B C D Z ZF
    0 0 0 1 0 1
    0 1 0 1 0 1
    1 0 0 1 0 1
    Q1 IS it path sensitization method to detect fault
     
  15. vead

    vead

    473
    14
    Nov 27, 2011
    1.1 = 1
    1.0 = 0
    0.0 = 0
    0.1 = 0

    1+1 = 1
    1+0 = 1
    0+0 = 0
    0+1 = 1

    1.0 + 1 = 1
    0.1 + 1 = 1
    0.1 + 0 = 0
     
  16. (*steve*)

    (*steve*) ¡sǝpodᴉʇuɐ ǝɥʇ ɹɐǝɥd Moderator

    25,477
    2,820
    Jan 21, 2010
    OK, so you can do the boolean algebra, I'm not sure why you were making the mistakes earlier.

    If you look at those three examples you found, what should happen to the output when C changes in these cases? Does this allow you to test that processing of the C input is correct?

    Can you find other patterns to likewise test A, B, and D?

    In this case you generate 2*n tests to determine the functionality of a model with 2n states. Reducing your tests from 16 to 8 isn't a great achievement, but if you had 16 inputs, reducing the number of tests from 65,000 to 32 would be a huge improvement.
     
    vead likes this.
  17. vead

    vead

    473
    14
    Nov 27, 2011
    yes I can do

    Q1 IS it path sensitization method to detect fault

    I think no because path sensitization method to detect path or line fault
    if one line is fault we detect faulty path
    I want to learn path sensitization method for Image one
    suppose C line is faulty how to generate test vector?
     
  18. Harald Kapp

    Harald Kapp Moderator Moderator

    11,013
    2,506
    Nov 17, 2011
    vead likes this.
  19. vead

    vead

    473
    14
    Nov 27, 2011
    I have read And I am little bit confused
    IF B is 1 then how A will become 1 ?

    f –h –k –L
    A=1, B=1 H=D, j=0 k=D E=1 L=D
     
    Last edited: Jun 25, 2014
  20. Harald Kapp

    Harald Kapp Moderator Moderator

    11,013
    2,506
    Nov 17, 2011
    1) which page of the document dio you refer to? A and B occur more than once.
    2) A is an input, it doesn't "become" 1, you set it to either 0 or 1
     
Ask a Question
Want to reply to this thread or ask your own question?
You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.
Electronics Point Logo
Continue to site
Quote of the day

-