Welcome to the ACAL at USC

Introduction to the Advanced Computer Architecture Laboratory

The Advanced Computer Architecture Laboratory of the University of Southern California, under the direction of Professor Alvin M. Despain, is a center for the investigation of high performance symbolic and numeric computing. The Laboratory supports over thirty graduate students from both the Electrical Engineering - Systems and Computer Science Departments and also collaborates with academic and industrial researchers around the world.

The Laboratory undertakes experimental research in areas such as compiler technology, computer architecture, VLSI design, and computer-aided design tools. In addition to its in-house hardware laboratory and computing resources, the ACAL has used the fabrication services provided by the Information Sciences Institute (ISI) to produce its own custom processors and systems.

The most recent accomplishment of the ACAL was the development of the VLSI-BAM processor, which executes compiled Prolog benchmarks at up to 3.9 million logical inferences per second (LIPS), faster than any other Prolog processor in the world.

About the Director...

Professor Despain, who earned the B.S., M.S., and Ph.D. in electrical engineering at the University of Utah in 1960, 1964, and 1966 respectively, began this line of research in 1984 at the University of California, Berkeley. There his group developed the PLM Prolog processor, which achieved a performance of 300 KLIPS, a record at that time. Dr. Despain serves on advisory boards, including JASON, the DARPA ISAT working group, the Office of Naval Technology Computer Research Advisory Group, and Tartan laboratories. He has also served on numerous other advisory groups. He has published over sixty papers. Professor Despain holds the Charles Lee Powell Chair in Computer Engineering.

About the ACAL...

The Advanced Computer Architecture Laboratory is engaged in four major projects: the Southern California Logical Abstract Machine (SLAM), the Trojan Multi-Multi parallel processor, the Aquarius Prolog compiler, and the Advanced Silicon Compiler in Prolog (ASP).

The SLAM

The SLAM is the third in a series of high-performance Prolog processors that began with the Programmed Logic Machine (PLM) at Berkeley. The PLM was a microcoded implementation of the Warren Abstract Machine, a formal model for the execution of Prolog programs. The next step, the Berkeley Abstract Machine (BAM), was designed to support optimization of programs by the compiler, and achieved higher performance than the PLM by a factor of ten.

The SLAM is expected to out-perform the BAM by a factor of at least eight. An evolution of the BAM architecture, the SLAM is intended for energy-efficient computation, in particular reducing the amount of traffic between the processor and off-chip memories. The ultimate goal of the project is to determine the principles of computer architecture that will enable the design of new, revolutionary embedded microcomputers, which will have a rapid response to real-time events, as well as low power consumption.

The Trojan Multi-Multi

While the SLAM project explores the limits of symbolic computation on a single processor, the Multi-Multi project has the objective of determining how well symbolic computation can be sped up on a multiprocessor. The initial version of the Multi-Multi has six VLSI-BAM processors connected with a set of high-speed buses. Subsequent versions will have larger numbers of SLAM processors. As the interconnection and cache coherence schemes are general and the processors are supersets of RISC architectures, the results of this project will be applicable beyond symbolic computation.

The Aquarius Prolog Compiler

The Aquarius compiler and the BAM were designed as part of an investigation into whether logic programs could be executed as efficiently as imperative programs. The experiment was successful and Prolog programs compiled with Aquarius are as efficient as C programs. The compiler has now been enhanced with a framework for abstract interpretation, a powerful technique for program analysis. Several different analyses have now been implemented using the framework, including mode analysis and (to support parallel execution) static data dependence analysis.

The Advanced Silicon Compiler in Prolog

ASP began as an exploration of how fully the art of computer design can be formalized and automated. The ASP system accepts an abstract description of the instruction set of a computer and generates a set of masks for fabricating it on a single chip. In between, the design is transformed and optimized between over forty different levels of abstraction. ASP has been used to design several processors, one of which has been fabricated.

For Further Information...

Where is ACAL?

Mail:
USC Advanced Computer Architecture Laboratory
University Park / EEB 131
3740 South McClintock Avenue
Los Angeles, California 90089-2561
Telephone:
213-740-4462 (voice)
213-747-8173 (fax)
E-Mail:
susanm@usc.edu (general information)