A template-based methodology for efficient microprocessor and FPGA accelerator co-design

Embedded applications usually require Software/Hardware (SW/HW) designs to meet the hard timing constraints and the required design flexibility. Exhaustive exploration for SW/HW designs is a very time consuming task, while the adhoc approaches and the use of partially automatic tools usually lead to less efficient designs. To support a more efficient codesign process for FPGA platforms we propose a systematic methodology to map an application to SW/HW platform with a custom HW accelerator and a microprocessor core. The methodology mapping steps are expressed through parametric templates for the SW/HW Communication Organization, the Foreground (FG) Memory Management and the Data Path (DP) Mapping. Several performance-area tradeoff design Pareto points are produced by instantiating the templates. A real-time bioimaging application is mapped on a FPGA to evaluate the gains of our approach, i.e. 44,8% on performance compared with pure SW designs and 58% on area compared with pure HW designs.

[1]  Lech Józwiak,et al.  Multi-objective Optimal Controller Synthesis for Heterogeneous Embedded Systems , 2006, 2006 International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation.

[2]  Holger Blume,et al.  A hardware accelerated configurable ASIP architecture for embedded real-time video-based driver assistance applications , 2011, 2011 International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation.

[3]  Frank Vahid,et al.  Scalable object detection accelerators on FPGAs using custom design space exploration , 2011, 2011 IEEE 9th Symposium on Application Specific Processors (SASP).

[4]  Frank Vahid,et al.  SpecSyn: an environment supporting the specify-explore-refine paradigm for hardware/software system design , 1998, IEEE Trans. Very Large Scale Integr. Syst..

[5]  George Theodoridis,et al.  The ARISE Approach for Extending Embedded Processors With Arbitrary Hardware Accelerators , 2009, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[6]  Peter Pirsch,et al.  Mapping of a Real-Time Object Detection Application onto a Configurable RISC/Coprocessor Architecture at Full HD Resolution , 2010, 2010 International Conference on Reconfigurable Computing and FPGAs.

[7]  Diederik Verkest,et al.  EMPIRE: Empirical power/area/timing models for register files , 2009, Microprocess. Microsystems.

[8]  Pedro C. Diniz,et al.  A compiler approach to fast hardware design space exploration in FPGA-based systems , 2002, PLDI '02.

[9]  Gianluca Palermo,et al.  An Evolutionary Approach to Area-Time Optimization of FPGA designs , 2007, 2007 International Conference on Embedded Computer Systems: Architectures, Modeling and Simulation.

[10]  Frank Vahid,et al.  Making good points: application-specific pareto-point generation for design space exploration using statistical methods , 2009, FPGA '09.

[11]  David A. Patterson,et al.  Computer Architecture, Fifth Edition: A Quantitative Approach , 2011 .

[12]  Ricardo E. Gonzalez Software configurable processors change system design , 2005, 2005 IEEE Hot Chips XVII Symposium (HCS).

[13]  Vittorio Zaccaria,et al.  Multi-objective design space exploration of embedded systems , 2003, J. Embed. Comput..

[14]  Muhammad Shahzad,et al.  Image Coprocessor: A Real-Time Approach Towards Object Tracking , 2009, 2009 International Conference on Digital Image Processing.

[15]  John Wawrzynek,et al.  The Garp Architecture and C Compiler , 2000, Computer.

[16]  Scott Hauck,et al.  Reconfigurable computing: a survey of systems and software , 2002, CSUR.

[17]  Wayne Luk,et al.  CUSTARD - a customisable threaded FPGA soft processor and tools , 2005, International Conference on Field Programmable Logic and Applications, 2005..

[18]  Tulika Mitra,et al.  A Model for Hardware Realization of Kernel Loops , 2003, FPL.

[19]  R. Kumar,et al.  Application-Specific Customization of Parameterized FPGA Soft-Core Processors , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[20]  George Kornaros A soft multi-core architecture for edge detection and data analysis of microarray images , 2010, J. Syst. Archit..