Title :
Hardware/software specialization through aspects: The LARA approach
Author :
Cardoso, Joao M. P. ; Carvalho, Tereza ; Teixeira, Jose ; Diniz, Pedro C. ; Goncalves, Fernando ; Petrov, Z.
Author_Institution :
Dept. de Eng. Inf., Univ. do Porto, Porto, Portugal
Abstract :
LARA is a programming language being developed to complement application code in a host programming language with instrumentation code, for monitoring, logging, and debugging, user´s knowledge about specific characteristics of the application, non-functional requirements, and compiler, mapping and synthesis strategies to guide/control design-flows, especially the ones used to map computations to FPGA-based systems. This paper shows how the aspect-oriented approach provided by LARA allows developers to specify complementary program information that can be used by LARA aware design-flows to promote customized FPGA-based software/hardware implementations. Program and compiler/mapping specialization take advantage of specific properties of applications to optimize and customize specific application modules and software/hardware implementations, e.g., according to usage contexts. We illustrate the concept using a hotspot function from a real-life, industrial, application. The results show the importance of program specialization in deriving hardware/software implementations with higher-performance.
Keywords :
aspect-oriented programming; field programmable gate arrays; program compilers; programming languages; FPGA-based systems; LARA aware design-flows; LARA language; aspect-oriented approach; compiler specialization; complementary program information; customized FPGA-based software-hardware implementations; design-flow control; hardware-software specialization; host programming language; hotspot function; instrumentation code; map computations; mapping strategies; nonfunctional requirements; program specialization; synthesis strategies; user knowledge; Arrays; Context; Field programmable gate arrays; Hardware; Optimization; Software; FPGA; aspect-oriented programming (AOP); compilation; hardware synthesis; high-level synthesis;
Conference_Titel :
Embedded Computer Systems (SAMOS), 2012 International Conference on
Conference_Location :
Samos
Print_ISBN :
978-1-4673-2295-9
Electronic_ISBN :
978-1-4673-2296-6
DOI :
10.1109/SAMOS.2012.6404183