Rigorous code generation for distributed real-time embedded systems
This thesis addresses the problem of generating executable code for distributed embedded systems in which computing nodes communicate using the Controller Area Network (CAN). CAN is the dominant network in automotive and factory control systems and is becoming increasingly popular in robotic, medica...
Main Author: | |
---|---|
Other Authors: | |
Published: |
Northumbria University
2013
|
Subjects: | |
Online Access: | http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.588280 |
id |
ndltd-bl.uk-oai-ethos.bl.uk-588280 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-bl.uk-oai-ethos.bl.uk-5882802015-12-03T03:21:12ZRigorous code generation for distributed real-time embedded systemsAlmohammad, AliKendall, David; Henderson, William2013This thesis addresses the problem of generating executable code for distributed embedded systems in which computing nodes communicate using the Controller Area Network (CAN). CAN is the dominant network in automotive and factory control systems and is becoming increasingly popular in robotic, medical and avionics applications. The requirements for functional and temporal reliability in these domains are often stringent, and testing alone may not offer the required level of con dence that systems satisfy their specications. Consequently, there has been considerable research interest in additional techniques for reasoning about the behaviour of CAN-based systems. This thesis proposes a novel approach in which system behaviour is specifed in a high-level language that is syntactically similar to Esterel but which is given a formal semantics by translation to bCANDLE, an asynchronous process calculus. The work developed here shows that bCANDLE systems can be translated automatically, via a common intermediate net representation, not only into executable C code but also into timed automaton models that can be used in the formal verification of a wide range of functional and temporal properties. A rigorous argument is presented that, for any system expressed in the high-level language, its timed automaton model is a conservative approximation of the executable C code, given certain well-defined assumptions about system components. It is shownthat an off-the-shelf model-checker (UPPAAL) can be used to verify system properties with a high-level of confidence that those properties will be exhibited by the executable code. The approach is evaluated by applying it to four representative case studies. Our results show that, for small to medium-sized systems, the generated code is sufficiently efficient for execution on typical hardware and the generated timed automaton model is sufficiently small for analysis within reasonable time and memory constraints.620G400 Computer ScienceNorthumbria Universityhttp://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.588280http://nrl.northumbria.ac.uk/14825/Electronic Thesis or Dissertation |
collection |
NDLTD |
sources |
NDLTD |
topic |
620 G400 Computer Science |
spellingShingle |
620 G400 Computer Science Almohammad, Ali Rigorous code generation for distributed real-time embedded systems |
description |
This thesis addresses the problem of generating executable code for distributed embedded systems in which computing nodes communicate using the Controller Area Network (CAN). CAN is the dominant network in automotive and factory control systems and is becoming increasingly popular in robotic, medical and avionics applications. The requirements for functional and temporal reliability in these domains are often stringent, and testing alone may not offer the required level of con dence that systems satisfy their specications. Consequently, there has been considerable research interest in additional techniques for reasoning about the behaviour of CAN-based systems. This thesis proposes a novel approach in which system behaviour is specifed in a high-level language that is syntactically similar to Esterel but which is given a formal semantics by translation to bCANDLE, an asynchronous process calculus. The work developed here shows that bCANDLE systems can be translated automatically, via a common intermediate net representation, not only into executable C code but also into timed automaton models that can be used in the formal verification of a wide range of functional and temporal properties. A rigorous argument is presented that, for any system expressed in the high-level language, its timed automaton model is a conservative approximation of the executable C code, given certain well-defined assumptions about system components. It is shownthat an off-the-shelf model-checker (UPPAAL) can be used to verify system properties with a high-level of confidence that those properties will be exhibited by the executable code. The approach is evaluated by applying it to four representative case studies. Our results show that, for small to medium-sized systems, the generated code is sufficiently efficient for execution on typical hardware and the generated timed automaton model is sufficiently small for analysis within reasonable time and memory constraints. |
author2 |
Kendall, David; Henderson, William |
author_facet |
Kendall, David; Henderson, William Almohammad, Ali |
author |
Almohammad, Ali |
author_sort |
Almohammad, Ali |
title |
Rigorous code generation for distributed real-time embedded systems |
title_short |
Rigorous code generation for distributed real-time embedded systems |
title_full |
Rigorous code generation for distributed real-time embedded systems |
title_fullStr |
Rigorous code generation for distributed real-time embedded systems |
title_full_unstemmed |
Rigorous code generation for distributed real-time embedded systems |
title_sort |
rigorous code generation for distributed real-time embedded systems |
publisher |
Northumbria University |
publishDate |
2013 |
url |
http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.588280 |
work_keys_str_mv |
AT almohammadali rigorouscodegenerationfordistributedrealtimeembeddedsystems |
_version_ |
1718140909236781056 |