DocumentCode :
543914
Title :
A code-generator generator for Multi-Output Instructions
Author :
Scharwaechter, Hanno ; Leupers, Rainer ; Ascheid, Gerd ; Meyr, Heinrich ; Youn, Jonghee M. ; Paek, Yunheung
Author_Institution :
Integrated Signal Process. Syst., RWTH Aachen Univ., Aachen, Germany
fYear :
2007
fDate :
Sept. 30 2007-Oct. 3 2007
Firstpage :
131
Lastpage :
136
Abstract :
We address the problem of instruction selection for Multi-Output Instructions (MOIs), producing more than one result. Such inherently parallel hardware instructions are very common in the area of Application Specific Instruction Set Processors (ASIPs) and Digital Signal Processors (DSPs) which are frequently used in System-on-Chips as programmable cores. In order to provide high-level programmability, and consequently guarantee widespread acceptance, sophisticated compiler support for these programmable cores is of high importance. Since it is not possible to model MultiOutput Instructions as trees in the compiler´s Intermediate Representation (IR), traditional approaches for code selection are not sufficient. Extending traditional code-generation approaches for MOI-selection is essentially a graph covering problem, which is known to be NP-complete. We present a new heuristic algorithm incorporated in a retargetable code-generator generator capable of exploiting arbitrary inherently parallel MOIs. We prove the concept by integrating the tool into the LCC compiler which has been targeted towards different Instruction Set Architectures based on the MIPS architecture. Several network applications as well as some DSP benchmarks were compiled and evaluated to obtain results.
Keywords :
computational complexity; digital signal processing chips; graph theory; instruction sets; system-on-chip; ASIP; DSP; MIPS architecture; NP-complete; SoC; application specific instruction set processors; code selection; code-generator generator; compiler intermediate representation; digital signal processors; graph covering problem; high-level programmability; instruction set architectures; multi-output instructions; parallel hardware instructions; programmable cores; system-on-chips; Assembly; Encryption; Generators; Grammar; Pattern matching; Program processors; Protocols; ASIP; Code-Selection; Compiler/ Architecture Co-Design; ISS;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Hardware/Software Codesign and System Synthesis (CODES+ISSS), 2007 5th IEEE/ACM/IFIP International Conference on
Conference_Location :
Salzburg
Print_ISBN :
978-1-5959-3824-4
Type :
conf
Filename :
5753827
Link To Document :
بازگشت