Loading…

Formalising and analysing the control software of the Compact Muon Solenoid Experiment at the Large Hadron Collider

The control software of the CERN Compact Muon Solenoid experiment contains over 27500 finite state machines. These state machines are organised hierarchically: commands are sent down the hierarchy and state changes are sent upwards. The sheer size of the system makes it virtually impossible to fully...

Full description

Saved in:
Bibliographic Details
Published in:Science of computer programming 2013-12, Vol.78 (12), p.2435-2452
Main Authors: Hwong, Yi Ling, Keiren, Jeroen J.A., Kusters, Vincent J.J., Leemans, Sander, Willemse, Tim A.C.
Format: Article
Language:English
Subjects:
Citations: Items that this one cites
Items that cite this one
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:The control software of the CERN Compact Muon Solenoid experiment contains over 27500 finite state machines. These state machines are organised hierarchically: commands are sent down the hierarchy and state changes are sent upwards. The sheer size of the system makes it virtually impossible to fully understand the details of its behaviour at the macro level. This is fuelled by unclarities that already exist at the micro level. We have solved the latter problem by formally describing the finite state machines in the mCRL2 process algebra. The translation has been implemented using the ASF+SDF meta-environment, and its correctness was assessed by means of simulations and visualisations of individual finite state machines and through formal verification of subsystems of the control software. Based on the formalised semantics of the finite state machines, we have developed dedicated tooling for checking properties that can be verified on finite state machines in isolation. ► Formalisation of SML, used in the control software for CERN experiments. ► Automated transformation of SML to mCRL2 using ASF+SDF. ► Validation of the formalisation using model checking. ► Verification of SML programs using Bounded Model Checking. ► We found livelock and reachability bugs in production SML programs.
ISSN:0167-6423
1872-7964
DOI:10.1016/j.scico.2012.11.009