Fast Code Generation for Embedded Processors with Aliased Heterogeneous Registers

Many embedded processors have complex, irregular architectures resulting from the customization for the maximum performance and energy efficiency of target applications. One such example is the heterogeneous register architecture, which has fast, small-sized register files, for their specific uses,...

Full description

Saved in:
Bibliographic Details
Published inTransactions on High-Performance Embedded Architectures and Compilers II pp. 149 - 172
Main Authors Ahn, Minwook, Paek, Yunheung
Format Book Chapter
LanguageEnglish
Published Berlin, Heidelberg Springer Berlin Heidelberg 2009
SeriesLecture Notes in Computer Science
Subjects
Online AccessGet full text
ISBN3642009034
9783642009037
ISSN0302-9743
1611-3349
DOI10.1007/978-3-642-00904-4_9

Cover

More Information
Summary:Many embedded processors have complex, irregular architectures resulting from the customization for the maximum performance and energy efficiency of target applications. One such example is the heterogeneous register architecture, which has fast, small-sized register files, for their specific uses, distributed over the data paths between different functional units. Although this architectural design may be good at achieving the H/W design goal of high speed, small area and low power, it requires highly expensive algorithms for optimal code generation. This is primarily because multiple registers contained in each file come with many different constraints subject to their design purposes, and often their names are aliased with each other; thus the final code quality is very sensitive to how properly such aliased, heterogeneous registers are utilized in every instruction. In this work, we propose a code generation approach to attack this complex problem. The experiments reveal that our approach is fast, practically running in polynomial time. In comparison with the related work, it achieves approximately 13% of code size reduction and 16% of speed increase.
Bibliography:An extension of [1] with more detailed description of our register allocation and coalescing algorithms with extended experimental results to show our effects on code generation.
ISBN:3642009034
9783642009037
ISSN:0302-9743
1611-3349
DOI:10.1007/978-3-642-00904-4_9