[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1007/11513988_20guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Formal verification of backward compatibility of microcode

Published: 06 July 2005 Publication History

Abstract

Microcode is used to facilitate new technologies in Intel CPU designs. A critical requirement is that new designs be backwardly compatible with legacy code when new functionalities are disabled. Several features distinguish microcode from other software systems, such as: interaction with the external environment, sensitivity to exceptions, and the complexity of instructions. This work describes the ideas behind MICROFORMAL, a technology for fully automated formal verification of functional backward compatibility of microcode.

References

[1]
R. Alur, T.A. Henzinger, O. Kupferman, and M.Y. Vardi. Alternating refinement relations. In CONCUR'98:163-178, 1998.
[2]
T. Ball and S.K. Rajamani. The SLAM project: debugging system software via static analysis. In POPL'02:1-3, 2002.
[3]
D.W. Currie, A.J. Hu, S. Rajan, and M. Fujita. Automatic formal verification of DSP software. In DAC'00: 130-135, 2000.
[4]
E.M. Clarke, D. Kroening, and K. Yorav. Behavioral consistency of C and Verilog programs using bounded model checking. In DAC'03: 368-371, 2003.
[5]
D. Cyrluk. Microprocessor Verification in PVS: A Methodology and Simple Example. Technical Report SRI-CSL-93-12, Menlo Park, CA, 1993.
[6]
X. Feng and A.J. Hu. Automatic formal verification for scheduled VLIW code. In ACM SIGPLAN Joint Conference: Languages, Compilers, and Tools for Embedded Systems, and Software and Compilers for Embedded Systems, pages 85-92, 2002.
[7]
S.Y. Huang and K.T. Cheng. Formal Equivalence Checking and Design Debugging. Kluwer, 1998.
[8]
T.A. Henzinger, R. Jhala, R. Majumdar, and G. Sutre. Software verification with Blast. In SPIN'03:235-239, 2003.
[9]
D. Harel and A. Pnueli. On the development of reactive systems. In Logics and Models of Concurrent Systems, volume F-13 of NATO ASI Series, pages 477-498, 1985.
[10]
K. Hamaguchi, H. Urushihara, and T. Kashiwabara. Symbolic checking of signal-transition consistency for verifying high-level designs. In FMCAD'00:445-469, 2000.
[11]
Z. Manna and A. Pnueli. Temporal Verification of Reactive Systems: Safety. Springer-Verlag, New York, 1995.
[12]
G. Necula. Translation validation of an optimizing compiler. In PLDI'00: 83-94, 2000.
[13]
A. Pnueli, M. Siegel, and E. Singerman. Translation validation. In TACAS'98:151- 161, 1998.
[14]
J. Sawada and W.A. Hunt. Verification of FM9801: An out-of-order microprocessor model with speculative execution, exceptions, and program-modifying capability. J. on Formal Methods in System Design, 20(2):187-222, 2002.
[15]
M. Srivas and S. Miller. Applying formal verification to the AAMP5 microprocessor: A case study in the industrial use of formal methods. J. on Formal Methods in System Design, 8:153-188, 1996.
[16]
W. Stallings. Computer Organization and Architecture, 6th ed. Prentice Hall, 2002.
[17]
L. Zuck, A. Pnueli, Y. Fang, and B. Goldberg. Voc: A translation validator for optimizing compilers. J. of Universal Computer Science, 9(2), 2003.

Cited By

View all
  • (2020)Requirement specification and model-checking of a real-time scheduler implementationProceedings of the 28th International Conference on Real-Time Networks and Systems10.1145/3394810.3394817(89-99)Online publication date: 9-Jun-2020
  • (2020)Verifying x86 instruction implementationsProceedings of the 9th ACM SIGPLAN International Conference on Certified Programs and Proofs10.1145/3372885.3373811(47-60)Online publication date: 20-Jan-2020
  • (2017)Sound Loop Superoptimization for Google Native ClientACM SIGARCH Computer Architecture News10.1145/3093337.303775445:1(313-326)Online publication date: 4-Apr-2017
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
CAV'05: Proceedings of the 17th international conference on Computer Aided Verification
July 2005
564 pages
ISBN:3540272313

Sponsors

  • Jasper Design Automation: Jasper Design Automation
  • Weizmann Institute: Weizmann Institute
  • Microsoft: Microsoft
  • Intel: Intel
  • IBM: IBM

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 06 July 2005

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2020)Requirement specification and model-checking of a real-time scheduler implementationProceedings of the 28th International Conference on Real-Time Networks and Systems10.1145/3394810.3394817(89-99)Online publication date: 9-Jun-2020
  • (2020)Verifying x86 instruction implementationsProceedings of the 9th ACM SIGPLAN International Conference on Certified Programs and Proofs10.1145/3372885.3373811(47-60)Online publication date: 20-Jan-2020
  • (2017)Sound Loop Superoptimization for Google Native ClientACM SIGARCH Computer Architecture News10.1145/3093337.303775445:1(313-326)Online publication date: 4-Apr-2017
  • (2017)Sound Loop Superoptimization for Google Native ClientACM SIGPLAN Notices10.1145/3093336.303775452:4(313-326)Online publication date: 4-Apr-2017
  • (2017)Sound Loop Superoptimization for Google Native ClientProceedings of the Twenty-Second International Conference on Architectural Support for Programming Languages and Operating Systems10.1145/3037697.3037754(313-326)Online publication date: 4-Apr-2017
  • (2016)A computer-algebraic approach to formal verification of data-centric low-level softwareProceedings of the 14th ACM-IEEE International Conference on Formal Methods and Models for System Design10.5555/3343414.3343419(34-42)Online publication date: 18-Nov-2016
  • (2015)Program equivalence by circular reasoningFormal Aspects of Computing10.1007/s00165-014-0319-627:4(701-726)Online publication date: 1-Jul-2015
  • (2013)An equivalence checker for hardware-dependent embedded system softwareProceedings of the Eleventh ACM/IEEE International Conference on Formal Methods and Models for Codesign10.5555/3041405.3041491(119-128)Online publication date: 1-Oct-2013
  • (2013)Data-driven equivalence checkingACM SIGPLAN Notices10.1145/2544173.250950948:10(391-406)Online publication date: 29-Oct-2013
  • (2013)Data-driven equivalence checkingProceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications10.1145/2509136.2509509(391-406)Online publication date: 29-Oct-2013
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media