Formal verification in hardware design: a survey

Abstract

In recent years, formal methods have emerged as an alternative approach to ensuring the quality and correctness of hardware designs, overcoming some of the limitations of traditional validation techniques such as simulation and testing. There are two main aspects to the application of formal methods in a design process: the formal framework used to specify desired properties of a design and the verification techniques and tools used to reason about the relationship between a specification and a corresponding implementation. We survey a variety of frameworks and techniques proposed in the literature and applied to actual designs. The specification frameworks we describe include temporal logics, predicate logic, abstraction and refinement, as well as containment between ω-regular languages. The verification techniques presented include model checking, automata-theoretic techniques, automated theorem proving, and approaches that integrate the above methods. In order to provide insight into the scope and limitations of currently available techniques, we present a selection of case studies where formal methods were applied to industrial-scale designs, such as microprocessors, floating-point hardware, protocols, memory subsystems, and communications hardware.

DOI: 10.1145/307988.307989

Extracted Key Phrases

01020'98'00'02'04'06'08'10'12'14'16
Citations per Year

237 Citations

Semantic Scholar estimates that this publication has 237 citations based on the available data.

See our FAQ for additional information.

Cite this paper

@article{Kern1999FormalVI, title={Formal verification in hardware design: a survey}, author={Christoph Kern and Mark R. Greenstreet}, journal={ACM Trans. Design Autom. Electr. Syst.}, year={1999}, volume={4}, pages={123-193} }