Hardware Runtime Monitoring for Dependable COTS-Based Real-Time Embedded Systems | IEEE Conference Publication | IEEE Xplore

Hardware Runtime Monitoring for Dependable COTS-Based Real-Time Embedded Systems


Abstract:

COTS peripherals are heavily used in the embedded market, but their unpredictability is a threat for high-criticality real-time systems: it is hard or impossible to forma...Show More

Abstract:

COTS peripherals are heavily used in the embedded market, but their unpredictability is a threat for high-criticality real-time systems: it is hard or impossible to formally verify COTS components. Instead, we propose to monitor the runtime behavior of COTS peripherals against their assumed specifications. If violations are detected, then an appropriate recovery measure can be taken. Our monitoring solution is decentralized: a monitoring device is plugged in on a peripheral bus and monitors the peripheral behavior by examining read and write transactions on the bus. Provably correct (w.r.t. given specifications) hardware monitors are synthesized from high level specifications, and executed on FPGAs, resulting in zero runtime overhead on the system CPU. The proposed technique, called BusMOP, has been implemented as an instance of a generic runtime verification framework, called MOP, which until now has only been used for software monitoring. We experimented with our technique using a COTS data acquisition board.
Date of Conference: 30 November 2008 - 03 December 2008
Date Added to IEEE Xplore: 08 December 2008
Print ISBN:978-0-7695-3477-0
Print ISSN: 1052-8725
Conference Location: Barcelona, Spain
References is not available for this document.

1. Introduction

The real-time embedded system industry is progressively moving towards the use of Commercial-Off-The-Shelf (COTS) components in an attempt to reduce costs and time-to-market, even for highly critical systems like those deployed by the avionic industry. While specialized hardware and software solutions are sometimes available for such markets, their average performance and ease of integration is lagging behind the development of COTS components. For example, a commercial plane like the Boeing 777 uses the SAFEbus backplane [12], which, while specially designed to meet the hard real-time constraints of an avionic system, is only capable of transferring data up to 60 Mbps. On the other side, a modern COTS peripheral bus such as PCI Express 2.0 [18] can reach transfer speeds of 16 Gbyte/s, over three orders of magnitude greater than SAFEbus.

Select All
1.
R. Alur and D.L. Dill. A theory of timed automata. Theoretical Computer Science, 126:183-235, 1994.
2.
P. Avgustinov, A. Christensen, L. Hendren, S. Kuzins, J. Lhotak, O. Lhotak, O. de Moor, D. Sereni, G. Sittampalam, and J. Tibble. ABC: an extensible AspectJ compiler. In Proc. of the ACM Conf. on Aspect-oriented software development (ASOD05), pages 87-98, 2005. (Pubitemid 43283502)
3.
P. Avgustinov, J. Tibble, and O. de Moor. Making trace monitors feasible. In Proc. of the ACM Conf. on Object-Oriented 4 More precisely, MOP supports DCFLs. Programming, Systems, Languages, and Applications (OOPSLA 07), pages 589-608, 2007.
4.
H. Barringer, A. Goldberg, K. Havelund, and K. Sen. Rulebased runtime verification. In Int. Conf. on Verification, Model Checking, and Abstract Interpretation (VMCAI04), pages 277-306, 2004.
5.
BusMOP webpage. *http://fsl.cs.uiuc.edu/BusMOP.
6.
F. Chen and G. Roşu. MOP: An Efficient and Generic Runtime Verification Framework. In Proc. of the ACM Conf. on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA07), pages 569-588, 2007.
7.
D. Drusinksky. Temporal rover, 1997-2007.
8.
E.A. Emerson. Handbook of Theoretical Computer Science. MIT Press, 1990. Chapter 16: Temporal and modal logic.
9.
Eagle Technology. PCI 703 Series Users Manual. http://www.eagledaq.com/ displayproduct36.htm.
10.
D. Abramson et al. Intel virtualization technology for directed i/o. Intel Technology Journal, 10(03), Aug 2006.
11.
K. Havelund and G. Rosu. Monitoring Java programs with Java pathexplorer. In Proc. First Workshop on Runtime Verification, 2001.
12.
K. Hoyme and K. Driscoll. Safebus(tm). IEEE Aerospace Electronics and Systems Magazine, pages 34-39, Mar 1993.
13.
M. Kim, M. Viswanathan, S. Kannan, I. Lee, and O. Sokolsky. Java-mac: A run-time assurance approach for Java programs. Formal Methods in System Design, 24(2):129-155, 2004.
14.
D. Knuth. Backus normal form vs. backus naur form. Communications of the ACM, 7(12):735-736, 1964.
15.
H. Lu and A. Forin. The design and implementation of p2v, an architecture for zero-overhead online verification of software programs. Technical Report MSR-TR-2007-99, Microsoft Research, 2007.
16.
M. Sipser. Introduction to the Theory of Computation. PWS Publishing, 1996. Chapter 1: Regular Languages.
17.
M. Martin, B. Livshits, and M. Lam. Finding application errors and security flaws using PQL: a program query language. In Proc. of the ACM Conf. on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 05), pages 365-383, 2005.
18.
PCI SIG. Conventional PCI 3.0, PCI-X 2.0 and PCI-E 2.0 Specifications. *http://www.pcisig.com.
19.
R. Pellizzoni, B. D. Buy, M. Caccamo, and L. Sha. Coscheduling of real-time tasks and PCI bus transactions. Technical report, University of Illinois at Urbana- Champaign, 2008. Available at *http://netfiles. uiuc.edu/rpelliz2/www/.
20.
R. Pellizzoni, P. Meredith, M. Caccamo, and G. Roşu. Bus- MOP: a runtime monitoring framework for PCI peripherals. Technical report, University of Illinois at Urbana- Champaign, 2008. Available at *http://netfiles. uiuc.edu/rpelliz2/www/.
21.
Xilinx, Inc. Virtex-4 ML455 PCI/PCI-X Development Kit User Guide. *http://www.xilinx.com/support/ documentation/boardsandkits/ug084.pdf.
Contact IEEE to Subscribe

References

References is not available for this document.