Processor acceleration through automated instruction set customization
- 25 May 2004
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
Abstract
Application-specific extensions to the computational capabilities of a processor provide an efficient mechanism to meetthe growing performance and power demands of embeddedapplications. Hardware, in the form of new function units(or co-processors), and the corresponding instructions, areadded to a baseline processor to meet the critical computational demands of a target application. The central challenge with this approach is the large degree of human effortrequired to identify and create the custom hardware units,as well as porting the application to the extended processor.In this paper, we present the design of a system to automate the instruction set customization process. A dataflowgraph design space exploration engine efficiently identifiesprofitable computation subgraphs from which to create custom hardware, without artificially constraining their sizeor shape. The system also contains a compiler subgraphmatching framework that identifies opportunities to exploitand generalize the hardware to support more computationgraphs. We demonstrate the effectiveness of this systemacross a range of application domains and study the applicability of the custom hardware across the domain.Keywords
This publication has 20 references indexed in Scilit:
- MiBench: A free, commercially representative embedded benchmark suitePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2005
- Automatic generation of application specific processorsPublished by Association for Computing Machinery (ACM) ,2003
- Automatic application-specific instruction-set extensions under microarchitectural constraintsPublished by Association for Computing Machinery (ACM) ,2003
- Instruction selection using binate covering for code size optimizationPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Instruction generation for hybrid reconfigurable systemsACM Transactions on Design Automation of Electronic Systems, 2002
- CryptoManiacPublished by Association for Computing Machinery (ACM) ,2001
- Xtensa: a configurable and extensible processorIEEE Micro, 2000
- Synthesis of application specific instructions for embedded DSP softwareIEEE Transactions on Computers, 1999
- On clustering for maximal regularity extractionIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 1993
- Code generation using tree matching and dynamic programmingACM Transactions on Programming Languages and Systems, 1989