17
FULL VIRTUALIZATION OF RENAULT'S ENGINE MANAGEMENT SOFTWARE APPLICATION TO SYSTEM DEVELOPMENT D. von Wissel , Y. Jordan,, RENAULT A. Dolha, J. Mauss QTronic

FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

FULL VIRTUALIZATION OF

RENAULT'S ENGINE MANAGEMENT SOFTWARE

APPLICATION TO SYSTEM DEVELOPMENT

D. von Wissel, Y. Jordan,, RENAULT

A. Dolha, J. Mauss QTronic

Page 2: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 2018

2009-01-1082

2

Introduction

V. ConclusionsIV. ApplicationsIII. Related WorkII. VirtualizationI.Motivation

QTronic Renault SAS

Renault has an established engine control SW development framework

▪ Field of application: Passenger Veh. & Light Duty Veh. with Diesel & Gasoline engines

▪ Framework is heavily based on Matlab / Simulink and the idea of MBD

Renault EMS architecture SW is composed out of

▪ 20 functions (ex. Air System, Combustion, …)

▪ A function consists of modules which are the smallest testable SW unit

▪ A module contains runnuables triggered by the Operating System (OS)

Page 3: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 2018QTronic Renault SAS 3

6.Validation

and test of all

modules on

system level

using the real

ECU

build for standard EMS library

EMS C code library

HIL testing

function validation and test

feedback fordevelopers

platform integration

function validation and test

software integration

test

Project C code

.hex

configurationfor target CPU

feedback for software project team

Software Project Team weeks

flash

modul MiL

.mdl.m

modulvalidation and test

modulvalidation and test

modul SiL

Unit testing

C code

Function Developers

code generation

1.Specification of

about 200 generic

configurable modules

per ECU using

MATLAB / Simulink.

2.Generation of C code (EMS

application software) from all

module specifications

3.MiL test and

validation

4.Configuration of modules

to fit to the specific needs

of a software project,.

5.Integration of

generated

configured

C code on

supplied target

hardware,

V. ConclusionsIV. ApplicationsIII. Related WorkII. VirtualizationI.Motivation

SW development framework at Renault

Page 4: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 2018QTronic Renault SAS 4

build for standard EMS library

EMS C code library

HIL testing

function validation and test

feedback fordevelopers

platform integration

function validation and test

software integration

test

Project C code

.hex

configurationfor target CPU

feedback for software project team

Software Project Team weeks

flash

modul MiL

.mdl.m

modulvalidation and test

modulvalidation and test

modul SiL

Unit testing

C code

Function Developers

code generation

Critical assessment of the development framework► There is considerable delay between delivery of a set of specs to SW project team and

system-level tests based on an ECU that runs entire SW.

V. ConclusionsIV. ApplicationsIII. Related WorkII. VirtualizationI.Motivation

1. 2.

3.

Assessment of SW development framework

Page 5: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 2018QTronic Renault SAS 5

build for standard EMS library

EMS C code library

HIL testing

function validation and test

feedback fordevelopers

platform integration

function validation and test

software integration

test

Project C code

.hex

configurationfor target CPU

feedback for software project team

Software Project Team weeks

flash

modul MiL

.mdl.m

modulvalidation and test

modulvalidation and test

modul SiL

Unit testing

C code

Function Developers

code generation

build vECUfor MiL

► System-level test and validation should be performed interleaved with steps 1, 2 and 3

replacing the actual MiL, SiL validation process by a full ECU validation

V. ConclusionsIV. ApplicationsIII. Related WorkI. VirtualizationMotivation

1. 2.

3.

Place of vECU in SW development framework

Page 6: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 2018

2009-01-1082

6

vECU Build Process

V. ConclusionsIV. ApplicationsIII. Related WorkI.Motivation

QTronic Renault SAS

II. Virtualization

.mdl

.m

modulewrapper

generator

Moduleinterface

data types

Calibrationdata

.mdlSimulink

Codergrt.tlc

C codebuildscript

vECU

Os specification

vECU configoptions

read at run-time

Matlab / Simulinkspecification

for all modules

wrappedmodules

Inputs▪ Consistent set of modules

▪ Dictionary with data types

of all variables

▪ Os specification.

Configuration files.

Incremental, fully automated build process.

Page 7: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 2018

2009-01-1082

7

Discussion

V. ConclusionsIV. ApplicationsIII. Related WorkI.Motivation

QTronic Renault SAS

Differences between real and virtual ECU

A vECU remains a model : not all tests that are relevant can be moved to the PC

▪ Zero-time execution: vECU behaves like a device with unlimited computing speed

▪ Missing basic software: basic software of the ECU platform is not part of the vECU

▪ Different production code: C code is close to but not fully equivalent to production code

► Many of these differences can be avoided switching to a virtual processor type vECU

Runtime performance

▪ A virtual ECU for a typical Renault EMS loads & initializes in less than 5 sec. on a Windows PC

▪ Execution speed depends on the number of outputs to be recorded during simulation

o Recording170 variables / ms, execution of the vECU is 4 times faster than real time.

o Recoding 20.000 variables / ms, execution speed is 3 times slower than real time

II. Virtualization

Page 8: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 20188

3 options to create a vECU

V. ConclusionsIV. Applications

QTronic Renault SAS

II. VirtualizationI.Motivation III. Related Work

Project C code

.hex

configurationfor target CPU

Software Project Team

flash

.mdl.m

Build vECUfor MiL

C codeFunction

Developerscode generation

vECU

ECU

Build vECUfor SiL

Build for target MCU

Build vECUfor PiL

vECU is created

from models that

generate the C code

vECU is created

from C code

compiled for PC

vECU is created

from the hex file

resulting from

compiling C code

for the target

processor

Page 9: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 20189

Chip Simulaton

V. ConclusionsIV. Applications

QTronic Renault SAS

II. VirtualizationI.Motivation III. Related Work

Project C code

.hex

configurationfor target CPU

Software Project Team

flash

.mdl.m

C codeFunction

Developerscode generation

vECU

ECU

Build for target MCU

Build vECUfor PiL

vECU is created

from the hex file

resulting from

compiling C code

for the target

processor

► Suppliers of ECU hardware and MCUs: to validate their ECU and chip designs

(need of cycle accurate platform simulator)

► OEMs that need to integrate and calibrate supplied EMS software: to run EMS SW on

PC when there is access to the hex files, but no access to the C code

However, Hex files for the target

MCU become only available weeks

after a module edit ….

Page 10: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 201810

SiL type vECU

V. ConclusionsIV. Applications

QTronic Renault SAS

II. VirtualizationI.Motivation III. Related Work

Project C code

.hex

configurationfor target CPU

Software Project Team

flash

.mdl.m

C codeFunction

Developerscode generation

vECU

ECU

Build vECUfor SiL

Build for target MCU

vECU is created

from C code

compiled for PC

► Compared to chip simulation, vECU for SiL runs typically faster and provides better

support for C level debugging, if compiled with debug option

However, production C code

generator is a shared and

limited resource here, not

easily available …

Page 11: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 201811

MiL type vECU

V. ConclusionsIV. Applications

QTronic Renault SAS

II. VirtualizationI.Motivation III. Related Work

Project C code

.hex

configurationfor target CPU

Software Project Team

flash

.mdl.m

Build vECUfor MiL

C codeFunction

Developerscode generation

vECU

ECU

Build for target MCU

vECU is created

from models that

generate the C code

► In the automotive world today dominates MBD on PC with MATLAB/Simulink

► But this does not mean that developers are typically able to simulate their ECU on PC

✓ The choice is hear to build the vECU from the module

source (Simulink .mdl files)

Page 12: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 201812

vECU Applications

V. Conclusions

QTronic Renault SAS

III. Related Work

► Definition of system requirements

Completion of environmental model by EMS

► Module development in system context

Bypassing / replacing implementation of module in vECU

► Pre calibration of the EMS ; frontload calibration related activities

► Virtual integration of modules before production C code is generated

► Move selected tests from HiL to MiL

► Vehicle-level simulation

Completion of Digital Electronic Integration PlatForm

Validate networked ECUs in vehicle context

II. VirtualizationI.Motivation IV. Applications

Page 13: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 201813

Move selected tests from HiL to MiL

V. Conclusions

QTronic Renault SAS

III. Related WorkII. VirtualizationI.Motivation IV. Applications

Advantages

✓ Frontloading of automatic tests of applicative functions

✓ 1st Software tests can be done 6 weeks early► Faster feedback to function designers

► More time to correct errors

✓ Cost of a vECU is significantly lower compared to cost of a HIL

Same plant model▪ Engine

▪ Vehicle

▪ Gearbox

▪ Driver Model

Same tests

What can be moved? ▪ Applicative SoftWare validation tests

What has to stay on HIL? • Task scheduling tests of function that

combine ASW and BSW runnables

• Task distribution between cores

Page 14: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 201814

Vehicle-level simulation : Digital Electronic Integration PlatForm

V. Conclusions

QTronic Renault SAS

III. Related WorkII. VirtualizationI.Motivation IV. Applications

DEIPFclient

DEIPFclient

DEIPFclient

DEIPFclient

(vECU+env.)

RT-Lab Orchestra API

DEIPF

✓ Check of flow coherency between all vehicles ECUs right after model design

✓ Intersystem Functional Validation including all vehicle ECUs

✓ Issues detection before physical Vehicle Integration Platform tests

► Increased time on error corrections

► Lower Cost

Page 15: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 201815

vECU Applications

V. Conclusions

QTronic Renault SAS

III. Related Work

► Definition of system requirements ; completion of environmental model by EMS

► Module dev. in system context ; bypassing / replacing implementation of

module in vECU

► Pre calibration of the EMS ; frontload calibration related activities

► Virtual integration of modules before production C code is generated

► Move selected tests from HiL to MiL

► Vehicle-level simulation ; completion of a Digital Electronic Integration PlatForm

(D-EIPF) to validate networked ECUs in vehicle context

II. VirtualizationI.Motivation IV. Applications

Page 16: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers

QTronic User conference 201816

• In 2016, Renault created the 1st fully functional virtual EMS

• Process has been repeated for about 6 releases (updates and different

platforms) of the EMS software since then

• Renault started to use virtual ECUs to frontload test and calibration

related activities

• First results of these activities have been encouraging so far

• Existing MiL-based virtual ECUs will be complemented by SiL-based virtual ECUs

IV. Conclusions

IV. ConclusionsIII. ExampleII. Interface & ToolI. IntroductionGeneral Purpose

QTronic Renault SAS

Page 17: FULL VIRTUALIZATION OF RENAULT'S ENGINE … › content › dam › synopsys › ...validation and test modul validation and test modul SiL Unit testing C code Function Developers