Speaker: Kip Walker, Carnegie Mellon University
Date: March 9, 2000
Reconfigurable Function Units for General-Purpose Processors
Reconfigurable computing has achieved very high performance for a number of important applications including encryption and multimedia processing. Existing reconfigurable devices, such as FPGAs, are typically found in embedded settings or as bus-attached coprocessors. Several research groups have begun to consider the possibility of including reconfigurable logic in general-purpose processors. Such a "reconfigurable functional unit" (RFU) could expose the benefits of application-specialization and logic-customization that are not available even with the latest superscalar, out-of-order processor by allowing a compiler to augment the instruction set with operations that are customized to a particular application.
This talk will introduce many of the design considerations involved in evaluating the usefulness of reconfigurable functional units. Design choices must weigh the tradeoff between improved ability to speedup applications and increasing hardware complexity and cost. Examples of the kinds of decisions that must be made are the number of inputs and outputs an operation can have, whether an operation can include memory accesses, and whether an operation may create state in the RFU. A more practical concern is that the architecture must be easy to program or its benefits will be unused. Part of our research addresses compiler techniques for generating code that takes advantage of a RFU. Some early simulation results will be presented.