[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3078633.3081030acmconferencesArticle/Chapter ViewAbstractPublication PagescpsweekConference Proceedingsconference-collections
research-article

OSEK-V: application-specific RTOS instantiation in hardware

Published: 21 June 2017 Publication History

Abstract

The employment of a real-time operating system (RTOS) in an embedded control systems is often an all-or-nothing decision: While the RTOS-abstractions provide for easier software composition and development, the price in terms of event latencies and memory costs are high. Especially in HW/SW codesign settings, system developers try to avoid the employment of a full-blown RTOS as far as possible. In OSEK-V, we mitigate this trade-off by a very aggressive tailoring of the concrete RTOS instance into the hardware. Instead of implementing generic OS components as custom hardware devices, we capture the actually possible application-kernel interactions as a finite-state machine and integrate the tailored RTOS semantics directly into the processor pipeline. In our experimental results with an OSEK-based implementation of a quadrotor flight controller into the Rocket/RISC-V softcore, we thereby can significantly reduce event latencies, interrupt lock times, and memory footprint at moderate costs in terms of FPGA resources.

References

[1]
AEEC. Avionics Application Software Standard Interface (ARINC Specification 653-1). ARINC Inc, 2003.
[2]
AUTOSAR. Specification of Operating System (Version 5.1.0). Tech. rep. Automotive Open System Architecture GbR, 2013.
[3]
Jason Agron, Wesley Peck, Erik Anderson, David Andrews, Ed Komp, Ron Sass, Fabrice Baijot, and Jim Stevens. “Run-Time Services for Hybrid CPU/FPGA Systems on Chip”. In: RTSS ’06. 2006, pp. 3–12.
[4]
H. Almatary, N.C. Audsley, and A. Burns. “Reducing the Implementation Overheads of IPCP and DFP”. In: RTSS ’15. 2015.
[5]
Manfred Broy. “Challenges in Automotive Software Engineering”. In: ICSE ’06. 2006, pp. 33–42.
[6]
Wayne P. Burleson, Jason Ko, Douglas Niehaus, Krithi Ramamritham, John A. Stankovic, Gary Wallace, and Charles C. Weems. “The Spring Scheduling Coprocessor: A Scheduling Accelerator”. In: IEEE Transactions on Very Large Scale Integration (VLSI) Systems 7.1 (1999), pp. 38–47.
[7]
S. Devadas, Hi-Keung Ma, A.R. Newton, and A. Sangiovanni-Vincentelli. “MUSTANG: state assignment of finite state machines targeting multilevel logic implementations”. In: Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on 7.12 (1988), pp. 1290–1300.
[8]
Christian Dietrich, Martin Hoffmann, and Daniel Lohmann. “Back to the Roots: Implementing the RTOS as a Specialized State Machine”. In: OSPERT ’15. 2015, pp. 7–12.
[9]
Christian Dietrich, Martin Hoffmann, and Daniel Lohmann. “Cross-Kernel Control-Flow-Graph Analysis for Event-Driven Real-Time Systems”. In: LCTES ’15. 2015.
[10]
Guidelines for the Use of the C Language in Critical Systems (MISRA-C). 2004.
[11]
Wanja Hofer, Daniel Lohmann, Fabian Scheler, and Wolfgang Schröder-Preikschat. “Sloth: Threads as Interrupts”. In: RTSS ’09. (Dec. 1–4, 2009). 2009, pp. 204–213.
[12]
John Hopcroft. An n log n algorithm for minimizing states in a finite automaton. Tech. rep. Computer Science Department, University of California, 1971.
[13]
ISO 26262-4. ISO 26262-4:2011: Road vehicles – Functional safety – Part 4: Product development at the system level. 2011.
[14]
Tae-Hyung Kim and Seongsoo Hong. “State Machine Based Operating System Architecture for Wireless Sensor Networks”. In: Parallel and Distributed Computing: Applications and Technologies. Vol. 3320. LNCS. 2005, pp. 803–806.
[15]
Paul Kohout, Brinda Ganesh, and Bruce Jacob. “Hardware Support for Real-Time Operating Systems”. In: CODES+ISSS ’03. 2003, pp. 45–51.
[16]
Nupur Kothari, Todd Millstein, and Ramesh Govindan. “Deriving State Machines from TinyOS Programs Using Symbolic Execution”. In: IPSN ’08. 2008, pp. 271–282.
[17]
Yunsup Lee, A. Waterman, R. Avizienis, H. Cook, Chen Sun, V. Stojanovic, and K. Asanovic. “A 45nm 1.3GHz 16.7 double-precision GFLOPS/W RISC-V processor with vector accelerators”. In: European Solid State Circuits Conference (ESSCIRC), ESSCIRC 2014 - 40th. 2014, pp. 199–202.
[18]
Enno Lübbers and Marco Platzner. “ReconOS: Multithreaded Programming for Reconfigurable Computers”. In: ACM Trans. Embed. Comp. Syst. 9.1 (2009), 8:1–8:33.
[19]
Henry Massalin and Calton Pu. “Threads and Input/Output in the Synthesis Kernel”. In: SOSP ’89. 1989, pp. 191–201.
[20]
Dylan McNamee et al. “Specialization Tools and Techniques for Systematic Optimization of System Software”. In: ACM Trans. Comp. Syst. 19.2 (2001), pp. 217–251.
[21]
Vincent J. Mooney and Douglas M. Blough. “A Hardware-Software Real-Time Operating System Framework for SoCs”. In: IEEE Journal on Design and Test of Computers 19.6 (2002), pp. 44–51.
[22]
Edward F. Moore. “Gedanken-experiments on sequential machines”. In: Automata studies. Annals of mathematics studies, no. 34. 1956, pp. 129–153.
[23]
OSEK/VDX Group. Operating System Specification 2.2.3. Tech. rep. http://portal.osekvdx.org/files/pdf/specs/ os223.pdf, visited 2014-09-29. OSEK/VDX Group, 2005.
[24]
Arnaldo SR Oliveira, Luís Almeida, and António B Ferrari. “The ARPA-MT embedded SMT processor and its RTOS hardware accelerator”. In: Industrial Electronics 58.3 (2011), pp. 890–904.
[25]
David Patterson and Borivoje Nikoli´c. Agile Design for Hardware. EE|Times blog post. 2015.
[26]
Calton Pu, Henry Massalin, and John Ioannidis. “The Synthesis Kernel”. In: Computing Systems 1.1 (1988), pp. 11– 32.
[27]
Martin Schoeberl et al. “T-CREST: Time-predictable multicore architecture for embedded systems”. In: Journal of Systems Architecture 61.9 (2015), pp. 449 –471.
[28]
Hiroaki Takada and Ken Sakamura. “µITRON for Small-Scale Embedded Systems”. In: IEEE Micro 15.6 (1995), pp. 46–54.
[29]
Andrew S. Tanenbaum. Structured Computer Organization. Fifth. 2006.
[30]
David Tennenhouse. “Proactive Computing”. In: CACM (2000), pp. 43–45.
[31]
Peter Ulbrich, Rüdiger Kapitza, Christian Harkort, Reiner Schmid, and Wolfgang Schröder-Preikschat. “I4Copter: An Adaptable and Modular Quadrotor Platform”. In: SAC ’11. 2011, pp. 380–396.
[32]
D. Varma and E.A. Trachtenberg. “A fast algorithm for the optimal state assignment of large finite state machines”. In: ICCAD ’88. 1988, pp. 152–155.
[33]
T. Villa and A. Sangiovanni-Vincentelli. “NOVA: State Assignment of Finite State Machines for Optimal Two-level Logic Implementations”. In: 26th ACM/IEEE Design Automation Conference. DAC ’89. 1989, pp. 327–332.
[34]
Andrew Waterman, Yunsup Lee, David A. Patterson, and Krste Asanovi´c. The RISC-V Instruction Set Manual, Volume I: User-Level ISA, Version 2.0. Tech. rep. UCB/EECS-2014- 54. EECS Department, University of California, Berkeley, 2014.

Cited By

View all
  • (2023)MultiSSE: Static Syscall Elision and Specialization for Event-Triggered Multi-Core RTOS2023 IEEE 29th Real-Time and Embedded Technology and Applications Symposium (RTAS)10.1109/RTAS58335.2023.00028(262-275)Online publication date: May-2023
  • (2022)Agnostic Hardware-Accelerated Operating System for Low-End IoT2022 IEEE 28th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA)10.1109/RTCSA55878.2022.00009(21-30)Online publication date: Aug-2022
  • (2022)Hardware and RTOS Design of a Flight Controller for Professional ApplicationsIEEE Access10.1109/ACCESS.2022.323274910(134870-134883)Online publication date: 2022
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
LCTES 2017: Proceedings of the 18th ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems
June 2017
120 pages
ISBN:9781450350303
DOI:10.1145/3078633
  • General Chair:
  • Vijay Nagarajan,
  • Program Chair:
  • Zili Shao
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 21 June 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. OSEK
  2. application-specific processor design
  3. hardware-assisted real-time scheduling

Qualifiers

  • Research-article

Funding Sources

Conference

LCTES '17

Acceptance Rates

Overall Acceptance Rate 116 of 438 submissions, 26%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)19
  • Downloads (Last 6 weeks)3
Reflects downloads up to 31 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2023)MultiSSE: Static Syscall Elision and Specialization for Event-Triggered Multi-Core RTOS2023 IEEE 29th Real-Time and Embedded Technology and Applications Symposium (RTAS)10.1109/RTAS58335.2023.00028(262-275)Online publication date: May-2023
  • (2022)Agnostic Hardware-Accelerated Operating System for Low-End IoT2022 IEEE 28th International Conference on Embedded and Real-Time Computing Systems and Applications (RTCSA)10.1109/RTCSA55878.2022.00009(21-30)Online publication date: Aug-2022
  • (2022)Hardware and RTOS Design of a Flight Controller for Professional ApplicationsIEEE Access10.1109/ACCESS.2022.323274910(134870-134883)Online publication date: 2022
  • (2021)Taming Non-Deterministic Low-Level I/O: Predictable Multi-Core Real-Time Systems by SoC Co-Design2021 IEEE 24th International Symposium on Real-Time Distributed Computing (ISORC)10.1109/ISORC52013.2021.00017(43-52)Online publication date: Jun-2021
  • (2018)Performance analysis of tasks synchronization for real time operating systems2018 International Conference on Development and Application Systems (DAS)10.1109/DAAS.2018.8396072(63-66)Online publication date: May-2018
  • (2022)A Survey of the RISC-V Architecture Software SupportIEEE Access10.1109/ACCESS.2022.317412510(51394-51411)Online publication date: 2022
  • (2021)A review on drones controlled in real-timeInternational Journal of Dynamics and Control10.1007/s40435-020-00737-5Online publication date: 5-Jan-2021

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media