Reasoning about the function and timing of integrated circuits with Prolog and temporal logic

The work

AuthorsMiriam Ellen Leeser
Editors
Typephdthesis
Year1988 first published 1987
Citekeyleeser1988reasoning

Where it appeared

PublisherUniversity of Cambridge Computer Laboratory
Number in seriesUCAM-CL-TR-132
SchoolUniversity of Cambridge

Identifiers

DOI10.48456/tr-132
report_numberUCAM-CL-TR-132
ISSN1476-2986

Related

Distinct frombasin1989verification
Distinct frombasin1991formally
Distinct frombryant1985symbolic
Distinct frombryant1987boolean
Distinct frombryant1987cosmos
Distinct frombryant1991extraction
Distinct fromcamilleri1986hardware
Distinct fromclocksin1985logic
Distinct fromdhingra1988formalising
Distinct fromelshehaby2023susceptibility
Distinct fromferres2023electrical
Distinct fromfugger2016unfaithful
Distinct fromgordon1987hol
Distinct fromherbert1988case
Distinct fromjoyce1987hardware
Distinct fromkocher1996timing
Distinct frommelham1990formalizing
Distinct frommoszkowski2006hierarchical
Distinct fromwinskel1987relating

From bibtex.

Abstract

The structure of circuits is specified with Prolog; their function and timing behavior is specified with interval temporal logic. These structural and behavioral specifications are used to formally verify the functionality of circuit elements as well as their timing characteristics. A circuit is verified by deriving its behavior from the behavior of its components. The derived results can be abstracted to functional descriptions with timing constraints. The functional descriptions can then be used in proofs of more complex hardware circuits. Verification is done hierarchically, with transistors as primitive elements. Transistors are modeled as switch-level devices with delay. In order to model delay, the direction of signal flow through each transistor must be assigned. This is done automatically by a set of Prolog routines which also determine the inputs and outputs of each circuit component. Interval temporal logic descriptions are expressed in Prolog and manipulated using PALM: Prolog Assistant for Logic Manipulation. With PALM, the user specifies rewrite rules and uses these rules to manipulate logical terms. In the case of reasoning about circuits, PALM is used to manipulate the temporal logic descriptions of the components to derive a temporal logic description of the circuit. These techniques are demonstrated by applying them to several commonly used complementary metal oxide semiconductor (CMOS) structures. Examples include a fully complementary dynamic latch and a 1-bit adder. Both these circuits are implemented with transistors and exploit 2-phase clocking and charge sharing. The 1-bit adder is a sophisticated full adder implemented with a dynamic CMOS design style. The derived timing and functional behavior of the 1-bit adder is abstracted to a purely functional behavior which can be used to derive the behavior of an arbitrary n-bit adder.

A copy is held

pdf, 6.4 MB. Not published — it may be under copyright. The facts and links here are.

How it got here

How it got hereagent via bibtex
Added2026-09-15 23:51 UTC
Approved bya person 2026-09-23 14:11 UTC

Cite it as

@phdthesis{leeser1988reasoning,
  title        = {Reasoning about the function and timing of integrated circuits with Prolog and temporal logic},
  author       = {Miriam Ellen Leeser},
  year         = {1988},
  note         = {first published 1987},
  publisher    = {University of Cambridge Computer Laboratory},
  school       = {University of Cambridge},
  issn         = {1476-2986},
  doi          = {10.48456/tr-132},
}

This record lives at https://refs.drheap.org/leeser1988reasoning/ and will keep doing so.