A Mechanically Checked Proof of Correctness of the AMD K5 Floating Point Square Root Microcode

  • Authors:
  • David M. Russinoff

  • Affiliations:
  • -

  • Venue:
  • Formal Methods in System Design
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a rigorous mathematical proof of the correctness of thefloating point square root instruction of the AMD K5 microprocessor.The instruction is represented as a program in a formal language thatwas designed for this purpose, based on the K5 microcode and thearchitecture of its FPU. We prove a statement of its correctness thatcorresponds directly with the IEEE Standard. We also derive anequivalent formulation, expressed in terms of rational arithmetic,which has been encoded as a formula in the ACL2 logic and mechanicallyverified with the ACL2 prover. Finally, we describe a microcodemodification that was implemented as a result of this analysis inorder to ensure the correctness of the instruction.