• No results found

REAL-TIME CHALLENGES OF VEHICULAR EMBEDDED SYSTEMS ON MULTI-CORE - A MAPPING STUDY

N/A
N/A
Protected

Academic year: 2021

Share "REAL-TIME CHALLENGES OF VEHICULAR EMBEDDED SYSTEMS ON MULTI-CORE - A MAPPING STUDY"

Copied!
26
0
0

Loading.... (view fulltext now)

Full text

(1)

aster˚

as, Sweden

Thesis for the Degree of Master of Science in Intelligent Embedded

Systems 30.0 credits

REAL-TIME CHALLENGES OF

VEHICULAR EMBEDDED SYSTEMS

ON MULTI-CORE - A MAPPING

STUDY

Shankar Iyer

sir15001@student.mdh.se

Examiner: Mikael Sj¨

odin

alardalen University, V¨

aster˚

as, Sweden

Supervisor: Alessio Bucaioni

alardalen University, V¨

aster˚

as, Sweden

(2)

Abstract

The increasing complexity of vehicular embedded systems has encouraged researchers and practition-ers to adopt model-driven engineering in the development of these systems. In particular, several modelling languages have been introduced for representing the vehicular software architecture and its quality attributes. Current trend in the automotive domain is to shift from single-core architec-tures to multi-core ones in the attempt of providing the computational power required from the next generation of vehicles, particularly autonomous ones. On the one hand, multi-core architectures introduce new real-time challenges in the development of these systems like core-interdependency. On the other hand, it is pivotal that modelling languages continue to be effective in represent-ing the new vehicular architectures together with their novel concerns, to continue to benefit from model-based methodologies. In this thesis, we present a systematic mapping study focusing i) on the real-time challenges introduced by the adoption of multi-core architectures and ii) on the extent of the modelling support for the resolution of these challenge, in the automotive domain.

(3)

Table of Contents

1 Introduction 3

2 Related Work 4

3 Research Method 5

3.1 Definition of the Goal and the Research Questions . . . 5

3.2 Conduct the Search . . . 5

3.3 Screening the Studies . . . 6

3.4 Classify the Studies . . . 7

3.5 Data Extraction and Analysis . . . 7

4 Publication Trends 8 4.1 Temporal Distribution . . . 8

4.2 Publication Channel Distribution . . . 9

5 Real-time Challenges Posed by the Adoption of Multi-core Technologies in Au-tomotive Domain 10 5.1 Specification and Verification of Hard Real-time Requirements . . . 11

5.2 Scheduling . . . 11

5.3 Timing Analysis . . . 12

5.4 Resource Contention . . . 13

5.5 Sensor Data Processing . . . 13

6 Modelling Support for the Resolution of the Challenges Posed by the Adoption of Multi-core 14 6.1 Use of Existing Programming Languages . . . 14

6.2 Use and Extension of Existing Modelling Languages . . . 14

6.3 Definition of Pattern Languages . . . 15

6.4 Use and Extension of Pattern Languages . . . 15

6.5 Use and Extension of Mathematical Models . . . 16

6.6 Definition of Hardware Models . . . 16

7 Analysis 17 7.1 Limitations and Threats . . . 18

8 Conclusion 19 References 21 Appendices 22 Appendix A Search Strings 22 A.1 Search String 1 . . . 22

A.2 Search String 2 . . . 22

(4)

1

Introduction

An embedded system is a computing system consisting of dedicated hardware and software which performs specific functionalities and it is embedded in the system it controls [1]. In the automotive domain, embedded systems are known as Electronic Control Unit (ECU). During the last decades, vehicles transitioned from being mechanical-intensive systems to software-intensive systems con-sisting of more than 80 ECUs and several million lines of code [2]. Currently, the complexity associated to the vehicular embedded systems1 and their development spans over several dimen-sions where the size is only one of them. In fact, vehicular embedded systems are characterised by extra-functional properties whose verification complicates the development of these systems. Timing predictability and other real-time properties, for instance, are paramount both for the vehicle’s safety and for the customer value [3].

During the last decades, in order to cope with the ever-increasing complexity of software in-tensive systems and their development, researchers and practitioners have been proposing and adopting new paradigms focusing on abstraction, separation of concerns and automation. Model-driven Engineering (MDE) is one of them. In contrast to programming languages, MDE is more effective in alleviating the platform complexity and in expressing domain specific concepts. Within MDE, metamodels define the relationship among concepts in a specific domain, their semantic and their constraints [4]. Models are built using the concepts, the relationships, the semantic and the constraints captured by the metamodels [5]. Thus models conform to metamodels. Model trans-formations define how to generate new models starting from exiting ones. Therefore, according to MDE, the software development can be described as the process of refining models, via model trans-formations, from higher to lower level of abstraction, until code is generated [6]. In the automotive domain, the adoption of MDE led to the standardisation of several modelling languages and model-based methodologies like EAST-ADL [7], Rubus Component Model [8] (RCM) and Automotive Open System Architecture [9] (AUTOSAR), to name a few. While most of the current modelling languages and model-based solutions support the development of vehicular systems employing single-core ECUs, the tendency is to switch to multi-core ECUs for providing the computational power required from the next generation vehicles, particularly autonomous ones. In order to con-tinue to benefit from model-based methodologies, it is pivotal that modelling languages concon-tinue to represent effectively the new multi-core architectures together with their real-time properties.

To this end, in this thesis we present a systematic mapping study aiming at identifying, classi-fying and evaluating the state of the art and practice of modelling support for vehicular embedded systems on multi-core. In particular, the main contribution of this systematic mapping study are i) an exploration of the real-time challenges introduced by the adoption of multi-core architectures and ii) an up-to-date assesment of the state of the art and practice of modelling support for the resolution of these challenges, in the automotive domain.

The remainder of this report is structured as follows. Section 2, compares related studies documented in the literature with our systematic mapping study. In Section 3, we discuss the choices we made in designing, conducting and documenting the mapping study. Sections 4, 5 and6 present the results of the mapping study. Section7discusses the main findings of the study together with its possible limitations and threats to validity. Finally, Section8concludes the paper and discusses future work.

1In this thesis, with the term vehicular embedded systems we refer to the set of the embedded systems deployed

(5)

2

Related Work

There is a vast body of literature discussing the real-time challenges posed by the adoption of multi-core architecture within the automotive domain. However, studies focusing on the modelling support to the resolution of these challenges are, indeed, sparse. To the best of our knowledge, this is the first attempt to perform a systematic mapping study focusing on the modelling support for the real-time challenges posed by the adoption of multi-core architecture in the automotive domain.

In [10], B. Kitchenham et al. evaluate the value of of a mapping study when conducted by undergraduate and postgraduate students. The authors employ a case study approach and document the problems faced in a mapping study. They confirm that the students indeed gain research skills and experience by the conduct of a mapping study. They also conclusively state the merit of a mapping study in broadly addressing the topic of study and consolidating research on the topic. The questions in the mapping study address issues similar to our study. These questions relate to the collection and the evaluation from multiple sources, the classification scheme and the analysis and reporting. A major difference with respect to our study is the exclusion of possible bias which the researchers may introduce into the study.

Similar to the mapping study presented in this thesis, in [11], M. Kuhrmann et al. present the findings of a mapping study on Method Engineering. They study the contributions in the field of Method Engineering to solve present-day complexities in industrial software processes. They discuss the need to frame the research questions and determine the target search databases differ-ently than in a conventional mapping study. The authors employ an extensive process including snow-balling which is further strengthened by a multi-staged voting procedure for validation. Their findings establish the lack of contributions in Method Engineering as well as an emerging trend in contributions.

In [12], D. Budgen et al. summarise the challenges faced in mapping studies through an informal review of six mapping studies in the area of software engineering. They identify the common set of challenges faced in the reviewed studies. These challenges are similar to the challenges faced during the development of the mapping study presented in this thesis. The common challenges identified are i) the relative small size of the study in comparison to the entire collection of works on the subject, ii) the handicap in the classification scheme due to the limited scope of the review based on titles and abstracts and iii) the absence of a common taxonomy leading to variations in results. Budgen et al. conclude that a mapping study is an important step before performing a comprehensive systematic literature review.

The mapping study in [13] by A. Seriai et al. is motivated by the lack of research on validation methods in software visualisation literature. The authors establish the lack of adequate validation methods. They also identify how the shortcomings could be addressed. Unlike the study by A. Seriai et al., the mapping study presented in this thesis aims to establish the extent of modelling support to the identified challenges, only.

(6)

3

Research Method

In [14], K. Petersen et al. describe a five-steps process for conducting a systematic mapping study. The five steps are: definition of research question, conduct search, screening of papers, keywording using abstracts and data extraction and mapping process. In this thesis, we use a research method which is an adaptation of the above mentioned process. Figure 1 provides a graphical description of the research method adopted for this thesis.

Figure 1: Research method

3.1

Definition of the Goal and the Research Questions

The goal of the systematic mapping study presented in this thesis is to identify, classify and evaluate the publication trends, extent and characteristics of the modelling support for the resolu-tion of the real-time challenges posed by the adopresolu-tion of multi-core technologies, in the automotive domain. Starting from the above research goal, we derived the following Research Questions(RQs). RQ 1. What are the publication trends of research studies about modelling support for real-time challenges posed by multi-core technologies in the automotive domain?

Objective. To assess the interest, the relevant venues and the publication types over the years. RQ 2. Which are the real-time challenges posed by multi-core technologies in the automotive domain?

Objective. To identify the main challenges for assessing the extent of the modelling support towards their resolution.

RQ 3. How does modelling support the resolution of the real-time challenges posed by multi-core technologies in the automotive domain?

Objective. To establish the extent of modelling support and any underlying relation between the solution and the challenges.

3.2

Conduct the Search

This phase is an iterative process where the scientific databases and the indexing systems are exercised with the aim of collecting all the relevant publications for the study. To this end, we selected five of the largest and most complete scientific databases and indexing systems, which are the ACM digital library, the IEEE Xplore digital library, the Springer-Link scientific database, the Scopus scientific database and the Word of Science indexing system. This choice was guided by the following factors:

• accessibility,

• ability to export search results,

• indexing of peer-reviewed publications, and

• reputation to be effective means for conducting systematic mapping studies in computer science [15]

In order to exercise the above mentioned databases and indexing systems, starting from the elicited RQs, we derived two search strings. To create the search strings, we extracted a list of relevant concepts, their synonyms, abbreviations and alternative spellings and combined them by using the logical operators AND and OR. The resulting search strings are listed below.

(7)

Search string 1. (”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (automotive OR vehicular OR vehicle) AND (issue OR issues OR problem OR problems OR challenge OR challenges)

Search string 2. (”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (issue OR issues OR problem OR problems OR challenge OR challenges) AND (modelling OR modeling OR model-based OR model-driven OR ”model driven” OR ”model based”)

Please note that, each search string was refined in different versions for accommodating the syn-taxes of the identified databases and indexing systems. The refined search strings are listed in AppendixA.

The search process comprised of 10 searches which resulted in a total of 2884 scientific pub-lication where 605 pubpub-lications were from the ACM digital library, 193 pubpub-lications from IEEE Xplore digital library, 972 publications from the Springer-Link scientific database, 1071 publica-tions from the Scopus scientific database and 43 publicapublica-tions from the Web of Science indexing system. Figure2 gives a graphical representation of the search process.

Figure 2: Search and selection process

3.3

Screening the Studies

In this phase, the search results are filtered to remove possible duplicates and their relevancy is assessed using exclusion criteria. For the systematic mapping study presented in this thesis, we defined the following exclusion criteria:

• the language of the paper is not English, • the complete paper cannot be downloaded, • the paper is only a summary of the topic,

• the paper is not related to multi-core architectures, • the paper presents hardware-based solutions, and • the paper is not related to the automotive domain

(8)

In order to eliminate possible biases from the exclusion process, the list of inclusion criteria has been vetted by Alessio Bucaioni2. Figure 2 describes the selection process we adopted for

the systematic mapping study presented in this thesis. After performing the initial search, the duplicated studies were removed along with those which were not written in English. Therefore, the initial set consisting of 2884 studies was narrowed down to a set consisting of 1001 studies. At this point, the remaining exclusion criteria were applied i) on the abstract and title and ii) on the introduction and conclusion sections of the studies until the final set consisting of 37 studies was defined. AppendixBlists the selected 37 studies.

3.4

Classify the Studies

We classified the identified studies based on 3 facets corresponding to the elicited RQs. In partic-ular, in order to answer the RQ 1, we considered standard information about the study such as, title and publication details. As for the other research questions, i.e., RQ 2 and RQ 3, the facets were left open meaning that we had no prefixed classification attributes. Rather, we let the facets evolve during the extraction process. Section4,5 and6discuss the proposed classification.

3.5

Data Extraction and Analysis

This phase aims at analysing the information and relations contained in the search results against the research questions. Moreover, the findings can be presented in a graphical or tabular represen-tation. Section4, 5and 6presents the findings of this systematic mapping study while Section 7 analyse them together with possible threats to validity.

2Alessio Bucaioni is an industrial Ph.D. Student at the School of Innovation Design and Engineering of M¨alardalen

(9)

4

Publication Trends

In this section, we aim at answering the RQ 1 discussed in Section3by describing the publication trends for the analysed studies. To this end, for each analysed study we extracted information about the publication year, venue and type of publication. However, as the findings on the publication venue failed in identifying a clear trend (they have a very sparse distribution with more than 20 different venues), in the following sections we describe the findings on the publication year and the publication type, only.

4.1

Temporal Distribution

Figure3ashows the distribution of publication over time. From the collected data, we can deduce that only few studies were published before 2013. In fact, the first study addressing modelling support for the resolution of the real-time challenges introduced by multi-core architectures in the automotive domain was published in 2009. From 2009 to 2012, the average number of publications is 1,5 per year with a drop of publications in the year 2011. Starting from 2013, we can observe a clear increment on the number of publications, which confirms the growing interest of the re-searchers and practitioners on the analysed subjects. The average number of publications, for the interval which goes from 2013 to 2016, is 7.75 with the year 2016 having the highest number of publications. The set of the real-time challenges identified in the recent publications includes paral-lelisation, data stream management, dependency analysis, inter-core communication, verification, analysis and simulation. Similarly, recent publications show that most of the identified challenges are solved by employing AUTOSAR [9].

(a) Distribution of publications by year

(b) Distribution of publications by type

(10)

4.2

Publication Channel Distribution

We categorise the analysed studies for assessing their distribution by the publication type. Fig-ure3bshows the publication channel distribution. From the collected data, we can observe that the conference paper3 is the most common publication type with more than 78% of publications falling in this category. Journal paper is the least common. One of the reasons for the low number of journal papers might be the lack of industrial case studies for the validation of the researches on the selected topic.

3Within the conference paper type we categorise both papers submitted in the main tracks of a conference and

(11)

5

Real-time Challenges Posed by the Adoption of

Multi-core Technologies in Automotive Domain

This section aims at answering the RQ 2 described in Section 3. In particular, we describe the real-time challenges posed by the adoption of multi-core architectures in the automotive domain as they were identified from the selected studies.

We classified the selected studies as described in Section3, thus iteratively refining the classi-fication facet with new challenges, until the facet was completed. The final facet consists of the following real-time challenges:

• specification and verification of hard real-time requirements, • scheduling,

– complexity of scheduling with respect to timing requirements, – complexity of scheduling with respect to optimal resource utilisation, – tuning of the schedule,

– functional vs. timing isolation,

– synchronisation of data and communication between cores, – multi-core load balancing, and

– state space explosion, • timing analysis,

– complexity of timing analysis – efficient memory allocation, – end-to-end timing analysis, and – stochastic execution times, • resource contention, and • sensor data processing

Figure4describes the distribution of the identified challenges. Please note that, each study was classified with respect to one or more challenges. Therefore, the sum of the distributions of each challenge exceeds the total number of identified studies. According to the collected data, the most frequent real-time challenges occurring during the development of vehicular embedded systems are i) the specification and validation of hard real-time requirements and ii) the scheduling. In the following sections, we describe each identified real-time challenge.

(12)

5.1

Specification and Verification of Hard Real-time Requirements

In real-time systems, the correctness of a system depends on the correctness and timeliness of the results. Real-time systems can be classified into hard and soft real-time systems. In the case of hard real-time systems, violating an hard real-time requirement would led to catastrophic results. Vehicular embedded systems are hard real-time systems. Therefore, in the automotive domain, it is paramount to guarantee the timely behaviour of a system. However, the specification of hard real-time requirements and their verification are complex tasks when going multi-core due to the core interdependencies and the management of the shared resources. From the collected data, more than 67% of the selected papers (papers 1, 4, 5, 9, 13, 18, 26, 29, 38, 70, 598, 602, 607, 615, 617, 619, 622, 628, 630, 632, 779, 821, 1769, 1786, 1787 in AppendixB) tackle this challenge.

5.2

Scheduling

Scheduling is the activity of planning the execution order of the tasks based on their periods, exe-cution times, deadlines and dependencies. In multi-core systems, the tasks are partitioned to run on the available cores. In the automotive domain, tasks are required to be scheduled i) for meeting their real-time requirements and ii) for optimising the utilisation of the cores. According to the collected data, more than 51% of the selected papers (papers 1, 2, 4, 9, 13, 15, 18, 29, 70, 598, 600, 602, 607, 612, 615, 617, 622, 627, 780) discuss such a challenge where each of them concentrates on different aspects of this challenge. Figure5shows the distribution the different challenges related to scheduling.

Figure 5: Distribution of the challenges related to scheduling

Complexity of Scheduling with respect to Timing Requirements. In particular, the pa-pers 2 and 15 concentrate on the challenges associated to finding a correct schedule with respect to the timing requirements.

Complexity of Scheduling with respect to Optimal Resource Utilisation. The papers 1, 9 and 18 discuss the challenges associated to finding a schedule which optimise the utilisation of the available resources.

Tuning of the Schedule. A switch from single- to multi-core architecture does not ensure speedup by default due to possible introduction of deadlocks, starvation and race conditions. The paper 1 describes such a challenge.

Functional vs. Timing Isolation In the vehicular embedded systems, the efficient utilisa-tion of the available resources has a direct bearing on ensuring the predictability of the system. Predictability can be achieved, while ensuring optimal resources utilisation, by isolating function-alities to different cores so as to prevent task interferences. However, functional isolation of tasks with different criticality might complicate predictability. The paper 70 describes this challenge. Synchronisation of Data and Communication Between Cores Shared communication and data infrastructure need to be efficiently utilised when concurrently executing tasks on multiple

(13)

cores as the partitioned tasks cannot always be functionally and temporally isolated. Incorrect synchronisation impacts several system requirements such as safety, predictability, efficiency and performance. The papers 1, 2, 4, 13, 18, 29, 70, 598, 600, 602, 607, 612, 615, 617, 627, 780 describe the challenges associated to synchronisation.

Multi-core Load Balancing Cores may be configured to serve as dedicated controllers or used to run a host of tasks. A reduction in the number of ECUs requires efficient partitioning of tasks between cores so that real-time requirements can be assured while maximising core utilisation. As the computation demand of a single task cannot be met by a single core, there is a need to split a single task into multiple tasks running on several cores. The papers 2 and 627 describe the challenges associated with splitting and mapping tasks.

State Space Explosion Parallelisation involves partitioning, mapping and scheduling of tasks on multiple cores while maintaining predictability. As the number of cores increases, there is an expo-nential increase in the number of possible combinations of partitioning, mappings and schedules. Moreover, the efficient allocation of tasks to cores has a direct bearing on ensuring compliance to hard real-time requirements. The papers 2, 600 and 622 describe this challenge.

5.3

Timing Analysis

Timing is a fundamental characteristic of real-time embedded systems as it determines the correct functioning of these systems. For instance, an anti-lock braking system must release the brakes in a pre-determined duration of time for ensuring that the wheels do not block. In the automotive domain, timing analysis is a primary means for delivering evidences that the system under devel-opment will behave in a timely manner. However, within multi-core architectures, timing analysis is complicated by factors such as, e..g, the core interdependencies and the shared resources. The papers 1, 9, 13, 18, 70, 602, 608, 634 and 779 discuss such a challenge. Figure6shows the distri-bution of the different challenges related to timing analysis.

Figure 6: Distribution of the challenges related to timing analysis

Complexity of Timing Analysis. The papers 1, 13, 18, 70 and 602 address the complexity of timing analysis when migrating from single- to multi-core architectures with respect to deter-mining worst-case execution time, execution deadlines and deadlocks due to the unpredictable dependencies cause by the interleaving of accesses to local and shared resources.

Efficient Memory Allocation. Paper 9 and 608 describe how memory allocation can impact timing analysis.

End-to-end Timing Analysis End-to-end timing analysis is a timing analysis which verifies the timing performance of the entire (end-to-end) system comprising of distributed components with mixed-criticality. In the automotive domain, the end-to-end timing analysis is important as

(14)

the vehicle’s functionalities are usually split over multiple cores and ECUs. In multi-core archi-tectures, the end-to-end timing analysis is complicated by the determination of the end-to-end deterministic delays due to the communication among tasks using shared resources. Paper 779 discusses such a challenge.

Stochastic Execution Times Automotive control systems consists of tasks which are not nec-essarily periodic. For instance, certain tasks may be actuated based on stochastic environmental factors. In order to avoid overly pessimistic estimates of worst-case execution times, such tasks need to be modelled with a random probability distribution. Execution times not only vary based on the solution architecture but also based on application, platform and environment factors. Paper 634 describes this challenge.

5.4

Resource Contention

In multi-core systems, tasks running on different cores contend for access to the shared structures. In vehicular embedded systems, this directly impacts the performances and the safety of the vehicle. In particular, a dead lock is a condition which is caused by the blocking of a task while waiting for a resource indefinitely and a race condition occurs when more than one task is involved in updating shared data at the same time. Papers 2 and 18 discuss the problems of dead locks and race conditions.

5.5

Sensor Data Processing

A modern vehicle is built with a variety of sensors which aims at enhancing the driving experience as well as the safety and efficiency of the vehicle. The presence of a large number of sensors results in a large volume of data being streamed to the vehicle’s ECUs. Such volume of data must be processed in a predictable manner. The challenge here is the optimisation of the partitioning of the data streamed to the available cores. The papers 5, 38 and 70 address this challenge.

(15)

6

Modelling Support for the Resolution of the Challenges

Posed by the Adoption of Multi-core

In this section we aim at answering the RQ 3 described in Section 3. In particular, we describe the extent of the modelling support for the resolution of the real-time challenges identified in Section5. We classified the selected studies as described in Section3, thus iteratively refining the classification facet with new attributes until the facet was completed. In particular, we identified the following classes of modelling support:

• use and extension of existing modelling languages, • use and extension of existing programming languages, • definition of pattern languages,

• use and extension of pattern languages,

• use and extension of mathematical models, and • definition of hardware models

Figure7describes the distribution of the identified classes. According to the collected data the most frequent classes of modelling support are i) use and extension of existing modelling languages and ii) use and extension of mathematical modelling. In the following sections we describe each identified modelling support class solution.

Figure 7: Modelling Support Distribution

6.1

Use of Existing Programming Languages

From its introduction, modelling has been defined as opposed to general programming, because modelling was exploiting an higher level of abstraction and separation of concerns [16]. However, modelling, as the activity of describing a given reality, can be carried out even with general purpose programming languages. In paper 600, the authors compare different frameworks for the scheduling of real-time systems. MAPS framework models the real-time embedded systems by means of a C dialect namely ”C for process network”.

6.2

Use and Extension of Existing Modelling Languages

Modelling languages offers the possibility to express domain concepts effectively while abstracting from the platform complexity. During the last decades, a number of modelling languages have been proposed for the design and development of vehicular embedded systems, e.g., AUTOSAR and Rubus Component Model (RCM). According to the collected data more than 32% of the

(16)

selected studies propose solution based on the use of modelling languages, where 32% of them use AUTOSAR for the modelling of vehicular embedded systems.

In particular, paper 4 proposes the use of Integer Linear Programming (ILP) on systems mod-elled by means of AUTOSAR for deriving an efficient schedule with respect to resource utilisation and inter-core communication. Similarly, papers 615 and 780, propose the use of ILP for generating predictable schedules and efficient schedules, respectively.

Paper 18 describes a task filtering mechanism based on AUTOSAR for avoiding dead locks thus improving scheduling of both higher and lower priority tasks.

Paper 26 describes an input-output virtualisation of the Controller Area Network (CAN) con-troller based on AUTOSAR which achieve the temporal isolation of mixed-criticality applications without compromising their safety.

Paper 29 uses the interplay of Timed Implicit Communication (TIC) and AUTOSAR for propos-ing a solution to the schedulpropos-ing problem. In particular, TIC is realised by means of buffers with timestamps of the tasks’ producer and consumer. The produced schedules are optimised with respect to the specified timing requirements.

Paper 598 integrates the AUTOSAR and Network-on-Chips (NoC) architectures for proposing an early validation process based on the simulation of AUTOSAR multi-core processors with Network-on-Chips (NoC) architectures.

Paper 602 proposes a response time analysis of fixed-priority non-preemptive scheduled tasks on multi-core systems modelled by means of AUTOSAR.

Paper 617 describes a scheduling solution for minimising inter-core communication. The so-lution i) maps the AUTOSAR runnables to tasks and ii) proposes a schedule for the mapped tasks.

Paper 622 describes a task allocation solution for the scheduling of tasks with respect to optimal resource utilisation. The solution exploits a cascaded mapping of AUTOSAR runnables to tasks and tasks to cores.

Paper 821 describes a solution covering the entire development cycle for a safety critical system. Paper 1786 describes an extension to RCM for the modelling of the execution platform aiming at achieving predictability of single- and multi-core vehicular embedded systems.

Paper 600 compares different frameworks for the scheduling of real-time systems, where the Sesame framework uses the Resource Description Framework (RDF) [17] for modelling the mapping of logical to physical elements of vehicular embedded systems.

6.3

Definition of Pattern Languages

Pattern languages are a way of describing design and/or organisational practices within a given domain [18]. Typically, patterns are abstractions of the observed cause-effect relationships within the given domain. Paper 1 describes a migration solution from single- to multi-core architecture using a pattern catalog for the partitioning of tasks into groups with focus on the information flows between the tasks for ensuring performance speedup.

6.4

Use and Extension of Pattern Languages

Extensions of pattern languages deal with augmenting the identified patterns for accommodating new standards, causes and effects relationships of the given domain.

Paper 5 proposes an extension to a pattern language for the distribution of data stream compu-tations among ECUs using single-core processors for emulating multi-core processors. The solution provides for the automatic generation of executable files for the testing of the real-time require-ments.

Paper 15 describes patterns for concurrent workflows through the entire development cycle of multi-core automotive systems.

Paper 70 describes a solution for functional isolation of mixed-criticality tasks on multi-core based on a pattern-supported parallelisation approach. The solution presents worst case execution time analysis on multi-core by considering communication and waiting times at given synchroni-sation points.

(17)

6.5

Use and Extension of Mathematical Models

Within this class we discuss all the studies that rather than defining a modelling language, reduce (model) a certain problem in the design and development of automotive systems (e.g., splitting a task into multiple parallel partitions) to a known mathematical problem with the aim of exploiting its already known solution.

Paper 38 describes the task stretch transform, an extension of the fork-join parallel task model, for the scheduling of parallel tasks. The solution has been evaluated upon a self-driving car called Boss.

Paper 627 describes a three-steps solution for the splitting of tasks into multiple partitions. Paper 632 describes an Advanced Driver Assistance Systems (ADAS) which automates vehic-ular systems to provide assistance to the driver. The solution proposes a single rate data flow graph model as a solution for the deployment of efficient ADAS which guarantee that real-time requirements are satisfied.

Paper 634 describes a non linear, non Gaussian state space model using the Monte Carlo method. The iterative solution allows for stochastic execution times leading to superior perfor-mance and improved utilisation of resources in comparison to other methods in vogue.

6.6

Definition of Hardware Models

Within this class, we categorise the selected studies that identify the complementing hardware and platform concepts which are necessary for multi-core architecture. For instance, Worst Case Execution Time Computation Mode, a multi-core hardware feature helps in determination of upper bounds of worst cases execution time.

Paper 13 describes an architecture which allows for the worst case execution time analysis of tasks accessing shared resources which are subject to interference.

Paper 628 describes an architecture focused on multi-criticality applications. The solution has an emphasis on precision of timing as well as verifiability. The solution also addresses the impact of increase in number of tasks on the performance of the system.

(18)

7

Analysis

To the best of our knowledge, the work presented in this thesis represents the first systematic mapping study on the real-time challenges posed by the adoption of multi-core architectures and their resolutions by means of modelling. In particular, within this study we aim at answering the three RQs defined in Section3.

According to the collected data discussed in Section4, there is a growing interest towards the subject of this mapping study. In fact, the research production, in terms of number of publications, for the years 2015 and 2016 alone has almost doubled the research production of the previous six years. In view of the pivotal role that model-based techniques have in coping with the complexity of vehicular embedded systems and their development, we expect the research production of the upcoming years to increase, with contributions both form academia and industry.

As expected, multi-core technologies introduced several real-time challenges in the development of vehicular embedded systems. According to the collected data presented in Section5, the most prominent challenges associated with the development of these systems are the specification and validation of timing requirements and the scheduling. The features offered by multi-core technology allows the automotive industry to take advantage of the growing functionality requirements. These new features introduce greater complexity in the developed system. However, scheduling remains at the core for ensuring that tasks are executed in the required order while meeting all real-time constraints. Each one of the newer functionality has its own demands on computation speed and temporal constraints. Developing the schedule is only half the job. The other half also involves specifying the scenarios and constraints adequately as well as validating the developed schedules based on different uses cases.

During the last decades, model-based development has been successfully adopted in the auto-motive domain thanks to several ad-hoc modelling languages. However, according to the collected data presented in Section6, such a support is still non mature enough for tackling the real-time challenges introduced from the shift from vehicular embedded systems on single- to multi-core. In particular, the collected data identified only one modelling language, AUTOSAR, supporting the development of automotive systems on multi-core. We observe from the collected data, solutions to the dual challenges of synchronisation and resource management, with reference to AUTOSAR. One of the solutions uses an extension of AUTOSAR while the other uses an implementation of an AUTOSAR interface. Moreover, both the solutions use a task filtering mechanism to achieve the goals.

Other languages, such as RCM, are currently incorporating such a support in the form of extensions to the languages. The extension of RCM, as seen in the collected data, focuses on support of ’high precision timing analysis’, and more importantly provides verification capability in the early stages of the development cycle.

This lack of modelling notations, led researchers and practitioners to use different tools for dealing with the complexity of the development of these systems. In particular, we observe that ILP models have been used by researchers to model systems as minimisation/maximisation objective functions in order to address the challenge of inter-core communication and dependencies. As another example, we see the use of pattern languages to model workflows and the distribution of computations among ECUs.

There are several commonalities between general purpose models and domain specific models, namely, the graphical development environment for modelling, analysis and simulation as well as certain transformation tools. However, the advantage of domain specific models lies in the ability to capture specifications for the domain at interest in a more succinct manner even in the presence of underlying domain complexity. They also provide closer compliance to domain specific regulations and standards, for example, ISO 26262, in the case of the automotive domain.

As observed earlier, the specification and validation of timing requirements and the scheduling are the challenges addressed by a majority of the researchers. However, we find only 8% support addressing the validation aspect and a mere 5% addressing the specification aspect. In the case of scheduling we see improved support in comparison, though, only to the extent of 21%. The timing analysis, resource contention and sensor data processing challenges show modelling support to the extent of 11%, 2% and 5% respectively.

(19)

7.1

Limitations and Threats

The query strings were adapted to suit the semantic of the identified scientific databases and indexing systems listed in Section3. Some databases have well-defined semantic based on which the order of the terms of the search strings could potentially generate different results. However, in our case such an anomaly did not produce significant differences and it was mitigated by the use of 5 among the most reputable scientific databases and indexing systems.

Using multiple databases and indexing systems also increased the coverage of the presented systematic mapping study with respect to the relevant studies. We believe that the search phase retrieved all the relevant researches based on the identified search strings. However, the experience of the involved researchers could have affected the quality of the search strings and, consequently, the retrieving of the studies.

The data consolidation and classification were performed manually by the authors of this thesis. However, the classification quality was dependent on the knowledge and experience of the authors and, therefore, it is possible that there was a certain bias in the search, selection and classification processes. However, in order to mitigate the bias-effect and to increase the overall quality of the systematic mapping study, the research method and the results were vetted by Alessio Bucaioni.

(20)

8

Conclusion

In this thesis, we presented a systematic mapping study on the modelling support for the resolution of the real-time challenges of vehicular embedded systems on multi-core. Our review consists of a final set of 37 papers gleaned from the initial tally of 2884 search results obtained from five different databases and indexing systems. Within our study, we have identified 16 real-time challenges grouped in 5 major categories. Our study revealed inadequate modelling support for the development of vehicular embedded systems in terms of dedicated modelling languages able to solve the prominent real-time challenges of these systems. One possible direction for future work can be to repeat the presented mapping study leveraging a team of experienced researchers, for minimising the bias-effect, and applying the snow-ball methodology, for providing a better coverage of the research area. Furthermore, the systematic mapping study could be complemented with a systematic literature review which aims at establishing i) a comprehensive relationship between the challenges and the support and ii) characterise the support with respect to the different phases of the software development.

(21)

References

[1] A. T. K¨undig, A note on the meaning of “Embedded systems”. Berlin, Heidelberg: Springer Berlin Heidelberg, 1987, pp. 1–5. [Online]. Available: http://dx.doi.org/10.1007/BFb0016344

[2] P. Braun, M. Broy, F. Houdek, M. Kirchmayr, M. M¨uller, B. Penzenstadler, K. Pohl, and T. Weyer, “Guiding requirements engineering for software-intensive embedded systems in the automotive industry,” Computer Science - Research and Development, vol. 29, no. 1, pp. 21–43, 2014. [Online]. Available: http://dx.doi.org/10.1007/s00450-010-0136-y

[3] A. Sangiovanni-Vincentelli and M. Di Natale, “Embedded system design for automotive ap-plications,” IEEE Computer, vol. 40, no. 10, pp. 42–51, 2007.

[4] D. C. Schmidt, “Model-driven engineering,” COMPUTER-IEEE COMPUTER SOCIETY-, vol. 39, no. 2, p. 25, 2006.

[5] J. B´ezivin, “In search of a basic principle for model driven engineering,” Novatica Journal, Special Issue, vol. 5, no. 2, pp. 21–24, 2004.

[6] F. Fondement and R. Silaghi, “Defining model driven engineering processes,” in Third Inter-national Workshop in Software Model Engineering (WiSME), held at the 7th InterInter-national Conference on the Unified Modeling Language (UML). Citeseer, 2004.

[7] P. Cuenot, D. Chen, S. Gerard, H. Lonn, M.-O. Reiser, D. Servat, C.-J. Sjostedt, R. T. Kolagari, M. Torngren, and M. Weber, “Managing complexity of automotive electronics using the east-adl,” in Engineering Complex Computer Systems, 2007. 12th IEEE International Conference on. IEEE, 2007, pp. 353–358.

[8] K. Hanninen, J. Maki-Turja, M. Nolin, M. Lindberg, J. Lundback, and K.-L. Lundback, “The rubus component model for resource constrained real-time systems,” in Industrial Embedded Systems, 2008. SIES 2008. International Symposium on. IEEE, 2008, pp. 177–183.

[9] S. F¨urst, J. M¨ossinger, S. Bunzel, T. Weber, F. Kirschke-Biller, P. Heitk¨amper, G. Kinke-lin, K. Nishikawa, and K. Lange, “Autosar–a worldwide standard is on the road,” in 14th International VDI Congress Electronic Systems for Vehicles, Baden-Baden, vol. 62, 2009. [10] B. Kitchenham, P. Brereton, and D. Budgen, “The educational value of mapping studies

of software engineering literature,” in Proceedings of the 32Nd ACM/IEEE International Conference on Software Engineering - Volume 1, ser. ICSE ’10. New York, NY, USA: ACM, 2010, pp. 589–598. [Online]. Available: http://doi.acm.org.ep.bib.mdh.se/10.1145/1806799. 1806887

[11] M. Kuhrmann, D. M. Fern´andez, and M. Tiessler, “A mapping study on method engineering: First results,” in Proceedings of the 17th International Conference on Evaluation and Assessment in Software Engineering, ser. EASE ’13. New York, NY, USA: ACM, 2013, pp. 165–170. [Online]. Available: http://doi.acm.org.ep.bib.mdh.se/10.1145/2460999.2461023

[12] D. Budgen, M. Turner, P. Brereton, and B. Kitchenham, “Using mapping studies in software engineering,” in Proceedings of PPIG, vol. 8. Lancaster University, 2008, pp. 195–204. [13] A. Seriai, O. Benomar, B. Cerat, and H. Sharaoui, “Validation of software visualization

tools: A systematic mapping study,” in Software Visualization (VISSOFT), 2014 Second IEEE Working Conference on. IEEE, 2014, pp. 60–69.

[14] K. Petersen, R. Feldt, S. Mujtaba, and M. Mattsson, “Systematic mapping studies in soft-ware engineering,” in 12th international conference on evaluation and assessment in softsoft-ware engineering, vol. 17, no. 1. sn, 2008.

[15] P. Brereton, B. A. Kitchenham, D. Budgen, M. Turner, and M. Khalil, “Lessons from applying the systematic literature review process within the software engineering domain,” Journal of systems and software, vol. 80, no. 4, pp. 571–583, 2007.

(22)

[16] J. B´ezivin, “On the unification power of models,” Software and systems modeling, vol. 4, no. 2, pp. 171–188, 2005.

[17] E. Miller, “An introduction to the resource description framework,” Bulletin of the American Society for Information Science and Technology, vol. 25, no. 1, pp. 15–19, 1998.

[18] J. O. Borchers, “A pattern approach to interaction design,” Ai & Society, vol. 15, no. 4, pp. 359–376, 2001.

(23)

Appendix A

Search Strings

A.1

Search String 1

ACM. +(”embedded systems” embedded-systems) +(multicore multi-core ”multi core”) +(vehic-ular vehicle automotive) +(issue issues problem problems challenge challenges)

IEEE Xplore.(”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (automotive OR vehicular OR vehicle) AND (issue OR issues OR problem OR problems OR challenge OR challenges)

SpringerLink. (”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (automotive OR vehicular OR vehicle) AND (issue OR issues OR problem OR problems OR challenge OR challenges)

Scopus. (”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (automotive OR vehicular OR vehicle) AND (issue OR issues OR problem OR problems OR challenge OR challenges)

Word of Science. (TS=(((embedded systems) OR (embedded-systems)) AND ((multi-core) OR (multi core) OR (multicore)) AND ((automotive) OR (vehicular) OR (vehicle)) AND ((issue) OR (issues) OR (problem) OR (problems) OR (challenge) OR (challenges))))

A.2

Search String 2

ACM. +(modelling modeling model-based ”model based” model-driven ”model driven”) +(”em-bedded systems” em+(”em-bedded-systems) +(multicore multi-core ”multi core”) +(vehicular vehicle automotive) +(issue issues problem problems challenge challenges)

IEEE Xplore. (”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (issue OR issues OR problem OR problems OR challenge OR challenges) AND (modelling OR modeling OR model-based OR model-driven OR ”model driven” OR ”model based”)

SpringerLink. (”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (automotive OR vehicular OR vehicle) AND (issue OR issues OR problem OR problems OR challenge OR challenges) AND (modelling OR modeling OR model-based OR model-driven OR ”model driven” OR ”model based”)

Scopus. (”embedded systems” OR embedded-systems) AND (multi-core OR ”multi core” OR multicore) AND (automotive OR vehicular OR vehicle) AND (issue OR issues OR problem OR problems OR challenge OR challenges) AND (modelling OR modeling OR based OR model-driven OR ”model model-driven” OR ”model based”)

Word of Science. (TS=( ((embedded systems) OR (embedded-systems)) AND ((multi-core) OR (multi core) OR (multicore)) AND ((automotive) OR (vehicular) OR (vehicle)) AND ((modelling) OR (modeling) OR (model-based) OR (model-driven) OR (model driven) OR (model based)) AND ((issue) OR (issues) OR (problem) OR (problems) OR (challenge) OR (challenges))))

(24)

Appendix B

Bibliography of Short-listed Search Results

Number Reference

1 G. Macher, A. H¨oller, E. Armengaud, and C. Kreiner, ”Pattern Catalog for MultiCore Migration of Embedded Automotive Systems,” in Processdings of the 20th European Conference on Pattern Languages of Programs. ACM, 2015, p. 24. 2 J. Kienberger, C. Saad, S. Kuntz, and B. Bauer, ”Efficient Parallelization of

Complex Automotive Systems,” in Proceedings of the 7th International Workshop on Programming Models and Applications for Multicores and Manycores. ACM, 2016, pp. 40-49.

4 S. E. Saidi, S. Cotard, K. Chaaban, and K. Marteil, ”An ILP Approach for Mapping AUTOSAR Runnables on Multi-core Architectures,” in Proceedings of the 2015 Workshop on Rapid Simulation and Performance Evaluation: Methods and Tools. ACM, 2015, p. 6.

5 J. Rho, T. Azumi, H. Oyama, K. Sato, and N. Nishio, ”Distributed Processing for Automotive Data Stream Management System on Mixed Single- and Multi-core,” Processors ACM SIGBED Review, vol. 13, no. 3, pp. 15-22, 2016.

9 L. C. Cordeiro and E. B. de Lima Filho, ”SMT-based Context-Bounded Model Checking for Embedded Systems: Challenges and Future Trends,” ACM SIGSOFT Software Engineering Notes, vol. 41, no. 3, pp. 1-6, 2016. 13 M. Paolieri, E. Qui˜nones, F. J. Cazorla, G. Bernat, and M. Valero,

”Hardware Support for WCET Analysis of Hard Real-Time Multicore Systems,” ACM SIGARCH Computer Architecture News, vol. 37, no. 3, pp. 57-68, 2009. 15 G. Macher and C. Kreiner, ”Model Transformation and Synchronization Process

Patterns”, in Proceedings of the 20th European Conference on Pattern Languages of Programs. ACM, 2015, p. 25.

18 F. Kluge, C. Yu, J. Mische, S. Uhrig, and T, Ungerer, ”Implementing AUTOSAR Scheduling and Resource Management on an Embedded SMT Processor,” in Proceedings of the 12th International Workshop on Software and Compilers for Embedded Systems. ACM, 2009, pp. 33-42.

26 C. Herber, A. Richter, H. Rauchfuss, and A. Herkersdorf, ”Spatial and Temporal Isolation of Virtual CAN Controllers,” ACM SIGBED Review, vol. 11, no. 2, pp. 19-26. 2014.

29 S. Kehr, E. Qui˜nones, B. B¨oddeker, Bert and G. Sch¨afer, ”Parallel

Execution of AUTOSAR Legacy Applications on Multicore ECUs with Timed Implicit Communication,” in Proceedings of the 52nd Annual Design

Automation Conference. ACM, 2015, p. 42.

38 J. Kim, H. Kim, K. Lakshmanan, and R. R. Rakjumar, ”Parallel Scheduling for Cyber-Physical Systems: Analysis and Case Study on a Self-Driving Car,” in Proceedings of the ACM/IEEE 4th International Conference on Cyber-Physical Systems. ACM, 2013 pp. 31-40.

70 T. Ungerer, C. Bradatsch, M. Frieb, F. Klugem J. Mische, A. Stegmeier, R. Jahr, M. Gerdes, P. Zaykov, L. Matusova et al., ”Parallelizing

Industrial Hard Real-Time Applications for the parMERASA Multicore,” ACM Transactions on Embedded Computing Systems (TECS), vol. 15, no. 3, p. 53, 2016.

598 M. Urbina, H. Ahmadian, and R. Obermaisser, ”Co-simulation Framework for AUTOSAR Multi-Core Processors with Message-based Network-on-Chips,” in Industrial Informatics (INDIN), 2016 IEEE 14th International Conference on. IEEE, pp. 1140-1147.

600 A. Goens, R. Khasanov, J. Castrillon, S. Polstra, and A. Pimentel, ”Why Comparing System-level MPSoC Mapping Approaches is Difficult: a Case Study,” in Embedded Multicore/Many-core Systems-on-Chip (MCSoC), 2016 IEEE 10th International Symposium on. IEEE, 2016, pp. 281-288.

(25)

Scheduling in Multi-Core Systems with Shared Resources,” in Industrial

Embedded Systems (SIES), 2012 7th IEEE International Symposium on. IEEE, 2012, pp. 191-200.

607 H. Mushtaq, Z. Al-Ars, and K. Bertels, ”Accurate and Efficient Identification of Worst-Case Execution Time for Multicore Processors: A Survey,” in Design and Test Symposium (IDT), 2013 8th International. IEEE, 2013, pp. 1-6. 608 N. Hehenkamp, R. van Wagensveld, D. Schoenwetter, C. Facchi, U. Margull, D.

Fey, and R. Mader, ”How to Speed up Embedded Multi-core Systems Using Locality Conscious Array Distribution for Loop Parallelization,” in ARCS 2016; 29th International Conference on Architecture of Computing Systems; Proceedings of. VDE, 2016, pp. 1-5.

612 G. Macher, A. H¨oller, E. Armenguad, and C. Kreiner, ”Automotive Embedded Software: Migration Challenges to Multi-Core Computing Platforms,” in 2015 IEEE 13th International Conference on Industrial Informatics (INDIN). IEEE, 2015, pp. 1386-1393.

615 H. R. Faragardi, B. Lisper, and T. Nolte, ”Towards a Communication-efficient Mapping of AUTOSAR Runnables on Multi-cores,” in Emerging Technologies & Factory Automation (ETFA), 2013 IEEE 18th Conference on. IEEE, 2013, pp. 1-5.

617 H. R. Faragardi, B. Lisper, K. Sand¨om, and T. Nolte, ”An Efficient Scheduling of AUTOSAR Runnables to Minimize Communication Cost in Multi-core Systems,” in Telecommunications (IST), 2014 7th International Symposium on. IEEE, 2014. pp. 41-48.

619 P. Gai and M. Violante, ”Automotive Embedded Software Architecture in the Multi-core Age,” in Test Symposium (ETS), 2016 21st IEEE European. IEEE, 2016, pp. 1-8.

621 A. Kanduri, A.-M. Rahmani, P. Liljeberg, K. Wan, K. L. Man, and J. Plosila, ”A Multi-core Approach to Model-Based Analysis and Design of Cyber-Physical Systems,” in SoC Design Conference (ISOCC), 2013 International. IEEE, 2013, pp. 278-281.

622 A. Sailer, S. Schmidhuber, M. Deubzer, M. Alfranseder, M. Mucha, and J. Mottok, ”Optimizing the Task Allocation Step for Multi-Core Processors within AUTOSAR,” in Applied Electronics (AE), 2013 International Conference on. IEEE, 2013, pp. 1-6.

627 M. Lowinski, D. Ziegenbein, and S. Glesner, ”Splitting Tasks for Migrating Real-Time Automotive Applications to Multi-Core ECUs,” in Industrial Embedded Systems (SIES), 2016 11th IEEE Symposium on. IEEE, 2016, pp. 1-8.

628 S. Kerrison, D. May, and K. Eder, ”A Benes Based NoC Switching Architecture for Mixed Criticality Embedded Systems,” in Embedded Multicore/Many-core Systems-on-Chip (MCSoC), 2016 IEEE 10th International Symposium on. IEEE, 2016, pp. 125-132.

630 R. Wilhelm, D. Grund, J. Reineke, M. Schlickling, M. Pister, and C. Ferdinand, ”Memory Hierarchies, Pipelines, and Buses for Future Architectures in Time-Critical Embedded Systems,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 28, no. 7, pp. 966-978, 2009.

631 A. Knirsch, P. Schnarz, and J. Wietzke, ”Prioritized Access Arbitration to Shared Resources on Integrated Software Systems in Multicore Environments,” in Networked Embedded Systems for Every Application (NESEA), 2012 IEEE 3rd International Conference on. IEEE, 2012, pp. 1-8. 632 M. Hammond, G. Qu, and O. A. Rawashdeh, ”Deploying and Scheduling Vision

Based Advanced Driver Assistance Systems (ADAS) on Heterogeneous Multicore Embedded Platform,” in Frontier of Computer Science and Technology (FCST), 2015 Ninth International Conference on. IEEE,

(26)

2015, pp. 172-177.

633 M. Mody, P. Swami, K. Chitnis, S. Jagannathan, K. Desappan, A. Jain, D. Poddar, Z. Nikolic, P. Viswanath, M. Mathew et al., ”High

Performance Front Camera ADAS Applications on TI’s TDA3X Platform,” in High Performance Computing (HiPC), 2015 IEEE 22nd International Conference on. IEEE, 2015, pp. 456-463.

634 N. Iqbal and J. Henkel, ”SETS: Stochastic Execution Time Scheduling for Multicore Systems by Joint State Space and Monte Carlo,” in

Computer-Aided Design (ICCAD), 2010 IEEE/ACM International Conference on. IEEE, 2015, pp. 456-463.

635 C. E. Mor´on, A. Ideguchi, M. M. Fernandes, and A. D. Malony, ”From MultiTask to MultiCore: Design and Implementation Using an RTOS,” in Parallel and Distributed Computing (ISPDC), 2014 IEEE 13th International Symposium on. IEEE, 2014, pp. 111-118.

779 S. Mubeen, T. Nolte, and K.-L. Lundb¨ack, ”Developing Predictable Vehicular Distributed Embedded Systems on Multi-core,” in Information Technology: New Generations. Springer, 2016, pp. 1273-1277.

780 L. Krawczyk, C. Wolff, and D. Fruhner, ”Automated Distribution of Software to Multi-core Dardware in Model Based Embedded Systems Development,” in International Conference on Information and Software Technologies. Springer, 2015, pp. 320-329.

821 G. Macher, M. Stolz, E. Armengaud, and C. Kreiner, ”Filling the Gap between Automotive Systems, Safety, and Software Engineering,” e & i Elektrotechnik und Informationstechnik, vol. 132, no. 3, pp. 142-148, 2015.

1769 C. El Salloum, M. Elshuber, O. H¨oftberger, H. Isakovic, and

A. Wasicek, ”The ACROSS MPSoC - A New Generation of Multi-core Processors Designed for Safety-critical Embedded Systems,”

Microprocessors and Microsystems, vol. 37, no. 8, pp. 1020-1032, 2013. 1786 A. Bucaioni, ”Early Timing Analysis of Vehicular Systems: The Road from

Single-core to Multi-core,” in Doctoral Symposium at ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, DS@ MODELS, 02 Sep 2016, Saint-Malo, France, 2016.

1787 G. Macher, ”Seamless Model-Based Safety Engineering from Requirement to Implementation.” in DocSymp@ MoDELS, 2014.

Figure

Figure 1: Research method
Figure 2: Search and selection process
Figure 3: Distribution of publications by year and type
Figure 4 describes the distribution of the identified challenges. Please note that, each study was classified with respect to one or more challenges
+4

References

Related documents

While survey respondents reported mostly positive e↵ects of Model- Based Engineering, the data also suggests some common and major challenges for MBE that need further attention.

Having determined if VC nodes have sufficient processing power, (iii) we consider the overall system performance with respect to transportation safety and (iv)

Offline, we solve optimally the combined supply voltage and body bias selection problem for multiprocessor systems with imposed time constraints, explicitly taking into account

De rekommenderar fysisk aktivitet som enskild behandlingsmetod vid mild till måttlig depression och som komplement till traditionell behandling (antidepressiv

SA, som hade kallats in för att ge go- da råd och nu ville lätta upp stäm- ningen, började berätta en historia om hur Tage Erlander en gång hade tvingats lägga ner

Supplementary Material for “Bobrovsky-Zakai Bound for Filtering, Prediction and Smoo- thing of Nonlinear Dynamic

Algorithms presented in this thesis use data freshness in the value domain by using similarity relations which have the effect of making data items to become discrete since the value

Several techniques are presented in this thesis for designing secure RTESs, including hardware/software co-design techniques for communication confidentiality on