Abstract
We formalise the SPARCv8 instruction set architecture (ISA) which is
used in processors such as LEON3. Our formalisation can be specialised
to any SPARCv8 CPU, here we use LEON3 as a running example. Our model
covers the operational semantics for all the instructions in the
integer unit of the SPARCv8 architecture and it supports Isabelle code
export, which effectively turns the Isabelle model into a SPARCv8 CPU
simulator. We prove the language-based non-interference property for
the LEON3 processor. Our model is based on deterministic monad, which
is a modified version of the non-deterministic monad from NICTA/l4v.
License
Topics
Session SPARCv8
- WordDecl
- Sparc_Types
- Lib
- DetMonad
- DetMonadLemmas
- RegistersOps
- MMU
- Sparc_State
- Sparc_Instruction
- Sparc_Execution
- Sparc_Properties
- Sparc_Init_State
- Sparc_Code_Gen