Failure-Dependent Timing Analysis - A New Methodology for Probabilistic Worst-Case Execution Time Analysis

  • Kai Höfig
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7201)

Abstract

Embedded real-time systems are growing in complexity, which goes far beyond simplistic closed-loop functionality. Current approaches for worst-case execution time (WCET) analysis are used to verify the deadlines of such systems. These approaches calculate or measure the WCET as a single value that is expected as an upper bound for a system’s execution time. Overestimations are taken into account to make this upper bound a safe bound, but modern processor architectures expand those overestimations into unrealistic areas. Therefore, we present in this paper how of safety analysis model probabilities can be combined with elements of system development models to calculate a probabilistic WCET. This approach can be applied to systems that use mechanisms belonging to the area of fault tolerance, since such mechanisms are usually quantified using safety analyses to certify the system as being highly reliable or safe. A tool prototype implementing this approach is also presented which provides reliable safe upper bounds by performing a static WCET analysis and which overcomes the frequently encountered problem of dependence structures by using a fault injection approach.

Keywords

fault tolerance software safety static analysis tool WCET fault tree 

References

  1. 1.
    Bernat, G., Burns, A., Newby, M.: Probabilistic timing analysis: An approach using copulas. J. Embedded Comput. 1, 179–194 (2005)Google Scholar
  2. 2.
    Diaz, J.L., Garcia, D.F., Kim, K., Lee, C.-G., Lo Bello, L., Lopez, J.M., Min, S.L., Mirabella, O.: Stochastic analysis of periodic real-time systems. In: 23rd IEEE Real-Time Systems Symposium, RTSS 2002, pp. 289–300 (2002)Google Scholar
  3. 3.
    Laprie, J.-C., Arlat, J., Beounes, C., Kanoun, K.: Definition and analysis of hardware- and software-fault-tolerant architectures. Computer 23(7), 39–51 (1990)CrossRefGoogle Scholar
  4. 4.
    Arlat, J., Kanoun, K., Laprie, J.-C.: Dependability modeling and evaluation of software fault-tolerant systems. IEEE Transactions on Computers 39(4), 504–513 (1990)CrossRefGoogle Scholar
  5. 5.
    Belli, F., Jedrzejowicz, P.: Fault-tolerant programs and their reliability. IEEE Transactions on Reliability 39(2), 184–192 (1990)CrossRefMATHGoogle Scholar
  6. 6.
    Pucci, G.: A new approach to the modeling of recovery block structures. IEEE Transactions on Software Engineering 18(2), 159–167 (1992)CrossRefGoogle Scholar
  7. 7.
    Dugan, J.B., Doyle, S.A., Patterson-Hine, F.A.: Simple models of hardware and software fault tolerance. In: Proceedings of the Annual Reliability and Maintainability Symposium, January 24-27, pp. 124–129 (1994)Google Scholar
  8. 8.
    Doyle, S.A., Mackey, J.L.: Comparative analysis of two architectural alternatives for the n-version programming (nvp) system. In: Proceedings of the Annual Reliability and Maintainability Symposium, pp. 275–282 (January 1995)Google Scholar
  9. 9.
    Tyrrell, A.M.: Recovery blocks and algorithm-based fault tolerance. In: Proceedings of the 22nd EUROMICRO Conference EUROMICRO 1996. Beyond 2000: Hardware and Software Design Strategies, pp. 292–299, 2-5 (1996)Google Scholar
  10. 10.
    Mok, A., Amerasinghe, P., Chen, M., Tantisirivat, K.: Evaluating tight execution time bounds of programs by annotations. IEEE Real-Time Syst. Newsl. 5(2-3), 81–86 (1989)Google Scholar
  11. 11.
    Lindgren, M., Hansson, H., Thane, H.: Using measurements to derive the worst-case execution time. In: Proceedings of the Seventh International Conference on Real-Time Computing Systems and Applications, pp. 15–22 (2000)Google Scholar
  12. 12.
    Gustafsson, J., Ermedahl, A., Lisper, B.: Towards a flow analysis for embedded system C programs. In: 10th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems, WORDS 2005, pp. 287–297, 2-4 (2005)Google Scholar
  13. 13.
    Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., Stenström, P.: The worst-case execution-time problem—overview of methods and survey of tools. ACM Trans. Embed. Comput. Syst. 7(3), 1–53 (2008)CrossRefGoogle Scholar
  14. 14.
    Ferdinand, C.: Worst case execution time prediction by static program analysis. In: Proceedings of the 18th International Parallel and Distributed Processing Symposium, p. 125 (April 2004)Google Scholar
  15. 15.
    Ferdinand, C., Heckmann, R.: aiT: Worst-Case Execution Time Prediction by Static Program Analysis. Building the Information Society 156, 377–383 (2004)CrossRefGoogle Scholar
  16. 16.
    Puschner, P., Nossal, R.: Testing the results of static worst-case execution-time analysis. In: Proceedings of the 19th IEEE Real-Time Systems Symposium, pp. 134–143, 2-4 (1998)Google Scholar
  17. 17.
    Wolf, F., Staschulat, J., Ernst, R.: Hybrid cache analysis in running time verification of embedded software. Design Automation for Embedded Systems 7(3), 271–295 (2002)CrossRefMATHGoogle Scholar
  18. 18.
    Li, X., Mitra, T., Roychoudhury, A.: Modeling control speculation for timing analysis. Real-Time Syst. 29(1), 27–58 (2005)CrossRefMATHGoogle Scholar
  19. 19.
    Burns, A., Edgar, S.: Predicting computation time for advanced processor architectures. In: 12th Euromicro Conference on Real-Time Systems, Euromicro RTS 2000, pp. 89–96 (2000)Google Scholar
  20. 20.
    Burns, A., Edgar, S.: Statistical analysis of WCET for scheduling. In: Proceedings of the 22nd IEEE Real-Time Systems Symposium, pp. 215–224 (December 2001)Google Scholar
  21. 21.
    Griffin, D., Burns, A.: Realism in Statistical Analysis of Worst Case Execution Times. In: Lisper, B. (ed.) 10th International Workshop on Worst-Case Execution Time Analysis (WCET 2010). OpenAccess Series in Informatics (OASIcs), vol. 15, pp. 44–53. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, Dagstuhl, Germany (2010); The printed version of the WCET 2010 proceedings are published by OCG (www.ocg.at) - ISBN 978-3-85403-268-7Google Scholar
  22. 22.
    Bernat, G., Colin, A., Petters, S.M.: WCET Analysis of Probabilistic Hard Real-Time Systems. In: Proceedings of the 23rd Real-Time Systems Symposium, RTSS 2002, pp. 279–288 (2002)Google Scholar
  23. 23.
    Bernat, G., Colin, A., Petters, S.: pWCET: A tool for probabilistic worst-case execution time analysis of real-time systems. Technical report, University of York. England UK (2003)Google Scholar
  24. 24.
    David, L., Puaut, I.: Static determination of probabilistic execution times. In: Proceedings of the 16th Euromicro Conference on Real-Time Systems, ECRTS 2004, June-2 July, pp. 223–230 (2004)Google Scholar
  25. 25.
    Perrone, R., Macedo, R., Lima, G., Lima, V.: An approach for estimating execution time probability distributions of component-based real-time systems. Journal of Universal Computer Science 15(11), 2142–2165 (2009), http://www.jucs.org/jucs_15_11/an_approach_for_estimating Google Scholar
  26. 26.
    Lu, Y., Nolte, T., Kraft, J., Norstrom, C.: Statistical-based response-time analysis of systems with execution dependencies between tasks. In: 15th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS), pp. 169–179 (March 2010)Google Scholar
  27. 27.
    Simulink © 1994-2011 The MathWorks Inc., 3 Apple Hill DriveNatick, MA 01760-2098, United States of America, http://www.mathworks.de/products/simulink
  28. 28.
    Enterprise Architect, © 2000-2011 Sparx Systems Pty Ltd., Creswick, Victoria, 3363, Australia, http://www.sparxsystems.com.au
  29. 29.
    OMG Systems Modeling Language, © 1997-2011 Object Management Group Inc., 140 Kendrick Street, Building A, Suite 300 Needham, MA 02494, United States of America, http://www.omgsysml.org
  30. 30.
    Kaiser, B., Liggesmeyer, P., Mäckel, O.: A new component concept for fault trees. In: SCS 2003: Proceedings of the 8th Australian Workshop on Safety Critical Systems and Software, pp. 37–46. Australian Computer Society, Inc., Darlinghurst (2003)Google Scholar
  31. 31.
    OMG. A UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded systems, Beta 2, 2008. Object Management Group (July 2009), http://omgmarte.org, OMG Document Number: ptc/2008-06-09
  32. 32.
    ARM7, © 2011 ARM Ltd., Equiniti Aspect House, Spencer Road Lancing BN99 6DA, United Kingdom, http://www.arm.com/products/processors/classic/arm7
  33. 33.
    YAGARTO, Yet another GNU ARM toolchain, Michael Fischer, Faustmuehlenweg 11, 34253 Lohfelden, Germany, http://www.yagarto.de/imprint.html
  34. 34.
    aiT Worst-Case Execution Time Analyzers, © 1998-2011 AbsInt Angewandte Informatik GmbH, Science Park 1, 66123 Saarbruecken, Germany, http://www.absint.com/ait
  35. 35.
    FaultTree+, © 1986-2011 Isograph Ltd., 2020 Main Street, Suite 1180, Irvine, CA 92614, United States of America, http://www.isograph-software.com/ftpover.htm
  36. 36.
    DO-178B. Software Considerations in Airbone Systems and Equipment Certification Standard, Radio Technincal Commission for Aeronautics (1991)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Kai Höfig
    • 1
  1. 1.AG Software Engineering: DependabilityUniversity of KaiserslauternKaiserslauternGermany

Personalised recommendations