LALP: a language to program custom FPGA-based acceleration engines
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 |
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 |