and André DeHon.
Extended version of: Stream Computations Organized for Reconfigurable Execution (SCORE): Extended Abstract, appearing in Conference on Field Programmable Logic and Applications (FPL '2000, August 28--30, 2000).
Abstract: A primary impediment to wide-spread exploitation of reconfigurable computing is the lack of a unifying computational model which allows application portability and longevity without sacrificing a substantial fraction of the raw capabilities. We introduce SCORE (Stream Computation Organized for Reconfigurable Execution), a stream-based compute model which virtualizes reconfigurable computing resources (compute, storage, and communication) by dividing a computation up into fixed-size ``pages'' and time-multiplexing the virtual pages on available physical hardware. Consequently, SCORE applications can scale up or down automatically to exploit a wide range of hardware sizes. We hypothesize that the SCORE model will ease development and deployment of reconfigurable applications and expand the range of applications which can benefit from reconfigurable execution. Further, we believe that a well engineered SCORE implementation can be efficient, wasting little of the capabilities of the raw hardware. In this paper, we introduce the key components of the SCORE system.N.B. Owing to conference space limitations, the extended abstract published in the FPL proceedings could only highlight the major aspects of SCORE. This extended version provides a more complete and detailed introduction to the SCORE compute model.