Verification of Memory Management Units

This paper describes the formal verification of two memory management units using the HOL theorem prover. The verification effort demonstrates the use of hierarchical decomposition and abstract theories. Both devices authorize memory requests and translate virtual addresses to real addresses. The first unit was designed and verified to the gate level. The second memory management unit is implemented with an abstract representation and provides some operating system support. Memory requests are validated based on a memory resident segment table. These units are being used as a basis for the verification of a composed chip set to form a trusted computing base.

[1]  Daniel Weise Functional Verification of MOS Circuits , 1987, 24th ACM/IEEE Design Automation Conference.

[2]  Avra Cohn,et al.  A Proof of Correctness of the Viper Microprocessor: The First Level , 1988 .

[3]  Harry G. Barrow,et al.  VERIFY: A Program for Proving Correctness of Digital Hardware Designs , 1984, Artif. Intell..

[4]  Jeffrey J. Joyce Formal specification and verification of microprocessor systems , 1988 .

[5]  Victor P. Nelson Fault-tolerant computing: fundamental concepts , 1990, Computer.

[6]  Warren A. Hunt,et al.  Toward Verified Execution Environments , 1987, 1987 IEEE Symposium on Security and Privacy.

[7]  Jing Pan,et al.  A Formal Specification of the HEEE Floating-P with Application to the Verification of Floating-point Coprocessors , 1990 .

[8]  Peter G. Neumann,et al.  On hierarchical design of computer systems for critical applications , 1986, IEEE Transactions on Software Engineering.

[9]  Jeffrey J. Joyce,et al.  Totally Verified Systems: Linking Verified Software to Verified Hardware , 1989, Hardware Specification, Verification and Synthesis.

[10]  Robert S. Boyer,et al.  A verified operating system kernel , 1987 .

[11]  P. J. Windley,et al.  A hierarchical methodology for verifying microprogrammed microprocessors , 1990, Proceedings. 1990 IEEE Computer Society Symposium on Research in Security and Privacy.

[12]  Joshua D. Guttman,et al.  Verifying a hardware security architecture , 1990, Proceedings. 1990 IEEE Computer Society Symposium on Research in Security and Privacy.

[13]  M. Gordon HOL: A Proof Generating System for Higher-Order Logic , 1988 .

[14]  W. J. Cullyer Implementing Safety-Critical Systems: The VIPER Microprocessor , 1988 .

[15]  Phillip John Windley The formal verification of generic interpreters , 1990 .