LALP: a language to program custom FPGA-based acceleration engines


Autoria(s): Menotti, Ricardo; Cardoso, João Manuel Paiva; Fernandes, Marcio Merino; Marques, Eduardo
Contribuinte(s)

UNIVERSIDADE DE SÃO PAULO

Data(s)

05/11/2013

05/11/2013

2012

Resumo

Field-Programmable Gate Arrays (FPGAs) are becoming increasingly important in embedded and high-performance computing systems. They allow performance levels close to the ones obtained with Application-Specific Integrated Circuits, while still keeping design and implementation flexibility. However, to efficiently program FPGAs, one needs the expertise of hardware developers in order to master hardware description languages (HDLs) such as VHDL or Verilog. Attempts to furnish a high-level compilation flow (e.g., from C programs) still have to address open issues before broader efficient results can be obtained. Bearing in mind an FPGA available resources, it has been developed LALP (Language for Aggressive Loop Pipelining), a novel language to program FPGA-based accelerators, and its compilation framework, including mapping capabilities. The main ideas behind LALP are to provide a higher abstraction level than HDLs, to exploit the intrinsic parallelism of hardware resources, and to allow the programmer to control execution stages whenever the compiler techniques are unable to generate efficient implementations. Those features are particularly useful to implement loop pipelining, a well regarded technique used to accelerate computations in several application domains. This paper describes LALP, and shows how it can be used to achieve high-performance computing solutions.

CNPq/Grices

FAPESP [573963/2008-8, 08/57870-9]

FCT, Portugal [PTDC/EEA-ELC/70272/2006]

CNPq

Identificador

International Journal of Parallel Programming, The Netherlands, v. 40, n. 3, Special Issue, supl. 1, Part 1, p. 262-289, jun, 2012

0885-7458

http://www.producao.usp.br/handle/BDPI/41716

10.1007/s10766-011-0187-0

http://dx.doi.org/10.1007/s10766-011-0187-0

Idioma(s)

eng

Publicador

Springer

The Netherlands

Relação

International Journal of Parallel Programming

Direitos

closedAccess

Copyright Springer

Palavras-Chave #LOOP PIPELINING #COMPILERS #RECONFIGURABLE COMPUTING #FPGA #ARCHITECTURE #HARDWARE #SISTEMAS EMBUTIDOS #ROBÓTICA #ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES #COMPUTAÇÃO EVOLUTIVA #COMPUTER SCIENCE, THEORY & METHODS
Tipo

article

original article

publishedVersion