Transcript slides
RTS Meeting
8th July 2009
•
•
•
•
Introduction
Middleware
AUTOSAR
Conclusion
Introduction
gateway node
Figure 1 – Distributed real-time bus network architecture and node hardware structure [1]
Introduction
Figure 2 – An example of automotive real-time bus network [2]
Introduction
•
Application layer
•
Application layer
– ASCs, functions and tasks
Communication layer
–
Communication
Layer
MAC and DLL
Figure 3 – Layered architecture of a node
•
Middleware
MAC and DLL
–
–
–
Physical and data link layer
MAC and arbitration mechanisms
Communication controllers
Middleware
• Hiding the distribution
– Same services, interfaces for intra-ECU, inter-ECU and interdomain
• Hiding the heterogeneity
– Encapsulate OS services, provide API for them, common
services to access I/O devices
• Providing high-level services
– membership services, redundancy management, remote
procedure call (RPC) and working mode management and frame
packing
• Ensuring QoS
– additional mechanisms and services such as additional CRC,
reliable acknowledgement service, frame packing and filtering
mechanisms
Middleware
• Middleware examples:
– TITUS/DBKOM
– OSEK/VDX
– Volcano
– OSEK/VDX FTCom
– AUTOSAR
AUTOSAR
•
•
•
•
AUTOSAR: AUTomotive Open System Architecture [2] [3]
Formed as a partnership (10 core partners) in 2003
The first phase: 2003-2006 with first AUTOSAR products
Main idea: Controlling the complexity together with an increase in
quality and profitability.
The future of automotive engineering is in modular and scalable sw
architectures.
• Motivation
– Demands for safety, comfort, services, economy …
– Increasing complexity
– More diversity of ECU hardware and networks (CAN, LIN, FlexRay,
MOST etc.)
AUTOSAR
• Shortcomings before AUTOSAR
– Non-standardization for networks and
development processes
– Lack of appropriate level of abstraction in sw
architecture modeling and integration
– The architectures did not meet quality
requirements
AUTOSAR
• Objectives
– Main principle: cooperate on standards,
compete on implementation
– Availability and safety
– Scalability and integration
– Maintainability
– Increased use of COTS hw
– Transferability of functions
AUTOSAR
• XML class model, specified in UML 2.0, is used
for modeling
• Separation of “application” development from
the lower levels integration (Basic SoftwareBSW)
• The separator: Runtime environment (RTE) –
RTE uses Virtual Functional Bus (VFB) as
abstracting communication principle
• No need to know what is going on lower levels
• Easier application development
AUTOSAR
• Concept:
– Development methodology: model-driven
– s/w architecture, ECU hardware and n/w
topology are modeled in a formal way defined
in a metamodel
– Support the development from architecture to
integration
AUTOSAR: Software Architecture
Figure 4 – ECU layered software architecture defined by AUTOSAR [2, 3]
AUTOSAR: Software Architecture
Figure 5 – Detailed ECU layered software architecture [2, 3]
• Service layer includes AUTOSAR OS
(needs to access to hardware; i.e. timer)
• Separation of BSW and ASW by RTE
• RTE allows ASW to access BSW services
in a “clearly defined way” (API)
• RTE provides communication services
(VFB)
AUTOSAR: BSW & RTE
• BSW:
– Drivers, services and AUTOSAR OS
– AUTOSAR defines 63 BSW modules
– BSW modules have interfaces
– Implementation conformance classes (ICC1,
ICC2, ICC3) for the BSW
AUTOSAR: BSW & RTE
Figure 6 –The features of the RTE [2]
AUTOSAR: BSW & RTE
• RTE
– Performs as a “glue” between two parts (BSW and ASW)
– Employs BSW to implement ASW behavior (port and runnable entities)
• Communication (send/receive or client/server)
• Activation of runnable entities
– Generation of RTE
• Contract phase
–
–
–
–
ECU independent
Input: description of an ASW component (ports and runnable entities)
API functions used by ASW components (i.e. send)
Output: ASW component-specific header file
• Generation phase
– Concrete code generation
– Input: ECU configuration description (mapping of runnable entities to OS tasks
and communication matrix) and ASW header file
– Output: generated code can be compiled to executable file for that ECU
AUTOSAR: Methodology
Figure 7 – AUTOSAR methodology [2]
AUTOSAR: Methodology
• Configure System: maps ASW components to ECUs
(considering resource and timing requirements)
– Outputs:
• System configuration description (mapping, topology, etc.)
• System communication matrix (features of networks/media used)
• Configure ECU: uses info for implementation such as
tasks, scheduling, main BSW modules list, mapping
runnables to tasks and configuration of BSW modules
– Output:
• ECU configuration description with fixing all configuration
parameters
AUTOSAR: Methodology
Figure 8 – Input information and .XML file generation [2]
AUTOSAR: Methodology
Figure 9 – System configuration overview [2]
AUTOSAR as Middleware
• Reference Model
– Application layer
– BSW (Middleware software components)
– RTE
• Two communication models
– Sender/receiver
• Explicit mode
• Implicit mode
– Client/server
AUTOSAR as Middleware
Figure 10 – Communication software architecture [2]
AUTOSAR as Middleware
• Communication Elements
– Signal
• specified with length and type (data or event)
• Exchanged between software components at the application
level
• Transfer property parameter
– Triggered
– Pending
• Signal types
– Data: Not queued on the receiver side (overwrite on the
previous data value)
– Event: queued (handling of queues and buffers is done by RTE)
AUTOSAR as Middleware
• Communication Elements
– I-PDU
• Formed by AUTOSAR COM service component
• Consists of one or more signals
• Maximum length of I-PDU depends on max. length
of N-PDU (DLL PDU)
• Behavioral parameter
–
–
–
–
Direct
Periodic
Mixed
None
AUTOSAR as Middleware
• Communication Elements
– N-PDU
• Formed by Transport Protocol (TP) of related
communication network (CAN, FlexRay, LIN etc.)
• TP not mandatory but if it is used,
– Splitting the I-PDU to obtain several N-PDUs
– Assembling several I-PDUs into one N-PDU
• The length of payload is decided underlying
protocol
AUTOSAR as Middleware
• AUTOSAR COM Component
– Not fully independent from underlying network
• Considering the length of the payload
– Determine the points at which I-PDUs will be sent
depending on
• Transmission mode (direct, periodic, mixed)
• Transfer property of signals (triggered, pending and mixed)
– Ensure the transmission/reception and informs the
sender/receiver
– Filtering mechanism for signals
– Packing/unpacking of signals into/from I-PDUs
AUTOSAR as Middleware
Figure 11 – Transmission of an I-PDU consisting of two signals
S1 (triggered) and S2 (pending) during mixed transmission mode [2]
Conclusion
• Future Directions:
– Cross-domain communication (function, location and
network) by gateways improvement needed for
interoperability between applications.
– Optimization of networking architectures (s/w tools,
i.e. NETCAR-Analyzer [4])
– Facilitation of the use of s/w along development cycle
(ASAM FIBEX standard)