System-level diagnosis in a multiprocessor system should be both effective and efficient. Most of the existing results are not applicable in practice because of the high diagnosis cost and limited diagnosability. We propose a divide-and-conquer methodology of fault diagnosis for a general class of processor arrays, which is one of the most popular architectures in today's multiprocessor systems. Parallel testing and adaptive diagnosis are our major strategies. The over-d fault problem is inherently tackled through a deterministic method. Based on this unified methodology, we first propose an algorithm for 2D arrays. Moreover, our methodology can be fully explored to those multi-dimensional arrays with high degree of hierarchy like hypercubes. We thus propose another diagnosis algorithm for this kind of architectures. Analytical and simulation results show that our approaches are superior.
展开▼