Introduction to Diagnosis

  • Mohammad Tehranipoor
  • Ke Peng
  • Krishnendu Chakrabarty


The test techniques are used to determine whether a circuit is faulty, which are necessary to ensure the correct operation of digital systems. However, these techniques may not be able to locate the failure in the faulty circuits. Once a circuit is found to be faulty, fault diagnosis is needed to identify the fault location. Fault diagnosis refers to the process of narrowing down the possible locations of the defects, and finally locating the defects in faulty integrated circuits. The aim of the diagnosis process is to identify a subset of faults that can explain all the failures or errors observed when applying test patterns to the chip. In the process of searching for the failure root causes, the diagnosis procedure can reduce the candidate locations down to only a few possibilities. Therefore, it is very helpful to ramp up the manufacturing yield and reduce the debugging time. Fault diagnosis may also be helpful in identifying and replacing the faulty sub-circuit in a chip. This chapter introduces the basic concepts and algorithms for diagnosing combinational circuits, scan chains, as well as chip-level diagnosis. When diagnosing the combinational circuits, it is assumed that the scan chains are fault-free. Following that, this chapter discusses the challenges and methodologies of scan chain and chip-level diagnosis.


  1. 1.
    J. B. Khare, W. Maly, S. Griep, and D. Schmitt-Landsiedel, “Yield-oriented computer-aided defect diagnosis”, in IEEE Trans. Semiconductor Manufacturing, pp. 195–206, 1995Google Scholar
  2. 2.
    J. Segura, A. Keshavarzi, J. Soden, and C. Hawkins, “Parametric failures in CMOS ICs: A defect-based analysis”, in Proc. Internatial Test Conf., pp. 90–99, 2002Google Scholar
  3. 3.
    R. E. Tulloss, “Size optimization of fault dictionaries”, in Proceedings of the 1978 Semiconductor Test Conference, pp. 264–265, 1978Google Scholar
  4. 4.
    I. Pomeranz and S. M. Reddy, “On the generation of small dictionaries for fault location”, in Proceedings of the 1992 International Conference on Computer-Aided Design, pp. 272–279, 1992Google Scholar
  5. 5.
    V. Boppana and W. K. Fuchs, “Fault dictionary compaction by the elimination of output sequences”, in Proceedings of the 1994 International Conference on Computer-Aided Design, pp. 576–579, 1994Google Scholar
  6. 6.
    P. G. Ryan, W. K. Fuchs, and I. Pomeranz, “Fault dictionary compression and equivalence class computation for sequential circuits”, in Proceedings of 1993 International Conference on Computer-Aided Design, pp. 508–511, 1993Google Scholar
  7. 7.
    P. G. Ryan, “Compressed and dynamic fault dictionaries for fault isolation”, in CRHC Technical Report UILU-ENG-94-2234, 1994Google Scholar
  8. 8.
    V. Boppana, I. Hartanto, and W. K. Fuchs, “Full fault dictionary storage based on labeled tree encoding”, in Proceedings of VLSI Test Symposium, 1996Google Scholar
  9. 9.
    J. Wu and E. M. Rudnick, “Bridging fault diagnosis using stuck-at fault simulation”, in IEEE Trans. on Computer-Aided Design, pp. 489–495, 2000Google Scholar
  10. 10.
    R. Davis and H. E. Shrobe, “Diagnostic reasoning based on structure and behavior”, in Artificial Intelligence, vol. 24, pp. 347–410, 1984Google Scholar
  11. 11.
    S. J. Sangwine, “Fault diagnosis in combinational circuits using a backtrack algorithm to generate fault location hypothesis”, in Proceedings IEE-G, vol. 135, pp. 247–252, 1988Google Scholar
  12. 12.
    J. A. Waicukauski and E. Lindbloom, “Failure diagnosis of structured VLSI”, in IEEE Design Test Comput., pp. 49–60, 1989Google Scholar
  13. 13.
    I. Pomeranz and S. M. Reddy, “On correction of multiple design errors”, in IEEE Trans. Computer-Aided Design, pp. 255–264, 1995Google Scholar
  14. 14.
    S.-Y. Huang, K.-T. Cheng, K.-C. Chen, and D.-T. Cheng, “ErrorTracer: A fault simulation based approach to design error diagnosis”, in Proc. IEEE International Test Conference, pp. 974–981, 1997Google Scholar
  15. 15.
    S. Venkataraman and W. K. Fuchs, “A Deductive Technique for Diagnosis of Bridging Faults”, in Proc. IEEE International Conference on Computer-Aided Design, pp. 313–318, 2000Google Scholar
  16. 16.
    A. G. Veneris, and I. N. Hajj, “A fast algorithm for locating and correcting simply design errors in VLSI digital circuits”, in Proc. Great Lakes Symposium, pp. 45–50, 1997Google Scholar
  17. 17.
    B. Boppana, R. Mukherjee, J. Jain, and M. Fujita, “Multiple error diagnosis based on Xlists”, in Proc. Design Automation Conference, pp. 100–110, 1999Google Scholar
  18. 18.
    T. Bartenstein, D. Herberlin, L. Huisman, and D. Sliwinski, “Diagnosing combinational logic design using the single location at-a-time (SLAT) paradigm”, in Proc. IEEE International Test Conference, pp. 287–296, 2001Google Scholar
  19. 19.
    S.-Y. Huang, “On improving the accuracy of multiple fault diagnosis”, in Proc. IEEE VLSI Test Symp, pp. 34–39, 2001Google Scholar
  20. 20.
    Z. Wang, K. H. Tsai, M. Marek-Sadowska, and J. Rajski, “An efficient and effective methodology on the multiple fault diagnosis”, in Proc. IEEE International Test Conference, pp. 329–338, 2003Google Scholar
  21. 21.
    J. B. Liu and A. Veneris, “Incremental fault diagnosis”, in IEEE Trans. Computer-Aided Design, pp. 240–251, 2005Google Scholar
  22. 22.
    A. Kuehlmann, D. I. Cheng, A. Srinivasan, and D. P. Lapotin, “Error Diagnosis for Transistor-Level Verification”, in Proc. of Design Automation Conf., pp. 218–223, 1994Google Scholar
  23. 23.
    L. Wang, C. Wu, X. Wen, “VLSI Test Principles and Atchitectures – Design for Testability”, Morgan Kaufmann Publishers, 2006Google Scholar
  24. 24.
    S. Kundu, “On diagnosis of faults in a scan chain”, in Proc. IEEE VLSI Test Symposium, pp. 303–308, 1993Google Scholar
  25. 25.
    Y. Huang, W.-T. Cheng, S.-M. Reddy, C.-J. Hsieh, and Y.-T. Hung, “Statistical diagnosis for intermittent scan chain hold-time fault”, in Proc. IEEE Int. Test Conference, pp. 319–328, 2003Google Scholar
  26. 26.
    J. L. Schafer, “Partner SRLs for improved shift register diagnosis”, in Proc. IEEE VLSI Test Symposium, pp. 198–201, 1992Google Scholar
  27. 27.
    Y. Wu, “Diagnosis of scan chain failures”, in Proc. Int. Symp. on Defect and Fault Tolerance in VLSI Systems, pp. 217–222, 1998Google Scholar
  28. 28.
    K. Stanley, “High-accuracy flush-and-scan software diagnostics”, in IEEE Design Test Comput., pp. 56–62, 2001Google Scholar
  29. 29.
    J.-S. Yang and S.-Y. Huang, “Quick scan chain diagnosis using signal profiling”, in Proc. IEEE Int. Conference on Computer Design, pp. 157–160, 2005Google Scholar
  30. 30.
    “YieldAssist User Guide Version 8.2009_1”, Mentor Graphics Inc., 2009Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2011

Authors and Affiliations

  • Mohammad Tehranipoor
    • 1
  • Ke Peng
    • 2
  • Krishnendu Chakrabarty
    • 3
  1. 1.ECE DepartmentUniversity of ConnecticutStorrsUSA
  2. 2.Freescale SemiconductorMicrocontroller Solutions GroupAustinUSA
  3. 3.ECE DepartmentDuke UniversityDurhamUSA

Personalised recommendations