0% found this document useful (0 votes)
172 views52 pages

Module

The document discusses various automotive software and systems engineering topics related to migrating and standardizing architectures, specifications, and toolchains. Specifically it mentions migrating to AUTOSAR R4.x, validation according to ASAM and MISRA standards, customizing middleware components, testing drivers and networks, and consulting services for migration, optimization, and safety analysis.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
172 views52 pages

Module

The document discusses various automotive software and systems engineering topics related to migrating and standardizing architectures, specifications, and toolchains. Specifically it mentions migrating to AUTOSAR R4.x, validation according to ASAM and MISRA standards, customizing middleware components, testing drivers and networks, and consulting services for migration, optimization, and safety analysis.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

COM Module

Validation R 3.x ASAM HIS-MISRA


Standardization VCI Migration COM
Microlayerdrivers R4.x CAN
Migration R 3.x ARTOP RTE generation
MBD Consulting
Customizabl
eNOSPartner Testing MCAL
Testing CoE HIS-
ECU BSW stackeConfiguration OSEK
R 3.x In-vehicle network MISRA R 3.x

R 4.x
Validation Tool chain Gateway
Standardization drivers R 3.x Partial OSEK Management Migratio Mode Training
ISO 14229
MBD
MCD3 API
Network
MBD Network VCI Management

OTX n OSEK
Networking ASAM CT-Spec Network
AUTOSAR
CT Specs Management Consulting
Hazard Analysis MCD3 API Gateway
ECU ASAMeNOS
AUTOSAR Tool chain Training Hardware Management MBD
ASAM TrainingVCI MBD ASAM Optimization
FUNCTIONAL SAFETY
MBD Tool qualification
In-vehicle network drivers ECU CT Specs MCA Tool qualification MBD HardwareASAMValidation ASIL A, B, C, D ECU
Network
Management

Validation Scalablility Migration Validation Partial ISO 15765 MBD Mode ECU
Management MBD
Specifications Testing Adaptatio CAE Risk Assessment OSEK
Com

MCAL
Validation Partialplex
Networking
L MBD Networking Testing
Drive

nIn-vehicleRCT
hardware Optimization
R 4.x
MCD3 API rs
CT Specs eNOS
BSW stack
BSW Stack

ECU ISO 26262 ASAM


DIAGNOSTICS
Testing Fruga drivers network 3.x ODX ECU ISO 14229
Production Ready MBD
MBD
drivers PDU RouterASAM

lEngineerin eNOS AUTOSAR ECU Migration


R 4.x CT Specs
Bootloader Production Ready
Gatewa
Validation VCI
ODX AUTOSAR LIN
porting
MCD3 API y

ECU Specifications eNOS OSEK hardware Tool chain Mode Management Training ISO 26262 NETWORK
OSEK
Validation

Validatio
BSW Stack

Microlayer g ECU
Legacy to MBD ISO 15765 Training Configuration Migration
Portability
Hardware ASAM Migration
hardware
hardware Legacy to MBD CT-Spec MBD
MANAGEMENT
eNOS ECU ISO26262
n HIS-MISRA Hardware Validation
Diagnostics MBD ASAM
Mode Management Testing CoE
Network Management DiagnosticsBoard Support
Testing ReNOS
4.x ODX Efficient

FUNCTIONAL SAFETY
OTX O DX Complex Drivers CAN Package Comp
Drivers
Production
Tool chain Scalablility CT-Spec
lex
Customizable HIS-MISRA Ready
LIN Gateway VCI DoIP
Consulting ECU Risk
Assessment O ptim ization
Network Management
drivers Consulting Consulting
Validation
Trainin Gateway
Scalablility Diagnostics &
Gateway Hazard Analysis Validation CT PC ToolsTraining Remote Diagnostic ECU
SCALABLILITY

DoIP
g Consulting MBD R3.x

Toolchain
ODX

AUTOSARCT-Spec Validation

BSW stack
ISO 14229
ASIL Decomposition
MCD3 API
Testing CoE
MBD ASAM ISO 26262 OSEK
Partial HIS-MISRA CT-S p ec
porting Testing CoE
OTX Risk Assessment Mode
Migration BSW Stack Complex Drivers COM
Bootloader
Hardwar
ASAM MBD
ISO 15765
Optimization
Networking

VCI MBD
Partial Networking
Aftertreatment
ARTOP Training ECU eNOS R4.xPartial Networking
Gateway Tool Optimization
Management porting ASAM
Microlayer Consulting FUNCTIONAL SAFETY
hardware ASAM VCI e
ASIL Decomposition Scalablility
Efficient ECU
BSW Stack
AUTOSAR Tool Qualification ARTOP DIAGNOSTICS
ECU LIN DoIP ASILA, B, C, D MCAL Risk Assessment OSEK MBD ASAM CT-Spec
Migration Migration DoIP Customizabl Qualification
Hazard Analysis
Mode ODX
Validation
ECU
FUNCTIONAL SAFETY Powerseat
RTE generation Error handling
drivers eNOS
AUTOSAR Management ECU Risk Assessment COM Bootloader
DoIP
ISO 26262 MBD ECU AUTOSAReConsulting Validation
ODX
CT-Spec OSEK
PDU Router
Production Ready MCAL ISO 15765 CT-Spec
ISO 15765 Power Window Bootloader Network Management Validation
porting COM
MCD3 API Scalablility MCD3 API Development
Training Tool Qualification CAN Error handling A S A M

ISO 15765
CT-Spec Production Ready
LIN R4.x ODX
HIS-MISRA
FUNCTIONAL
Portability Configuration
Validation OSEK Scalability
ODX
Gateway

ISO 14229 SAFETY LIN


MBD
Gateway ASIL
ISO 14229
ARTOP ODX DoIP
Decomposition
CAN Bootloader LIN CAN

Pic source: Google


Overview

• AUTOSAR COM is derived


from OSEK COM 3.0.3
• OSEK stands for Open
Systems and their
Interfaces for the
Electronics in Motor
Vehicles
• OSEK is similar to
AUTOSAR where many
automotive companies like
BMW,BOSCH,Chysler,
Volkswagen published
open standard which has
specification for ECUs
COM Module
Functional Requirements

• Signal Transmission
• Signal Group Transmission
• Update Bits
• Initialization
• Signal reception
• Notification Mechanisms
• Deadline Monitoring
• Signal gateway
Signal Trasnmission- Appl,RTE, COM

APPL
Runnable: SeatHeater
Call RTE Service Function
Rte_Write_DialLedValue

RTE
Com_SendSignal()

COM

Transmission (TxCom Mode)


Pdur_ComTrasnmit
Signal Trasnmission- Appl,RTE, COM

RTE Explicit Write


• The information is immediately copied to the buffer in Com.

RTE Implicit Write


• The information is copied to buffer in Com after runnable is
finished
Signal Transmission- COM, PDUR, CANIF

COM

Transmission (TxCom Mode)


Pdur_ComTrasnmit

PDUR

CanIf_Trasnmit()

CANIF
Signal Transmission- CANIF, CAN, BUS
PduId,Length,DataPointer
CANIF

Optimal Tx Buffer

Hardware Transmit Handle


DLC
DataPointer

CAN
t() Tx Register

Arbitration (compete for the bus)

CAN BUS
Sig_DialLedValue
COM Filter Algorithms

• AUTOSAR COM has ability to filter out the received signals


values
• In case of transmission side this is used for Transmission
Mode Conditions which in turn decides Transmission Mode
Selection
• There are around 8 filtering mechanism
The supported filter algorithms for signals are:
• Always: This filter always evaluates to TRUE
• Never: This filter always evaluates to FALSE
• MaskedNewDiffersMaskedOld: ((new & mask) != (old & mask))
• MaskedNewEqualsX: ((new & mask) == x)
• MaskedNewDiffersX: ((new & mask) != x)
• NewIsOutside: ((new < min) || (max < new))
• NewIsWithin: ((min <= new) && (new <= max))
COM Filter Algorithms
Algorithm Reference Algorithm Description

F_Always True No filtering is performed so


that the message always
passes
F_Never False The filter removes all
messages
F_MaskedNewEqualsX (new_value&mask) Pass messages whose
==x masked values is equal to
a specific value
F_MaskedNewDiffersX (new_value&mask) Pass messages where the
!==x masked value is not equal to
a specific value
F_MaskedNewMaskedOld (new_value&mask) Pass messages where the
!==(old_value&ma masked value has changed
sk)
F_NewIsWithin Min<=new_value<=max Pass a message if its
value is within a
predefined boundary
F_NewIsOutside (min>=new_value) OR Pass a message of its
(new_value>max) value is outside a
predefined boundary
F_OneEveryN Occurrence 5 period == Pass a message once
offset every N message
occurrences.
Start : occurrence =0.
Each time the message is
received to transmitted
,occurrence is
incremented by 1 after
filtering .
Length of occurrence is 8
bit (minimum)
Transfer properties and modes

• Key factors used for transmitting a frame are


ComTranferProperty, ComFilterAlgorithm, ComTxModeMode,
Transmission Mode Selection
Transfer property:
Parameter : ComTransferProperty
TRIGGERED
TRIGGERED_WITHOUT_REPETITION
TRIGGERED_ON_CHANGE
TRIGGERED_ON_CHANGE_WITHOUT_REPETITION
PENDING
Transmission mode:
Parameter : ComTxModeMode
Direct
Periodic
Mixed
None - It is possible to request I-PDUs with ComTxModeMode NONE via
Com_TriggerTransmit.
Transfer properties and modes

• Triggered property is possible only for frames with transfer modes


Direct or mixed
• TRIGGERED – Request for Transmission is triggered immediately
and requested for value present in
ComTxModeNumberOfRepetitions times
• TRIGGERED_WITHOUT_REPETITION - Request for
Transmission is triggered immediately but no repetition for
transmission is requested
• TRIGGERED_ON_CHANGE - if the new sent signal differs to the
already stored then transmission request is given and transmission
request is repeated for ComTxModeNumberOfRepetitions
• TRIGGERED_ON_CHANGE_WITHOUT_REPETITION - if the
new sent signal differs to the already stored then transmission
request is given and no transmission request is repeated
• PENDING - Request for transmission is given periodically
Transmission Modes-Mechanism

Filter Filter Filter Filter

TRUE FALSE TRUE FALSE TRUE FALSE TRUE FALSE

Transmission Mode Selector

Transmission Mode True Transmission Mode False


TMC and TMS

• TMC stands for Transmission Mode Condition


• TMS stands for Transmission Mode Selection
• An IPDU will have more number of signals.
• A method was needed to derive IPDU transmission based on
the value of the signal
• For each IPDU it is possible to have two different methods for
transmission which we call as transmission mode selection
(TMS). TRUE and FALSE are the two methods of TMS
• Values in ComFilter container is used as input for TMC based
on which TMS is selected
• If one TMS is sufficient for an IPDU, then ComFilter value for
all signals in that IPDU should be ALWAYS
Use case 1

• I-PDU that is sent out cyclically with a cycle time tc


• Because of the configuration of the parameter
ComFilterAlgorithm ALWAYS of the ComFilter, there is no
need to configure a transmission mode for the case that the
TMS evaluates to false.

V=X V=X V=X

tc tc tc tc tc
COM SIGNAL

Com TranferProperty PENDING or TRIGGERED


(TRIGGERED has no influence)
ComFilter

comFilterAlgorithm ALWAYS

ComIPduà PDU(For the entire message)

ComIPduDirection SEND

ComTxModeTrue

ComTxModeTimePeriod tc

ComTxModeMode PERIODIC

ComTxIPdu

ComMinimumDelayTime 0 or omitted
Usecase 2

• An I-PDU needs to be sent out three times whenever a value


is given by the upper (Com_SendSignal or
Com_SendSignalGroup).
• The time between two transmissions is td.
• This I-PDU consists of signals, which all have the
ComTransferProperty TRIGGERED.
• dt can be enabled or disabled using tag
ComEnableMDTForCyclicTransmission
• The transmission should takes place when the TMS evaluates
to true.
Usecase 2
ComGeneral
ComEnableMDTForCyclicTransmission True

ComSignal
ComTranferProperty TIRGGERED
ComFilter
ComFilterAlgorithm ALWAYS
ComIPdu
ComIPduDirection SEND
ComTxModeTrue
ComTxModeMode DIRECT
ComTxModeRepetitionPeriod 2

ComTxmodeRepetitionPeriod td
ComTxipdu
ComMinimumDelayTime dt
Usecase 3

• Use case 3 shows an I-PDU which is send out cyclically with


a cycle time tc1 if value v = a (TMS evaluates to true) and with
a cycle time tc2 if value v = b (TMS evaluates to false).
• The I-PDU consists of signals, which all have the
ComTransferProperty PENDING.
• We can use ComFilterAlgorithm as
MASKED_NEW_EQUALS_X or
MASKED_NEW_DIFFERS_X
ComGeneral
ComEnableMDTFotCyclicTranmission True

Comsignal
ComTransferaProperty PENDING or TRIGGERED
(TRIGGERED has no influence)
ComFilter
comFilterAlgorithm Any filter mapping value a to true and
value b to false
ComIPdu
ComIPduDirection SEND
ComTxModeTrue
ComTxModeMode PERIODIC
ComTxModeTimeperid tc1

ComTxModeFalse
ComTxModeMode PERIOD

ComTxModeTimePeriod tc2

ComTxIPdu
ComMinimumDelayTime dt
Usecase 4

• Use case 4 shows an I-PDU which is send out cyclically with


a cycle time tc if value v = a (TMS evaluates to true) and if
value v = b (TMS evaluates to false) it is sent out three times
whenever the value is given by the RTE.
• The time between two transmissions is td.
• The I-PDU consists of signals that all have the
ComTransferProperty TRIGGERED.
Use case 4
ComGeneral
ComEnableMDTForCyclicTransmission True

ComSignal
ComTransferProperty TRIGGERED
ComFilter
ComFilterAlgorithm Any filter mapping value a to true and value b to
false
ComIPdu
ComIpduDirection SEND
ComTxModeTrue
ComTxModeMode PERIODIC
ComTxmodeTimePeriod tc
ComTxModeFalse
ComTxModeMode DIRECT
ComTxModenumberofRepetitions 2

ComTxModeRepetitionPeriod td

ComTxIPdu
ComMnimumDelayTime dt
Usecase 5

• Use case 5 shows an I-PDU which is send out cyclically with


a cycle time tc and if the value (the same or a new one) is
given by the RTE it is also sent out directly three times.
• The time between two of these three transmissions is always
td.
• The I-PDU consists of signals that all have the
ComTransferProperty TRIGGERED.
Use case 5
ComGeneral

ComEnableMDTForCyclicTransmission True

ComSignal

ComTransferProperty TRIGGERED ON CHANGE

ComFilter

ComFilterAlgorithm ALWAYS

ComIPdu

ComIPduDirection SEND

ComTxModeTrue

ComTxModeMode MIXED

ComTxModeTimePeriod t2
ComTxmodeNumberOfRepetitions 2

ComTxmodeRepetitionPeriod t2

ComTxIPdu

ComMinumimDelaytime dt
Usecase 6

• Use case 6 shows an I-PDU which is send out cyclically with


a cycle time tc2 if value v = b (TMS evaluates to false).
• If value v = a (TMS evaluates to true) it is sent out cyclically
with a cycle time tc1 and whenever the value v = a is given by
the RTE it is also sent out directly three times.
• The time between two of these three transmissions is always
td.
• The I-PDU consists of signals that all have the
ComTransferProperty TRIGGERED
Usecase 6
ComGeneral
ComEnableMDTForCyclicTransmission True
ComSignal
ComTransferProperty TRIGGERED ON CHANGE
ComFilter
ComFilterAlgorithm Any filter mapping value a to true and value b to false

ComIPdu
ComIPduDirection SEND
ComTxModeTrue
ComTxModeMode MIXED
ComTxModeTimeperiod tc1
ComTxModeNumberOfRepetition 2

ComTxModeRepetitionPeriod t2
ComTxModeFalse
ComTxModeMode PERIODIC
ComTxModeTimePeriod tc2
ComTxIPdu
ComMinimumDelayTime dt
Signal Value

• For each and every signal we can say three values


• Init value : Initialization value
• Data Invalid Value : Value in case of any error
• Normal Value : Valid value received from SWC or PDUR
Signal Groups

• Logical group of signals that belong together


• Signal groups are defined in Communication Matrix
• Complex data types are mapped to the signal in the RTE
• Signal groups comprise group signals

Signal groups signify the following


• All group signals within aa signal group are consistent
• Access is done by the RTE via a dedicated signal group or
group signal API (Com_sendsignalgroup)

Signal group shadow buffer provided by COM


• One global shadow buffer for each signal
Interaction model for transmission
Interaction model for Reception
Update Bits

• The AUTOSAR COM module shall support to detect if a


received signal or signal group was updated by the sender
• When multiple signals /signal groups are placed in the same I-
PDU, and that I-PDU is sent more frequently than a signal/
signal group is update, the update bit provides a mechanism
to detect only those signals/ signal groups that have changed
values.
• An update bit is optionally attached to a signal/ signal group
and can only be attached at configuration time.
• When COM is started all up date bits in all I-PDUs are cleared
Update Bits

• In the sending ECU, when a signal/ signal group is sent by


the application, the update bit is set automatically by COM as
part of the SendMessage() call.
• In the receiving ECU, when an I-PDU is received, a
signal/signal group with an associated update bit is only
processed by COM if its update bit is set. Therefore filtering
and informing the RTE etc. will only take place if the update
bit is set.
Initialization

• It is done by API Com_Init()


• Value present in parameter (tag) ComSignalInitValue is the
value used for intialization
• Unused areas in a frame will be filled with value present in
ComTxIPduUnusedAreasDefault
• Com_DeInit() - after deinitialization of the layer, no
communication via the AUTOSAR COM module is possible
Signal Reception- BUS, CAN, CAN IF
PduR Nm Tp
CANIF HW Independent
Buffer for
Receive Data
Ø Hardware Receive Handle (mailbox)
Ø CANId,
Ø DLC
Ø DataPointer
CAN
t() Rx Register
HW Dependent

CAN BUS
Sig_Seat Status
Signal Reception- CANIF,PDUR,COM

PDU COM DCM

PDUR
Large Signals

Tp Nm
PduR
CANIF
Signal Reception COM, RTE, APPL

APPL
Runnable: SeatHeater
Call RTE Service Function
Rte_Read_SeatStatus

RTE
Com_ReceiveSignal()

PDU COM
Signal Reception COM RTE APPL

Explicit Read
• When reading the data element several times, the data may change as
the latest signal value is received by Com is returned

Implicit Read
• Before the start of the runnable the signal value is copied to the buffer.
The application assess the data only from the buffer. Therefore the data
element remains the same even when the underlying signal value
changes.
Data Mapping

• The data elements have to be assigned to Network (Com


signals)
• The assignment is done when performing data mapping
• Data mapping is done for both receive and transmit information
• Data mapping means assigning Data Elements to Network Signals
Data Mapping
APPL
DialLedValue
We could use Delegation
ports to achieve data
RTE
Mapping
COM
Sig_DialLedValue sig_DialLedValue

RTE
PDUR

CANIF

CAN

CAN Bus
Sig_DialLedValue
Notification Mechanisms- IPDU Signal Processing

• The option determines how to process the signal when the


signal’s
• Rx Notification (Rx Indication) or
• Tx Notification (Tx Indication)

Immediate
• The notification is called within Com_RxIndication() or
Com_TxConfirmation (). This might be interrupt context. It is
exceuted immediately

Deferred
• The notification function is called on task level during the next
call cycle of Com_MainfuncationRx() or
Com_MainfuncationTx()
RX Signal Indication- Deferred & Immediate
Deadline Monitoring

Deadline monitoring is a mechanism which is used if IPDU is


not received within specified time for Rx signal or IPDU
transmit confirmation is not received in case of Tx signal.

Com can detect timeouts on


IPDU Level
• An Rx IPDU is not received within a predefined timeout time
Signal Level
• The update bit of a signal has not been set for a predefined timeout time

• The timeout time can be configured by the developer


• Only inter ECU timeout monitoring is supported
Deadline Monitoring
Rx deadline monitoring:
• ComRxDataTimeoutAction parameter determines whether the AUTOSAR COM module
replaces the signal/ signal group value with the initial value or substitute value or
maintains the last received value
• If value of ComRxDataTimeoutAction is REPLACE, then if signal is not received within
ComTimeout time COM will replace the signal value with init value configured in
ComSignalInitValue
• If value of ComRxDataTimeoutAction is SUBSTITUTE, then if signal is not received within
ComTimeout time COM will replace the signal value with value configured in
ComTimeoutSubstitutionValue
• If value of ComRxDataTimeoutAction is NONE, then if signal is not received within
ComTimeout time COM will not replace the signal value, it will maintain last received value
• Timer used for monitoring will be restarted on every reception of IPDU
Transmission Deadline Monitoring:
• Within ComTimeout time if Tx confirmation is not received then notification is given to
application via RTE by calling the function present in ComTimeoutNotification
• Timer is started whenever Com_SendSignal() API is called for that signal
Reception of Invalid Signal- Com level

Precondition for invalidation


• Only signals which have been enabled ComDataInvalidAction can be
invalidated at all.
Invalidation of Group Signals
• A valid signal group cannot contain any invalid group signals
• A invalid signal group contains atleast one invalid group signal

If invalid value is received there are three types of action.


None- Nothing happens. Invalid value is in the Com Buffer
Notify- The Invalid Notification will be called
(Rte_COMCbkInv_<ComSignalName>. Last valid received
value remains in the Com buffer.
Replace- Replace the received invalid value in Com Buffer by
the Init Value
Signal Gateway

• The AUTOSAR COM module shall forward signals to be


routed from received I-PDUs to transmit I-PDUs.
Configuration is done inside container ComGwMapping
• The ComGwMapping configuration allows to configure routing
a signal/ signal group from one source signal/ signal group to
zero (no signal gateway functionality) or more destinations
(1:n).
• Even for gateway signals deadline monitoring, endianness
conversion is done
• If the received signal/ signal group have update-bit
(ComUpdateBitPosition) configured, and the updatebit of the
received signal/ signal group is not set, the AUTOSAR COM
module shall not route this signal/ signal group

You might also like