The Community for Technology Leaders
RSS Icon
Subscribe
Issue No.08 - Aug. (2013 vol.62)
pp: 1542-1556
X. Iturbe , Syst. Level Integration Res. Group, Univ. of Edinburgh, Edinburgh, UK
K. Benkrid , Syst. Level Integration Res. Group, Univ. of Edinburgh, Edinburgh, UK
Chuan Hong , Syst. Level Integration Res. Group, Univ. of Edinburgh, Edinburgh, UK
A. Ebrahim , Syst. Level Integration Res. Group, Univ. of Edinburgh, Edinburgh, UK
R. Torrego , Embedded Syst.-on-Chip Group, IK4-Ikerlan Res. Center, Arrasate-Mondragon, Spain
I. Martinez , Embedded Syst.-on-Chip Group, IK4-Ikerlan Res. Center, Arrasate-Mondragon, Spain
T. Arslan , Syst. Level Integration Res. Group, Univ. of Edinburgh, Edinburgh, UK
J. Perez , Embedded Syst.-on-Chip Group, IK4-Ikerlan Res. Center, Arrasate-Mondragon, Spain
ABSTRACT
Despite the clear potential of FPGAs to push the current power wall beyond what is possible with general-purpose processors, as well as to meet ever more exigent reliability requirements, the lack of standard tools and interfaces to develop reconfigurable applications limits FPGAs' user base and makes their programming not productive. R3TOS is our contribution to tackle this problem. It provides systematic OS support for FPGAs, allowing the exploitation of some of the most advanced capabilities of FPGA technology by inexperienced users. What makes R3TOS special is its nonconventional way of exploiting on-chip resources: These are used indistinguishably for carrying out either computation or communication tasks at different times. Indeed, R3TOS does not rely on any static infrastructure apart from its own core circuitry, which is constrained to a specific region within the FPGA where it is implemented. Thus, the rest of the device is kept free of obstacles, with the spare resources ready to be used as and whenever needed. At runtime, the hardware tasks are scheduled and allocated with the dual objective of improving computation density and circumventing damaged resources on the FPGA.
INDEX TERMS
reconfigurable architectures, fault tolerant computing, field programmable gate arrays, operating systems (computers), real-time systems,computation density improvement, reliable reconfigurable real-time operating system, highly adaptive computing, efficient computing, dependable computing, FPGA, R3TOS, systematic OS support, on-chip resource exploitation,Self-organizing networks, Field programmable gate arrays, Real-time systems,reconfigurable computing, Dynamic partial reconfiguration, adaptivity, hardware virtualization, reliability
CITATION
X. Iturbe, K. Benkrid, Chuan Hong, A. Ebrahim, R. Torrego, I. Martinez, T. Arslan, J. Perez, "R3TOS: A Novel Reliable Reconfigurable Real-Time Operating System for Highly Adaptive, Efficient, and Dependable Computing on FPGAs", IEEE Transactions on Computers, vol.62, no. 8, pp. 1542-1556, Aug. 2013, doi:10.1109/TC.2013.79
REFERENCES
[1] C. Dubach, T.M. Jones, E. Bonilla, and M.F.P. O'Boyle, "A Predictive Model for Dynamic Microarchitectural Adaptivity Control," Proc. Ann. IEEE/ACM Int'l Symp. Microarchitecture, 2010.
[2] X. Iturbe, K. Benkrid, T. Arslan, I. Martinez, M. Azkarate, and M.D. Santambrogio, "A Roadmap for Autonomous Fault-Tolerant Systems," Proc. Int'l Conf. Design and Architectures for Signal and Image Processing, 2010.
[3] G.J. Brebner, "A Virtual Hardware Operating System for the Xilinx XC6200," Proc. Int'l Workshop Field-Programmable Logic, Smart Applications, New Paradigms and Compilers, 1996.
[4] J.Y. Mignolet, V. Nollet, P. Coene, D. Verkest, S. Vernalde, and R. Lauwereins, "Infrastructure for Design and Management of Relocatable Tasks in a Heterogeneous Reconfigurable System-on-Chip," Proc. Conf. Design, Automation and Test in Europe, 2003.
[5] H. Walder, "Operating System Design for Partially Reconfigurable Logic Devices," PhD thesis, Swiss Fed. Inst. of Technology, Zurich, Switzerland, 2005.
[6] H.K.-H. So, "BORPH: An Operating System for FPGA-based Reconfigurable Computers," PhD thesis, Univ. of California at Berkeley, 2007.
[7] G. Wigley and D. Kearney, "Research Issues in Operating Systems for Reconfigurable Computing," Proc. Int'l Conf. Eng. Reconfigurable Systems and Algorithms, 2002.
[8] B. Zhou, W. Qiu, and C. Peng, "An Operating System Framework for Reconfigurable Systems," Proc. Int'l Conf. Computer and Information Technology, 2005.
[9] R. Pellizzoni and M. Caccamo, "Adaptive Allocation of Software and Hardware Real-Time Tasks for FPGA-Based Embedded Systems," Proc. IEEE Real-Time and Embedded Technology and Applications Symp., 2006.
[10] B. Blodget, P. James-Roxby, E. Keller, S. McMillan, and P. Sundararajan, "A Self-Reconfiguring Platform," Proc. Int'l Conf. Field-Programmable Logic and Application, 2003.
[11] J.A. Williams and N.W. Bergmann, "Embedded Linux as a Platform for Dynamically Self-Reconfiguring Systems-On-Chip," Proc. Int'l Conf. Eng. Reconfigurable Systems and Algorithms, 2004.
[12] J.A. Williams, N.W. Bergmann, and X. Xie, "FIFO Communication Models in Operating Systems for Reconfigurable Computing," Proc. Ann. IEEE Symp. Field-Programmable Custom Computing Machines, 2005.
[13] A. Donato, F. Ferrandi, M. Santambrogio, and D. Sciuto, "Operating System Support for Dynamically Reconfigurable SoC Architectures," Proc. IEEE Int'l System-on-Chip Conf., 2005.
[14] D. Andrews, W. Peck, J. Agron, K. Preston, E. Komp, M. Finley, and R. Sass, "Hthreads: A Hardware/Software Co-Designed Multithreaded RTOS Kernel," Proc. IEEE Conf. Emerging Technologies and Factory Automation, 2005.
[15] H.K. So and R. Brodersen, "A Unified Hardware/Software Runtime Environment for FPGA-Based Reconfigurable Computers Using BORPH," ACM Trans. Embedded Computing Systems, vol. 7, no. 2, pp. 1-28, 2008.
[16] E. Lubbers, "Multithreaded Programming and Execution Models for Reconfigurable Hardware," PhD thesis, Univ. of Paderborn, Germany, 2010.
[17] A. Ismail and L. Shannon, "FUSE: Front-End User Framework for O/S Abstraction of Hardware Accelerators," Proc. Ann. IEEE Int'l Symp. Field-Programmable Custom Computing Machines, 2011.
[18] D. Gohringer, M. Hubner, E.N. Zeutebouo, and J. Becker, "Operating System for Runtime Reconfigurable Multiprocessor Systems," Int'l J. Reconfigurable Computing, vol. 2011, article 3, 2011.
[19] X. Iturbe, K. Benkrid, T. Arslan, R. Torrego, and I. Martinez, "Methods and Mechanisms for Hardware Multitasking: Executing and Synchronizing Fully Relocatable Hardware Tasks in Xilinx FPGAs," Proc. Int'l Conf. Field-Programmable Logic and Applications, 2011.
[20] X. Iturbe, K. Benkrid, R. Torrego, A. Ebrahim, and T. Arslan, "Online Clock Routing in Xilinx FPGAs for High-Performance and Reliability," Proc. NASA/ESA Conf. Adaptive Hardware and Systems, 2012.
[21] S. Srinivasan, P. Mangalagiri, Y. Xie, N. Vijaykrishnan, and K. Sarpatwari, "FLAW: FPGA Lifetime Awareness," Proc. Ann. Design Automation Conf., 2006.
[22] S. Feng, Shuguang, S. Gupta, A. Ansari, and S.A. Mahlke, "Maestro: Orchestrating Lifetime Reliability in Chip Multiprocessors," Proc. Int'l Conf. High-Performance Embedded Architectures and Compilers, 2010.
[23] J. Angermeier, D. Ziener, M. Glass, and J. Teich, "Stress-Aware Module Placement on Reconfigurable Devices," Proc. Int'l Conf. Field-Programmable Logic and Applications, 2011.
[24] K. Bertels, Hardware/Software Co-Design for Heterogeneous Multi-Core Platforms: The Hartes Toolchain. Springer, 2011.
[25] D. Grewe and M.F.P. O'Boyle, "A Static Task Partitioning Approach for Heterogeneous Systems Using OpenCL," Proc. Int'l Conf. Compiler Construction, 2011.
[26] T. Becker, W. Luk, and P.Y.K. Cheung, "Enhancing Relocatability of Partial Bitstreams for Run-Time Reconfiguration," Proc. Ann. IEEE Symp. Field-Programmable Custom Computing Machines, 2007.
[27] X. Iturbe, K. Benkrid, T. Arslan, C. Hong, and I. Martinez, "Empty Resource Compaction Algorithms for Real-Time Hardware Tasks Placement on Partially Reconfigurable FPGAs Subject to Fault Occurrence," Proc. Int'l Conf. Reconfigurable Computing and FPGAs, 2011.
[28] X. Iturbe, K. Benkrid, A. Ebrahim, C. Hong, T. Arslan, and I. Martinez, "Snake: An Efficient Strategy for the Reuse of Circuitry and Partial Computation Results in High-Performance Reconfigurable Computing," Proc. Int'l Conf. Reconfigurable Computing and FPGAs, 2011.
[29] X. Iturbe, K. Benkrid, C. Hong, A. Ebrahim, T. Arslan, and I. Martinez, "Runtime Scheduling, Allocation and Execution of Real-Time Hardware Tasks onto Xilinx FPGAs Subject to Fault Occurrence," Int'l J. Reconfigurable Computing, vol. 2013, article 905057, 2013.
[30] M. Liu, W. Kuehn, L. Zhonghai, and A. Jantsch, "Run-time Partial Reconfiguration Speed Investigation and Architectural Design Space Exploration," Proc. Int'l Conf. Field-Programmable Logic and Applications, 2009.
[31] J. Mitola, "Software Radios: Survey, Critical Evaluation and Future Directions," IEEE Aerospace and Electronic Systems Magazine, vol. 8, no. 4, pp. 25-36, Apr. 1993.
[32] H.M. Hussain, K. Benkrid, A.T. Erdogan, and H. Seker, "Highly Parameterized K-Means Clustering on FPGAs: Comparative Results with GPPs and GPUs," Proc. Int'l Conf. Reconfigurable Computing and FPGAs, 2011.
32 ms
(Ver 2.0)

Marketing Automation Platform Marketing Automation Tool