An Isabelle/HOL Formalisation of the SPARC Instruction Set Architecture and the TSO Memory Model
File version
Accepted Manuscript (AM)
Author(s)
Sanan, D
Tiu, A
Liu, Y
Hoa, KC
Dong, JS
Griffith University Author(s)
Primary Supervisor
Other Supervisors
Editor(s)
Date
Size
File type(s)
Location
License
Abstract
The SPARC instruction set architecture (ISA) has been used in various processors in workstations, embedded systems, and in mission-critical industries such as aviation and space engineering. Hence, it is important to provide formal frameworks that facilitate the verification of hardware and software that run on or interface with these processors. In this work, we give the first formal model for multi-core SPARC ISA and Total Store Ordering (TSO) memory model in Isabelle/HOL. We present two levels of modelling for the ISA: The low-level ISA model, which is executable, covers many features specific to SPARC processors, such as delayed-write for control registers, windowed general registers, and more complex memory access. We have tested our model extensively against a LEON3 simulation board, the test covers both single-step executions and sequential execution of programs. We also prove some important properties for our formal model, including a non-interference property for the LEON3 processor. The high-level ISA model is an abstraction of the low-level model and it provides an interface for memory operations in multi-core processors. On top of the high-level ISA model, we formalise two TSO memory models: one is an adaptation of the axiomatic SPARC TSO model (Sindhu et al. in Formal specification of memory models, Springer, Boston, 1992; SPARC in The SPARC architecture manual version 8, 1992. http://gaisler.com/doc/sparcv8.pdf), the other is a new operational TSO model which is suitable for verifying execution results. We prove that the operational model is sound and complete with respect to the axiomatic model. Finally, we give verification examples with two case studies drawn from the SPARCv9 manual.
Journal Title
Journal of Automated Reasoning
Conference Title
Book Title
Edition
Volume
Issue
Thesis Type
Degree Program
School
Publisher link
Patent number
Funder(s)
Grant identifier(s)
Rights Statement
Rights Statement
© 2020 Springer Netherlands. This is an electronic version of an article published in Journal of Automated Reasoning, 2020. Journal of Automated Reasoning is available online at: http://link.springer.com/ with the open URL of your article.
Item Access Status
Note
This publication has been entered as an advanced online version in Griffith Research Online.
Access the data
Related item(s)
Subject
Formal methods for software
Software testing, verification and validation
Artificial intelligence
Software engineering
Theory of computation
Persistent link to this record
Citation
Hóu, Z; Sanan, D; Tiu, A; Liu, Y; Hoa, KC; Dong, JS, An Isabelle/HOL Formalisation of the SPARC Instruction Set Architecture and the TSO Memory Model, Journal of Automated Reasoning, 2020