2005
DOI: 10.1007/11513988_19
|View full text |Cite
|
Sign up to set email alerts
|

Formal Verification of Pentium ® 4 Components with Symbolic Simulation and Inductive Invariants

Abstract: We describe a practical methodology for large-scale formal verification of control-intensive industrial circuits. It combines symbolic simulation with human-generated inductive invariants, and a proof tool for verifying implications between constraint lists. The approach has emerged from extensive experiences in the formal verification of key parts of the Intel IA-32 Pentium 4 microprocessor designs. We discuss it the context of two case studies: Pentium 4 register renaming mechanism and BUS recycle logic.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
9
0

Year Published

2006
2006
2018
2018

Publication Types

Select...
4
2
1

Relationship

1
6

Authors

Journals

citations
Cited by 13 publications
(9 citation statements)
references
References 23 publications
0
9
0
Order By: Relevance
“…5 Finally, our work advocates manually writing a RM, rather than using more automated techniques such as flushing [5]. Like other work on RMs for real industrial RTL designs [9], [15], we have found manually-written maps more appropriate.…”
Section: Related Workmentioning
confidence: 70%
“…5 Finally, our work advocates manually writing a RM, rather than using more automated techniques such as flushing [5]. Like other work on RMs for real industrial RTL designs [9], [15], we have found manually-written maps more appropriate.…”
Section: Related Workmentioning
confidence: 70%
“…It is a powerful technique for enhancing the quality of software systems, e.g., by identifying flaws that would not have been caught otherwise (Havelund et al 2001;Kaivola 2005). Especially for software product lines, since parts of the systems are reused in multiple products, it is important to detect flaws in those reused parts.…”
Section: Introductionmentioning
confidence: 99%
“…Model checking is a powerful technique for enhancing the quality of software systems [Clarke et al (2000)], e.g., by identifying flaws that would not have been caught otherwise [Havelund et al (2001); Kaivola (2005)]. However, there is currently insufficient support for model checking in product lines, most specifically, for property specification and management.…”
Section: Introductionmentioning
confidence: 99%
“…Model checking [Clarke et al (2000); Huth and Ryan (2004)] takes a model of a given system's design, and checks if it satisfies certain properties of the system, interpreted in terms of logic formulas. It is a powerful technique for enhancing the quality of software systems, e.g., by identifying flaws that would not have been caught otherwise [Havelund et al (2001); Kaivola (2005)]. As such, model checking can play a vital role in verifying key properties of products in high-integrity product lines such as pacemakers, medical imaging systems, and avionics control systems.…”
Section: Introductionmentioning
confidence: 99%