• DocumentCode
    3412839
  • Title

    Using reversible computing to achieve fail-safety

  • Author

    Bishop, Peter G.

  • Author_Institution
    Adelard, London, UK
  • fYear
    35735
  • fDate
    2-5 Nov1997
  • Firstpage
    182
  • Lastpage
    191
  • Abstract
    This paper describes a fail-safe design approach that can be used to achieve a high level of fail-safety with conventional computing equipment which may contain design flaws. The method is based on the well-established concept of reversible computing. Conventional programs destroy information and hence cannot be reversed. However it is easy to define a virtual machine that preserves sufficient intermediate information to permit reversal. Any program implemented on this virtual machine is inherently reversible. The integrity of a calculation can therefore be checked by reversing back from the output values and checking for the equivalence of intermediate values and original input values. By using different machine instructions on the forward and reverse paths, errors in any single instruction execution can be revealed. Random corruptions in data values are also detected. An assessment of the performance of the reversible computer design for a simple reactor trip application indicates that it runs about ten times slower than a conventional software implementation and requires about 20 kilobytes of additional storage. The trials also show a fail-safe bias of better than 99.998% for random data corruptions, and it is argued that failures due to systematic flaws could achieve similar levels of fail-safe bias. Potential extensions and applications of the technique are discussed
  • Keywords
    data integrity; errors; reverse engineering; safety; software fault tolerance; software performance evaluation; virtual machines; calculation integrity; design flaws; errors; fail-safe design approach; instruction execution; machine instructions; performance; random data value corruptions; reactor trip application; reversible computing; software fault tolerance; storage; virtual machine; Application software; Background noise; Computer errors; Hardware; Inductors; Logic circuits; Software performance; Software safety; Temperature; Virtual machining;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Reliability Engineering, 1997. Proceedings., The Eighth International Symposium on
  • Conference_Location
    Albuquerque, NM
  • Print_ISBN
    0-8186-8120-9
  • Type

    conf

  • DOI
    10.1109/ISSRE.1997.630863
  • Filename
    630863