project/thesis/phd proposals

Topic: functional diagnosis

Functional diagnosis of complex boards and designs

Functional diagnosis is used in industry to identify the source of an observed misbehavior during the operational life of a device. There are different motivations behind this kind of investigations, among which we mention 1) the identification of the faulty component for possible repair in case of an expensive board, hosting several subsystems, and 2) the collection of information on components’ failure rates, to be able to monitor the quality of suppliers' products. The diagnosis process identifies the faulty component by means of test application and output collection (syndrome), to infer from the syndrome the root cause of the observed misbehavior. However, the process may become particularly long and costly, therefore a strategy that aims at minimizing the number of tests to be performed is paramount.

In the past, two reasoning-based techniques have been exploited to define the engine able to perform the incremental diagnosis: the first is based on the use of Bayesian belief networks (BBNs) [1], while the most recent on uses Data Mining (DM) [2]. Interesting improvements have been achieved by using the DM engine that can obtain the same diagnostic resolution without compromising too much accuracy. Indeed, there are also other machine learning (ML) techniques that could further improve the incremental diagnosis methodology, such as decision trees (DTs) and support vector machines (SVMs) [3].

At present, we are focusing on the exploitation of machine learning techniques to improve the accuracy and efficiency of functional diagnosis for complex designs and boards to limit efforts and costs, by minimizing the required number of tests to be executed. Moreover, we envision two main usages: i) an accuracy-oriented one, where the user is interested in getting the most accurate answer (possibly 100%), and ii) a user-tuned one, where the user can set a maximum cost (e.g., number/cost of components to be replaced, maximum number of tests to be executed). Moreover, we propose to define a set of static analyses on the system being considered, to provide feedback on its characteristics with respect to diagnosis (e.g., isolation, test redundancies, ...), by exploiting the information gathered while training the engine driving the incremental process.

Bibliography and recent publications

[1] L. Amati, C. Bolchini, L. Frigerio, F. Salice, B. Eklow, A. Suvatne, E. Brambilla, F. Franzoso and M. Martin, “An incremental approach to functional diagnosis,” in Proc. IEEE Int. Symp. Defect and Fault Tolerance of VLSI Systems, DFT, pp. 392-400, 2009.

[2] C. Bolchini, P. Garza, E. Quintarelli and F. Salice, “A Data Mining Approach to Incremental Adaptive Functional Diagnosis”, in Proc. IEEE Intl. Symp. Defect and Fault Tolerance in VLSI and Nanotechnology Systems, DFT, pp. 13- 18, 2013.

[3] R. S. Michalski, I. Bratko, and M. Kubat, Eds., Machine Learning and Data Mining: Methods and Applications, Wiley, 1998.

[4] C. Bolchini and L. Cassano, “Machine Learning-based Techniques for Incremental Functional Diagnosis: a Comparative Analysis”, in Proc. IEEE Intl. Symp. Defect and Fault Tolerance in VLSI and Nanotechnology Systems, DFT, pp. 245-250, 2014.


Two gifts have been awarded from the Cisco University Research Program Fund, an advised fund of Silicon Valley Community Foundation, to support this research, one in Dec. 2012, the second one in Oct. 2014.