Preview

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

2020-01-5007 Published 27 Mar 2020

Standard Process for Establishment of ECU


Virtualization as Integral Part of Automotive

n
Software Development Life-Cycle

tio
Ritesh Goyal KPIT, India

Kushal K. S and Pratik Mistry KPIT Technologies Limited, India

ibu
Citation: Goyal, R., Kushal, K.S., and Mistry, P., “Standard Process for Establishment of ECU Virtualization as Integral Part of Automotive
Software Development Life-Cycle,” SAE Technical Paper 2020-01-5007, 2020, doi:10.4271/2020-01-5007.

s tr
Abstract
implementation of ECU virtualization is also presented. On

I
n recent year, Electronic Control Unit (ECU) virtualization the foundation of modified SDLC V-cycle, a standard process
is being promoted for development and validation of auto- flow is created to establish ECU virtualization as integral part

Di
motive software. ECU virtualization allows execution of of software development in agile methodology.
integrated software on developer’s computer, enabling faster We have implemented the discussed process with diversi-
algorithm testing. However, the challenge remains to establish fied tool chains on various automotive controller i.e. TCM,
a process to be followed at organization level and its integra- ECM, BMS etc. The process is accomplished, and the benefits
tion in the existing development process/es.
In this paper, an approach for integration of Virtual ECU
(V-ECU) in Software Development Life-Cycle (SDLC) is
discussed. The rationale of merging ECU virtualization in
for of ECU virtualization are accumulated by algorithm develop-
ment and testing team. A case study of Battery Management
System (BMS) application is presented in this paper, using
dSPACE tool suite. A sprint plan is also presented to highlight
standard SDLC V-cycle supplements milestones in testing & implementation of ECU virtualization and uses of system by
ot
validation. Addition of this milestone with the various stake holders.
-N

I. Introduction
FIGURE 1 Traditional SDLC V-cycle
ly

The expedite feature of evaluating the software components


developed independent of the hardware platforms or proto-
types, is that these software components can be tested and
On

validated with the virtual control units, individually. The


virtual environment provides a platform to test and validate
these software components, in terms of their behavior and
functionalities, with agile methodologies. The need to curtail
the time for evolution of software and cost with an improve-
iew

ment in its quality, is driving the need to ratify virtualization


and virtual validation processes. For automotive ECUs, the
software development process follows a quintessential SDLC
V-cycle, as shown in Figure 1. With the challenges being posed
in the process definition, adherence and acceptance of the
ev

process for development and testing of the virtual platform,


the growing needs to faster development cycles push for the
© SAE International.

fundamental process definition and its integration in the


Pr

existing development process/es.


For an automotive application, the complex embedded
software is being developed by different domain specific func-
tional units. The development of these software components
by functional units adhering to the traditional SDLC V-cycle algorithm software unit responsible of developing, managing
are to be integrated and tested for their behavior. Similarly and testing the algorithm software components of an ECU
individual components of an ECU are tested upon integration. for a vehicle, requires a solitary process, platform and meth-
While testing of these various components may require odology to enable the reuse of software development and test
different testing and integration platforms. Specifically, the the software component. This process of capturing the
2 STANDARD PROCESS FOR ESTABLISHMENT OF ECU VIRTUALIZATION

defective/erroneous behavior of the algorithm software, a core in virtualization, with the AUTOSAR initiative allows the
component defining the behavior of the vehicle, in the early reuse of software and opportunity to develop and test the ECU
stages of SDLC V-cycle development process is required. This software before its typical use. Virtualization techniques
requires a sophisticated abstraction in the physical environ- supports seamless transition from the need of physical

n
ment to handle the complete functionality of a test-bench/ hardware to augmented reality that mimics the physical
vehicle and capture the behavior of various software compo- hardware. Figure 2 symbolize that a software developed to

tio
nents of an algorithm software. With the accelerating requests run on a Microcontroller can be executed on windows PC and
of such requirements, a prominent know-how called enables the concept of V-ECU. The concept of V-ECU is to
Virtualization was abstracted. compile production code to execute on Windows/Linux envi-

ibu
Virtualization is an augmented reality that enables ronment and enable the verification of software integration,
various functional domains to integrate various software feature behaviour etc. in PC environment.
components onto a single platform, independent of the under- Katyal et al. [1] proposed the methodology to enable the
lying hardware and basic software components. The virtual- modeling of systems based on its functionality and implement
ization techniques have the capabilities of defining the appli- the model as per their selected mechanisms. Thus modeled

s tr
cation software for a vehicle, integrate either complete or systems were executed and analyzed for data statistics and
partial components, hardware feature support or different compared against the system specifications. This has enabled
functional domains brought onto a single platform. The them to have accurate design decisions at an early stage of
process definition and adaptation, integration of the virtual- development process. This was very much in simultaneity with

Di
ization process with the existing SDLC V-cycle has been the the traditional SDLC V-cycle.
major focus and key highlighted presented in this paper. The consolidation of sophisticated ECUs handling various
This paper focuses on coupling the virtualization tech- features adds an additional overhead and complexity to
niques in the traditional SDLC V-cycle. The merging process software development and testing process. With each ECU
involves various key activities at different phases within
V-cycle. This envisions major appraisals for the development
and testing of application software. Also the key factors that
impact and play a major role, at the organization level, with
for
accommodated with its own infrastructure and requirements
with regards to functionality and behavior, poses the need for
multiple platforms and toolsets for development and testing.
From among the array of development and testing toolsets
the linking of virtualization techniques are evaluated. The and approaches, further complicating, the obligation for virtu-
ot
metrics generated are compared with the traditional meth- alization techniques is considered [2]. The virtualization of
odologies and their offset and effects are analyzed and few software provides means of re-configuration and scaling.
other factors are exclaimed in this paper. The combination of hardware and software virtualization
-N

This paper is organized as follows; Section II providing mechanisms, to provide a maximum on flexibility and effi-
an overview and a detailed literature study on the virtualiza- ciency was proposed by Pelzl et al. [3]. This methodology offers
tion techniques and the process followed in virtualization. a great zeal of considering the increased safety and more
Section III introduces to the developmental workflow of secure application software for vehicles.
augmented methodology. Section IV helps in substantiating While the effort involved in testing the software across
ly

the proposed workflow and process using a case-study (viz. varying software simulation platforms must be minimized.
Battery Management System (BMS) V-ECU). Section V This inquires the simulation platforms to be reusable and
discuss proposed development cycle with benefits of agile portable across domains and users. A unified platform is
On

development methodologies, Section VI provides improve- necessary across the development phases in the traditional
ment matrix from the case study. Section VII details the limi- SDLC V-cycle to enable early detection if errors and capture
tations of method and highlight areas for future enhancement. them for analysis. This being an imperative factor along with
Section VIII provide mechanism to for seamless switch the short turn-around time during execution cycles with a
between virtual and physical environment for validation. At significant time-to-market process was duly highlighted by
iew

the end, Section IX gives a conclusive note for the method- Srinivas et al. [4].
ology and the purview of the methodology it can be expressed
into, for further analytical procedures.

FIGURE 2 Symbolic Representation of a V-ECU


ev

II. Literature Survey


Pr

With the increasing complexity of software, next generation


car manufacturers and their suppliers are confronted with the
need to develop models of the electrical and physical parts of
the car at different levels of abstraction. The phases involved
in the development of the algorithm software augmented by
© SAE International.

virtualization offers a virtual Hardware in the Loop (vHiL)


solution, which allows simulation of the ECU and coupling it
with external simulators. This scenario waives the need for
elemental hardware requirement. The abstraction of hardware
 STANDARD PROCESS FOR ESTABLISHMENT OF ECU VIRTUALIZATION 3

Majority of the factors involved during integration valida- Preubig has summarized various practices of agile scrum
tion with components from different origins, upon integration methods in [12]. The methods have been used in software
has to be validated for their functionalities. Key aspects like development industry for long and now being adopted in auto-
timings, sampling time, execution order, delays etc. are to motive software industry. Some of these practices have been

n
be considered within integrated control systems. With their used in current project execution as highlighted in case study
analysis and the evaluation of their impact on the life-span of in later sections.

tio
the vehicle has to be identified. This might call for a re-design Critical assessment with integration, validation and test
of the existing functionality and update a software component of all the software components on the developers’ PC using
in meeting the standards, needs to be tested aligned to the the virtualization techniques provides viability in capturing

ibu
process, for integrity. This was proposed by Coelingh et al. [5]. the errors of the software components during the early stages
With the virtualization techniques gaining immense in the development process. The developers would able to
popularity and significant support Gernot Heiser et al. [6] assess the behavior of the software components. The need for
gives an in-depth overview of the virtualization techniques. the process integration, with virtualization techniques, with
The benefits of the virtualization in embedded systems and the ever growing complexities of the number of sensors and

s tr
how the environment allows the software to run on a bare ECUs, it is further possible to shorten testing stages and
hardware benefits the process is essayed in their proposal. significantly reduce the number of dependencies on proto-
Virtualization techniques allows the simulation of the types. The extension capabilities of these techniques inte-
ECUs on the developers’ PC either in the closed-loop (with grated with the traditional SDLC V-cycle at the organizational

Di
Plant model - high-fidelity models) or in open-loop, in order level yields the milestone in testing & validation processes.
to speed up the development process. The motivating factor
is that the various runnable corresponding to different
software components could be integrated using virtualization
III. ECU Virtualization
techniques. The model-based approaches in MATLAB/
Simulink, virtualization techniques and the application
benefits aided in proposal by Yohan Jordan et al. [7].
The parallel process of development, calibrating and
for & Its Evolution
testing the software components of an ECU, aids in a secure The technique which isolates the necessity of the bare hardware
ot
simulation based validations and use physical data measure- and aids in the integration, development and testing of the
ment data for calibration and simulate along with the high- application software components, largely, reciprocates to
fidelity models pays-off through reduction in costs, time and virtualization. Though, software components are derived from
-N

failure rates. Virtualization helps in timely-integration of various model-based tools like Simulink, IBM Rhapsody, etc.,
the software components from variant suppliers in the form are represented by the analogy of AUTOSAR architectures.
of prototypical simulation models. The ease of integration These software components majorly would be part of the algo-
and increase the number of software components, and rithms/applications for a specific vehicle. The virtualization
exchange of this platform gives a major push towards virtu- techniques aided by the sophisticated tools (like Qtronic
ly

alization techniques. These techniques can be seamlessly Silver, dSPACE VEOS, AVL Model.Connect, etc.) helps in
integrated into the existing development processes and envi- defining the layers of software in coherence with the
ronments [8]. AUTOSAR architecture and define their behavior. There are
On

Virtualization techniques provides a model of real ECUs. some major benefits be fitted with the adaptation of virtualiza-
This enables the properties of real ECU visible that can be used tion techniques, some of them being;
during the simulation on developers PC. This provides key 1. Reduce Dependency: With barely any hardware
features like; resource required to perform testing, typical HIL
dependency is eliminated. The virtual platform/
iew

1. Zero time execution with all the tasks running


environment would be with every developer/engineer
exactly as scheduled.
to test the developed software component. This would
2. Identify the missing basic software and also allow the developer as well as the test engineer to
its dependency test the AUTOSAR application layer/ multiple
3. Identification of defects of application software early software components/ single software component,
ev

in the development phase. individually.


4. Module development in system context 2. Improved Productivity: This aids in improved
productivity by capturing the errors and defunct
Pr

The methodology was established for Renault with a behavior of the components early in the development
framework to develop engine control software for Diesel and phase. The capture of anomalies improves
Gasoline engines [9]. the throughput.
Katumba et al. [11] summarized the applicability of agile 3. Reusability: Aids in the integration of high-fidelity
methodology in Automotive Software development process. plant models, between HIL and virtual environment.
Here, the agile practices are mapped to mitigate the challenges The developed virtual environment can be exchanged
faced during automotive development cycle. The challenge through IP, thus ensuring a safe and integrated
remains to validate an implementation in the same sprint if exchange of the information between the
validation supposed to happen on HIL. development teams.
4 STANDARD PROCESS FOR ESTABLISHMENT OF ECU VIRTUALIZATION

4. Improved Quality: Rapid prototyping to test new architecture design, software design and implementation of
features. Auto-calibration modules can be tested in the software components with the emphasis on unit testing
offline modes. Multi-ECU/multi-core ECU with and software integration testing, post the success of module
virtualization of application software and testing for the software component/s. Modified SDLC V-cycle

n
components of BSW (like CAN, LIN, Flex Ray) can allows timely flow from development to testing phases,
be virtualized. through V-ECU implementation. The component vECU

tio
composition aids in Unit & Coverage testing, while the devel-
With the reformed process definition and integration of opment of individual software components is in the process
the virtualization techniques in the traditional SDLC V-cycle, of continual development process. System architecture along
there happens to be a rise in the need to have the process

ibu
with their implementation and system V-ECU implementation
modified. The modified SDLC V-cycle, very much, considers aids in Integration & Functionality testing. The system
the aspects of virtualization streamlined across different requirements can be captured with high-fidelity Plant models.
phases that corresponds to the various development and Integration of this high-fidelity model with the V-ECU imple-
testing phases in a traditional SDLC V-cycle, as shown in mentation emphasizes the key features to be tested along with

s tr
Figure 3. The ECU being the core component in a vehicle and the functionality testing.
place holder for various critical algorithms. Various applica- The functionality of the software components part of the
tion software components are placed in an ECU. V-ECU implementation can also be tested, with the software
The modified SDLC V-cycle benefits the development component tested for its behavior providing suitable stimuli

Di
process with features; by means of harness model integrated with the V-ECU. This
kind of testing is very much suitable for the application service
i. Faster development turn-around
layer in AUTOSAR. While the sophisticated basic software
ii. Continuous integration capabilities could be configured or by-passed with the V-ECU implemen-
iii.
iv.
v.
Common environment for developer and test engineer
Reduce the dependency on hardware
Algorithm development
for
tation integrated with the Plant models allowing the testing
of features set of software components integrated. This would
be in conformance with the system requirements. The process
corresponds to the Requirements-Based testing with the
It can be seen in Figure 3, that with the virtualization P­ass-Fail analysis. Testing phases can be performed with the
ot
techniques the SDLC V-cycle also focuses on the ECU virtu- Plant model in Close-Loop or without the Plant model in
alization that is composed of the software architecture design, Open-Loop. With emergence of Functional Mock-up
software module design, implementation and software code. Interfaces (FMI) [10], It’s easier to exchange plant model
-N

The V-ECU implementation encapsulates the software between development tools. FMI models, often call FMU

FIGURE 3 Modified SDLC V-cycle with ECU Virtualization


ly
On
iew
ev
Pr

© SAE International.
 STANDARD PROCESS FOR ESTABLISHMENT OF ECU VIRTUALIZATION 5

(Functional Mock-up units) can easily be integrated with modifications (stub or inclusion) to enable the
V-ECU, hence enabling reuse of plant models from various creation and build of V-ECU implementations.
tools for close loop testing. The high-level overview of Open- iv. Check for system dependencies that needs to
Loop testing is as shown in Figure 4. be addressed during integration of V-ECU & test

n
The phases in Open-Loop can be differentiated as; harness. Identify and stream-lining of standard test
profiles used to perform Back-to-Back testing.

tio
i. Preparatory Phase: Compatible & available tool Definition of a standard test process.
selection. Import the software component ARXMLs
in defining the software component architecture. The process for Open-Loop V-ECU implementation and
Validate the architecture of the software components. testing is in relation with the traditional SDLC V-cycle, but with

ibu
ii. Foundation Development Phase: Configuration of additional activities that needs to be performed to keep the
protocols like CAN/LIN/Flex Ray. Generation of RTE process of V-ECU with virtualization techniques in sync with it.
& creation of V-ECU instance. The extended version of the Open-Loop testing is Closed-
iii. Integration Phase: Defining the behavior of the Loop testing. In addition to steps as in Open-Loop testing,

s tr
software components by means of importing the Closed-Loop testing also includes steps for plant model prepa-
software component code. Importing the common ration and integration with V-ECU. The process phases remain
shared utilities as part of V-ECU instance. same, however there are additional steps at each phase. The
iv. Execution Phase: Creation of test harness for the high-level overview of the additional steps in Close-Loop

Di
provision of stimuli to the V-ECU instance. Creation testing is as shown in Figure 5.
of simulation environment, that corresponds to the This involves the integration of high-fidelity Plant models
virtual environment. Measurement and recording modeled using model-based tools like Simulink or from third
for analysis. party physics modelling tool, as FMU. This kind of simulation

The process is well-defined for deployment, which includes;

i. Cleaning the system architecture from redundancies.


Also, handle the V-ECU related software component
for
yields more realistic and intensive results that corresponds to
the behavior of the system with the software components
integrated, in real-world. The phases in the Closed-Loop can
be differentiated as;
specific i. Preparatory Phase: Execution of the Plant model in
ot
architecture changes, without disturbing the virtual environment is performed. Definition and
the environment. execution of the test profiles for V-ECU & Plant
ii. While configuring the communication services like models. Integration of V-ECU & Plant model (in case
-N

CAN/LIN/Flex Ray, incorporate dbc (Database) of Close-Loop) by means of interfaces. (FMI in-case
importing specific processes. Maintain the execution of FMU for Plant model)
priorities for each runnable corresponding to ii. Foundation Development Phase: This phase is more
individual software component or multiple software correlated to the V-ECU implementations &
components. Generation of V-ECU specific RTE and development of Plant models. Verifying the data-
ly

handle changes related to the same. types of the interfaces, its resolution and units
iii. Handle the software dependencies for the software associated to each data element. Development of the
components. Need to handle the hand-code Plant model with the necessary fidelities included as
On

part of the Plant model.

FIGURE 4 High-Level Overview of Open-Loop Testing


iew
ev
Pr © SAE International.

You might also like