📣 Help Shape the Future of UKRI's Gateway to Research (GtR)

We're improving UKRI's Gateway to Research and are seeking your input! If you would be interested in being interviewed about the improvements we're making and to have your say about how we can make GtR more user-friendly, impactful, and effective for the Research and Innovation community, please email gateway@ukri.org.

Improving the reliability of hardware equivalence checkers

Lead Research Organisation: Imperial College London
Department Name: Electrical and Electronic Engineering

Abstract

CONTEXT.
Hardware designers often rely on "equivalence checkers" to establish that their hardware designs match high-level specifications. Widely used commercial equivalence checkers include Conformal Equivalence Checker from Cadence, FormalPro-LEC from Siemens, and Formality Equivalence Checking from Synopsys. All of these tools have to be _trusted_. Should they make a mistake, that is, claim that two designs are equivalent when they are in fact not, then the final hardware could contain a bug. Such bugs in hardware can be extremely expensive to rectify.

PROJECT OBJECTIVES.
We intend to establish whether equivalence checkers are in fact _trustworthy_. Do they contain bugs that undermine the reliability of the hardware designs they generate? Furthermore, we intend to devise testing or verification techniques to improve the reliability of equivalence checkers.

METHOD.
We will design new testing techniques for equivalence checkers, based around generating large numbers of random hardware designs pairs, which can be fed to the equivalence checkers under test. In addition to searching for the existence of bugs, we also intend to apply formal verification techniques, using a proof assistant such as Rocq, to prove the _absence_ of bugs from an equivalence checker.

ALIGNMENT TO EPSRC RESEARCH AREAS.
The project aligns with the EPSRC's "Safe and secure ICT" priority by seeking to make hardware design a less bug-prone process. The project also relates to several EPSRC areas of investment and support: "Programming languages and compilers" because a hardware synthesis tool is a specialised type of compiler, "Microelectronics design" because hardware synthesis is a key tool in the hardware design process, and "Software engineering" because the project will build on established software verification techniques such as fuzzing and formal verification.

People

ORCID iD

Publications

10 25 50

Studentship Projects

Project Reference Relationship Related To Start End Student Name
EP/T51780X/1 30/09/2020 29/09/2025
2767618 Studentship EP/T51780X/1 07/01/2023 05/07/2026
EP/W524323/1 30/09/2022 29/09/2028
2767618 Studentship EP/W524323/1 07/01/2023 05/07/2026