AUTOSAR BSW in real life: A summary of the last years - Embedded ...
AUTOSAR BSW in real life: A summary of the last years - Embedded ...
AUTOSAR BSW in real life: A summary of the last years - Embedded ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Runtime_Environment_Application_If<br />
µC _GPT<br />
Servic es_Layer_RTE_If<br />
«Usage»<br />
«Implements»<br />
«Usage»<br />
«Imple men ts»<br />
«Usage»<br />
µC_WDT<br />
µC_MCU<br />
Onboard Device Abstraction<br />
ECU_Abstraction_Layer_If<br />
«Implements»<br />
Microcontroller_Abstraction_Layer_If<br />
µC_FLASH<br />
«Usage»<br />
«Implements»<br />
«Usage»<br />
µC_E2PR<br />
µC_EXTBUS<br />
µC_PWM<br />
µC_ADC<br />
«Usage»<br />
IO_HW_Abstraction_If<br />
«Usage»<br />
«Usage»<br />
«Implements»<br />
«Usage»<br />
µC_DIO<br />
«U sage»<br />
«Usage»<br />
µC_SPI<br />
Antip<strong>in</strong>chProtection_If<br />
«Implements»<br />
µC_CAN<br />
SLP9_as_wrapper_If<br />
NO T <strong>AUTOSAR</strong> CONFOR M<br />
µC_LIN<br />
«Usage»<br />
SLP9_AS_WRAPPER_Pkg<br />
«Implements»<br />
Basic S<strong>of</strong>tware modules are taken as <strong>of</strong>f-<strong>the</strong>-shelf<br />
components from <strong>in</strong>ternal and external providers<br />
(Figure 4).<br />
F<strong>in</strong>ally, <strong>the</strong> only specific development that belongs<br />
to each product family is <strong>the</strong> creation <strong>of</strong> <strong>the</strong> ECU<br />
Abstraction Layer. That is to say, how <strong>the</strong> ma<strong>in</strong><br />
controller activates remote <strong>in</strong>put-output (on external<br />
multiplexers) or communicates with external smart<br />
devices (Custom ASICs, Watchdogs...).<br />
This was a <strong>real</strong>ly challeng<strong>in</strong>g revolution; <strong>the</strong> first<br />
Body and Security products based on this<br />
architecture are already <strong>in</strong> production and an<br />
<strong>in</strong>creas<strong>in</strong>g number will be sent to production <strong>in</strong> <strong>the</strong><br />
next <strong>years</strong> (Figure 2).<br />
Integration Cycles are more complex due to <strong>the</strong><br />
high number <strong>of</strong> modules and <strong>the</strong> <strong>in</strong>creased number<br />
<strong>of</strong> providers. Therefore <strong>the</strong> <strong>in</strong>tegration <strong>in</strong> each<br />
customer project takes more effort.<br />
We have <strong>in</strong>troduced an organization by Stack:<br />
Memory, IO, System, and Communication. Each<br />
stack <strong>in</strong>cludes <strong>the</strong> modules from top to bottom, so<br />
that we have decreased <strong>the</strong> number from 67<br />
modules to 4 pre-<strong>in</strong>tegrated stacks. A stack is a<br />
coherent set <strong>of</strong> code and documents cover<strong>in</strong>g all<br />
layers. This means that each <strong>in</strong>tegration on <strong>the</strong><br />
Stack level is done only once and not <strong>in</strong> each<br />
customer project. This also gives a coherence <strong>of</strong> <strong>the</strong><br />
modules with<strong>in</strong> a Stack and acts as a reference for<br />
<strong>the</strong> validation (Figure 3).<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Figure 2 : <strong>AUTOSAR</strong>-based s<strong>of</strong>tware <strong>in</strong> production<br />
We have been actively <strong>in</strong>volved <strong>in</strong> this revolution<br />
s<strong>in</strong>ce <strong>the</strong> beg<strong>in</strong>n<strong>in</strong>g. In <strong>the</strong> next paragraphs we will<br />
summarize our feedback on <strong>the</strong> <strong>AUTOSAR</strong><br />
migration.<br />
Figure 3 : Organization <strong>of</strong> <strong>the</strong> <strong>AUTOSAR</strong> <strong>BSW</strong> <strong>in</strong> Stacks<br />
We have also created a test application <strong>in</strong>clud<strong>in</strong>g all<br />
<strong>the</strong> Stacks pre-configured to be used as a reference<br />
<strong>in</strong> project <strong>in</strong>tegration. This organization enables us<br />
to deliver to projects quicker and with <strong>in</strong>creased<br />
quality.<br />
<br />
<br />
Provid<strong>in</strong>g Basic S<strong>of</strong>tware for <strong>AUTOSAR</strong> is an<br />
activity ma<strong>in</strong>ly based on <strong>the</strong> <strong>in</strong>tegration <strong>of</strong><br />
components from different suppliers, and <strong>the</strong>refore<br />
our daily work has changed from perform<strong>in</strong>g <strong>the</strong><br />
development <strong>of</strong> components to essentially do<strong>in</strong>g <strong>the</strong><br />
<strong>in</strong>tegration <strong>of</strong> those components.<br />
If we put to one side <strong>the</strong> configuration aspect that<br />
will be discussed <strong>in</strong> a subsequent chapter, <strong>the</strong>re are<br />
some key topics to discuss here.<br />
The first one is <strong>the</strong> <strong>in</strong>tegration process.<br />
The second key topic is <strong>the</strong> Supplier Management<br />
Releases <strong>of</strong> supplier modules come on a basis <strong>of</strong> 4-<br />
6 months which doesn’t correspond to <strong>the</strong><br />
development cycles and customer expectations<br />
which are typically every month or even faster<br />
FlashLoader_P kg<br />
<br />
<br />
Services_Layer_Pkg<br />
Application_Layer_Pkg<br />
Runtim e_Environm ent_Pkg<br />
E CU_Abs trac tion_Layer _P kg<br />
Microcontroller_Abstraction_Layer_Pkg<br />
MPC55 15S<br />
IO_HW_Abst ract ion_Pk g<br />
Antip<strong>in</strong>chProtection_Pkg<br />
COMPLEX DEVICE DRIVER<br />
Figure 4 : Diversity <strong>of</strong> <strong>the</strong> providers <strong>of</strong> <strong>the</strong> <strong>BSW</strong> code<br />
SLP9_Pkg<br />
<br />
<br />
COMPLEX DEVICE DRIVER