Abstract
The ALPHA language results from research on automatic synthesis of systolic algorithms. It is based on the recurrence equation formalism introduced by Karp, Miller and Winograd in 1967. The basic objects of ALPHA are variables indexed on integral points of a convex set. It is a functional/equational language, whose definition is particularly well-suited to express regular algorithms, as well as transformations of these algorithms from their initial mathematical specification to an implementation on a synchronous parallel architecture. In particular, ALPHA makes it easy to define, prove and implement basic transformations such as Leiserson and Saxe's retiming, space-time reindexing, localization, and partitioning.
We describe ALPHA, its use for expressing and deriving systolic arrays, and the design environment ALPHA DU CENTAUR for this language.
Similar content being viewed by others
References
H.T. Kung, “Why systolic architectures?”Computer, 15, 1982, pp. 37–46.
R.M. Karp, R.E. Miller, and S. Winograd, “The organization of computations for uniform recurrence equations,”Journal of the Association for Computing Machinery, 14, 1967, pp. 563–590.
S.V. Rajopadhye and R.M. Fujimoto, “Systolic array synthesis by static analysis of program dependencies.” in (J.W. de Bakker, A.J. Nijman, and P.C. Treleaven, eds.),Parallel Architectures and Languages Europe, pages 295–310, Berlin/New York: Springer-Verlag, 1987.
C. Guerra, “A unifying framework for systolic designs,” inVLSI Algorithms and Architectures, (G. Goos and J. Hartmanis eds.), Berlin/New York: Springer-Verlag, 1986, pp. 46–56.
P. Quinton, “Automatic synthesis of systolic arrays from recurrent uniform equations,” in11th Annual Int. Symp. Computer Arch., Ann Arbor, Pisataway, N.J.: 1984, pp. 208–214.
G.-R. Perrin, “Parallel solving of equation systems,” in (M. Cosnard, P. Quinton, M. Raynal, and Y. Robert, eds.),Parallel and Distributed Algorithms, Amsterdam: North-Holland, 1988.
E.A. Ashcroft and W.W. Wadge, “LUCID: a nonprocedural language with iteration,”CACM, 20(7), 1977.
M.C. Chen, Transformations of Parallel Programs in Crystal. Technical Report YALEU/DCS/RR-469, Yale University, 1986.
Y. Choo and M.C. Chen, A Theory of Parallel Program Optimization. Technical Report YALEU/DCS/TR-608, Yale University, 1988.
P. Caspi, D. Pilaud, N. Halbwachs, and J.A. Plaice. “LUSTRE: a declarative language for programming synchronous systems,” inFourteenth Annual ACM Symp. on Principles of Programming Languages, 1987, ACM, Munich (West Germany), pp. 178–188.
P. LeGuernic, A. Benveniste, P. Bournai, and T. Gautier, “SIGNAL: a data flow oriented language for signal processing,” inIEEE Workshop on VLSI, VLSI Signal Processing, IEEE Press, New York, 1984, pp. 282–293.
N. Halbwachs, A. Longchamp, and D. Pilaud, “Describing and designing circuits by means of a synchronous declarative language,” inFrom HDL Description to Guaranteed Correct Circuit Designs, Proceedings of IFIP Working Conference, Grenoble (France), Amsterdam: Adam Hilger: North-Holland, 1986.
C.E. Leiserson, F.M. Rose, and J.B. Saxe, “Optimizing synchronous circuitry by retiming” (preliminary version). In (R. Bryant, ed.)Proc. 3d Caltech Conf. on VLSI, Berlin: Computer Science Press, 1983, pp. 87–116.
N. Halbwachs and D. Pilaud, “Use of real-time declarative language for systolic array design and simulation,” in (W. Moore, A. McCabe, and R. Urquhart, ed.)International Workshop on Systolic Arrays, Bristol: Adam Hilger, University of Oxford, 1986, pp. 81–90.
C. Mauras, “Alpha: un langage équationnel pour la conception et la programmation d'architectures parallèles synchrones.” Thèse de l'Université de Rennes 1, IFSIC, 1989.
G. Kahn, “The semantics of a simple language for parallel programming,” In (J.L. Rosenfeld, ed.),Information Processing, Proc. of IFIP, Stockholm, Amsterdam: North Holland, 1974, pp. 471–475.
S.K. Rao,Regular Iterative Algorithms and their Implementations on Processor Arrays. Ph.D. thesis, Stanford University, U.S.A., 1985.
P. Quinton and V. Van Dongen, “The mapping of linear recurrence equations on regular arrays,”Journal of VLSI Signal Processing, 1, 1989, pp. 95–113.
Y. Saouter and P. Quinton,Computability of Recurrence Equations. Technical Report, IRISA-Rennes (France), 1989.
J.A.B. Fortes, K.S. Fu, and B.W. Wah, “Systematic approaches to the design of algorithmically specified systolic arrays,” inICASSP 85, 1985, pp. 300–303.
D.I. Moldovan, “On the analysis and synthesis of VLSI algorithms,”IEEE Transactions on Computers, C-31(11), 1982.
S.Y. Kung,VLSI Array Processors. Englewood Cliffs, NJ: Prentice Hall, 1988.
C. Mauras, P. Quinton, S. Rajopadhye, and Y. Saouter, “Scheduling affine parameterized recurrences by means of variable dependent timing function,” inASAP 90, Princeton: Princeton University, 1990.
J.A.B. Fortes and D.I. Moldovan, “Data broadcasting in linearly scheduled array processors,” inProc. 11th Annual Symp. on Computer Architecture, 1984, pp. 224–231.
P. Borras, D. Clément, Th. Despeyroux, J. Incerpi, G. Kahn, B. Lang, and V. Pascual.CENTAUR: the System. Technical Report 777, INRIA, 1987.
A. Schrijver,Theory of Linear and Integer Programming. Wiley-Interscience Series in Discrete Mathematics, New York: Wiley and Sons, 1986.
Author information
Authors and Affiliations
Additional information
This work is funded by the French Coordinated Research ProgramC 3 of the Ministére de la Recherche et de la Technologie, and by the ESPRIT Basic Research Action nr. 3280
Rights and permissions
About this article
Cite this article
Le Verge, H., Mauras, C. & Quinton, P. The ALPHA language and its use for the design of systolic arrays. J VLSI Sign Process Syst Sign Image Video Technol 3, 173–182 (1991). https://doi.org/10.1007/BF00925828
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF00925828