A Framework for Supporting Real-Time Applications on Dynamic Reconfigurable FPGAs

Computing platforms are evolving towards heterogeneous architectures including processors of different types and field programmable gate arrays (FPGAs), used as hardware accelerators for speeding up specific functions. The increasing capacity and performance of modern FPGAs, with their partial reconfiguration capabilities, have made them attractive in several application domains, including space applications.This paper proposes a framework for supporting the development of safety-critical real-time systems that exploit hardware accelerators developed through FPGAs with dynamic partial reconfiguration capabilities.A model is first presented and then used to derive a response-time analysis to verify the schedulability of a real-time task set under given constraints and assumptions. Although the analysis is based on a generic model, the proposed framework has been conceived to account for several real-world constraints present on today's platforms and has been practically validated on the Zynq platform, showing that it can actually be supported by state-of-the-art technologies. Finally, a number of experiments are reported to evaluate the worst-case performance of the proposed approach on synthetic workload.

[1]  Ursula Faber Partial Reconfiguration On Fpgas Architectures Tools And Applications , 2016 .

[2]  Tughrul Arslan,et al.  Microkernel Architecture and Hardware Abstraction Layer of a Reliable Reconfigurable Real-Time Operating System (R3TOS) , 2015, ACM Trans. Reconfigurable Technol. Syst..

[3]  Gurulingesh Raravi,et al.  Timing Analysis of Fixed Priority Self-Suspending Sporadic Tasks , 2015, 2015 27th Euromicro Conference on Real-Time Systems.

[4]  Suitability of reprogrammable FPGAs in space applications , 2002 .

[5]  Giorgio C. Buttazzo,et al.  Measuring the Performance of Schedulability Tests , 2005, Real-Time Systems.

[6]  François Duhem,et al.  FaRM: Fast Reconfiguration Manager for Reducing Reconfiguration Time Overhead on FPGA , 2011, ARC.

[7]  Andy J. Wellings,et al.  Transparent hardware synthesis of Java for predictable large-scale distributed systems , 2015, ArXiv.

[8]  Rudy Lauwereins,et al.  Infrastructure for design and management of relocatable tasks in a heterogeneous reconfigurable system-on-chip , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[9]  Marco Caccamo,et al.  Real-Time Management of Hardware and Software Tasks for FPGA-based Embedded Systems , 2007, IEEE Transactions on Computers.

[10]  Marco Platzner,et al.  Cooperative multithreading in dynamically reconfigurable systems , 2009, 2009 International Conference on Field Programmable Logic and Applications.

[11]  Amlan Chakrabarti,et al.  Scheduling Dynamic Hard Real-Time Task Sets on Fully and Partially Reconfigurable Platforms , 2015, IEEE Embedded Systems Letters.

[12]  Jim Tørresen,et al.  Go Ahead: A Partial Reconfiguration Framework , 2012, 2012 IEEE 20th International Symposium on Field-Programmable Custom Computing Machines.

[13]  José Alberto Fonseca,et al.  An FPGA-based coprocessor for real-time fieldbus traffic scheduling - architecture and implementation , 2005, J. Syst. Archit..

[14]  Alessandro Forin,et al.  Minimizing partial reconfiguration overhead with fully streaming DMA engines and intelligent ICAP controller (abstract only) , 2010, FPGA '10.

[15]  Marco Pagani,et al.  Towards Real-Time Operating Systems for Heterogeneous Reconfigurable Platforms , 2016 .

[16]  Alan Burns,et al.  Controller Area Network (CAN) schedulability analysis: Refuted, revisited and revised , 2007, Real-Time Systems.

[17]  Ashok Samal,et al.  HGA: A Hardware-Based Genetic Algorithm , 1995, Third International ACM Symposium on Field-Programmable Gate Arrays.

[18]  Florian Dittmann,et al.  Hard Real-Time Reconfiguration Port Scheduling , 2007, 2007 Design, Automation & Test in Europe Conference & Exhibition.

[19]  Luca Benini,et al.  Energy and performance exploration of accelerator coherency port using Xilinx ZYNQ , 2013 .

[20]  P Alfke Recent Progress in Field Programmable Logic , 2000 .

[21]  Marco Platzner,et al.  Periodic real-time scheduling for FPGA computers , 2005, Third International Workshop on Intelligent Solutions in Embedded Systems, 2005..

[22]  Enrico Bini,et al.  Optimizing the FPGA Implementation of HRT Systems , 2007, 13th IEEE Real Time and Embedded Technology and Applications Symposium (RTAS'07).

[23]  Wang Chen,et al.  An FPGA implementation of the two-dimensional finite-difference time-domain (FDTD) algorithm , 2004, FPGA '04.

[24]  Marco Platzner,et al.  ReconOS: Multithreaded programming for reconfigurable computers , 2009, TECS.