Technical reports
LCF_LSM, A system for specifying and verifying hardware
September 1983, 53 pages
DOI: 10.48456/tr-41
Abstract
The LCF_LSM system is designed to show that it is practical to prove the correctness of real hardware. The system consists of a programming environment (LCF) and a specification language (LSM). The environment contains tools for manipulating and reasoning about the specifications. Verification consists in proving that a lov-level (usually structural) description is behaviourally equivalent to a high-level functional description. Specifications can be fully hierarchical, and at any level devices can be specified either functionally or structurally.
As a first case study a simple microcoded computer has been verified. This proof is described in a companion report. In this we also illustrate the use of the system for other kinds of manipulation besides verification. For example, we show how to derive an implementation of a hard-wired controller from a microprogram and its decoding and sequencing logic. The derivation is done using machine checked inference; this ensures that the hard-wired controller is equivalent to the microcoded one. We also show how to code a microassembler. These examples illustrate our belief that LCF is a good environment for implementing a wide range of tools for manipulating hardware specifications.
This report has two aims: first to give an overview of the ideas embodied in LCF_LSM, and second, to be a user manual for the system. No prior knowledge of LCF is assumed.
Full text
PDF (2.5 MB)
BibTeX record
@TechReport{UCAM-CL-TR-41, author = {Gordon, Mike}, title = {{LCF\_LSM, A system for specifying and verifying hardware}}, year = 1983, month = sep, url = {https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-41.pdf}, institution = {University of Cambridge, Computer Laboratory}, doi = {10.48456/tr-41}, number = {UCAM-CL-TR-41} }