Skip to main content
Top
Published in: Formal Methods in System Design 2-3/2017

14-02-2017

Symbolic trajectory evaluation for word-level verification: theory and implementation

Authors: Supratik Chakraborty, Zurab Khasidashvili, Carl-Johan H. Seger, Rajkumar Gajavelly, Tanmay Haldankar, Dinesh Chhatani, Rakesh Mistry

Published in: Formal Methods in System Design | Issue 2-3/2017

Log in

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Symbolic trajectory evaluation (STE) is a model checking technique that has been successfully used to verify many industrial designs. Existing implementations of STE reason at the level of bits, allowing signals in a circuit to take values from a lattice comprised of three elements: 0, 1, and X. This limits the amount of abstraction that can be achieved, and presents limitations to scaling STE to even larger designs. The main contribution of this paper is to show how much more abstract lattices can be derived automatically from register-transfer level descriptions, and how a model checker for the general theory of STE instantiated with such abstract lattices can be implemented in practice. We discuss several implementation issues, including how word-level circuits can be symbolically simulated using a new encoding for words that allows representing X values of sub-words succinctly. This gives us the first practical word-level STE engine, called \(\mathsf {STEWord}\). Experiments on a set of designs similar to those used in industry show that \(\mathsf {STEWord}\) scales better than bit-level STE, as well as word-level bounded model checking.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Literature
1.
go back to reference Barrett C, Conway CL, Deters M, Hadarean L, Jovanovic D, King T, Reynolds A, Tinelli C (2011) CVC4. In: Proceedings of the 23rd international conference on computer aided verification, CAV 2011, Snowbird, UT, USA, 14–20 July 2011, pp 171–177 Barrett C, Conway CL, Deters M, Hadarean L, Jovanovic D, King T, Reynolds A, Tinelli C (2011) CVC4. In: Proceedings of the 23rd international conference on computer aided verification, CAV 2011, Snowbird, UT, USA, 14–20 July 2011, pp 171–177
2.
go back to reference Brayton R, Mishchenko A (2010) ABC: an academic industrial-strength verification tool. In: Proceedings of the 22nd international conference on computer aided verification, CAV’10. Springer, Berlin, pp 24–40 Brayton R, Mishchenko A (2010) ABC: an academic industrial-strength verification tool. In: Proceedings of the 22nd international conference on computer aided verification, CAV’10. Springer, Berlin, pp 24–40
3.
go back to reference Brummayer R, Biere A (2009) Boolector: an efficient SMT solver for bit-vectors and arrays. In: TACAS, pp 174–177 Brummayer R, Biere A (2009) Boolector: an efficient SMT solver for bit-vectors and arrays. In: TACAS, pp 174–177
4.
go back to reference Bryant RE, Seger C-JH (1990) Formal verification of digital circuits using symbolic ternary system models. In: CAV, pp 33–43 Bryant RE, Seger C-JH (1990) Formal verification of digital circuits using symbolic ternary system models. In: CAV, pp 33–43
5.
go back to reference Bryant Randal E (1986) Graph-based algorithms for Boolean function manipulation. IEEE Trans Comput 35(8):677–691CrossRefMATH Bryant Randal E (1986) Graph-based algorithms for Boolean function manipulation. IEEE Trans Comput 35(8):677–691CrossRefMATH
6.
go back to reference Chakraborty S, Gupta A, Jain R (2017) Matching multiplications in bit-vector formulas. In: Verification, model checking and abstract interpretation (VMCAI). Springer, Berlin, pp 131–150 Chakraborty S, Gupta A, Jain R (2017) Matching multiplications in bit-vector formulas. In: Verification, model checking and abstract interpretation (VMCAI). Springer, Berlin, pp 131–150
7.
go back to reference Chakraborty S, Khasidashvili Z, Seger C-JH, Gajavelly R, Haldankar T, Chhatani D, Mistry R (2015) Word-level symbolic trajectory evaluation. In: Computer-aided verification (CAV). Springer, Berlin, pp 128–143 Chakraborty S, Khasidashvili Z, Seger C-JH, Gajavelly R, Haldankar T, Chhatani D, Mistry R (2015) Word-level symbolic trajectory evaluation. In: Computer-aided verification (CAV). Springer, Berlin, pp 128–143
8.
go back to reference Cimatti A, Griggio A, Schaafsma B, Sebastiani R (2013) The MathSAT5 SMT solver. In: Piterman N, Smolka S (eds) Proceedings of TACAS, volume 7795 of LNCS. Springer, Berlin Cimatti A, Griggio A, Schaafsma B, Sebastiani R (2013) The MathSAT5 SMT solver. In: Piterman N, Smolka S (eds) Proceedings of TACAS, volume 7795 of LNCS. Springer, Berlin
9.
go back to reference Cimatti A, Griggio A, Schaafsma B, Sebastiani R (2013) The MathSAT5 SMT solver. In: Piterman N, Smolka S (eds) Proceedings of TACAS, volume 7795 of LNCS. Springer, Berlin Cimatti A, Griggio A, Schaafsma B, Sebastiani R (2013) The MathSAT5 SMT solver. In: Piterman N, Smolka S (eds) Proceedings of TACAS, volume 7795 of LNCS. Springer, Berlin
10.
go back to reference Dutertre B (2014) Yices 2.2. In: Biere A, Bloem R (eds) Computer-aided verification (CAV’2014), volume 8559 of Lecture notes in computer science, pp 737–744. Springer, Berlin Dutertre B (2014) Yices 2.2. In: Biere A, Bloem R (eds) Computer-aided verification (CAV’2014), volume 8559 of Lecture notes in computer science, pp 737–744. Springer, Berlin
12.
go back to reference Eén N, Sörensson N (2012) The minisat page Eén N, Sörensson N (2012) The minisat page
13.
go back to reference Emerson EA (1995) Temporal and modal logic. In: Hanbook of theoretical computer science, pp 995–1072. Elsevier, Amsterdam Emerson EA (1995) Temporal and modal logic. In: Hanbook of theoretical computer science, pp 995–1072. Elsevier, Amsterdam
14.
go back to reference IEEE standard for SystemVerilog—unified hardware design, specification, and verification language. IEEE Std 1800-2012 (Revision of IEEE Std 1800-2009), pp 1–1315 (2013) IEEE standard for SystemVerilog—unified hardware design, specification, and verification language. IEEE Std 1800-2012 (Revision of IEEE Std 1800-2009), pp 1–1315 (2013)
15.
go back to reference Jha S, Limaye R, Seshia SA (2009) Beaver: engineering an efficient SMT solver for bit-vector arithmetic. In: Proceedings of the 21st international conference on computer aided verification, CAV 2009, Grenoble, France, June 26–July 2, 2009, pp 668–674 Jha S, Limaye R, Seshia SA (2009) Beaver: engineering an efficient SMT solver for bit-vector arithmetic. In: Proceedings of the 21st international conference on computer aided verification, CAV 2009, Grenoble, France, June 26–July 2, 2009, pp 668–674
16.
go back to reference Johannsen P (2001) Reducing bitvector satisfiability problems to scale down design sizes for RTL property checking. In: HLDVT, pp 123–128 Johannsen P (2001) Reducing bitvector satisfiability problems to scale down design sizes for RTL property checking. In: HLDVT, pp 123–128
17.
go back to reference Jones RB, O’Leary JW, Seger C-JH, Aagaard M, Melham TF (2001) Practical formal verification in microprocessor design. IEEE Des Test Comput 18(4):16–25CrossRef Jones RB, O’Leary JW, Seger C-JH, Aagaard M, Melham TF (2001) Practical formal verification in microprocessor design. IEEE Des Test Comput 18(4):16–25CrossRef
18.
go back to reference Kaivola R, Ghughal R, Narasimhan N, Telfer A, Whittemore J, Pandav S, Slobodová A, Taylor C, Frolov V, Reeber E, Naik A (2009) Replacing testing with formal verification in intel \(\text{Core}^\text{ TM }\) i7 processor execution engine validation. In: CAV, pp 414–429 Kaivola R, Ghughal R, Narasimhan N, Telfer A, Whittemore J, Pandav S, Slobodová A, Taylor C, Frolov V, Reeber E, Naik A (2009) Replacing testing with formal verification in intel \(\text{Core}^\text{ TM }\) i7 processor execution engine validation. In: CAV, pp 414–429
19.
go back to reference KiranKumar VMA, Gupta A, Ghughal R (2012) Symbolic trajectory evaluation: the primary validation vehicle for next generation intel\(^{\textregistered }\) processor graphics fpu. In: FMCAD, pp 149–156 KiranKumar VMA, Gupta A, Ghughal R (2012) Symbolic trajectory evaluation: the primary validation vehicle for next generation intel\(^{\textregistered }\) processor graphics fpu. In: FMCAD, pp 149–156
20.
go back to reference Kroening D, Strichman O (2008) Decision procedures: an algorithmic point of view. Texts in theoretical computer science. An EATCS series. Springer, Berlin Kroening D, Strichman O (2008) Decision procedures: an algorithmic point of view. Texts in theoretical computer science. An EATCS series. Springer, Berlin
21.
go back to reference Malvar HS, Li-Wei H, Cutler R (2004) High-quality linearinterpolation for demosaicing of Bayer-patterned color images. In: ICASSP, vol 3, pp 485–488 Malvar HS, Li-Wei H, Cutler R (2004) High-quality linearinterpolation for demosaicing of Bayer-patterned color images. In: ICASSP, vol 3, pp 485–488
22.
go back to reference Roorda J-W, Claessen K (2005) A new SAT-based algorithm for symbolic trajectory evaluation. In: CHARME, pp 238–253 Roorda J-W, Claessen K (2005) A new SAT-based algorithm for symbolic trajectory evaluation. In: CHARME, pp 238–253
23.
go back to reference Seger C-JH, Bryant RE (1995) Formal verification by symbolic evaluation of partially-ordered trajectories. Form Methods Syst Des 6(2):147–189CrossRef Seger C-JH, Bryant RE (1995) Formal verification by symbolic evaluation of partially-ordered trajectories. Form Methods Syst Des 6(2):147–189CrossRef
24.
go back to reference Seger C-JH, Jones RB, O’Leary JW, Melham TF, Aagaard M, Barrett C, Syme D (2005) An industrially effective environment for formal hardware verification. IEEE Trans CAD Integr Circuits Syst 24(9):1381–1405CrossRef Seger C-JH, Jones RB, O’Leary JW, Melham TF, Aagaard M, Barrett C, Syme D (2005) An industrially effective environment for formal hardware verification. IEEE Trans CAD Integr Circuits Syst 24(9):1381–1405CrossRef
25.
go back to reference Somenzi F (2012) CUDD: CU decision diagram package-release 2.5.0. University of Colorado at Boulder Somenzi F (2012) CUDD: CU decision diagram package-release 2.5.0. University of Colorado at Boulder
26.
go back to reference Stump A, Barrett CW, Dill DL (2001) A decision procedure for an extensional theory of arrays. In: Logic in computer science (LICS). IEEE Computer Society, pp 29–37 Stump A, Barrett CW, Dill DL (2001) A decision procedure for an extensional theory of arrays. In: Logic in computer science (LICS). IEEE Computer Society, pp 29–37
Metadata
Title
Symbolic trajectory evaluation for word-level verification: theory and implementation
Authors
Supratik Chakraborty
Zurab Khasidashvili
Carl-Johan H. Seger
Rajkumar Gajavelly
Tanmay Haldankar
Dinesh Chhatani
Rakesh Mistry
Publication date
14-02-2017
Publisher
Springer US
Published in
Formal Methods in System Design / Issue 2-3/2017
Print ISSN: 0925-9856
Electronic ISSN: 1572-8102
DOI
https://doi.org/10.1007/s10703-017-0268-9

Other articles of this Issue 2-3/2017

Formal Methods in System Design 2-3/2017 Go to the issue

Premium Partner