An efficient compensation‐path finding algorithm for a large‐scale processor array

Takao Ozawa · Systems and Computers in Japan · 1991

Abstract This paper presents an algorithm for constructing a systolic array from a large‐scale rectangular grid array of processing elements (PEs), some of which may be faulty. Very recently, Kung et al. reduced this construction problem to finding compensation paths (CPs) which are extended from faulty PEs to spare PEs placed on the periphery of the rectangular array, and which satisfy the following conditions. Each of the CPs: (1) must be a horizontal or vertical straight line; (2) must not go through any other faulty PE; (3) must not cross any other CP; and (4) for each of the CPs there exists no other CP running in parallel and in the opposite direction with distance 1. The algorithm of this paper solves the foregoing CP finding problem efficiently by taking advantage of certain properties of the grid array. Suppose that the array is placed on thex‐yplane. First, the algorithm sorts the faulty PEs with respect to theirxandycoordinates and constructs four queues for faulty PEs. Then it attempts repeatedly to find CPs for the four PEs at the exits of the four queues. At this step it uses a novel branch‐and‐bound method considering the relative positions of the four faulty PEs on thex‐yplane. The time complexity of the algorithm isO(n3) in the worst cases, wherenis the number of faulty PEs. However, it can be shown that such cases rarely happen, and in almost all cases it solves the problem inO(n2) time. The space complexity isO(n).

Read the paper · More papers on PaperTik