Re configurable FPGA/CPU systems are widely described in literature as a viable processing solution for embedded and high end processing. One of the key issues of this kind of approach is the code partitioning between CPU and FPGA. The development of automatic partitioning tools allows to obtain optimized architecture without a specific knowledge of digital design. In this paper we present a framework which, starting from an ANSI C application code: (i) automatically identifies code fragments suitable for hardware implementation as specialized functional units (ii)for all these segments a synthesizable code is generated and sent to a synthesis tool, (iii) from the synthesis results, the segments to be implemented on FPGA are selected (iv) bitstream to configure the FPGA and modified C code to be executed on the CPU are generated. We applied this tool to standard benchmarks obtaining, with respect to state of the art, an improvement of up to 250% in the accuracy of performances estimation related to the selected segments of code. This leads to a more optimized code partitioning. © 2006 IEEE.

Automatic application partitioning on FPGA/CPU systems based on detailed low-level information / Busonera, Giovanni; Marongiu, Andrea; Carta, Salvatore; Raffo, Luigi. - ELETTRONICO. - (2006), pp. 265-268. (Intervento presentato al convegno Digital System Design: Architectures, Methods and Tools, 2006. DSD 2006. 9th EUROMICRO Conference on tenutosi a Cavtat (Dubrovnik), Croatia nel August 30-September 01) [10.1109/DSD.2006.29].

Automatic application partitioning on FPGA/CPU systems based on detailed low-level information

Marongiu, Andrea;
2006

Abstract

Re configurable FPGA/CPU systems are widely described in literature as a viable processing solution for embedded and high end processing. One of the key issues of this kind of approach is the code partitioning between CPU and FPGA. The development of automatic partitioning tools allows to obtain optimized architecture without a specific knowledge of digital design. In this paper we present a framework which, starting from an ANSI C application code: (i) automatically identifies code fragments suitable for hardware implementation as specialized functional units (ii)for all these segments a synthesizable code is generated and sent to a synthesis tool, (iii) from the synthesis results, the segments to be implemented on FPGA are selected (iv) bitstream to configure the FPGA and modified C code to be executed on the CPU are generated. We applied this tool to standard benchmarks obtaining, with respect to state of the art, an improvement of up to 250% in the accuracy of performances estimation related to the selected segments of code. This leads to a more optimized code partitioning. © 2006 IEEE.
2006
Digital System Design: Architectures, Methods and Tools, 2006. DSD 2006. 9th EUROMICRO Conference on
Cavtat (Dubrovnik), Croatia
August 30-September 01
265
268
Busonera, Giovanni; Marongiu, Andrea; Carta, Salvatore; Raffo, Luigi
Automatic application partitioning on FPGA/CPU systems based on detailed low-level information / Busonera, Giovanni; Marongiu, Andrea; Carta, Salvatore; Raffo, Luigi. - ELETTRONICO. - (2006), pp. 265-268. (Intervento presentato al convegno Digital System Design: Architectures, Methods and Tools, 2006. DSD 2006. 9th EUROMICRO Conference on tenutosi a Cavtat (Dubrovnik), Croatia nel August 30-September 01) [10.1109/DSD.2006.29].
File in questo prodotto:
Non ci sono file associati a questo prodotto.
Pubblicazioni consigliate

Licenza Creative Commons
I metadati presenti in IRIS UNIMORE sono rilasciati con licenza Creative Commons CC0 1.0 Universal, mentre i file delle pubblicazioni sono rilasciati con licenza Attribuzione 4.0 Internazionale (CC BY 4.0), salvo diversa indicazione.
In caso di violazione di copyright, contattare Supporto Iris

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11380/1171868
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 0
  • ???jsp.display-item.citation.isi??? 0
social impact