Software and hardware techniques to optimize register file utilization in VLIW architectures

  • Authors:
  • Javier Zalamea;Josep Llosa;Eduard Ayguadé;Mateo Valero

  • Affiliations:
  • Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya;Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya;Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya;Departament d'Arquitectura de Computadors, Universitat Politècnica de Catalunya

  • Venue:
  • International Journal of Parallel Programming
  • Year:
  • 2004

Quantified Score

Hi-index 0.01

Visualization

Abstract

High-performance microprocessors are currently designed with the purpose of exploiting instruction level parallelism (ILP). The techniques used in their design and the aggressive scheduling techniques used to exploit this ILP tend to increase the register requirements of the loops. This paper reviews hardware and software techniques that alleviate the high register demands of aggressive scheduling heuristics on VLIW cores. From the software point of view, instruction scheduling can stretch lifetimes and reduce the register pressure. If more registers than those available in the architecture are required, some actions (such as the injection of spill code) have to be applied to reduce this pressure, at the expense of some performance degradation. From the hardware point of view, this degradation could be reduced if a high-capacity register file were included without causing a negative impact on the design of the processor (cycle time, area and power dissipation). Novel organizations for the register file based on clustering and hierarchical organization are necessary to meet the technology constraints. This paper proposes the used of a clustered organization and proposes an aggressive instruction scheduling technique that minimizes the negative effect of the limitations imposed by the register file organization.