Title: The SECD Microprocessor
Description: The SECD Microprocessor is a substantial case study in hardware specification and verification. The subject is a silicon implementation of Landin's SECD machine, which is transformed into a layout, formally specified, and partially verified using the HOL proof assistant. It is important as a nontrivial worked example, clearly describing the organization and execution of the correctness of proof, and by making the sources available, will be helpful to those considering the use or learning about the application of formal methods. The architecture is designed to provide support for functional programming, with complex machine instruction to support recursive definitions and function calls. This considerably raises the complexity of the state transitions to be verified, and an abstract data type and operations are introduced to express the specification. The SECD Microprocessor illustrates what formal methods can achieve today, not only by some expert elite, but by anyone prepared to carefully consider the problems at hand.
Subjects: Systems engineering, Electronic data processing, Engineering, Computer-aided design, Computer engineering