Computer Science and Engineering, Department of


Document Type


Date of this Version



Published in Proceedings of the 23rd Annual Workshop and Symposium., Workshop on Microprogramming and Microarchitecture. Micro 23. Copyright © IEEE. Used by permission. doi: 10.1109/MICRO.1990.151431


The development of a high-level language compiler for a micro-programmable processing element (PE) in the MARS multicomputer is described. MARS, an MIMD message passing machine, was designed to speed up VLSI CAD and similar other non-numerical applications. The need for sup port of a high-level language at the PE level of a multicomputer is considered, and the choice of C as an appropriate programming language is justified. Special features found in VLSI processors are examined along with compiler support for them.

Conventional re-targetable compiler techniques are shown to be inadequate for the highly concurrent micro-programmable PE. These techniques must be extended for microcode generation. The design of the MARS compiler is outlined. Performance data is provided to evaluate the benefit of various compiler optimizations, and to compare compiler generated microcode to hand generated microcode in terms of space and time performance