Skip to main content

A C-Language Binding for PSL

  • Conference paper
Book cover Embedded Software and Systems (ICESS 2007)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4523))

Included in the following conference series:

Abstract

In recent years we have seen an increase in the complexity of embedded system design and in the difficulties of their verification. As a result, engineers have been trying to verify the specifications at a higher level of abstraction. In this paper we present an automated tool which is able to perform runtime verification of a programs logical properties asserted by the programmer. The idea is to leverage the Assertion Based Verification language PSL, which is widely used by hardware engineers, extending it to the software verification of C language programs. The properties expressed in a simple subset of PSL are evaluated by the tool during full system simulation. Like in hardware Assertion Based Verification, the tool can handle both safety properties (absence of bad events) and liveness properties (good events eventually happen). The liveness property is not widely supported in existing verification tools.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Accellera, SystemVerilog

    Google Scholar 

  2. Accellera, IEEE P1850 PSL

    Google Scholar 

  3. Past, Present and Future: Oxford University Press (1967)

    Google Scholar 

  4. The temporal logic of programs. In: Proceedings of the 18th IEEE Symposium on the Foundations of Computer Science (FOCS-77), pp. 46–57 (1977)

    Google Scholar 

  5. Forin, A., Neekzad, B., Lynch, N.L.: Giano: The Two-Headed System Simulator. Microsoft Research Technical Report, vol. MSR-TR-2006-130 (2006)

    Google Scholar 

  6. Drusinsky, D.: The Temporal Rover and the ATG Rover. In: Havelund, K., Penix, J., Visser, W. (eds.) SPIN 2000. LNCS, vol. 1885, pp. 323–330. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  7. Drusinsky, D.: Monitoring Temporal Rules Combined with Time Series. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, pp. 114–117. Springer, Heidelberg (2003)

    Google Scholar 

  8. Roşu, G., Havelund, K.: Rewriting-based Techniques for Runtime Verification. J. of ASE 12, 151–197 (2005)

    Google Scholar 

  9. Havelund, K., Roşu, G.: Java PathExplorer — A runtime verification tool. In: Proceedings 6th International Symposium on Artificial Intelligence, Robotics and Automation in Space, ISAIRAS’01, Montreal, Canada (2001)

    Google Scholar 

  10. Leavens, G.T., Poll, E., Clifton, C., Cheon, Y., Ruby, C., Cok, D., Muller, P., Kiniry, J., Chalin, P.: JML Reference Manual (2006)

    Google Scholar 

  11. Chalin, P., James, P.: Cross-Verification of JML Tools: An ESC/Java2 Case Study. Microsoft Research Technical Report, vol. MSR-TR-2006-117 (2006)

    Google Scholar 

  12. Chalin, P., Hurlin, C., Kiniry, J.: Integrating Static Checking and Interactive Verification: Supporting Multiple Theories and Provers in Verification. In: VSTTE’05 (2005)

    Google Scholar 

  13. Barnett, M., M. Leino, K.R., Schulte, W.: The Spec# Programming System: An Overview. In: Barthe, G., Burdy, L., Huisman, M., Lanet, J.-L., Muntean, T. (eds.) CASSIS 2004. LNCS, vol. 3362, pp. 49–69. Springer, Heidelberg (2005)

    Google Scholar 

  14. Xie, F., Song, X., Chung, H., Nandi, R.: Translation-based co-verification. In: 3rd ACM IEEE International Conference on Formal Methods and Models for Co-Design (MEMOCODE 2005), pp. 111–120 (2005)

    Google Scholar 

  15. Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice Hall Professional, Englewood Cliffs (1997)

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Yann-Hang Lee Heung-Nam Kim Jong Kim Yongwan Park Laurence T. Yang Sung Won Kim

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Cheung, P.H., Forin, A. (2007). A C-Language Binding for PSL. In: Lee, YH., Kim, HN., Kim, J., Park, Y., Yang, L.T., Kim, S.W. (eds) Embedded Software and Systems. ICESS 2007. Lecture Notes in Computer Science, vol 4523. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-72685-2_54

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-72685-2_54

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-72684-5

  • Online ISBN: 978-3-540-72685-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics