DocumentCode :
3300254
Title :
Parallelizing applications into silicon
Author :
Babb, Jonathan ; Rinard, Martin ; Moritz, Csaba Andras ; Lee, Walter ; Frank, Matthew ; Barua, Rajeev ; Amarasinghe, Saman
Author_Institution :
Lab. for Comput. Sci., MIT, Cambridge, MA, USA
fYear :
1999
fDate :
1999
Firstpage :
70
Lastpage :
80
Abstract :
The next decade of computing will be dominated by embedded systems, information appliances and application-specific computers. In order to build these systems, designers will need high-level compilation and CAD tools that generate architectures that effectively meet the needs of each application. In this paper we present a novel compilation system that allows sequential programs, written in C or FORTRAN, to be compiled directly into custom silicon or reconfigurable architectures. This capability is also interesting because trends in computer architecture are moving towards more reconfigurable hardware-like substrates, such as FPGA based systems. Our system works by successfully combining two resource-efficient computing disciplines: Small Memories and Virtual Wires. For a given application, the compiler first analyzes the memory access patterns of pointers and arrays in the program and constructs a partitioned memory system made up of many small memories. The computation is implemented by active computing elements that are spatially distributed within the memory array. A space-time scheduler assigns instructions to the computing elements in a way that maximizes locality and minimizes physical communication distance. It also generates an efficient static schedule for the interconnect. Finally, specialized hardware for the resulting schedule of memory accesses, wires, and computation is generated as a multi-process state machine in synthesizable Verilog. With this system, implemented as a set of SUIF compiler passes, we have successfully compiled programs into hardware and achieve specialization performance enhancements by up to an order of magnitude versus a single general purpose processor. We also achieve additional parallelization speedups similar to those obtainable using a tightly-interconnected multiprocessor
Keywords :
embedded systems; parallelising compilers; reconfigurable architectures; FPGA based systems; active computing; compilation system; computer architecture; custom silicon; multi-process state machine; parallelization; reconfigurable architectures; Application software; Distributed computing; Embedded computing; Embedded system; Hardware; Home appliances; Processor scheduling; Program processors; Silicon; Wires;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Field-Programmable Custom Computing Machines, 1999. FCCM '99. Proceedings. Seventh Annual IEEE Symposium on
Conference_Location :
Napa Valley, CA
Print_ISBN :
0-7695-0375-6
Type :
conf
DOI :
10.1109/FPGA.1999.803669
Filename :
803669
Link To Document :
بازگشت