Académique Documents
Professionnel Documents
Culture Documents
V2.0.0
R4.0 Rev 3
Document Title
Document Owner
Document Responsibility
Document Identification No
Document Classification
AUTOSAR
AUTOSAR
412
Standard
Document Version
Document Status
Part of Release
Revision
2.0.0
Final
4.0
3
Version Changed by
2.0.0 AUTOSAR
Administration
11.10.2010
1.1.0
AUTOSAR
Administration
07.12.2009
1.0.0
AUTOSAR
Administration
Change Description
Added parameters for Event Channel
and Timestamp configuration
Added possibility to calculate memory
consumption for ODT (DAQ & STIM)
Restructuring configuration
parameters for static & dynamic ODT
Added support for deactivation of
transmission capabilities
Add chapter 7.8 (Version check), RTE
limitation, OS Counter Ref
Remove InstanceID and known
limitation (OS)
Initial Release
1 of 65
- AUTOSAR confidential -
2 of 65
- AUTOSAR confidential -
Table of Contents
1
Related documentation........................................................................................ 7
3.1 Input documents ............................................................................................ 7
3.1.1 Related standards and norms ................................................................. 8
Limitations ..................................................................................................... 9
Applicability to car domains ........................................................................... 9
API specification................................................................................................ 26
8.1 Imported types............................................................................................. 26
8.2 Type definitions ........................................................................................... 26
8.2.1 Xcp_ConfigType ................................................................................... 26
8.2.2 Xcp_Transmission Mode Type.............................................................. 26
8.3 Function definitions...................................................................................... 27
8.3.1 Xcp_Init ................................................................................................. 27
8.3.2 Xcp_GetVersionInfo.............................................................................. 28
3 of 65
- AUTOSAR confidential -
10
Configuration specification............................................................................. 39
10.1
How to read this chapter .......................................................................... 39
10.1.1
Configuration and configuration parameters...................................... 39
10.1.2
Variants ............................................................................................. 39
10.1.3
Containers ......................................................................................... 40
10.1.4
Specification template for configuration parameters .......................... 40
10.2
Containers and configuration parameters ................................................ 40
10.2.1
Variants ............................................................................................. 41
10.2.2
Xcp .................................................................................................... 42
10.2.3
XcpGeneral........................................................................................ 42
10.2.4
XcpConfig .......................................................................................... 51
10.2.5
XcpDaqList ........................................................................................ 52
10.2.6
XcpDto............................................................................................... 54
10.2.7
XcpOdt............................................................................................... 54
10.2.8
XcpOdtEntry ...................................................................................... 55
10.2.9
XcpDemEventParameterRefs............................................................ 56
10.2.10 XcpEventChannel .............................................................................. 59
10.2.11 XcpPdu .............................................................................................. 61
10.2.12 XcpRxPdu.......................................................................................... 62
10.2.13 XcpTxPdu .......................................................................................... 63
10.3
Published Information .............................................................................. 64
11
4 of 65
- AUTOSAR confidential -
5 of 65
- AUTOSAR confidential -
Description:
AUTomotive Open System ARchitecture
File Extension for an ASAM 2MC Language File
Association for Standardization of Automation and Measuring
Systems
Basic Software
Controller Area Network
CAN Interface
Command Transfer Object
Data AcQuisition, Data AcQuisition Packet
Data Transfer Object
Electronic Control Unit
FlexRay Interface
Hersteller Initiative Software
Data Link Layer PDU
Measurement Calibration and Diagnostics
Motor Industry Software Reliability Association
Object Descriptor Table
Protocol Data Unit
Random Access Memory
Read Only Memory
Schedule Manager
Subversion
Software Requirements Specification
Data Stimulation packet
Software
Software Specification
Transfer Control Protocol / Internet Protocol
Time Stamp
User Datagram Protocol / Internet Protocol
Uniform Resource Locator
Universal Calibration Protocol
Extensible Markup Language
Interrupt Service Routine
Diagnostic Event Manager (AUTOSAR BSW module)
Development Error Tracer (AUTOSAR BSW module)
6 of 65
- AUTOSAR confidential -
Related documentation
3.1
Input documents
[11]
AUTOSAR OS Specification:
AUTOSAR_SWS_OS
7 of 65
- AUTOSAR confidential -
8 of 65
- AUTOSAR confidential -
Limitations
Please note:
For the communications bus LIN, no ASAM XCP is specified.
4.2
n/a
9 of 65
- AUTOSAR confidential -
The BSW Scheduler calls the main functions of the Xcp, which are necessary for the
cyclic processes of the Xcp.
5.2
The FlexRay Interface is used to transmit and receive XCP PDUs via FlexRay.
5.3
The CAN Interface is used to transmit and receive XCP PDUs via CAN.
5.4
AUTOSAR SocketAdaptor
The SocketAdaptor is used to transmit and receive XCP PDUs via Ethernet.
5.5
AUTOSAR RTE
The RTE is used for copying calibration parameters from ROM/FLASH to RAM and
to use the double pointered method
5.6
AUTOSAR OS
In order to be able to report production errors, the XCP has to have access to the
Diagnostic Event Manager.
5.8
In order to be able to report development errors, the XCP has to have access to the
error hook of the Development Error Tracer.
10 of 65
- AUTOSAR confidential -
File structure
5.9.1
[Xcp501]
The code file structure shall not be defined within this specification completely. At
this point it shall be pointed out that the code-file structure shall include the following
files named:
-
These files shall contain all link time and post-build time configurable parameters.
[Xcp500]
The module XCP shall access the location of the API of all used modules for precompile time configuration by either using of external declaration in includes of the
used modules public header files <x>.h or by the code file Xcp_Cfg.c.()
5.9.2
[Xcp502]
11 of 65
- AUTOSAR confidential -
BSW00301)
The XCP module shall include the Dem.h file. By this inclusion, the APIs to report
errors as well as the required Event Id symbols are included. This specification
defines the name of the Event Id symbols, which are provided by XML to the DEM
configuration tool. The DEM configuration tool assigns ECU dependent values to the
Event Id symbols and publishes the symbols in Dem_IntErrId.h.
[Xcp503]
All files related to the XCP module shall follow the naming convention
Xcp[_<description>].<extension>(BSW00300)
[Xcp505]
The implementation of the XCP module shall provide the header file Xcp.h, which is
the main module interface file. It shall contain all types and function prototypes
required by the XCP modules environment.(BSW00302)
[Xcp506]
The implementation of the XCP on CAN module shall provide the header file
XcpOnCan_Cfg.h that shall contain the pre-compile-time configuration parameters.
()
[Xcp507]
The implementation of the XCP on FlexRay module shall provide the header file
XcpOnFr_Cfg.h that shall contain the pre-compile-time configuration parameters.()
[Xcp508]
The implementation of the XCP on Ethernet module shall provide the header file
XcpOnEth_Cfg.h that shall contain the pre-compile-time configuration parameters.
()
[Xcp509]
The module shall include the Dem.h file.()
By this inclusion, the APIs to report errors as well as the required Event Id symbols
are included. This specification defines the name of the Event Id symbols which are
provided by XML to the DEM configuration tool. The DEM configuration tool assigns
ECU dependent values to the Event Id symbols and publishes the symbols in
Dem_IntErrId.h.
12 of 65
- AUTOSAR confidential -
Requirements traceability
6.1
Requirement
Satisfied by
BSW00344
BSW00404
BSW00405
BSW00345
BSW159
BSW167
BSW171
BSW170
BSW00380
BSW00419
BSW00381
BSW00412
BSW00383
BSW00384
BSW00387
BSW00388
BSW00389
BSW00390
BSW00391
BSW00392
BSW00393
BSW00394
BSW00395
BSW00396
BSW00397
BSW00398
BSW00399
BSW00400
BSW00402
BSW00375
BSW101
BSW00416
BSW00406
BSW168
BSW00407
BSW00423
Xcp741
Xcp742
Xcp803
Xcp742
Xcp102
Xcp103
Xcp104
Xcp105
n/a
n/a
Xcp501
Xcp501
Xcp502
Xcp502
Xcp501
Chapter 5
n/a
Xcp101
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Chapter 10.2
Xcp807
n/a
Xcp803
n/a
Xcp811
n/a
Xcp807
n/a
BSW00424
BSW00425
BSW00426
BSW00427
BSW00428
BSW00429
BSW00431
BSW00432
BSW00433
BSW00434
BSW00336
BSW00337
13 of 65
Xcp823
n/a
n/a
n/a
n/a
Chapter 5.6
n/a
n/a
Xcp823
n/a
n/a
Error
- AUTOSAR confidential -
BSW00369
BSW00339
BSW00417
BSW00323
BSW004
BSW00409
BSW00385
BSW00386
BSW161
BSW162
BSW005
BSW00415
BSW164
BSW00325
BSW00326
BSW00342
BSW00343
BSW160
BSW007
BSW00300
BSW00413
BSW00347
BSW00305
BSW00307
BSW00310
BSW00373
BSW00327
BSW00335
BSW00350
BSW00408
BSW00410
BSW00411
BSW00346
BSW158
BSW00314
BSW00370
BSW00348
BSW00353
BSW00361
BSW00301
BSW00302
BSW00328
BSW00312
BSW006
BSW00357
BSW00377
BSW00304
BSW00355
BSW00378
BSW00306
BSW00308
BSW00309
14 of 65
classification
Chapter 7.6
Chapter 7.7
Chapter
Chapter
n/a
Chapter 8.3
Xcp749
Xcp502
Chapter 7.5
Xcp754
n/a
n/a
n/a
n/a
n/a
n/a
n/a
Chapter 10.2.1
Chapter 10.2
Xcp744
Xcp745
Xcp503
n/a
n/a
Chapter 8.2
Xcp800
Xcp800
Xcp823
Xcp763
n/a
Xcp753
Xcp800
n/a
Xcp807
Xcp808
Xcp809
Xcp810
Xcp501
Xcp501
n/a
n/a
Chapter 5.9
Chapter 5.9
Chapter 5.9
Xcp502
Xcp505
n/a
n/a
n/a
Chapter 8.3
n/a
Chapter 8.3
Chapter 8.3
Chapter 8.3
n/a
Xcp760
n/a
- AUTOSAR confidential -
6.2
n/a
Xcp803
Xcp803
Chapter 8.5
Chapter 8.4
n/a
n/a
n/a
n/a
n/a
n/a
n/a
n/a
n/a
Xcp807
Xcp807
Xcp807
Xcp807
n/a
n/a
Xcp751
Xcp747
Xcp748
Requirement
Satisfied by
BSW429001
BSW429002
BSW429003
BSW429004
BSW429005
BSW429006
BSW429007
BSW429008
BSW429009
BSW429010
BSW429011
BSW429012
BSW429013
BSW429014
BSW429015
BSW429016
BSW429017
Unique PDU-ID
XCP Specification Version 1.1
XCP on CAN
XCP on FlexRay
XCP on Ethernet
A2L Support
Synchronous data acquisition
Synchronous data stimulation
Block communication mode
Interleaved communication mode
Dynamic data transfer configuration
Timestamped Data transfer
Bypassing
Seed & Key
XCP Initialization
15 of 65
Xcp701
Xcp712, Xcp714,
Xcp720, Xcp734
Xcp702
Xcp703
Xcp713
Xcp719
Xcp733
n/a
Xcp705
Xcp707
Xcp711
Xcp710
Xcp706
Xcp709
Xcp761
Xcp766
Xcp803
- AUTOSAR confidential -
Functional specification
The specification of the module XCP shall define all parameters and interfaces,
which are required to use the ASAM XCP protocol specification within an AUTOSAR
environment.
Description:
Black arrows: Data Path (Signals/Pdus)
Orange arrows: Control Path (FlexRay Interface)
[Xcp701]
The AUTOSAR XCP Module be located above the bus specific Interfaces in case of
FlexRay and Can. In case of Ethernet, the AUTOSAR XCP module shall be located
above the Socket Adaptor.(BSW429001)
[Xcp702]
For transmitting and receiving of XCP messages, unique PDU-IDs shall be used.
(BSW429003)
[Xcp703]
The AUTOSAR XCP Module shall support the ASAM XCP Specification Version 1.1.
(BSW429004)
[Xcp705]
16 of 65
- AUTOSAR confidential -
17 of 65
- AUTOSAR confidential -
XCP on CAN
[Xcp713]
The AUTOSAR XCP Module shall support the CAN communications bus according
to [14](BSW429005)
[Xcp714]
18 of 65
- AUTOSAR confidential -
XCP on FlexRay
[Xcp719]
The AUTOSAR XCP Module shall support the FlexRay communications bus
according to [16](BSW429006)
[Xcp720]
XCP data sent and received via FlexRay, the PDUs have to be transmitted and
received using the transmit and receive APIs provided by the AUTOSAR FlexRay
Interface according to [8].(BSW429002)
[Xcp721]
All XCP on FlexRay LPDUs always are event driven. Please refer to Chapter 1.1.2
FlexRay Frame Type of [16]()
[Xcp722]
The hardware buffers (of the FlexRay Communication Controller) XCP uses for data
transmission and reception are assigned exclusively to the XCP module.()
Note:
This restriction prevents disturbances of ongoing FlexRay communication.
[Xcp723]
The usage of FlexRay Communication Controllers hardware buffers shall be
configured by the corresponding parameters according to [16]()
19 of 65
- AUTOSAR confidential -
20 of 65
- AUTOSAR confidential -
XCP on Ethernet
[Xcp733]
The AUTOSAR XCP Module shall support the Ethernet communications bus
according to [15](BSW429007)
[Xcp734]
XCP data sent and received via Ethernet, the PDUs have to be transmitted and
received using the transmitting and receive APIs provided by the AUTOSAR Socket
Adaptor according to [10].(BSW429002)
[Xcp735]
The AUTOSAR XCP slave connected by Ethernet and TCP/IP or UDP/IP is
addressed by its IP Address and Port number.()
[Xcp736]
The AUTOSAR XCP slave only accepts one connection at the time. ()
[Xcp737]
If the socket is closed while in XCP connected state, the slave device will perform an
XCP disconnect, which means that all data acquisition will be stopped.()
[Xcp738]
The addressing scheme is defined according to [15]()
.
[Xcp739]
The header and tail of an XCP on Ethernet message have to be set according to [15]
()
[Xcp740]
The upper performance limit depends on the protocol stack of the host system. The
corresponding parameters defined according to [15] have to be set.()
[Xcp710]
The AUTOSAR XCP Module shall support the feature Interleaved communication
mode, according to according to [15](BSW429012)
21 of 65
- AUTOSAR confidential -
Requirements on Debugging
[Xcp760]
Each variable that shall be accessible by AUTOSAR Debugging, shall be
defined as global variable.(BSW00308)
[Xcp759]
All type definitions of variables which shall be debugged, shall be accessible by the
header file Xcp.h()
[Xcp762]
The declaration of variables in the header file shall be such that it is possible to
calculate the size of the variables by C-"sizeof".()
[Xcp765]
Variables available for debugging shall be described in the respective
Basic Software Module Description.()
[Xcp764]
The internal XCP states shall be available for debugging.()
In general, it is not necessary/intended for AUTOSAR debugging, that SWS
documents define specific variables.
7.4.1
General Requirements
[Xcp741]
Link-time and post-build-time configuration data shall be implemented as read-only
data structures. Link-time configuration data shall be immediately referenced by the
implementation, the start-address of post-build-time configuration data shall be
passed during module initialization(BSW00344)
[Xcp742]
The XCP module shall support pre-compile time, link-time and post-build-time
configuration.(BSW00404, BSW00345)
[Xcp744]
The description of the configuration and initialization data itself is not part of this
specification but very implementation specific. The generated configuration data
should be human-readable.(BSW160)
22 of 65
- AUTOSAR confidential -
Error classification
[Xcp752]
Values for production code Event Ids are assigned externally by the configuration of
the Dem. They are published in the file Dem_IntErrId.h and included via Dem.h.()
[Xcp763]
The error values and EventIds are named in capital letters according to the scheme
XCP_E_<NAME>, where NAME describes the error/EventId and may consist of
several words separated by underscores.(BSW00327)
[Xcp753]
Development error values are of type uint8.
23 of 65
- AUTOSAR confidential -
Relevance
Invalid pointer
Module not initialized
API call with wrong PDU ID
Initialization of XCP failed
Development
Development
Development
Production
0x01
XCP_E_INV_POINTER
XCP_E_NOT_INITIALIZED 0x02
Development XCP_E_NULL_POINTER
7.6
XCP_E_INVALID_PDUID
XCP_E_INIT_FAILED
Value [hex]
0x03
Assigned by
DEM
0x12
Error detection
[Xcp754]
The detection of development errors is configurable (ON / OFF) at pre-compile time.
The switch XCP_DEV_ERROR_DETECT (see chapter 10) shall activate or
deactivate the detection of all development errors.(BSW00386)
[Xcp755]
If the XCP_DEV_ERROR_DETECT switch is enabled, API parameter checking is
enabled. The detailed description of the detected errors can be found in chapter 8.3.
()
[Xcp756]
The detection of production code errors cannot be switched off.()
7.7
Error notification
[Xcp757]
Detected development errors shall be reported to the Det_ReportError service of the
Development Error Tracer (DET) if the pre-processor switch
XCP_DEV_ERROR_DETECT is set (see chapter 10). ()
[Xcp758]
Production errors shall be reported to Diagnostic Event Manager.()
7.8
Version checking
[XCP767] The XCP module shall perform Inter Module Checks to avoid integration
of incompatible files.()
The imported included files shall be checked by preprocessing directives.
The following version numbers shall be verified:
- <MODULENAME>_AR_RELEASE_MAJOR_VERSION
- <MODULENAME>_AR_RELEASE_MINOR_VERSION
Where <MODULENAME> is the module abbreviation of the other (external) modules
24 of 65
- AUTOSAR confidential -
25 of 65
- AUTOSAR confidential -
API specification
[Xcp800]
All functions or global variables, whether they are specified or not shall follow the
naming scheme Xcp_<name>, where the first letter of each word in <name> is
written uppercase and the remainder of the word lowercase.(BSW00307,
BSW00310, BSW00408)
8.1
Imported types
In this chapter all types included from the following files are listed:
[Xcp801]
Module
ComStack_Types
Dem
Os
Std_Types
Imported Type
NetworkHandleType
PduIdType
PduInfoType
Dem_EventIdType
Dem_EventStatusType
CounterType
StatusType
TickRefType
Std_ReturnType
Std_VersionInfoType
()
8.2
Type definitions
8.2.1
Xcp_ConfigType
Name:
Type:
Range:
Description:
8.2.2
Xcp_ConfigType
Structure
implementation The content of the initialization data structure is
specific
implementation specific
This is the type of the data structure containing the initialization data for XCP.
Name:
Type:
Range:
Description:
Xcp_TransmissionModeType
Enumeration
XCP_TX_OFF
Transmission Disabled
XCP_TX_ON
Transmission Enabled
Handles the enabling and disabling of the transmission mode
26 of 65
- AUTOSAR confidential -
Function definitions
Xcp_Init
[Xcp803]
Service name:
Syntax:
Xcp_Init
void Xcp_Init(
const Xcp_ConfigType* Xcp_ConfigPtr
)
0x00
Synchronous
Non Reentrant
Xcp_ConfigPtr
Pointer to a selected configuration structure
None
Service ID[hex]:
Sync/Async:
Reentrancy:
Parameters (in):
Parameters
(inout):
Parameters (out): None
void
-Return value:
This service initializes interfaces and variables of the AUTOSAR XCP layer.
Description:
27 of 65
- AUTOSAR confidential -
8.3.2
Xcp_GetVersionInfo
[Xcp807]
Service name:
Syntax:
Xcp_GetVersionInfo
void Xcp_GetVersionInfo(
Std_VersionInfoType* versioninfo
)
0x01
Synchronous
Reentrant
None
None
Service ID[hex]:
Sync/Async:
Reentrancy:
Parameters (in):
Parameters
(inout):
Parameters (out): versioninfo Pointer to where to store the version information of this module.
void
-Return value:
Returns the version information of this module.
Description:
28 of 65
- AUTOSAR confidential -
Call-back notifications
[Xcp836]
This is a list of functions provided for other modules. The function prototypes of the
callback functions shall be provided in the file Xcp_Cbk.h()
8.4.1
Xcp_<module>RxIndication
[Xcp813]
Service name:
Syntax:
Service ID[hex]:
Sync/Async:
Reentrancy:
Parameters (in):
Xcp_<module>RxIndication
void Xcp_<module>RxIndication(
PduIdType XcpRxPduId,
PduInfoType* XcpRxPduPtr
)
0x03
Synchronous
Reentrant for different XcpRxPduIds, non reentrant for the same XcpRxPduId
XcpRxPduId
PDU-ID that has been received
XcpRxPduPtr
Pointer to SDU (Buffer of received payload)
None
Parameters
(inout):
Parameters (out): None
void
-Return value:
This function is called by the lower layers (i.e. FlexRay Interface, TTCAN Interface
Description:
and Socket Adaptor or CDD) when an AUTOSAR XCP PDU has been received
()
The callback function Xcp_<module>RxIndication is called by the Bus
Interfaces, Ethernet Socket Adaptor or CDD and is implemented by the Xcp module.
[XCP844]
The callback function Xcp_<module>RxIndication shall inform the DET, if
development error detection is enabled (XCP_DEV_ERROR_DETECT is set to TRUE) and if
function call has failed because of the following reasons:
Xcp was not initialized (XCP_E_NO_INIT)
XcpRxPduPtr equals NULL_PTR (XCP_E_NULL_POINTER)
29 of 65
- AUTOSAR confidential -
Xcp_<module>TxConfirmation
[Xcp814]
Service name:
Syntax:
Xcp_<module>TxConfirmation
void Xcp_<module>TxConfirmation(
PduIdType XcpTxPduId
)
0x02
Synchronous
Reentrant for different XcpTxPduIds, non reentrant for the same XcpTxPduId
XcpTxPduId
PDU-ID that has been transmitted
None
Service ID[hex]:
Sync/Async:
Reentrancy:
Parameters (in):
Parameters
(inout):
Parameters (out): None
void
-Return value:
This function is called by the lower layers (i.e. FlexRay Interface, TTCAN Interface
Description:
and Socket Adaptor or CDD) when an AUTOSAR XCP PDU has been transmitted
()
Note:
The callback function Xcp_<module>TxConfirmation is called by the Bus
Interfaces, Ethernet Socket Adaptor or CDD and is implemented by the Xcp module.
[Xcp840]
If development error detection for the XCP module is enabled: if the function
Xcp_<module>TxConfirmation is called before the XCP was initialized
successfully, the function Xcp_<module>TxConfirmation shall raise the
development error XCP_E_NOT_INITIALIZED and return E_NOT_OK.()
[XCP841]
Caveats of Xcp_<module>TxConfirmation:
The call context is either on interrupt level (interrupt mode) or on task level
The Xcp module is initialized correctly.()
8.4.3
Xcp_<Lo>TriggerTransmit
[Xcp835]
Service name:
Syntax:
Service ID[hex]:
Sync/Async:
Reentrancy:
Parameters (in):
Xcp_<Lo>TriggerTransmit
Std_ReturnType Xcp_<Lo>TriggerTransmit(
PduIdType TxPduId,
PduInfoType* PduInfoPtr
)
0x41
Synchronous
Reentrant for different PduIds. Non reentrant for the same PduId.
TxPduId
ID of the SDU that is requested to be transmitted.
PduInfoPtr
Contains a pointer to a buffer (SduDataPtr) to where the SDU
30 of 65
- AUTOSAR confidential -
()
Note:
The callback function Xcp_<module>TriggerTransmit is called by the Bus
Interfaces, Ethernet Socket Adaptor or CDD and is implemented by the Xcp module.
[Xcp842]
If development error detection for the XCP module is enabled: if the function
Xcp_<module>TriggerTransmit is called before the XCP was initialized
successfully, the function Xcp_<module>TriggerTransmit shall raise the
development error XCP_E_NOT_INITIALIZED and return E_NOT_OK.()
[XCP843]
Caveats of Xcp_<module>TriggerTransmit:
The call context is either on interrupt level (interrupt mode) or on task level
The Xcp module is initialized correctly.()
8.4.4
Xcp_SetTransmissionMode
[Xcp844]
Service name:
Syntax:
Service ID[hex]:
Sync/Async:
Reentrancy:
Parameters (in):
Xcp_SetTransmissionMode
void Xcp_SetTransmissionMode(
NetworkHandleType Channel,
Xcp_TransmissionModeType Mode
)
0x05
Synchronous
Non Reentrant
Channel
The Network channel for the used bus communication
Mode
Enabled or disabled Transmission mode Parameters
None
Parameters
(inout):
Parameters (out): None
None
Return value:
This API is used to turn on and off of the TX capabilities of used communication
Description:
bus channel in XCP module.
31 of 65
- AUTOSAR confidential -
only
if
8.5
Scheduled functions
The functions are called directly by Basic Software Scheduler. The following
functions shall have no return value and no parameter. All functions shall be non
reentrant.
8.5.1
Xcp_MainFunction
[Xcp823]
Service name:
Syntax:
Service ID[hex]:
Timing:
Description:
Xcp_MainFunction
void Xcp_MainFunction(
void
)
0x04
FIXED_CYCLIC
Scheduled function of the XCP module
Expected Interfaces
In this chapter, all interfaces required from other modules are listed.
8.6.1
Mandatory Interfaces
API function
<UL_RxIndication>
Description
This API service of an upper layer BSW module <UL> (e.g. PduR, FrTp,
FrNm, Xcp) is called by the FlexRay Interface to indicate to this upper
layer BSW module that the PDU with index FrIf_RxPduId has been
received via the FlexRay Communication System.
32 of 65
- AUTOSAR confidential -
<User_RxIndication>
<User_TxConfirmation>
CanIf_Transmit
Dem_ReportErrorStatus
FrIf_Transmit
SoAdIf_Transmit
This API service of an upper layer BSW module <UL> (e.g. PduR, FrTp,
FrNm, Xcp) is called by the FlexRay Interface to confirm to this upper
layer BSW module that the PDU with index FrIf_TxPduId has been
transmitted via the FlexRay Communication System.
This service indicates a successful reception of a received Message to
the corresponding UL module. This service provides the syntax with a
PDU Info pointer.
This service confirms a previous successfully processed CAN transmit
request.
This service initiates a request for transmission of the CAN L-PDU
specified by the CanTxPduId and CAN related data in the L-PDU
structure.
Queues the reported events from the BSW modules (API is only used by
BSW modules). The interface has an asynchronous behavior, because
the processing of the event is done within the Dem main function.
Requests the sending of a PDU.
This service initiates a request for transmission of the L-PDU specified
by the SoAdSrcPduId. The corresponding socket has to be resolved by
the SoAdSrcPduId.
This call is used to mimic the call to an IF in AUTOSAR.
Development errors:
Invalid values of SoAdSrcPduId or SoAdSrcPduInfoPtr will be reported
to the development error tracer (SOAD_E_INVALID_TXPDUID or
SOAD_E_PARAM_POINTER).
8.6.2
Optional Interfaces
[Xcp832]
API function
Det_ReportError
GetCounterValue
GetElapsedValue
Description
Service to report development errors.
This service reads the current count value of a counter (returning either
the hardware timer ticks if counter is driven by hardware or the software
ticks when user drives counter).
This service gets the number of ticks between the current tick value and
a previously read tick value.
()
[Xcp833]
API function
FrIf_ReconfigLPdu
FrIf_DisableLPdu
Description
API can be used for buffer reconfiguration of the FlexRay CC
API can be used to disable the transmission or reception of LPdus
()
8.6.3
Configurable interfaces
In this chapter, all interfaces are listed where the target function could be configured.
The target function is usually a call-back function. The names of these kind of
interfaces is not fixed because they are configurable.
33 of 65
- AUTOSAR confidential -
Description
Requests the sending of a PDU via Complex Device Driver
API confirming the successful transmission of the PDU
This API service called by the AUTOSAR Cdd indicates a successful
reception of an L-PDU.
()
34 of 65
- AUTOSAR confidential -
Sequence diagrams
9.1
9.1.1
XCP on FlexRay
XcpOnFr :Xcp
FrIf :FrIf
Fr :Fr
<UL_TriggerTransmit>(PduIdType,
uint8**)
Fr_TransmitTxLSdu()
9.1.2
XcpOnFr :Xcp
FrIf :FrIf
<UL_RxIndication>(PduIdType, const
uint8*)
35 of 65
- AUTOSAR confidential -
9.2.1
XCP on CAN
XCPonCAN :Xcp
CanIf :CanIf
Can :Can
CanIf_Transmit(Std_ReturnType, PduIdType,
const PduInfoType*)
CanIf_Transmit()
9.2.2
XCPonCAN :Xcp
CanIf :CanIf
Can :Can
CanIf_TxConfirmation(PduIdType)
<CanIfUser_TxConfirmation>(PduIdType)
<CanIfUser_TxConfirmation>()
CanIf_TxConfirmation()
36 of 65
- AUTOSAR confidential -
9.2.3
XCPonCAN :Xcp
CanIf :CanIf
Can :Can
CanIf_RxIndication(Can_HwHandleType, Can_IdType,
uint8, const uint8*)
<CanIfUser_RxIndication>(PduIdType, const uint8**)
Copy Data()
Copy Data()
<CanIf_User_RxIndication>()
CanIf_RxIndication()
37 of 65
- AUTOSAR confidential -
XCP on Ethernet
9.3.1
XCPonEth :Xcp
SoAd :SoAd
<User_SoAdflRxIndication>()
38 of 65
- AUTOSAR confidential -
10
Configuration specification
In general, this chapter defines configuration parameters and their clustering into
containers. In order to support the specification Chapter 10.1 describes
fundamentals. It also specifies a template (table) you shall use for the parameter
specification. We intend to leave Chapter 10.1 in the specification to guarantee
comprehension.
Chapter 10.2 specifies the structure (containers) and the parameters of the module
XCP.
Chapter 10.3 specifies published information of the module XCP.
10.1 How to read this chapter
In addition to this section, it is highly recommended to read the documents:
-
The following is only a short survey of the topic and it will not replace the ECU
Configuration Specification document.
10.1.1 Configuration and configuration parameters
Configuration parameters define the variability of the generic part(s) of an
implementation of a module. This means that only generic or configurable module
implementation can be adapted to the environment (software/hardware) in use during
system and/or ECU configuration.
The configuration of parameters can be achieved at different times during the
software process: before compile time, before link time or after build time. In the
following, the term configuration class (of a parameter) shall be used in order to
refer to a specific configuration point in time.
10.1.2 Variants
Variants describe sets of configuration parameters. E.g., variant 1: only pre-compile
time configuration parameters; variant 2: mix of pre-compile- and post build timeconfiguration parameters. In one variant a parameter can only be of one
configuration class.
39 of 65
- AUTOSAR confidential -
Pre-compile time
Label
x
--
Label
x
--
L
M
--
10.2
Description
The configuration parameter shall be of configuration class Link time.
The configuration parameter shall never be of configuration class Link time.
Post Build
Description
The configuration parameter shall be of configuration class Pre-compile time.
The configuration parameter shall never be of configuration class Pre-compile time.
Link time
Label
Description
The configuration parameter shall be of configuration class Post Build and no specific
implementation is required.
Loadable - the configuration parameter shall be of configuration class Post Build and only
one configuration parameter set resides in the ECU.
Multiple - the configuration parameter shall be of configuration class Post Build and is
selected out of a set of multiple parameters by passing a dedicated pointer to the init
function of the module.
The configuration parameter shall never be of configuration class Post Build.
- AUTOSAR confidential -
10.2.1 Variants
VARIANT-POST-BUILD: All configuration parameters in container XcpGeneral shall
be configurable at pre-compile time. All other configuration parameters shall be
configurable at post-build-time.
Use case: Object code delivery, selectable configuration
VARIANT-PRE-COMPILE: All configuration parameters shall be configurable at precompile time.
Use case: Execution time optimizations
VARIANT-LINK-TIME: It shall include all configuration options of the variant
VARIANT-PRE-COMPILE. Additionally all parameters that are marked as link-time
configurable with VARIANT-LINK-TIME shall be configurable at link time for
example by linking a special configured parameter object file.
41 of 65
- AUTOSAR confidential -
Module Name
Module Description
Included Containers
Container Name
XcpConfig
XcpGeneral
Xcp :EcucModuleDef
lowerMultiplicity = 0
upperMultiplicity = 1
+container
XcpConfig :EcucParamConfContainerDef
+subContainer
multipleConfigurationContainer = true
XcpPdu :
EcucChoiceContainerDef
lowerMultiplicity = 1
upperMultiplicity = *
XcpEventChannel :
+subContainer EcucParamConfContainerDef
lowerMultiplicity = 1
upperMultiplicity = *
XcpDaqList :
EcucParamConfContainerDef
XcpOdt :
+subContainer EcucParamConfContainerDef
lowerMultiplicity = 1
upperMultiplicity = *
lowerMultiplicity = 1
upperMultiplicity = *
+subContainer
XcpDto :
+subContainer EcucParamConfContainerDef
lowerMultiplicity = 0
upperMultiplicity = *
+subContainer
XcpDemEventParameterRefs :
EcucParamConfContainerDef
upperMultiplicity = 1
lowerMultiplicity = 0
+reference
XCP_E_INIT_FAILED :
EcucSymbolicNameReferenceDef
lowerMultiplicity = 0
upperMultiplicity = 1
+destination
DemEventParameter :
EcucParamConfContainerDef
upperMultiplicity = 65535
lowerMultiplicity = 1
(from Dem)
10.2.3 XcpGeneral
SWS Item
Container Name
Description
XCP001_Conf :
XcpGeneral
This container contains the general configuration
parameters of the XCP.
Configuration Parameters
SWS Item
Name
Description
Multiplicity
Type
XCP164_Conf :
XcpDaqConfigType
Sets the DAQ_CONFIG_TYPE bit within the DAQ_PROPERTIES
parameter to "static" or to "dynamic". If DAQ_STATIC is selected,
the DAQ_CONFIG_TYPE bit is set to "0". If DAQ_DYNAMIC is
selected, the DAQ_CONFIG_TYPE bit is set to "1".
1
EcucEnumerationParamDef
42 of 65
- AUTOSAR confidential -
DAQ_DYNAMIC
DAQ_STATIC
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Pre-compile time
Link time
Post-build time
scope: ECU
dependency: If DAQ_CONFIG_TYPE = dynamic, MAX_DAQ equals
MIN_DAQ+DAQ_COUNT.
XCP012_Conf :
XcpDaqCount {XCP_DAQ_COUNT}
Indicates the number of DAQ lists for dynamic
configuration.
1
EcucIntegerParamDef
0 .. 65535
-X VARIANT-PRE-COMPILE
Pre-compile time
-Link time
-Post-build time
scope: ECU
dependency: This parameter is available only if
XcpDaqConfigType is set to "1" i.e DAQ_DYNAMIC
XCP003_Conf :
XcpDevErrorDetect {XCP_DEV_ERROR_DETECT}
Switches the Development Error Detection and Notification on
or off. TRUE: Development Error Detection and Notificiation on
FALSE: Development Error Detection and Notification off
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP170_Conf :
XcpIdentificationFieldType {XCP_IDENTIFICATION_FIELD_TYPE}
Type of Identification Field the slave will use when transferring DAQ
Packets to the master. The master has to use the same Type of
Identification Field when transferring STIM Packets to the slave.
1
EcucEnumerationParamDef
ABSOLUTE
Absolute ODT
number
RELATIVE_BYTE
Relative ODT
number,
absolute DAQ
list number
(BYTE)
RELATIVE_WORD
Relative ODT
number,
absolute DAQ
list number
43 of 65
- AUTOSAR confidential -
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Pre-compile time
Link time
Post-build time
scope: Module
(WORD)
Relative ODT
number,
absolute DAQ
list number
(WORD,
aligned).
X All Variants
---
XCP014_Conf :
XcpMainFunctionPeriod {XCP_MAIN_FUNCTION_PERIOD}
The XCP does not require this information but the BSW
scheduler, which invokes the main function, needs it in order to
plan its tasks.
1
EcucFloatParamDef
0 .. INF
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP004_Conf :
XcpMaxCto {XCP_MAX_CTO}
MAX_CTO shows the maximum length of a CTO
packet in bytes.
1
EcucIntegerParamDef
8 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP005_Conf :
XcpMaxDto {XCP_MAX_DTO}
MAX_DTO shows the maximum length of a DTO
packet in bytes.
1
EcucIntegerParamDef
8 .. 65535
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP011_Conf :
XcpMaxEventChannel {XCP_MAX_EVENT_CHANNEL}
-1
44 of 65
- AUTOSAR confidential -
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
EcucIntegerParamDef
0 .. 65535
-Pre-compile time
Link time
Post-build time
scope: ECU
X
---
All Variants
XCP013_Conf :
XcpMinDaq {XCP_MIN_DAQ}
Indicates the number of predefined, read only DAQ
lists on the XCP slave.
1
EcucIntegerParamDef
0 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
XCP054_Conf :
XcpOdtCount {XCP_ODT_COUNT}
This parameter indicates the amount of ODTs of a
DAQ list using dynamic DAQ list configuration.
1
EcucIntegerParamDef
0 .. 252
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
dependency: This parameter is available only if
XcpDaqConfigType is set to "1" i.e DAQ_DYNAMIC
XCP059_Conf :
XcpOdtEntriesCount {XCP_ODT_ENTRIES_COUNT}
Indicates the amount of entries into an ODT using dynamic
DAQ list configuration.
1
EcucIntegerParamDef
0 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
dependency: This parameter is available only if
XcpDaqConfigType is set to "1" i.e DAQ_DYNAMIC
XCP177_Conf :
XcpOdtEntrySizeDaq {XCP_ODT_ENTRY_SIZE_DAQ}
Indicates the size of an element described by an ODT entry to
the DaqListType for a DAQ.
1
45 of 65
- AUTOSAR confidential -
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Default value
ConfigurationClass
Scope / Dependency
SWS Item
EcucIntegerParamDef
0 .. 255
-Pre-compile time
Link time
Post-build time
scope: ECU
X
---
All Variants
XCP178_Conf :
XcpOdtEntrySizeStim {XCP_ODT_ENTRY_SIZE_STIM}
Indicates the size of an element described by an ODT entry to
the DaqListType for a stim.
1
EcucIntegerParamDef
0 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
XCP006_Conf :
XcpOnCanEnabled {XCP_ON_CAN_ENABLED}
Enabling of XCPonCAN functionality
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP009_Conf :
XcpOnCddEnabled {XCP_ON_CDD_ENABLED}
Enabling of XCPonCdd functionality
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP008_Conf :
XcpOnEthernetEnabled {XCP_ON_ETHERNET_ENABLED}
Enabling of XCPonEthernet functionality
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP007_Conf :
46 of 65
- AUTOSAR confidential -
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
XcpOnFlexRayEnabled {XCP_ON_FLEXRAY_ENABLED}
Enabling of XCPonFlexRay functionality
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP169_Conf :
XcpPrescalerSupported {XCP_PRESCALER_SUPPORTED}
This parameter enables and disables the support for Prescaler
support. True is Enabled, False is disabled
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP176_Conf :
XcpSuppressTxSupport {XCP_SUPPRESS_TX_SUPPORT}
Switches the support of suppressing transmission of PDUs per
communication channel on or off. TRUE: Suppressing of TxPDUs
supported FALSE: Suppressing of TxPDUs not supported
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP167_Conf :
XcpTimestampTicks {XCP_TIMESTAMP_TICKS}
This parameter defines the timestamp that will increment
based TIMESTAMP_TICKS per unit and wrap around if an
overflow occurs.
1
EcucIntegerParamDef
0 .. 65535
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP166_Conf :
XcpTimestampType {XCP_TIMESTAMP_TYPE}
This parameter indicates the number of bytes used for the
timestamp field. In case No_TIME_STAMP is selected the
timestamp field is not available.
1
EcucEnumerationParamDef
47 of 65
- AUTOSAR confidential -
FOUR_BYTE
NO_TIME_STAMP
ONE_BYTE
TWO_BYTE
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Default value
ConfigurationClass
Scope / Dependency
Pre-compile time
Link time
Post-build time
scope: Module
XCP168_Conf :
XcpTimestampUnit {XCP_TIMESTAMP_UNIT}
This parameter indicates the resolution of the data acquisition clock of
the slave when transferring data to master.
1
EcucEnumerationParamDef
TIMESTAMP_UNIT_100MS
Unit is 100
millisecond.
TIMESTAMP_UNIT_100NS
Unit is 100
nanosecond.
TIMESTAMP_UNIT_100PS
Unit is 100
picosecond.
TIMESTAMP_UNIT_100US
Unit is 100
microsecond.
TIMESTAMP_UNIT_10MS
Unit is 10 millisecond.
TIMESTAMP_UNIT_10NS
Unit is 10
nanosecond.
TIMESTAMP_UNIT_10PS
Unit is 10 picosecond.
TIMESTAMP_UNIT_10US
Unit is 10
microsecond.
TIMESTAMP_UNIT_1MS
Unit is 1 millisecond.
TIMESTAMP_UNIT_1NS
Unit is 1 nonasecond.
TIMESTAMP_UNIT_1PS
Unit is 1 picosecond.
TIMESTAMP_UNIT_1S
Unit is 1 second.
TIMESTAMP_UNIT_1US
Unit is 1 microsecond.
X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP002_Conf :
XcpVersionInfoApi {XCP_VERSION_INFO_API}
Enables/disables the existence of the XCP_GetVersionInfo()
API service. TRUE: XCP_GetVersionInfo() API service exists
FALSE: XCP_GetVersionInfo() API service does not exist
1
EcucBooleanParamDef
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
48 of 65
- AUTOSAR confidential -
XCP162_Conf :
XcpCounterRef {XCP_COUNTER_REF}
This parameter contains a reference to the counter,
which is used by XCP.
1
Reference to [ OsCounter ]
X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
No Included Containers
49 of 65
- AUTOSAR confidential -
Xcp :EcucModuleDef
lowerMultiplicity = 0
upperMultiplicity = 1
+container
XcpGeneral :
EcucParamConfContainerDef
XcpVersionInfoApi :
+parameter
EcucBooleanParamDef
XcpTimestampTicks :
EcucIntegerParamDef
XcpDevErrorDetect : +parameter
EcucBooleanParamDef
min = 0
max = 65535
lowerMultiplicity = 1
upperMultiplicity = 1
+parameter
XcpMaxDto :
EcucIntegerParamDef
XcpMaxCto :
EcucIntegerParamDef
min = 8
max = 65535
+parameter
XcpTimestampType :
EcucEnumerationParamDef
+parameter
+literal
NO_TIME_STAMP :
EcucEnumerationLiteralDef
+literal
ONE_BYTE :
EcucEnumerationLiteralDef
+literal
TWO_BYTE :
EcucEnumerationLiteralDef
+literal
FOUR_BYTE :
EcucEnumerationLiteralDef
lowerMultiplicity = 1
upperMultiplicity = 1
min = 8
max = 255
XcpOnCanEnabled : +parameter
EcucBooleanParamDef
+parameter
XcpOnFlexRayEnabled :
+parameter
EcucBooleanParamDef
XcpOnEthernetEnabled : +parameter
EcucBooleanParamDef
+parameter
XcpOnCddEnabled :
EcucBooleanParamDef
XcpDaqCount :
EcucIntegerParamDef +parameter
min = 0
max = 65535
XcpMaxEventChannel :
+parameter
EcucIntegerParamDef
min = 0
max = 65535
XcpTimestampUnit :
EcucEnumerationParamDef
+literal TIMESTAMP_UNIT_1NS :
EcucEnumerationLiteralDef
lowerMultiplicity = 1
upperMultiplicity = 1
XcpMinDaq :
+parameter
EcucIntegerParamDef
min = 0
max = 255
+literal
TIMESTAMP_UNIT_100NS :
+literal EcucEnumerationLiteralDef
XcpMainFunctionPeriod :
EcucFloatParamDef
min = 0
max = INF
DAQ_STATIC :EcucEnumerationLiteralDef
TIMESTAMP_UNIT_10NS :
EcucEnumerationLiteralDef
+parameter
+literal TIMESTAMP_UNIT_1US :
EcucEnumerationLiteralDef
+literal
XcpDaqConfigType :
EcucEnumerationParamDef +parameter
+literal
DAQ_DYNAMIC :EcucEnumerationLiteralDef
OsCounter :
EcucParamConfContainerDef +destination
TIMESTAMP_UNIT_10US :
+literal EcucEnumerationLiteralDef
lowerMultiplicity = 1
upperMultiplicity = 1
XcpCounterRef :
EcucReferenceDef
TIMESTAMP_UNIT_100US :
+literal EcucEnumerationLiteralDef
+reference
+parameter
+literal TIMESTAMP_UNIT_1MS :
EcucEnumerationLiteralDef
lowerMultiplicity = 0
upperMultiplicity = *
+literal TIMESTAMP_UNIT_10MS :
EcucEnumerationLiteralDef
(from OS)
XcpPrescalerSupported :
EcucBooleanParamDef +parameter
TIMESTAMP_UNIT_100MS :
+literal EcucEnumerationLiteralDef
lowerMultiplicity = 1
upperMultiplicity = 1
ABSOLUTE :
EcucEnumerationLiteralDef
+literal
RELATIVE_BYTE :
+literal
EcucEnumerationLiteralDef
RELATIVE_WORD :
EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_1PS :
EcucEnumerationLiteralDef
XcpIdentificationFieldType :
EcucEnumerationParamDef
+literal
lowerMultiplicity = 1
upperMultiplicity = 1
TIMESTAMP_UNIT_100PS :
+literal EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_1S :
EcucEnumerationLiteralDef
+literal
RELATIVE_WORD_ALIGNED : +literal
EcucEnumerationLiteralDef
TIMESTAMP_UNIT_10PS :
EcucEnumerationLiteralDef
+parameter
+parameter
XcpSuppressTxSupport :
EcucBooleanParamDef
lowerMultiplicity = 1
upperMultiplicity = 1
+parameter XcpOdtEntriesCount :
EcucIntegerParamDef
min = 0
max = 255
XcpOdtCount :
+parameter EcucIntegerParamDef
min = 0
max = 252
XcpOdtEntrySizeDaq :
+parameter EcucIntegerParamDef
XcpOdtEntrySizeStim :
+parameter EcucIntegerParamDef
min = 0
max = 255
min = 0
max = 255
50 of 65
- AUTOSAR confidential -
10.2.4 XcpConfig
SWS Item
Container Name
Description
Configuration Parameters
XCP020_Conf :
XcpConfig [Multi Config Container]
--
Included Containers
Container Name
XcpDaqList
51 of 65
- AUTOSAR confidential -
+container
XcpConfig :EcucParamConfContainerDef
multipleConfigurationContainer = true
+subContainer
XcpDaqList :
EcucParamConfContainerDef
+parameter
lowerMultiplicity = 1
upperMultiplicity = *
XcpDaqListNumber :
EcucIntegerParamDef
min = 0
max = 65534
symbolicNameValue = true
+literal
XcpDaqListType :
EcucEnumerationParamDef
DAQ :EcucEnumerationLiteralDef
+literal
+parameter
DAQ_STIM :EcucEnumerationLiteralDef
+literal
STIM :EcucEnumerationLiteralDef
XcpMaxOdt :
+parameter EcucIntegerParamDef
min = 0
max = 252
XcpOdt :
+subContainer EcucParamConfContainerDef
lowerMultiplicity = 1
upperMultiplicity = *
XcpDto :
EcucParamConfContainerDef
lowerMultiplicity = 0
upperMultiplicity = *
+parameter
XcpDtoPid :
EcucIntegerParamDef
symbolicNameValue = true
min = 0
max = 251
+subContainer
XcpDto2PduMapping :
EcucChoiceReferenceDef
XcpRxPdu :
+destination EcucParamConfContainerDef
lowerMultiplicity = 0
upperMultiplicity = 1
+reference
+destination
XcpTxPdu :
EcucParamConfContainerDef
lowerMultiplicity = 0
upperMultiplicity = 1
XcpMaxOdtEntries :
+parameter EcucIntegerParamDef
min = 0
max = 255
10.2.5 XcpDaqList
SWS Item
Container Name
Description
Configuration Parameters
SWS Item
Name
XCP050_Conf :
XcpDaqList{XCP_DAQ_LIST}
This container contains the configuration of the DAQs.
XCP051_Conf :
XcpDaqListNumber {XCP_DAQ_NUMBER}
52 of 65
- AUTOSAR confidential -
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
XCP053_Conf :
XcpMaxOdt {XCP_MAX_ODT}
MAX_ODT indicates the maximum amount of ODTs
in this DAQ list (STATIC configuration)
1
EcucIntegerParamDef
0 .. 252
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
dependency: only available if XcpDaqConfigType is
"DAQ_STATIC" (bit set to '0')
XCP058_Conf :
XcpMaxOdtEntries {XCP_MAX_ODT_ENTRIES}
This parameter indicates the maximum amount of entries in
an ODT of this DAQ list (STATIC configuration).
1
EcucIntegerParamDef
0 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
dependency: only available if XcpDaqConfigType is
"DAQ_STATIC" (bit set to '0')
53 of 65
- AUTOSAR confidential -
10.2.6 XcpDto
SWS Item
Container Name
Description
XCP065_Conf :
XcpDto
This container collects data transfer object specific
parameters for the DAQ list.
Configuration Parameters
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
XCP066_Conf :
XcpDtoPid
Packet identifier (PID) of the DTO that identifies the
ODT the content of the DTO.
1
EcucIntegerParamDef (Symbolic Name generated for
this parameter)
0 .. 251
-X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
ConfigurationClass
XCP067_Conf :
XcpDto2PduMapping
This reference specifies the mapping of the DTO to
the PDUs from the lower-layer interfaces (CanIf, FrIf,
SoAd and Cdd). A reference to a XcpRxPdu is only
feasible if the the DaqListType is DAQ_STIM. A
reference to a XcpTxPdu is only feasible if the
DaqListType is DAQ.
1
Choice reference to [ XcpRxPdu , XcpTxPdu ]
X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
No Included Containers
10.2.7 XcpOdt
SWS Item
Container Name
Description
XCP055_Conf :
XcpOdt{XCP_ODT}
This container contains ODT-specific parameter for the DAQ
list.
54 of 65
- AUTOSAR confidential -
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
ConfigurationClass
XCP060_Conf :
XcpOdtEntryMaxSize
This parameter indicates the upper limit for the size of the
element described by an ODT entry. Depending on the
DaqListType this ODT belongs to it describes the limit for a DAQ
(MAX_ODT_ENTRY_SIZE_DAQ) or a STIM
(MAX_ODT_ENTRY_SIZE_STIM).
1
EcucIntegerParamDef
0 .. 254
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
XCP057_Conf :
XcpOdtNumber {XCP_ODT_NUMBER}
Index number of this ODT within the DAQ list.
1
EcucIntegerParamDef (Symbolic Name generated for
this parameter)
0 .. 251
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
XCP056_Conf :
XcpOdt2DtoMapping
This reference maps the ODT to the according DTO
in which it will be transmitted.
1
Reference to [ XcpDto ]
X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
Included Containers
Container
Multiplicity Scope / Dependency
Name
XcpOdtEntr
This container collects all configuration parameters that comprise an ODT
1..*
y
entry.
10.2.8 XcpOdtEntry
SWS Item
Container Name
Description
XCP061_Conf :
XcpOdtEntry{XCP_ODT_ENTRY}
This container collects all configuration parameters that comprise an ODT
55 of 65
- AUTOSAR confidential -
SWS Item
Name
Description
Multiplicity
Type
Default value
maxLength
minLength
regularExpression
ConfigurationClass
Scope / Dependency
XCP064_Conf :
XcpOdtEntryLength
Length of the referenced memory area that is
referenced by the ODT entry.
1
EcucIntegerParamDef
0 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
XCP062_Conf :
XcpOdtEntryNumber {XCP_ODT_ENTRY_NUMBER}
Index number of the ODT entry
1
EcucIntegerParamDef
0 .. 254
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: ECU
No Included Containers
10.2.9 XcpDemEventParameterRefs
SWS Item
Container Name
Description
Xcp160_Conf :
XcpDemEventParameterRefs
Container for the references to DemEventParameter elements which
shall be invoked using the API Dem_ReportErrorStatus API in case the
56 of 65
- AUTOSAR confidential -
Multiplicity
Type
ConfigurationClass
Xcp161_Conf :
XCP_E_INIT_FAILED
Reference to the DemEventParameter which shall be
issued when the error "Initialization of XCP failed" has
occured.
0..1
Reference to [ DemEventParameter ]
X VARIANT-PRE-COMPILE
Pre-compile time
-Link time
X VARIANT-POST-BUILD
Post-build time
Scope / Dependency
No Included Containers
57 of 65
- AUTOSAR confidential -
+container
XcpDaqList :
+subContainer EcucParamConfContainerDef
XcpConfig :EcucParamConfContainerDef
multipleConfigurationContainer = true
lowerMultiplicity = 1
upperMultiplicity = *
+destination
+subContainer
XcpEventChannel :
EcucParamConfContainerDef
+reference
lowerMultiplicity = 1
upperMultiplicity = *
+parameter
XcpEventChannelTriggeredDaqListRef :
EcucReferenceDef
lowerMultiplicity = 1
upperMultiplicity = *
XcpEventChannelNumber :
EcucIntegerParamDef
min = 0
max = 65534
symbolicNameValue = true
+parameter
+parameter
XcpEventChannelMaxDaqList :
EcucIntegerParamDef
min = 0
max = 255
XcpEventChannelPriority :
EcucIntegerParamDef
min = 0
max = 255
XcpEventChannelConsistency :
EcucEnumerationParamDef
+parameter
lowerMultiplicity = 1
upperMultiplicity = 1
defaultValue = ODT
XcpEventChannelType :
EcucEnumerationParamDef
+parameter
+literal
ODT :
EcucEnumerationLiteralDef
+literal
DAQ :
EcucEnumerationLiteralDef
+literal
EVENT :
EcucEnumerationLiteralDef
+literal
DAQ :
EcucEnumerationLiteralDef
+literal
STIM :
EcucEnumerationLiteralDef
+literal
DAQ_STIM :
EcucEnumerationLiteralDef
lowerMultiplicity = 1
upperMultiplicity = 1
defaultValue = DAQ
XcpEventChannelTimeCycle :
EcucIntegerParamDef
+parameter
min = 0
max = 255
lowerMultiplicity = 1
upperMultiplicity = 1
XcpEventChannelTimeUnit :
EcucEnumerationParamDef
+literal TIMESTAMP_UNIT_1NS :
EcucEnumerationLiteralDef
lowerMultiplicity = 0
upperMultiplicity = 1
+literal TIMESTAMP_UNIT_10NS :
EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_100NS :
EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_1US :
EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_10US :
EcucEnumerationLiteralDef
TIMESTAMP_UNIT_100US :
+literal EcucEnumerationLiteralDef
+parameter
+literal TIMESTAMP_UNIT_1MS :
EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_10MS :
EcucEnumerationLiteralDef
TIMESTAMP_UNIT_100MS :
+literal EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_1PS :
EcucEnumerationLiteralDef
+literal TIMESTAMP_UNIT_10PS :
EcucEnumerationLiteralDef
TIMESTAMP_UNIT_100PS :
+literal EcucEnumerationLiteralDef
+literal
TIMESTAMP_UNIT_1S :
EcucEnumerationLiteralDef
58 of 65
- AUTOSAR confidential -
10.2.10 XcpEventChannel
XCP150_Conf :
SWS Item
XcpEventChannel{XCP_EVENT_CHANNEL}
Container Name
This container contains the configuration of event channels on the XCP slave.
Description
Configuration Parameters
SWS Item
Name
Description
Multiplicity
Type
Range
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
XCP171_Conf :
XcpEventChannelConsistency
{XCP_EVENT_CHANNEL_CONSISTENCY}
Type of consistency used by event channel
1
EcucEnumerationParamDef
DAQ
Consistency on DAQ list level
EVENT
Consistency on Event Channel Level
ODT
Consistency on ODT level (default
value).
(default)
X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP153_Conf :
XcpEventChannelMaxDaqList {XCP_MAX_DAQ_LIST}
Maximum amount of DAQ lists that are handled by this event
channel.
1
EcucIntegerParamDef
0 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
XCP152_Conf :
XcpEventChannelNumber {XCP_EVENT_CHANNEL_NUMBER}
Index number of the event channel.
1
EcucIntegerParamDef (Symbolic Name generated for this
parameter)
0 .. 65534
-X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
SWS Item
Name
Description
XCP154_Conf :
XcpEventChannelPriority
Priority of the event channel
59 of 65
- AUTOSAR confidential -
1
EcucIntegerParamDef
0 .. 255
-Pre-compile time
Link time
Post-build time
X All Variants
---
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
Range
ConfigurationClass
Scope / Dependency
XCP173_Conf :
XcpEventChannelTimeCycle
{XCP_EVENT_CHANNEL_TIME_CYCLE}
The event channel time cycle indicates which sampling period is used
to process this event channel. A value of 0 means 'Not cyclic'.
1
EcucIntegerParamDef
0 .. 255
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP174_Conf :
XcpEventChannelTimeUnit {XCP_EVENT_CHANNEL_TIME_UNIT}
This configuration parameter indicates the unit of the event channel
time cycle.
0..1
EcucEnumerationParamDef
TIMESTAMP_UNIT_100MS
Unit is 100
millisecond.
TIMESTAMP_UNIT_100NS
Unit is 100
nanosecond.
TIMESTAMP_UNIT_100PS
Unit is 100
picosecond.
TIMESTAMP_UNIT_100US
Unit is 100
microsecond.
TIMESTAMP_UNIT_10MS
Unit is 10 millisecond.
TIMESTAMP_UNIT_10NS
Unit is 10
nanosecond.
TIMESTAMP_UNIT_10PS
Unit is 10 picosecond.
TIMESTAMP_UNIT_10US
Unit is 10
microsecond.
TIMESTAMP_UNIT_1MS
Unit is 1 millisecond.
TIMESTAMP_UNIT_1NS
Unit is 1 nonasecond.
TIMESTAMP_UNIT_1PS
Unit is 1 picosecond.
TIMESTAMP_UNIT_1S
Unit is 1 second.
TIMESTAMP_UNIT_1US
Unit is 1
microsecond.
X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
dependency: Dependent on the Parameter EventChannelTimeCycle.
When this parameter is set to 0, the entire event channel time unit
parameter shall be ignored.
60 of 65
- AUTOSAR confidential -
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
ConfigurationClass
XCP172_Conf :
XcpEventChannelType {XCP_EVENT_CHANNEL_TYPE}
This configuration parameter indicates what kind of DAQ list can
be allocated to this event channel.
1
EcucEnumerationParamDef
DAQ
only DAQ supported (default
value).
(default)
DAQ_STIM
Both DAQ and STIM supported
(Simultaneously).
STIM
only STIM supported
X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Module
XCP151_Conf :
XcpEventChannelTriggeredDaqListRef
References all DAQ lists that are trigged by this event channel.
1..*
Reference to [ XcpDaqList ]
X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
No Included Containers
10.2.11 XcpPdu
SWS Item
Choice container Name
Description
Container Choices
Container
Multiplicity
Name
XcpRxPd
0..1
u
XcpTxPdu
0..1
XCP100_Conf :
XcpPdu{XCP_PDU}
Contains PDU information. A PDU may be either a transmission
PDU or a reception PDU.
Scope / Dependency
This container specifies received PDUs.
This container specifies transmission PDUs.
61 of 65
- AUTOSAR confidential -
+container
XcpConfig :EcucParamConfContainerDef
multipleConfigurationContainer = true
+subContainer
XcpTxPdu :
EcucParamConfContainerDef
XcpPdu :
EcucChoiceContainerDef
lowerMultiplicity = 1
upperMultiplicity = *
+choice
+parameter
symbolicNameValue = true
min = 0
max = 65535
lowerMultiplicity = 0
upperMultiplicity = 1
+reference
XcpRxPdu :
EcucParamConfContainerDef
XcpTxPduId :
EcucIntegerParamDef
+reference
XcpTxPduRef :
EcucReferenceDef
+destination
Pdu :
EcucParamConfContainerDef
+destination
XcpRxPduRef :
EcucReferenceDef
upperMultiplicity = *
lowerMultiplicity = 0
(from EcucPdu)
+choice
lowerMultiplicity = 0
upperMultiplicity = 1
+parameter
XcpRxPduId :
EcucIntegerParamDef
symbolicNameValue = true
min = 0
max = 65535
10.2.12 XcpRxPdu
SWS Item
Container Name
Description
Configuration Parameters
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
XCP105_Conf :
XcpRxPdu{XCP_RX_PDU}
This container specifies received PDUs.
XCP106_Conf :
XcpRxPduId {XCP_RX_PDU_ID}
ID of the PDU that will be received via a
Xcp_<module>RxIndication.
1
EcucIntegerParamDef (Symbolic Name generated for this
parameter)
0 .. 65535
-X All Variants
Pre-compile time
-Link time
-Post-build time
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
ConfigurationClass
Scope / Dependency
XCP107_Conf :
XcpRxPduRef {XCP_PDU_REF}
-1
Reference to [ Pdu ]
X VARIANT-PRE-COMPILE
Pre-compile time
-Link time
X VARIANT-POST-BUILD
Post-build time
scope: ECU
62 of 65
- AUTOSAR confidential -
10.2.13 XcpTxPdu
SWS Item
Container Name
Description
Configuration Parameters
SWS Item
Name
Description
Multiplicity
Type
Range
Default value
ConfigurationClass
Scope / Dependency
SWS Item
Name
Description
Multiplicity
Type
ConfigurationClass
Scope / Dependency
XCP101_Conf :
XcpTxPdu{XCP_TX_PDU}
This container specifies transmission PDUs.
XCP103_Conf :
XcpTxPduId {XCP_TX_PDU_ID}
The PDU identifier, which has to be used by the lower
layer BSW module for TxConfirmations or
TriggerTransmits.
1
EcucIntegerParamDef (Symbolic Name generated for
this parameter)
0 .. 65535
-X All Variants
Pre-compile time
-Link time
-Post-build time
scope: Xcp and PduR/FrNm/FrTp
XCP104_Conf :
XcpTxPduRef {XCP_PDU_REF}
Reference to the external PDU definition.
1
Reference to [ Pdu ]
X VARIANT-PRE-COMPILE
Pre-compile time
-Link time
X VARIANT-POST-BUILD
Post-build time
scope: ECU
No Included Containers
63 of 65
- AUTOSAR confidential -
Published Information
64 of 65
- AUTOSAR confidential -
11
65 of 65
- AUTOSAR confidential -