Formal modelling, testing and verification of HSA memory models using Event-B
Formal modelling, testing and verification of HSA memory models using Event-B
The HSA Foundation has produced the HSA Platform System Architecture Specification that goes a long way towards addressing the need for a clear and consistent method for specifying weakly consistent memory. HSA is specified in a natural language which makes it open to multiple ambiguous interpretations and could render bugs in implementations of it in hardware and software. In this paper we present a formal model of HSA which can be used in the development and verification of both concurrent software applications as well as in the development and verification of the HSA-compliant platform itself. We use the Event-B language to build a provably correct hierarchy of models from the most abstract to a detailed refinement of HSA close to implementation level. Our memory models are general in that they represent an arbitrary number of masters, programs and instruction interleavings. We reason about such general models using refinements. Using Rodin tool we are able to model and verify an entire hierarchy of models using proofs to establish that each refinement is correct. We define an automated validation method that allows us to test baseline compliance of the model against a suite of published HSA litmus tests. Once we complete model validation we develop a coverage driven method to extract a richer set of tests from the Event-B model and a user specified coverage model. These tests are used for extensive regression testing of hardware and software systems. Our method of refinement based formal modelling, baseline compliance testing of the model and coverage driven test extraction using the single language of Event-B is a new way to address a key challenge facing the design and verification of multi-core systems.
University of Southampton
Darbari, Ashish
f15dd5f5-341b-4bd1-9b21-d8e1b21f5304
Singleton, Iain
29f2c4d8-29fb-4699-9f00-aae3697d21b7
Butler, Michael
54b9c2c7-2574-438e-9a36-6842a3d53ed0
Colley, John
d2877837-a2f2-4f84-b3f3-3ffe79ffeb87
16 May 2016
Darbari, Ashish
f15dd5f5-341b-4bd1-9b21-d8e1b21f5304
Singleton, Iain
29f2c4d8-29fb-4699-9f00-aae3697d21b7
Butler, Michael
54b9c2c7-2574-438e-9a36-6842a3d53ed0
Colley, John
d2877837-a2f2-4f84-b3f3-3ffe79ffeb87
Darbari, Ashish, Singleton, Iain, Butler, Michael and Colley, John
(2016)
Formal modelling, testing and verification of HSA memory models using Event-B
Southampton, GB.
University of Southampton
9pp.
Record type:
Monograph
(Project Report)
Abstract
The HSA Foundation has produced the HSA Platform System Architecture Specification that goes a long way towards addressing the need for a clear and consistent method for specifying weakly consistent memory. HSA is specified in a natural language which makes it open to multiple ambiguous interpretations and could render bugs in implementations of it in hardware and software. In this paper we present a formal model of HSA which can be used in the development and verification of both concurrent software applications as well as in the development and verification of the HSA-compliant platform itself. We use the Event-B language to build a provably correct hierarchy of models from the most abstract to a detailed refinement of HSA close to implementation level. Our memory models are general in that they represent an arbitrary number of masters, programs and instruction interleavings. We reason about such general models using refinements. Using Rodin tool we are able to model and verify an entire hierarchy of models using proofs to establish that each refinement is correct. We define an automated validation method that allows us to test baseline compliance of the model against a suite of published HSA litmus tests. Once we complete model validation we develop a coverage driven method to extract a richer set of tests from the Event-B model and a user specified coverage model. These tests are used for extensive regression testing of hardware and software systems. Our method of refinement based formal modelling, baseline compliance testing of the model and coverage driven test extraction using the single language of Event-B is a new way to address a key challenge facing the design and verification of multi-core systems.
This record has no associated files available for download.
More information
Published date: 16 May 2016
Organisations:
Electronic & Software Systems
Identifiers
Local EPrints ID: 400640
URI: http://eprints.soton.ac.uk/id/eprint/400640
PURE UUID: 3040c9e1-5819-479b-8345-8feed59a0f39
Catalogue record
Date deposited: 20 Sep 2016 08:11
Last modified: 12 Dec 2021 02:54
Export record
Contributors
Author:
Ashish Darbari
Author:
Iain Singleton
Author:
Michael Butler
Author:
John Colley
Download statistics
Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.
View more statistics