Abstract
Techniques and tools for formally verifying compliance with industry standards are important, especially in System-on-Chip (SoC) designs: a failure to integrate externally developed intellectual property (IP) cores is prohibitively costly. There are three essential components in the practical verification of compliance with a standard. First, an easy-to-read and yet formal specification of the standard is needed; we propose Live Sequence Charts (LSCs) as a high-level visual notation for writing specifications. Second, assertions should be generated directly from the specification; an implementation will be scrutinized, usually by model checking, to check that it satisfies each assertion. Third, a formal link must be made between proofs of assertions and compliance with the original specification. As an example, we take the Virtual Component Interface (VCI) Standard. We compare three efforts in verifying that the same register transfer level code is VCI-compliant. The first two efforts were manual, while the third used a tool, lscAssert, to automatically generate assertions in LTL. We discuss the details of the assertion generation algorithm.
Similar content being viewed by others
References
Albin K (2001) Nuts and bolts of core and SoC verification. In: Proceedings of the 2001 conference on design automation, pp 249–252
Alur R, Etessami K, Yannakakis M (2000) Inference of Message Sequence Charts. In: Proceedings of the 22nd international conference on software engineering, pp 304–313
Bell Labs Design Automation and Lucent Technologies (1998) FormalCheck User’s Guide, v2.1 edn
Bohn J, Damm W, Wittke H, Klose J, Moik A (2002) Modeling and validating train system applications using statemate and Live Sequence Charts. In: Ehrig H, Krämer BJ, Ertas A (eds) Proceedings of the 6th biennial world conference on integrated design and process technology, June 2002. Society for Design and Process Science, p 34
Bontemps Y, Heymans P (2003) Turning high-level live sequence charts into automata. Technical report, Computer Science Department, University of Namur
Bunker A (2003) Applying a visual specification language to hardware protocol verification. PhD thesis, University of Utah, August
Bunker A, Gopalakrishnan G (2001) Using Live Sequence Charts for hardware protocol specification and compliance verification. In: Proceedings of the IEEE international workshop high level design validation and test workshop, November 2001. IEEE Press, pp 95–100
Bunker A, Gopalakrishnan G (2002) Verifying a VCI bus interface model using an LSC-based specification. In: Ehrig H, Krämer BJ, Ertas A (eds) Proceedings of the 6th biennial world conference on integrated design and process technology, June 2002. Society of Design and Process Science, p 48
Chauhan P, Clarke EM, Lu Y, Wang D (1999) Verifying IP-Core based System-On-Chip designs. In: Proceedings of the IEEE international ASIC/SOC conference, September 1999, pp 27–31
Damm W, Harel D (2001) LSCs: Breathing life into Message Sequence Charts. Formal Methods Sys Des 19(1):45–80
Damm W, Klose J (2001) Verification of a radio-based signaling system using the statemate verification environment. Formal Methods Sys Des 19:121–141
Grahm T, Clark B (2001) SoC integration of reusable baseband bluetooth IP. In: Proceedings of the 2001 conference on design automation, pp 256–261
Gunter EL, Muscholl A, Peled DA (2001) Compositional message sequence charts. In: Margaria T, Yi W (eds) Proceedings of the conference on tools and algorithms for the construction and analysis of systems. Lecture notes in computer science, vol 2031. Springer, Berlin Heidelberg New York, pp 496–511
Harel D, Marelly R (2002) Playing with time: on the specification and execution of time-enriched LSCs. In: Proceedings of the 10th IEEE/ACM international symposium on modeling, analysis and simulation of computer and telecommunication systems, October 2002, pp 193–202
Jones MD (2001) Formal verification of parameterized protocols on branching networks. PhD thesis, University of Utah
Klose J, Wittke H (2001) An automata based interpretation of live sequence charts. In: Margaria T, Yi W (eds) Proceedings of the conference on tools and algorithms for the construction and analysis of systems. Lecture notes in computer science, vol 2031. Springer, Berlin Heidelberg New York, pp 512–527
Krüger I, Grosu R, Scholz P, Broy M (1999) From MSCs to statecharts. In: Distributed and parallel embedded systems. Kluwer, Dordrecht
Martin AJ (1993) Synthesis of asynchronous VLSI circuits. Technical report Caltech-CS-TR-93-28, California Institute of Technology
McMillan KL (1999) Circular compositional reasoning about liveness. In: Pierre L, Kropf T (eds) Correct hardware design and verifiation methods. Lecture notes in computer science, vol 1703. Springer, Berlin Heidelberg New York, pp 342–345
Moretti G (2001) Your core – my problem? Integration and verification of IP. In: Proceedings of the 2001 conference on design automation, pp 170–171
Muscholl A, Peled D (2000) Analyzing message sequence charts. In: Proceedings of SDL and MSC’00, June 2000
Namjoshi KS, Trefler RJ (2000) On the completeness of compositional reasoning. In: Proceedings of the conference on computer aided verification. Lecture notes in computer science, vol 1855. Springer, Berlin Heidelberg New York, pp 139–153
OCB Design Working Group (2000) VSI Alliance Virtual Component Interface Standard. Virtual Socket Interface Alliance, November 2000
Rushby J (2001) Formal verification of McMillan’s compositional assume-guarantee rule. Technical report, Computer Science Laboratory, SRI International, September 2001
Shimizu K, Dill DL (2002) Deriving a simulation input generator and a coverage metric from a formal specification. In: Proceedings of the 39th conference on design automation. Association for Computing Machinery, pp 801–806
Shimizu K, Dill DL, Hu AJ (2000) Monitor-based formal specification of PCI. In: Hunt WA Jr, Johnson SD (eds) Proceedings of the conference on formal methods in computer-aided design, November 2000. Lecture notes in computer science, vol 1954. Springer, Berlin Heidelberg New York, pp 335–352
Wang D (1999) Formal verification of the PCI local bus: a step towards IP Core based System-On-Chip design verification. Master’s thesis, Carnegie Mellon University, Pittsburgh, May 1999
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Bunker, A., Gopalakrishnan, G. & Slind, K. Live sequence charts applied to hardware requirements specification and verification. Int J Softw Tools Technol Transfer 7, 341–350 (2005). https://doi.org/10.1007/s10009-004-0145-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-004-0145-x