Abstract
Many papers proposed the execution of real-time tasks on FPGA hardware. Most of these works do not demonstrate fully working systems and suffer from either unrealistic assumptions about the placement, reconfigurability, and connectivity of hardware tasks to memory and peripherals, or do not come with an efficient schedulability test that guarantees that real-time constraints are met.
In this paper, we present a practical way of executing a set of periodic real-time tasks under static priority assignment on a platform FPGA, comprising a processing system and programmable logic. The platform FPGA is operated under the ReconOS\(^{64}\) architecture and operating system layer which enables practical realization. The hardware tasks follow a 3-phase task model with memory-in, execution, and memory-out phases. All memory phases compete for shared memory, which forms a resource that must be accessed mutually exclusive. While our task and system models are relatively simple as they map each hardware task to a separate region in the programmable logic, they lead to an efficient schedulability test covering memory accesses. We present our task and ReconOS\(^{64}\) system models, describe the runtime scheduler, and derive a corresponding schedulability test.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Agne, A., et al.: ReconOS - an operating system approach for reconfigurable computing. IEEE Micro 34(1), 60–71 (2014). https://doi.org/10.1109/MM.2013.110
Andrews, D., et al.: Achieving Programming Model Abstractions for Reconfigurable Computing. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 16(1), 34–44 (2008)
Biondi, A., Balsini, A., Pagani, M., Rossi, E., Marinoni, M., Buttazzo, G.: A framework for supporting real-time applications on dynamic reconfigurable FPGAs. In: 2016 IEEE Real-Time Systems Symposium (RTSS), pp. 1–12 (2016). https://doi.org/10.1109/RTSS.2016.010
Clausing, L., Platzner, M.: ReconOS\(^{64}\): A hardware operating system for modern platform FPGAs with 64-Bit support. In: 2022 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW), pp. 120–127. IEEE (2022). https://doi.org/10.1109/ipdpsw55747.2022.00029
Danne, K., Platzner, M.: Periodic real-time scheduling for FPGA computers. In: Third International Workshop on Intelligent Solutions in Embedded Systems, 2005, pp. 117–127 (2005). https://doi.org/10.1109/WISES.2005.1438720
Danne, K., Platzner, M.: An edf schedulability test for periodic tasks on reconfigurable hardware devices. SIGPLAN Not. 41(7), 93–102 (2006). https://doi.org/10.1145/1159974.1134665
Dittmann, F., Frank, S.: Hard real-time reconfiguration port scheduling. In: 2007 Design, Automation & Test in Europe Conference & Exhibition, pp. 1–6 (2007). https://doi.org/10.1109/DATE.2007.364578
D’Andrea, G., Valente, G.: Work-in-progress: Cyber-physical systems and dynamic partial reconfiguration scalability: opportunities and challenges. In: 2020 IEEE Real-Time Systems Symposium (RTSS), pp. 399–402 (2020). https://doi.org/10.1109/RTSS49844.2020.00048
D’Andrea, G., Valente, G., Pomante, L., Di Mascio, T.: An investigation of dynamic partial reconfiguration offloading in hard real-time systems. In: 2021 24th Euromicro Conference on Digital System Design (DSD), pp. 192–198 (2021). https://doi.org/10.1109/DSD53832.2021.00039
Fleming, K., Yang, H.J., Adler, M., Emer, J.: The LEAP FPGA operating system. In: International Conference on Field Programmable Logic and Applications (FPL), pp. 1–8. IEEE (2014)
Guan, N., Deng, Q., Gu, Z., Xu, W., Yu, G.: Schedulability analysis of preemptive and nonpreemptive edf on partial runtime-reconfigurable FPGAs. ACM Trans. Des. Autom. Electron. Syst. 13(4) (2008). https://doi.org/10.1145/1391962.1391964
Ismail, A., Shannon, L.: FUSE: front-end user framework for o/s abstraction of hardware accelerators. In: International Symposium on Field-Programmable Custom Computing Machines (FCCM). IEEE (2011)
Iturbe, X., et al.: R3tos: a novel reliable reconfigurable real-time operating system for highly adaptive, efficient, and dependable computing on fpgas. IEEE Trans. Comput. 62(8), 1542–1556 (2013). https://doi.org/10.1109/TC.2013.79
Kwok-Hay So, H., Brodersen, R.: Runtime Filesystem Support for Reconfigurable FPGA Hardware Processes in BORPH. In: International Symposium on Field-Programmable Custom Computing Machines (FCCM) (2008)
Lu, Y., Marconi, T., Bertels, K., Gaydadjiev, G.: Online task scheduling for the FPGA-based partially reconfigurable systems. In: Becker, J., Woods, R., Athanas, P., Morgan, F. (eds.) Reconfigurable Computing: Architectures, Tools and Applications, pp. 216–230. Springer, Berlin Heidelberg, Berlin, Heidelberg (2009)
Lübbers, E., Platzner, M.: ReconOS: Multithreaded programming for reconfigurable computers. ACM Trans. Embedded Comput. Syst. 9(1), 8:1–8:33 (2009). https://doi.org/10.1145/1596532.1596540
Maia, C., Nelissen, G., Nogueira, L., Pinho, L.M., Pérez, D.G.: Schedulability analysis for global fixed-priority scheduling of the 3-phase task model. In: 2017 IEEE 23rd International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA), pp. 1–10 (2017). https://doi.org/10.1109/RTCSA.2017.8046313
Pellizzoni, R., Caccamo, M.: Real-time management of hardware and software tasks for FPGA-based embedded systems. IEEE Trans. Comput. 56(12), 1666–1680 (2007). https://doi.org/10.1109/TC.2007.70763
Rossi, E., Damschen, M., Bauer, L., Buttazzo, G., Henkel, J.: Preemption of the partial reconfiguration process to enable real-time computing with FPGAs. ACM Trans. Reconfigurable Technol. Syst. 11(2), 10:1–10:24 (2018). https://doi.org/10.1145/3182183
Saha, S., Sarkar, A., Chakrabarti, A., Ghosh, R.: Co-scheduling persistent periodic and dynamic aperiodic real-time tasks on reconfigurable platforms. IEEE Trans. Multi-Scale Comput. Syst. 4(1), 41–54 (2018). https://doi.org/10.1109/TMSCS.2017.2691701
Steiger, C., Walder, H., Platzner, M.: Operating systems for reconfigurable embedded platforms: online scheduling of real-time tasks. IEEE Trans. Comput. 53(11), 1393–1407 (2004). https://doi.org/10.1109/TC.2004.99
Steiger, C., Walder, H., Platzner, M., Thiele, L.: Online scheduling and placement of real-time tasks to partially reconfigurable devices. In: RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003, pp. 224–225 (2003). https://doi.org/10.1109/REAL.2003.1253269
Valente, G., Mascio, T.D., Pomante, L., D’Andrea, G.: Dynamic partial reconfiguration profitability for real-time systems. IEEE Embed. Syst. Lett. 13(3), 102–105 (2021). https://doi.org/10.1109/LES.2020.3004302
Wang, Y., et al.: SPREAD: A Streaming-Based Partially Reconfigurable Architecture and Programming Model. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 21, 2179–2192 (2013)
Acknowledgments
This work was partially supported by the German Research Foundation (DFG) within the Collaborative Research Centre On-The-Fly Computing (GZ: SFB 901/3) under the project number 160364472.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Clausing, L., Guettatfi, Z., Kaufmann, P., Lienen, C., Platzner, M. (2023). On Guaranteeing Schedulability of Periodic Real-Time Hardware Tasks Under ReconOS\(^{64}\). In: Palumbo, F., Keramidas, G., Voros, N., Diniz, P.C. (eds) Applied Reconfigurable Computing. Architectures, Tools, and Applications. ARC 2023. Lecture Notes in Computer Science, vol 14251. Springer, Cham. https://doi.org/10.1007/978-3-031-42921-7_17
Download citation
DOI: https://doi.org/10.1007/978-3-031-42921-7_17
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-42920-0
Online ISBN: 978-3-031-42921-7
eBook Packages: Computer ScienceComputer Science (R0)