Instruction Merging to Increase Parallelism in VLIW Architectures

Guillermo Payá-Vayá,  Javier Martín-Langerwerf,  Florian Giesemann,  Holger Blume,  Peter Pirsch
Institute of Microelectronic Systems, Leibniz Universität Hannover


Abstract

This paper describes a new mechanism for concurrent use of more functional units, without increasing the control path of a generic VLIW architecture. The proposed approach only requires small modifications in the architecture and a new code selection function in the instruction scheduler. The key idea of this approach is to search for similar independent operations inside a basic assembler code block and merge them in a single instruction, which executes the same operation with even and odd operand registers in two different functional units. A comprehensive evaluation of this mechanism with two multimedia tasks shows an improvement of the dynamic instructions-per-cycle, exceeding the theoretical maximum of the reference architecture.