Reconfiguration in FPGA-based multi-core platforms for hard real-time applications

In general-purpose computing multi-core platforms, hardware accelerators and reconfiguration are means to improve performance; i.e., the average-case execution time of a software application. In hard real-time systems, such average-case speed-up is not in itself relevant - it is the worst-case execution-time of tasks of an application that determines the systems ability to respond in time. To support this focus, the platform must provide service guarantees for both communication and computation resources. In addition, many hard real-time applications have multiple modes of operation, and each mode has specific requirements. An interesting perspective on reconfigurable computing is to exploit run-time reconfiguration to support mode changes. In this paper we explore approaches to reconfiguration of communication and computation resources in the T-CREST hard real-time multi-core platform. The reconfiguration of communication resources is supported by extending the message-passing network-on-chip with capabilities for setting up, tearing down, and modifying the bandwidth of virtual circuits. The reconfiguration of computation resources, such as hardware accelerators, is performed using the dynamic partial reconfiguration capabilities found in modern FPGAs.

[1]  Ioannis Kotleas,et al.  Network-on-Chip Based Multiprocessor Platforms , 2014 .

[2]  Rasmus Bo Sorensen,et al.  A Metaheuristic Scheduler for Time Division Multiplexed Networks-on-Chip , 2014, 2014 IEEE 17th International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing.

[3]  Benedikt Huber,et al.  Compiling for Time Predictability , 2012, SAFECOMP Workshops.

[4]  Neil C. Audsley,et al.  Investigating Shared Memory Tree Prefetching within Multimedia NoC Architectures , 2013 .

[5]  Nikil D. Dutt,et al.  Integrating Physical Constraints in HW-SW Partitioning for Architectures With Partial Dynamic Reconfiguration , 2006, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[6]  Benedikt Huber,et al.  T-CREST: Time-predictable multi-core architecture for embedded systems , 2015, J. Syst. Archit..

[7]  Kees G. W. Goossens,et al.  The aethereal network on chip after ten years: Goals, evolution, lessons, and future , 2010, Design Automation Conference.

[8]  Florent de Dinechin,et al.  Designing Custom Arithmetic Data Paths with FloPoCo , 2011, IEEE Design & Test of Computers.

[9]  Kees G. W. Goossens,et al.  dAElite: A TDM NoC Supporting QoS, Multicast, and Fast Connection Set-Up , 2014, IEEE Transactions on Computers.

[10]  Wang Lie,et al.  Dynamic Partial Reconfiguration in FPGAs , 2009, 2009 Third International Symposium on Intelligent Information Technology Application.

[11]  Benoît Dupont de Dinechin,et al.  Guaranteed Services of the NoC of a Manycore Processor , 2014, NoCArc '14.

[12]  Kees G. W. Goossens,et al.  Argo: A Real-Time Network-on-Chip Architecture With an Efficient GALS Implementation , 2016, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[13]  Marco D. Santambrogio,et al.  PaRA-Sched: A Reconfiguration-Aware Scheduler for Reconfigurable Architectures , 2014, 2014 IEEE International Parallel & Distributed Processing Symposium Workshops.

[14]  Martin Schoeberl,et al.  A Time-Predictable Memory Network-on-Chip , 2014, WCET.

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

[16]  Kees G. W. Goossens,et al.  Architecture and optimal configuration of a real-time multi-channel memory controller , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[17]  Rasmus Bo Sorensen,et al.  An area-efficient TDM NoC supporting reconfiguration for mode changes , 2016, 2016 Tenth IEEE/ACM International Symposium on Networks-on-Chip (NOCS).

[18]  Martin Schoeberl,et al.  An area-efficient network interface for a TDM-based Network-on-Chip , 2013, 2013 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[19]  Kehuai Wu,et al.  Reconfigurable Architectures: From Physical Implementation to Dynamic Behavoir Modelling , 2008 .

[20]  Martin Schoeberl,et al.  Towards a Time-predictable Dual-Issue Microprocessor: The Patmos Approach , 2011, PPES.

[21]  Alan Burns,et al.  Real-Time Systems and Programming Languages - Ada, Real-Time Java and C / Real-Time POSIX, Fourth Edition , 2009, International computer science series.

[22]  Reinhold Heckmann,et al.  Worst case execution time prediction by static program analysis , 2004, 18th International Parallel and Distributed Processing Symposium, 2004. Proceedings..

[23]  Martin Schoeberl,et al.  Interfacing hardware accelerators to a time-division multiplexing network-on-chip , 2015, 2015 Nordic Circuits and Systems Conference (NORCAS): NORCHIP & International Symposium on System-on-Chip (SoC).

[24]  Jürgen Teich,et al.  ReCoBus-Builder — A novel tool and technique to build statically and dynamically reconfigurable systems for FPGAS , 2008, 2008 International Conference on Field Programmable Logic and Applications.

[25]  Rene L. Cruz,et al.  A calculus for network delay, Part I: Network elements in isolation , 1991, IEEE Trans. Inf. Theory.