Research on Process Algebraic Analysis Tools for Electronic System Design

  • Ka Lok ManEmail author
  • Tomas Krilavičius
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 52)


Rapid software/hardware development cycle increased demand for the advanced design and implementation methods. Recently, formal methods have been put forward as a tool for modelling and analysis of electronic systems. Usage of formal semantics and syntax allows unambiguous specifications of the systems, and in such a way provides means for rigorous analysis of correctness and performance properties. We investigate applicability of two process algebra based tools for the mixed software/hardware modelling and analysis: Process Analysis Toolkit (PAT) and Software/Hardware Engineering (SHE). PAT toolkit is based on CSP-like process algebra extended with mechanisms customary for software developers and engineers. It supports reachability and deadlock analysis, complete Linear Temporal Logic (LTL) model checking and refinement. SHE methodology provides means for correctness and performance analysis by applying model-driven design methodology at the system level, i.e., high abstraction level design stage of the embedded and mixed hardware/software systems. It combines techniques for development of formal models for analysis and refinement to the actual implementation of the system. SHE toolset provides tools for modelling, simulation and real-time control code generation. Transaction Level Modelling (TLM) approach has been put forward as a tool for elaborate System-on-Chip (SoC) design. It is quite extensively applied in industry to solve a number of practical problems, occurring at the design, development and deployment stages. We apply PAT and SHE methodology for functional and performance analysis of a hardware model and a TLM model, and illustrate this by means of examples: a simple pipeline process and a process-memory communication model, respectively.


Process algebra Verification Simulation Transaction level modelling Interoperability 


  1. 1.
    Baeten, J.C.M., & Weijland, W.P. (1990). Process algebra, volume 18 of Cambridge tracts in theoretical computer science. Cambridge, United Kingdom; Cambridge University Press.Google Scholar
  2. 2.
    Bergstra, J.A., & Middelburg, C.A. (2005). Process algebra for hybrid systems. Theoretical Computer Science, 335(2/3), 215–280.MathSciNetzbMATHCrossRefGoogle Scholar
  3. 3.
    Brinksma, E., Krilavičius, T., & Usenko, Y.S. (2005). Process algebraic approach to hybrid systems. Proceedings of 16th IFAC world congress (pp. 1–6). Prague: Czech Republic.Google Scholar
  4. 4.
    Clarke, E.M., Grumberg, O., & Peled, D.A. (2000). Model checking. Cambridge: MIT.Google Scholar
  5. 5.
    Cuijpers, P.J.L., & Reniers, M.A. (2005). Hybrid process algebra. Journal of Logic and Algebraic Programming, 62(2), 191–245.MathSciNetzbMATHCrossRefGoogle Scholar
  6. 6.
    Fritzson, P., & Engelson, V. (1998). Modelica – a unified object-oriented language for system modelling and simulation. In Proceedings of European Conference on Object-Oriented Programming (ECOOP’98). Brussels, Belgium, July 20–24, 1998.Google Scholar
  7. 7.
    Geilen, M.C.W. (2002). Formal verification of complex real-time systems. PhD thesis, Eindhoven University of Technology.Google Scholar
  8. 8.
    Ghenassia, F. (Ed.). (2005). Transaction-level modeling. Dordrecht, The Netherlands: Springer.Google Scholar
  9. 9.
    Groote, J.F., Mathijssen, A. H.J., van Weerdenburg, M.J., & Usenko, Y.S. (2006). From μCRL to mCRL2: motivation and outline. Electronic Notes on Theoretical Computer Science, 162, 191–196.CrossRefGoogle Scholar
  10. 10.
    Groote, J.F., Mathijssen, A. H.J., van Weerdenburg, M.J., & Usenko, Y.S. (2007). The formal specification language mCRL2. Methods for modelling software systems. Dagstuhl seminar. Dagstuhl.Google Scholar
  11. 11.
    Hoare, C.A.R. (1985). Communicating sequential processes. Englewood-Cliffs: Prentice-Hall.zbMATHGoogle Scholar
  12. 12.
    Holzmann, G.J. (2003). The SPIN model checker: primer and reference manual. Boston: Addison Wesley Professional.Google Scholar
  13. 13.
    Huang, J., Voeten, J., & Corporaal, H. (2007). Predictable real-time software synthesis. International Journal on real-time systems, 36, 159–198.zbMATHCrossRefGoogle Scholar
  14. 14.
    IEEE (2005). IEEE standard for SystemC language reference manual (IEEE STD 1666TM-2005). IEEE.Google Scholar
  15. 15.
    Krilavicius, T. (2006). Hybrid techniques for hybrid systems. PhD thesis, University of Twente.Google Scholar
  16. 16.
    Krilavicius, T. (2007). Study of tools interoperability. Technical Report TR-CTIT-07-01, University of Twente, The Netherlands.Google Scholar
  17. 17.
    Krilavicus, T. (2008). Simulation of mechatronic systems using Behavioural Hybrid Process Calculus. Electronics and Electrical Engineering, 1(81), 45–48.Google Scholar
  18. 18.
    Langerak, R., Polderman, J.W., & Krilavicius (2003). Stability analysis for hybrid automata using conservative gains. In S. Engell, H. Guéguen, & J. Zayton (Eds.), Proceedings of conference on analysis and design of hybrid systems (ADHS 03) (pp. 377–382).Google Scholar
  19. 19.
    Larsen, K.G., Pettersson, P., & Yi, W. (1997). Uppaal in a nutshell. Int. Journal on Software Tools for Technology Transfer, 1(1–2), 134–152.zbMATHGoogle Scholar
  20. 20.
    Man, K.L. (2007a). Formal specification and analysis of hardware systems in Timed Chi. Nordic Journal of Computing, 14(1–2), 65–86.MathSciNetzbMATHGoogle Scholar
  21. 21.
    Man, K.L. (2007b). PAFESD: process algebras for electronic system designs. The 7th IEEE international conference on ASIC ASICON. Guilin, P.R. China: IEEE.Google Scholar
  22. 22.
    Man, K.L. (2008a). μCRL: A computer science based approach for specification and verification of hardware circuits. The 5th IEEE international soc design conference. Busan, South Korea: IEEE.Google Scholar
  23. 23.
    Man, K.L. (2008b). PAFSV: a process algebraic framework for systemverilog. International multiconference on computer science and information technology. Wisla, Poland: IEEE.Google Scholar
  24. 24.
    Man, K.L. (2008c). Specification and analysis of hardware systems using timed process algebras. Journal of the World Scientific and Engineering Academy and Society Transactions on Electronics, 4(4), 71–80.MathSciNetGoogle Scholar
  25. 25.
    Man, K.L. (2009a). Specification and verification of hardware circuits using μCRL. International Journal of Computer Sciences and Engineering Systems, 2(3).Google Scholar
  26. 26.
    Man, K.L., Fedeli, A., Mercaldi, M., Boubekeur, M., & Schellekens, M.P. (2007). SC2SCFL: automated SystemC to \({\mathit{SystemC}}^{\mathbb{F}\mathbb{L}}\) translation. The 7th international symposium on systems, architectures, modeling and simulation, Lecture Notes in Computer Science 4599 (pp. 34–45). Springer, Germany.Google Scholar
  27. 27.
    Man, K.L., Fedeli, A., Mercaldi, M., & Schellekens, M.P. (2006). \({\mathit{SystemC}}^{\mathbb{F}\mathbb{L}}\): an infrastructure for a TLM formal verification proposal (with an overview on a tool set for practical formal verification of SystemC descriptions). The 4th east-west design & test workshop EWDTS. Sochi, Russia: IEEE.Google Scholar
  28. 28.
    Man, K.L., Mercaldi, M., Garberoglio, F., Trischitta, A., Lai, H.Y., & Ho, C.M. (2008a). \({\mathit{SystemC}}_{\mathrm{tlm}}^{\mathbb{F}\mathbb{L}}\): motivation and development. In The proceedings of the international multiconference of engineers and computer scientists 2008. Hong Kong.Google Scholar
  29. 29.
    Man, K.L., Reniers, M.A., & Cuijpers, P.J.L. (2005). Case studies in the hybrid process algebra HyPA. International Journal of Software Engineering and Knowledge Engineering, 15(2), 299–305.CrossRefGoogle Scholar
  30. 30.
    Man, K.L., & Schellekens, M.P. (2007a). Analysis of a mixed-signal circuit in hybrid process algebra ACPhs srt. In S.I. Ao, O. Castillo, & C. Douglas (Eds.), The proceedings of the international multiconference of engineers and computer scientists 2007 volume I, IMECS ’07, March 21–23, 2007, Hong Kong, LNECS (pp. 568–573). International Association of Engineers, Newswood Limited.Google Scholar
  31. 31.
    Man, K.L., & Schellekens, M.P. (2007b). Analysis of a mixed-signal circuit in hybrid process algebra ACPhs srt (extended and revised version). International Journal of Engineering Letters, 15(2), 317–326.Google Scholar
  32. 32.
    Man, K.L., & Schellekens, M.P. (2007c). Mathematical modelling of digital hardware systems in Timed Chi. The 26th IASTED international conference on modelling, identification and control. Innsbruck, Austria.Google Scholar
  33. 33.
    Man, K.L., & Schellekens, M.P. (2008). Current trends in intelligent systems and computer engineering, Chapter Interoperability of Performance and Functional Analysis for Electronic System Designs in Behavioural Hybrid Process Calculus (BHPC). Springer, Germany.Google Scholar
  34. 34.
    Man, K.L., & vander Wulp, J. (2008). Specification and analysis of hardware designs using mCRL2. The 21st IEEE Canadian conference on electrical and computer engineering. Niagara Falls, Canada: IEEE.Google Scholar
  35. 35.
    Man, K.L. (2009b). PAFSV: formalisation of SystemVerilog. International Journal of Computers, Systems and Signals, 10(1), 3–26.Google Scholar
  36. 36.
    Man, K.L., & Mercaldi, M. (2009). \({\mathit{SystemC}}_{\mathrm{tlm}}^{\mathbb{F}\mathbb{L}}\): the successor of \({\mathit{SystemC}}^{\mathbb{F}\mathbb{L}}\). International Journal of Computer and Electrical Engineering, 1(4).Google Scholar
  37. 37.
    Man, K.L., Mercaldi, M., Leung, H.L., & Huang, J. (2008b). Performance and functional analysis of tlm models in the she methodology. The proceedings of IEEE international conference on computer science and software engineering. Wuhan, China: IEEE.Google Scholar
  38. 38.
    Man, K.L., Mercaldi, M., Leung, H.L., & Huang, J. (2009). She methodology: combining performance and functional analysis of tlm models. International Journal of Computer and Electrical Engineering, 1(4).Google Scholar
  39. 39.
  40. 40.
    Nicollin, X., & Sifakis, J. (1994). The algebra of timed processes, ATP: theory and application. Information and Computation, 114, 131–178.MathSciNetzbMATHCrossRefGoogle Scholar
  41. 41.
    OpenModelica System website (2009). Openmodelica system.Google Scholar
  42. 42.
    PAT (2009). PAT: process analysis toolkit.
  43. 43.
    Schonenberg, M.H. (2006). Discrete simulation of behavioural hybrid process algebra. Master’s thesis, University of Twente.Google Scholar
  44. 44.
    SHE (2009). SHE: hardware/software systems.
  45. 45.
    Shyamasundar, R.K., Doucet, F., Gupta, R., & Kruger, I.H. (2007). Compositional reactive semantics of SystemC and verification in rulebase. The proceedings of the workshop on next generation design and verification methodologies for distributed embedded control systems.Google Scholar
  46. 46.
    Silva, B.I., Richeson, K., Krogh, B.H., & Chutinan, A. (2000). Modeling and verification of hybrid dynamical system using CheckMate. In S. Engell, S. Kowalewski, & J. Zaytoon (Eds.), Hybrid dynamical systems – proceedings of 4th international conference on automation of mixed processes (pp. 323–328). Dortmund.Google Scholar
  47. 47.
    SPIN (2009). On-the-fly, LTL model checking with SPIN.
  48. 48.
    Traulsen, Claus, Cornet, Jerome, Moy, Matthieu., & Maraninchi, Florence (2007). A SystemC/TLM semantics in Promela and its possible applications. The 14th workshop on model checking software SPIN.Google Scholar
  49. 49.
    van Beek, D.A., Man, K.L., Reniers, M.A., Rooda, J.E., & Schiffelers, R. R.H. (2005). Syntax and semantics of timed Chi. Technical report CS-report 05-09, Eindhoven University of Technology, Department of Computer Science, The Netherlands.Google Scholar
  50. 50.
    van Beek, D.A., Man, K.L., Reniers, M.A., Rooda, J.E., & Schiffelers, R. R.H. (2006a). Syntax and consistent equation semantics of hybrid Chi. Journal of Logic and Algebraic Programming, 68(1–2), 129–210.MathSciNetzbMATHCrossRefGoogle Scholar
  51. 51.
    van Beek, D.A., Man, K.L., Reniers, M.A., Rooda, J.E., & Schiffelers, R.R.H. (2006b). Deriving simulators for hybrid chi models. The proceedings of IEEE symposium on computer-aided control systems design, Munich, Germany: IEEE.Google Scholar
  52. 52.
    van Putten, A. (2006). Behavioural hybrid process calculus parser and translator to modelica. Master’s thesis, University of Twente.Google Scholar
  53. 53.
    Viaud, E., Pecheux, F., & Greiner, A. (2006). An efficient TLM/T modeling and simulation environment based on conservative parallel discrete event principles. In The proceedings of design, automation and test in Europe.Google Scholar

Copyright information

© Springer Science+Business Media B.V. 2009

Authors and Affiliations

  1. 1.Solari, Hong Kong and Vytautas Magnus UniversityKaunasLithuania

Personalised recommendations