Abstract
A method of designing testable systolic architectures is proposed in this paper. Testing systolic arrays involves mapping of an algorithm into a specific VLSI systolic architecture, and then modifying the design to achieve concurrent testing. In our approach, redundant computations are introduced at the algorithmic level by deriving two versions of a given algorithm. The transformed dependency matrix (TDM) of the first version is a valid transformation matrix while the second version is obtained by rotating the first TDM by 180 degrees about any of the indices that represent the spatial component of the TDM. Concurrent error detection (CED) systolic array is constructed by merging the corresponding systolic array of the two versions of the algorithm. The merging method attempts to obtain the self testing systolic array at minimal cost in terms of area and speed. It is based on rescheduling input data, rearranging data flow, and increasing the utilization of the array cells. The resulting design can detect all single permanent and temporary faults and the majority of the multiple fault patterns with high probability. The design method is applied to an algorithm for matrix multiplication in order to demonstrate the generality and novelty of our approach to design testable VLSI systolic architectures.
We’re sorry, something doesn't seem to be working properly.
Please try refreshing the page. If that doesn't work, please contact support so we can address the problem.
References
H.T. Kung, “Why Systolic Architectures?,”IEEE Computer, Vol. C-31, pp. 37–46, 1982.
H.T. Kung and C.E. Leiserson, “Systolic Arrays (for VLSI),” in I.S. Duff and G.W. Stewart (Eds.),Sparse Matrix Proceedings, 1978, pp. 256–282, SIAM 1979.
F.T. Leighton and C.E. Leiserson, “Wafer-Scale Integration of Systolic Arrays,”IEEE Trans. Computers, Vol. C-34, pp. 448–461, 1985.
D. Siewiorek and R. Swarz, “The Theory and Practice of Reliable System Design,” Bedford, MA: Digital Press, 1982.
S.R. Gupta and M.A. Bayoumi, “Concurrent Error Detection In Systolic Arrays For Real-Time DSP Applications,” R.W. Brodersen and H.S. Moscovitz (Eds.),VLSI Signal Processing III, New York: IEEE Press, 1988.
J.F. Wakerly, “Error Detecting Codes, Self-Checking Circuits and Applications,” New York: Elsevier-North Holland, 1978.
B.W. Johnson, J.H. Aylor, and H.H. Hana, “Efficient Use of Time and Hardware Redundancy for Concurrent Error Detection in 32-bit VLSI Adder,”IEEE Journal of Solid-State Circuits, Vol. 23, 1988.
D. Reynolds and G. Metze, “Fault Detection Capabilities of Alternating Logic,”IEEE Trans. Comput., Vol. C-27, pp. 157–162, 1978.
J.H. Patel and L.Y. Fung, “Concurrent Error Detection in ALU's by Recomputing with Shifted Operands,”IEEE Trans. Comput., Vol. C-31, pp. 589–595, 1982.
H.H. Hana and B.W. Johnson, “Concurrent Error Detection in VLSI Circuits Using Time Redundancy,”Proc. IEEE Southeast Con'86 Regional Conf., Mar. 23–25, 1986, pp. 208–212.
J. Shetlesky, “Error Correction by Alternate Data Retry,”IEEE Trans. Comput., Vol. C-27, pp. 106–112, 1978.
J. Abraham, P. Banerjee, C.-Y. Chen, W. Fuchs, S.-Y. Kuo, and A. Reddy, “Fault Tolerance Techniques for Systolic Arrays,”IEEE Computer, pp. 65–74, 1987.
R.K. Gulati and S.M. Reddy, “Concurrent Error Detection in VLSI Array Structures,”Proc. IEEE Intl. Conf. on Computer Design, 1986, pp. 488–491.
C.-C. Wu and T.-S. Wu, “Concurrent Error Correction in Unidirectional Linear Arithmetic Arrays,”Proc. 17th Intl. Symp. on Fault-Tolerant Computing, 1987, pp. 136–141.
S.Y. Kung,VLSI Array Processors, Prentice Hall, 1988.
E.S. Manolakos, “Transient Fault Recovery Techniques for the VLSI Processor Arrays,” Ph.D. Thesis, University of Southern California, May, 1989.
K.H. Huang and J.A. Abraham, “Algorithm-based faulttolerance for matrix operations,”IEEE Trans. Comput. Vol. C-33, pp. 518–528, 1984.
R.J. Cosentino, “Concurrent Error Correction in Systolic Architectures,”Proc. IEEE Trans. on Computer-Aided Design, Vol. 7, pp. 117–125, 1988.
R.J. Cosentino, “Fault Tolerance in a Systolic Residue Arithmetic Processor Array,”IEEE Trans. on Comput., Vol. 37, pp. 886–890, 1988.
H. Lev-Ari and B. Friedlander, “On the Systematic Design of Fault-Tolerant Processor Arrays with Application to Digital Filtering,”VLSI Signal Processing, III, pp. 483–493, 1988.
S.-W. Chan and C.-L. Wey, “The Design of Concurrent Error Diagnosable Systolic Arrays for Band Matrix Multiplication,”Proc. IEEE Trans. on Computer-Aided Design, Vol. 7, pp. 21–37, 1988.
J.H. Patel and L.Y. Fung, “Concurrent Error Detection in Multiply and Divide Arrays,”IEEE Trans. Comput., Vol. C-32, pp. 417–422, 1983.
W.-T. Cheng and J.H. Patel, “Concurrent Error Detection in Iterative Logic Arrays,”FTCS, 1984, pp. 10–15.
S.R. Gupta and M.A. Bayoumi, “Concurrent Error Detection in Systolic Arrays for Real-Time DSP Applications,”VLSI Signal Processing III (Eds.), Robert W. Brodersen and Howard S. Moscovitz, New York: IEEE Press, 1988.
H.F. Li, C.N. Zhang, and R. Jayakumar, “Latency of Computational Data Flow and Concurrent Error Detection in Systolic Arrays,”CCVLSI'89, pp. 251–258, 1989.
R.H. Kuhn, “Yield Enhancement by Fault-Tolerant Systolic Arrays,” S.Y. Kung, H.J. Whitehouse and T. Kailath (Eds.),VLSI and Modern Signal Processing, pp. 178–184, Prentice Hall, 1985.
H.T. Kung and C.E. Leiserson, “Algorithms for VLSI Processor Arrays,”in C.A. Mead and L.A. Conway,Introduction to VLSI Systems, Reading, MA: Addison-Wesley, 1980.
K.H. Huang and J.A. Abraham, “Efficient Parallel Algorithms for Processor Arrays,”Proc. IEEE ICPP, 1982, pp. 271–279.
M.O. Esonu, S. Hariri and A.J. Al-Khalili, “A Systematic Approach for Designing Fault-Tolerant Systolic Architectures,” inProc. 1989 Joint Tech. Conf. on Circuits/Systems, Comput. and Communications, Sapporo, Japan, June 25–27,1989.
M.O. Esonu, A.J. Al-Khalili, and S. Hariri, “Design Methodology for Fault-Tolerant Systolic Array Architectures,”Proc. IEEE Int'l Conf. on Parallel Processing (ICPP'92), St. Charles, IL., Aug. 1992, pp. II267–II274.
D.I. Moldovan, “On the Design of Algorithms for VLSI Systolic Arrays,”Proc. IEEE, Vol. 71, 1983.
W.L. Miranker and A. Winkler, “Spacetime Representations of Computational Structures,”Journal of Computing, Vol. 32, 1984.
P. Lee and Z.M. Kedem, “Mapping Nested Loop Algorithms into Multidimensional Systolic Arrays,”IEEE Trans. Parallel Distributed Syst., Vol. 1, pp. 64–76, 1990.
W. Shang and J.A.B. Fortes, “On Time Mapping of Uniform Dependence Algorithms into Lower Dimensional Processor Arrays,”IEEE Trans. Parallel Distributed Syst., Vol. 3, pp. 350–363, 1992.
M.O. Esonu, A.J. Al-Khalili, and S. Hariri, “Design of Optimal Systolic Arrays: A Systematic Approach,”IEEE Symp. on Parallel and Distributed Processing, Dallas Texas, Dec. 9–13, 1990, pp. 166–173.
Author information
Authors and Affiliations
Additional information
This work has been supported by a grant from the Natural Sciences and Engineering Research Council of Canada.
Rights and permissions
About this article
Cite this article
Esonu, M.O., Al-Khalili, A.J. & Hariri, S. Area efficient computing structures for concurrent error detection in systolic arrays. Journal of VLSI Signal Processing 10, 237–260 (1995). https://doi.org/10.1007/BF02120031
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF02120031