The RecoBlock SoC platform: A flexible array of reusable Run-Time-Reconfigurable IP-blocks

Run-time reconfigurable (RTR) FPGAs combine the flexibility of software with the high efficiency of hardware. Still, their potential cannot be fully exploited due to increased complexity of the design process. Consequently, to enable an efficient design flow, we devise a set of prerequisites to increase the flexibility and reusability of current FPGA-based RTR architectures. We apply these principles to design and implement the RecoBlock SoC platform, which main characterization is (1) a RTR plug-and-play IP-Core whose functionality is configured at run-time; (2) flexible inter-block communication configured via software, and (3) built-in buffers to support data-driven streams and inter-process communications. We illustrate the potential of our platform by a tutorial case study using an adaptive streaming application to investigate different combinations of reconfigurable arrays and schedules. The experiments underline the benefits of the platform and shows resource utilization.

[1]  Juanjo Noguera,et al.  Multitasking on reconfigurable architectures: microarchitecture support and dynamic scheduling , 2004, TECS.

[2]  Grant Martin,et al.  Winning the SoC revolution : experiences in real design , 2003 .

[3]  Gordon J. Brebner,et al.  The swappable logic unit: a paradigm for virtual hardware , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[4]  Christoph Roth,et al.  The Study of a Dynamic Reconfiguration Manager for Systems-on-Chip , 2011, 2011 IEEE Computer Society Annual Symposium on VLSI.

[5]  Ann Gordon-Ross,et al.  Hardware module reuse and runtime assembly for dynamic management of reconfigurable resources , 2011, 2011 International Conference on Field-Programmable Technology.

[6]  Edward A. Lee,et al.  Dataflow process networks , 2001 .

[7]  Luís Gomes,et al.  Modeling Formalisms for Embedded System Design , 2005, Embedded Systems Handbook.

[8]  V. Chaiyakul,et al.  Essential issues for IP reuse , 2000, Proceedings 2000. Design Automation Conference. (IEEE Cat. No.00CH37106).

[10]  Axel Jantsch,et al.  A Reconfigurable Design Framework for FPGA Adaptive Computing , 2009, 2009 International Conference on Reconfigurable Computing and FPGAs.

[11]  Jürgen Teich,et al.  The Erlangen slot machine: increasing flexibility in FPGA-based reconfigurable platforms , 2005, Proceedings. 2005 IEEE International Conference on Field-Programmable Technology, 2005..

[12]  Scott Hauck,et al.  Reconfigurable Computing: The Theory and Practice of FPGA-Based Computation , 2007 .

[13]  Jürgen Teich,et al.  The Erlangen Slot Machine: a highly flexible FPGA-based reconfigurable platform , 2005, 13th Annual IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM'05).

[14]  Jun Zhu,et al.  Performance Analysis and Implementation of Predictable Streaming Applications on Multiprocessor Systems-on-Chip , 2010 .

[15]  Axel Jantsch,et al.  Modelling Adaptive Systems in ForSyDe , 2008, VerAS@TPHOLs.

[16]  Rudy Lauwereins,et al.  Designing an operating system for a heterogeneous reconfigurable SoC , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[17]  Daniel D. Gajski,et al.  Embedded tutorial: essential issues for IP reuse , 2000, ASP-DAC '00.

[18]  Neil W. Bergmann,et al.  QUKU: A FPGA Based Flexible Coarse Grain Architecture Design Paradigm using Process Networks , 2007, 2007 IEEE International Parallel and Distributed Processing Symposium.

[19]  K. Keutzer,et al.  System-level design: orthogonalization of concerns andplatform-based design , 2000, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..