We develop two optimization techniques, flush-machine and collapsed flushing, to improve the efficiency of automatic refinement-abased verification of out-of-order (ooo) processor models. Refinement is a notion of equivalence that can be used to check that an ooo processor correctly implements all behaviors of its instruction set architecture (ISA), including deadlock detection. The optimization techniques work by reducing the computational complexity of the refinement map, a function central to refinement proofs that maps ooo processor model states to ISA states. This has a direct impact on the efficiency of verification, which is studied using 23 ooo processor models. Flush-machine, is a novel optimization technique. Collapsed flushing ha...
In the age of submicron technology a single chip may contain tens or even hundreds of millions trans...
technical reportWe offer a solution to the problem of verifying formal memory models of processors b...
Abstract. We describe the techniques we have used to search for bugs in the memory subsystem of a ne...
rjonesOichips.intel.com Abstract. Several methods have recently been proposed for verifying processo...
We show how to automatically verify that a complex XScale-like pipelined machine model is a WEB-refi...
We present a new technique for verification of complex hardware devices that allows both generality ...
Rewriting rules and Positive Equality [4] are combined in an automatic way in order to formally veri...
Abstract. We present a new approach to the verification of hardware systems with data dependencies u...
In this paper, we show the verification of out-of-order processors in a tool called UCLID. The proce...
. We present a new approach to the verification of hardware systems with data dependencies using tem...
Thesis: M. Eng., Massachusetts Institute of Technology, Department of Electrical Engineering and Com...
Abstract — In this paper, we propose a verification method for pipelined microprocessors with out-of...
Post-partitioning verification has to deal with abstract data, implementation artifacts, and the ord...
Abstract. There is a large class of circuits (including pipeline and outof-order execution component...
Formal verification of multithreaded software running on multi-core hardware has for long been chall...
In the age of submicron technology a single chip may contain tens or even hundreds of millions trans...
technical reportWe offer a solution to the problem of verifying formal memory models of processors b...
Abstract. We describe the techniques we have used to search for bugs in the memory subsystem of a ne...
rjonesOichips.intel.com Abstract. Several methods have recently been proposed for verifying processo...
We show how to automatically verify that a complex XScale-like pipelined machine model is a WEB-refi...
We present a new technique for verification of complex hardware devices that allows both generality ...
Rewriting rules and Positive Equality [4] are combined in an automatic way in order to formally veri...
Abstract. We present a new approach to the verification of hardware systems with data dependencies u...
In this paper, we show the verification of out-of-order processors in a tool called UCLID. The proce...
. We present a new approach to the verification of hardware systems with data dependencies using tem...
Thesis: M. Eng., Massachusetts Institute of Technology, Department of Electrical Engineering and Com...
Abstract — In this paper, we propose a verification method for pipelined microprocessors with out-of...
Post-partitioning verification has to deal with abstract data, implementation artifacts, and the ord...
Abstract. There is a large class of circuits (including pipeline and outof-order execution component...
Formal verification of multithreaded software running on multi-core hardware has for long been chall...
In the age of submicron technology a single chip may contain tens or even hundreds of millions trans...
technical reportWe offer a solution to the problem of verifying formal memory models of processors b...
Abstract. We describe the techniques we have used to search for bugs in the memory subsystem of a ne...