Completeness-Driven Development

  • Rolf Drechsler
  • Melanie Diepenbeck
  • Daniel Große
  • Ulrich Kühne
  • Hoang M. Le
  • Julia Seiter
  • Mathias Soeken
  • Robert Wille
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7562)

Abstract

Due to the steadily increasing complexity, the design of embedded systems faces serious challenges. To meet these challenges additional abstraction levels have been added to the conventional design flow resulting in Electronic System Level (ESL) design. Besides abstraction, the focus in ESL during the development of a system moves from design to verification, i.e. checking whether or not the system works as intended becomes more and more important. However, at each abstraction level only the validity of certain properties is checked. Completeness, i.e. checking whether or not the entire behavior of the design has been verified, is usually not continuously checked. As a result, bugs may be found very late causing expensive iterations across several abstraction levels. This delays the finalization of the embedded system significantly. In this work, we present the concept of Completeness-Driven Development (CDD). Based on suitable completeness measures, CDD ensures that the next step in the design process can only be entered if completeness at the current abstraction level has been achieved. This leads to an early detection of bugs and accelerates the whole design process. The application of CDD is illustrated by means of an example.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Wilson Research Group and Mentor Graphics: 2010-2011 Functional Verification Study (2011)Google Scholar
  2. 2.
    Bailey, B., Martin, G., Piziali, A.: ESL Design and Verification: A Prescription for Electronic System Level Methodology. Morgan Kaufmann/Elsevier (2007)Google Scholar
  3. 3.
    Cai, L., Gajski, D.: Transaction level modeling: an overview. In: IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis, pp. 19–24 (2003)Google Scholar
  4. 4.
    Ghenassia, F.: Transaction-Level Modeling with SystemC: TLM Concepts and Applications for Embedded Systems. Springer (2006)Google Scholar
  5. 5.
    Accellera Systems Initiative: SystemC (2012), http://www.systemc.org
  6. 6.
    Black, D.C., Donovan, J.: SystemC: From the Ground Up. Springer-Verlag New York, Inc. (2005)Google Scholar
  7. 7.
    Große, D., Drechsler, R.: Quality-Driven SystemC Design. Springer (2010)Google Scholar
  8. 8.
    Aynsley, J.: OSCI TLM-2.0 Language Reference Manual. Open SystemC Initiative (OSCI) (2009)Google Scholar
  9. 9.
    Chockler, H., Kupferman, O., Vardi, M.Y.: Coverage Metrics for Temporal Logic Model Checking. In: Margaria, T., Yi, W. (eds.) TACAS 2001. LNCS, vol. 2031, pp. 528–542. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  10. 10.
    Claessen, K.: A coverage analysis for safety property lists. In: Int’l Conf. on Formal Methods in CAD, pp. 139–145 (2007)Google Scholar
  11. 11.
    Große, D., Kühne, U., Drechsler, R.: Analyzing functional coverage in bounded model checking. IEEE Trans. on CAD 27(7), 1305–1314 (2008)Google Scholar
  12. 12.
    Chockler, H., Kroening, D., Purandare, M.: Coverage in interpolation-based model checking. In: Design Automation Conf., pp. 182–187 (2010)Google Scholar
  13. 13.
    Haedicke, F., Große, D., Drechsler, R.: A guiding coverage metric for formal verification. In: Design, Automation and Test in Europe, pp. 617–622 (2012)Google Scholar
  14. 14.
    Bormann, J., Beyer, S., Maggiore, A., Siegel, M., Skalberg, S., Blackmore, T., Bruno, F.: Complete formal verification of Tricore2 and other processors. In: Design and Verification Conference, DVCon (2007)Google Scholar
  15. 15.
    Helmstetter, C., Maraninchi, F., Maillet-Contoz, L.: Full simulation coverage for SystemC transaction-level models of systems-on-a-chip. Formal Methods in System Design 35(2), 152–189 (2009)MATHCrossRefGoogle Scholar
  16. 16.
    Heckeler, P., Behrend, J., Kropf, T., Ruf, J., Weiss, R., Rosenstiel, W.: State-based coverage analysis and UML-driven equivalence checking for C++ state machines. In: FM+AM 2010. Lecture Notes in Informatics, vol. P-179, pp. 49–62 (September 2010)Google Scholar
  17. 17.
    Bombieri, N., Fummi, F., Pravadelli, G., Hampton, M., Letombe, F.: Functional qualification of TLM verification. In: Design, Automation and Test in Europe, pp. 190–195 (2009)Google Scholar
  18. 18.
    Sen, A.: Concurrency-oriented verification and coverage of system-level designs. ACM Trans. Design Autom. Electr. Syst. 16(4), 37 (2011)Google Scholar
  19. 19.
    Apvrille, L.: Ttool for diplodocus: an environment for design space exploration. In: Proceedings of the 8th International Conference on New Technologies in Distributed Systems, NOTERE 2008 (2008)Google Scholar
  20. 20.
    Le, H.M., Große, D., Drechsler, R.: Towards analyzing functional coverage in SystemC TLM property checking. In: IEEE International High Level Design Validation and Test Workshop, pp. 67–74 (2010)Google Scholar
  21. 21.
    Andova, S., van den Brand, M.G.J., Engelen, L.: Reusable and Correct Endogenous Model Transformations. In: Hu, Z., de Lara, J. (eds.) ICMT 2012. LNCS, vol. 7307, pp. 72–88. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  22. 22.
    North, D.: Behavior Modification: The evolution of behavior-driven development. Better Software 8(3) (2006)Google Scholar
  23. 23.
    Beck, K.: Test Driven Development: By Example. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)Google Scholar
  24. 24.
    Tabakov, D., Vardi, M., Kamhi, G., Singerman, E.: A temporal language for SystemC. In: Int’l Conf. on Formal Methods in CAD, pp. 1–9 (2008)Google Scholar
  25. 25.
    Große, D., Le, H.M., Drechsler, R.: Proving transaction and system-level properties of untimed SystemC TLM designs. In: ACM & IEEE International Conference on Formal Methods and Models for Codesign, pp. 113–122 (2010)Google Scholar
  26. 26.
    Fazzino, F., Watson, A.: M1 core (2012), http://opencores.org/project,m1_core

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Rolf Drechsler
    • 1
    • 2
  • Melanie Diepenbeck
    • 1
  • Daniel Große
    • 1
  • Ulrich Kühne
    • 1
  • Hoang M. Le
    • 1
  • Julia Seiter
    • 1
  • Mathias Soeken
    • 1
    • 2
  • Robert Wille
    • 1
  1. 1.Institute of Computer ScienceUniversity of BremenBremenGermany
  2. 2.Cyber-Physical Systems, DFKI GmbHBremenGermany

Personalised recommendations