148 articles – 163 Notices  [english version]

inria-00624833, version 1

First steps towards the certification of an ARM simulator using Compcert

Xiaomu Shi () 1, Jean-François Monin () a12, Frederic Tuong () 1, Frédéric Blanqui () 1

First International Conference on Certified Programs and Proofs 7086 (2011)

Résumé : The simulation of Systems-on-Chip (SoC) is nowadays a hot topic because, beyond providing many debugging facilities, it allows the development of dedicated software before the hardware is available. Low-consumption CPUs such as ARM play a central role in SoC. However, the effectiveness of simulation depends on the faithfulness of the simulator. To this effect, we propose here to prove significant parts of such a simulator, SimSoC. Basically, on one hand, we develop a Coq formal model of the ARM architecture while on the other hand, we consider a version of the simulator including components written in Compcert-C. Then we prove that the simulation of ARM operations, according to Compcert-C formal semantics, conforms to the expected formal model of ARM. Size issues are partly dealt with using automatic generation of significant parts of the Coq model and of SimSoC from the official textual definition of ARM. However, this is still a long-term project. We report here the current stage of our efforts and discuss in particular the use of Compcert-C in this framework.

  • a –  Université Joseph Fourier - Grenoble I
  • 1 :  FORMES (LIAMA)
  • INRIA – Tsinghua University / Beijing – LIAMA
  • 2 :  Université Joseph Fourier (Grenoble 1 UJF)
  • Université Joseph Fourier - Grenoble I
  • Domaine : Informatique/Logique en informatique
    Informatique/Génie logiciel
    Informatique/Systèmes embarqués
    Informatique/Ingénierie assistée par ordinateur
    Informatique/Modélisation et simulation
  • Mots-clés : Coq – formalization – proof – C – program – simulation – processor – ARM
 
  • inria-00624833, version 1
  • oai:hal.inria.fr:inria-00624833
  • Contributeur : 
  • Soumis le : Mercredi 29 Février 2012, 03:04:58
  • Dernière modification le : Mercredi 29 Février 2012, 08:50:28