AUTOSAR TPS DiagnosticExtractTemplate
AUTOSAR TPS DiagnosticExtractTemplate
AUTOSAR CP R20-11
Disclaimer
This work (specification and/or software implementation) and the material contained in
it, as released by AUTOSAR, is for the purpose of information only. AUTOSAR and the
companies that have contributed to it shall not be liable for any use of the work.
The material contained in this work is protected by copyright and other types of intel-
lectual property rights. The commercial exploitation of the material contained in this
work requires a license to such intellectual property rights.
This work may be utilized or reproduced without any modification, in any form or by
any means, for informational purposes only. For any other purpose, no part of the work
may be utilized or reproduced, in any form or by any means, without permission in
writing from the publisher.
The work has been developed for automotive applications only. It has neither been
developed, nor tested for non-automotive applications.
The word AUTOSAR and the AUTOSAR logo are registered trademarks.
Table of Contents
1 Introduction 11
1.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.1 OEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.1.2 Application Developer . . . . . . . . . . . . . . . . . . . . . . 13
1.1.3 ECU-Supplier . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.1.4 Exchanging of Files . . . . . . . . . . . . . . . . . . . . . . . 14
1.1.5 Relationship to software-component Service Needs . . . . . 15
1.1.6 Recommendation and Hints . . . . . . . . . . . . . . . . . . 16
1.1.7 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3 Binding Times of Constraints . . . . . . . . . . . . . . . . . . . . . . . 18
1.4 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.5 Document Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.6 Requirements Tracing . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2 Use Cases 27
2.1 Use cases for diagnostic data exchange . . . . . . . . . . . . . . . . . 27
2.2 Configuration of DCM . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3 Configuration of DEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4 Configuration of the Fim . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.4.1 Model Function Inhibition . . . . . . . . . . . . . . . . . . . . 30
2.4.2 Model Fim configuration before Dem exists . . . . . . . . . . 31
2.5 Configuration of J1939 Diagnostics . . . . . . . . . . . . . . . . . . . . 32
2.5.1 Modeling of J1939 Diagnostic Aspects independent of the
Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.5.2 J1939 Diagnostic Content modeled in the Diagnostic Extract 32
3 Conceptual Background 33
3.1 Definition of relevant Diagnostic Elements . . . . . . . . . . . . . . . . 33
3.2 Abstraction from EcuC Level . . . . . . . . . . . . . . . . . . . . . . . . 33
3.3 Independence of Definition . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3.1 Use of atpSplitable enabling separation of elements
over several physical files . . . . . . . . . . . . . . . . . . . . 34
3.3.2 Use of self-contained mapping elements . . . . . . . . . . . 34
4 Common Meta Model Elements 35
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.2 Data Identifier vs. Routine vs. Data Element . . . . . . . . . . . . . . . 35
4.2.1 Usage of SwDataDefProps . . . . . . . . . . . . . . . . . . . 42
4.2.2 Definition of Arrays . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2.3 Definition of textual Strings . . . . . . . . . . . . . . . . . . . 48
4.3 Textual Documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.4 Diagnostic Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.5 Diagnostic Protocol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
References
[1] Specification of RTE Software
AUTOSAR_SWS_RTE
[2] Layered Software Architecture
AUTOSAR_EXP_LayeredSoftwareArchitecture
[3] Specification of ECU Configuration
AUTOSAR_TPS_ECUConfiguration
[4] ASAM MCD 2D ODX
http://www.asam.net
ASAM MCD-2D ODX v2.2.0.pdf
[5] XML Schema Production Rules
AUTOSAR_TPS_XMLSchemaProductionRules
[6] System Template
AUTOSAR_TPS_SystemTemplate
[7] Specification of ECU Configuration Parameters (XML)
AUTOSAR_MOD_ECUConfigurationParameters
[8] Software Component Template
AUTOSAR_TPS_SoftwareComponentTemplate
[9] Basic Software Module Description Template
AUTOSAR_TPS_BSWModuleDescriptionTemplate
[10] Specification of Diagnostic Communication Manager
AUTOSAR_SWS_DiagnosticCommunicationManager
[11] Specification of Diagnostic Event Manager
AUTOSAR_SWS_DiagnosticEventManager
[12] Standardization Template
AUTOSAR_TPS_StandardizationTemplate
[13] Requirements on Diagnostic Extract Template
AUTOSAR_RS_DiagnosticExtractTemplate
[14] Specification of Function Inhibition Manager
AUTOSAR_SWS_FunctionInhibitionManager
[15] SAE J1939 Top Level Document
[16] Unified diagnostic services (UDS) – Part 1: Specification and requirements (Re-
lease 2006-12)
http://www.iso.org
[17] Road vehicles – End-of-life activation of on-board pyrotechnic devices – Part 2:
Communication requirements
http://www.iso.org
[18] Road vehicles – Communication between vehicle and external equipment for
emission-related diagnostic – Part 5: Emission-related diagnostic services.
http://www.iso.org
[19] Road vehicles – Implementation of World-Wide Harmonized On-Board Diagnos-
tics (WWH-OBD) communication requirements – Part 3: Common message dic-
tionary
http://www.iso.org
[20] Security Extract Template
AUTOSAR_TPS_SecurityExtractTemplate
[21] Specification of Intrusion Detection System Manager
AUTOSAR_SWS_IntrusionDetectionSystemManager
[22] SAE J1939-73 Application Layer – Diagnostics
[23] Software Process Engineering Meta-Model Specification
http://www.omg.org/spec/SPEM/2.0/
[24] Generic Structure Template
AUTOSAR_TPS_GenericStructureTemplate
1 Introduction
1.1 Overview
The distributed nature of an AUTOSAR ECU development requires an optimized cap-
turing of information. In particular, diagnostic information (i.e. DEM and DCM configu-
ration) shall be captured only once by the person with the best knowledge and therefore
being able to take responsibility better than one centralized individual.
In the configuration approach before the advent of the DiagnosticExtract, the
Basic Software Modules DCM and DEM are entirely configured centrally. During in-
tegration, all SW-Cs above the RTE [1] (Application Software) introduce ports to be
connected to the BSW modules [2]. Additionally, SW-Cs express needs which shall be
fulfilled by the BSW.
The market shows a high demand for transferring diagnostic demands of the OEM-
specific configuration process to their tier-1 suppliers.
In the past, due to the absence of integral options, many file formats like ODX or
EcuC [3] are often used. But neither ODX nor EcuC is well suited to transfer this
information.
For example, ODX [4] lacks in fault memory details and EcuC (which was never de-
signed for becoming the vehicle for data exchange between different organizations)
has a very generic nature that renders the enforcement of a strict model formalization
very difficult.
On top of that, the integration of EcuC definitions into an existing configuration (espe-
cially the PDUs) cannot be fully automated.
Therefore, the obvious solution approach has been to define a new standardized
AUTOSAR exchange format on diagnostic functionality that can be used similar to a
System Description, formalized as an ARXML [5] file.
In this spirit, the configuration of diagnostic functionality becomes similar to the config-
uration of the communication part within the System Description [6].
ECU-Implementation
Collecting
and merging
Use Case 2: Supplier as collector for diagnostic requirements by
Supplier
OEM
SW-Cs specific
Diagnostic
SW-Cs Extract process
Diagnostic (partially filled)
Diagnostic
Contribution (.arxml)
Contribution
(.arxml)
(.arxml)
Please note:
Figure 1.1: Scope of this document in the ECU Development work-flow
The feedback paths (e.g. from OEM to Application Developer) are not depicted here because they are usually realized company or project specific.
- AUTOSAR Confidential -
Figure
1 1.12013-1107
shows the configuration Decentralized
process of diagnostics for two generalized use
Configuration
1.1.1 OEM
The OEM or requester of diagnostic data uses the DiagnosticExtract to define the
diagnostic interfaces of one or multiple ECUs. It may also define some InternalBe-
haviors as requirements for the ECU-Supplier or Application Developer
• Defines the values of the DTCs
• Defines the UDS services and sub-services supported by the ECUs
• Defines the required events needed by a specific composition implemented by an
Application Developer
NOTE: This list represents an example; this document does not define a specific own-
ership of each element.
In the first use case, the DiagnosticExtract is used to exchange information which
is transformed into the EcuC configuration (M2 to M1 mapping, see also [3] and [7]).
Second, the OEM uses the DiagnosticExtract to document requirements to be
implemented by a supplier. These requirements are expressed in textual language
and can not be mapped directly to any EcuC configuration parameters (no M2 to M1
mapping possible).
1.1.3 ECU-Supplier
During an ECU development project, the three main roles (OEM, Application Devel-
oper, ECU Integrator) exchange DiagnosticExtract files. The timing and fre-
quency of exchanges and the content in each of these exchanged files is highly de-
pendent on the individual project setup and situation.
Therefore, the DiagnosticExtract format has been designed to allow for gradual
enrichment of definitions contributed at largely arbitrary points in time by the different
roles in order to meet the needs of “Decentralized Configuration”.
For any exchange path between any two roles, the same file format based on the
DiagnosticExtract template is used. It is then up to a company specific process
and tooling to merge the collected DiagnosticExtract files while resolving conflicts
(contradictions, redundancies etc.).
Figure 1.2: Exchange of diagnostic configuration between OEM, Tier-1, and Tier-2
Even after the DiagnosticExtract has been fully integrated and is ready to go for
deriving the configuration of the diagnostic stack on EcuC level it is still foreseen to
feed it back to e.g. an OEM.
In this case the OEM has the ability to review the configuration of the diagnostic stack
on the level of the diagnostic extract.
At some point, this information may also be taken to (directly or via indirection of other
formats) create a configuration of a diagnostic client.
Before the introduction of the Diagnostic Extract, Service Needs were used to describe
diagnostic requirements on software-component level. These configuration require-
ments are referenced to the related BSW module DCM or DEM in order to provide the
corresponding configuration on BSW level.
The usage of Service Needs is only possible on Atomic software-component level
whereas the assignment of diagnostic demands must be possible on Composition level.
The software-component Service Needs within the software-component
Description are still to be used along with the DiagnosticExtract in order to
annotate the software-component ports which are relevant for further mapping and
handling as defined by the DiagnosticExtract.
From software-component Developer’s perspective, the DiagnosticExtract is
therefore used partially as substitution and partially as extension of the software-
Multiple parties may have different understanding of which parts shall be provided by
each one. There is no defined rule to indicate who is responsible for each part. At the
end, it is the ECU-Supplier in his role as integrator who has to ensure that all mappings
are done and that the ECU runs as expected by the OEM.
In case the OEM does not have his own diagnostic requirements, the ECU-Supplier
has to provide the complete DiagnosticExtract. In this case, the OEM may only
receive the DiagnosticExtract as part of the delivery. The process itself how the
parties work with this format is not defined within this specification.
Figure 1.1 shows a recommended way how to handle the DiagnosticExtract be-
tween the different parties. In use case 1, some software-components are imple-
mented by the OEM (or by a Supplier of the OEM) and the first merging of Diag-
nosticExtract data occurs at the OEM.
In use case 2, the OEM provides the diagnostic requirements via DiagnosticEx-
tract and multiple Application Developerprovide information related to their imple-
mentation, the merging is performed completely by the ECU-Supplier.
Also, a combination of use cases 1 and 2 is allowed. Also, the ECU-Supplier may
implement some part of the SW inclusive their corresponding DiagnosticExtract.
1.1.7 Limitations
1.2 Scope
This document describes the formal description of contributions to the diagnostic con-
figuration.
On the level of meta-modeling, the content described in this document conceptually re-
lates to the definition of SwcServiceDependency or BswServiceDependency, as
defined by the Software Component Template [8] or Basic Software Mod-
uleDescription Template [9].
Further relations exist to the specification of communication in AUTOSAR systems as
described by the System Template [6].
Further relations exist to the specification of the Diagnostic Communication
Manager [10] as well as to the Diagnostic Event Manager [11].
The relation of the DiagnosticExtract to the rest of the AUTOSAR meta-model is
sketched in Figure 1.3.
SWComponentTemplate EcuResourceTemplate
AdaptivePlatform
SystemTemplate
DiagnosticExtract
ECUCDescriptionTemplate
ECUCParameterDefTemplate
BswModuleTemplate
Figure 1.3: The relation of the DiagnosticExtract to the rest of the AUTOSAR meta-
model
1.4 Abbreviations
The following table contains a list of abbreviations used in the scope of this document
along with the spelled-out meaning of each of the abbreviations.
Abbreviation meaning
API Application Programming Interface
BSW Basic Software
BswM Basic Software Manager
CAN Controller Area Network
CSE Codes for Scaling Units
DEM Diagnostics Communication Manager
DCY Driving Cycle
DEM Diagnostics Event Manager
DID Diagnostic Identifier
DTC Diagnostic Trouble Code
DTR Diagnostic Test Result
DoIP Diagnostics over IP
ECU Electrical Control Unit
ECUC ECU Configuration
FID Function Identifier
FIM Function Inhibition Manager
GID Group Identifier
ID Identifier
IO Input/Output
IP Internet Protocol
IUMPR In-Use Monitor Performance Ratio
ISO International Organization for Standardization
LIN Local Interconnect Network
NRC Negative Response Code
OBD On-Board Diagnostic
ODX Open Diagnostic Data Exchange
OEM Original Equipment Manufacturer
PDU Protocol Data Unit
PID Parameter Identifier
PTO Power Take Off
RA Routing Activation
RAM Random Access Memory
RID Routine Identifier
ROE Response on Event
ROM Read-Only Memory
RTE Run-TIme Environment
RS Requirements Specification
RX Receive
SPN Suspect Parameter Number
SW Software
5
4
Abbreviation meaning
SWC Software Component
SWCD Software Component Description
TID Test Identifier
TPS Template Specification
TX Transmit
SWS Software Specification
UDS Unified Diagnostic Services
UML Unified Modeling Language
VFB Virtual Functional Bus
VIN Vehicle Identification Number
WWH-OBD World-Wide Harmonized On-Board Diagnostics
XML Extensible Markup Language
XSD XML Schema Definition
classic platform, the constraints defined for software-components are typically enforced
prior to the generation of the RTE while the constraints against the definition of an Ecu
extract shall be applied when the Ecu configuration for the Com stack is created.
For each document, possible binding times of constraints are defined and the binding
times are typically mentioned in the constraint themselves to give a proper orientation
for implementers of AUTOSAR authoring tools.
Class AUTOSAR
Package M2::AUTOSARTemplates::AutosarTopLevelStructure
Note Root element of an AUTOSAR description, also the root element in corresponding XML documents.
Tags:xml.globalElement=true
Base ARObject
Attribute Type Mult. Kind Note
adminData AdminData 0..1 aggr This represents the administrative data of an Autosar file.
Tags:xml.sequenceOffset=10
arPackage ARPackage * aggr This is the top level package in an AUTOSAR model.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=arPackage.shortName, arPackage.variation
Point.shortLabel
vh.latestBindingTime=blueprintDerivationTime
xml.sequenceOffset=30
fileInfo FileInfoComment 0..1 aggr This represents a possibility to provide a structured
Comment comment in an AUTOSAR file.
Stereotypes: atpStructuredComment
Tags:
xml.roleElement=true
xml.sequenceOffset=-10
xml.typeElement=false
introduction DocumentationBlock 0..1 aggr This represents an introduction on the Autosar file. It is
intended for example to rpresent disclaimers and legal
notes.
Tags:xml.sequenceOffset=20
Mul.: The assigned multiplicity of the attribute, i.e. how many instances of the given
data type are associated with the attribute.
Kind: Specifies, whether the attribute is aggregated in the class (aggr aggregation),
an UML attribute in the class (attr primitive attribute), or just referenced by it (ref
reference). Instance references are also indicated (iref instance reference) in this
field.
Note: The comment the modeler gave for the class attribute (role note). Stereotypes
and UML tags of the class are also denoted here.
Please note that the chapters that start with a letter instead of a numerical value rep-
resent the appendix of the document. The purpose of the appendix is to support the
explanation of certain aspects of the document and does not represent binding con-
ventions of the standard. The verbal forms for the expression of obligation specified
in [TPS_STDT_00053] shall be used to indicate requirements, see Standardization
Template, chapter Support for Traceability ([12]).
The representation of requirements in AUTOSAR documents follows the table specified
in [TPS_STDT_00078], see Standardization Template, chapter Support for Traceability
([12]).
4
Requirement Description Satisfied by
[RS_DEXT_00024] Configuration of DTCs [TPS_DEXT_01064] [TPS_DEXT_01065] [TPS_DEXT_01066]
[TPS_DEXT_01086] [TPS_DEXT_03000] [TPS_DEXT_03003]
[TPS_DEXT_03012] [TPS_DEXT_03013] [TPS_DEXT_03014]
[RS_DEXT_00025] Combined Events [TPS_DEXT_03003]
[RS_DEXT_00026] Enable Conditions [TPS_DEXT_03015] [TPS_DEXT_03018]
[RS_DEXT_00027] Storage Conditions [TPS_DEXT_03001] [TPS_DEXT_03006] [TPS_DEXT_03010]
[TPS_DEXT_03016] [TPS_DEXT_03019]
[RS_DEXT_00028] Enable Condition Groups [TPS_DEXT_01084] [TPS_DEXT_03010] [TPS_DEXT_03015]
[RS_DEXT_00029] Storage Condition Groups [TPS_DEXT_01084] [TPS_DEXT_03016]
[RS_DEXT_00030] Assignment of Enable Condition [TPS_DEXT_03010]
Groups
[RS_DEXT_00031] Assignment of Storage Condition [TPS_DEXT_03010]
Group
[RS_DEXT_00032] Configuration of Extended Data [TPS_DEXT_03008]
Records
[RS_DEXT_00033] Configuration of Snapshot Records [TPS_DEXT_01143] [TPS_DEXT_01144] [TPS_DEXT_03009]
[RS_DEXT_00034] Description of Data Identifiers [TPS_DEXT_01000] [TPS_DEXT_01001] [TPS_DEXT_01002]
[TPS_DEXT_01017] [TPS_DEXT_01050] [TPS_DEXT_01054]
[TPS_DEXT_01072] [TPS_DEXT_01134] [TPS_DEXT_01135]
[TPS_DEXT_01136] [TPS_DEXT_01138] [TPS_DEXT_01146]
[TPS_DEXT_01150]
[RS_DEXT_00035] Description of Dynamic Data [TPS_DEXT_01000]
Identifiers
[RS_DEXT_00036] Description of Routine Identifiers [TPS_DEXT_01088]
[RS_DEXT_00037] Description of I/O Identifiers [TPS_DEXT_01089]
[RS_DEXT_00038] Description of array data types [TPS_DEXT_01001] [TPS_DEXT_01002]
[RS_DEXT_00039] Diagnostic Service Table [TPS_DEXT_01006]
[RS_DEXT_00040] Diagnostic Sessions [TPS_DEXT_01011] [TPS_DEXT_01081] [TPS_DEXT_01082]
[TPS_DEXT_01139]
[RS_DEXT_00041] Access Permissions [TPS_DEXT_01012] [TPS_DEXT_01071]
[RS_DEXT_00042] Security Levels [TPS_DEXT_01012] [TPS_DEXT_01038] [TPS_DEXT_01053]
[RS_DEXT_00043] Description of data elements [TPS_DEXT_01142] [TPS_DEXT_03020]
[RS_DEXT_00045] Textual descriptions [TPS_DEXT_01064] [TPS_DEXT_01065] [TPS_DEXT_01066]
[TPS_DEXT_01067] [TPS_DEXT_01068] [TPS_DEXT_01069]
[TPS_DEXT_01071]
[RS_DEXT_00047] Custom Diagnostic Service [TPS_DEXT_01021] [TPS_DEXT_01030] [TPS_DEXT_01031]
[TPS_DEXT_01147]
[RS_DEXT_00049] Properties of individual diagnostic [TPS_DEXT_01013]
services
[RS_DEXT_00051] Subfunctions of Diagnostic [TPS_DEXT_01013] [TPS_DEXT_01014] [TPS_DEXT_01018]
Services [TPS_DEXT_01019] [TPS_DEXT_01020] [TPS_DEXT_01021]
[TPS_DEXT_01022] [TPS_DEXT_01023] [TPS_DEXT_01024]
[TPS_DEXT_01025] [TPS_DEXT_01026] [TPS_DEXT_01027]
[TPS_DEXT_01028] [TPS_DEXT_01029] [TPS_DEXT_01030]
[TPS_DEXT_01031] [TPS_DEXT_01034] [TPS_DEXT_01039]
[TPS_DEXT_01056] [TPS_DEXT_01057] [TPS_DEXT_01060]
[TPS_DEXT_01075] [TPS_DEXT_01078]
[RS_DEXT_00052] Mapping of diagnostic services to [TPS_DEXT_01040] [TPS_DEXT_01041] [TPS_DEXT_01042]
the PortPrototypes of Application [TPS_DEXT_01043] [TPS_DEXT_01044] [TPS_DEXT_01049]
SwComponentTypes [TPS_DEXT_01050] [TPS_DEXT_01051] [TPS_DEXT_01142]
[TPS_DEXT_03002] [TPS_DEXT_03007] [TPS_DEXT_03017]
[TPS_DEXT_03018] [TPS_DEXT_03019] [TPS_DEXT_03020]
5
4
Requirement Description Satisfied by
[RS_DEXT_00053] Debouncing of diagnostic events [TPS_DEXT_01048] [TPS_DEXT_03004] [TPS_DEXT_03005]
[TPS_DEXT_03017]
[RS_DEXT_00054] Operation cycles [TPS_DEXT_01086] [TPS_DEXT_01087]
[RS_DEXT_00055] Aging [TPS_DEXT_03021]
[RS_DEXT_00056] Indicator [TPS_DEXT_03022]
[RS_DEXT_00057] RequestFileTransfer [TPS_DEXT_01090]
[RS_DEXT_00058] Indicate that an ECU supports [TPS_DEXT_01122]
ODB
[RS_DEXT_00059] Support for different protocols [TPS_DEXT_01124]
[RS_DEXT_00060] Function [TPS_DEXT_01096] [TPS_DEXT_01097] [TPS_DEXT_01098]
[TPS_DEXT_01099] [TPS_DEXT_01100] [TPS_DEXT_01101]
[TPS_DEXT_01121]
[RS_DEXT_00061] Relationship between functions [TPS_DEXT_01095] [TPS_DEXT_01098] [TPS_DEXT_01099]
and diagnostic events [TPS_DEXT_01100] [TPS_DEXT_01101]
[RS_DEXT_00062] Pre-configuration of the Fim when [TPS_DEXT_01095]
the Dem configuration is not yet
available
[RS_DEXT_00063] Relation between functions on Fim [TPS_DEXT_01102]
level and software-components
[RS_DEXT_00064] Definition of an SPN [TPS_DEXT_01103] [TPS_DEXT_01106]
[RS_DEXT_00065] Definition of freeze frames on [TPS_DEXT_01104] [TPS_DEXT_01105]
J1939
[RS_DEXT_00066] Mapping between a J1939 [TPS_DEXT_01108]
controller application and a
software-component
[RS_DEXT_00067] Definition of J1939 DTC [TPS_DEXT_01107] [TPS_DEXT_01145]
[RS_DEXT_00068] Definition of a Diagnostic [TPS_DEXT_01092]
Parameter Identifier
[RS_DEXT_00069] Support for OBD Mode 0x01 [TPS_DEXT_01125]
(RequestCurrentPowertrain
DiagnosticData)
[RS_DEXT_00070] Support for OBD Mode 0x02 [TPS_DEXT_01126]
(RequestPowertrainFreezeFrame
Data)
[RS_DEXT_00071] Support for OBD ModeModes 0x03 [TPS_DEXT_01127]
/ 0x07 / 0x0A (RequestEmission
RelatedDiagnosticTroubleCodes)
[RS_DEXT_00072] Support for OBD Mode 0x04 (Clear [TPS_DEXT_01128]
ResetEmissionRelatedDiagnostic
Information)
[RS_DEXT_00073] Support for OBD Mode 0x06 [TPS_DEXT_01129] [TPS_DEXT_01141]
(RequestOnBoardMonitoringTest
Results)
[RS_DEXT_00074] Support for OBD Mode 0x08 [TPS_DEXT_01130]
(RequestControlOfOnBoard
Device)
[RS_DEXT_00075] Support for OBD Mode 0x09 [TPS_DEXT_01131]
(RequestVehicleInformation)
[RS_DEXT_00076] Definition of Diagnostic Test [TPS_DEXT_01132]
Identifier
[RS_DEXT_00077] Description of the utilization of [TPS_DEXT_01133]
UDS for supporting WWH-OBD
5
4
Requirement Description Satisfied by
[RS_DEXT_00078] Support for In Use Monitor [TPS_DEXT_01148] [TPS_DEXT_01149]
Performance Ratio
[RS_DEXT_00079] Support for environment conditions [TPS_DEXT_01113] [TPS_DEXT_01114] [TPS_DEXT_01115]
[TPS_DEXT_01116] [TPS_DEXT_01117] [TPS_DEXT_01118]
[TPS_DEXT_01119] [TPS_DEXT_01120]
[RS_DEXT_00080] Support for persisting Security [TPS_DEXT_01153]
Events
[RS_DEXT_00081] Support for updating the Reporting [TPS_DEXT_01152]
Mode of Security Events
2 Use Cases
Composition Composition
1 2
RTE
DCM
Composition Composition
1 2
RTE
DTC 1
DTC 2
DEM
The configuration of the DEM includes fault memory data (DTCs and environmental
data) and the assignment of corresponding data by one or more SwComponentTypes
(e.g. Composition 1, Composition 2).
As already explained, the diagnostic development process is distributed among differ-
ent parties. On the one hand side, the OEM needs to describe the general require-
ments for a diagnostic system that have to be implemented by an ECU:
1. Depending on the diagnostic system, the OEM can provide a completely or partly-
filled DiagnosticExtract including the description of PortInterfaces:
• Integrator/SWC developer (OEM or Tier 1) is responsible for the completion
(detailing of predefined diagnostic content).
• Integrator/SWC developer (OEM or Tier 1) is responsible for the specific
configuration of diagnostic content defined by himself.
• New integration of updated Diagnostic descriptions by integrator.
2. Return of completely or partly-filled DiagnosticExtract to OEM for:
• Documentation
• ECU testing
• Integration reviews
• Failure correction
Use case examples:
• Configuration of UDS service 0x22 (ReadDataByIdentifier)
• Configuration of UDS service 0x2E (WriteDataByIdentifier)
• Configuration of UDS service 0x31 (RoutineControl)
• Configuration of UDS service 0x2F (I/O-Control)
• Configuration of DEM DTCs
• Configuration of Combined Events
• Mapping of events to DTCs
• Configuration of DTC-related environmental data
• Mapping of DEM Events to their corresponding Enable Conditions and Storage
Conditions
• Configure general DCM parameters
• Description of diagnostic demands that are not relevant for code generation but
have to be exchanged between OEM and Tier1 (e.g. set and reset condition for a
DTC)
Refinement of use cases:
The OEM already provides a System Template for an ECU which describes the ECU
Supplier SW parts as a CompositionSwComponentType where only inputs and out-
puts are known.
1. The OEM creates a DiagnosticExtract which describes the diagnostic in-
terfaces of an ECU. Supported services are described (e.g. RDBI/WDBI/Routine
Control) as well as their corresponding input/output parameters and return values
(those which are optional in UDS standard).
2. SWC Developer at OEM or OEM SW Supplier develops SWC and also describes
the Diagnostic information using ServiceNeeds as diagnostic contribution.
3. The OEM Diagnose Responsible for a Project creates the mappings between the
DiagnosticExtract and the SWC available on OEM side (from 2.).
4. The OEM Diagnostic Responsible for a Project creates the mappings between
the DiagnosticExtract and the CompositionSwComponentTypes which
will be implemented by the ECU Supplier or SW Developer.
5. The ECU Suppliers receives the ECU Extract including DiagnosticExtract
from the OEM and imports it to the project.
6. In the same way is in point 2., the SWC Developer on supplier or Tier 2 side
describes the Diagnostic information using ServiceNeeds as diagnostic contri-
bution.
In the same way as in point 3: The ECU Supplier Diagnostic Responsible creates the
mapping between the PortInterfaces of the DiagnosticExtract (from 5.) and
the SwComponentTypes as provided in 6.
For the usage of indicators, it might happen that indicators defined on BSW level in
DEM might not be automatically mapped to the implementation on SWC level. This
would then require a manual mapping step by the integrator to resolve the mismatch.
«flow» «flow»
«flow» «flow»
Software-component Software-component
developer by OEM or any developer by Tier-1 or
other software supplier Tier-2 supplier
A typical use case for the Fim is the definition of “control mechanisms for software
components and the functionality therein” [14]. By this means, the Fim can significantly
modify the behavior of the application software at run-time, e.g. in response to a sensor
failure.
The conditions for deciding about inhibitions are derived from diagnostic events. If a
diagnostic event that relates to a hardware sensor is reported as “failed” then the Fim
can degrade the behavior of the application software to no longer rely on the sensor
information that has become unreliable.
Consequently, the DiagnosticExtract needs to provide the basic mechanisms to
create the definition of such inhibition rules that relate pieces of the application soft-
ware (which are visible to the DiagnosticExtract as formally defined SwCompo-
nentTypes) to the definition of diagnostic events.
The configuration of the Fim module and the Dem module are closely intertwined be-
cause the Fim uses the diagnostic events defined in the context of the Dem. This
means that the Fim can only be configured if the Dem exists as a basis for creating this
configuration.
Clearly, this is contradicting the approach of a “decentralized configuration” of the di-
agnostics stack’s behavior. It may happen that the configuration of the Fim and the
configuration of the Dem by means of the DiagnosticExtract are distributed over
different organizations within a concrete vehicle project.
However, the organizations would not be able to make progress independently of each
other because the work product of one is the immediate prerequisite that the other
organization can start working.
Therefore, one important use case for the DiagnosticExtract is the ability to con-
figure the Fim module in the scope of the DiagnosticExtract without the immedi-
ate need to already have access to the corresponding configuration of the Dem
module.
In other words, a typical work-flow could look like this:
1. Create the Fim configuration on the basis of a collection of alias objects that
represent the diagnostic events that are defined in the context of the Dem module
within the configuration of the Fim and in parallel create the Dem configuration
and thereby add definitions of the actual diagnostic events.
2. Ship the configuration of the Dem to the organization that is responsible for the
creation of the configuration of the Fim.
3. Let this organization take care of resolving the alias diagnostic events by way
of referring from the Fim configuration to the diagnostic events contained in the
actual Dem configuration.
The main use case for modeling the J1939 in the DiagnosticExtract is the pos-
sibility to create the diagnostic configuration relevant for a J1939 function, even if the
underlying communication architecture is not (fully) defined and if no vehicle model
(represented by a System) exists.
The J1939 diagnostics modeling is done during functional development before the
System exists where the functions are deployed. This approach represents a case of
decentralized configuration of the diagnostic stack.
3 Conceptual Background
Chapter 1 has already given an overview on the intended way of using the Diagnos-
ticExtract template and files. This chapter gives further background information on
the overall concept behind the new format to create a better basis for understanding of
the meta-model described in Chapter 4.
Most elements of the DiagnosticExtract template can be split over several phys-
ical files. Therefore, parts of these elements (e.g. certain attributes) can be defined
by, for example, an OEM and other parts of these elements by, for example, an ECU
supplier.
4.1 Introduction
This chapter contains a description of the meta-model for the specification of the
DiagnosticExtract in AUTOSAR. The goal of the specification of the Diagnos-
ticExtract is to contribute to the description of the configuration of the Diagnostic
Communication Manager [10] (Dcm) and the Diagnostic Event Manager [11]
(Dem)
The meta-model can be roughly divided into five sections
• A common section that contains meta-classes shared between the description of
the diagnostic services (that roughly corresponds to the Dcm) and the diagnostic
event handling (that roughly corresponds to the Dem), see section 4.2.
• A section dedicated to the configuration of the diagnostic services, see section 5.
• A section dedicated to the configuration of the diagnostic event handling, see
section 6.
• A section dedicated to the configuration of the functional inhibition from the diag-
nostics point of view, see section 7.
• A section dedicated to the configuration of the diagnostics on J1939, see section
8.
«atpVariation»
SwDataDefProps
+dataElement 0..1
DiagnosticCommonElement
DiagnosticSupportInfoByte
DiagnosticAbstractDataIdentifier
+ position: PositiveInteger [0..1] «atpVariation,atpSplitable»
«atpVariation» + size: PositiveInteger [0..1]
+ id: PositiveInteger [0..1]
+supportInfoByte 0..1 +supportInfoByte 0..1
DiagnosticCommonElement
DiagnosticDynamicDataIdentifier DiagnosticDataIdentifier DiagnosticParameterSupportInfo
DiagnosticParameterIdentifier
+ didSize: PositiveInteger [0..1] + supportInfoBit: PositiveInteger [0..1]
+ representsVin: Boolean [0..1] + id: PositiveInteger [0..1]
+ pidSize: PositiveInteger [0..1]
+supportInfo 0..1
«atpVariation,atpSplitable» «atpSplitable,atpVariation»
+dataElement 0..* +dataElement 0..*
DiagnosticParameter
«atpIdentityContributor»
+ bitOffset: PositiveInteger [0..1]
+request 0..* 0..* +request 0..* +response 0..* +response 0..* +request 0..*
+response
DiagnosticCommonElement
DiagnosticRoutine
Class DiagnosticParameter
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This meta-class represents the ability to describe information relevant for the execution of a specific
diagnostic service, i.e. it can be taken to parameterize the service.
Base ARObject
Attribute Type Mult. Kind Note
bitOffset PositiveInteger 0..1 attr This represents the bitOffset of the DiagnosticParameter
Stereotypes: atpIdentityContributor
dataElement DiagnosticDataElement 0..1 aggr This represents the related dataElement of the Diagnostic
Parameter
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=dataElement.shortName, data
Element.variationPoint.shortLabel
vh.latestBindingTime=postBuild
supportInfo DiagnosticParameter 0..1 aggr This attribute represents the ability to define which bit of
SupportInfo the support info byte is representing this part of the PID.
Class DiagnosticDataIdentifier
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This meta-class represents the ability to model a diagnostic data identifier (DID) that is fully specified
regarding the payload at configuration-time.
Tags:atp.recommendedPackage=DiagnosticDataIdentifiers
Base ARElement, ARObject, CollectableElement, DiagnosticAbstractDataIdentifier , DiagnosticCommon
Element, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dataElement DiagnosticParameter * aggr This is the dataElement associated with the Diagnostic
DataIdentifier.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=dataElement.bitOffset, dataElement.variation
Point.shortLabel
vh.latestBindingTime=postBuild
didSize PositiveInteger 0..1 attr This attribute indicates the size in bytes of the Diagnostic
DataIdentifier.
representsVin Boolean 0..1 attr This attributes indicates whether the specific Diagnostic
DataIdentifier represents the vehicle identification.
supportInfoByte DiagnosticSupportInfo 0..1 aggr This attribute represents the supported information
Byte associated with the DiagnosticDataIdentifier.
4
Class DiagnosticAbstractDataIdentifier (abstract)
id PositiveInteger 0..1 attr This is the numerical identifier used to identify the
DiagnosticAbstractDataIdentifier in the scope of
diagnostic workflow
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
Class DiagnosticDataElement
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This meta-class represents the ability to describe a concrete piece of data to be taken into account for
diagnostic purposes.
Base ARObject, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
arraySize ArraySizeSemantics 0..1 attr This attribute controls the meaning of the value of the
Semantics Enum array size.
maxNumberOf PositiveInteger 0..1 attr The existence of this attribute turns the data instance into
Elements an array of data. The attribute determines the size of the
array in terms of how many elements the array can take.
scalingInfoSize PositiveInteger 0..1 attr Size in bytes of scaling information for the DiagnosticData
Element if used with DiagnosticReadScalingDataBy
Identifier
swDataDef SwDataDefProps 0..1 aggr This property allows to specify data definition properties
Props in order to support the definition of e.g. computation
formulae and data constraints.
Table 4.6: DiagnosticDataElement
Please note that the definitions of properties like computation methods3 , limits4 , or
units5 of diagnostic data elements is based on shared resources of the AUTOSAR
meta-model, namely by aggregation of meta-class SwDataDefProps.
This meta-class contributes a wealth of possible properties related to the definition of
data in general and, in this case, diagnostics in particular.
However, it is important to understand that SwDataDefProps is so expressive and
versatile that its applicability needs to be constrained (in this specific case, see [con-
str_1325]) for specific deployments according to the requirements that originate from
the semantics of the piece of data that is decorated by SwDataDefProps.
[constr_1325] Allowed attributes of SwDataDefProps for DiagnosticDataEle-
ment.swDataDefProps dThe allowed attributes of SwDataDefProps for the aggre-
gation in the role DiagnosticDataElement.swDataDefProps are defined in table
4.8.c()
3
formalized as CompuMethod in AUTOSAR
4
formalized as DataConstr in AUTOSAR
5
formalized as Unit in AUTOSAR
Please note that, in comparison to similar tables appearing in other AUTOSAR docu-
ments (e.g. [8]), table 4.8 intentionally goes into more detail regarding the applicability
of the attributes of SwBaseType. This is in contrast to similar tables contained in, e.g.
the specification of the Software-Component Template [8]
The attributes of SwBaseType are considered of paramount importance for the def-
inition of the semantics of the enclosing DiagnosticDataElement and thus the
emphasis is justified.
Class <<atpVariation>> SwDataDefProps
Package M2::MSR::DataDictionary::DataDefProperties
Note This class is a collection of properties relevant for data objects under various aspects. One could
consider this class as a "pattern of inheritance by aggregation". The properties can be applied to all
objects of all classes in which SwDataDefProps is aggregated.
Note that not all of the attributes or associated elements are useful all of the time. Hence, the process
definition (e.g. expressed with an OCL or a Document Control Instance MSR-DCI) has the task of
implementing limitations.
SwDataDefProps covers various aspects:
• Structure of the data element for calibration use cases: is it a single value, a curve, or a map, but
also the recordLayouts which specify how such elements are mapped/converted to the Data
Types in the programming language (or in AUTOSAR). This is mainly expressed by properties
like swRecordLayout and swCalprmAxisSet
• Implementation aspects, mainly expressed by swImplPolicy, swVariableAccessImplPolicy, sw
AddrMethod, swPointerTagetProps, baseType, implementationDataType and additionalNative
TypeQualifier
• Access policy for the MCD system, mainly expressed by swCalibrationAccess
• Semantics of the data element, mainly expressed by compuMethod and/or unit, dataConstr,
invalidValue
• Code generation policy provided by swRecordLayout
Tags:vh.latestBindingTime=codeGenerationTime
Base ARObject
Attribute Type Mult. Kind Note
additionalNative NativeDeclarationString 0..1 attr This attribute is used to declare native qualifiers of the
TypeQualifier programming language which can neither be deduced
from the baseType (e.g. because the data object
describes a pointer) nor from other more abstract
attributes. Examples are qualifiers like "volatile", "strict" or
"enum" of the C-language. All such declarations have to
be put into one string.
Tags:xml.sequenceOffset=235
annotation Annotation * aggr This aggregation allows to add annotations (yellow pads
...) related to the current data object.
Tags:
xml.roleElement=true
xml.roleWrapperElement=true
xml.sequenceOffset=20
xml.typeElement=false
xml.typeWrapperElement=false
baseType SwBaseType 0..1 ref Base type associated with the containing data object.
Tags:xml.sequenceOffset=50
compuMethod CompuMethod 0..1 ref Computation method associated with the semantics of
this data object.
Tags:xml.sequenceOffset=180
5
4
Class <<atpVariation>> SwDataDefProps
dataConstr DataConstr 0..1 ref Data constraint for this data object.
Tags:xml.sequenceOffset=190
displayFormat DisplayFormatString 0..1 attr This property describes how a number is to be rendered
e.g. in documents or in a measurement and calibration
system.
Tags:xml.sequenceOffset=210
display DisplayPresentation 0..1 attr This attribute controls the presentation of the related data
Presentation Enum for measurement and calibration tools.
implementation AbstractImplementation 0..1 ref This association denotes the ImplementationDataType of
DataType DataType a data declaration via its aggregated SwDataDefProps. It
is used whenever a data declaration is not directly
referring to a base type. Especially
• redefinition of an ImplementationDataType via a
"typedef" to another ImplementationDatatype
• the target type of a pointer (see SwPointerTarget
Props), if it does not refer to a base type directly
• the data type of an array or record element within
an ImplementationDataType, if it does not refer to
a base type directly
• the data type of an SwServiceArg, if it does not
refer to a base type directly
Tags:xml.sequenceOffset=215
invalidValue ValueSpecification 0..1 aggr Optional value to express invalidity of the actual data
element.
Tags:xml.sequenceOffset=255
stepSize Float 0..1 attr This attribute can be used to define a value which is
added to or subtracted from the value of a DataPrototype
when using up/down keys while calibrating.
swAddrMethod SwAddrMethod 0..1 ref Addressing method related to this data object. Via an
association to the same SwAddrMethod it can be
specified that several DataPrototypes shall be located in
the same memory without already specifying the memory
section itself.
Tags:xml.sequenceOffset=30
swAlignment AlignmentType 0..1 attr The attribute describes the intended alignment of the
DataPrototype. If the attribute is not defined the alignment
is determined by the swBaseType size and the memory
AllocationKeywordPolicy of the referenced SwAddr
Method.
Tags:xml.sequenceOffset=33
swBit SwBitRepresentation 0..1 aggr Description of the binary representation in case of a bit
Representation variable.
Tags:xml.sequenceOffset=60
swCalibration SwCalibrationAccess 0..1 attr Specifies the read or write access by MCD tools for this
Access Enum data object.
Tags:xml.sequenceOffset=70
swCalprmAxis SwCalprmAxisSet 0..1 aggr This specifies the properties of the axes in case of a
Set curve or map etc. This is mainly applicable to calibration
parameters.
Tags:xml.sequenceOffset=90
5
4
Class <<atpVariation>> SwDataDefProps
swComparison SwVariableRefProxy * aggr Variables used for comparison in an MCD process.
Variable
Tags:
xml.sequenceOffset=170
xml.typeElement=false
swData SwDataDependency 0..1 aggr Describes how the value of the data object has to be
Dependency calculated from the value of another data object (by the
MCD system).
Tags:xml.sequenceOffset=200
swHostVariable SwVariableRefProxy 0..1 aggr Contains a reference to a variable which serves as a
host-variable for a bit variable. Only applicable to bit
objects.
Tags:
xml.sequenceOffset=220
xml.typeElement=false
swImplPolicy SwImplPolicyEnum 0..1 attr Implementation policy for this data object.
Tags:xml.sequenceOffset=230
swIntended Numerical 0..1 attr The purpose of this element is to describe the requested
Resolution quantization of data objects early on in the design
process.
The resolution ultimately occurs via the conversion
formula present (compuMethod), which specifies the
transition from the physical world to the standardized
world (and vice-versa) (here, "the slope per bit" is present
implicitly in the conversion formula).
In the case of a development phase without a fixed
conversion formula, a pre-specification can occur through
swIntendedResolution.
The resolution is specified in the physical domain
according to the property "unit".
Tags:xml.sequenceOffset=240
swInterpolation Identifier 0..1 attr This is a keyword identifying the mathematical method to
Method be applied for interpolation. The keyword needs to be
related to the interpolation routine which needs to be
invoked.
Tags:xml.sequenceOffset=250
swIsVirtual Boolean 0..1 attr This element distinguishes virtual objects. Virtual objects
do not appear in the memory, their derivation is much
more dependent on other objects and hence they shall
have a swDataDependency .
Tags:xml.sequenceOffset=260
swPointerTarget SwPointerTargetProps 0..1 aggr Specifies that the containing data object is a pointer to
Props another data object.
Tags:xml.sequenceOffset=280
swRecord SwRecordLayout 0..1 ref Record layout for this data object.
Layout
Tags:xml.sequenceOffset=290
swRefresh MultidimensionalTime 0..1 aggr This element specifies the frequency in which the object
Timing involved shall be or is called or calculated. This timing
can be collected from the task in which write access
processes to the variable run. But this cannot be done by
the MCD system.
5
5
4
Class <<atpVariation>> SwDataDefProps
4
So this attribute can be used in an early phase to express
the desired refresh timing and later on to specify the real
refresh timing.
Tags:xml.sequenceOffset=300
swTextProps SwTextProps 0..1 aggr the specific properties if the data object is a text object.
Tags:xml.sequenceOffset=120
swValueBlock Numerical 0..1 attr This represents the size of a Value Block
Size
Stereotypes: atpVariation
Tags:
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=80
swValueBlock Numerical * attr This attribute is used to specify the dimensions of a value
SizeMult block (VAL_BLK) for the case that that value block has
(ordered) more than one dimension.
The dimensions given in this attribute are ordered such
that the first entry represents the first dimension, the
second entry represents the second dimension, and so
on.
For one-dimensional value blocks the attribute swValue
BlockSize shall be used and this attribute shall not exist.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
unit Unit 0..1 ref Physical unit associated with the semantics of this data
object. This attribute applies if no compuMethod is
specified. If both units (this as well as via compuMethod)
are specified the units shall be compatible.
Tags:xml.sequenceOffset=350
valueAxisData ApplicationPrimitive 0..1 ref The referenced ApplicationPrimitiveDataType represents
Type DataType the primitive data type of the value axis within a
compound primitive (e.g. curve, map). It supersedes
CompuMethod, Unit, and BaseType.
Tags:xml.sequenceOffset=355
There are several use cases for a DiagnosticDataElement that actually represents
an array of information. In some cases the array size is static and will not change at
run-time, and in some cases the array size needs to change at run-time to fulfill the
intended purpose.
[TPS_DEXT_01001] Definition of a fixed-sized array dA DiagnosticDataEle-
ment shall be interpreted as a fixed-size array if all of the following conditions apply:
1. The attribute DiagnosticDataElement.maxNumberOfElements exists.
2. The value of the attribute DiagnosticDataElement.maxNumberOfElements
is set to a value > 0.
This also means that the ability to add some form of textual description is widely usable
in the scope of the DiagnosticExtract. Many meta-classes are derived from e.g.
DiagnosticCommonElement (which inherits from Identifiable) or directly from
Identifiable and therefore qualify for the described form of documentation.
In other words, the technology described in Figures 4.2 and 4.3 is not limited to Diag-
nosticDataElement but has a much wider applicability in the context of the Diag-
nosticExtract.
Referrable
«atpIdentityContributor»
+ shortName: Identifier
MultilanguageReferrable MultilanguageLongName
+longName
0..1
Identifiable MultiLanguageOverviewParagraph
+desc
+ category: CategoryString [0..1]
+ uuid: String [0..1] 0..1
AdminData
+adminData
+ language: LEnum [0..1]
0..1
«atpMixed»
+introduction DocumentationBlock
0..1
GeneralAnnotation
+annotation Annotation
0..*
The details regarding the specification of textual content that goes along a given di-
agnostics element is detailed in Figure 4.3. In fact, DocumentationBlock provides
a very sophisticated ability to define structured text that may consist e.g. of multiple
paragraphs (formalized by meta-class MultiLanguageOverviewParagraph aggre-
gated in the role p).
In addition to the ability to attach structured text, it is also possible to use the anno-
tation (see Figure 4.2) to add short annotations (comparable to the usage of sticky
notes) to diagnostic elements.
«atpMixed» +p Paginateable
DocumentationBlock «atpVariation» 0..1 MultiLanguageParagraph
Paginateable
+verbatim
MultiLanguageVerbatim
«atpVariation» 0..1
+list +item
Paginateable Paginateable
«atpVariation» «atpVariation» 1..*
0..1 List Item
+itemContents 1
+defList +defItem
Paginateable MultilanguageReferrable
«atpVariation» 0..1 «atpVariation» 1..* Paginateable
DefList
+def DefItem
1
+labeledList
Paginateable +labeledItem Paginateable
«atpVariation» 0..1 LabeledList LabeledItem
«atpVariation» 1..*
+itemContents
0..1
Paginateable
+formula
MlFormula
«atpVariation» 0..1
+itemLabel 1
+figure Paginateable
MultiLanguageOverviewParagraph
MlFigure
«atpVariation» 0..1
+note
Paginateable
«atpVariation» 0..1 Note
+noteText
+trace Identifiable
Paginateable
«atpVariation» 0..1 Traceable
+text TraceableText
1
+structuredReq Identifiable
Paginateable
«atpVariation» 0..1 Traceable
StructuredReq
+msrQueryResultP2 MsrQueryP2
0..1
+msrQueryP2
0..1
+entryContents
Entry
1
4
Class <<atpMixed>> DocumentationBlock
trace TraceableText 0..1 aggr This represents traceable text in the documentation block.
This allows to specify requirements/constraints in any
documentation block.
The kind of the trace is specified in the category.
Stereotypes: atpVariation
Tags:
vh.latestBindingTime=postBuild
xml.sequenceOffset=90
verbatim MultiLanguageVerbatim 0..1 aggr This represents one particular verbatim text.
Stereotypes: atpVariation
Tags:
vh.latestBindingTime=postBuild
xml.sequenceOffset=20
Class MultiLanguageOverviewParagraph
Package M2::MSR::Documentation::TextModel::MultilanguageData
Note This is the content of a multilingual paragraph in an overview item.
Base ARObject
Attribute Type Mult. Kind Note
l2 LOverviewParagraph 1..* aggr This represents the text in one particular language.
Tags:
xml.roleElement=true
xml.roleWrapperElement=false
xml.sequenceOffset=20
xml.typeElement=false
xml.typeWrapperElement=false
FibexElement
EcuInstance
+ecuInstance 0..*
«atpSplitable»
ARElement
DiagnosticEcuInstanceProps
0..* DiagnosticContributionSet
«atpVariation,atpSplitable» + obdSupport: DiagnosticObdSupportEnum [0..1]
+serviceTable
«atpVariation,atpSplitable»
+element 0..*
ARElement «enumeration»
DiagnosticCommonElement DiagnosticObdSupportEnum
masterEcu
secondaryEcu
primaryEcu
noObdSupport
+serviceInstance 0..*
DiagnosticServiceInstance
Class DiagnosticContributionSet
Package M2::AUTOSARTemplates::DiagnosticExtract::DiagnosticContribution
Note This meta-class represents a root node of a diagnostic extract. It bundles a given set of diagnostic model
elements. The granularity of the DiagonsticContributionSet is arbitrary in order to support the aspect of
decentralized configuration, i.e. different contributors can come up with an own DiagnosticContribution
Set.
Tags:atp.recommendedPackage=DiagnosticContributionSets
Base ARElement, ARObject, CollectableElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Attribute Type Mult. Kind Note
common DiagnosticCommon 0..1 aggr This attribute represents a collection of diagnostic
Properties Props properties that are shared among the entire Diagnostic
ContributionSet.
Stereotypes: atpSplitable
Tags:atp.Splitkey=commonProperties
element DiagnosticCommon * ref This represents a DiagnosticCommonElement considered
Element in the context of the DiagnosticContributionSet
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=element.diagnosticCommonElement,
element.variationPoint.shortLabel
vh.latestBindingTime=postBuild
serviceTable DiagnosticServiceTable * ref This represents the collection of DiagnosticServiceTables
to be considered in the scope of this Diagnostic
ContributionSet.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=serviceTable.diagnosticServiceTable, service
Table.variationPoint.shortLabel
vh.latestBindingTime=postBuild
DiagnosticContributionSet
element element
DiagnosticCommonElement DiagnosticCommonElement
dataIdentifier
DiagnosticDataIdentifierSet DiagnosticDataIdentifier
Figure 4.5: Visualization of example scenario for the indirect reference to Diagnostic-
CommonElement
4
Class DiagnosticProtocol
sendRespPend Boolean 0..1 attr The purpose of this attribute is to define whether or not
OnTransToBoot the ECU should send a NRC 0x78 (response pending)
before transitioning to the bootloader (in this case the
attribute shall be set to "true") or if the transition shall be
initiated without sending NRC 0x78 (in this case the
attribute shall be set to "false").
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
serviceTable DiagnosticServiceTable 0..1 ref This represents the service table applicable for the given
diagnostic protocol.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=serviceTable.diagnosticServiceTable, service
Table.variationPoint.shortLabel
vh.latestBindingTime=postBuild
FibexElement
EcuInstance
+ecuInstance 0..1
DiagnosticCommonElement ARElement
+diagnosticConnection
DiagnosticServiceTable DiagnosticConnection
«atpVariation,atpSplitable» 0..*
+ protocolKind: NameToken [0..1]
+diagnosticConnection 0..*
«atpVariation,atpSplitable»
DiagnosticCommonElement
DiagnosticProtocol
+serviceInstance 0..*
DiagnosticCommonElement
DiagnosticServiceInstance
$2F - IO-ID:0x3333
[TPS_DEXT_01091] Relation between a DiagnosticServiceTable and one or
more DiagnosticConnections dIn principle, the relation between a Diagnostic-
ServiceTable and one or more DiagnosticConnections can be established in
two possible ways:
• By means of the reference DiagnosticServiceTable.diagnosticConnec-
tion. This way, the concept of protocols and their priorities relative to each other
is not considered.
• By means of the references DiagnosticProtocol.diagnosticConnection
and DiagnosticProtocol.serviceTable. This way, the existence of several
protocols and their priorities is positively considered.
c()
Please note that alternatives mentioned in [TPS_DEXT_01091] may or may not be
handled as alternatives in actual projects. It may be possible that in a first modeling
step protocols are ignored entirely and therefore the respective relations are created
by means of DiagnosticServiceTable.diagnosticConnection.
Later in time and as the project progresses, protocols may become a thing and are con-
sequently introduced in the model. In response to this change, the relation in question
is now created by means of the references DiagnosticProtocol.diagnostic-
Connection and DiagnosticProtocol.serviceTable.
However, the existing relation created by means of the reference DiagnosticSer-
viceTable.diagnosticConnection is not necessarily required to be removed. It
may just as well continue to exist. However, in this case an obvious consistency rule
as described in [constr_1406] applies.
[constr_1406] DiagnosticServiceTable.diagnosticConnection vs. Diag-
nosticProtocol.diagnosticConnection dIf a DiagnosticServiceTable ex-
ists that fulfills the following conditions:
• reference DiagnosticServiceTable.diagnosticConnection exists
• the DiagnosticServiceTable is referenced by means of DiagnosticPro-
tocol.serviceTable
then all of the DiagnosticConnections referenced by means of DiagnosticSer-
viceTable.diagnosticConnection shall also be referenced in the role diagnos-
ticConnection from a DiagnosticProtocol that in turn references the respective
DiagnosticServiceTable in the role DiagnosticProtocol.serviceTable.c()
+functionalRequest
Referrable ARElement
TpConnection
+ident TpConnectionIdent 0..* DiagnosticConnection
0..1
+response
0..1
FlexrayArTpConnection
+responseOnEvent
+ connectionPrioPdus: Integer [0..1]
0..1
+physicalRequest
J1939TpConnection 0..1
+ broadcast: Boolean
+ bufferRatio: PositiveInteger [0..1]
+ cancellation: Boolean [0..1]
+ dynamicBs: Boolean [0..1]
+ maxBs: PositiveInteger [0..1]
+ maxExpBs: PositiveInteger [0..1]
+ retry: Boolean [0..1]
LinTpConnection
CanTpConnection
+ addressingFormat: CanTpAddressingFormatType
+ cancellation: Boolean [0..1]
+ maxBlockSize: Integer [0..1]
+ paddingActivation: Boolean
+ taType: NetworkTargetAddressType [0..1]
+ timeoutBr: TimeValue [0..1]
+ timeoutBs: TimeValue [0..1]
+ timeoutCr: TimeValue [0..1]
+ timeoutCs: TimeValue [0..1]
FlexrayTpConnection
+ bandwidthLimitation: Boolean
+periodicResponseUudt 0..*
Identifiable
DoIpTpConnection
+tpSdu PduTriggering
+doIpSourceAddress 1 +doIpTargetAddress 1
Identifiable
DoIpLogicAddress
+ address: Integer
ARElement
DiagnosticContributionSet
«atpSplitable»
+commonProperties 0..1
«atpVariation»
DiagnosticCommonProps
+debounceAlgorithmProps 0..*
«enumeration» Referrable
DiagnosticDebounceBehaviorEnum DiagnosticDebounceAlgorithmProps
«enumeration»
DiagnosticStatusBitHandlingTestFailedSinceLastClearEnum
statusBitNormal
statusBitAgingAndDisplacement
4
Class <<atpVariation>> DiagnosticCommonProps
statusBit DiagnosticStatusBit 0..1 attr This attribute defines, whether the aging and
HandlingTest HandlingTestFailed displacement mechanism shall be applied to the "Test
FailedSinceLast SinceLastClearEnum FailedSinceLastClear" status bits.
Clear
statusBit Boolean 0..1 attr This parameter is used to activate/deactivate the
StorageTest permanent storage of the "TestFailed" status bits.
Failed
true: storage activated
false: storage deactivated
Enumeration DiagnosticMemoryEntryStorageTriggerEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note Trigger types to allocate an event memory entry.
Literal Description
confirmed Status information of UDS DTC status bit 3
Tags:atp.EnumerationLiteralIndex=0
fdcThreshold Threshold to allocate an event memory entry and to capture the Freeze Frame.
Tags:atp.EnumerationLiteralIndex=1
pending Status information of UDS DTC status bit 2.
Tags:atp.EnumerationLiteralIndex=2
testFailed Status information of UDS DTC status bit 0.
Tags:atp.EnumerationLiteralIndex=3
Enumeration DiagnosticDataCaptureEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::DiagnosticCommonProps
Note Data triggering types
Literal Description
capture This represents the intention to capture the environment data asynchronously after the actual capture
AsynchronouslyTo API function terminated.
Reporting
Tags:atp.EnumerationLiteralIndex=0
capture This represents the intention to capture the environment data synchronously within the capture API
SynchronouslyTo function.
Reporting
Tags:atp.EnumerationLiteralIndex=1
Enumeration DiagnosticClearDtcLimitationEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::DiagnosticCommonProps
Note Scope of the DEM_ClearDTC Api.
Literal Description
5
4
Enumeration DiagnosticClearDtcLimitationEnum
allSupportedDtcs DEM_ClearDtc API accepts all supported DTC values.
Tags:atp.EnumerationLiteralIndex=0
clearAllDtcs DEM_ClearDtc API accepts ClearAllDTCs only.
Tags:atp.EnumerationLiteralIndex=1
Enumeration DiagnosticEventDisplacementStrategyEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note Defines the displacement strategy.
Literal Description
full Event memory entry displacement is enabled, by consideration of priority active/passive status, and
occurrence.
Tags:atp.EnumerationLiteralIndex=0
none Event memory entry displacement is disabled.
Tags:atp.EnumerationLiteralIndex=1
prioOcc Event memory entry displacement is enabled, by consideration of priority and occurrence (but without
active/passive status).
Tags:atp.EnumerationLiteralIndex=2
Enumeration DiagnosticOccurrenceCounterProcessingEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::DiagnosticCommonProps
Note The occurrence counter triggering types.
Literal Description
confirmedDtcBit The occurrence counter is triggered by the TestFailed bit if the fault confirmation was successful
(ConfirmedDTC bit is set).
Tags:atp.EnumerationLiteralIndex=0
testFailedBit The occurrence counter is only triggered by the TestFailed bit (and the fault confirmation is not
considered).
Tags:atp.EnumerationLiteralIndex=1
Enumeration DiagnosticTypeOfDtcSupportedEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note Supported Dtc Types
Literal Description
iso11992_4 ISO11992-4 DTC format
Tags:atp.EnumerationLiteralIndex=0
iso14229_1 ISO14229-1 DTC format (3 byte format)
Tags:atp.EnumerationLiteralIndex=1
5
4
Enumeration DiagnosticTypeOfDtcSupportedEnum
iso15031_6 ISO15031-6 DTC format (2 byte format)
Tags:atp.EnumerationLiteralIndex=2
saeJ1939_73 SAEJ1939-73 DTC format
Tags:atp.EnumerationLiteralIndex=3
saeJ2012_da SAE_J2012-DA_DTCFormat_00 (3 byte format)
Tags:atp.EnumerationLiteralIndex=4
5 Diagnostic Services
5.1 Introduction
The meta-model for the diagnostic services according to AUTOSAR, to a large degree,
takes over aspects of the description of diagnostic services according to the definition
of Unified Diagnostic Services (UDS) as of ISO 14229 [16].
0..1
DiagnosticCommonElement
+serviceClass
DiagnosticServiceClass
«atpAbstract» 0..1
DiagnosticCommonElement
DiagnosticCustomServiceClass
c()
The background of [constr_1329] is obviously related to the semantics of Diagnos-
ticServiceClass which is to define model attributes that are shared among all
DiagnosticServiceInstances.
This would not be possible if more that one DiagnosticServiceClass with a di-
verging set of attribute values exists.
Class DiagnosticServiceClass (abstract)
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::CommonService
Note This meta-class provides the ability to define common properties that are shared among all instances of
sub-classes of DiagnosticServiceInstance.
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Subclasses DiagnosticClearDiagnosticInformationClass, DiagnosticClearResetEmissionRelatedInfoClass, Diagnostic
ComControlClass, DiagnosticControlDTCSettingClass, DiagnosticCustomServiceClass, DiagnosticData
TransferClass, DiagnosticDynamicallyDefineDataIdentifierClass, DiagnosticEcuResetClass, DiagnosticIo
ControlClass, DiagnosticReadDTCInformationClass, DiagnosticReadDataByIdentifierClass, Diagnostic
ReadDataByPeriodicIDClass, DiagnosticReadMemoryByAddressClass, DiagnosticReadScalingDataBy
IdentifierClass, DiagnosticRequestControlOfOnBoardDeviceClass, DiagnosticRequestCurrentPowertrain
DataClass, DiagnosticRequestDownloadClass, DiagnosticRequestEmissionRelatedDTCClass,
DiagnosticRequestEmissionRelatedDTCPermanentStatusClass, DiagnosticRequestFileTransferClass,
DiagnosticRequestOnBoardMonitoringTestResultsClass, DiagnosticRequestPowertrainFreezeFrame
DataClass, DiagnosticRequestUploadClass, DiagnosticRequestVehicleInfoClass, DiagnosticResponse
OnEventClass, DiagnosticRoutineControlClass, DiagnosticSecurityAccessClass, DiagnosticSession
ControlClass, DiagnosticTransferExitClass, DiagnosticWriteDataByIdentifierClass, DiagnosticWrite
MemoryByAddressClass
Attribute Type Mult. Kind Note
– – – – –
Table 5.1: DiagnosticServiceClass
4
Class DiagnosticServiceInstance (abstract)
serviceClass DiagnosticServiceClass 0..1 ref This represents the corresponding "class", i.e. this
meta-class provides properties that are shared among all
instances of applicable sub-classes of DiagnosticService
Instance.
The subclasses that affected by this pattern implement
references to the applicable "class"-role that substantiate
this abstract reference.
Stereotypes: atpAbstract
DiagnosticCommonElement
DiagnosticCustomServiceInstance
+customServiceClass DiagnosticCustomServiceClass
4
Class DiagnosticCustomServiceInstance
Attribute Type Mult. Kind Note
customService DiagnosticCustom 0..1 ref Reference to the corresponding DiagnosticCustom
Class ServiceClass ServiceClass.
[constr_1330] Custom service identifier shall not overlap with standardized ser-
vice identifiers dThe value of the attribute customServiceId shall not be set to
any of the values reserved for standardized service identifiers as defined by the ISO
14229-1, see [16].c()
Class DiagnosticCustomServiceClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::CommonService
Note This represents the ability to define a custom diagnostic service class and assign an ID to it. Further
configuration is not foreseen from the point of view of the diagnostic extract and consequently needs to
be done on the level of ECUC.
Tags:atp.recommendedPackage=DiagnosticCustomServiceClasses
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
customService PositiveInteger 0..1 attr This attribute may only be used for the definition of
Id custom services. The values shall not overlap with
existing standardized service IDs.
DiagnosticCommonElement
DiagnosticEnvironmentalCondition
+environmentalCondition 0..1
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticSession
+diagnosticSession
+ id: PositiveInteger [0..1]
0..* + jumpToBootLoader: DiagnosticJumpToBootLoaderEnum [0..1]
+ p2ServerMax: TimeValue [0..1]
+ p2StarServerMax: TimeValue [0..1]
+securityLevel 0..*
DiagnosticCommonElement «enumeration»
DiagnosticSecurityLevel DiagnosticJumpToBootLoaderEnum
Class DiagnosticSecurityLevel
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm
Note This meta-class represents the ability to define a security level considered for diagnostic purposes.
Tags:atp.recommendedPackage=DiagnosticSecurityLevels
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
accessData PositiveInteger 0..1 attr This represents the size of the AccessDataRecord used
RecordSize in GetSeed. Unit:byte.
keySize PositiveInteger 0..1 attr This represents the size of the security key. Unit: byte.
numFailed PositiveInteger 0..1 attr This represents the number of failed security accesses
SecurityAccess after which the delay time is activated.
securityDelay TimeValue 0..1 attr This represents the delay time after a failed security
Time access. Unit: second.
seedSize PositiveInteger 0..1 attr This represents the size of the security seed. Unit: byte.
Class DiagnosticAccessPermission
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm
Note This represents the specification of whether a given service can be accessed according to the existence
of meta-classes referenced by a particular DiagnosticAccessPermission.
In other words, this meta-class acts as a mapping element between several (otherwise unrelated) pieces
of information that are put into context for the purpose of checking for access rights.
Tags:atp.recommendedPackage=DiagnosticAccessPermissions
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnostic DiagnosticSession * ref This represents the associated DiagnosticSessions
Session
environmental Diagnostic 0..1 ref This represents the environmental conditions associated
Condition EnvironmentalCondition with the access permission.
securityLevel DiagnosticSecurityLevel * ref This represents the associated DiagnosticSecurityLevels
Class DiagnosticSession
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm
Note This meta-class represents the ability to define a diagnostic session.
Tags:atp.recommendedPackage=DiagnosticSessions
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
id PositiveInteger 0..1 attr This is the numerical identifier used to identify the
DiagnosticSession in the scope of diagnostic workflow
jumpToBoot DiagnosticJumpToBoot 0..1 attr This attribute represents the ability to define whether this
Loader LoaderEnum diagnostic session allows to jump to Bootloader (OEM
Bootloader or System Supplier Bootloader).
If this diagnostic session doesn’t allow to jump to
Bootloader the value JumpToBootLoaderEnum.noBoot
shall be chosen.
p2ServerMax TimeValue 0..1 attr This is the session value for P2ServerMax in seconds
(per Session Control).
The AUTOSAR configuration standard is to use SI units,
so this parameter is defined as a float value in seconds.
p2StarServer TimeValue 0..1 attr This is the session value for P2*ServerMax in seconds
Max (per Session Control).
The AUTOSAR configuration standard is to use SI units,
so this parameter is defined as a float value in seconds.
Enumeration DiagnosticJumpToBootLoaderEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm
Note This enumeration contains the options for jumping to a boot loader.
Literal Description
5
4
Enumeration DiagnosticJumpToBootLoaderEnum
noBoot This diagnostic session doesn’t allow to jump to Bootloader.
Tags:atp.EnumerationLiteralIndex=0
oemBoot This diagnostic session allows to jump to OEM Bootloader. In this case the bootloader send the final
response.
Tags:atp.EnumerationLiteralIndex=1
oemBootRespApp This diagnostic session allows to jump to OEM Bootloader and application sends final response.
Tags:atp.EnumerationLiteralIndex=3
systemSupplierBoot This diagnostic session allows to jump to System Supplier Bootloader. In this case the bootloader
send the final response.
Tags:atp.EnumerationLiteralIndex=2
systemSupplierBoot This diagnostic session allows to jump to System Supplier Bootloader and application sends final
RespApp response.
Tags:atp.EnumerationLiteralIndex=4
DiagnosticCommonElement
DiagnosticEnvironmentalCondition
0..1 +modeElement
DiagnosticEnvConditionFormulaPart
DiagnosticEnvCompareCondition
+ compareType: DiagnosticCompareTypeEnum
DiagnosticEnvModeCondition DiagnosticEnvDataCondition
«enumeration»
DiagnosticCompareTypeEnum +compareValue 0..1 +dataElement
0..1
isEqual Identifiable
ValueSpecification
isNotEqual DiagnosticDataElement
isLessThan + shortLabel: Identifier [0..1]
isLessOrEqual + arraySizeSemantics: ArraySizeSemanticsEnum [0..1]
isGreaterThan + maxNumberOfElements: PositiveInteger [0..1]
isGreaterOrEqual + scalingInfoSize: PositiveInteger [0..1]
Class DiagnosticEnvironmentalCondition
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition
Note The meta-class DiagnosticEnvironmentalCondition formalizes the idea of a condition which is evaluated
during runtime of the ECU by looking at "environmental" states (e.g. one such condition is that the
vehicle is not driving, i.e. vehicle speed == 0).
Tags:atp.recommendedPackage=DiagnosticEnvironmentalConditions
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
formula DiagnosticEnvCondition 0..1 aggr This attribute represents the formula part of the
Formula DiagnosticEnvironmentalCondition.
modeElement DiagnosticEnvMode * aggr This aggregation contains a representation of Mode
Element Declarations in the context of a DiagnosticEnvironmental
Condition.
Regarding the strategy for returning NRC values please refer to the specification
of the SWS Dcm [10].
c(RS_DEXT_00079)
[TPS_DEXT_01117] Semantics of DiagnosticEnvConditionFormula.nrc-
Value dIf a diagnostic functionality cannot be executed because an environmental
condition fails, i.e. the formula is evaluated to false, then the diagnostic stack shall
send an optional negative response code (NRC) back to the client (if it is present).
If no value for NRC is defined then a pre-defined NRC value as defined in the SWS
Dcm [10] will be sent back. The value of the NRC is directly related to the specific
DiagnosticEnvConditionFormula and is therefore formalized in the attribute Di-
agnosticEnvConditionFormula.nrcValue.c(RS_DEXT_00079)
[constr_1464] Allowed value range of DiagnosticEnvConditionFormula.nrc-
Value dThe value of attribute DiagnosticEnvConditionFormula.nrcValue shall
be limited to the interval [1..255].c()
The rationale for the existence of [constr_1464] is provided by ISO 14229-1 [16].
Enumeration DiagnosticCompareTypeEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition
Note Enumeration for the type of a comparison of values usually expressed by the following operators: ==,
!=, <, <=, >, >=
Literal Description
isEqual equal
Tags:atp.EnumerationLiteralIndex=0
isGreaterOrEqual greater than or equal
Tags:atp.EnumerationLiteralIndex=5
isGreaterThan greater than
Tags:atp.EnumerationLiteralIndex=4
isLessOrEqual less than or equal
Tags:atp.EnumerationLiteralIndex=3
isLessThan less than
Tags:atp.EnumerationLiteralIndex=2
isNotEqual not equal
Tags:atp.EnumerationLiteralIndex=1
Class DiagnosticEnvDataCondition
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition
Note A DiagnosticEnvDataCondition is an atomic condition that compares the current value of the referenced
DiagnosticDataElement with a constant value defined by the ValueSpecification. All compareTypes are
supported.
Base ARObject, DiagnosticEnvCompareCondition, DiagnosticEnvConditionFormulaPart
Attribute Type Mult. Kind Note
compareValue ValueSpecification 0..1 aggr This attribute represents a fixed compare value taken to
evaluate the compare condition.
dataElement DiagnosticDataElement 0..1 ref This reference represents the related diagnostic data
element.
Table 5.15: DiagnosticEnvDataCondition
Referrable
DiagnosticEnvModeElement
DiagnosticEnvSwcModeElement DiagnosticEnvBswModeElement
«instanceRef»
«instanceRef»
AtpStructureElement
Identifiable
ModeDeclaration
Class DiagnosticEnvSwcModeElement
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition
Note This meta-class represents the ability to refer to a ModeDeclaration in a concrete System context.
Base ARObject, DiagnosticEnvModeElement, Referrable
Attribute Type Mult. Kind Note
mode ModeDeclaration 0..1 iref This reference identifies both the ModeDeclarationGroup
Prototype and the ModeDeclaration for the specific mode
comparison.
InstanceRef implemented by:PModeInSystemInstance
Ref
Table 5.18: DiagnosticEnvSwcModeElement
In this case, however, proprietary values of the attribute category shall be prefixed
with a company-specific name fragment in order to avoid collisions that could occur if or
when the list of possible values claimed by the AUTOSAR standard itself is extended.
Example:
Listing 5.2: Example for the definition of a custom category
<AR-PACKAGE>
<SHORT-NAME>DiagnosticExtractExample</SHORT-NAME>
<ELEMENTS>
<DIAGNOSTIC-ECU-RESET>
<SHORT-NAME>ResetTheHardWay</SHORT-NAME>
<CATEGORY>ACME_REALLY_HARD_RESET</CATEGORY>
</DIAGNOSTIC-ECU-RESET>
</ELEMENTS>
</AR-PACKAGE>
5.5.1 DataByIdentifier
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
0..1 +accessPermission
DiagnosticCommonElement
DiagnosticServiceInstance
+serviceClass
«atpAbstract» 0..1
DiagnosticDataByIdentifier DiagnosticReadDataByIdentifierClass
0..1
+readClass
{redefines
serviceClass}
0..1 +dataIdentifier
DiagnosticCommonElement
DiagnosticReadDataByIdentifier
DiagnosticAbstractDataIdentifier
«atpVariation»
+ id: PositiveInteger [0..1]
DiagnosticDataIdentifier DiagnosticDynamicDataIdentifier
DiagnosticWriteDataByIdentifier DiagnosticWriteDataByIdentifierClass
+writeClass
0..1
{redefines
serviceClass}
Class DiagnosticWriteDataByIdentifierClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::DataByIdentifier
Note This meta-class contains attributes shared by all instances of the "Write Data by Identifier" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticDataByIdentifiers
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.23: DiagnosticWriteDataByIdentifierClass
Class DiagnosticReadDataByIdentifierClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::DataByIdentifier
Note This meta-class contains attributes shared by all instances of the "Read Data by Identifier" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticDataByIdentifiers
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
maxDidToRead PositiveInteger 0..1 attr This attribute represents the maximum number of allowed
DIDs in a single instance of DiagnosticReadDataBy
Identifier.
Table 5.25: DiagnosticReadDataByIdentifierClass
4
Class DiagnosticValueNeeds
processingStyle DiagnosticProcessing 0..1 attr This attribute controls whether interaction requires the
StyleEnum software-component to react synchronously on a request
or whether it processes the request in background but still
the DCM has to issue the call again to eventually obtain
the result of the request.
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
0..1 +accessPermission
DiagnosticCommonElement
DiagnosticServiceInstance
+serviceClass
«atpAbstract» 0..1
DiagnosticCommonElement
DiagnosticDataByIdentifier
+dataIdentifier DiagnosticAbstractDataIdentifier
0..1 «atpVariation»
+ id: PositiveInteger [0..1]
DiagnosticDataIdentifier
«atpVariation,atpSplitable»
+dataElement 0..*
DiagnosticParameter
«atpIdentityContributor»
+ bitOffset: PositiveInteger [0..1]
«atpVariation,atpSplitable»
+dataElement 0..1
Identifiable
DiagnosticDataElement
DiagnosticReadScalingDataByIdentifier DiagnosticReadScalingDataByIdentifierClass
+readScalingDataClass
0..1
Class DiagnosticReadScalingDataByIdentifierClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::DataByIdentifier
Note This meta-class contains attributes shared by all instances of the "Read Scaling Data by Identifier"
diagnostic service.
Tags:atp.recommendedPackage=DiagnosticDataByIdentifiers
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.28: DiagnosticReadScalingDataByIdentifierClass
5.5.2 IOControl
represent the capabilities of the server rather than a concrete request message.c(RS_-
DEXT_00014)
[TPS_DEXT_01016] The capability returnControlToEcu dAccording to the state-
ment made by [TPS_DEXT_01015], there is no formal means provided to configure the
capability to execute returnControlToEcu. This lack of configuration is intentional be-
cause the capability is always available and cannot be revoked anyway.c(RS_DEXT_-
00014)
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticControlEnableMaskBit
0..*
DiagnosticAbstractDataIdentifier Identifiable
DiagnosticDataIdentifier DiagnosticDataElement
Class DiagnosticIoControlClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::IOControl
Note This meta-class contains attributes shared by all instances of the "IO Control" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticIoControls
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.30: DiagnosticIoControlClass
Class DiagnosticIoControlNeeds
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note Specifies the general needs on the configuration of the Diagnostic Communication Manager (DCM)
which are not related to a particular item (e.g. a PID). The main use case is the mapping of service ports
to the Dcm which are not related to a particular item.
Base ARObject, DiagnosticCapabilityElement, Identifiable, MultilanguageReferrable, Referrable, Service
Needs
Attribute Type Mult. Kind Note
currentValue DiagnosticValueNeeds 0..1 ref Reference to the DiagnosticValueNeeds indicating the
access to the current value via signalBasedDiagnostics.
didNumber PositiveInteger 0..1 attr This represents a Data identifier for the diagnostic value.
This allows to predefine the DID number if the a function
developer has received a particular requirement from the
OEM or from a standardization body.
freezeCurrent Boolean 0..1 attr This attribute determines, if the referenced port supports
StateSupported temporary freezing of I/O value.
resetToDefault Boolean 0..1 attr This represents a flag for the existence of the ResetTo
Supported Default operation in the service interface.
shortTerm Boolean 0..1 attr This attribute determines, if the referenced port supports
Adjustment temporarily setting of I/O value to a specific value
Supported provided by the diagnostic tester.
Please note that the modeling of the controlEnableMaskBit intentionally does not
use the ordered annotation to assign bit numbers to the aggregated Diagnostic-
ControlEnableMaskBits.
The control mask record does not necessarily have to be used from top to bottom
without gaps. Example: bit 3 could be unused, but 0,1, and 4 could be used.
5.5.3 EcuReset
+accessPermission 0..1
DiagnosticCommonElement
+serviceClass
DiagnosticServiceInstance
«atpAbstract» 0..1
DiagnosticEcuReset DiagnosticEcuResetClass
+ecuResetClass
+ customSubFunctionNumber: PositiveInteger [0..1] + respondToReset: DiagnosticResponseToEcuResetEnum [0..1]
0..1
{redefines
serviceClass}
«enumeration»
DiagnosticResponseToEcuResetEnum
respondBeforeReset
respondAfterReset
Class DiagnosticEcuReset
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::EcuReset
Note This represents an instance of the "ECU Reset" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticEcuResets
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
5
4
Class DiagnosticEcuReset
customSub PositiveInteger 0..1 attr This attribute shall be used to define a custom
Function sub-function number if none of the standardized values of
Number category shall be used.
ecuResetClass DiagnosticEcuReset 0..1 ref This reference substantiates that abstract reference in the
Class role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticEcuReset in the
given context.
Class DiagnosticEcuResetClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::EcuReset
Note This meta-class contains attributes shared by all instances of the "Ecu Reset" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticEcuResets
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
respondTo DiagnosticResponseTo 0..1 attr This attribute defines whether the response to the Ecu
Reset EcuResetEnum Reset service shall be transmitted before or after the
actual reset.
Table 5.34: DiagnosticEcuResetClass
Enumeration DiagnosticResponseToEcuResetEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::EcuReset
Note
Literal Description
respondAfterReset Answer to EcuReset service should come after the reset.
Tags:atp.EnumerationLiteralIndex=0
respondBefore Answer to EcuReset service should come before the reset.
Reset
Tags:atp.EnumerationLiteralIndex=1
Please note that (as already explained in section 5.5) the SubFunctions of this ser-
vice are modeled by means of the category attribute.
[TPS_DEXT_01056] Applicable values for DiagnosticEcuReset.category dThe
following values of the attribute DiagnosticEcuReset.category are standardized
by AUTOSAR:
• HARD_RESET
• KEY_OFF_ON_RESET
• SOFT_RESET
• ENABLE_RAPID_POWER_SHUT_DOWN
• DISABLE_RAPID_POWER_SHUT_DOWN
The meaning of these values is described in the applicable ISO document [16].c(RS_-
DEXT_00001, RS_DEXT_00004, RS_DEXT_00051)
[TPS_DEXT_01019] Correspondence of category values to numerical values
mentioned in the ISO 14229-1 dThe ISO 14229-1 [16] standard document defines
specific numerical values for the sub-functions of the diagnostic service EcuReset.
The correspondence of the numerical values to the pre-defined values of category
according to [TPS_DEXT_01056] is pretty obvious because the definition of values
defined in [TPS_DEXT_01056] has been directly inspired by the ISO 14229-1 [16]
standard document.c(RS_DEXT_00001, RS_DEXT_00004, RS_DEXT_00051)
[TPS_DEXT_01020] Manufacturer-specific values for sub-functions of service
EcuReset dThe ISO 14229-1 [16] standard document, beyond the standardized nu-
merical values for sub-functions, reserves a numerical range of subFunction identifiers
for manufacturer- or supplier-specific use.
In this case it is possible to define further values for category, provided that a custom
prefix is used to avoid potential name clashes with further extensions of the AUTOSAR
standard, namely [TPS_DEXT_01056].c(RS_DEXT_00001, RS_DEXT_00004, RS_-
DEXT_00051)
[TPS_DEXT_01021] Semantics of DiagnosticEcuReset.customSubFunction-
Number dThe attribute DiagnosticEcuReset.customSubFunctionNumber has
been introduced to allow for the specification of a manufacturer- or supplier-specific
value to represent the custom sub-function in the diagnostic communication.
The tuple created by the values of attributes DiagnosticEcuReset.category and
DiagnosticEcuReset.customSubFunctionNumber fully specifies identification of
the manufacturer- or supplier-specific sub-function.c(RS_DEXT_00004, RS_DEXT_-
00047, RS_DEXT_00051)
[constr_1331] Existence of DiagnosticEcuReset.customSubFunctionNumber
dThe attribute DiagnosticEcuReset.customSubFunctionNumber shall only exist
if the value of DiagnosticEcuReset.category is outside the standardized set of
values as defined by [TPS_DEXT_01056].c()
[constr_1332] Value range for DiagnosticEcuReset.customSubFunctionNum-
ber dThe allowed value for DiagnosticEcuReset.customSubFunctionNumber
shall always be within the closed interval 0x40 .. 0x7E.c()
5.5.4 ClearDiagnosticInformation
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance
+serviceClass
«atpAbstract» 0..1
DiagnosticClearDiagnosticInformation DiagnosticClearDiagnosticInformationClass
+clearDiagnosticInformationClass
0..1
{redefines
serviceClass}
Class DiagnosticClearDiagnosticInformationClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ClearDiagnosticInfo
Note This meta-class contains attributes shared by all instances of the "Clear Diagnostic Information"
diagnostic service.
Tags:atp.recommendedPackage=DiagnosticClearDiagnosticInformations
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.37: DiagnosticClearDiagnosticInformationClass
This chapter describes the modeling of diagnostic services for memory access (0x23,
0x3D, 0x34-0x37). The purpose of these services is to access memory on the diag-
nostic stack on request of the tester.
The service description for accessing memory for diagnostic purposes is modeled by
the abstract meta-class DiagnosticMemoryByAddress. It is supposed to provide
all model properties relevant for the memory access.
The description of memory access, to some extent, requires a formal description of the
memory segments to take into account. For this purpose the meta-class Diagnos-
ticMemoryIdentifier has been introduced and referenced by DiagnosticMem-
oryAddressableRangeAccess in the role memoryRange.
The intent of this modeling was not to provide a generic memory model but to allow for
the specification of memory properties just as far as diagnostics is concerned.
The aggregation of DiagnosticMemoryIdentifier at DiagnosticMemoryByAd-
dress may or may not be relevant for an OEM. However, there is certainly a use case
for adding this information to a DiagnosticExtract that goes back from a tier-1
supplier to an OEM as sort of documentation of the diagnostic configuration.
DiagnosticCommonElement
DiagnosticServiceInstance
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticAccessPermission
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticMemoryByAddress
DiagnosticMemoryIdentifier
+memoryRange 0..*
4
Class DiagnosticMemoryByAddress (abstract)
Attribute Type Mult. Kind Note
– – – – –
Table 5.38: DiagnosticMemoryByAddress
Class DiagnosticMemoryIdentifier
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This meta-class represents the ability to define memory properties from the diagnostics point of view.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
access DiagnosticAccess 0..1 ref This represents that access permission defined for the
Permission Permission specific DiagnosticMemoryIdentifier.
id PositiveInteger 0..1 attr This represents the identification of the memory segment.
memoryHigh PositiveInteger 0..1 attr This represents the upper bound for addresses of the
Address memory segment.
memoryHigh String 0..1 attr This represents a symbolic label for the upper bound for
AddressLabel addresses of the memory segment.
memoryLow PositiveInteger 0..1 attr This represents the lower bound for addresses of the
Address memory segment.
memoryLow String 0..1 attr This represents a symbolic label for the lower bound for
AddressLabel addresses of the memory segment.
Class DiagnosticWriteMemoryByAddress
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This represents an instance of the "Write Memory by Address" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMemory
AddressableRangeAccess, DiagnosticMemoryByAddress, DiagnosticServiceInstance, Identifiable,
MultilanguageReferrable, PackageableElement, Referrable
5
4
Class DiagnosticWriteMemoryByAddress
Attribute Type Mult. Kind Note
writeClass DiagnosticWriteMemory 0..1 ref This reference substantiates that abstract reference in the
ByAddressClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticWritememoryBy
Address in the given context.
Class DiagnosticWriteMemoryByAddressClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This meta-class contains attributes shared by all instances of the "Write Memory by Address" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.42: DiagnosticWriteMemoryByAddressClass
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticMemoryByAddress
DiagnosticMemoryAddressableRangeAccess
DiagnosticWriteMemoryByAddress DiagnosticWriteMemoryByAddressClass
+writeClass
0..1
{redefines serviceClass}
Class DiagnosticReadMemoryByAddress
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This represents an instance of the "Read Memory by Address" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMemory
AddressableRangeAccess, DiagnosticMemoryByAddress, DiagnosticServiceInstance, Identifiable,
MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
readClass DiagnosticReadMemory 0..1 ref This reference substantiates that abstract reference in the
ByAddressClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticReadMemoryBy
Addresst in the given context.
Class DiagnosticReadMemoryByAddressClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This meta-class contains attributes shared by all instances of the "Read Memory by Address" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.44: DiagnosticReadMemoryByAddressClass
DiagnosticCommonElement DiagnosticCommonElement
Dcm::DiagnosticAccessPermission CommonService::DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
CommonService::DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticMemoryByAddress
DiagnosticMemoryAddressableRangeAccess
DiagnosticReadMemoryByAddress DiagnosticReadMemoryByAddressClass
+readClass
0..1
{redefines
serviceClass}
Class DiagnosticTransferExitClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This meta-class contains attributes shared by all instances of the "Transfer Exit" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.46: DiagnosticTransferExitClass
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticMemoryByAddress
DiagnosticTransferExit DiagnosticTransferExitClass
+transferExitClass
0..1
{redefines serviceClass}
Class DiagnosticDataTransferClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This meta-class contains attributes shared by all instances of the "Data Transfer" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.48: DiagnosticDataTransferClass
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance
+serviceClass
«atpAbstract» 0..1
DiagnosticMemoryByAddress
DiagnosticDataTransfer DiagnosticDataTransferClass
+dataTransferClass
0..1
{redefines
serviceClass}
Class DiagnosticRequestDownload
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This represents an instance of the "Request Download" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMemory
AddressableRangeAccess, DiagnosticMemoryByAddress, DiagnosticServiceInstance, Identifiable,
MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
request DiagnosticRequest 0..1 ref This reference substantiates that abstract reference in the
DownloadClass DownloadClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticRequestDownload
in the given context.
Class DiagnosticRequestDownloadClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This meta-class contains attributes shared by all instances of the "Request Download" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.50: DiagnosticRequestDownloadClass
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticMemoryByAddress
DiagnosticMemoryAddressableRangeAccess
DiagnosticRequestDownload DiagnosticRequestDownloadClass
+requestDownloadClass
0..1
{redefines
serviceClass}
+accessPermission 0..1
DiagnosticCommonElement
+serviceClass
DiagnosticServiceInstance
«atpAbstract» 0..1
DiagnosticMemoryByAddress
DiagnosticMemoryAddressableRangeAccess
DiagnosticRequestUpload DiagnosticRequestUploadClass
+requestUploadClass
0..1
{redefines serviceClass}
Class DiagnosticRequestUpload
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This represents an instance of the "Request Upload" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMemory
AddressableRangeAccess, DiagnosticMemoryByAddress, DiagnosticServiceInstance, Identifiable,
MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
requestUpload DiagnosticRequest 0..1 ref This reference substantiates that abstract reference in the
Class UploadClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticRequestUpload in
the given context.
Class DiagnosticRequestUploadClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress
Note This meta-class contains attributes shared by all instances of the "Request Upload" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticMemoryByAdresss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.52: DiagnosticRequestUploadClass
5.5.6 CommunicationControl
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticComControl DiagnosticComControlClass
+comControlClass
+ customSubFunctionNumber: PositiveInteger [0..1]
0..1
{redefines
serviceClass}
DiagnosticComControlSubNodeChannel DiagnosticComControlSpecificChannel
However, the actual implementation of the enabling or disabling is obviously not exe-
cuted directly within the diagnostic stack. It requires some interaction with the BswM
that in turn implements the enabling algorithm.
Therefore, the meta-class modeled for this purpose does not need to refer to ISig-
nalIPduGroups but implements a mode request to the BswM.
[TPS_DEXT_01057] Allowed values of DiagnosticComControl.category dThe
sub-functions of the diagnostic services CommunicationControl are identified by
means of the attribute DiagnosticComControl.category. Standardized values of
DiagnosticComControl.category are:
• ENABLE_RX_AND_TX
• DISABLE_RX_AND_TX
• ENABLE_RX_AND_DISABLE_TX
• DISABLE_RX_AND_ENABLE_TX
• ENABLE_RX_AND_DISABLE_TX_WITH_ENHANCED_ADDRESS_INFORMATION
• ENABLE_RX_AND_TX_WITH_ENHANCED_ADDRESS_INFORMATION
The meaning of these values is described in the applicable ISO document [16].c(RS_-
DEXT_00001, RS_DEXT_00010, RS_DEXT_00051)
[TPS_DEXT_01029] Correspondence of category values to numerical values
mentioned in the ISO 14229-1 dThe ISO 14229-1 [16] standard document defines
specific numerical values for the sub-functions of the diagnostic service Communica-
tionControl.
The correspondence of the numerical values to the pre-defined values of category
according to [TPS_DEXT_01057] is pretty obvious because the definition of values
defined in [TPS_DEXT_01057] has been directly inspired by the ISO 14229-1 [16]
standard document.c(RS_DEXT_00001, RS_DEXT_00010, RS_DEXT_00051)
[TPS_DEXT_01030] Manufacturer-specific values for sub-functions of service
CommunicationControl dThe ISO 14229-1 [16] standard document, beyond the
standardized numerical values for sub-functions, reserves a numerical range of sub-
Function identifiers for manufacturer-specific use.
In this case it is possible to define further values for category, provided that a custom
prefix is used to avoid potential name clashes with further extensions of the AUTOSAR
standard, namely [TPS_DEXT_01057].c(RS_DEXT_00010, RS_DEXT_00047, RS_-
DEXT_00051)
[TPS_DEXT_01031] Semantics of DiagnosticComControl.customSubFunc-
tionNumber dThe attribute DiagnosticComControl.customSubFunctionNum-
ber has been introduced to allow for the specification of a manufacturer-or supplier-
specific value to represent the custom sub-function in the diagnostic communication.
4
Class <<atpVariation>> CommunicationCluster (abstract)
Note The CommunicationCluster is the main element to describe the topological connection of communicating
ECUs.
A cluster describes the ensemble of ECUs, which are linked by a communication medium of arbitrary
topology (bus, star, ring, ...). The nodes within the cluster share the same communication protocol, which
may be event-triggered, time-triggered or a combination of both.
A CommunicationCluster aggregates one or more physical channels.
Tags:vh.latestBindingTime=postBuild
Base ARObject, CollectableElement, FibexElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Subclasses AbstractCanCluster , EthernetCluster, FlexrayCluster, LinCluster, UserDefinedCluster
Attribute Type Mult. Kind Note
baudrate PositiveUnlimitedInteger 0..1 attr Channels speed in bits/s.
physical PhysicalChannel 1..* aggr This relationship defines which channel element belongs
Channel to which cluster. A channel shall be assigned to exactly
one cluster, whereas a cluster may have one or more
channels.
Note: This atpSplitable property has no atp.Splitkey due
to atpVariation (PropertySetPattern).
Stereotypes: atpSplitable; atpVariation
Tags:vh.latestBindingTime=systemDesignTime
protocolName String 0..1 attr The name of the protocol used.
protocolVersion String 0..1 attr The version of the protocol used.
Class DiagnosticComControlSpecificChannel
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::CommunicationControl
Note This represents the ability to add further attributes to the definition of a specific channel that is subject to
the diagnostic service "communication control".
Base ARObject
Attribute Type Mult. Kind Note
specificChannel CommunicationCluster 0..1 ref This represents the affected CommunicationClusters in
the role specificChannel
subnetNumber PositiveInteger 0..1 attr This represents the applicable subnet number (which is
an arbitrary number ranging from 1..14)
Class DiagnosticComControlClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::CommunicationControl
Note This meta-class contains attributes shared by all instances of the "Communication Control" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticCommunicationControls
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
5
4
Class DiagnosticComControlClass
allChannels CommunicationCluster * ref This reference represents the semantics that all available
channels shall be affected. It is still necessary to refer to
individual CommunicatuionClusters because there could
be private CommunicationClusters in the System Extract
that are not subject to the service "communication
control".
By referring to the applicable CommunicationClusters it
can be made sure that only the affected Communication
Clusters are accessed.
specificChannel DiagnosticComControl * aggr This represents the ability to add additional attributes to
SpecificChannel the case that only specific channels are supposed to be
considered,
subNode DiagnosticComControl * aggr This attribute represents the ability to add further
Channel SubNodeChannel attributes to the definition of a specific sub-node channel
that is subject to the diagnostic service "communication
control".
Table 5.56: DiagnosticComControlClass
Class DiagnosticComControlSubNodeChannel
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::CommunicationControl
Note This represents the ability to add further attributes to the definition of a specific sub-node channel that is
subject to the diagnostic service "communication control".
Base ARObject
Attribute Type Mult. Kind Note
subNode CommunicationCluster 0..1 ref This represents the affected CommunicationClusters in
Channel the role subNodeChannel
subNode PositiveInteger 0..1 attr This represents the applicable subNode number. The
Number value corresponds to the request message parameter
nodeIdentificationNumber of diagnostic service
CommunicationControl (0x28).
5.5.7 DynamicallyDefineDataIdentifier
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticDynamicallyDefineDataIdentifier
0..1
{redefines
+dataIdentifier 0..1 +dynamicallyDefineDataIdentifierClass serviceClass}
DiagnosticAbstractDataIdentifier
DiagnosticDynamicallyDefineDataIdentifierClass
DiagnosticDynamicDataIdentifier
+ checkPerSourceId: Boolean [0..1]
+ configurationHandling: DiagnosticHandleDDDIConfigurationEnum [0..1]
+ subfunction: DiagnosticDynamicallyDefineDataIdentifierSubfunctionEnum [0..*]
«enumeration» «enumeration»
DiagnosticHandleDDDIConfigurationEnum DiagnosticDynamicallyDefineDataIdentifierSubfunctionEnum
volatile defineByIdentifier
nonVolatile defineByMemoryAddress
clearDynamicallyDefineDataIdentifier
Enumeration DiagnosticHandleDDDIConfigurationEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::DynamicallyDefineData
Identifier
Note This meta-class represents the options for controlling how the configuration of the DynamicallyDefine
DataIdentifiers is done in the given context.
Literal Description
nonVolatile This indicates that the configuration of DynamicallyDefineDataIdentifier shall be stored as non-volatile
data.
Tags:atp.EnumerationLiteralIndex=0
volatile This indicates that the configuration of DynamicallyDefineDataIdentifier shall be handled as volatile
data.
Tags:atp.EnumerationLiteralIndex=1
Enumeration DiagnosticDynamicallyDefineDataIdentifierSubfunctionEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::DynamicallyDefineData
Identifier
Note This meta-class contains a list of possible subfunctions for the UDS service 0x2C.
Literal Description
5
4
Enumeration DiagnosticDynamicallyDefineDataIdentifierSubfunctionEnum
clearDynamically Clear the specified dynamic data identifier.
DefineDataIdentifier
Tags:atp.EnumerationLiteralIndex=0
defineByIdentifier The definition of dynamic data identifier shall be done via a reference to a diagnostic data identifier.
Tags:atp.EnumerationLiteralIndex=1
defineByMemory The definition of dynamic data identifier shall be done via a reference to a memory address.
Address
Tags:atp.EnumerationLiteralIndex=2
5.5.8 ReadDataByPeriodicIdentifier
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticReadDataByPeriodicID DiagnosticReadDataByPeriodicIDClass
+readDataClass
+ maxPeriodicDidToRead: PositiveInteger [0..1]
0..1 + schedulerMaxNumber: PositiveInteger [0..1]
{redefines serviceClass}
+periodicRate 0..*
«enumeration»
DiagnosticPeriodicRateCategoryEnum DiagnosticPeriodicRate
Class DiagnosticReadDataByPeriodicID
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ReadDataByPeriodicID
Note This represents an instance of the "Read Data by periodic Identifier" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticReadDataByPeriodicIds
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
readDataClass DiagnosticReadDataBy 0..1 ref This reference substantiates that abstract reference in the
PeriodicIDClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticReadDataBy
PeriodicID in the given context.
Class DiagnosticReadDataByPeriodicIDClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ReadDataByPeriodicID
Note This meta-class contains attributes shared by all instances of the "Read Data by periodic Identifier"
diagnostic service.
Tags:atp.recommendedPackage=DiagnosticReadDataByPeriodicIds
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
maxPeriodicDid PositiveInteger 0..1 attr This represents the maximum number of data identifiers
ToRead that can be included in one request.
periodicRate DiagnosticPeriodicRate * aggr This represents the description of a collection of periodic
rates in which the service can be executed.
schedulerMax PositiveInteger 0..1 attr This represents the maximum number of periodic data
Number identifiers that can be scheduled in parallel.
Class DiagnosticPeriodicRate
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ReadDataByPeriodicID
Note This represents the ability to define a periodic rate for the specification of the "read data by periodic ID"
diagnostic service.
Base ARObject
Attribute Type Mult. Kind Note
period TimeValue 0..1 attr This represents the period of the DiagnosticPeriodicRate
in seconds.
periodicRate DiagnosticPeriodicRate 0..1 attr This attribute represents the category of the periodic rate.
Category CategoryEnum
5.5.9 ControlDTCSetting
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticControlDTCSetting DiagnosticControlDTCSettingClass
+dtcSettingClass
+ controlOptionRecordPresent: Boolean [0..1]
0..1
{redefines
serviceClass}
Class DiagnosticControlDTCSetting
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ControlDTCSetting
Note This represents an instance of the "Control DTC Setting" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticControlDtcSettings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dtcSettingClass DiagnosticControlDTC 0..1 ref This reference substantiates that abstract reference in the
SettingClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticControlDTCSetting
in the given context.
Class DiagnosticControlDTCSettingClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ControlDTCSetting
Note This meta-class contains attributes shared by all instances of the "Control DTC Setting" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticControlDtcSettings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
controlOption Boolean 0..1 attr This represents the decision whether the DTCSetting
RecordPresent ControlOptionRecord (see ISO 14229-1) is in general
supported in the request message.
5.5.10 ResponseOnEvent
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticEventWindow
+eventWindow
+ eventWindowTime: DiagnosticEventWindowTimeEnum [0..1]
0..* + storageStateEvaluation: Boolean [0..1]
DiagnosticResponseOnEventTrigger
+event + initialEventStatus: DiagnosticInitialEventStatusEnum [0..1]
0..*
«enumeration»
DiagnosticEventWindowTimeEnum DiagnosticDtcChangeTrigger DiagnosticDataChangeTrigger
«enumeration»
DiagnosticResponseOnEventActionEnum «enumeration»
DiagnosticStoreEventSupportEnum +dataIdentifier 0..1
stop
start noStoreEvent DiagnosticAbstractDataIdentifier
clear storeEvent
DiagnosticDataIdentifier
report all
+ didSize: PositiveInteger [0..1]
+ representsVin: Boolean [0..1]
«enumeration»
DiagnosticInitialEventStatusEnum
returnOnEventCleared
returnOnEventStopped
Class DiagnosticResponseOnEventClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This represents the ability to define common properties for alle instances of the "Response on Event"
diagnostic service.
Tags:atp.recommendedPackage=DiagnosticResponseOnEvents
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
interMessage TimeValue 0..1 attr Provide the minimum time in seconds between two
Time consecutive transmissions of an ROE event.
Class DiagnosticEventWindow
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This represents the ability to define the characteristics of the applicable event window
Base ARObject
Attribute Type Mult. Kind Note
eventWindow DiagnosticEventWindow 0..1 attr This attribute clarifies the validity of the eventWindow
Time TimeEnum
storageState Boolean 0..1 attr If this attribute is set to TRUE the StorageStateBit will be
Evaluation evaluated if this EventWindowTime is requested.
Class DiagnosticDataChangeTrigger
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This represents the ability to define a trigger based on the change of a given DiagnosticDataIdentifier.
Base ARObject, DiagnosticResponseOnEventTrigger
Attribute Type Mult. Kind Note
dataIdentifier DiagnosticDataIdentifier 0..1 ref This represents the corresponding DiagnosticData
Identifier.
Table 5.72: DiagnosticDataChangeTrigger
Class DiagnosticDtcChangeTrigger
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This represents the ability to define a trigger that executes on the change of any DiagnosticTroubleCode.
Base ARObject, DiagnosticResponseOnEventTrigger
Attribute Type Mult. Kind Note
dtcStatusMask PositiveInteger 0..1 attr This attribute represents the ability to define a status
mask for the triggering of an ROE response on the
change of a DTC.
Enumeration DiagnosticInitialEventStatusEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This represents the ability to define an initial status for the ROE service.
Literal Description
returnOnEvent This means that the ResponseOnEvent is initially cleared.
Cleared
Tags:atp.EnumerationLiteralIndex=0
returnOnEvent This means that the ResponseOnEvent is initially stopped.
Stopped
Tags:atp.EnumerationLiteralIndex=1
Enumeration DiagnosticEventWindowTimeEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This represents the ability to define the semantics of the event window.
Literal Description
eventWindow This means that the window extends to this and the following cycle.
CurrentAnd
Tags:atp.EnumerationLiteralIndex=0
FollowingCycle
eventWindow This means that the window is limited to the current cycle.
CurrentCycle
Tags:atp.EnumerationLiteralIndex=1
eventWindowInfinite This means that the window extents without a border.
Tags:atp.EnumerationLiteralIndex=2
Enumeration DiagnosticStoreEventSupportEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This meta-class has the ability to define how a specific event in the context of the UDS service
ResponseOnEvent shall be handled.
Literal Description
all The server supports both, storing and not storing the event.
Tags:atp.EnumerationLiteralIndex=2
noStoreEvent The event terminates when the server is powered down.
Tags:atp.EnumerationLiteralIndex=0
storeEvent The event is persisted over a power down cycle.
Tags:atp.EnumerationLiteralIndex=1
Enumeration DiagnosticResponseOnEventActionEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent
Note This meta-class has the ability to define sub-functions of the UDS service ResponseOnEvent.
Literal Description
clear Clears the configured events.
Tags:atp.EnumerationLiteralIndex=2
report Reports the activated events.
Tags:atp.EnumerationLiteralIndex=3
start Starts the response on event service.
Tags:atp.EnumerationLiteralIndex=1
stop Stops the response on event service.
Tags:atp.EnumerationLiteralIndex=0
5.5.11 ReadDTCInformation
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticReadDTCInformation DiagnosticReadDTCInformationClass
+readDTCInformationClass
0..1
{redefines serviceClass}
• REPORT_DTC_FAULT_DETECTION_COUNTER
• REPORT_DTC_WITH_PERMANENT_STATUS
• REPORT_DTC_EXT_DATA_RECORD_BY_RECORD_NUMBER
• REPORT_USER_DEF_MEMORY_DTC_BY_STATUS_MASK
• REPORT_USER_DEF_MEMORY_DTC_SNAPSHOT_RECORD_BY_DTC_NUMBER
• REPORT_USER_DEF_MEMORY_DTC_EXT_DATA_RECORD_BY_DTC_NUMBER
• REPORT_WWH_OBD_DTC_BY_MASK_RECORD
• REPORT_WWH_OBD_DTC_WITH_PERMANENT_STATUS
The meanings of these values are described in the applicable ISO document (ISO
14229-1) [16].c(RS_DEXT_00001, RS_DEXT_00006, RS_DEXT_00051)
Please note that there is nothing to configure for DiagnosticReadDTCInformation
beyond its mere existence.
Class DiagnosticReadDTCInformation
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ReadDTCInformation
Note This represents an instance of the "Read DTC Information" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticReadDtcInformations
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
read DiagnosticReadDTC 0..1 ref This reference substantiates that abstract reference in the
DTCInformation InformationClass role serviceClass for this specific concrete class.
Class
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticRead
DTCInformation in the given context.
Class DiagnosticReadDTCInformationClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::ReadDTCInformation
Note This meta-class contains attributes shared by all instances of the "ReadDTCInformation" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticReadDtcInformations
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.79: DiagnosticReadDTCInformationClass
5.5.12 RoutineControl
Figure 5.24: Abstract base class for subfunctions of diagnostic service RoutineCon-
trol (0x31)
DiagnosticRoutineControl DiagnosticRoutineControlClass
+routineControlClass
0..1
{redefines serviceClass}
+routine 1
DiagnosticCommonElement
DiagnosticRoutine
+request 0..* +response 0..* +request 0..* +response 0..* +request 0..* +response 0..*
DiagnosticParameter
«atpIdentityContributor»
+ bitOffset: PositiveInteger [0..1]
«atpVariation,atpSplitable»
• DiagnosticStopRoutine.request
• DiagnosticStopRoutine.response
• DiagnosticRequestRoutineResults.response
• DiagnosticRequestRoutineResults.request
• DiagnosticRequestRoutineResults.response
c(RS_DEXT_00015)
A DiagnosticParameter, in turn, aggregates a DiagnosticDataElement (see
section 4.2) in the role dataElement.
[TPS_DEXT_01080] Diagnostic Routine needs to be started dISO 14229-1 [16]
does not foresee the existence of a Diagnostic Routine that is already executing
at boot time. Therefore, a Diagnostic Routine needs to be started at some point
in order to make sense of it.c(RS_DEXT_00015)
[constr_1339] Existence of DiagnosticRoutine.start dIn a complete Diagnos-
ticExtract, the attribute DiagnosticRoutine.start shall always exist for any
given DiagnosticRoutine.c()
[TPS_DEXT_01035] Existence of DiagnosticRoutine.stop and Diagnosti-
cRoutine.requestResult dIn contrast to DiagnosticRoutine.start (as clari-
fied by [constr_1339]), the existence of DiagnosticRoutine.stop and Diagnos-
ticRoutine.requestResult is truly optional.c(RS_DEXT_00015)
[constr_1340] Consistency of DiagnosticServiceSwMapping with respect
to synchronously called DiagnosticRoutines dEach DiagnosticSer-
viceSwMapping that references a DiagnosticRoutineControl that only
aggregates a DiagnosticStartRoutine in the role start shall only reference a
SwcServiceDependency or BswServiceDependency that in turn aggregates a
DiagnosticRoutineNeeds with attribute diagRoutineType set to Diagnosti-
cRoutineTypeEnum.synchronous.c()
[constr_1341] Consistency of DiagnosticServiceSwMapping with respect
to asynchronously called DiagnosticRoutines dEach DiagnosticSer-
viceSwMapping that references a DiagnosticRoutineControl that aggregates
a DiagnosticStopRoutine and/or DiagnosticRequestRoutineResults in the
role stop or requestResult shall only reference a SwcServiceDependency or
BswServiceDependency that in turn aggregates a DiagnosticRoutineNeeds
with attribute diagRoutineType set to DiagnosticRoutineTypeEnum.asyn-
chronous.c()
[TPS_DEXT_01049] Consistency of DiagnosticServiceSwMapping with re-
spect to routine IDs dFor each DiagnosticServiceSwMapping that references
a DiagnosticRoutineNeeds and a DiagnosticRoutineControl, the value of
DiagnosticRoutineNeeds.ridNumber shall be ignored and the value of Diag-
nosticRoutineControl.routine.id shall be taken instead.c(RS_DEXT_00015,
RS_DEXT_00052)
DiagnosticCommonElement
DiagnosticAccessPermission
+accessPermission 0..1
Identifiable
DiagnosticRoutineSubfunction
The DiagnosticRoutineControl service is the only UDS service with both sub-
function and identifier. ISO 14229-1 [16] treats the service with respect to session and
security as a service with identifier.
In other words a DiagnosticRoutine—with its three subfunctions start, stop and
requestResult—for the same identifier can have only DiagnosticAccessPer-
mission with the same referenced DiagnosticSession and DiagnosticSecu-
rityLevel.
However, different DiagnosticEnvironmentalConditions may exist for the sub-
functions of a DiagnosticRoutine with the same identifier (DiagnosticRoutine.
id).
[constr_1772] Unique DiagnosticSession and DiagnosticSecurityLevel
for diagnostic routines that have the same identifier dAll DiagnosticAc-
cessPermissions referenced from DiagnosticRoutines where attribute Diag-
nosticRoutine.id has the identical value shall refer to the identical set of Diag-
nosticSession and DiagnosticSecurityLevel.c()
For this purpose, the reference from the abstract base class1 DiagnosticRoutine-
Subfunction to DiagnosticAccessPermission in the role accessPermission
exists (see Figure 5.26).
Consequently, the reference from meta-class DiagnosticRoutineControl (via its
abstract base class DiagnosticServiceInstance) to meta-class Diagnosti-
cAccessPermission has no meaning.
[constr_1612] Reference from DiagnosticRoutineControl to DiagnosticAc-
cessPermission has no meaning dThe reference from DiagnosticRoutineCon-
trol (via its abstract base class DiagnosticServiceInstance) in the role
accessPermission to meta-class DiagnosticAccessPermission shall not be
used.c()
1
of meta-classes DiagnosticStartRoutine, DiagnosticStopRoutine, and DiagnosticRe-
questRoutineResults
Class DiagnosticRoutine
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This meta-class represents the ability to define a diagnostic routine.
Tags:atp.recommendedPackage=DiagnosticRoutines
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
id PositiveInteger 0..1 attr This is the numerical identifier used to identify the
DiagnosticRoutine in the scope of diagnostic workflow
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
requestResult DiagnosticRequest 0..1 aggr This represents the ability to request the result of a
RoutineResults running routine.
routineInfo PositiveInteger 0..1 attr This represents the routine info byte. The info byte
contains a manufacturer-specific value (for the
identification of record identifiers) that is reported to the
tester.
Other use cases for this attribute are mentioned in ISO
27145 and ISO 26021.
start DiagnosticStartRoutine 0..1 aggr This represents the ability to start a routine
stop DiagnosticStopRoutine 0..1 aggr This represents the ability to stop a running routine.
Class DiagnosticStopRoutine
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This represents the ability to stop a diagnostic routine.
Base ARObject, DiagnosticRoutineSubfunction, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
request DiagnosticParameter * aggr This represents the request parameters.
response DiagnosticParameter * aggr This represents the response parameters.
Class DiagnosticRequestRoutineResults
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This meta-class represents the ability to define the result of a diagnostic routine execution.
Base ARObject, DiagnosticRoutineSubfunction, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
request DiagnosticParameter * aggr This represents the request parameters.
response DiagnosticParameter * aggr This represents the response parameters.
Class DiagnosticRoutineControl
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::RoutineControl
Note This represents an instance of the "Routine Control" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticRoutineControls
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
routine DiagnosticRoutine 1 ref This refers to the applicable DiagnosticRoutine.
routineControl DiagnosticRoutine 0..1 ref This reference substantiates that abstract reference in the
Class ControlClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticRoutineControl in
the given context.
Class DiagnosticRoutineControlClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::RoutineControl
Note This meta-class contains attributes shared by all instances of the "Routine Control" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticRoutineControls
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.86: DiagnosticRoutineControlClass
Class DiagnosticRoutineNeeds
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note Specifies the general needs on the configuration of the Diagnostic Communication Manager (Dcm) which
are not related to a particular item (e.g. a PID). The main use case is the mapping of service ports to the
Dcm which are not related to a particular item.
Base ARObject, DiagnosticCapabilityElement, Identifiable, MultilanguageReferrable, Referrable, Service
Needs
Attribute Type Mult. Kind Note
diagRoutine DiagnosticRoutineType 0..1 attr This denotes the type of diagnostic routine which is
Type Enum implemented by the referenced server port.
5
4
Class DiagnosticRoutineNeeds
ridNumber PositiveInteger 0..1 attr This represents a routine identifier for the diagnostic
routine. This allows to predefine the RID number if the a
function developer has received a particular requirement
from the OEM or from a standardization body.
Enumeration DiagnosticRoutineTypeEnum
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note This enumerator specifies the different types of diagnostic routines.
Literal Description
asynchronous This indicates that the diagnostic server is not blocked while the diagnostic routine is running.
Tags:atp.EnumerationLiteralIndex=0
synchronous This indicates that the diagnostic routine blocks the diagnostic server in the ECU while the routine is
running.
Tags:atp.EnumerationLiteralIndex=1
5.5.13 SecurityAccess
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticSecurityAccess DiagnosticSecurityAccessClass
+securityAccessClass
+ requestSeedId: PositiveInteger [0..1]
0..1
{redefines serviceClass}
«atpSplitable»
0..* +securityLevel +securityLevel 0..1
DiagnosticCommonElement
DiagnosticSecurityLevel
Class DiagnosticSecurityAccessClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::SecurityAccess
Note This meta-class contains attributes shared by all instances of the "Security Access" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticSecurityAccesss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.90: DiagnosticSecurityAccessClass
5.5.14 SessionControl
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticSessionControl DiagnosticSessionControlClass
+sessionControlClass
0..1
{redefines serviceClass}
DiagnosticCommonElement
DiagnosticSession
According to ISO 14229-1 [16], the diagnostic service SessionControl defines sub-
functions.
[TPS_DEXT_01039] Identification of the sub-function of DiagnosticSession-
Control dIn the case of DiagnosticSessionControl it would not be a good idea
Class DiagnosticSessionControlClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::SessionControl
Note This meta-class contains attributes shared by all instances of the "Session Control" diagnostic service.
Tags:atp.recommendedPackage=DiagnosticSessionControls
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.92: DiagnosticSessionControlClass
5.5.15 RequestFileTransfer
0..1 +accessPermission
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticRequestFileTransfer DiagnosticRequestFileTransferClass
+requestFileTransferClass
0..1
{redefines serviceClass}
4
Class DiagnosticRequestFileTransfer
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
requestFile DiagnosticRequestFile 0..1 ref This reference substantiates that abstract reference in the
TransferClass TransferClass role serviceClass for this specific concrete class.
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticRequestFile
Transfer in the given context.
Class DiagnosticRequestFileTransferClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::DiagnosticService::RequestFileTransfer
Note This meta-class contains attributes shared by all instances of the "Request File transfer" diagnostic
service.
Tags:atp.recommendedPackage=DiagnosticRequestFileTransfers
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.94: DiagnosticRequestFileTransferClass
fixedSize
variableSize
+swDataDefProps 0..1
DiagnosticCommonElement Identifiable
DiagnosticParameterIdentifier DiagnosticDataElement
+dataElement 0..1
+supportInfoByte 0..1
DiagnosticSupportInfoByte «atpVariation,atpSplitable»
+ position: PositiveInteger [0..1]
+ size: PositiveInteger [0..1]
«atpSplitable,atpVariation»
DiagnosticParameterSupportInfo
+supportInfo 0..1
+dataElement 0..*
DiagnosticParameter
«atpIdentityContributor»
+ bitOffset: PositiveInteger [0..1]
Class DiagnosticSupportInfoByte
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This meta-class defines the support information (typically byte A) to declare the usability of the Data
Elements within the so-called packeted PIDs (e.g. PID$68).
Base ARObject
Attribute Type Mult. Kind Note
position PositiveInteger 0..1 attr This represents the position of the supportInfo in the PID.
Unit: byte.
size PositiveInteger 0..1 attr This represents the size of the supportInfo within the PID.
Unit: byte.
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticRequestCurrentPowertrainData DiagnosticRequestCurrentPowertrainDataClass
+requestCurrentPowertrainDiagnosticDataClass
0..1
{redefines serviceClass}
+pid 0..1
DiagnosticCommonElement
DiagnosticParameterIdentifier
Class DiagnosticRequestCurrentPowertrainData
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x01_RequestCurrentPowertrain
DiagnosticData
Note This meta-class represents the ability to model an instance of the OBD mode 0x01 service.
Tags:atp.recommendedPackage=DiagnosticRequestCurrentPowertrainDatas
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
pid DiagnosticParameter 0..1 ref This represents the PID associated with this instance of
Identifier the OBD mode 0x01 service.
requestCurrent DiagnosticRequest 0..1 ref This reference substantiates that abstract reference in the
Powertrain CurrentPowertrainData role serviceClass for this specific concrete class.
DiagnosticData Class
Thereby, the reference represents the ability to access
Class
shared attributes among all DiagnosticRequestCurrent
PowertrainData in the given context.
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
0..1
{redefines serviceClass}
+freezeFrame 0..1
DiagnosticCommonElement
DiagnosticPowertrainFreezeFrame
+pid 0..*
DiagnosticCommonElement
DiagnosticParameterIdentifier
Class DiagnosticRequestPowertrainFreezeFrameData
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x02_RequestPowertrainFreeze
FrameData
Note This meta-class represents the ability to model an instance of the OBD mode 0x02 service.
Tags:atp.recommendedPackage=DiagnosticPowertrainFreezeFrames
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
freezeFrame DiagnosticPowertrain 0..1 ref This represents the associated freeze-frame.
FreezeFrame
request DiagnosticRequest 0..1 ref This reference substantiates that abstract reference in the
Powertrain PowertrainFreezeFrame role serviceClass for this specific concrete class.
FreezeFrame DataClass
Thereby, the reference represents the ability to access
Data
shared attributes among all DiagnosticRequestPowertrain
FreezeFrameData in the given context.
Class DiagnosticRequestPowertrainFreezeFrameDataClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x02_RequestPowertrainFreeze
FrameData
Note This meta-class represents the ability to define common properties for all instances of the "Request
Powertrain Freeze Frame Data" OBD diagnostic service.
Tags:atp.recommendedPackage=DiagnosticPowertrainFreezeFrames
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.101: DiagnosticRequestPowertrainFreezeFrameDataClass
Class DiagnosticPowertrainFreezeFrame
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x02_RequestPowertrainFreeze
FrameData
Note This meta-class represents a powertrain-related freeze-frame. In theory, this meta-class would need an
additional id attribute. However, legal regulations requires only a single value for this attribute anyway.
Tags:atp.recommendedPackage=DiagnosticPowertrainFreezeFrames
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
pid DiagnosticParameter * ref This represents the PID associated with this instance of
Identifier the OBD mode 0x02 service.
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticRequestEmissionRelatedDTC DiagnosticRequestEmissionRelatedDTCClass
+requestEmissionRelatedDtcClass
0..1
{redefines serviceClass}
Figure 5.33: Modeling of diagnostic service for OBD Modes 0x03, 0x07
Class DiagnosticRequestEmissionRelatedDTC
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x03_0x07_RequestEmission
RelatedDTC
Note This meta-class represents the ability to model an instance of the OBD mode 0x03/0x07 service.
Tags:atp.recommendedPackage=DiagnosticRequestEmissionRelatedDTCs
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
request DiagnosticRequest 0..1 ref This reference substantiates that abstract reference in the
Emission EmissionRelatedDTC role serviceClass for this specific concrete class.
RelatedDtc Class
Thereby, the reference represents the ability to access
Class
shared attributes among all DiagnosticRequestEmission
RelatedDTC in the given context.
Class DiagnosticRequestEmissionRelatedDTCClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x03_0x07_RequestEmission
RelatedDTC
Note This meta-class represents the ability to define common properties for all instances of the "Request
Emission Related DTC" OBD diagnostic service.
Tags:atp.recommendedPackage=DiagnosticRequestEmissionRelatedDTCs
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.104: DiagnosticRequestEmissionRelatedDTCClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticClearResetEmissionRelatedInfo DiagnosticClearResetEmissionRelatedInfoClass
+clearResetEmissionRelatedDiagnosticInfoClass
0..1
{redefines serviceClass}
Class DiagnosticClearResetEmissionRelatedInfoClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x04_ClearResetEmission
RelatedInfo
Note This meta-class represents the ability to define common properties for all instances of the "Clear Reset
Emission Related Data" OBD diagnostic service.
Tags:atp.recommendedPackage=DiagnosticClearResetEmissionRelatedInfos
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.106: DiagnosticClearResetEmissionRelatedInfoClass
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticRequestOnBoardMonitoringTestResults DiagnosticRequestOnBoardMonitoringTestResultsClass
+requestOnBoardMonitoringTestResultsClass
0..1
{redefines serviceClass}
+diagnosticTestResult 0..*
DiagnosticCommonElement
DiagnosticTestResult
«atpVariation»
+ updateKind: DiagnosticTestResultUpdateEnum [0..1]
Class DiagnosticRequestOnBoardMonitoringTestResultsClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x06_RequestOnBoard
MonitoringTestResults
Note This meta-class represents the ability to define common properties for all instances of the "Request
On-Board Monitoring Test Results" OBD diagnostic service.
Tags:atp.recommendedPackage=DiagnosticRequestOnBoardMonitoringTestResultss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.108: DiagnosticRequestOnBoardMonitoringTestResultsClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticRequestControlOfOnBoardDevice DiagnosticRequestControlOfOnBoardDeviceClass
+requestControlOfOnBoardDeviceClass
0..1
{redefines serviceClass}
+testId 0..1
DiagnosticCommonElement
DiagnosticTestRoutineIdentifier
+ id: PositiveInteger
+ requestDataSize: PositiveInteger
+ responseDataSize: PositiveInteger
Class DiagnosticRequestControlOfOnBoardDevice
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x08_RequestControlOfOnBoard
Device
Note This meta-class represents the ability to model an instance of the OBD mode 0x08 service.
Tags:atp.recommendedPackage=DiagnosticRequestControlOfOnBoardDevices
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
requestControl DiagnosticRequest 0..1 ref This reference substantiates that abstract reference in the
OfOnBoard ControlOfOnBoard role serviceClass for this specific concrete class.
DeviceClass DeviceClass
Thereby, the reference represents the ability to access
shared attributes among all DiagnosticRequestControlOf
OnBoardDevice in the given context.
testId DiagnosticTestRoutine 0..1 ref This represents the test Id for the mode 0x08.
Identifier
Table 5.109: DiagnosticRequestControlOfOnBoardDevice
Class DiagnosticTestRoutineIdentifier
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x08_RequestControlOfOnBoard
Device
Note This represents the test id of the DiagnosticTestIdentifier.
Tags:atp.recommendedPackage=DiagnosticTestRoutineIdentifier
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
id PositiveInteger 1 attr This represents the numerical id of the DiagnosticTest
Identifier (see SAE J1979-DA).
requestData PositiveInteger 1 attr This represents the specified data size for the request
Size message. Unit: byte.
5
4
Class DiagnosticTestRoutineIdentifier
responseData PositiveInteger 1 attr This represents the specified data size for the response
Size message. Unit:byte.
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticRequestVehicleInfo DiagnosticRequestVehicleInfoClass
+requestVehicleInformationClass
0..1
{redefines serviceClass}
+infoType 0..1
DiagnosticCommonElement
DiagnosticParameter
DiagnosticInfoType +dataElement
«atpVariation,atpSplitable»
+dataElement 0..1
Identifiable
DiagnosticDataElement
«atpVariation»
DataDefProperties::SwDataDefProps
+swDataDefProps 0..1
Identifiable DiagnosticCommonElement
DiagnosticDataElement DiagnosticInfoType
+dataElement 0..1
«atpVariation,atpSplitable»
«atpSplitable»
+dataElement 0..*
DiagnosticParameter
«atpIdentityContributor»
+ bitOffset: PositiveInteger [0..1]
Class DiagnosticInfoType
Package M2::AUTOSARTemplates::DiagnosticExtract::CommonDiagnostics
Note This meta-class represents the ability to model an OBD info type.
Tags:atp.recommendedPackage=DiagnosticInfoTypes
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dataElement DiagnosticParameter * aggr This represents the data associated with the enclosing
DiagnosticInfoType.
Stereotypes: atpSplitable
Tags:atp.Splitkey=dataElement.bitOffset, data
Element.variationPoint.shortLabel
id PositiveInteger 0..1 attr This attribute represents the value of InfoType (see SAE
J1979-DA).
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticAccessPermission DiagnosticServiceClass
+accessPermission 0..1
DiagnosticCommonElement
DiagnosticServiceInstance +serviceClass
«atpAbstract» 0..1
DiagnosticRequestEmissionRelatedDTCPermanentStatusClass
0..1 +requestEmissionRelatedDtcClassPermanentStatus
{redefines serviceClass}
DiagnosticRequestEmissionRelatedDTCPermanentStatus
Class DiagnosticRequestEmissionRelatedDTCPermanentStatus
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x0A_RequestEmissionRelated
DTCPermanentStatus
Note This meta-class represents the ability to model an instance of the OBD mode 0x0A service.
Tags:atp.recommendedPackage=DiagnosticRequestEmissionRelatedDTCPermanentStatuss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceInstance,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
request DiagnosticRequest 0..1 ref This reference substantiates that abstract reference in the
Emission EmissionRelatedDTC role serviceClass for this specific concrete class.
RelatedDtc PermanentStatusClass
Thereby, the reference represents the ability to access
Class
shared attributes among all DiagnosticRequestEmission
Permanent
RelatedDTCPermanentStatus in the given context.
Status
Class DiagnosticRequestEmissionRelatedDTCPermanentStatusClass
Package M2::AUTOSARTemplates::DiagnosticExtract::Dcm::ObdService::Mode_0x0A_RequestEmissionRelated
DTCPermanentStatus
Note This meta-class represents the ability to define common properties for all instances of the "Request
Emission Related DTC Permanent Status" OBD diagnostic service.
Tags:atp.recommendedPackage=DiagnosticRequestEmissionRelatedDTCPermanentStatuss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticServiceClass,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.116: DiagnosticRequestEmissionRelatedDTCPermanentStatusClass
Class BswServiceDependency
Package M2::AUTOSARTemplates::BswModuleTemplate::BswBehavior
Note Specialization of ServiceDependency in the context of an BswInternalBehavior. It allows to associate
BswModuleEntries and data defined for a BSW module or cluster to a given ServiceNeeds element.
Base ARObject, ServiceDependency
Attribute Type Mult. Kind Note
assignedData RoleBasedData * aggr Defines the role of an associated data object (owned by
Assignment this module or cluster) in the context of the ServiceNeeds
element.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
assignedEntry RoleBasedBswModule * aggr Defines the role of an associated BswModuleEntry in the
Role EntryAssignment context of the ServiceNeeds element.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=assignedEntryRole, assignedEntry
Role.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
ident BswService 0..1 aggr This adds the ability to become referrable to BswService
DependencyIdent Dependency.
Stereotypes: atpIdentityContributor
Tags:
atp.Status=shallBecomeMandatory
xml.sequenceOffset=-100
serviceNeeds ServiceNeeds 1 aggr The associated ServiceNeeds.
Class ObdPidServiceNeeds
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note Specifies the abstract needs of a component or module on the configuration of OBD Services in relation
to a particular PID (parameter identifier) which is supported by this component or module.
In case of using a client/server communicated value, the related value shall be communicated via the
port referenced by asssignedPort. The details of this communication (e.g. appropriate naming
conventions) are specified in the related software specifications (SWS).
Base ARObject, DiagnosticCapabilityElement, Identifiable, MultilanguageReferrable, Referrable, Service
Needs
Attribute Type Mult. Kind Note
dataLength PositiveInteger 0..1 attr This attribute is applicable only if the ServiceNeeds is
aggregated within BswModuleDependency.
This attribute represents the length of data (in bytes)
provided for this particular PID signal.
parameterId PositiveInteger 0..1 attr Standardized parameter identifier (PID) according to the
OBD standard specified in attribute "standard".
standard String 0..1 attr Annotates the standard according to which the PID is
given, e.g. "ISO15031-5" or "SAE J1979 Rev May 2007".
Class ObdControlServiceNeeds
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note Specifies the abstract needs of a component or module on the configuration of OBD Service 08 (request
control of on-board system) in relation to a particular test-Identifier (TID) supported by this component or
module.
Base ARObject, DiagnosticCapabilityElement, Identifiable, MultilanguageReferrable, Referrable, Service
Needs
Attribute Type Mult. Kind Note
testId PositiveInteger 0..1 attr Test Identifier (TID) according to ISO 15031-5.
Please note that the Dcm is in general entitled to both read and write a dataElement.
This applies even if the corresponding PortPrototype is a PPortPrototype. This
means that the diagnostic service data mapping is limited to SenderReceiverIn-
terface.
ARElement
DiagnosticCommonElement
DiagnosticAbstractDataIdentifier
DiagnosticDataIdentifier
«atpVariation,atpSplitable»
+dataElement 0..*
DiagnosticServiceDataMapping DiagnosticParameter
«atpIdentityContributor»
+ bitOffset: PositiveInteger [0..1]
«atpVariation,atpSplitable»
«instanceRef»
AtpPrototype Identifiable
DataPrototype DiagnosticDataElement
Please note that this approach of associating elements of a composite data structure
to DiagnosticDataElements of one DiagnosticDataIdentifier based on the
shortName can only work if the depth of the composite data structure is limited to 1.
[TPS_DEXT_01041] Semantics of attribute DiagnosticServiceDataMapping.
diagnosticDataElement dBy means of the attribute DiagnosticService-
DataMapping.diagnosticDataElement it is possible to specify that the Dcm has
access to
• a dataElement in a PortPrototype typed by a SenderReceiverInter-
face or
• an nvData in a PortPrototype typed by an NvDataInterface.
This type of data access is suitable for the diagnostic services ReadDataByI-
dentifier (0x22), WriteDataByIdentifier (0x2E), and InputOutputControl
(0x2F).c(RS_DEXT_00052)
Class DiagnosticServiceDataMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::ServiceMapping
Note This represents the ability to define a mapping of a diagnostic service to a software-component.
This kind of service mapping is applicable for the usage of SenderReceiverInterfaces or event/notifier
semantics in ServiceInterfaces on the adaptive platform.
Tags:atp.recommendedPackage=DiagnosticServiceMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticData DiagnosticDataElement 0..1 ref This represents the applicable payload that corresponds
Element to the referenced DataPrototype in the role mappedData
Element or (in case of a usage on the adaptive platform)
mappedApDataElement.
mappedData DataPrototype 0..1 iref This represents the dataElement in the application
Element software that is accessed for diagnostic purpose. This
role is applicable on the classic platform.
InstanceRef implemented by:DataPrototypeInSystem
InstanceRef
Table 5.122: DiagnosticServiceDataMapping
dataIdentifier dA DiagnosticServiceDataMapping.diagnosticDataEle-
ment shall also be aggregated by a DiagnosticDataByIdentifier in the role
dataIdentifier.dataElement.dataElement.c()
Please note that [constr_1343] shall only apply for the step in the methodology where
the DiagnosticExtract is considered complete to the point that the configuration
of the Dcm and Dem can be derived. Any intermediate step, e.g. hand-over from OEM
to tier-1 supplier does not actually enforce [constr_1343].
In other words, [constr_1343] makes sure that there is a connection between
the DiagnosticServiceDataMapping and the corresponding DiagnosticRead-
DataByIdentifier or DiagnosticWriteDataByIdentifier.
Only by this means the diagnostic service becomes fully usable.
[constr_1344] Condition for the identification of data types of attributes Di-
agnosticServiceDataMapping.mappedDataElement dDiagnosticService-
DataMapping.mappedDataElement shall be typed by either:
• ApplicationPrimitiveDataType where the value of attribute category is
set to VALUE.
• ApplicationArrayDataType where the value of attribute element.cate-
gory is set to VALUE.
c()
Rationale: the DiagnosticServiceDataMapping.mappedDataElement is
mapped to a single DiagnosticDataElement that in turn can only be a primitive
value or an array of primitive values.
Also, the modeling of the reference DiagnosticServiceDataMapping.mapped-
DataElement only supports the case where the target DataPrototype is typed by
an ApplicationDataType.
Class ApplicationPrimitiveDataType
Package M2::AUTOSARTemplates::SWComponentTemplate::Datatype::Datatypes
Note A primitive data type defines a set of allowed values.
Tags:atp.recommendedPackage=ApplicationDataTypes
Base ARElement, ARObject, ApplicationDataType, AtpBlueprint, AtpBlueprintable, AtpClassifier , AtpType,
AutosarDataType, CollectableElement, Identifiable, MultilanguageReferrable, PackageableElement,
Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 5.123: ApplicationPrimitiveDataType
Class ImplementationDataType
Package M2::AUTOSARTemplates::CommonStructure::ImplementationDataTypes
Note Describes a reusable data type on the implementation level. This will typically correspond to a typedef in
C-code.
Tags:atp.recommendedPackage=ImplementationDataTypes
Base ARElement, ARObject, AbstractImplementationDataType, AtpBlueprint, AtpBlueprintable, AtpClassifier ,
AtpType, AutosarDataType, CollectableElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Attribute Type Mult. Kind Note
dynamicArray String 0..1 attr Specifies the profile which the array will follow in case this
SizeProfile data type is a variable size array.
isStructWith Boolean 0..1 attr This attribute is only valid if the attribute category is set to
Optional STRUCTURE.
Element
If set to True, this attribute indicates that the
ImplementationDataType has been created with the
intention to define at least one element of the structure as
optional.
subElement ImplementationData * aggr Specifies an element of an array, struct, or union data
(ordered) TypeElement type.
The aggregation of ImplementionDataTypeElement is
subject to variability with the purpose to support the
conditional existence of elements inside a Implementation
DataType representing a structure.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
symbolProps SymbolProps 0..1 aggr This represents the SymbolProps for the Implementation
DataType.
Stereotypes: atpSplitable
Tags:atp.Splitkey=symbolProps.shortName
typeEmitter NameToken 0..1 attr This attribute is used to control which part of the
AUTOSAR toolchain is supposed to trigger data type
definitions.
Table 5.124: ImplementationDataType
The following constraint only applies to the case where I/O Control is implemented via
sender-receiver-communication (see [TPS_SWCT_01654])
[TPS_DEXT_01043] Purpose of DiagnosticServiceSwMapping dThe meta-class
DiagnosticServiceSwMapping has been introduced to support the creation of
DiagnosticMapping
DiagnosticSwMapping
Identifiable
DiagnosticServiceSwMapping
DiagnosticDataElement +diagnosticDataElement
+ arraySizeSemantics: ArraySizeSemanticsEnum [0..1] 0..1
+ maxNumberOfElements: PositiveInteger [0..1]
+ scalingInfoSize: PositiveInteger [0..1]
AtpStructureElement +mappedFlatSwcServiceDependency
Identifiable
ServiceDependency 0..1
SwcServiceDependency
+mappedSwcServiceDependencyInSystem
0..1 «instanceRef»
IdentCaption
BswServiceDependencyIdent +mappedBswServiceDependency
0..1
+ident 0..1
«atpIdentityContributor»
+serviceInstance 0..1
ServiceDependency
DiagnosticServiceInstance
BswServiceDependency
4
Class DiagnosticSwMapping (abstract)
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Subclasses DiagnosticEnableConditionPortMapping, DiagnosticEventPortMapping, DiagnosticFimFunctionMapping,
DiagnosticOperationCyclePortMapping, DiagnosticServiceSwMapping, DiagnosticStorageConditionPort
Mapping
Attribute Type Mult. Kind Note
– – – – –
Table 5.127: DiagnosticSwMapping
Class DiagnosticServiceSwMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::ServiceMapping
Note This represents the ability to define a mapping of a diagnostic service to a software-component or a
basic-software module. If the former is used then this kind of service mapping is applicable for the usage
of ClientServerInterfaces.
Tags:atp.recommendedPackage=DiagnosticServiceMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
DiagnosticSwMapping, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticData DiagnosticDataElement 0..1 ref This represents a DiagnosticDataElement required to
Element execute the respective diagnostic service in the context of
the diagnostic service mapping,
mappedBsw BswService 0..1 ref This is supposed to represent a reference to a Bsw
Service DependencyIdent ServiceDependency. the latter is not derived from
Dependency Referrable and therefore this detour needs to be
implemented to still let BswServiceDependency become
the target of a reference.
mappedFlatSwc SwcService 0..1 ref This represents the ability to refer to an AtomicSw
Service Dependency ComponentType that is available without the definition of
Dependency how it will be embedded into the component hierarchy.
mappedSwc SwcService 0..1 iref This represents the ability to point into the component
Service Dependency hiearchy (under possible consideration of the root
DependencyIn SoftwareComposition)
System
InstanceRef implemented by:SwcServiceDependency
InSystemInstanceRef
serviceInstance DiagnosticService 0..1 ref This represents the service instance that needs to be
Instance considered in this diagnostics service mapping.
• DiagnosticServiceSwMapping.mappedSwcServiceDependencyInSys-
tem
• DiagnosticServiceSwMapping.mappedBswServiceDependency
c()
[constr_1347], among further clarifications, reflects the fact that at most a single Swc-
ServiceDependency can be referenced by a DiagnosticServiceSwMapping
and this SwcServiceDependency cannot be identified by both mappedSwcSer-
viceDependencyInSystem and mappedFlatSwcServiceDependency.
The reporting mode of particular security events (see [20]) can be updated via diag-
nostic services.
ARElement
DiagnosticCommonElement
DiagnosticAbstractDataIdentifier
DiagnosticDataIdentifier
DiagnosticMapping
+ didSize: PositiveInteger [0..1]
+ representsVin: Boolean [0..1]
«atpVariation,atpSplitable»
+dataElement 0..*
DiagnosticSecurityEventReportingModeMapping DiagnosticParameter
«atpIdentityContributor»
+ bitOffset: PositiveInteger [0..1]
«atpVariation,atpSplitable»
Identifiable Identifiable
SecurityEventContextProps DiagnosticDataElement
«atpVariation»
+securityEvent 0..1
IdsCommonElement
SecurityEventDefinition
From the modeling point of view, this relation is created by means of meta-class Di-
agnosticSecurityEventReportingModeMapping.c(RS_DEXT_00081)
It is important to understand that this mapping is used to formalize the relation of two
basic software modules to each other. No kind of application software is involved in
this relation.
Class DiagnosticSecurityEventReportingModeMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::ServiceMapping
Note This meta-class represents the ability to associate a location in a DID with a security event. The purpose
of this mapping is that the location in the DID contains the setting of the reporting mode for the specific
security event. This means that the reporting mode of the security event can be set via the diagnostic
service WriteDataByIdentifier.
Tags:
atp.Status=draft
atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dataElement DiagnosticDataElement 0..1 ref This reference identifies the data element that carries the
information about the reporting mode.
Tags:atp.Status=draft
securityEvent SecurityEventContext 0..1 ref This reference identifies the mapped security event.
Props
Tags:atp.Status=draft
6.1 Introduction
This subchapter describes the meta-model elements that define the handling of and
the functionality around diagnostic events.
In a standard AUTOSAR Basic Software architecture, the definitions based on the
model elements described in this subchapter are realized by the Diagnostic Event Man-
ager (Dem) module.
The following figure gives an overview on the model elements related to the diagnostic
event functionality.
ARElement
DiagnosticContributionSet
«atpVariation,atpSplitable»
+element 0..*
ARElement
DiagnosticCommonElement
For the definition of the diagnostic event functionality, a number of model elements
are derived from DiagnosticCommonElement. These elements are described in the
following sub-chapters.
6.2 DiagnosticEvent
6.2.1 Overview
Figure 6.2 depicts the definition of DiagnosticEvent together with its properties.
DiagnosticCommonElement
DiagnosticEvent
«atpVariation,atpSplitable»
+connectedIndicator 0..*
Identifiable DiagnosticCommonElement
DiagnosticConnectedIndicator DiagnosticIndicator
+indicator
+ behavior: DiagnosticConnectedIndicatorBehaviorEnum [0..1] «atpVariation»
0..1
«atpVariation» + type: DiagnosticIndicatorTypeEnum [0..1]
+ healingCycleCounterThreshold: PositiveInteger [0..1]
DiagnosticCommonElement
DiagnosticOperationCycle
+healingCycle
+ automaticEnd: Boolean [0..1]
0..1 + cycleStatusStorage: Boolean [0..1]
+ type: DiagnosticOperationCycleTypeEnum [0..1]
«enumeration»
«enumeration» DiagnosticEventClearAllowedEnum
DiagnosticEventKindEnum
always
bsw requiresCallbackExecution
swc
4
Class DiagnosticEvent
prestored Boolean 0..1 attr If the Event uses a prestored freeze-frame (using the
Freezeframe operations PrestoreFreezeFrame and ClearPrestored
StoredInNvm FreezeFrame of the service interface DiagnosticMonitor)
this attribute indicates if the Event requires the data to be
stored in non-volatile memory. TRUE = Dem shall store
the prestored data in non-volatile memory, FALSE = Data
can be lost at shutdown (not stored in Nvm)
recoverableIn Boolean 0..1 attr If the attribute is set to true then reporting PASSED will
SameOperation reset the indication of a failed test in the current operation
Cycle cycle. If the attribute is set to false then reporting
PASSED will be ignored and not lead to a reset of the
indication of a failed test.
Table 6.1: DiagnosticEvent
Enumeration DiagnosticClearEventAllowedBehaviorEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticEvent
Note This enumeration defines the possible behavior for clear event allowed
Literal Description
noStatusByte The event status byte keeps unchanged.
Change
Tags:atp.EnumerationLiteralIndex=0
onlyThisCycleAnd The OperationCycle and readiness bits of the event status byte are reset.
Readiness
Tags:atp.EnumerationLiteralIndex=1
Class RoleBasedPortAssignment
Package M2::AUTOSARTemplates::SWComponentTemplate::SwcInternalBehavior::ServiceMapping
Note This class specifies an assignment of a role to a particular service port (RPortPrototype or PPort
Prototype) of an AtomicSwComponentType. With this assignment, the role of the service port can be
mapped to a specific ServiceNeeds element, so that a tool is able to create the correct connector.
Base ARObject
Attribute Type Mult. Kind Note
portPrototype PortPrototype 0..1 ref Service PortPrototype used in the assigned role. This
PortPrototype shall either belong to the same AtomicSw
ComponentType as the SwcInternalBehavior which owns
the ServiceDependency or to the same NvBlockSw
ComponentType as the NvBlockDescriptor.
role Identifier 0..1 attr This is the role of the assigned Port in the given context.
The value shall be a shortName of the Blueprint of a Port
Interface as standardized in the Software Specification of
the related AUTOSAR Service.
Class DiagnosticConnectedIndicator
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticEvent
Note Description of indicators that are defined per DiagnosticEvent.
Base ARObject, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
behavior DiagnosticConnected 0..1 attr Behavior of the linked indicator.
IndicatorBehaviorEnum
healingCycle DiagnosticOperation 0..1 ref The deactivation of indicators per event is defined as
Cycle healing of a diagnostic event. The operation cycle in
which the warning indicator will be switched off is defined
here.
healingCycle PositiveInteger 0..1 attr This attribute defines the number of healing cycles for the
Counter WarningIndicatorOffCriteria
Threshold
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
indicator DiagnosticIndicator 0..1 ref Reference to the used indicator.
Enumeration DiagnosticEventKindEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticEvent
Note Applicability of the diagnostic event.
Literal Description
5
4
Enumeration DiagnosticEventKindEnum
bsw The event is assigned to a BSW module.
Tags:atp.EnumerationLiteralIndex=0
swc The event is assigned to a SWC.
Tags:atp.EnumerationLiteralIndex=1
Enumeration DiagnosticConnectedIndicatorBehaviorEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticEvent
Note Behavior of the indicator.
Literal Description
blinkMode The indicator blinks when the event has status FAILED.
Tags:atp.EnumerationLiteralIndex=0
blinkOrContinuous The indicator is active and blinks when the event has status FAILED.
OnMode
Tags:atp.EnumerationLiteralIndex=1
continuousOnMode The indicator is active when the event has status FAILED.
Tags:atp.EnumerationLiteralIndex=2
fastFlashingMode Flash Indicator Lamp should be set to "Fast Flash".
Tags:atp.EnumerationLiteralIndex=3
slowFlashingMode Flash Indicator Lamp should be set to "Slow Flash".
Tags:atp.EnumerationLiteralIndex=4
Class StructuredReq
Package M2::MSR::Documentation::BlockElements::RequirementsTracing
Note This represents a structured requirement. This is intended for a case where specific requirements for
features are collected.
Note that this can be rendered as a labeled list.
Base ARObject, DocumentViewSelectable, Identifiable, MultilanguageReferrable, Paginateable, Referrable,
Traceable
Attribute Type Mult. Kind Note
appliesTo standardNameEnum * attr This attribute represents the platform the requirement is
assigned to.
Tags:
xml.namePlural=APPLIES-TO-DEPENDENCIES
xml.sequenceOffset=25
conflicts DocumentationBlock 0..1 aggr This represents an informal specification of conflicts.
Tags:xml.sequenceOffset=40
date DateTime 1 attr This represents the date when the requirement was
initiated.
Tags:xml.sequenceOffset=5
dependencies DocumentationBlock 0..1 aggr This represents an informal specifiaction of
dependencies. Note that upstream tracing should be
formalized in the property trace provided by the
superclass Traceable.
Tags:xml.sequenceOffset=30
description DocumentationBlock 0..1 aggr Ths represents the general description of the
requirement.
Tags:xml.sequenceOffset=10
importance String 1 attr This allows to represent the importance of the
requirement.
Tags:xml.sequenceOffset=8
issuedBy String 1 attr This represents the person, organization or authority
which issued the requirement.
Tags:xml.sequenceOffset=6
rationale DocumentationBlock 0..1 aggr This represents the rationale of the requirement.
Tags:xml.sequenceOffset=20
remark DocumentationBlock 0..1 aggr This represents an informal remark. Note that this is not
modeled as annotation, since these remark is still
essential part of the requirement.
Tags:xml.sequenceOffset=60
supporting DocumentationBlock 0..1 aggr This represents an informal specifiaction of the
Material supporting material.
Tags:xml.sequenceOffset=50
testedItem Traceable * ref This assocation represents the ability to trace on the
same specification level. This supports for example the of
acceptance tests.
Tags:xml.sequenceOffset=70
type String 1 attr This attribute allows to denote the type of requirement to
denote for example is it an "enhancement", "new feature"
etc.
Tags:xml.sequenceOffset=7
5
4
Class StructuredReq
useCase DocumentationBlock 0..1 aggr This describes the relevant use cases. Note that formal
references to use cases should be done in the trace
relation.
Tags:xml.sequenceOffset=35
For more details regarding the modeling of the semi-formal text please refer to Figure
4.3.
[TPS_DEXT_01069] Standardized values of DiagnosticEvent.introduction.
structuredReq dThe following possible values of DiagnosticEvent.introduc-
tion.structuredReq are standardized by AUTOSAR:
• DIAG_EVENT_MON_COND: this value describes the monitoring condition of the
corresponding DiagnosticEvent.
• DIAG_EVENT_MON_TYPE: this value describes the monitoring type of the corre-
sponding DiagnosticEvent.
• DIAG_EVENT_MON_RATE: this value describes the monitoring rate for the corre-
sponding DiagnosticEvent.
• DIAG_EVENT_MAT_COND: this value describes a mature condition of the Diag-
nosticEvent.
• DIAG_EVENT_DEMAT_COND: this value describes a de-mature condition of the
DiagnosticEvent.
• DIAG_EVENT_AGING: this value describes the behavior of the Diagnos-
ticEvent regarding aging.
• DIAG_EVENT_LIMP_IN_ACT: this value describes the associated limp-in action
for the DiagnosticEvent.
• DIAG_EVENT_MAT_TIME: this value describes the mature time for the corre-
sponding DiagnosticEvent, i.e. how long or how often the fault must exist.
• DIAG_EVENT_DEMAT_TIME: this value describes the de-mature time for the cor-
responding DiagnosticEvent, i.e. how long or how often must the OK condi-
tions be fulfilled.
c(RS_DEXT_00001, RS_DEXT_00023, RS_DEXT_00045)
The following ARXML fragment exemplifies the usage of StructuredReq along with
the standardized values of the attribute category to attach semi-formal textual de-
scriptions of an exemplary mature condition and a de-mature condition to a Diagnos-
ticEvent.
Listing 6.1: Example for the definition of a semi-formal textual element in the context of
a DiagnosticEvent
<DIAGNOSTIC-EVENT>
<SHORT-NAME>ExampleEvent_0001</SHORT-NAME>
<INTRODUCTION>
<STRUCTURED-REQ>
<SHORT-NAME>MatureCondition</SHORT-NAME>
<CATEGORY>DIAG_EVENT_MAT_COND</CATEGORY>
<DESCRIPTION>
<P>
<L-1 L="EN">This DTC is set if System Voltage is
below 9 Volts</L-1>
</P>
</DESCRIPTION>
</STRUCTURED-REQ>
<STRUCTURED-REQ>
<SHORT-NAME>DematureCondition</SHORT-NAME>
<CATEGORY>DIAG_EVENT_DEMAT_COND</CATEGORY>
<DESCRIPTION>
<P>
<L-1 L="EN">This DTC is set if System Voltage is
above 10 Volts<XFILE><SHORT-NAME>
Requirement_Specification</SHORT-NAME><URL>http:
//autosar.org</URL></XFILE>
</L-1>
</P>
</DESCRIPTION>
</STRUCTURED-REQ>
</INTRODUCTION>
<CLEAR-EVENT-BEHAVIOR>ONLY-THIS-CYCLE-AND-READINESS</CLEAR-EVENT-
BEHAVIOR>
<EVENT-CLEAR-ALLOWED>ALWAYS</EVENT-CLEAR-ALLOWED>
<EVENT-FAILURE-CYCLE-COUNTER-THRESHOLD>100</EVENT-FAILURE-CYCLE-COUNTER
-THRESHOLD>
<EVENT-KIND>SWC</EVENT-KIND>
<PRESTORAGE-FREEZE-FRAME>false</PRESTORAGE-FREEZE-FRAME>
</DIAGNOSTIC-EVENT>
DiagnosticMapping
DiagnosticEventToTroubleCodeUdsMapping
DiagnosticCommonElement DiagnosticTroubleCode
DiagnosticEvent DiagnosticTroubleCodeUds
+dtcProps 0..1
DiagnosticCommonElement
DiagnosticTroubleCodeProps
«atpVariation,atpSplitable» «atpVariation»
+extendedDataRecord
0..* +snapshotRecordContent 0..1
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticExtendedDataRecord DiagnosticDataIdentifierSet
0..*
+recordElement 0..* +dataIdentifier {ordered}
DiagnosticAbstractDataIdentifier
DiagnosticParameter
+dataElement DiagnosticDataIdentifier
«atpIdentityContributor»
0..* «atpVariation,atpSplitable» + didSize: PositiveInteger [0..1]
+ bitOffset: PositiveInteger [0..1]
+ representsVin: Boolean [0..1]
«atpVariation,atpSplitable»
+dataElement 0..1
Identifiable DiagnosticMapping
DiagnosticDataElement DiagnosticDemProvidedDataMapping
+dataElement
+ arraySizeSemantics: ArraySizeSemanticsEnum [0..1] + dataProvider: NameToken [0..1]
0..1
+ maxNumberOfElements: PositiveInteger [0..1]
+ scalingInfoSize: PositiveInteger [0..1]
6.3 DiagnosticTroubleCode
DiagnosticTroubleCodes (i.e. the ECU external view on diagnostic events) are
defined together with their properties and mapped to DiagnosticEvents using Di-
agnosticEventToTroubleCodeUdsMapping.
[TPS_DEXT_03012] Three kinds of DTCs dThere are three kinds of DTCs repre-
sented as specializations of DiagnosticTroubleCode:
• non OBD relevant DTCs (DiagnosticTroubleCodeUds)
• OBD relevant DTCs (DiagnosticTroubleCodeObd)
• J1939 [22] relevant DTCs (DiagnosticTroubleCodeJ1939)
Properties individual to such a DTC specialization are modeled as attributes of Di-
agnosticTroubleCodeUds, DiagnosticTroubleCodeObd and Diagnostic-
TroubleCodeJ1939, respectively.c(RS_DEXT_00024)
DiagnosticCommonElement DiagnosticCommonElement «enumeration»
DiagnosticTroubleCodeGroup +dtc DiagnosticTroubleCode DiagnosticTroubleCodeJ1939DtcKindEnum
«atpVariation,atpSplitable» 0..* standard
«atpVariation»
+ groupNumber: PositiveInteger [0..1] serviceOnly
DiagnosticTroubleCodeUds DiagnosticTroubleCodeJ1939
DiagnosticTroubleCodeObd
«atpVariation»
+ considerPtoStatus: Boolean [0..1]
+ obdDTCValue: PositiveInteger [0..1]
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticTroubleCodeProps DiagnosticJ1939Spn
«enumeration» «enumeration»
DiagnosticWwhObdDtcClassEnum DiagnosticUdsSeverityEnum
demDtcWwhObdClassB1 noSeverity
demDtcWwhObdClassA maintenanceOnly
demDtcWwhObdClassB2 immediately
demDtcWwhObdClassC checkAtNextHalt
demDtcWwhObdClassNoInformation
Class DiagnosticTroubleCodeUds
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This element is used to describe non OBD-relevant DTCs.
Tags:atp.recommendedPackage=DiagnosticTroubleCodes
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticTroubleCode,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
considerPto Boolean 0..1 attr This attribute describes the affection of the event by the
Status Dem PTO handling.
True: the event is affected by the Dem PTO handling.
False: the event is not affected by the Dem PTO handling.
dtcProps DiagnosticTroubleCode 0..1 ref Defined properties associated with the DemDTC.
Props
eventObd NameToken 0..1 attr This attribute specifies the Event OBD Readiness group
Readiness for PID $01 and PID $41 computation. This attribute is
Group only applicable for emission-related ECUs.
5
4
Class DiagnosticTroubleCodeUds
functionalUnit PositiveInteger 0..1 attr This attribute specifies a 1-byte value which identifies the
corresponding basic vehicle / system function which
reports the DTC. This parameter is necessary for the
report of severity information.
severity DiagnosticUdsSeverity 0..1 attr DTC severity according to ISO 14229-1.
Enum
udsDtcValue PositiveInteger 0..1 attr Unique Diagnostic Trouble Code value for UDS.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
wwhObdDtc DiagnosticWwhObdDtc 0..1 attr This attribute is used to identify (if applicable) the
Class ClassEnum corresponding severity class of an WWH-OBD DTC.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
DiagnosticCommonElement DiagnosticAbstractDataIdentifier
DiagnosticDataIdentifierSet DiagnosticDataIdentifier
+dataIdentifier
+ didSize: PositiveInteger [0..1]
0..*
+ representsVin: Boolean [0..1]
{ordered}
«atpVariation» «atpVariation»
DiagnosticCommonElement DiagnosticTroubleCode
DiagnosticTroubleCodeProps DiagnosticTroubleCodeUds
DiagnosticCommonElement
DiagnosticAging
+aging
«atpVariation»
0..1 + threshold: PositiveInteger [0..1]
«atpVariation,atpSplitable» «atpVariation,atpSplitable»
«atpVariation,atpSplitable»
+memoryDestination 0..*
DiagnosticCommonElement
DiagnosticMemoryDestination
«enumeration» «enumeration»
DiagnosticSignificanceEnum EnvironmentCaptureToReportingEnum
fault captureSynchronousToReporting
occurence captureAsynchronousToReporting
Class EventObdReadinessGroup
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This meta-class represents the ability to define the value of attribute eventObdReadinessGroup. It is only
introduced to allow for a variant modeling of this attribute.
Base ARObject
5
4
Class EventObdReadinessGroup
Attribute Type Mult. Kind Note
eventObd NameToken 0..1 attr This attribute specifies the Event OBD Readiness group
Readiness for PID $01 and PID $41 computation. This attribute is
Group only applicable for emission-related ECUs.
4
Class DiagnosticTroubleCodeGroup
dtc DiagnosticTroubleCode * ref This represents the collection of DiagnosticTroubleCodes
defined by this DiagnosticTroubleCodeGroup.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=dtc.diagnosticTroubleCode, dtc.variation
Point.shortLabel
vh.latestBindingTime=postBuild
groupNumber PositiveInteger 0..1 attr This represents the base number of the DTC group.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
The purpose of this content is to define e.g. an error text or the possible cause that
relates to the specific DiagnosticTroubleCode.c(RS_DEXT_00024, RS_DEXT_-
00045)
[TPS_DEXT_01065] Different approaches to provide semi-formal textual content
attached to a DiagnosticTroubleCode dThere are different approaches to provide
semi-formal textual content attached to a DiagnosticTroubleCode:
• Textual description that has the character of descriptions of the Diagnostic-
TroubleCode shall be provided by means of the meta-class TraceableText,
i.e. by means of introduction.trace.
• Textual description that characterizes the DiagnosticTroubleCode with re-
spect to the ODX long name shall be provided by means of the attribute long-
Name.
c(RS_DEXT_00024, RS_DEXT_00045)
Class TraceableText
Package M2::MSR::Documentation::BlockElements::RequirementsTracing
Note This meta-class represents the ability to denote a traceable text item such as requirements etc.
The following approach applies:
• shortName represents the tag for tracing
• longName represents the head line
• category represents the kind of the tagged text
Base ARObject, DocumentViewSelectable, Identifiable, MultilanguageReferrable, Paginateable, Referrable,
Traceable
Attribute Type Mult. Kind Note
text DocumentationBlock 1 aggr This represents the text to which the tag applies.
Tags:
xml.roleElement=false
xml.roleWrapperElement=false
xml.sequenceOffset=30
xml.typeElement=false
xml.typeWrapperElement=false
For more details regarding the modeling of the semi-formal text please refer to Figure
4.3.
DiagnosticCommonElement
DiagnosticTroubleCodeProps
+memoryDestination 0..*
DiagnosticCommonElement
DiagnosticMemoryDestination
full
none
prioOcc
Class DiagnosticMemoryDestinationPrimary
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This represents a primary memory for a diagnostic event.
Tags:atp.recommendedPackage=DiagnosticMemoryDestinations
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMemory
Destination, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
typeOfDtc DiagnosticTypeOfDtc 0..1 attr This attribute defines the format returned by Dem_Dcm
Supported SupportedEnum GetTranslationType and does not relate to/influence the
supported Dem functionality.
Class DiagnosticMemoryDestinationMirror
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This represents a mirror memory for a diagnostic event.
Tags:atp.recommendedPackage=DiagnosticMemoryDestinations
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMemory
Destination, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 6.18: DiagnosticMemoryDestinationMirror
Class DiagnosticMemoryDestinationUserDefined
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This represents a user-defined memory for a diagnostic event.
Tags:atp.recommendedPackage=DiagnosticMemoryDestinations
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMemory
Destination, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
memoryId PositiveInteger 0..1 attr This represents the identifier of the user-defined memory.
DiagnosticTroubleCode DiagnosticTroubleCode
DiagnosticTroubleCodeUds DiagnosticTroubleCodeObd
DiagnosticCommonElement
DiagnosticTroubleCodeProps
+aging 0..1
DiagnosticCommonElement
DiagnosticAging
«atpVariation»
+ threshold: PositiveInteger [0..1]
4
Class DiagnosticTroubleCodeProps
immediateNv Boolean 0..1 attr Switch to enable immediate storage triggering of an
DataStorage according event memory entry persistently to NVRAM.
true: immediate non-volatile storage triggering enabled
false: immediate non-volatile storage triggering disabled
legislated DiagnosticDataIdentifier 0..1 ref This reference identifies the layout of the WWH-OBD
FreezeFrame Set freeze frame.
ContentWwh
Stereotypes: atpVariation
Obd
Tags:vh.latestBindingTime=preCompileTime
maxNumber PositiveInteger 0..1 attr This attribute defines the number of according freeze
FreezeFrame frame records, which can maximal be stored for this
Records event. Therefore all these freeze frame records have the
same freeze frame class.
memory DiagnosticMemory * ref The event destination assigns events to none, one or
Destination Destination multiple origins.
priority PositiveInteger 0..1 attr Priority of the event, in view of full event buffer. A lower
value means higher priority.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
significance DiagnosticSignificance 0..1 attr Significance of the event, which indicates additional
Enum information concerning fault classification and resolution.
snapshot DiagnosticDataIdentifier 0..1 ref This represents the freeze frame layout as a set of DIDs.
RecordContent Set
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
Enumeration DiagnosticUdsSeverityEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note Severity types for a DTC according to ISO 14229-1.
Literal Description
5
4
Enumeration DiagnosticUdsSeverityEnum
checkAtNextHalt Check at next halt.
Tags:atp.EnumerationLiteralIndex=0
immediately Check immediately.
Tags:atp.EnumerationLiteralIndex=1
maintenanceOnly Maintenance required.
Tags:atp.EnumerationLiteralIndex=2
noSeverity No severity information available.
Tags:atp.EnumerationLiteralIndex=3
Class DiagnosticDataIdentifierSet
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This represents the ability to define a list of DiagnosticDataIdentifiers that can be reused in different
contexts.
Tags:atp.recommendedPackage=DiagnosticDataIdentifierSets
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dataIdentifier DiagnosticDataIdentifier * ref Reference to an orderd list of Data Identifiers.
(ordered)
Enumeration DiagnosticWwhObdDtcClassEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This meta-class represents the ability to model severity classes of an WWH-OBD DTC.
Literal Description
demDtcWwhObd This attribute represents the severity class A.
ClassA
Tags:atp.EnumerationLiteralIndex=0
demDtcWwhObd This attribute represents the severity class B1.
ClassB1
Tags:atp.EnumerationLiteralIndex=1
demDtcWwhObd This attribute represents the severity class B2.
ClassB2
Tags:atp.EnumerationLiteralIndex=2
demDtcWwhObd This attribute represents the severity class C.
ClassC
Tags:atp.EnumerationLiteralIndex=3
demDtcWwhObd This attribute represents the option to intentionally not describe a dedicated severity class of an
ClassNoInformation WWH-OBD DTC.
Tags:atp.EnumerationLiteralIndex=4
Class DiagnosticTroubleCodeUdsToTroubleCodeObdMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note This meta-class represents the ability to associate a UDS trouble code to an OBD trouble code.
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
troubleCode DiagnosticTroubleCode 0..1 ref This represents the OBD DTC referenced in the mapping
Obd Obd between UDS and OBD DTCs.
troubleCodeUds DiagnosticTroubleCode 0..1 ref This represents the UDS DTC referenced in the mapping
Uds between UDS and OBD DTCs.
Enumeration DiagnosticTypeOfFreezeFrameRecordNumerationEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note FreezeFrame record numeration type
Literal Description
calculated Freeze frame records will be numbered consecutive starting by 1 in their chronological order.
Tags:atp.EnumerationLiteralIndex=0
configured Freeze frame records will be numbered based on the given configuration in their chronological order.
Tags:atp.EnumerationLiteralIndex=1
6.4 DiagnosticExtendedDataRecord
[TPS_DEXT_03008] Semantics of DiagnosticExtendedDataRecord dA Diag-
nosticExtendedDataRecord contains DiagnosticDataElements that are or-
dered by the bitOffset.c(RS_DEXT_00032)
[constr_1355] Value of extendedDataRecord.recordNumber dTo be compliant to
ISO, the value of extendedDataRecord.recordNumber shall be set in the interval
as defined in ISO 14229-1 [16].c()
[constr_1509] extendedDataRecord.recordNumber shall be unique within pri-
mary fault memory dFor all DiagnosticTroubleCodeProps that refer to Diag-
nosticMemoryDestinationPrimary in the role memoryDestination there shall
be no two extendedDataRecord.recordNumber with the same value.c()
[constr_1510] extendedDataRecord.recordNumber shall be unique within mir-
ror fault memory dFor all DiagnosticTroubleCodeProps that refer to Diagnos-
ticMemoryDestinationMirror in the role memoryDestination there shall be
no two extendedDataRecord.recordNumber with the same value.c()
ARElement «enumeration»
DiagnosticCommonElement DiagnosticRecordTriggerEnum
confirmed
fdcThreshold
pending
testFailed
custom
testFailedThisOperationCycle
DiagnosticExtendedDataRecord DiagnosticParameter
+recordElement
+ customTrigger: String [0..1] «atpIdentityContributor»
+ recordNumber: PositiveInteger [0..1] 0..* + bitOffset: PositiveInteger [0..1]
+ trigger: DiagnosticRecordTriggerEnum [0..1]
+ update: Boolean [0..1]
«atpVariation,atpSplitable»
+dataElement 0..1
Identifiable
DiagnosticDataElement
4
Class DiagnosticExtendedDataRecord
recordElement DiagnosticParameter * aggr Defined DataElements in the extended record element.
recordNumber PositiveInteger 0..1 attr This attribute specifies an unique identifier for an
extended data record.
trigger DiagnosticRecord 0..1 attr This attribute specifies the primary trigger to allocate an
TriggerEnum event memory entry.
update Boolean 0..1 attr This attribute defines when an extended data record is
captured.
True: This extended data record is captured every time.
False: This extended data record is only captured for new
event memory entries.
4
Enumeration DiagnosticRecordTriggerEnum
testFailedThis Test Failed This Operation Cycle.
OperationCycle
Tags:atp.EnumerationLiteralIndex=5
6.5 DiagnosticFreezeFrame
[TPS_DEXT_03009] Semantics of DiagnosticFreezeFrame dA Diagnos-
ticFreezeFrame needs an ordered list of references to DiagnosticDataIdenti-
fiers. However, this reference is not modeled directly but in the context of meta-class
DiagnosticTroubleCodeProps.c(RS_DEXT_00033)
For more details, please refer to Figure 6.4.
[constr_1357] Value of freezeFrame.recordNumber dTo be compliant to ISO, the
value of freezeFrame.recordNumber shall be set in the interval as defined in ISO
14229-1 [16].c()
[constr_1512] freezeFrame.recordNumber shall be unique within primary fault
memory dFor all DiagnosticTroubleCodeProps that refer to DiagnosticMem-
oryDestinationPrimary in the role memoryDestination there shall be no two
freezeFrame.recordNumber with the same value.c()
[constr_1513] freezeFrame.recordNumber shall be unique within mirror fault
memory dFor all DiagnosticTroubleCodeProps that refer to DiagnosticMem-
oryDestinationMirror in the role memoryDestination there shall be no two
freezeFrame.recordNumber with the same value.c()
[constr_1514] freezeFrame.recordNumber shall be unique within user-defined
fault memory dFor all DiagnosticTroubleCodeProps that refer to Diagnos-
ticMemoryDestinationUserDefined in the role memoryDestination there
shall be no two freezeFrame.recordNumber with the same value for any Diag-
nosticMemoryDestinationUserDefined referenced as DiagnosticTrouble-
CodeProps.memoryDestination with a given value of memoryId.c()
[TPS_DEXT_01144] Definition of a custom trigger for a freeze frame dIt is possible
to define a custom trigger for the capturing of a freeze frame. The custom nature, how-
ever, severely limits the possibilities for a formal description of such a trigger. There-
fore, AUTOSAR can only provide a means to verbally describe how the custom trigger
shall operate.
«enumeration» DiagnosticFreezeFrame
DiagnosticRecordTriggerEnum
+ customTrigger: String [0..1]
confirmed + trigger: DiagnosticRecordTriggerEnum [0..1]
fdcThreshold + update: Boolean [0..1]
pending
«atpVariation»
testFailed
+ recordNumber: PositiveInteger [0..1]
custom
testFailedThisOperationCycle
6.6 DiagnosticCondition
[TPS_DEXT_03010] Combination of DiagnosticConditions to Diagnostic-
ConditionGroups dDiagnosticConditions are combined to Diagnostic-
ConditionGroups and define a certain number of checks (e.g. correct voltage range)
before the event report is accepted or the event gets qualified.c(RS_DEXT_00027,
RS_DEXT_00028, RS_DEXT_00030, RS_DEXT_00031)
ARElement
DiagnosticCommonElement
DiagnosticCondition
DiagnosticStorageCondition DiagnosticEnableCondition
4
Class DiagnosticCondition (abstract)
initValue Boolean 0..1 attr Defines the initial status for enable or disable of
acceptance/storage of event reports of a diagnostic event.
The value is the initialization after power up (before this
condition is reported the first time).
true: acceptance/storage of a diagnostic event enabled
false: acceptance/storage of a diagnostic event disabled
Class DiagnosticStorageCondition
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticCondition
Note Specification of a storage condition.
Tags:atp.recommendedPackage=DiagnosticConditions
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticCondition,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table 6.32: DiagnosticStorageCondition
ARElement
DiagnosticContributionSet
«atpSplitable»
+commonProperties 0..1
«atpVariation»
DiagnosticCommonProps
+debounceAlgorithmProps 0..*
Referrable
«enumeration» DiagnosticDebounceAlgorithmProps
DiagnosticDebounceBehaviorEnum
+ debounceCounterStorage: Boolean [0..1]
freeze
reset «atpVariation»
+ debounceBehavior: DiagnosticDebounceBehaviorEnum [0..1]
+debounceAlgorithm 0..1
Identifiable
DiagEventDebounceAlgorithm
In other words, the debouncing of diagnostic events can be formulated in three different
ways:
• The DiagEventDebounceCounterBased represents the ability to implement a
counter-based debouncing.
• The DiagEventDebounceTimeBased represents the ability to implement a
time-based debouncing.
• The DiagEventDebounceMonitorInternal represents the ability to imple-
ment the debouncing inside the implementation of the diagnostic monitor itself.
Class DiagEventDebounceCounterBased
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note This meta-class represents the ability to indicate that the counter-based debounce algorithm shall be
used by the DEM for this diagnostic monitor.
This is related to set the ECUC choice container DemDebounceAlgorithmClass to DemDebounce
CounterBased.
Base ARObject, DiagEventDebounceAlgorithm, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
counterBased Integer 0..1 attr Threshold to allocate an event memory entry and to
FdcThreshold capture the Freeze Frame.
StorageValue
counter Integer 0..1 attr This value shall be taken to decrement the internal
DecrementStep debounce counter.
Size
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
counterFailed Integer 0..1 attr This value defines the event-specific limit that indicates
Threshold the "failed" counter status.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
counter Integer 0..1 attr This value shall be taken to increment the internal
IncrementStep debounce counter.
Size
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
counterJump Boolean 0..1 attr This value activates or deactivates the counter
Down jump-down behavior.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
5
4
Class DiagEventDebounceCounterBased
counterJump Integer 0..1 attr This value represents the initial value of the internal
DownValue debounce counter if the counting direction changes from
incrementing to decrementing.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
counterJumpUp Boolean 0..1 attr This value activates or deactivates the counter jump-up
behavior.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
counterJumpUp Integer 0..1 attr This value represents the initial value of the internal
Value debounce counter if the counting direction changes from
decrementing to incrementing.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
counterPassed Integer 0..1 attr This value defines the event-specific limit that indicates
Threshold the "passed" counter status.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
Class DiagEventDebounceTimeBased
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note This meta-class represents the ability to indicate that the time-based pre-debounce algorithm shall be
used by the Dem for this diagnostic monitor.
This is related to set the EcuC choice container DemDebounceAlgorithmClass to DemDebounceTime
Base.
Base ARObject, DiagEventDebounceAlgorithm, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
timeBasedFdc TimeValue 0..1 attr Threshold to allocate an event memory entry and to
Threshold capture the Freeze Frame.
StorageValue
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
timeFailed TimeValue 0..1 attr This value represents the event-specific delay indicating
Threshold the "failed" status.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
timePassed TimeValue 0..1 attr This value represents the event-specific delay indicating
Threshold the "passed" status.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
Enumeration DiagnosticDebounceBehaviorEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticDebouncingAlgorithm
Note Event debounce algorithm behavior options.
Literal Description
5
4
Enumeration DiagnosticDebounceBehaviorEnum
freeze The event debounce counter will be frozen with the current value and will not change while a related
enable condition is not fulfilled or ControlDTCSetting of the related event is disabled. After all related
enable conditions are fulfilled and ControlDTCSetting of the related event is enabled again, the event
qualification will continue with the next report of the event (i.e. SetEventStatus).
Tags:atp.EnumerationLiteralIndex=0
reset The event debounce counter will be reset to initial value if a related enable condition is not fulfilled or
ControlDTCSetting of the related event is disabled. The qualification of the event will be restarted with
the next valid event report.
Tags:atp.EnumerationLiteralIndex=1
6.8 DiagnosticConditionGroup
[TPS_DEXT_01084] Semantics of DiagnosticConditionGroups dDiagnos-
ticConditionGroups are used to collect DiagnosticConditions that in turn
are assigned to DiagnosticEvents.c(RS_DEXT_00023, RS_DEXT_00028, RS_-
DEXT_00029)
ARElement
DiagnosticCommonElement
DiagnosticConditionGroup
DiagnosticStorageConditionGroup DiagnosticEnableConditionGroup
DiagnosticCondition DiagnosticCondition
DiagnosticStorageCondition DiagnosticEnableCondition
Class DiagnosticEnableConditionGroup
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticConditionGroup
Note Enable condition group which includes one or several enable conditions.
Tags:atp.recommendedPackage=DiagnosticConditions
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticConditionGroup,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
enableCondition DiagnosticEnable 1..* ref Reference to enableConditions that are part of the Enable
Condition ConditionGroup.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=enableCondition.diagnosticEnableCondition,
enableCondition.variationPoint.shortLabel
vh.latestBindingTime=postBuild
6.9 DiagnosticMapping
The mapping concept of the DiagnosticExtract template has been designed to
support the decentralized and independent definition of diagnostic requirements that
can be linked together at a late point during the development process.
It also supports the use of mapping contributions collected from various sources in
order to reduce manual mapping work by the ECU integrator.
[TPS_DEXT_03002] Two kind of mappings dFor diagnostic event handling, there are
two kinds of mappings:
• Mapping between a DiagnosticEvent and another diagnostic definition.
• Mapping between a DiagnosticEvent and a SWC service port.
c(RS_DEXT_00023, RS_DEXT_00052)
Figure 6.13 gives an overview on the different types of mappings available for diagnos-
tic event handling.
ARElement
DiagnosticCommonElement
DiagnosticMapping
DiagnosticSwMapping
DiagnosticFimFunctionMapping
DiagnosticCommonElement DiagnosticTroubleCode
DiagnosticEvent DiagnosticTroubleCodeUds
Class DiagnosticEventToTroubleCodeUdsMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note Defines which UDS Diagnostic Trouble Code is applicable for a DiagnosticEvent.
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticEvent DiagnosticEvent 0..1 ref Reference to a DiagnosticEvent to which a UDS
Diagnostic Trouble Code is assigned.
troubleCodeUds DiagnosticTroubleCode 0..1 ref Reference to an UDS Diagnostic Trouble Code assigned
Uds to a DiagnosticEvent.
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticEvent DiagnosticOperationCycle
«enumeration»
DiagnosticOperationCycleTypeEnum
ignition
obdDrivingCycle
warmup
other
Class DiagnosticEventToOperationCycleMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note Defines which OperationCycle is applicable for a DiagnosticEvent.
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticEvent DiagnosticEvent 0..1 ref Reference to a DiagnosticEvent to which an Operation
Cycle is assigned.
operationCycle DiagnosticOperation 0..1 ref Reference to an OperationCycle assigned to a Diagnostic
Cycle Event.
DiagnosticCommonElement Referrable
DiagnosticEvent DiagnosticDebounceAlgorithmProps
Class DiagnosticEventToDebounceAlgorithmMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note Defines which Debounce Algorithm is applicable for a DiagnosticEvent.
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
debounce DiagnosticDebounce 0..1 ref Reference to a DebounceAlgorithm assigned to a
Algorithm AlgorithmProps DiagnosticEvent.
diagnosticEvent DiagnosticEvent 0..1 ref Reference to a DiagnosticEvent to which a Debounce
Algorithm is assigned.
Class DiagnosticDebounceAlgorithmProps
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticDebouncingAlgorithm
Note Defines properties for the debounce algorithm class.
Base ARObject, Referrable
Attribute Type Mult. Kind Note
debounce DiagEventDebounce 0..1 aggr This represents the actual debounce algorithm.
Algorithm Algorithm
debounce DiagnosticDebounce 0..1 attr This attribute defines how the event debounce algorithm
Behavior BehaviorEnum will behave, if a related enable condition is not fulfilled or
ControlDTCSetting of the related event is disabled.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
debounce Boolean 0..1 attr Switch to store the debounce counter value non-volatile
CounterStorage or not.
true: debounce counter value shall be stored non-volatile
false: debounce counter value is volatile
Table 6.45: DiagnosticDebounceAlgorithmProps
The details regarding the formalization of debouncing behavior are depicted in Figure
6.11.
In particular, DiagnosticCommonProps aggregates DiagnosticDebounceAl-
gorithmProps in the role debounceAlgorithmProps. The DiagnosticDe-
bounceAlgorithmProps itself does not actually represent the debouncing algorithm
but provides attributes relevant for the actual debouncing algorithm.
DiagnosticCommonElement DiagnosticConditionGroup
DiagnosticEvent DiagnosticEnableConditionGroup
Class DiagnosticEventToEnableConditionGroupMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note Defines which EnableConditionGroup is applicable for a DiagnosticEvent.
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticEvent DiagnosticEvent 0..1 ref Reference to a DiagnosticEvent to which an Enable
ConditionGroup is assigned.
enableCondition DiagnosticEnable 0..1 ref Reference to an EnableConditionGroup assigned to a
Group ConditionGroup DiagnosticEvent.
DiagnosticCommonElement DiagnosticConditionGroup
DiagnosticEvent DiagnosticStorageConditionGroup
«atpIdentityContributor»
+ident 0..1
DiagnosticSwMapping IdentCaption
+bswServiceDependency
DiagnosticEventPortMapping BswServiceDependencyIdent
0..1
DiagnosticCommonElement
DiagnosticEvent
AtpStructureElement
+swcServiceDependencyInSystem
Identifiable
«instanceRef» 0..1 ServiceDependency
SwcServiceDependency
+swcFlatServiceDependency
0..1
In this way, the ECU integrator is able to directly derive the actual mapping between
SWC (or BSW) service ports and the ports of the Service Components during ECU
configuration.
[constr_1435] Debouncing in the presence of a DiagnosticEventPortMapping
dIf a DiagnosticEventPortMapping exists and the enclosed DiagnosticEvent-
PortMapping.diagnosticEvent is also referenced by a DiagnosticEvent-
ToDebounceAlgorithmMapping then the concrete subclass of the respective
DiagnosticEventToDebounceAlgorithmMapping.debounceAlgorithm.de-
bounceAlgorithm shall be identical to the DiagnosticEventPortMapping.
swcServiceDependencyInSystem/swcFlatServiceDependency.service-
Needs.diagEventDebounceAlgorithm.
+swcFlatServiceDependency AtpStructureElement
Identifiable
0..1
ServiceDependency
+swcServiceDependencyInSystem SwcServiceDependency
«instanceRef» 0..1
Class DiagnosticOperationCyclePortMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note Defines to which SWC service ports with DiagnosticOperationCycleNeeds the DiagnosticOperationCycle
is mapped.
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
DiagnosticSwMapping, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
operationCycle DiagnosticOperation 0..1 ref Reference to the DiagnosticOperationCycle that is
Cycle assigned to SWC service ports with DiagnosticOperation
CycleNeeds.
swcFlatService SwcService 0..1 ref Reference to a SwcServiceDependencyType that links
Dependency Dependency ServiceNeeds to SWC service ports.
swcService SwcService 0..1 iref Instance reference to a SwcServiceDependency that links
DependencyIn Dependency ServiceNeeds to SWC service ports.
System
InstanceRef implemented by:SwcServiceDependency
InSystemInstanceRef
0..1
AtpStructureElement
Identifiable
ServiceDependency
+swcServiceDependencyInSystem SwcServiceDependency
«instanceRef» 0..1
+swcFlatServiceDependency
0..1
4
Class DiagnosticEnableConditionPortMapping
swcFlatService SwcService 0..1 ref Reference to a SwcServiceDependencyType that links
Dependency Dependency ServiceNeeds to SWC service ports. This reference can
be used in early stages of the development in order to
identify the SwcServiceDependency without a full System
Context.
swcService SwcService 0..1 iref Instance reference to a SwcServiceDependency that links
DependencyIn Dependency ServiceNeeds to SWC service ports.
System
InstanceRef implemented by:SwcServiceDependency
InSystemInstanceRef
AtpStructureElement
+swcFlatServiceDependency Identifiable
0..1 ServiceDependency
SwcServiceDependency
+swcServiceDependencyInSystem
«instanceRef» 0..1
[constr_1782] Usage of internal data elements only for extended data records
dA DiagnosticDemProvidedDataMapping shall only refer to a Diagnostic-
DataElement that is aggregated by a DiagnosticExtendedDataRecord in the
role recordElement.dataElement.c()
Please note the existence of [constr_1756].
ARElement
DiagnosticCommonElement
DiagnosticMapping
DiagnosticDemProvidedDataMapping
+dataElement 0..1
Identifiable
DiagnosticDataElement
Class DiagnosticDemProvidedDataMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::ServiceMapping
Note This represents the ability to define the nature of a data access for a DiagnosticDataElement in the Dem.
Tags:atp.recommendedPackage=DiagnosticServiceMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dataElement DiagnosticDataElement 0..1 ref This represents the DiagnosticDataElement for which the
access is further qualified by the DiagnosticDemProvided
DataMapping.
dataProvider NameToken 0..1 attr This represents the ability to further specify the access
within the Dem.
Table 6.52: DiagnosticDemProvidedDataMapping
AUTOSAR provides the ability to associate multiple diagnostic events in the way that
the reporting of one event (also known as the master event) from a diagnostic monitor
automatically triggers the reporting of one or more other diagnostic events (also known
as slave events) with the same test result.
Please note that the existence of the DiagnosticMasterToSlaveEventMapping
is primarily motivated by the need to store the result of event reporting simultaneously
in different fault memories within the affected ECU.
As a consequence, a model that references a given DiagnosticEvent as both mas-
terEvent and slaveEvent shall be considered broken, as further clarified in [con-
str_1590].
In the same spirit, a model where one specific DiagnosticEvent is referenced more
than once in the role masterEvent or the role slaveEvent is also considered bro-
ken.
[constr_1590] DiagnosticEvent referenced in the role masterEvent or
slaveEvent dAny given DiagnosticEvent shall at most once be referenced from
a DiagnosticMasterToSlaveEventMapping.c()
A diagnostic slave event shall never be reported directly by a diagnostic monitor. Slave
events are exclusively reported internally in the Dem. This important aspect is covered
by [constr_1591].
[constr_1591] DiagnosticEvent referenced as slaveEvent shall not be re-
ported by diagnostic monitor dA DiagnosticEvent referenced in the role Diag-
nosticMasterToSlaveEventMapping.slaveEvent shall not be referenced in the
role DiagnosticEventPortMapping.diagnosticEvent and vice versa.c()
DiagnosticCommonElement
DiagnosticMasterToSlaveEventMapping
DiagnosticCommonElement
DiagnosticEvent
Class DiagnosticMasterToSlaveEventMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note This meta-class provides the ability to map a master diagnostic event with a slave diagnostic event such
that reporting of the master event with a given value also reports the slave event with the same value
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
masterEvent DiagnosticEvent 0..1 ref This represents the master diagnostic event.
slaveEvent DiagnosticEvent 0..1 ref This represents the slave diagnostic event.
Identifiable DiagnosticCommonElement
SecurityEventContextProps DiagnosticEvent
+securityEvent 0..1
IdsCommonElement
SecurityEventDefinition
Class DiagnosticEventToSecurityEventMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticMapping
Note This meta-class represents the ability to map a security event that is defined in the context of the Security
Extract to a diagnostic event defined on the context of the DiagnosticExtract.
Tags:
atp.Status=draft
atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticEvent DiagnosticEvent 0..1 ref This reference identifies the applicable diagnostic event.
Tags:atp.Status=draft
securityEvent SecurityEventContext 0..1 ref This reference identifies the qualification of the applicable
Props Props security event
Tags:atp.Status=draft
Class SecurityEventContextProps
Package M2::AUTOSARTemplates::SecurityExtractTemplate
Note This meta-class specifies the SecurityEventDefinition to be mapped to an IdsmInstance and adds
mapping-dependent properties of this security event valid only for this specific mapping.
Tags:atp.Status=draft
Base ARObject, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
contextData SecurityEventContext 0..1 aggr This aggregation represents the definition of optional
Data context data for security events.
Stereotypes: atpVariation
Tags:
atp.Status=draft
vh.latestBindingTime=systemDesignTime
default SecurityEventReporting 0..1 attr This attribute defines the default reporting mode for the
ReportingMode ModeEnum referenced security event.
persistent Boolean 0..1 attr This attribute controls whether qualified reportings of the
Storage referenced security event shall be stored persistently by
the mapped IdsmInstance or not.
securityEvent SecurityEventDefinition 0..1 ref This reference defines the security event that is mapped
and enriched by SecurityEventMappingProps with
mapping dependent properties.
Stereotypes: atpVariation
Tags:
atp.Status=draft
vh.latestBindingTime=systemDesignTime
sensorInstance PositiveInteger 0..1 attr This attribute defines the ID of the security sensor that
Id detects the referenced security event.
severity PositiveInteger 0..1 attr This attribute defines how critical/severe the referenced
security event is. Please note that currently, the severity
level meanings of specific integer values is not specified
by AUTOSAR but left to the party responsible for the IDS
system design (e.g. the OEM).
Class SecurityEventDefinition
Package M2::AUTOSARTemplates::SecurityExtractTemplate
Note This meta-class defines a security-related event as part of the intrusion detection system.
Tags:
atp.Status=draft
atp.recommendedPackage=SecurityEventDefinitions
Base ARElement, ARObject, CollectableElement, Identifiable, IdsCommonElement, MultilanguageReferrable,
PackageableElement, Referrable
Attribute Type Mult. Kind Note
eventSymbol SymbolProps 0..1 aggr This aggregation defines optionally an alternative Event
Name Name for the SecurityEventDefinition in case there is a
collision of shortNames.
Stereotypes: atpSplitable
Tags:
atp.Splitkey=eventSymbolName.shortName
atp.Status=draft
5
4
Class SecurityEventDefinition
id PositiveInteger 0..1 attr This attribute represents the numerical identification of
the defined security event. The identification shall be
unique within the scope of the IDS.
Tags:atp.Status=draft
6.10 DiagnosticOperationCycle
[TPS_DEXT_01087] Semantics of DiagnosticOperationCycle dDifferent types
of DiagnosticOperationCycles are supported and defined by the type attribute,
e.g. the time between ignition on and ignition off.c(RS_DEXT_00054)
ARElement
DiagnosticCommonElement
«enumeration»
DiagnosticOperationCycleTypeEnum
DiagnosticOperationCycle
ignition
obdDrivingCycle + automaticEnd: Boolean [0..1]
warmup + cycleStatusStorage: Boolean [0..1]
other + type: DiagnosticOperationCycleTypeEnum [0..1]
Class DiagnosticOperationCycle
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticOperationCycle
Note Definition of an operation cycle that is the base of the event qualifying and for Dem scheduling.
Tags:atp.recommendedPackage=DiagnosticOperationCycles
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
automaticEnd Boolean 0..1 attr If set to true the driving cycle shall automatically end at
either Dem_Shutdown() or Dem_Init().
This attribute is only relevant for the AUTOSAR adaptive
platform. It no longer has a meaning on the AUTOSAR
classic platform.
cycleStatus Boolean 0..1 attr Defines if the operation cycle state is available over the
Storage power cycle (stored non-volatile) or not.
• true: the operation cycle state is stored
non-volatile
5
5
4
Class DiagnosticOperationCycle
4
• false: the operation cycle state is only stored
volatile
This attribute is only relevant for the AUTOSAR adaptive
platform. It no longer has a meaning on the AUTOSAR
classic platform.
type DiagnosticOperation 0..1 attr Operation cycles types for the Dem.
CycleTypeEnum
Enumeration DiagnosticOperationCycleTypeEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticOperationCycle
Note Operation cycles types used to identify certain Operation cycles with a certain semantics.
Literal Description
ignition Ignition ON / OFF cycle
Tags:atp.EnumerationLiteralIndex=0
obdDrivingCycle OBD Driving cycle
Tags:atp.EnumerationLiteralIndex=1
other further operation cycle
Tags:atp.EnumerationLiteralIndex=2
warmup OBD Warm up cycle
Tags:atp.EnumerationLiteralIndex=5
6.11 DiagnosticAging
[TPS_DEXT_03021] Aging dIt is possible to remove a specific event from the event
memory, if its fault conditions are not fulfilled for a certain period of time. This process
is called as aging or unlearning.
This semantics is formalized by means of the meta-class DiagnosticAging.c(RS_-
DEXT_00055)
ARElement
DiagnosticCommonElement
DiagnosticAging
«atpVariation»
+ threshold: PositiveInteger [0..1]
«atpVariation,atpSplitable»
+agingCycle 0..1
DiagnosticOperationCycle
Class DiagnosticAging
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticAging
Note Defines the aging algorithm.
Tags:atp.recommendedPackage=DiagnosticAgings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
agingCycle DiagnosticOperation 0..1 ref This represents the applicable aging cycle.
Cycle
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=agingCycle.diagnosticOperationCycle, aging
Cycle.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
threshold PositiveInteger 0..1 attr Number of aging cycles needed to unlearn/delete the
event.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
6.12 DiagnosticIndicator
[TPS_DEXT_03022] Different kinds of DiagnosticIndicators dDifferent types
of Indicators can be defined with the DiagnosticIndicator element. For this, the
attribute DiagnosticIndicator.type shall be used.c(RS_DEXT_00056)
ARElement
DiagnosticCommonElement
«enumeration»
DiagnosticIndicatorTypeEnum
warning DiagnosticIndicator
malfunction
amberWarning «atpVariation»
protectLamp + type: DiagnosticIndicatorTypeEnum [0..1]
redStopLamp
Class DiagnosticIndicator
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticIndicator
Note Definition of an indicator.
Tags:atp.recommendedPackage=DiagnosticIndicators
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
type DiagnosticIndicatorType 0..1 attr Defines the type of the indicator.
Enum
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
Enumeration DiagnosticIndicatorTypeEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticIndicator
Note Type of an indicator.
Literal Description
amberWarning Amber Warning Lamp
Tags:atp.EnumerationLiteralIndex=0
malfunction Malfunction Indicator Lamp
Tags:atp.EnumerationLiteralIndex=1
protectLamp Protect Lamp
Tags:atp.EnumerationLiteralIndex=2
redStopLamp Red Stop Lamp
Tags:atp.EnumerationLiteralIndex=3
warning Warning
Tags:atp.EnumerationLiteralIndex=4
6.13 DiagnosticTestResult
The meta-class DiagnosticTestResult allows for a formal definition of a diagnostic
test result. The purpose of this meta-class is to support the reporting of the latest test
results back to a client. This is of special importance for the OBD service mode 0x06,
see chapter 5.6.5.
«enumeration»
DiagnosticTestResultUpdateEnum
always
steady
DiagnosticCommonElement
DiagnosticTestIdentifier
DiagnosticTestResult +testIdentifier
«atpVariation»
«atpVariation» 0..1
+ id: PositiveInteger
+ updateKind: DiagnosticTestResultUpdateEnum [0..1] + uasId: PositiveInteger
DiagnosticCommonElement
+monitoredIdentifier DiagnosticMeasurementIdentifier
0..1 «atpVariation»
+ obdMid: PositiveInteger
DiagnosticCommonElement
DiagnosticEvent
Class DiagnosticTestResult
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTestResult
Note This meta-class represents the ability to define diagnostic test results.
Tags:atp.recommendedPackage=DiagnosticTestResults
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticEvent DiagnosticEvent 0..1 ref This attribute represents the diagnostic event that is
related to the diagnostic test result.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
monitored Diagnostic 0..1 ref This attribute represents the related diagnostic monitored
Identifier MeasurementIdentifier identifier.
testIdentifier DiagnosticTestIdentifier 0..1 aggr This attribute represents the applicable test identifier.
updateKind DiagnosticTestResult 0..1 attr This attribute controls the update behavior of the
UpdateEnum enclosing DiagnosticTestResult.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
Class DiagnosticTestIdentifier
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTestResult
Note This meta-class represents the ability to create a diagnostic test identifier.
Base ARObject
Attribute Type Mult. Kind Note
id PositiveInteger 1 attr This represents the numerical id associated with the
diagnostic test identifier.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
uasId PositiveInteger 1 attr This represents the unit and scaling Id of the diagnostic
test result.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
Class DiagnosticMeasurementIdentifier
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTestResult
Note This meta-class represents the ability to describe a measurement identifier.
Tags:atp.recommendedPackage=DiagnosticMeasurementIdentifiers
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
obdMid PositiveInteger 1 attr This represents the numerical measurement Id
Stereotypes: atpVariation
Tags:vh.latestBindingTime=preCompileTime
0..* «atpVariation,atpSplitable»
FibexElement
DiagnosticEcuInstanceProps
EcuInstance
+ecuInstance
+ obdSupport: DiagnosticObdSupportEnum [0..1]
+ comConfigurationGwTimeBase: TimeValue [0..1]
«atpSplitable» 0..* + comConfigurationRxTimeBase: TimeValue [0..1]
+ comConfigurationTxTimeBase: TimeValue [0..1]
+ comEnableMDTForCyclicTransmission: Boolean [0..1]
+ ethSwitchPortGroupDerivation: Boolean [0..1]
«enumeration» + pncPrepareSleepTimer: TimeValue [0..1]
DiagnosticObdSupportEnum + pncSynchronousWakeup: Boolean [0..1]
+ pnResetTime: TimeValue [0..1]
masterEcu + sleepModeSupported: Boolean
secondaryEcu + v2xSupported: V2xSupportEnum [0..1]
primaryEcu + wakeUpOverBusSupported: Boolean
noObdSupport
Therefore, the attributes applying for the ECU-level are added to the meta-class Di-
agnosticEcuInstanceProps.
[TPS_DEXT_01122] Indication whether a EcuInstance supports OBD dThe at-
tribute DiagnosticEcuInstanceProps.obdSupport is taken to define whether a
given EcuInstance shall support OBD and in which way OBD shall be supported on
this Ecu.c(RS_DEXT_00058)
Class DiagnosticEcuInstanceProps
Package M2::AUTOSARTemplates::DiagnosticExtract::DiagnosticContribution
Note This meta-class represents the ability to model properties that are specific for a given EcuInstance but on
the other hand represent purely diagnostic-related information.
In the spirit of decentralized configuration it is therefore possible to specify the diagnostic-related
information related to a given EcuInstance even if the EcuInstance does not yet exist.
Tags:atp.recommendedPackage=DiagnosticEcuInstancePropss
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
ecuInstance EcuInstance * ref This represents the actual EcuInstance to which the
information conatined in the DiagnosticEcuInstance
contribute.
Stereotypes: atpSplitable
Tags:atp.Splitkey=ecuInstance
5
4
Class DiagnosticEcuInstanceProps
obdSupport DiagnosticObdSupport 0..1 attr This attribute is used to specify the role (if applicable) in
Enum which the DiagnosticEcuInstance supports OBD.
Another OBD-related feature of the Dem is the support for the computation of the
In-Use-Monitor Performance Ratio (IUMPR). It is possible to define a so-called Di-
agnosticIumprGroup that encapsulates the computation of a group of Diagnos-
ticEvents.
The modeling of the DiagnosticIumprDenominatorGroup supports the configu-
ration of additional environmental conditions that shall be applied on the increment of
the IUMPR denominator.
From the modeling point of view, neither DiagnosticIumprGroup nor Diagnosti-
cIumprDenominatorGroup reference the associated DiagnosticEvent directly.
But since the DiagnosticIumpr referenced in the role iumpr in turn references
at most one DiagnosticEvent the resulting relation effectively boils down to Di-
agnosticIumprGroup and DiagnosticIumprDenominatorGroup being able to
precisely define the collection of affected DiagnosticEvents.
[TPS_DEXT_01148] Standardized values of DiagnosticIumprGroup.category
dThe semantics of meta-class DiagnosticIumprGroup is identified by means of the
value of attribute DiagnosticIumprGroup.category.
Standardized values of attribute DiagnosticIumprGroup.category are:
• IUMPR_AFRI1
• IUMPR_AFRI2
• IUMPR_BOOSTPRS
• IUMPR_CAT1
• IUMPR_CAT2
• IUMPR_EGR
• IUMPR_EGSENSOR
• IUMPR_EVAP
• IUMPR_FLSYS
• IUMPR_NMHCCAT
• IUMPR_NOXADSORB
• IUMPR_NOXCAT
• IUMPR_OXS1
• IUMPR_OXS2
• IUMPR_PF1
• IUMPR_PF2
• IUMPR_PMFILTER
• IUMPR_PRIVATE
• IUMPR_SAIR
• IUMPR_SECOXS1
• IUMPR_SECOXS2
c(RS_DEXT_00078)
[TPS_DEXT_01149] Standardized values of DiagnosticIumprDenominator-
Group.category dThe semantics of meta-class DiagnosticIumprDenominator-
Group is identified by means of the value of attribute DiagnosticIumprDenomina-
torGroup.category.
Standardized values of attribute DiagnosticIumprDenominatorGroup.category
are:
• IUMPR_DENOMINATOR_500_MILES
• IUMPR_DENOMINATOR_COLDSTART
• IUMPR_DENOMINATOR_EVAP
• IUMPR_DENOMINATOR_NONE
• IUMPR_DENOMINATOR_PHYSICAL_API
c(RS_DEXT_00078)
DiagnosticCommonElement
DiagnosticEvent
+event 0..1
DiagnosticCommonElement
DiagnosticIumpr
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticIumprGroup DiagnosticIumprDenominatorGroup
«atpVariation,atpSplitable»
+iumprGroupIdentifier 0..1
DiagnosticIumprGroupIdentifier
Class DiagnosticIumpr
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticEvent
Note This meta-class represents he ability to model the in-us monitor performance ratio. The latter computes
to the number of times a fault could have been found divided by the number of times the vehicle
conditions have been properly fulfilled.
Tags:atp.recommendedPackage=DiagnosticIumprs
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
event DiagnosticEvent 0..1 ref This reference represents the DiagnosticEvent that
corresoponds to the IUMPR computation.
Class DiagnosticIumprGroup
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticEvent
Note This meta-class represents the ability to model a IUMPR groups.
Tags:atp.recommendedPackage=DiagnosticIumprGroups
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
iumpr DiagnosticIumpr * ref This reference collects DiagnosticIumpr to a Diagnostic
IumprGroup.
iumprGroup DiagnosticIumprGroup 0..1 aggr This aggregation allows for the variant modeling of the
Identifier Identifier groupIdentifier.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=iumprGroupIdentifier, iumprGroup
Identifier.variationPoint.shortLabel
vh.latestBindingTime=postBuild
4
Class DiagnosticIumprDenominatorGroup
iumpr DiagnosticIumpr * ref This reference collects DiagnosticIumpr to a Diagnostic
IumprDenominatorGroup.
The modeling of DTCs for the OBD-II use case is pretty similar to the modeling of DTCs
for the UDS use case. In other words, DiagnosticTroubleCodeObd references the
DiagnosticTroubleCodeProps in the same way that this meta-class is referenced
from DiagnosticTroubleCodeUds.
Please note that the meta-class DiagnosticTroubleCodeObd is only applicable for
the implementation of OBD-II.
[TPS_DEXT_01111] Legislative freeze frame for the OBD-II case dFor the imple-
mentation of OBD-II, the legislative freeze frame is obtained from running the OBD
Mode 0x02 service, modeled by means of meta-class DiagnosticPowertrain-
FreezeFrame.c()
[constr_1459] Existence of attributes of DiagnosticTroubleCodeProps dThe
following list of attributes of meta-class DiagnosticTroubleCodeProps are not re-
quired and therefore shall be ignored if the DiagnosticTroubleCodeProps is ref-
erenced in the role dtcProps from a DiagnosticTroubleCodeObd:
• freezeFrame
• snapshotRecordContent
• memoryDestination
• extendedDataRecord
• aging
c()
DiagnosticCommonElement DiagnosticAbstractDataIdentifier
DiagnosticDataIdentifierSet DiagnosticDataIdentifier
+dataIdentifier
+ didSize: PositiveInteger [0..1]
0..* + representsVin: Boolean [0..1]
{ordered}
+snapshotRecordContent 0..1 +legislatedFreezeFrameContentWwhObd 0..1
EventObdReadinessGroup
«atpVariation» «atpVariation»
+ eventObdReadinessGroup: NameToken [0..1]
+eventReadinessGroup 0..1
«atpVariation,atpSplitable»
DiagnosticCommonElement DiagnosticTroubleCode
DiagnosticTroubleCodeProps DiagnosticTroubleCodeObd
+dtcProps
+ environmentCaptureToReporting: EnvironmentCaptureToReportingEnum [0..1] «atpVariation»
+ immediateNvDataStorage: Boolean [0..1] 0..1 + considerPtoStatus: Boolean [0..1]
+ maxNumberFreezeFrameRecords: PositiveInteger [0..1] + obdDTCValue: PositiveInteger [0..1]
+ significance: DiagnosticSignificanceEnum [0..1]
«atpVariation»
+ priority: PositiveInteger [0..1]
DiagnosticCommonElement
DiagnosticAging
+aging
«atpVariation»
0..1 + threshold: PositiveInteger [0..1]
«atpVariation,atpSplitable» «atpVariation,atpSplitable» «atpVariation,atpSplitable»
+freezeFrame 0..* +extendedDataRecord 0..* +agingCycle 0..1
+memoryDestination 0..*
DiagnosticCommonElement
DiagnosticMemoryDestination
«enumeration» «enumeration»
DiagnosticSignificanceEnum EnvironmentCaptureToReportingEnum
fault captureSynchronousToReporting
occurence captureAsynchronousToReporting
7 Functional Inhibition
7.1 Introduction
Conceptually, the Fim [14] is closely related to the Dem since it handles the relation of
functionality (expressed via the so-called function identifier, or in short-form: Fid) and
linked DiagnosticEvents.
4
Class DiagnosticAbstractAliasEvent (abstract)
Attribute Type Mult. Kind Note
– – – – –
Table 7.2: DiagnosticAbstractAliasEvent
Class DiagnosticFimAliasEventMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticEvent
Note This meta-class represents the ability to model the mapping of a DiagnosticEvent to a DiagnosticAlias
Event. By this means the "preliminary" modeling by way of a DiagnosticAliasEvent is further
substantiated.
Tags:atp.recommendedPackage=DiagnosticFimEventMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
actualEvent DiagnosticEvent 0..1 ref This represents the reference to the actual diagnostic
event.
aliasEvent DiagnosticFimAlias 0..1 ref This represents the reference to the alias event.
Event
Table 7.5: DiagnosticFimAliasEventMapping
Class DiagnosticFimAliasEventGroup
Package M2::AUTOSARTemplates::DiagnosticExtract::Fim
Note This meta-class represents the ability to define an alias for a Fim summarized event. This alias can be
used in early phases of the configuration process until a further refinement is possible.
Tags:atp.recommendedPackage=DiagnosticFimAliasEventGroups
Base ARElement, ARObject, CollectableElement, DiagnosticAbstractAliasEvent, DiagnosticCommonElement,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
groupedAlias DiagnosticFimAlias * ref By means of this reference the grouping of Diagnostic
Event Event AliasEvents within the DiagnosticFimSummaryEvent can
be specified.
Class DiagnosticFimAliasEventGroupMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Fim
Note This meta-class represents the ability to map a DiagnosticFimEventGroup to a DiagnosticFimAliasEvent
Group. By this means the "preliminary" modeling by way of a DiagnosticFimAliasEventGroup is further
substantiated.
Tags:atp.recommendedPackage=DiagnosticFimAliasEventGroupMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
actualEvent DiagnosticFimEvent 0..1 ref This represents the reference to the actual summary
Group event.
aliasEvent DiagnosticFimAlias 0..1 ref This represents the reference to the alias summary event.
EventGroup
Ultimately, the modeling approach for the Fim starts at the definition of the concept of
a function itself by means of the meta-class DiagnosticFunctionIdentifier.
DiagnosticCommonElement
DiagnosticFunctionIdentifier
+functionIdentifier 0..1
«enumeration»
DiagnosticInhibitionMaskEnum
DiagnosticCommonElement
lastFailed
DiagnosticFunctionIdentifierInhibit
notTested
+ inhibitionMask: DiagnosticInhibitionMaskEnum [0..1] tested
testedAndFailed
+inhibitSource 0..*
Identifiable
DiagnosticFunctionInhibitSource
0..1
+event 0..1 +eventGroup 0..1 +inhibitionSource
DiagnosticAbstractAliasEvent DiagnosticAbstractAliasEvent
DiagnosticFimAliasEvent +groupedAliasEvent DiagnosticFimAliasEventGroup
0..*
DiagnosticCommonElement
DiagnosticFimEventGroup
DiagnosticCommonElement
DiagnosticEvent
Class DiagnosticFunctionIdentifierInhibit
Package M2::AUTOSARTemplates::DiagnosticExtract::Fim
Note This meta-class represents the ability to define the inhibition of a specific function identifier within the Fim
configuration.
Tags:atp.recommendedPackage=DiagnosticFunctionIdentifierInhibits
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
function DiagnosticFunction 0..1 ref This represents the corresponding function identifier.
Identifier Identifier
5
4
Class DiagnosticFunctionIdentifierInhibit
inhibitionMask DiagnosticInhibition 0..1 attr This represents the value of the inhibition mask behavior.
MaskEnum
inhibitSource DiagnosticFunction * aggr This represents a collection of DiagnosticFunctionInhibit
InhibitSource Source that contribute to the configuration of the
enclosing DiagnosticFunctionIdentiferInhibit.
Enumeration DiagnosticInhibitionMaskEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Fim
Note This meta-class represents the ability to define different kinds of inhibition mask behavior.
Literal Description
lastFailed This represents the inhibition mask behavior "last failed".
Tags:atp.EnumerationLiteralIndex=0
notTested This represents the inhibition mask behavior "not tested".
Tags:atp.EnumerationLiteralIndex=1
tested This represents the inhibition mask behavior "tested".
Tags:atp.EnumerationLiteralIndex=3
testedAndFailed This represents the inhibition mask behavior "tested and failed".
Tags:atp.EnumerationLiteralIndex=2
Only aliasEvent exists: In this case the configuration is considered incomplete and
only defines the intended semantics from the point of view of a pre-configuration
of the Fim.
Both actualEvent and aliasEvent exist: In this case it is obvious that the con-
figuration has undergone a pre-configuration step in which a DiagnosticFi-
mAliasEvent has been used. However, since the DiagnosticEvent in the
role actualEvent exists the Diagnostic Extract is considered complete with re-
spect to this aspect of the Fim configuration.
c(RS_DEXT_00060, RS_DEXT_00061)
DiagnosticCommonElement
DiagnosticFunctionIdentifier
+functionIdentifier 0..1
DiagnosticCommonElement
DiagnosticFunctionIdentifierInhibit
DiagnosticMapping
DiagnosticFimAliasEventMapping
DiagnosticAbstractAliasEvent DiagnosticCommonElement
DiagnosticFimAliasEvent DiagnosticEvent
Only aliasEvent exists: In this case the configuration is considered incomplete and
only defines the intended semantics from the point of view of a pre-configuration
of the Fim.
Both actualEvent and aliasEvent exist: In this case it is obvious that the con-
figuration has undergone a pre-configuration step in which a Diagnostic-
FimAliasEventGroup has been used. However, since the Diagnostic-
FimEventGroup in the role actualEvent exists the Diagnostic Extract is con-
sidered complete with respect to this aspect of the Fim configuration.
c(RS_DEXT_00060, RS_DEXT_00061)
«enumeration»
DiagnosticCommonElement DiagnosticInhibitionMaskEnum
DiagnosticFunctionIdentifier lastFailed
notTested
tested
testedAndFailed
+functionIdentifier 0..1
DiagnosticCommonElement Identifiable
DiagnosticFunctionIdentifierInhibit +inhibitSource DiagnosticFunctionInhibitSource
+eventGroup 0..1
DiagnosticMapping DiagnosticAbstractAliasEvent
+aliasEvent
DiagnosticFimAliasEventGroupMapping DiagnosticFimAliasEventGroup
0..1
+actualEvent 0..1
DiagnosticCommonElement DiagnosticCommonElement
DiagnosticFimEventGroup +event DiagnosticEvent
DiagnosticMapping
DiagnosticSwMapping
DiagnosticFunctionIdentifier DiagnosticFimFunctionMapping
+mappedFunction
0..1
AtpStructureElement +mappedSwcServiceDependency
Identifiable
0..1 «instanceRef»
ServiceDependency
SwcServiceDependency +mappedFlatSwcServiceDependency
0..1
IdentCaption
BswServiceDependencyIdent +mappedBswServiceDependency
0..1
+ident 0..1
«atpIdentityContributor»
ServiceDependency
BswServiceDependency
Class DiagnosticFimFunctionMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::ServiceMapping
Note This meta-class represents the ability to define a mapping between a function identifier (FID) and the
corresponding SwcServiceDependency in the application software resp. basic software.
Tags:atp.recommendedPackage=DiagnosticFimFunctionMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
DiagnosticSwMapping, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
5
4
Class DiagnosticFimFunctionMapping
Attribute Type Mult. Kind Note
mappedBsw BswService 0..1 ref This is supposed to represent a reference to a Bsw
Service DependencyIdent ServiceDependency. the latter is not derived from
Dependency Referrable and therefore this detour needs to be
implemented to still let BswServiceDependency become
the target of a reference.
mappedFlatSwc SwcService 0..1 ref This represents the ability to refer to an AtomicSw
Service Dependency ComponentType that is available without the definition of
Dependency how it will be embedded into the component hierarchy.
mapped DiagnosticFunction 0..1 ref This represents the mapped FID.
Function Identifier
mappedSwc SwcService 0..1 iref This represents the ability to point into the component
Service Dependency hierarchy (under possible consideration of the root
Dependency SoftwareComposition).
InstanceRef implemented by:SwcServiceDependency
InSystemInstanceRef
Class FunctionInhibitionNeeds
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note Specifies the abstract needs on the configuration of the Function Inhibition Manager for one Function
Identifier (FID). This class currently contains no attributes. Its name can be regarded as a symbol
identifying the FID from the viewpoint of the component or module which owns this class.
Base ARObject, Identifiable, MultilanguageReferrable, Referrable, ServiceNeeds
Attribute Type Mult. Kind Note
– – – – –
Table 7.13: FunctionInhibitionNeeds
8 Diagnostics on J1939
8.1 Introduction
Diagnostics on J1939 is to some extent similar to the “rest of the world”. In other words,
J1939 uses a Dcm and a Dem similarly as other communication networks do.
On the other hand, there are significant differences between J1939 and the “rest of
the world” that justify the creation of a separate chapter that focuses entirely on how a
diagnostic extract for J1939 shall look like.
That said, a support for Dcm-related model elements for J1939 is mainly happening
in the domain of the AUTOSAR System Template [6] rather than in the scope of this
document.
The actual configuration of services supported by the J1939Dcm is done by assigning
DMx messages in the System Description.
The mapping of the J1939DcmIPdus to the diagnostic services of J1939 Dcm happens
during derivation to EcuC.
In the following sections this document focuses on explaining the modeling with respect
to the Dem.
DiagnosticCommonElement DiagnosticMapping
DiagnosticJ1939Spn +spn DiagnosticJ1939SpnMapping
+systemSignal 0..1
+ dynamicLength: Boolean
DiagnosticCommonElement
DiagnosticJ1939Node
+node 0..1
+nmNode 0..1
4
Class DiagnosticJ1939FreezeFrame
spn (ordered) DiagnosticJ1939Spn * ref This represents the collection of SPNs that make the
J1939 Freeze Frame.
Class DiagnosticJ1939ExpandedFreezeFrame
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::J1939
Note This meta-class represents the ability to model an expanded J1939 Freeze Frame.
Tags:atp.recommendedPackage=DiagnosticJ1939ExpandedFreezeFrames
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
node DiagnosticJ1939Node 0..1 ref This represents the DiagnosticJ1939Node to which the
J1939 expanded freeze frame is associated.
spn (ordered) DiagnosticJ1939Spn * ref This represents the collection of SPNs that make the
expanded J1939 Freeze Frame.
Enumeration DiagnosticTroubleCodeJ1939DtcKindEnum
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::DiagnosticTroubleCode
Note This meta-class represents the ability to further specify a J1939 DTC in terms of its semantics.
Literal Description
serviceOnly this represents a DTC that is only relevant for service in a garage, reported by e.g. DM53.
Tags:atp.EnumerationLiteralIndex=0
standard This represents a non-specific DTC reported by e.g. DM1.
Tags:atp.EnumerationLiteralIndex=1
4
Class DiagnosticJ1939SpnMapping
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
sendingNode DiagnosticJ1939Node * ref This additional reference has a supporting role in that it
identifies all sending nodes of a given SPN. It is positively
possible thata given SPN is sent by more than one node.
Even tough the reference targets the Diagnostic
J1939Node the semantics of the reference is bound to
the J1939NmNode that is in turn referenced by the
DiagnosticJ1939Node.
spn DiagnosticJ1939Spn 0..1 ref This reference goes to the SPN that shall be associated
with a SystemSignal.
systemSignal SystemSignal 0..1 ref This reference goes to the SystemSignal that shall be
associated with an SPN.
Class DiagnosticJ1939Node
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::J1939
Note This meta-class represents the diagnostic configuration of a J1939 Nm node, which in turn represents a
"virtual Ecu" on the J1939 communication bus.
Tags:atp.recommendedPackage=DiagnosticJ1939Nodes
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
nmNode J1939NmNode 0..1 ref This represents the reference to the "virtual Ecu" to which
the enclosing DiagnosticJ1939Node is associated.
4
Class DiagnosticTroubleCodeJ1939
fmi PositiveInteger 0..1 attr This attribute represents the behavior of the Failure Mode
Indicator.
kind DiagnosticTroubleCode 0..1 attr This attribute further specifies the DTC in terms of its
J1939DtcKindEnum semantics.
node DiagnosticJ1939Node 0..1 ref This represents the related DiagnosticJ1939Node.
spn DiagnosticJ1939Spn 0..1 ref This represents the releated SPN.
+swComponentPrototype 0..1
0..*
0..1 {ordered,
+targetComponent {redefines atpTarget} +contextComponent subsets atpContextElement}
AtpPrototype DiagnosticCommonElement
SwComponentPrototype +swComponentPrototype DiagnosticJ1939SwMapping
0..1 «instanceRef»
DiagnosticCommonElement
DiagnosticJ1939Node +node
0..1
Class DiagnosticJ1939SwMapping
Package M2::AUTOSARTemplates::DiagnosticExtract::SwMapping
Note This meta-class represents the ability to map a piece of application software to a J1939DiagnosticNode.
By this means the diagnostic configuration can be associated with the application software.
Tags:atp.recommendedPackage=DiagnosticJ1939SwMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
node DiagnosticJ1939Node 0..1 ref This represents the mapped DiagnosticJ1939Node.
swComponent SwComponent 0..1 iref This represents the mapped SwComponentPrototype.
Prototype Prototype
InstanceRef implemented by:ComponentInComposition
InstanceRef
Table 8.8: DiagnosticJ1939SwMapping
+diagnosticEvent 0..1
DiagnosticMapping
DiagnosticEventToTroubleCodeJ1939Mapping
+troubleCodeJ1939 0..1
DiagnosticTroubleCode
DiagnosticTroubleCodeJ1939
Class DiagnosticEventToTroubleCodeJ1939Mapping
Package M2::AUTOSARTemplates::DiagnosticExtract::Dem::J1939
Note By means of this meta-class it is possible to associate a DiagnosticEvent to a DiagnosticTroubleCode
J1939.
Tags:atp.recommendedPackage=DiagnosticMappings
Base ARElement, ARObject, CollectableElement, DiagnosticCommonElement, DiagnosticMapping,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
diagnosticEvent DiagnosticEvent 0..1 ref Reference to a DiagnosticEvent to which a J1939
Diagnostic Trouble Code is assigned.
troubleCode DiagnosticTroubleCode 0..1 ref Reference to a J1939 Diagnostic Trouble Code to which a
J1939 J1939 DiagnosticEvent is assigned.
Class ARPackage
Package M2::AUTOSARTemplates::GenericStructure::GeneralTemplateClasses::ARPackage
Note AUTOSAR package, allowing to create top level packages to structure the contained ARElements.
ARPackages are open sets. This means that in a file based description system multiple files can be used
to partially describe the contents of a package.
This is an extended version of MSR’s SW-SYSTEM.
Base ARObject, AtpBlueprint, AtpBlueprintable, CollectableElement, Identifiable, MultilanguageReferrable,
Referrable
Attribute Type Mult. Kind Note
5
4
Class ARPackage
arPackage ARPackage * aggr This represents a sub package within an ARPackage,
thus allowing for an unlimited package hierarchy.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=arPackage.shortName, arPackage.variation
Point.shortLabel
vh.latestBindingTime=blueprintDerivationTime
xml.sequenceOffset=30
element PackageableElement * aggr Elements that are part of this package
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=element.shortName, element.variation
Point.shortLabel
vh.latestBindingTime=systemDesignTime
xml.sequenceOffset=20
referenceBase ReferenceBase * aggr This denotes the reference bases for the package. This is
the basis for all relative references within the package.
The base needs to be selected according to the base
attribute within the references.
Stereotypes: atpSplitable
Tags:
atp.Splitkey=referenceBase.shortLabel
xml.sequenceOffset=10
Class ApplicationArrayDataType
Package M2::AUTOSARTemplates::SWComponentTemplate::Datatype::Datatypes
Note An application data type which is an array, each element is of the same application data type.
Tags:atp.recommendedPackage=ApplicationDataTypes
Base ARElement, ARObject, ApplicationCompositeDataType, ApplicationDataType, AtpBlueprint, Atp
Blueprintable, AtpClassifier , AtpType, AutosarDataType, CollectableElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dynamicArray String 0..1 attr Specifies the profile which the array will follow if it is a
SizeProfile variable size array.
element ApplicationArray 0..1 aggr This association implements the concept of an array
Element element. That is, in some cases it is necessary to be able
to identify single array elements, e.g. as input values for
an interpolation routine.
4
Class ApplicationDataType (abstract)
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, AtpClassifier , AtpType, AutosarDataType,
CollectableElement, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Subclasses ApplicationCompositeDataType, ApplicationPrimitiveDataType
Attribute Type Mult. Kind Note
– – – – –
Table A.4: ApplicationDataType
4
Class AtpInstanceRef (abstract)
4
AtomicSwcInstanceRef, RteEventInEcuInstanceRef, RunnableEntityInCompositionInstanceRef, Swc
ServiceDependencyInSystemInstanceRef, TriggerInAtomicSwcInstanceRef , TriggerInSystemInstance
Ref, VariableAccessInEcuInstanceRef, VariableDataPrototypeInCompositionInstanceRef, VariableData
PrototypeInSystemInstanceRef, VariableInAtomicSWCTypeInstanceRef, VariableInAtomicSwcInstance
Ref , VariableInComponentInstanceRef
Attribute Type Mult. Kind Note
atpBase AtpClassifier 1 ref This is the base from which the navigaion path starts.
Stereotypes: atpAbstract; atpDerived
atpContext AtpPrototype * ref This is one particular step in the navigation path.
Element
Stereotypes: atpAbstract
(ordered)
atpTarget AtpFeature 1 ref This is the target of the instance ref. In other words it is
the terminal of the navigation path.
Stereotypes: atpAbstract
Class BaseTypeDirectDefinition
Package M2::MSR::AsamHdo::BaseTypes
Note This BaseType is defined directly (as opposite to a derived BaseType)
Base ARObject, BaseTypeDefinition
Attribute Type Mult. Kind Note
baseType BaseTypeEncoding 0..1 attr This specifies, how an object of the current BaseType is
Encoding String encoded, e.g. in an ECU within a message sequence.
Tags:xml.sequenceOffset=90
baseTypeSize PositiveInteger 0..1 attr Describes the length of the data type specified in the
container in bits.
Tags:xml.sequenceOffset=70
byteOrder ByteOrderEnum 0..1 attr This attribute specifies the byte order of the base type.
Tags:xml.sequenceOffset=110
5
4
Class BaseTypeDirectDefinition
memAlignment PositiveInteger 0..1 attr This attribute describes the alignment of the memory
object in bits. E.g. "8" specifies, that the object in
question is aligned to a byte while "32" specifies that it is
aligned four byte. If the value is set to "0" the meaning
shall be interpreted as "unspecified".
Tags:xml.sequenceOffset=100
native NativeDeclarationString 0..1 attr This attribute describes the declaration of such a base
Declaration type in the native programming language, primarily in the
Programming language C. This can then be used by a
code generator to include the necessary declarations into
a header file. For example
BaseType with shortName: "MyUnsignedInt" native
Declaration: "unsigned short"
Results in
typedef unsigned short MyUnsignedInt;
If the attribute is not defined the referring Implementation
DataTypes will not be generated as a typedef by RTE.
If a nativeDeclaration type is given it shall fulfill the
characteristic given by basetypeEncoding and baseType
Size.
This is required to ensure the consistent handling and
interpretation by software components, RTE, COM and
MCM systems.
Tags:xml.sequenceOffset=120
Class BswModuleDescription
Package M2::AUTOSARTemplates::BswModuleTemplate::BswOverview
Note Root element for the description of a single BSW module or BSW cluster. In case it describes a BSW
module, the short name of this element equals the name of the BSW module.
Tags:atp.recommendedPackage=BswModuleDescriptions
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, AtpClassifier , AtpFeature, AtpStructureElement,
CollectableElement, Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
bswModule BswModuleDependency * aggr Describes the dependency to another BSW module.
Dependency
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=bswModuleDependency.shortName, bsw
ModuleDependency.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=20
bswModule SwComponent 0..1 aggr This adds a documentation to the BSW module.
Documentation Documentation
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=bswModuleDocumentation, bswModule
Documentation.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=6
5
4
Class BswModuleDescription
expectedEntry BswModuleEntry * ref Indicates an entry which is required by this module.
Replacement of outgoingCallback / requiredEntry.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=expectedEntry.bswModuleEntry, expected
Entry.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
implemented BswModuleEntry * ref Specifies an entry provided by this module which can be
Entry called by other modules. This includes "main" functions,
interrupt routines, and callbacks. Replacement of
providedEntry / expectedCallback.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=implementedEntry.bswModuleEntry,
implementedEntry.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
internalBehavior BswInternalBehavior * aggr The various BswInternalBehaviors associated with a Bsw
ModuleDescription can be distributed over several
physical files. Therefore the aggregation is <<atp
Splitable>>.
Stereotypes: atpSplitable
Tags:
atp.Splitkey=internalBehavior.shortName
xml.sequenceOffset=65
moduleId PositiveInteger 0..1 attr Refers to the BSW Module Identifier defined by the
AUTOSAR standard. For non-standardized modules, a
proprietary identifier can be optionally chosen.
Tags:xml.sequenceOffset=5
providedClient BswModuleClientServer * aggr Specifies that this module provides a client server entry
ServerEntry Entry which can be called from another parition or core.This
entry is declared locally to this context and will be
connected to the requiredClientServerEntry of another or
the same module via the configuration of the BSW
Scheduler.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=providedClientServerEntry.shortName,
providedClientServerEntry.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=45
providedData VariableDataPrototype * aggr Specifies a data prototype provided by this module in
order to be read from another partition or core.The
providedData is declared locally to this context and will be
connected to the requiredData of another or the same
module via the configuration of the BSW Scheduler.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=providedData.shortName, provided
Data.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=55
5
4
Class BswModuleDescription
providedMode ModeDeclarationGroup * aggr A set of modes which is owned and provided by this
Group Prototype module or cluster. It can be connected to the required
ModeGroups of other modules or clusters via the
configuration of the BswScheduler. It can also be
synchronized with modes provided via ports by an
associated ServiceSwComponentType, EcuAbstraction
SwComponentType or ComplexDeviceDriverSw
ComponentType.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=providedModeGroup.shortName, provided
ModeGroup.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=25
releasedTrigger Trigger * aggr A Trigger released by this module or cluster. It can be
connected to the requiredTriggers of other modules or
clusters via the configuration of the BswScheduler. It can
also be synchronized with Triggers provided via ports by
an associated ServiceSwComponentType, Ecu
AbstractionSwComponentType or ComplexDeviceDriver
SwComponentType.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=releasedTrigger.shortName, released
Trigger.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=35
requiredClient BswModuleClientServer * aggr Specifies that this module requires a client server entry
ServerEntry Entry which can be implemented on another parition or
core.This entry is declared locally to this context and will
be connected to the providedClientServerEntry of another
or the same module via the configuration of the BSW
Scheduler.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=requiredClientServerEntry.shortName,
requiredClientServerEntry.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=50
requiredData VariableDataPrototype * aggr Specifies a data prototype required by this module in oder
to be provided from another partition or core.The required
Data is declared locally to this context and will be
connected to the providedData of another or the same
module via the configuration of the BswScheduler.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=requiredData.shortName, required
Data.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=60
requiredMode ModeDeclarationGroup * aggr Specifies that this module or cluster depends on a certain
Group Prototype mode group. The requiredModeGroup is local to this
context and will be connected to the providedModeGroup
of another module or cluster via the configuration of the
BswScheduler.
5
5
4
Class BswModuleDescription
4
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=requiredModeGroup.shortName, required
ModeGroup.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=30
requiredTrigger Trigger * aggr Specifies that this module or cluster reacts upon an
external trigger.This requiredTrigger is declared locally to
this context and will be connected to the providedTrigger
of another module or cluster via the configuration of the
BswScheduler.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=requiredTrigger.shortName, required
Trigger.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
xml.sequenceOffset=40
Class CompositionSwComponentType
Package M2::AUTOSARTemplates::SWComponentTemplate::Composition
Note A CompositionSwComponentType aggregates SwComponentPrototypes (that in turn are typed by Sw
ComponentTypes) as well as SwConnectors for primarily connecting SwComponentPrototypes among
each others and towards the surface of the CompositionSwComponentType. By this means hierarchical
structures of software-components can be created.
Tags:atp.recommendedPackage=SwComponentTypes
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, AtpClassifier , AtpType, CollectableElement,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable, SwComponentType
Attribute Type Mult. Kind Note
component SwComponent * aggr The instantiated components that are part of this
Prototype composition. The aggregation of SwComponentPrototype
is subject to variability with the purpose to support the
conditional existence of a SwComponentPrototype.
Please be aware: if the conditional existence of Sw
ComponentPrototypes is resolved post-build the
deselected SwComponentPrototypes are still contained in
the ECUs build but the instances are inactive in in that
they are not scheduled by the RTE.
The aggregation is marked as atpSplitable in order to
allow the addition of service components to the ECU
extract during the ECU integration.
The use case for having 0 components owned by the
CompositionSwComponentType could be to deliver an
empty CompositionSwComponentType to e.g. a supplier
for filling the internal structure.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=component.shortName, component.variation
Point.shortLabel
vh.latestBindingTime=postBuild
5
4
Class CompositionSwComponentType
connector SwConnector * aggr SwConnectors have the principal ability to establish a
connection among PortPrototypes. They can have many
roles in the context of a CompositionSwComponentType.
Details are refined by subclasses.
The aggregation of SwConnectors is subject to variability
with the purpose to support variant data flow.
The aggregation is marked as atpSplitable in order to
allow the extension of the ECU extract with AssemblySw
Connectors between ApplicationSwComponentTypes and
ServiceSwComponentTypes during the ECU integration.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=connector.shortName, connector.variation
Point.shortLabel
vh.latestBindingTime=postBuild
constantValue ConstantSpecification * ref Reference to the ConstantSpecificationMapping to be
Mapping MappingSet applied for initValues of PPortComSpecs and RPortCom
Spec.
Stereotypes: atpSplitable
Tags:atp.Splitkey=constantValueMapping
dataType DataTypeMappingSet * ref Reference to the DataTypeMapping to be applied for the
Mapping used ApplicationDataTypes in PortInterfaces.
Background: when developing subsystems it may happen
that ApplicationDataTypes are used on the surface of
CompositionSwComponentTypes. In this case it would be
reasonable to be able to also provide the intended
mapping to the ImplementationDataTypes. However, this
mapping shall be informal and not technically binding for
the implementors mainly because the RTE generator is
not concerned about the CompositionSwComponent
Types.
Rationale: if the mapping of ApplicationDataTypes on the
delegated and inner PortPrototype matches then the
mapping to ImplementationDataTypes is not impacting
compatibility.
Stereotypes: atpSplitable
Tags:atp.Splitkey=dataTypeMapping
instantiation InstantiationRTEEvent * aggr This allows to define instantiation specific properties for
RTEEventProps Props RTE Events, in particular for instance specific scheduling.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=instantiationRTEEventProps.shortLabel,
instantiationRTEEventProps.variationPoint.shortLabel
vh.latestBindingTime=codeGenerationTime
Class CompuMethod
Package M2::MSR::AsamHdo::ComputationMethod
5
4
Class CompuMethod
Note This meta-class represents the ability to express the relationship between a physical value and the
mathematical representation.
Note that this is still independent of the technical implementation in data types. It only specifies the
formula how the internal value corresponds to its physical pendant.
Tags:atp.recommendedPackage=CompuMethods
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, CollectableElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
compuInternal Compu 0..1 aggr This specifies the computation from internal values to
ToPhys physical values.
Tags:xml.sequenceOffset=80
compuPhysTo Compu 0..1 aggr This represents the computation from physical values to
Internal the internal values.
Tags:xml.sequenceOffset=90
displayFormat DisplayFormatString 0..1 attr This property specifies, how the physical value shall be
displayed e.g. in documents or measurement and
calibration tools.
Tags:xml.sequenceOffset=20
unit Unit 0..1 ref This is the physical unit of the Physical values for which
the CompuMethod applies.
Tags:xml.sequenceOffset=30
Class DataConstr
Package M2::MSR::AsamHdo::Constraints::GlobalConstraints
Note This meta-class represents the ability to specify constraints on data.
Tags:atp.recommendedPackage=DataConstrs
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, CollectableElement, Identifiable, Multilanguage
Referrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
dataConstrRule DataConstrRule * aggr This is one particular rule within the data constraints.
Tags:
xml.roleElement=true
xml.roleWrapperElement=true
xml.sequenceOffset=30
xml.typeElement=false
xml.typeWrapperElement=false
4
Class DataInterface (abstract)
Subclasses NvDataInterface, ParameterInterface, SenderReceiverInterface
Attribute Type Mult. Kind Note
– – – – –
Table A.13: DataInterface
Class DiagnosticEventNeeds
Package M2::AUTOSARTemplates::CommonStructure::ServiceNeeds
Note Specifies the abstract needs on the configuration of the Diagnostic Event Manager for one diagnostic
event. Its shortName can be regarded as a symbol identifying the diagnostic event from the viewpoint of
the component or module which owns this element.
In case the diagnostic event specifies a production error, the shortName shall be the name of the
production error.
Base ARObject, DiagnosticCapabilityElement, Identifiable, MultilanguageReferrable, Referrable, Service
Needs
Attribute Type Mult. Kind Note
considerPto Boolean 0..1 attr PTO (Power Take Off) has an impact on the respective
Status emission-related event (OBD). This information shall be
provided by SW-C description in order to consider the
PTO relevance e.g. for readiness (PID $01) computation.
For events with dtcKind set to ’nonEmmissionRelatedDtc’
this attribute is typically false.
deferringFid FunctionInhibitionNeeds * ref This reference contains the link to a function identifier
within the FiM which is used by the monitor before
delivering a result.
diagEvent DiagEventDebounce 0..1 aggr Specifies the abstract need on the Debounce Algorithm
Debounce Algorithm applied by the Diagnostic Event Manager.
Algorithm
dtcKind DtcKindEnum 0..1 attr This attribute indicates the kind of the diagnostic monitor
according to the SWS Diagnostic Event Manger.
This attribute applies for the UDS diagnostics use case.
obdDtcNumber PositiveInteger 0..1 attr This represents a reasonable Diagnostic Trouble Code.
This allows to predefine the Diagnostic Trouble Code, e.g.
if the a function developer has received a particular
requirement from the OEM or from a standardization
body.
This attribute applies for the OBD diagnostics use case.
5
4
Class DiagnosticEventNeeds
prestored Boolean 0..1 attr If the Event uses a prestored freeze-frame (using the
Freezeframe operations PrestoreFreezeFrame and ClearPrestored
StoredInNvm FreezeFrame of the service interface DiagnosticMonitor)
this attribute indicates if the Event requires the data to be
stored in non-volatile memory. TRUE = Dem shall store
the prestored data in non-volatile memory, FALSE = Data
can be lost at shutdown (not stored in Nvm).
reportBehavior ReportBehaviorEnum 0..1 attr This switch indicates whether or not the BSW module is
allowed to report the related Events before Dem_Init().
udsDtcNumber PositiveInteger 0..1 attr This represents a reasonable Diagnostic Trouble Code.
This allows to predefine the Diagnostic Trouble Code, e.g.
if the a function developer has received a particular
requirement from the OEM or from a standardization
body.
This attribute applies for the UDS diagnostics use case.
usesMonitor Boolean 0..1 attr This attribute defines whether additional monitor data
Data shall be added to the reporting of events.
Class EcuInstance
Package M2::AUTOSARTemplates::SystemTemplate::Fibex::FibexCore::CoreTopology
Note ECUInstances are used to define the ECUs used in the topology. The type of the ECU is defined by a
reference to an ECU specified with the ECU resource description.
Tags:atp.recommendedPackage=EcuInstances
Base ARObject, CollectableElement, FibexElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Attribute Type Mult. Kind Note
associatedCom ISignalIPduGroup * ref With this reference it is possible to identify which ISignal
IPduGroup IPduGroups are applicable for which Communication
Connector/ ECU.
Only top level ISignalIPduGroups shall be referenced by
an EcuInstance. If an ISignalIPduGroup contains other
ISignalIPduGroups than these contained ISignalIPdu
Groups shall not be referenced by the EcuInstance.
Contained ISignalIPduGroups are associated to an Ecu
Instance via the top level ISignalIPduGroup.
associated ConsumedProvided * ref With this reference it is possible to identify which
Consumed ServiceInstanceGroup ConsumedProvidedServiceInstanceGroups are
Provided applicable for which ECUInstance.
ServiceInstance
Stereotypes: atpVariation
Group
Tags:vh.latestBindingTime=postBuild
associatedPdur PdurIPduGroup * ref With this reference it is possible to identify which PduR
IPduGroup IPdu Groups are applicable for which Communication
Connector/ ECU.
clientIdRange ClientIdRange 0..1 aggr Restriction of the Client Identifier for this Ecu to an
allowed range of numerical values. The Client Identifier of
the transaction handle is generated by the client RTE for
inter-Ecu Client/Server communication.
com TimeValue 0..1 attr The period between successive calls to Com_Main
Configuration FunctionRouteSignals of the AUTOSAR COM module in
GwTimeBase seconds.
5
4
Class EcuInstance
com TimeValue 0..1 attr The period between successive calls to Com_Main
ConfigurationRx FunctionRx of the AUTOSAR COM module in seconds.
TimeBase
com TimeValue 0..1 attr The period between successive calls to Com_Main
ConfigurationTx FunctionTx of the AUTOSAR COM module in seconds.
TimeBase
comEnable Boolean 0..1 attr Enables for the Com module of this EcuInstance the
MDTForCyclic minimum delay time monitoring for cyclic and repeated
Transmission transmissions (TransmissionModeTiming has cyclic
Timing assigned or eventControlledTiming with numberOf
Repetitions > 0).
commController Communication 1..* aggr CommunicationControllers of the ECU.
Controller
Stereotypes: atpVariation
Tags:vh.latestBindingTime=postBuild
connector Communication * aggr All channels controlled by a single controller.
Connector
Stereotypes: atpVariation
Tags:vh.latestBindingTime=postBuild
dltConfig DltConfig 0..1 aggr Describes the Dlt configuration on this EcuInstance.
doIpConfig DoIpConfig 0..1 aggr DoIp configuration on this EcuInstance.
Tags:atp.Status=draft
ethSwitchPort Boolean 0..1 attr Defines whether the derivation of SwitchPortGroups
Group based on VLAN and/or CouplingPort.pncMapping shall be
Derivation performed for this EcuInstance. If not defined the
derivation shall not be done.
partition EcuPartition * aggr Optional definition of Partitions within an Ecu.
pncPrepare TimeValue 0..1 attr Time in seconds the PNC state machine shall wait in
SleepTimer PNC_PREPARE_SLEEP.
pnc Boolean 0..1 attr If this parameter is available and set to true then all
Synchronous available PNCs will be woken up as soon as a channel
Wakeup wakeup occurs. This is ensured by adding all PNCs to all
channel wakeup sources during upstream mapping.
pnResetTime TimeValue 0..1 attr Specifies the runtime of the reset timer in seconds. This
reset time is valid for the reset of PN requests in the EIRA
and in the ERA.
sleepMode Boolean 1 attr Specifies whether the ECU instance may be put to a "low
Supported power mode"
• true: sleep mode is supported
• false: sleep mode is not supported
Note: This flag may only be set to "true" if the feature is
supported by both hardware and basic software.
tcpIpIcmpProps EthTcpIpIcmpProps 0..1 ref EcuInstance specific ICMP (Internet Control Message
Protocol) attributes
tcpIpProps EthTcpIpProps 0..1 ref EcuInstance specific TcpIp Stack attributes.
v2xSupported V2xSupportEnum 0..1 attr This attribute is used to control the existence of the V2X
stack on the given EcuInstance.
wakeUpOver Boolean 1 attr Driver support for wakeup over Bus.
BusSupported
Class ISignal
Package M2::AUTOSARTemplates::SystemTemplate::Fibex::FibexCore::CoreCommunication
Note Signal of the Interaction Layer. The RTE supports a "signal fan-out" where the same System Signal is
sent in different SignalIPdus to multiple receivers.
To support the RTE "signal fan-out" each SignalIPdu contains ISignals. If the same System Signal is to
be mapped into several SignalIPdus there is one ISignal needed for each ISignalToIPduMapping.
ISignals describe the Interface between the Precompile configured RTE and the potentially Postbuild
configured Com Stack (see ECUC Parameter Mapping).
In case of the SystemSignalGroup an ISignal shall be created for each SystemSignal contained in the
SystemSignalGroup.
Tags:atp.recommendedPackage=ISignals
Base ARObject, CollectableElement, FibexElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Attribute Type Mult. Kind Note
data DataTransformation 0..1 ref Optional reference to a DataTransformation which
Transformation represents the transformer chain that is used to transform
the data that shall be placed inside this ISignal.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=dataTransformation.dataTransformation,
dataTransformation.variationPoint.shortLabel
vh.latestBindingTime=codeGenerationTime
dataTypePolicy DataTypePolicyEnum 1 attr With the aggregation of SwDataDefProps an ISignal
specifies how it is represented on the network. This
representation follows a particular policy. Note that this
causes some redundancy which is intended and can be
used to support flexible development methodology as well
as subsequent integrity checks.
If the policy "networkRepresentationFromComSpec" is
chosen the network representation from the ComSpec
that is aggregated by the PortPrototype shall be used. If
the "override" policy is chosen the requirements specified
in the PortInterface and in the ComSpec are not fulfilled
by the networkRepresentationProps. In case the System
Description doesn’t use a complete Software Component
Description (VFB View) the "legacy" policy can be
chosen.
initValue ValueSpecification 0..1 aggr Optional definition of a ISignal’s initValue in case the
System Description doesn’t use a complete Software
Component Description (VFB View). This supports the
inclusion of legacy system signals.
This value can be used to configure the Signal’s "Init
Value".
If a full DataMapping exist for the SystemSignal this
information may be available from a configured Sender
ComSpec and ReceiverComSpec. In this case the
initvalues in SenderComSpec and/or ReceiverComSpec
override this optional value specification. Further
restrictions apply from the RTE specification.
iSignalProps ISignalProps 0..1 aggr Additional optional ISignal properties that may be stored
in different files.
Stereotypes: atpSplitable
Tags:atp.Splitkey=iSignalProps
iSignalType ISignalTypeEnum 0..1 attr This attribute defines whether this iSignal is an array that
results in a UINT8_N / UINT8_DYN ComSignalType in the
COM configuration or a primitive type.
5
4
Class ISignal
length Integer 1 attr Size of the signal in bits. The size needs to be derived
from the mapped VariableDataPrototype according to the
mapping of primitive DataTypes to BaseTypes as used in
the RTE. Indicates maximum size for dynamic length
signals.
The ISignal length of zero bits is allowed.
network SwDataDefProps 0..1 aggr Specification of the actual network representation. The
Representation usage of SwDataDefProps for this purpose is restricted to
Props the attributes compuMethod and baseType. The optional
baseType attributes "memAllignment" and "byteOrder"
shall not be used.
The attribute "dataTypePolicy" in the SystemTemplate
element defines whether this network representation shall
be ignored and the information shall be taken over from
the network representation of the ComSpec.
If "override" is chosen by the system integrator the
network representation can violate against the
requirements defined in the PortInterface and in the
network representation of the ComSpec.
In case that the System Description doesn’t use a
complete Software Component Description (VFB View)
this element is used to configure "ComSignalDataInvalid
Value" and the Data Semantics.
systemSignal SystemSignal 1 ref Reference to the System Signal that is supposed to be
transmitted in the ISignal.
timeout ValueSpecification 0..1 aggr Defines and enables the ComTimeoutSubstituition for this
Substitution ISignal.
Value
transformation TransformationISignal * aggr A transformer chain consists of an ordered list of
ISignalProps Props transformers. The ISignal specific configuration
properties for each transformer are defined in the
TransformationISignalProps class. The transformer
configuration properties that are common for all ISignals
are described in the TransformationTechnology class.
Class ISignalIPduGroup
Package M2::AUTOSARTemplates::SystemTemplate::Fibex::FibexCore::CoreCommunication
Note The AUTOSAR COM Layer is able to start and to stop sending and receiving configurable groups of
I-Pdus during runtime. An ISignalIPduGroup contains either ISignalIPdus or ISignalIPduGroups.
Tags:atp.recommendedPackage=ISignaliPduGroup
Base ARObject, CollectableElement, FibexElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Attribute Type Mult. Kind Note
communication Communication 1 attr This attribute determines in which direction IPdus that are
Direction DirectionType contained in this IPduGroup will be transmitted
(communication direction can be either In or Out).
communication String 1 attr This attribute defines the use-case for this ISignalIPdu
Mode Group (e.g. diagnostic, debugging etc.). For example, in a
diagnostic mode all IPdus - which are not involved in
diagnostic - are disabled. The use cases are not limited to
a fixed enumeration and can be specified as a string.
5
4
Class ISignalIPduGroup
contained ISignalIPduGroup * ref An I-Pdu group can be included in other I-Pdu groups.
ISignalIPdu Contained I-Pdu groups shall not be referenced by the
Group EcuInstance.
iSignalIPdu ISignalIPdu * ref Reference to a set of Signal I-Pdus, which are contained
in the ISignal I-Pdu Group.
atpVariation: The content of a ISignal I-Pdu group can
vary (->vehicle modes).
Stereotypes: atpVariation
Tags:vh.latestBindingTime=postBuild
nmPdu NmPdu * ref Reference to a set of NmPdus with NmUserData, which
are contained in the ISignalIPduGroup.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=postBuild
4
Class Identifiable (abstract)
4
ExclusiveArea, ExecutableEntity , ExecutionTime, FMAttributeDef, FMFeatureMapAssertion, FMFeature
MapCondition, FMFeatureMapElement, FMFeatureRelation, FMFeatureRestriction, FMFeatureSelection,
FlatInstanceDescriptor, FlexrayArTpNode, FlexrayTpConnectionControl, FlexrayTpNode, FlexrayTpPdu
Pool, FrameTriggering, GeneralParameter, GlobalTimeGateway, GlobalTimeMaster , GlobalTimeSlave,
HeapUsage, HwAttributeDef, HwAttributeLiteralDef, HwPin, HwPinGroup, IPSecRule, IPv6ExtHeader
FilterList, ISignalToIPduMapping, ISignalTriggering, IdentCaption, InternalTriggeringPoint, J1939Shared
AddressCluster, J1939TpNode, Keyword, LifeCycleState, LinScheduleTable, LinTpNode, Linker, Mac
MulticastGroup, McDataInstance, MemorySection, ModeDeclaration, ModeDeclarationMapping, Mode
SwitchPoint, NetworkEndpoint, NmCluster , NmEcu, NmNode, NvBlockDescriptor, PackageableElement,
ParameterAccess, PduToFrameMapping, PduTriggering, PerInstanceMemory, PhysicalChannel, Port
ElementToCommunicationResourceMapping, PortGroup, PortInterfaceMapping, PossibleErrorReaction,
ResourceConsumption, RootSwCompositionPrototype, RptComponent, RptContainer, RptExecutable
Entity, RptExecutableEntityEvent, RptExecutionContext, RptProfile, RptServicePoint, RunnableEntity
Group, SdgAttribute, SdgClass, SecureCommunicationAuthenticationProps, SecureCommunication
FreshnessProps, SecurityEventContextProps, ServerCallPoint, ServiceNeeds, SignalServiceTranslation
ElementProps, SignalServiceTranslationEventProps, SignalServiceTranslationProps, SocketAddress,
SomeipTpChannel, SpecElementReference, StackUsage, StaticSocketConnection, StructuredReq, Sw
GenericAxisParamType, SwServiceArg, SwcServiceDependency, SwcToApplicationPartitionMapping,
SwcToEcuMapping, SwcToImplMapping, SystemMapping, TDCpSoftwareClusterMapping, TDCp
SoftwareClusterResourceMapping, TcpOptionFilterList, TimingCondition, TimingConstraint, Timing
Description, TimingExtensionResource, TimingModeInstance, TlsCryptoCipherSuite, Topic1, TpAddress,
TraceableTable, TraceableText, TracedFailure, TransformationProps, TransformationTechnology, Trigger,
VariableAccess, VariationPointProxy, ViewMap, VlanConfig, WaitPoint
Attribute Type Mult. Kind Note
adminData AdminData 0..1 aggr This represents the administrative data for the identifiable
object.
Tags:xml.sequenceOffset=-40
annotation Annotation * aggr Possibility to provide additional notes while defining a
model element (e.g. the ECU Configuration Parameter
Values). These are not intended as documentation but
are mere design notes.
Tags:xml.sequenceOffset=-25
category CategoryString 0..1 attr The category is a keyword that specializes the semantics
of the Identifiable. It affects the expected existence of
attributes and the applicability of constraints.
Tags:xml.sequenceOffset=-50
desc MultiLanguageOverview 0..1 aggr This represents a general but brief (one paragraph)
Paragraph description what the object in question is about. It is only
one paragraph! Desc is intended to be collected into
overview tables. This property helps a human reader to
identify the object in question.
More elaborate documentation, (in particular how the
object is built or used) should go to "introduction".
Tags:xml.sequenceOffset=-60
introduction DocumentationBlock 0..1 aggr This represents more information about how the object in
question is built or is used. Therefore it is a
DocumentationBlock.
Tags:xml.sequenceOffset=-30
uuid String 0..1 attr The purpose of this attribute is to provide a globally
unique identifier for an instance of a meta-class. The
values of this attribute should be globally unique strings
prefixed by the type of identifier. For example, to include a
DCE UUID as defined by The Open Group, the UUID
would be preceded by "DCE:". The values of this attribute
5
5
4
Class Identifiable (abstract)
4
may be used to support merging of different AUTOSAR
models. The form of the UUID (Universally Unique
Identifier) is taken from a standard defined by the Open
Group (was Open Software Foundation). This standard is
widely used, including by Microsoft for COM (GUIDs) and
by many companies for DCE, which is based on CORBA.
The method for generating these 128-bit IDs is published
in the standard and the effectiveness and uniqueness of
the IDs is not in practice disputed. If the id namespace is
omitted, DCE is assumed. An example is
"DCE:2fac1234-31f8-11b4-a222-08002b34c003". The
uuid attribute has no semantic meaning for an AUTOSAR
model and there is no requirement for AUTOSAR tools to
manage the timestamp.
Tags:xml.attribute=true
4
Class InternalBehavior (abstract)
exclusiveArea ExclusiveArea * aggr This specifies an ExclusiveArea for this InternalBehavior.
The exclusiveArea is local to the component resp.
module. The aggregation of ExclusiveAreas is subject to
variability. Note: the number of ExclusiveAreas might vary
due to the conditional existence of RunnableEntities or
BswModuleEntities.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=exclusiveArea.shortName, exclusive
Area.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
exclusiveArea ExclusiveAreaNesting * aggr This represents the set of ExclusiveAreaNestingOrder
NestingOrder Order owned by the InternalBehavior.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=exclusiveAreaNestingOrder.shortName,
exclusiveAreaNestingOrder.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
staticMemory VariableDataPrototype * aggr Describes a read and writeable static memory object
representing measurerment variables implemented by
this software component. The term "static" is used in the
meaning of "non-temporary" and does not necessarily
specify a linker encapsulation. This kind of memory is
only supported if supportsMultipleInstantiation is FALSE.
The shortName of the VariableDataPrototype has to be
equal with the ”C’ identifier of the described variable.
The aggregation of staticMemory is subject to variability
with the purpose to support variability in the software
component’s implementations.
Typically different algorithms in the implementation are
requiring different number of memory objects.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=staticMemory.shortName, static
Memory.variationPoint.shortLabel
vh.latestBindingTime=preCompileTime
4
Class <<atpVariation>> J1939Cluster
usesAddress Boolean 0..1 attr Defines whether the nodes attached to this channel use
Arbitration an initial address claim, and whether they react to
contending address claims of other nodes.
True: The initial address claim is sent, and the node
reacts to address claims of other nodes.
False: The node only sends an address claim upon
request, and does not care for contending address claims.
Class J1939DcmIPdu
Package M2::AUTOSARTemplates::SystemTemplate::Fibex::FibexCore::CoreCommunication
Note Represents the IPdus handled by J1939Dcm.
Tags:atp.recommendedPackage=Pdus
Base ARObject, CollectableElement, FibexElement, IPdu, Identifiable, MultilanguageReferrable, Packageable
Element, Pdu, Referrable
Attribute Type Mult. Kind Note
diagnostic PositiveInteger 0..1 attr This attribute is used to identify the actual DMx message,
MessageType e.g 1 means DM01, etc.
Class J1939NmNode
Package M2::AUTOSARTemplates::SystemTemplate::NetworkManagement
Note J1939 specific NM Node attributes.
Base ARObject, Identifiable, MultilanguageReferrable, NmNode, Referrable
Attribute Type Mult. Kind Note
nodeName J1939NodeName 0..1 aggr NodeName configuration
Class ModeDeclaration
Package M2::AUTOSARTemplates::CommonStructure::ModeDeclaration
Note Declaration of one Mode. The name and semantics of a specific mode is not defined in the meta-model.
Base ARObject, AtpClassifier , AtpFeature, AtpStructureElement, Identifiable, MultilanguageReferrable,
Referrable
Attribute Type Mult. Kind Note
value PositiveInteger 0..1 attr The RTE shall take the value of this attribute for
generating the source code representation of this Mode
Declaration.
Table A.25: ModeDeclaration
Class ModeDeclarationGroup
Package M2::AUTOSARTemplates::CommonStructure::ModeDeclaration
Note A collection of Mode Declarations. Also, the initial mode is explicitly identified.
Tags:atp.recommendedPackage=ModeDeclarationGroups
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, AtpClassifier , AtpType, CollectableElement,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
initialMode ModeDeclaration 0..1 ref The initial mode of the ModeDeclarationGroup. This
mode is active before any mode switches occurred.
mode ModeDeclaration * aggr The ModeDeclarations collected in this ModeDeclaration
Declaration Group.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=blueprintDerivationTime
modeManager ModeErrorBehavior 0..1 aggr This represents the ability to define the error behavior
ErrorBehavior expected by the mode manager in case of errors on the
mode user side (e.g. terminated mode user).
modeTransition ModeTransition * aggr This represents the avaliable ModeTransitions of the
ModeDeclarationGroup
modeUserError ModeErrorBehavior 0..1 aggr This represents the definition of the error behavior
Behavior expected by the mode user in case of errors on the mode
manager side (e.g. terminated mode manager).
onTransition PositiveInteger 0..1 attr The value of this attribute shall be taken into account by
Value the RTE generator for programmatically representing a
value used for the transition between two statuses.
Table A.26: ModeDeclarationGroup
Class ModeDeclarationGroupPrototype
Package M2::AUTOSARTemplates::CommonStructure::ModeDeclaration
Note The ModeDeclarationGroupPrototype specifies a set of Modes (ModeDeclarationGroup) which is
provided or required in the given context.
Base ARObject, AtpFeature, AtpPrototype, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
swCalibration SwCalibrationAccess 0..1 attr This allows for specifying whether or not the enclosing
Access Enum ModeDeclarationGroupPrototype can be measured at
run-time.
type ModeDeclarationGroup 0..1 tref The "collection of ModeDeclarations" ( = ModeDeclaration
Group) supported by a component
Stereotypes: isOfType
Class ModeInBswModuleDescriptionInstanceRef
Package M2::AUTOSARTemplates::BswModuleTemplate::BswOverview::InstanceRefs
Note
Base ARObject, AtpInstanceRef
Attribute Type Mult. Kind Note
base BswModuleDescription 0..1 ref Stereotypes: atpDerived
Tags:xml.sequenceOffset=10
5
4
Class ModeInBswModuleDescriptionInstanceRef
contextMode ModeDeclarationGroup 0..1 ref Tags:xml.sequenceOffset=20
Declaration Prototype
Group
targetMode ModeDeclaration 0..1 ref Tags:xml.sequenceOffset=30
Primitive NameToken
Package M2::AUTOSARTemplates::GenericStructure::GeneralTemplateClasses::PrimitiveTypes
Note This is an identifier as used in xml, e.g. xml-names. Basic difference to Identifier is the fact that it can
contain "-".
Tags:
xml.xsd.customType=NMTOKEN-STRING
xml.xsd.type=NMTOKEN
Class NvDataInterface
Package M2::AUTOSARTemplates::SWComponentTemplate::PortInterface
Note A non volatile data interface declares a number of VariableDataPrototypes to be exchanged between non
volatile block components and atomic software components.
Tags:atp.recommendedPackage=PortInterfaces
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, AtpClassifier , AtpType, CollectableElement,
DataInterface, Identifiable, MultilanguageReferrable, PackageableElement, PortInterface, Referrable
Attribute Type Mult. Kind Note
nvData VariableDataPrototype * aggr The VariableDataPrototype of this nv data interface.
Class PPortPrototype
Package M2::AUTOSARTemplates::SWComponentTemplate::Components
Note Component port providing a certain port interface.
Base ARObject, AbstractProvidedPortPrototype, AtpBlueprintable, AtpFeature, AtpPrototype, Identifiable,
MultilanguageReferrable, PortPrototype, Referrable
Attribute Type Mult. Kind Note
provided PortInterface 0..1 tref The interface that this port provides.
Interface
Stereotypes: isOfType
4
Class PortInterface (abstract)
Subclasses ClientServerInterface, DataInterface, ModeSwitchInterface, TriggerInterface
Attribute Type Mult. Kind Note
isService Boolean 0..1 attr This flag is set if the PortInterface is to be used for
communication between an
• ApplicationSwComponentType or
• ServiceProxySwComponentType or
• SensorActuatorSwComponentType or
• ComplexDeviceDriverSwComponentType
• ServiceSwComponentType
• EcuAbstractionSwComponentType
and a ServiceSwComponentType (namely an AUTOSAR
Service) located on the same ECU. Otherwise the flag is
not set.
serviceKind ServiceProviderEnum 0..1 attr This attribute provides further details about the nature of
the applied service.
Class Sdg
Package M2::MSR::AsamHdo::SpecialData
Note Sdg (SpecialDataGroup) is a generic model which can be used to keep arbitrary information which is not
explicitly modeled in the meta-model.
Sdg can have various contents as defined by sdgContentsType. Special Data should only be used
moderately since all elements should be defined in the meta-model.
Thereby SDG should be considered as a temporary solution when no explicit model is available. If an sdg
Caption is available, it is possible to establish a reference to the sdg structure.
Base ARObject
Attribute Type Mult. Kind Note
gid NameToken 1 attr This attributes specifies an identifier. Gid comes from the
SGML/XML-Term "Generic Identifier" which is the
element name in XML. The role of this attribute is the
same as the name of an XML - element.
Tags:xml.attribute=true
sdgCaption SdgCaption 0..1 aggr This aggregation allows to assign the properties of
Identifiable to the sdg. By this, a shortName etc. can be
assigned to the Sdg.
Tags:xml.sequenceOffset=20
sdgContents SdgContents 0..1 aggr This is the content of the Sdg.
Type
Tags:
xml.roleElement=false
xml.roleWrapperElement=false
xml.sequenceOffset=30
xml.typeElement=false
xml.typeWrapperElement=false
Class SenderReceiverInterface
Package M2::AUTOSARTemplates::SWComponentTemplate::PortInterface
Note A sender/receiver interface declares a number of data elements to be sent and received.
Tags:atp.recommendedPackage=PortInterfaces
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, AtpClassifier , AtpType, CollectableElement,
DataInterface, Identifiable, MultilanguageReferrable, PackageableElement, PortInterface, Referrable
Attribute Type Mult. Kind Note
dataElement VariableDataPrototype * aggr The data elements of this SenderReceiverInterface.
invalidation InvalidationPolicy * aggr InvalidationPolicy for a particular dataElement
Policy
metaDataItem MetaDataItemSet * aggr This aggregation defines fixed sets of meta-data items
Set associated with dataElements of the enclosing Sender
ReceiverInterface
Table A.36: SenderReceiverInterface
Class SwBaseType
Package M2::MSR::AsamHdo::BaseTypes
Note This meta-class represents a base type used within ECU software.
Tags:atp.recommendedPackage=BaseTypes
Base ARElement, ARObject, AtpBlueprint, AtpBlueprintable, BaseType, CollectableElement, Identifiable,
MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
– – – – –
Table A.38: SwBaseType
Class SwComponentPrototype
Package M2::AUTOSARTemplates::SWComponentTemplate::Composition
Note Role of a software component within a composition.
Base ARObject, AtpFeature, AtpPrototype, Identifiable, MultilanguageReferrable, Referrable
Attribute Type Mult. Kind Note
type SwComponentType 0..1 tref Type of the instance.
Stereotypes: isOfType
Class System
Package M2::AUTOSARTemplates::SystemTemplate
Note The top level element of the System Description. The System description defines five major elements:
Topology, Software, Communication, Mapping and Mapping Constraints.
The System element directly aggregates the elements describing the Software, Mapping and Mapping
Constraints; it contains a reference to an ASAM FIBEX description specifying Communication and
Topology.
Tags:atp.recommendedPackage=Systems
Base ARElement, ARObject, AtpClassifier , AtpFeature, AtpStructureElement, CollectableElement,
Identifiable, MultilanguageReferrable, PackageableElement, Referrable
Attribute Type Mult. Kind Note
clientId ClientIdDefinitionSet * ref Set of Client Identifiers that are used for inter-ECU
DefinitionSet client-server communication in the System.
containerIPdu ByteOrderEnum 0..1 attr Defines the byteOrder of the header in ContainerIPdus.
HeaderByte
Order
ecuExtract RevisionLabelString 0..1 attr Version number of the Ecu Extract.
Version
fibexElement FibexElement * ref Reference to ASAM FIBEX elements specifying
Communication and Topology.
All Fibex Elements used within a System Description shall
be referenced from the System Element.
atpVariation: In order to describe a product-line, all Fibex
Elements can be optional.
Stereotypes: atpVariation
Tags:vh.latestBindingTime=postBuild
interpolation InterpolationRoutine * ref This reference identifies the InterpolationRoutineMapping
Routine MappingSet Sets that are relevant in the context of the enclosing
MappingSet System.
j1939Shared J1939SharedAddress * aggr Collection of J1939Clusters that share a common
AddressCluster Cluster address space for the routing of messages.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=j1939SharedAddressCluster.shortName,
j1939SharedAddressCluster.variationPoint.shortLabel
vh.latestBindingTime=postBuild
mapping SystemMapping * aggr Aggregation of all mapping aspects (mapping of SW
components to ECUs, mapping of data elements to
signals, and mapping constraints).
In order to support OEM / Tier 1 interaction and shared
development for one common System this aggregation is
atpSplitable and atpVariation. The content of System
Mapping can be provided by several parties using
different names for the SystemMapping.
This element is not required when the System description
is used for a network-only use-case.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=mapping.shortName, mapping.variation
Point.shortLabel
vh.latestBindingTime=postBuild
pncVector PositiveInteger 0..1 attr Length of the partial networking request release
Length information vector (in bytes).
5
4
Class System
pncVectorOffset PositiveInteger 0..1 attr Absolute offset (with respect to the NM-PDU) of the
partial networking request release information vector that
is defined in bytes as an index starting with 0.
rootSoftware RootSwComposition 0..1 aggr Aggregation of the root software composition, containing
Composition Prototype all software components in the System in a hierarchical
structure. This element is not required when the System
description is used for a network-only use-case.
atpVariation: The RootSwCompositionPrototype can vary.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=rootSoftwareComposition.shortName, root
SoftwareComposition.variationPoint.shortLabel
vh.latestBindingTime=systemDesignTime
swCluster CpSoftwareCluster * ref CP Software Clusters of this System
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=swCluster.cpSoftwareCluster, sw
Cluster.variationPoint.shortLabel
atp.Status=draft
vh.latestBindingTime=systemDesignTime
system Chapter * aggr Possibility to provide additional documentation while
Documentation defining the System. The System documentation can be
composed of several chapters.
Stereotypes: atpSplitable; atpVariation
Tags:
atp.Splitkey=systemDocumentation.shortName, system
Documentation.variationPoint.shortLabel
vh.latestBindingTime=systemDesignTime
xml.sequenceOffset=-10
systemVersion RevisionLabelString 1 attr Version number of the System Description.
Class SystemSignal
Package M2::AUTOSARTemplates::SystemTemplate::Fibex::FibexCore::CoreCommunication
Note The system signal represents the communication system’s view of data exchanged between SW
components which reside on different ECUs. The system signals allow to represent this communication
in a flattened structure, with exactly one system signal defined for each data element prototype sent and
received by connected SW component instances.
Tags:atp.recommendedPackage=SystemSignals
Base ARElement, ARObject, CollectableElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Attribute Type Mult. Kind Note
dynamicLength Boolean 1 attr The length of dynamic length signals is variable in
run-time. Only a maximum length of such a signal is
specified in the configuration (attribute length in ISignal
element).
physicalProps SwDataDefProps 0..1 aggr Specification of the physical representation.
Class Unit
Package M2::MSR::AsamHdo::Units
Note This is a physical measurement unit. All units that might be defined should stem from SI units. In order to
convert one unit into another factor and offset are defined.
For the calculation from SI-unit to the defined unit the factor (factorSiToUnit ) and the offset (offsetSiTo
Unit ) are applied as follows:
x [{unit}] := y * [{siUnit}] * factorSiToUnit [[unit]/{siUnit}] + offsetSiToUnit [{unit}]
For the calculation from a unit to SI-unit the reciprocal of the factor (factorSiToUnit ) and the negation of
the offset (offsetSiToUnit ) are applied.
y {siUnit} := (x*{unit} - offsetSiToUnit [{unit}]) / (factorSiToUnit [[unit]/{siUnit}]
Tags:atp.recommendedPackage=Units
Base ARElement, ARObject, CollectableElement, Identifiable, MultilanguageReferrable, Packageable
Element, Referrable
Attribute Type Mult. Kind Note
displayName SingleLanguageUnit 0..1 aggr This specifies how the unit shall be displayed in
Names documents or in user interfaces of tools.The displayName
corresponds to the Unit.Display in an ASAM MCD-2MC
file.
Tags:xml.sequenceOffset=20
factorSiToUnit Float 0..1 attr This is the factor for the conversion from SI Units to units.
The inverse is used for conversion from units to SI Units.
Tags:xml.sequenceOffset=30
offsetSiToUnit Float 0..1 attr This is the offset for the conversion from and to siUnits.
Tags:xml.sequenceOffset=40
physical PhysicalDimension 0..1 ref This association represents the physical dimension to
Dimension which the unit belongs to. Note that only values with units
of the same physical dimensions might be converted.
Tags:xml.sequenceOffset=50
Class VariableDataPrototype
Package M2::AUTOSARTemplates::SWComponentTemplate::Datatype::DataPrototypes
Note A VariableDataPrototype is used to contain values in an ECU application. This means that most likely a
VariableDataPrototype allocates "static" memory on the ECU. In some cases optimization strategies
might lead to a situation where the memory allocation can be avoided.
In particular, the value of a VariableDataPrototype is likely to change as the ECU on which it is used
executes.
Base ARObject, AtpFeature, AtpPrototype, AutosarDataPrototype, DataPrototype, Identifiable, Multilanguage
Referrable, Referrable
Attribute Type Mult. Kind Note
initValue ValueSpecification 0..1 aggr Specifies initial value(s) of the VariableDataPrototype
4
Number Heading
[TPS_DEXT_01014] Possible values of the category attribute for diagnostic services
[TPS_DEXT_01015] Meaning of attributes of DiagnosticIOControl
[TPS_DEXT_01016] The capability returnControlToEcu
[TPS_DEXT_01017] Meaning of DiagnosticIOControl.dataIdentifier
[TPS_DEXT_01018] InputOutput Control does not define any sub-functions
Correspondence of category values to numerical values mentioned in the
[TPS_DEXT_01019]
ISO 14229-1
[TPS_DEXT_01020] Manufacturer-specific values for sub-functions of service EcuReset
[TPS_DEXT_01021] Semantics of DiagnosticEcuReset.customSubFunctionNumber
[TPS_DEXT_01022] ClearDiagnosticInformation does not define any sub-functions
[TPS_DEXT_01023] WriteMemoryByAddress does not define any sub-functions
[TPS_DEXT_01024] ReadMemoryByAddress does not define any sub-functions
[TPS_DEXT_01025] TransferExit does not define any sub-functions
[TPS_DEXT_01026] DataTransfer does not define any sub-functions
[TPS_DEXT_01027] RequestDownload does not define any sub-functions
[TPS_DEXT_01028] RequestUpload does not define any sub-functions
Correspondence of category values to numerical values mentioned in the
[TPS_DEXT_01029]
ISO 14229-1
Manufacturer-specific values for sub-functions of service Communication-
[TPS_DEXT_01030]
Control
[TPS_DEXT_01031] Semantics of DiagnosticComControl.customSubFunctionNumber
Impact of the DiagnosticComControlClass on the state management for
[TPS_DEXT_01032]
CommunicationClusters
[TPS_DEXT_01033] Semantics of triggers in the context of a DiagnosticResponseOnEvent
[TPS_DEXT_01034] Sub-functions of the service ReadDTCInformation
Existence of DiagnosticRoutine.stop and DiagnosticRoutine.re-
[TPS_DEXT_01035]
questResult
[TPS_DEXT_01036] Work-flow within the execution of the diagnostic service SecurityAccess
[TPS_DEXT_01037] Semantics of DiagnosticSecurityAccess.requestSeedId
Motivation for making the reference DiagnosticSecurityAccess.secu-
[TPS_DEXT_01038]
rityLevelatpSplitable
[TPS_DEXT_01039] Identification of the sub-function of DiagnosticSessionControl
[TPS_DEXT_01040] Use case where the DiagnosticExtract refers to software-components
Semantics of attribute DiagnosticServiceDataMapping.diagnostic-
[TPS_DEXT_01041]
DataElement
[TPS_DEXT_01042] Dem uses DiagnosticServiceDataMapping
[TPS_DEXT_01043] Purpose of DiagnosticServiceSwMapping
[TPS_DEXT_01044] BswServiceDependency needs to act as the target of a reference
[TPS_DEXT_01045] Supported diagnostic services
5
4
Number Heading
ECU configuration is not suitable to be exchanged between partners in an ECU
[TPS_DEXT_01046]
development project
Differences in the development processes for diagnostics at automotive OEMs
[TPS_DEXT_01047]
and ECU suppliers
[TPS_DEXT_01048] Actual algorithm for the diagnostic event debouncing
[TPS_DEXT_01049] Consistency of DiagnosticServiceSwMapping with respect to routine IDs
[TPS_DEXT_01050] Consistency of DiagnosticServiceSwMapping with respect to data IDs
[TPS_DEXT_01051] Consistency of DiagnosticServiceSwMapping with respect to data IDs
[TPS_DEXT_01052] Existence of attribute DiagnosticServiceInstance.accessPermission
[TPS_DEXT_01053] Existence of DiagnosticSecurityAccess.securityLevel
[TPS_DEXT_01054] Existence of DiagnosticDataByIdentifier.dataIdentifier
[TPS_DEXT_01055] Standardized values of DiagnosticContributionSet.category
[TPS_DEXT_01056] Applicable values for DiagnosticEcuReset.category
[TPS_DEXT_01057] Allowed values of DiagnosticComControl.category
Standardized values for DiagnosticDynamicallyDefineDataIdenti-
[TPS_DEXT_01058]
fier.category
[TPS_DEXT_01059] Applicable values for DiagnosticPeriodicRate.category
[TPS_DEXT_01060] Applicable values for DiagnosticReadDTCInformation.category
[TPS_DEXT_01061] Supported scenarios for the definition of access permission
Existence of DiagnosticServiceClass.accessPermissionValidity
[TPS_DEXT_01062]
in an incomplete model
Existence of DiagnosticServiceClass.accessPermissionValidity
[TPS_DEXT_01063]
in a complete model
[TPS_DEXT_01064] Textually formulated content attached to DiagnosticTroubleCode
Different approaches to provide semi-formal textual content attached to a Di-
[TPS_DEXT_01065]
agnosticTroubleCode
[TPS_DEXT_01066] Standardized values of DiagnosticTroubleCode.introduction.trace
[TPS_DEXT_01067] Textually formulated content attached to DiagnosticEvent
[TPS_DEXT_01068] Textual description with respect to the DiagnosticEvent
Standardized values of DiagnosticEvent.introduction.structure-
[TPS_DEXT_01069]
dReq
Description of textually semi-formal formulated pre- and post-conditions for the
[TPS_DEXT_01070]
validity of DiagnosticAccessPermission
Standardized values of DiagnosticAccessPermission.introduction.
[TPS_DEXT_01071]
structuredReq
[TPS_DEXT_01072] Purpose of attribute DiagnosticDataIdentifier.representsVin
[TPS_DEXT_01073] Diagnostic properties that are specific to an individual EcuInstance
Difference between the attributes DiagnosticComCon-
[TPS_DEXT_01074]
trol.specificChannel and DiagnosticComControl.subNodeChannel
5
4
Number Heading
standardized values for the attribute DiagnosticControlDTCSetting.
[TPS_DEXT_01075]
category
[TPS_DEXT_01076] Identification of sub-functions of diagnostic service ControlDTCSetting
[TPS_DEXT_01077] Modeling of DiagnosticRoutine
Not possible to use the attribute category for the identification of the sub-
[TPS_DEXT_01078]
function of diagnostic service RoutineControl
[TPS_DEXT_01079] Modeling of the arguments to a DiagnosticRoutine
[TPS_DEXT_01080] Diagnostic Routine needs to be started
[TPS_DEXT_01081] Modeling of DiagnosticSessionControl
[TPS_DEXT_01082] Existence of DiagnosticSessionControl.diagnosticSession
[TPS_DEXT_01083] Semantics of a DiagnosticEvent
[TPS_DEXT_01084] DiagnosticEvent can be connected to one or multiple indicators
[TPS_DEXT_01085] Semantics of DiagnosticConditionGroups
[TPS_DEXT_01086] Reference to DiagnosticOperationCycle
[TPS_DEXT_01087] Semantics of DiagnosticOperationCycle
[TPS_DEXT_01088] Semantics of DiagnosticRoutine.id
[TPS_DEXT_01089] Definition of an identifier of a DiagnosticIOControl
Diagnostic service RequestFileTransfer does not define any sub-
[TPS_DEXT_01090]
functions
ISO 14229-1 reserves values of DiagnosticTroubleCodeGroup.group-
[TPS_DEXT_03000]
Number
[TPS_DEXT_03001] Different types of conditions
[TPS_DEXT_03002] Two kind of mappings
[TPS_DEXT_03003] Semantics of DiagnosticEventToTroubleCodeUdsMapping
[TPS_DEXT_03004] DiagnosticEvent and DiagnosticDebounceAlgorithmProps
[TPS_DEXT_03005] Existence of DiagnosticEventToDebounceAlgorithmMapping
[TPS_DEXT_03006] Values of the individual DiagnosticStorageConditions
[TPS_DEXT_03007] Semantics of DiagnosticEventPortMapping
[TPS_DEXT_03008] Semantics of DiagnosticExtendedDataRecord
[TPS_DEXT_03009] Semantics of DiagnosticFreezeFrame
Combination of DiagnosticConditions to DiagnosticCondition-
[TPS_DEXT_03010]
Groups
[TPS_DEXT_03011] Clearing request for a DiagnosticEvent
[TPS_DEXT_03012] Three kinds of DTCs
[TPS_DEXT_03013] Common properties of a DTC
[TPS_DEXT_03014] Semantics of DiagnosticTroubleCodeGroup
EnableConditions have to be put into a DiagnosticEnableCondition-
[TPS_DEXT_03015]
Group
5
4
Number Heading
StorageConditions have to be put into a DiagnosticStorageCondi-
[TPS_DEXT_03016]
tionGroup
[TPS_DEXT_03017] Semantics of DiagnosticOperationCyclePortMapping
[TPS_DEXT_03018] Semantics of DiagnosticEnableConditionPortMapping
[TPS_DEXT_03019] Semantics of DiagnosticStorageConditionPortMapping
[TPS_DEXT_03020] Semantics of DiagnosticDemProvidedDataMapping
[TPS_DEXT_03021] Aging
[TPS_DEXT_03022] Different kinds of DiagnosticIndicators
Table B.1: Added Specification Items in 4.2.1
4
Number Heading
[constr_1342] Possible values for DiagnosticSecurityAccess.requestSeedId
Simultaneous existence of the attributes DiagnosticServiceDataMapping.
[constr_1343] diagnosticDataElement and DiagnosticDataByIdentifier.dataIdenti-
fier
Condition for the identification of data types of attributes DiagnosticSer-
[constr_1344] viceDataMapping.mappedDataElement and DiagnosticServiceDataMap-
ping.diagnosticDataElement
none
none
none
none
none
4
Number Heading
Comparison of the value of a ModeDeclarationGroupPrototype with a
[TPS_DEXT_01120]
ModeDeclaration
[TPS_DEXT_01121] Semantics of DiagnosticFunctionIdentifier
[TPS_DEXT_01122] Indication whether a EcuInstance supports OBD
[TPS_DEXT_01124] Semantics of meta-class DiagnosticProtocol
Support for diagnostic service RequestCurrentPowertrainDiagnostic-
[TPS_DEXT_01125]
Data
[TPS_DEXT_01126] Support of OBD service RequestPowertrainFreezeFrameData
[TPS_DEXT_01127] Semantics of meta-class DiagnosticRequestEmissionRelatedDTC
[TPS_DEXT_01128] Semantics of meta-class DiagnosticClearResetEmissionRelatedInfo
Support for OBD diagnostic service RequestOnBoardMonitoringTestRe-
[TPS_DEXT_01129]
sults
[TPS_DEXT_01130] Support of OBD diagnostic service RequestControlOfOnBoardDevice
[TPS_DEXT_01131] Support for OBD diagnostic service RequestVehicleInformation
Support for OBD diagnostic service RequestEmissionRelatedDiagnos-
[TPS_DEXT_01132]
ticTroubleCodesPermanentStatus
[TPS_DEXT_01133] Support for WWH-OBD within the diagnostic extract
Definition of a DiagnosticDataElement used in the context of a DID ob-
[TPS_DEXT_01134]
tained by sender-receiver communication
Definition of a DiagnosticDataElement used in the context of a DID ob-
[TPS_DEXT_01135]
tained by client/server communication
Definition of a DiagnosticDataElement used in the context of a diagnostic
[TPS_DEXT_01136]
routine
[TPS_DEXT_01137] Applicability of DiagnosticDataIdentifier.didSize
[TPS_DEXT_01138] Applicability of DiagnosticDataIdentifier.supportInfoByte
[TPS_DEXT_01139] Semantics of the references from DiagnosticAccessPermission
Table B.4: Added Traceabless in 4.3.0
4
Number Heading
none
4
Number Heading
[constr_1590] DiagnosticEvent referenced in the role masterEvent or slaveEvent
4
Number Heading
Applicability of attribute DiagnosticMemoryDestination.dtcStatusAvail-
[constr_1725]
abilityMask
Table B.24: Added Constraints in 19-11
none
4
Number Heading
Standardized values for DiagnosticDemProvidedDataMapping.dat-
[TPS_DEXT_01142]
aProvider
Table B.27: Changed Traceables in R20-11
4
Number Heading
[constr_1781] Existence of attribute DiagnosticTroubleCodeJ1939.spn
[constr_1782] Usage of internal data elements only for extended data records
[constr_1790] Existence of attribute DiagnosticParameter.bitOffset
[constr_1791] Existence of attribute DiagnosticParameter.dataElement
[constr_1792] Existence of DiagnosticDataIdentifier.dataElement
[constr_1793] Existence of attribute DiagnosticAbstractDataIdentifier.id
[constr_1794] Existence of attribute DiagnosticProtocol.priority
[constr_1795] Existence of attribute DiagnosticProtocol.protocolKind
[constr_1796] Existence of attribute DiagnosticServiceTable.serviceInstance
[constr_1797] Existence of attribute DiagnosticServiceTable.protocolKind
[constr_1798] Existence of DiagnosticServiceInstance.serviceClass
[constr_1799] Existence of DiagnosticEnvironmentalCondition.formula
[constr_1800] Existence of DiagnosticEnvConditionFormula.op
[constr_1801] Existence of DiagnosticEnvCompareCondition.compareType
[constr_1802] Existence of DiagnosticEnvDataCondition.compareValue
[constr_1803] Existence of DiagnosticEnvDataCondition.dataElement
[constr_1804] Existence of DiagnosticEnvModeCondition.modeElement
[constr_1805] Existence of DiagnosticEnvSwcModeElement.mode
[constr_1806] Existence of DiagnosticEnvBswModeElement.mode
[constr_1807] Existence of reference DiagnosticDataByIdentifier.dataIdentifier
4
Number Heading
[constr_1823] Existence of attribute DiagnosticTestRoutineIdentifier.id
4
Number Heading
[constr_1856] Existence of attribute DiagnosticJ1939Spn.spn
Existence of the reference DiagnosticEventToTroubleCodeJ1939Mapping.
[constr_1857]
diagnosticEvent
none
C Glossary
Artifact This is a Work Product Definition that provides a description and definition for
tangible work product types. Artifacts may be composed of other artifacts ([23]).
At a high level, an artifact is represented as a single conceptual file.
AUTOSAR Tool This is a software tool which supports one or more tasks defined as
AUTOSAR tasks in the methodology. Depending on the supported tasks, an
AUTOSAR tool can act as an authoring tool, a converter tool, a processor tool or
as a combination of those (see separate definitions).
AUTOSAR Authoring Tool An AUTOSAR Tool used to create and modify AUTOSAR
XML Descriptions. Example: System Description Editor.
AUTOSAR Converter Tool An AUTOSAR Tool used to create AUTOSAR XML files by
converting information from other AUTOSAR XML files. Example: ECU Flattener
AUTOSAR Definition This is the definition of parameters which can have values. One
could say that the parameter values are Instances of the definitions. But in the
meta model hierarchy of AUTOSAR, definitions are also instances of the meta
model and therefore considered as a description. Examples for AUTOSAR def-
initions are: EcucParameterDef, PostBuildVariantCriterion, SwSys-
temconst.
AUTOSAR XML Description In AUTOSAR this means "filled Template". In fact an
AUTOSAR XML description is the XML representation of an AUTOSAR model.
The AUTOSAR XML description can consist of several files. Each individual file
represents an AUTOSAR partial model and shall validate successfully against the
AUTOSAR XML schema.
AUTOSAR Meta-Model This is an UML2.0 model that defines the language for de-
scribing AUTOSAR systems. The AUTOSAR meta-model is an UML represen-
tation of the AUTOSAR templates. UML2.0 class diagrams are used to describe
the attributes and their interrelationships. Stereotypes, UML tags and OCL ex-
pressions (object constraint language) are used for defining specific semantics
and constraints.
AUTOSAR Meta-Model Tool The AUTOSAR Meta-Model Tool is the tool that gener-
ates different views (class tables, list of constraints, diagrams, XML Schema etc.)
on the AUTOSAR meta-model.
AUTOSAR Model This is a representation of an AUTOSAR product. The AUTOSAR
model represents aspects suitable to the intended use according to the
AUTOSAR methodology.
Strictly speaking, this is an instance of the AUTOSAR meta-model. The infor-
mation contained in the AUTOSAR model can be anything that is representable
according to the AUTOSAR meta-model.
AUTOSAR Partial Model In AUTOSAR, the possible partitioning of models is marked
in the meta-model by atpSplitable. One partial model is represented in
an AUTOSAR XML description by one file. The partial model does not need to
fulfill all semantic constraints applicable to an AUTOSAR model.
AUTOSAR Processor Tool An AUTOSAR Tool used to create non-AUTOSAR files by
processing information from AUTOSAR XML files. Example: RTE Generator
AUTOSAR Specification Element An AUTOSAR Specification Element is a named
element that is part of an AUTOSAR specification. Examples: requirement, con-
straint, specification item, class or attribute in the meta model, methodology, de-
liverable, methodology activity, model element, bsw module etc.
AUTOSAR Template The term "Template" is used in AUTOSAR to describe the for-
mat different kinds of descriptions. The term template comes from the idea, that
AUTOSAR defines a kind of form which shall be filled out in order to describe a
model. The filled form is then called the description.
In fact the AUTOSAR templates are now defined as a meta-model.
AUTOSAR Validation Tool A specialized AUTOSAR Tool which is able to check an
AUTOSAR model against the rules defined by a profile.
AUTOSAR XML Schema This is a W3C XML schema that defines the language for
exchanging AUTOSAR models. This Schema is derived from the AUTOSAR
meta-model. The AUTOSAR XML Schema defines the AUTOSAR data exchange
format.
Blueprint This is a model from which other models can be derived by copy and re-
finement. Note that in contrast to meta model resp. types, this process is not an
instantiation.
Instance Generally this is a particular exemplar of a model or of a type.
Life Cycle Life Cycle is the course of development/evolutionary stages of a model
element during its life time.
Meta-Model This defines the building blocks of a model. In that sense, a Meta-Model
represents the language for building models.
Meta-Data This includes pertinent information about data, including information about
the authorship, versioning, access-rights, timestamps etc.
Model A Model is an simplified representation of reality. The model represents the
aspects suitable for an intended purpose.
Partial Model This is a part of a model which is intended to be persisted in one par-
ticular artifact.
Pattern in GST This is an approach to simplify the definition of the meta model by ap-
plying a model transformation. This transformation creates an enhanced model
out of an annotated model.
Profile Authoring Support Data Data that is used for efficient authoring of a profile.
E.g. list of referable constraints, meta-classes, meta-attributes or other reusable
model assets (blueprints)
Profile Authoring Tool A specialized AUTOSAR Tool which focuses on the authoring
of profiles for data exchange points. It e.g. provides support for the creation of
profiles from scratch, modification of existing profiles or composition of existing
profiles.
Profile Compatibility Checker Tool A specialized AUTOSAR Tool which focuses on
checking the compatibility of profiles for data exchange. Note that this compat-
ibility check includes manual compatibility checks by engineers and automated
assistance using more formal algorithms.
D Modeling of InstanceRef
D.1 Introduction
The existence of so-called InstanceRefs is a direct consequence to the usage of the
type-prototype pattern for modeling within AUTOSAR. When referencing a pro-
totype it is also necessary to include a reference to the prototypes typed by their
corresponding types that in turn aggregate further prototypes to set up the context.
In other words, InstanceRefs are representing structured references that, on the
one hand, consist of references to context prototypes (indicated by a subsetting or
redefinition of atpContextElement) and finally a reference to the applicable target
prototype (indicated by a redefinition of atpTarget).
Note that it is not uncommon to have more than a single context in the modeling of
particular InstanceRefs.
For the reader of specifications, the modeling of InstanceRefs manifests as a UML
dependency stereotyped instanceRef drawn from one meta-class to another.
This is a simplified indication that the source of the dependency implements an In-
stanceRef to the meta-class at the target of the dependency. Again, in most cases
this is everything a reader needs to understand in order to figure out the modeling.
The formal modeling of InstanceRefs is done by creating subclasses of the abstract
meta-class AtpInstanceRef.
Wherever a more detailed understanding of the modeling is advised in the context of
the specific chapter of this document, the modeling of a specific subclasses of AtpIn-
stanceRef is explained directly in the context of the corresponding chapter.
In all other cases, a deeper understanding of the modeling of particular subclasses of
AtpInstanceRefs can be obtained from reading this chapter.
Class tables included in this chapter are not fully filled out in the sense that most of the
notes inside the class tables are missing.
The primary purpose of these class tables is to provide information about the in-
tended order in which InstanceRefs are serialized in M1 AUTOSAR models.
In particular, the information about the order in serialized M1 models can be obtained
from the value of the tag xml.sequenceOffset of each attribute of an InstanceRef
meta-class.
For more information about the general concept of modeling AtpInstanceRef (e.g.
the conceptual background of redefining or subsetting an association from a subclass
of AtpInstanceRef to other meta-classes) please refer to [24].
D.2 Modeling
Class DataPrototypeInSystemInstanceRef
Package M2::AUTOSARTemplates::DiagnosticExtract::InstanceRefs
Note
Base ARObject, AtpInstanceRef
Attribute Type Mult. Kind Note
base System 0..1 ref This represents the base of the InstanceRef
Stereotypes: atpDerived
Tags:xml.sequenceOffset=10
context SwComponent * ref Tags:xml.sequenceOffset=30
Component Prototype
contextData ApplicationComposite * ref Tags:xml.sequenceOffset=50
Prototype ElementDataPrototype
(ordered)
contextPort PortPrototype 0..1 ref This represents the PortPrototype that is contained in the
InstanceRef.
Tags:xml.sequenceOffset=40
contextRoot RootSwComposition 0..1 ref Tags:xml.sequenceOffset=20
Composition Prototype
targetData DataPrototype 0..1 ref This represents the target of the InstanceRef
Prototype
Tags:xml.sequenceOffset=60
ARElement
AtpStructureElement
System
+base 0..1
{redefines atpBase}
«atpVariation,atpSplitable»
+rootSoftwareComposition 0..1
AtpPrototype
CompositionSwComponentType
Identifiable +softwareComposition
«isOfType»
«atpDerived» RootSwCompositionPrototype
1
{redefines
+contextRootComposition 0..1 atpType}
{redefines
atpContextElement}
«atpVariation,atpSplitable»
AtpInstanceRef
DataPrototypeInSystemInstanceRef
0..* +component
AtpPrototype
+contextComponent
SwComponentPrototype
0..*
{subsets
atpContextElement}
«isOfType»
0..1
{redefines
+targetDataPrototype atpContextElement} 0..1
{redefines 0..1
AtpPrototype +contextPort atpContextElement} {redefines atpType} +type
DataPrototype ARElement
AtpBlueprintable
AtpPrototype AtpBlueprint
+port AtpBlueprintable
PortPrototype AtpType
0..* 0..*«atpVariation,atpSplitable» SwComponentType
{ordered,
subsets
+contextDataPrototype atpContextElement}
ApplicationCompositeElementDataPrototype
+targetDataPrototype 0..1
{redefines atpContextElement}
+mappedDataElement 0..1
AtpInstanceRef
DataPrototypeInSystemInstanceRef
Class SwcServiceDependencyInSystemInstanceRef
Package M2::AUTOSARTemplates::DiagnosticExtract::InstanceRefs
Note
Base ARObject, AtpInstanceRef
Attribute Type Mult. Kind Note
contextRootSw RootSwComposition 0..1 ref
Composition Prototype
contextSw SwComponent * ref
Component Prototype
Prototype
targetSwc SwcService 0..1 ref
Service Dependency
Dependency
AtpInstanceRef ARElement
SwcServiceDependencyInSystemInstanceRef AtpStructureElement
System
«atpVariation,atpSplitable»
+rootSoftwareComposition 0..1
AtpPrototype
+contextRootSwComposition Identifiable
RootSwCompositionPrototype
0..1
{subsets
atpContextElement}
ARElement
AtpBlueprint
AtpBlueprintable
AtpType
«isOfType» SwComponentType
+type 0..1
1 {redefines atpType}
+softwareComposition {redefines atpType}
CompositionSwComponentType
«isOfType»
«atpVariation,atpSplitable»
+component 0..*
+contextSwComponentPrototype AtpPrototype
AtomicSwComponentType
SwComponentPrototype
0..*
{subsets
atpContextElement}
0..1
«atpVariation,atpSplitable»
{redefines
+targetSwcServiceDependency atpTarget}
+internalBehavior 0..1
AtpStructureElement
InternalBehavior
Identifiable
+serviceDependency SwcInternalBehavior
ServiceDependency
SwcServiceDependency 0..* «atpVariation,atpSplitable» + handleTerminationAndRestart: HandleTerminationAndRestartEnum [0..1]
+ supportsMultipleInstantiation: Boolean [0..1]
Class PModeInSystemInstanceRef
Package M2::AUTOSARTemplates::DiagnosticExtract::InstanceRefs
Note
Base ARObject, AtpInstanceRef
Attribute Type Mult. Kind Note
base System 0..1 ref Stereotypes: atpDerived
Tags:xml.sequenceOffset=10
context SwComponent * ref Tags:xml.sequenceOffset=30
Component Prototype
context RootSwComposition 0..1 ref Tags:xml.sequenceOffset=20
Composition Prototype
contextMode ModeDeclarationGroup 0..1 ref Tags:xml.sequenceOffset=50
Declaration Prototype
Group
contextPPort AbstractProvidedPort 0..1 ref Tags:xml.sequenceOffset=40
Prototype
targetMode ModeDeclaration 0..1 ref Tags:xml.sequenceOffset=60
DiagnosticEnvModeElement
DiagnosticEnvSwcModeElement
«instanceRef»
AtpStructureElement AtpInstanceRef
Identifiable PModeInSystemInstanceRef
ModeDeclaration
0..1+targetMode
+ value: PositiveInteger [0..1] {redefines atpTarget}
AtpPrototype +contextModeDeclarationGroup
ModeDeclarationGroupPrototype
0..1
+ swCalibrationAccess: SwCalibrationAccessEnum [0..1]
{subsets atpContextElement}
PortPrototype
AbstractProvidedPortPrototype +contextPPort
0..1
{subsets atpContextElement}
AtpPrototype
+contextComponent
SwComponentPrototype
0..*
{subsets atpContextElement}
AtpPrototype
Identifiable +contextComposition
RootSwCompositionPrototype
0..1
{subsets atpContextElement}
+rootSoftwareComposition 0..1
«atpVariation,atpSplitable»
ARElement
AtpStructureElement
System
+base «atpDerived»
+ containerIPduHeaderByteOrder: ByteOrderEnum [0..1]
+ ecuExtractVersion: RevisionLabelString [0..1] 0..1
+ pncVectorLength: PositiveInteger [0..1] {redefines atpBase}
+ pncVectorOffset: PositiveInteger [0..1]
+ systemVersion: RevisionLabelString
E Upstream Mapping
E.1 Introduction
This chapter describes the mapping of the ECU Configuration parameters (M1 model)
onto the meta-classes and attributes of the AUTOSAR upstream templates (System
Template, SW Component Template and ECU Resource Template).
The relationships between upstream templates and ECU Configuration are described
in order to answer typical questions like:
• How shall a supplier use the information in a System Description in order to fulfill
the needs defined by the systems engineer?
• How is a tool vendor supposed to generate an ECU Configuration Description out
of ECU Extract of System Description?
Please note that the tables contain the following columns:
bsw module: Name of BSW module
bsw context: Reference to parameter container
bsw type: Type of parameter
bsw param: Name of the BSW parameter
bsw desc: Description from the configuration document
m2 template: System Template, SW Component Template, ECU Resource Template
m2 param: Name of the upstream template parameter
m2 description: Description from the upstream template definition
mapping rule: Textual description on how to transform between M2 and BSW do-
mains
mapping type:
• local: no mapping needed since parameter local to BSW
• partial: some data can be automatically mapped but not all
• full: all data can be automatically mapped
E.2 Dcm
BSW Module BSW Context
Dcm Dcm/DcmConfigSet/DcmDsd
BSW Parameter BSW Type
DcmDsdServiceTable ECUC-PARAM-CONF-CONTAINER-DEF
BSW Description
This container contains the configuration (DSD parameters) for a Service Identifier Table.
Note: It is allowed to add OBD services to a DcmDsdServiceTable related to a UDS Protocol. But it is not allowed to add UDS
services to a DcmDsdServiceTable related to an OBD Protocol.
Template Description
This meta-class represents a model of a diagnostic service table, i.e. the UDS services applicable for a given ECU.
M2 Parameter
DiagnosticExtract::DiagnosticContribution::DiagnosticServiceTable
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00732]
4
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::CommonService::DiagnosticServiceClass
Mapping Rule Mapping Type
Service identifiers of the used DiagnosticServiceClass full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00735]
4
This represents the associated DiagnosticSecurityLevels
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticAccessPermission.securityLevel
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00812]
4
The CommunicationCluster is the main element to describe the topological connection of communicating ECUs.
A cluster describes the ensemble of ECUs, which are linked by a communication medium of arbitrary topology (bus, star, ring,
...). The nodes within the cluster share the same communication protocol, which may be event-triggered, time-triggered or a
combination of both.
A CommunicationCluster aggregates one or more physical channels.
M2 Parameter
SystemTemplate::Fibex::FibexCore::CoreTopology::CommunicationCluster
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00952]
4
Mapping Rule Mapping Type
Reference to IPdu of xxxTpConnection for DiagnosticConnection.response full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00772]
4
Protocol priority used during protocol preemption. A higher priority protocol may preempt a lower priority protocol. Lower
numeric values represent higher protocol priority:
0 - Highest protocol priority
255 - Lowest protocol priority
Template Description
This represents the priority of the diagnostic protocol in comparison to other diagnostic protocols. Lower numeric values
represent higher protocol priority:
• 0 - Highest protocol priority
• 255 - Lowest protocol priority
M2 Parameter
DiagnosticExtract::DiagnosticContribution::DiagnosticProtocol.priority
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00699]
4
valid
Template Description
AbstractCanPhysicalChannel:
Abstract class that is used to collect the common TtCAN and CAN PhysicalChannel attributes.
DiagnosticConnection.periodicResponseUudt:
Reference to UUDT responses.
M2 Parameter
SystemTemplate::Fibex::Fibex4Can::CanTopology::AbstractCanPhysicalChannel, SystemTemplate::Diagnostic
Connection::DiagnosticConnection.periodicResponseUudt
Mapping Rule Mapping Type
If DiagnosticConnection.periodicResponseUudt exists and PhysicalChannel given as AbstractCan full
PhysicalChannel.
Mapping Status ECUC Parameter ID
valid
Template Description
StaticSocketConnection:
Definition of static SocketConnection between the Socket that is defined by the aggregating SocketAddress and the remote
Address.
DiagnosticConnection.periodicResponseUudt:
Reference to UUDT responses.
EthernetPhysicalChannel:
The EthernetPhysicalChannel represents a VLAN or an untagged channel. An untagged channel is modeled as an Ethernet
PhysicalChannel without an aggregated VLAN.
M2 Parameter
SystemTemplate::Fibex::Fibex4Ethernet::ServiceInstances::StaticSocketConnection, SystemTemplate::Diagnostic
Connection::DiagnosticConnection.periodicResponseUudt, SystemTemplate::Fibex::Fibex4Ethernet::EthernetTopology::
EthernetPhysicalChannel
Mapping Rule Mapping Type
If DiagnosticConnection.periodicResponseUudt exists and PhysicalChannel given as Ethernet full
PhysicalChannel.
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticConnection.responseOnEvent:
Reference to a ROE message.
CanTpConnection:
A connection identifies the sender and the receiver of this particular communication. The CanTp module routes a Pdu
through this connection.
atpVariation: Derived, because TpNode can vary.
M2 Parameter
SystemTemplate::DiagnosticConnection::DiagnosticConnection.responseOnEvent, SystemTemplate::TransportProtocols::
CanTpConnection
Mapping Rule Mapping Type
In case DiagnosticConnection.responseOnEvent exists and TpConnectionIdent.ident belongs to a full
CanTpConnection.
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticConnection.responseOnEvent:
Reference to a ROE message.
FlexrayTpConnection:
A connection identifies the sender and the receiver of this particular communication. The FlexRayTp module routes a Pdu
through this connection.
In a System Description the references to the PduPools are mandatory. In an ECU Extract these references can be optional:
On unicast connections these references are always mandatory. On multicast the txPduPool is mandatory on the sender
side. The rxPduPool is mandatory on the receiver side. On Gateway ECUs both references are mandatory.
M2 Parameter
SystemTemplate::DiagnosticConnection::DiagnosticConnection.responseOnEvent, SystemTemplate::TransportProtocols::
FlexrayTpConnection
Mapping Rule Mapping Type
In case DiagnosticConnection.responseOnEvent exists and TpConnectionIdent.ident belongs to full
FlexRayTpConnection
Mapping Status ECUC Parameter ID
valid
4
DCM_ROE_ON_IP ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Template Description
DiagnosticConnection.responseOnEvent:
Reference to a ROE message.
StaticSocketConnection:
Definition of static SocketConnection between the Socket that is defined by the aggregating SocketAddress and the remote
Address.
M2 Parameter
SystemTemplate::DiagnosticConnection::DiagnosticConnection.responseOnEvent, System
Template::Fibex::Fibex4Ethernet::ServiceInstances::StaticSocketConnection
Mapping Rule Mapping Type
In case DiagnosticConnection.responseOnEvent exists and TpConnectionIdent.ident belongs to full
SocketConnection
Mapping Status ECUC Parameter ID
valid
4
DiagnosticConnection.physicalRequest:
Reference to a physical request message.
FlexrayTpConnection:
A connection identifies the sender and the receiver of this particular communication. The FlexRayTp module routes a Pdu
through this connection.
In a System Description the references to the PduPools are mandatory. In an ECU Extract these references can be optional:
On unicast connections these references are always mandatory. On multicast the txPduPool is mandatory on the sender
side. The rxPduPool is mandatory on the receiver side. On Gateway ECUs both references are mandatory.
M2 Parameter
SystemTemplate::DiagnosticConnection::DiagnosticConnection.physicalRequest, SystemTemplate::TransportProtocols::
FlexrayTpConnection
Mapping Rule Mapping Type
In case DiagnosticConnection.physicalRequest exists and TpConnectionIdent.ident belongs to full
FlexRayTpConnection
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticConnection.physicalRequest:
Reference to a physical request message.
StaticSocketConnection:
Definition of static SocketConnection between the Socket that is defined by the aggregating SocketAddress and the remote
Address.
M2 Parameter
SystemTemplate::DiagnosticConnection::DiagnosticConnection.physicalRequest, System
Template::Fibex::Fibex4Ethernet::ServiceInstances::StaticSocketConnection
Mapping Rule Mapping Type
In case DiagnosticConnection.physicalRequest exists and TpConnectionIdent.ident belongs to a full
SocketConnection
Mapping Status ECUC Parameter ID
valid
4
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::CommunicationControl::DiagnosticComControlClass.allChannels
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00902]
4
This attribute represents the ability to add further attributes to the definition of a specific sub-node channel that is subject to
the diagnostic service "communication control".
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::CommunicationControl::DiagnosticComControlClass.subNodeChannel
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01033]
4
DcmDspCommonAuthorization ECUC-PARAM-CONF-CONTAINER-DEF
BSW Description
This container contains the configuration (parameters) for the common Authorization being equal for several services /
sub-services.
Template Description
This represents an instance of the "Routine Control" diagnostic service.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::RoutineControl::DiagnosticRoutineControl
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01025]
4
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::DynamicallyDefineDataIdentifier::DiagnosticDynamicallyDefineDataIdentifier
Class.checkPerSourceId
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00966]
4
DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, AsamHdo::BaseTypes::Base
TypeDirectDefinition.baseTypeSize
Mapping Rule Mapping Type
S/R via array: DcmDspDataByteSize= maxNumberOfElements * (baseTypeSize / 8) C/S of FNC full
callback: DcmDspDataByteSize= maxNumberOfElements Note: 8 is the baseTypeSize of UINT8
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01106]
4
DcmDspDataFreezeCurrentStateFnc ECUC-FUNCTION-NAME-DEF
BSW Description
Function name to request to application to freeze the current state of an IOControl. (FreezeCurrentState-function).
This parameter is related to the interface Xxx_FreezeCurrentState.
Template Description
DiagnosticServiceSwMapping.mappedBswServiceDependency:
This is supposed to represent a reference to a BswServiceDependency. the latter is not derived from Referrable and
therefore this detour needs to be implemented to still let BswServiceDependency become the target of a reference.
DiagnosticIoControlNeeds.freezeCurrentStateSupported:
This attribute determines, if the referenced port supports temporary freezing of I/O value.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceSwMapping.mappedBswServiceDependency, Common
Structure::ServiceNeeds::DiagnosticIoControlNeeds.freezeCurrentStateSupported
Mapping Rule Mapping Type
It could be possible to get the FNC name via BswServiceDependency full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00674]
4
DiagnosticExtract::ServiceMapping::DiagnosticServiceSwMapping.mappedBswServiceDependency
Mapping Rule Mapping Type
It could be possible to get the FNC name via BswServiceDependency full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00669]
4
FLOAT ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Type of the data is float.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, CommonStructure::ServiceNeeds::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, WINDOWS-1252, UTF-8, BCD-P, BCD-UP baseTypeSize = 8 max full
NumberOfElements shall not exist arraySizeSemantics shall not exist Derivation from Diagnostic
ValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
Type of the data is sint16.
Template Description
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeSize, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeEncoding, CommonStructure::ServiceNeeds::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = 2C baseTypeSize = 16 maxNumberOfElements shall not exist arraySize full
Semantics shall not exist Derivation from DiagnosticValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
Mapping Status ECUC Parameter ID
valid
4
baseTypeEncoding = 2C baseTypeSize = 8 maxNumberOfElements exists and value is greater full
than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not exist or exists and is set to
ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001) Derivation from DiagnosticValue
Needs.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, CommonStructure::Service
Needs::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, UTF-16 baseTypeSize = 16 maxNumberOfElements exists and value full
is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not exist or exists and is
set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001) Derivation from Diagnostic
ValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
4
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, CommonStructure::Service
Needs::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, UTF-32 baseTypeSize = 32 maxNumberOfElements exists and value full
is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not exist or exists and is
set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001) Derivation from Diagnostic
ValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, CommonStructure::Service
Needs::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, WINDOWS-1252, UTF-8, BCD-P, BCD-UP baseTypeSize = 8 max full
NumberOfElements exists and value is greater than 0 (cf. TPS_DEXT_01002) arraySizeSemantics
exists and is set to ArraySizeSemanticsEnum.variableSize (cf. TPS_DEXT_01002) Derivation from
DiagnosticValueNeeds.fixedLength=0 possible.
Mapping Status ECUC Parameter ID
valid
4
Mapping Status ECUC Parameter ID
valid
4
The software-component processes the request in background but still the Dcm has to issue the call again to eventually
obtain the result of the request or handle error code.
M2 Parameter
CommonStructure::ServiceNeeds::DiagnosticProcessingStyleEnum.processingStyleAsynchronousWithError
Mapping Rule Mapping Type
DiagnosticServiceSwMapping is having a SwcServiceDependency and ServiceNeeds::Diagnostic full
ProcessingStyleEnum is equal to processingStyleAsynchronousWithError
Mapping Status ECUC Parameter ID
valid
4
Template Description
This meta-class represents the ability to express the relationship between a physical value and the mathematical
representation.
Note that this is still independent of the technical implementation in data types. It only specifies the formula how the internal
value corresponds to its physical pendant.
M2 Parameter
AsamHdo::ComputationMethod::CompuMethod
Mapping Rule Mapping Type
This mapping applies if the CompuMethod.category is set to values TEXTTABLE or SCALE_ full
LINEAR_AND_TEXTTABLE.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00999]
4
valid [ECUC_Dcm_01000]
4
Instance Reference to the primitve sub-element (at any level) of composite data in a port which shall be read. Supported are
VariableDataPrototypes in SenderReceiverInterfaces and NvDataInterfaces and ParameterDataPrototypes in Parameter
Interfaces (read only). This reference is applicable if the AutosarDataPrototype is typed with a ApplicationCompositeData
Type.
Template Description
This represents the dataElement in the application software that is accessed for diagnostic purpose. This role is applicable on
the classic platform.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceDataMapping.mappedDataElement
Mapping Rule Mapping Type
DiagnosticServiceDataMapping maps to a primitive element within a composite data, where the full
AutosarDataPrototype is typed with a ApplicationCompositeDataType.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00990]
4
Mapping Rule Mapping Type
Textual description that characterizes the DID element with respect to the ODX long name can be full
provided by means of the attribute long-Name.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00988]
4
DcmDspDidIdentifier ECUC-INTEGER-PARAM-DEF
BSW Description
2 byte Identifier of the DID
Within each DcmConfigSet all DcmDspDidIdentifier values shall be unique.
Template Description
DiagnosticAbstractDataIdentifier.id:
This is the numerical identifier used to identify the DiagnosticAbstractDataIdentifier in the scope of diagnostic workflow
DiagnosticValueNeeds.didNumber:
This represents a Data identifier for the diagnostic value. This allows to predefine the DID number if the responsible function
developer has received a particular requirement from the OEM or from a standardization body.
M2 Parameter
DiagnosticExtract::CommonDiagnostics::DiagnosticAbstractDataIdentifier.id, CommonStructure::ServiceNeeds::Diagnostic
ValueNeeds.didNumber
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00602]
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01099]
4
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00620]
4
This indicates the presence of "ResetToDefault".
Template Description
DiagnosticIOControl.resetToDefault:
Setting this attribute to true represents the ability of the Dcm to execute a resetToDefault.
DiagnosticIoControlNeeds.resetToDefaultSupported:
This represents a flag for the existence of the ResetToDefault operation in the service interface.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::IOControl::DiagnosticIOControl.resetToDefault, CommonStructure::Service
Needs::DiagnosticIoControlNeeds.resetToDefaultSupported
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00623]
4
M2 Parameter
DiagnosticExtract::CommonDiagnostics::DiagnosticDataIdentifier, DiagnosticExtract::CommonDiagnostics::
DiagnosticDynamicDataIdentifier
Mapping Rule Mapping Type
true: in case the DiagnosticAbstractDataIdentifier for the DID value is aggregated by Diagnostic full
DynamicDataIdentifier false: in case the DiagnosticAbstractDataIdentifier for the DID value is
aggregated by DiagnosticDataIdentifier
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00612]
4
DcmDspDidWriteSecurityLevelRef ECUC-REFERENCE-DEF
BSW Description
Reference to DcmDspSecurityRow Referenced security levels are allowed to wirte this DID.
If there is no reference, no check of security level shall be done.
Template Description
This represents the associated DiagnosticSecurityLevels
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticAccessPermission.securityLevel
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00617]
4
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00913]
4
This represents the associated DiagnosticSecurityLevels
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticAccessPermission.securityLevel
Mapping Rule Mapping Type
DiagnosticMemoryIdentifier referenced in the role memoryRange is referenced by a Diagnostic full
ReadMemoryByAddress The accessPermission holds the security level information.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01071]
4
BSW Parameter BSW Type
DcmDspReadMemoryRangeLow ECUC-INTEGER-PARAM-DEF
BSW Description
Low memory address of a range allowed for reading
Template Description
This represents the lower bound for addresses of the memory segment.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress::DiagnosticMemoryIdentifier.memoryLowAddress
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00786]
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01086]
4
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticAccessPermission.securityLevel
Mapping Rule Mapping Type
DiagnosticMemoryIdentifier referenced in the role memoryRange is referenced by a Diagnostic full
WriteMemoryByAddress The accessPermission holds the security level information.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01076]
4
DcmDspWriteMemoryRangeLow ECUC-INTEGER-PARAM-DEF
BSW Description
Low memory address of a range allowed for writing
Template Description
This represents the lower bound for addresses of the memory segment.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::MemoryByAddress::DiagnosticMemoryIdentifier.memoryLowAddress
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00790]
4
valid [ECUC_Dcm_01087]
4
Template Description
DiagnosticPeriodicRate.period:
This represents the period of the DiagnosticPeriodicRate in seconds.
DiagnosticPeriodicRate.periodicRateCategory:
This attribute represents the category of the periodic rate.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ReadDataByPeriodicID::DiagnosticPeriodicRate.period, Diagnostic
Extract::Dcm::DiagnosticService::ReadDataByPeriodicID::DiagnosticPeriodicRate.periodicRateCategory
Mapping Rule Mapping Type
The parameter shall exist if DiagnosticPeriodicRate.periodicRateCategory is set to Diagnostic full
PeriodicRateCategoryEnum.periodicRateFast.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00960]
4
DiagnosticPeriodicRate.period:
This represents the period of the DiagnosticPeriodicRate in seconds.
DiagnosticPeriodicRate.periodicRateCategory:
This attribute represents the category of the periodic rate.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ReadDataByPeriodicID::DiagnosticPeriodicRate.period, Diagnostic
Extract::Dcm::DiagnosticService::ReadDataByPeriodicID::DiagnosticPeriodicRate.periodicRateCategory
Mapping Rule Mapping Type
The parameter shall exist if DiagnosticPeriodicRate.periodicRateCategory is set to Diagnostic full
PeriodicRateCategoryEnum.periodicRateSlow.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00958]
4
DiagnosticExtract::CommonDiagnostics::DiagnosticParameter.supportInfo
Mapping Rule Mapping Type
Applicable if the DiagnosticParameter is owned by a DiagnosticParameterIdentifier full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00874]
4
The purpose of the DcmDspTextTableMapping is to associate a texttable value defined in the context of the Dcm to a texttable
value defined in the context of a CompuMethod referenced by a DataType that shall be taken to create a dataElement in a
SenderReceiverInterface. By this means it is possible to create a primitive version of a TexttableMapping (which can only be
applied if a dataElement already exists).
In other words, the DcmDspTextTableMapping provides a similar mechanism to the TexttableMapping in a situation where the
TexttableMapping cannot be applied since the SenderReceiverInterface for the PortPrototype on the Dcm ServiceComponent
does not yet exist.
Template Description
This meta-class represents the ability to express the relationship between a physical value and the mathematical
representation.
Note that this is still independent of the technical implementation in data types. It only specifies the formula how the internal
value corresponds to its physical pendant.
M2 Parameter
AsamHdo::ComputationMethod::CompuMethod
Mapping Rule Mapping Type
This mapping applies if the CompuMethod.category is set to values TEXTTABLE or SCALE_ full
LINEAR_AND_TEXTTABLE.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00999]
4
M2 Parameter
AsamHdo::ComputationMethod::CompuScale.lowerLimit, AsamHdo::ComputationMethod::CompuScale.upperLimit
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01000]
4
Template Description
This attribute specifies the byte order of the base type.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.byteOrder
Mapping Rule Mapping Type
BaseTypeDirectDefinition.byteOrder == ByteOrderEnum.opaque full
Mapping Status ECUC Parameter ID
valid
4
valid
4
valid
4
valid
4
valid
4
valid
4
valid
4
Mapping Status ECUC Parameter ID
valid
Template Description
This represents the ability to define a mapping of a diagnostic service to a software-component.
This kind of service mapping is applicable for the usage of SenderReceiverInterfaces or event/notifier semantics in Service
Interfaces on the adaptive platform.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceDataMapping
Mapping Rule Mapping Type
DiagnosticServiceDataMapping.diagnosticDataElement refers to a DiagnosticDataElement that in full
turn is aggregated in the PID definition where the PortPrototype referenced in the role mapped
DataElement.contextPort refers to a DataInterface where attribute isService is set to false.
Mapping Status ECUC Parameter ID
valid
Template Description
This represents the ability to define a mapping of a diagnostic service to a software-component.
This kind of service mapping is applicable for the usage of SenderReceiverInterfaces or event/notifier semantics in Service
Interfaces on the adaptive platform.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceDataMapping
Mapping Rule Mapping Type
DiagnosticServiceDataMapping.diagnosticDataElement refers to a DiagnosticDataElement that in full
turn is aggregated in the PID definition where the PortPrototype referenced in the role mapped
DataElement.contextPort refers to a DataInterface where attribute isService is set to true.
Mapping Status ECUC Parameter ID
valid
4
Template Description
This represents the ability to define a mapping of a diagnostic service to a software-component or a basic-software module. If
the former is used then this kind of service mapping is applicable for the usage of ClientServerInterfaces.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceSwMapping
Mapping Rule Mapping Type
DiagnosticServiceSwMapping.diagnosticDataElement refers to a DiagnosticDataElement that in full
turn is aggregated in the PID definition. DiagnosticServiceSwMapping.mappedSwcService
Dependency shall exist.
Mapping Status ECUC Parameter ID
valid
Template Description
This represents the ability to define a mapping of a diagnostic service to a software-component or a basic-software module. If
the former is used then this kind of service mapping is applicable for the usage of ClientServerInterfaces.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceSwMapping
Mapping Rule Mapping Type
DiagnosticServiceSwMapping.diagnosticDataElement refers to a DiagnosticDataElement that in full
turn is aggregated in the PID definition and that also defines the role mappedBswService
Dependency.
Mapping Status ECUC Parameter ID
valid
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00991]
4
M2 Parameter
DiagnosticExtract::Dcm::ObdService::Mode_0x01_RequestCurrentPowertrainDiagnosticData::DiagnosticRequestCurrent
PowertrainData.pid
Mapping Rule Mapping Type
Applicable if the DiagnosticParameterIdentifier is only referenced by a DiagnosticRequestCurrent full
PowertrainData
Mapping Status ECUC Parameter ID
valid
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00722]
4
This diagnostic service instance implements the UDS service 0x38.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::RequestFileTransfer::DiagnosticRequestFileTransfer
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01034]
4
Initial Roe status of this RoeEvent
Template Description
This represents the initial status of the enclosing DiagnosticResponseOnEventTrigger.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent::DiagnosticResponseOnEventTrigger.
initialEventStatus
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00980]
Template Description
This means that the ResponseOnEvent is initially cleared.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent::DiagnosticInitialEventStatusEnum.
returnOnEventCleared
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
This means that the ResponseOnEvent is initially stopped.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent::DiagnosticInitialEventStatusEnum.
returnOnEventStopped
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
BSW Description
This container configures the available EventWindowTime in this Ecu.
This container contains a sub-set of EventWindowTimes supported by the Dcm, to limit the Ecu resources.
Template Description
This attribute clarifies the validity of the eventWindow
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent::DiagnosticEventWindow.eventWindowTime
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00981]
Template Description
This means that the window extends to this and the following cycle.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent::DiagnosticEventWindowTimeEnum.
eventWindowCurrentAndFollowingCycle
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
This means that the window is limited to the current cycle.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent::DiagnosticEventWindowTimeEnum.
eventWindowCurrentCycle
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
This means that the window extents without a border.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::ResponseOnEvent::DiagnosticEventWindowTimeEnum.
eventWindowInfinite
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
M2 Parameter
DiagnosticExtract::CommonDiagnostics::DiagnosticRequestRoutineResults.request
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01116]
4
This mapping applies if the CompuMethod.category is set to values TEXTTABLE or SCALE_ full
LINEAR_AND_TEXTTABLE.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00999]
4
BSW Description
Provide the size of a RoutineControl parameter in bytes
Template Description
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
M2 Parameter
DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements
Mapping Rule Mapping Type
Only in case of variable length required (according to constr_6008). Calculation: DcmDspRoutine full
SignalLength = maxNumberOfElements * 8
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01119]
4
FLOAT_N ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Type of the data is float array.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, CommonStructure::ServiceNeeds::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, WINDOWS-1252, UTF-8, BCD-P, BCD-UP baseTypeSize = 8 max full
NumberOfElements shall not exist arraySizeSemantics shall not exist Derivation from Diagnostic
ValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = 2C baseTypeSize = 16 maxNumberOfElements
exists and value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not
exist or exists and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
Type of the signal is sint32 array.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = 2C baseTypeSize = 32 maxNumberOfElements
exists and value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not
exist or exists and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
BSW Description
Type of the signal is sint8 array.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = 2C baseTypeSize = 8 maxNumberOfElements
exists and value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not
exist or exists and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
UINT16_N ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Type of the signal is uint16 array.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = NONE, UTF-16 baseTypeSize = 16 maxNumberOf
Elements exists and value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either
does not exist or exists and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
valid
4
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = NONE baseTypeSize = 8 arraySizeSemantics =
variableSize maxNumberOfElements exists and value is greater than 0 (cf. TPS_DEXT_01002)
arraySizeSemantics exists and is set to ArraySizeSemanticsEnum.variableSize (cf. TPS_
DEXT_01002)
Mapping Status ECUC Parameter ID
valid
4
DcmDspInternalDataValue ECUC-INTEGER-PARAM-DEF
BSW Description
The ECU internal data value.
Template Description
CompuScale.lowerLimit:
This specifies the lower limit of the scale.
CompuScale.upperLimit:
This specifies the upper limit of a of the scale.
M2 Parameter
AsamHdo::ComputationMethod::CompuScale.lowerLimit, AsamHdo::ComputationMethod::CompuScale.upperLimit
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01000]
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01013]
4
Type of the data is float.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, CommonStructure::ServiceNeeds::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, WINDOWS-1252, UTF-8, BCD-P, BCD-UP baseTypeSize = 8 max full
NumberOfElements shall not exist arraySizeSemantics shall not exist Derivation from Diagnostic
ValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
Type of the signal is sint16.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = 2C baseTypeSize = 16
Mapping Status ECUC Parameter ID
valid
4
BSW Description
Type of the signal is sint32.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = 2C baseTypeSize = 32
Mapping Status ECUC Parameter ID
valid
4
SINT8 ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Type of the signal is sint8.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticRequest full
RoutineResults.response baseTypeEncoding = 2C baseTypeSize = 8
Mapping Status ECUC Parameter ID
valid
4
valid
4
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00641]
4
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00845]
4
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.byteOrder
Mapping Rule Mapping Type
baseType.baseTypeDefinition.byteOrder referenced by swDataDefProps of the Diagnostic full
Parameter with the role DiagnosticStartRoutine.request.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01016]
4
valid
4
DcmDspDiagnosisRepresentationDataValue ECUC-INTEGER-PARAM-DEF
BSW Description
The data value in the diagnosis representation.
Template Description
This represents a textual constant in the computation method.
M2 Parameter
AsamHdo::ComputationMethod::CompuConstTextContent.vt
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01001]
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00850]
4
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStart full
Routine.response baseTypeEncoding = BOOLEAN baseTypeSize = 1
Mapping Status ECUC Parameter ID
valid
4
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, CommonStructure::ServiceNeeds::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, WINDOWS-1252, UTF-8, BCD-P, BCD-UP baseTypeSize = 8 max full
NumberOfElements shall not exist arraySizeSemantics shall not exist Derivation from Diagnostic
ValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStart full
Routine.response baseTypeEncoding = 2C baseTypeSize = 16 maxNumberOfElements exists and
value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not exist or exists
and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStart full
Routine.response baseTypeEncoding = 2C baseTypeSize = 32 maxNumberOfElements exists and
value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not exist or exists
and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
Type of the signal is sint8 array.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStart full
Routine.response baseTypeEncoding = 2C baseTypeSize = 8 maxNumberOfElements exists and
value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemantics either does not exist or exists
and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
BSW Description
Type of the signal is uint16 array.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStart full
Routine.response baseTypeEncoding = NONE, UTF-16 baseTypeSize = 16 maxNumberOf
Elements exists and value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemanticseither
does not exist or exists and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
UINT32_N ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Type of the signal is uint32 array.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticDataElement.arraySizeSemantics:
This attribute controls the meaning of the value of the array size.
DiagnosticDataElement.maxNumberOfElements:
The existence of this attribute turns the data instance into an array of data. The attribute determines the size of the array in
terms of how many elements the array can take.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStart full
Routine.response baseTypeEncoding = NONE, UTF-32 baseTypeSize = 32 maxNumberOf
Elements exists and value is greater than 0 (cf. TPS_DEXT_01001) arraySizeSemanticseither
does not exist or exists and is set to ArraySizeSemanticsEnum.fixedSize (cf. TPS_DEXT_01001)
Mapping Status ECUC Parameter ID
valid
4
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, DiagnosticExtract::CommonDiagnostics::DiagnosticDataElement.arraySizeSemantics, Diagnostic
Extract::CommonDiagnostics::DiagnosticDataElement.maxNumberOfElements
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStart full
Routine.response baseTypeEncoding = NONE baseTypeSize = 8 arraySizeSemantics = variable
Size maxNumberOfElements exists and value is greater than 0 (cf. TPS_DEXT_01002) arraySize
Semantics exists and is set to ArraySizeSemanticsEnum.variableSize (cf. TPS_DEXT_01002)
Mapping Status ECUC Parameter ID
valid
4
This meta-class represents the ability to express the relationship between a physical value and the mathematical
representation.
Note that this is still independent of the technical implementation in data types. It only specifies the formula how the internal
value corresponds to its physical pendant.
M2 Parameter
AsamHdo::ComputationMethod::CompuMethod
Mapping Rule Mapping Type
This mapping applies if the CompuMethod.category is set to values TEXTTABLE or SCALE_ full
LINEAR_AND_TEXTTABLE.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00999]
4
valid [ECUC_Dcm_01000]
4
M2 Parameter
DiagnosticExtract::CommonDiagnostics::DiagnosticParameter.bitOffset
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00840]
4
Mapping Status ECUC Parameter ID
valid
4
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStop full
Routine.request baseTypeEncoding = NONE baseTypeSize = 8 arraySizeSemantics = variableSize
maxNumberOfElements exists and value is greater than 0 (cf. TPS_DEXT_01002) arraySize
Semantics exists and is set to ArraySizeSemanticsEnum.variableSize (cf. TPS_DEXT_01002)
Mapping Status ECUC Parameter ID
valid
4
The purpose of the DcmDspTextTableMapping is to associate a texttable value defined in the context of the Dcm to a texttable
value defined in the context of a CompuMethod referenced by a DataType that shall be taken to create a dataElement in a
SenderReceiverInterface. By this means it is possible to create a primitive version of a TexttableMapping (which can only be
applied if a dataElement already exists).
In other words, the DcmDspTextTableMapping provides a similar mechanism to the TexttableMapping in a situation where the
TexttableMapping cannot be applied since the SenderReceiverInterface for the PortPrototype on the Dcm ServiceComponent
does not yet exist.
Template Description
This meta-class represents the ability to express the relationship between a physical value and the mathematical
representation.
Note that this is still independent of the technical implementation in data types. It only specifies the formula how the internal
value corresponds to its physical pendant.
M2 Parameter
AsamHdo::ComputationMethod::CompuMethod
Mapping Rule Mapping Type
This mapping applies if the CompuMethod.category is set to values TEXTTABLE or SCALE_ full
LINEAR_AND_TEXTTABLE.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00999]
4
CompuScale.lowerLimit:
This specifies the lower limit of the scale.
CompuScale.upperLimit:
This specifies the upper limit of a of the scale.
M2 Parameter
AsamHdo::ComputationMethod::CompuScale.lowerLimit, AsamHdo::ComputationMethod::CompuScale.upperLimit
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01000]
4
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
DiagnosticValueNeeds.fixedLength:
This attribute controls whether the data length of the data is fixed.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize, CommonStructure::ServiceNeeds::DiagnosticValueNeeds.fixedLength
Mapping Rule Mapping Type
baseTypeEncoding = NONE, WINDOWS-1252, UTF-8, BCD-P, BCD-UP baseTypeSize = 8 max full
NumberOfElements shall not exist arraySizeSemantics shall not exist Derivation from Diagnostic
ValueNeeds.fixedLength=1 possible.
Mapping Status ECUC Parameter ID
valid
4
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStop full
Routine.response baseTypeEncoding = 2C baseTypeSize = 16
Mapping Status ECUC Parameter ID
valid
4
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStop full
Routine.response baseTypeEncoding = 2C baseTypeSize = 32
Mapping Status ECUC Parameter ID
valid
4
Type of the signal is sint8.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStop full
Routine.response baseTypeEncoding = 2C baseTypeSize = 8
Mapping Status ECUC Parameter ID
valid
4
BSW Description
Type of the signal is uint16.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStop full
Routine.response baseTypeEncoding = NONE, UTF-16 baseTypeSize = 16
Mapping Status ECUC Parameter ID
valid
4
UINT32 ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Type of the signal is uint32.
Template Description
BaseTypeDirectDefinition.baseTypeEncoding:
This specifies, how an object of the current BaseType is encoded, e.g. in an ECU within a message sequence.
BaseTypeDirectDefinition.baseTypeSize:
Describes the length of the data type specified in the container in bits.
M2 Parameter
AsamHdo::BaseTypes::BaseTypeDirectDefinition.baseTypeEncoding, AsamHdo::BaseTypes::BaseTypeDirectDefinition.
baseTypeSize
Mapping Rule Mapping Type
referenced by swDataDefProps of the DiagnosticParameter with the role DiagnosticStop full
Routine.response baseTypeEncoding = NONE, UTF-32 baseTypeSize = 32
Mapping Status ECUC Parameter ID
valid
4
valid
4
This represents the delay time after a failed security access. Unit: second.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticSecurityLevel.securityDelayTime
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00757]
4
Mapping Rule Mapping Type
DcmDspSecurityLevel=(requestSeedId+1)/2 full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00754]
4
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceSwMapping.mappedBswServiceDependency
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_01049]
4
M2 Parameter
DiagnosticExtract::Dcm::ObdService::Mode_0x09_RequestVehicleInformation::DiagnosticRequestVehicleInfo
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00630]
4
Template Description
This is supposed to represent a reference to a BswServiceDependency. the latter is not derived from Referrable and
therefore this detour needs to be implemented to still let BswServiceDependency become the target of a reference.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceSwMapping.mappedBswServiceDependency
Mapping Rule Mapping Type
The BswServiceDependency should have aRoleBasedBswModuleEntryAssignment that in turn full
has attribute role set to Xxx_GetInfotypeValueData and points to a BswModuleEntry.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00889]
4
Shall be set to TRUE if the reference DiagnosticServiceSwMapping.mappedSwcService full
Dependency exists. Shall be set to FALSE if the reference DiagnosticServiceSwMapping.mapped
BswServiceDependency exists.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00727]
4
Depending on the reference a DcmModeCondition is mapped to a DiagnosticEnvModeCondition if full
only one reference is present and reference is a DcmSwcModeRef or a DcmBswModeRef. If two
references are present, a DcmSwcSRDataElementRef and a DcmSwcSRDataElementValueRef,
then DcmModeCondition is mapped to a DiagnosticEnvDataCondition.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00928]
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isEqual:
equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isEqual
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isNotEqual:
not equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isNotEqual
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isGreaterOrEqual:
greater than or equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isGreaterOrEqual
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isGreaterThan:
greater than
5
4
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isGreaterThan
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isLessOrEqual:
less than or equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isLessOrEqual
Mapping Rule Mapping Type
full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isLessThan:
less than
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isLessThan
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
valid [ECUC_Dcm_01126]
4
Template Description
A DiagnosticEnvConditionFormula embodies the computation instruction that is to be evaluated at runtime to determine if the
DiagnosticEnvironmentalCondition is currently present (i.e. the formula is evaluated to true) or not (otherwise). The formula
itself consists of parts which are combined by the logical operations specified by DiagnosticEnvConditionFormula.op.
If a diagnostic functionality cannot be executed because an environmental condition fails then the diagnostic stack shall send
a negative response code (NRC) back to the client. The value of the NRC is directly related to the specific formula and is
therefore formalized in the attribute DiagnosticEnvConditionFormula.nrcValue.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula
Mapping Rule Mapping Type
A DcmModeRule is mapped to a DiagnosticEnvConditionFormula, if this DcmModeRule is a full
subrule, i.e. it is referenced by a DcmArgumentRef. In addition, a new DiagnosticEnvironmental
Condition shall be created with DiagnosticEnvironmentalCondition.formula containing a Diagnostic
EnvConditionFormula. In both cases, if no DcmLogicalOperator is present in this DcmModeRule,
then DiagnosticEnvConditionFormula shall be set to DiagnosticLogicalOperatorEnum.logicalAnd.
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00925]
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticLogicalOperatorEnum.logicalAnd:
Logical AND
M2 Parameter
5
4
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticLogicalOperatorEnum.logicalAnd
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticLogicalOperatorEnum.logicalOr:
Logical OR
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticLogicalOperatorEnum.logicalOr
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
This configuration switch defines, whether DDDID definition is stored non-volatile or not.
true: DDDID are stored non-volatile false: DDDID are only maintained volatile
Template Description
This configuration switch defines whether DDDID definition is handled as non-volatile information or not.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::DynamicallyDefineDataIdentifier::DiagnosticDynamicallyDefineDataIdentifier
Class.configurationHandling
Mapping Rule Mapping Type
volatile -> false, nonVolatile -> true full
Mapping Status ECUC Parameter ID
valid [ECUC_Dcm_00971]
E.3 Dem
BSW Module BSW Context
Dem Dem/DemConfigSet/DemDTC
BSW Parameter BSW Type
DemDTCFunctionalUnit ECUC-INTEGER-PARAM-DEF
BSW Description
DTCFuncitonalUnit is a 1-byte value which identifies the corresponding basic vehicle / system function which reports the
DTC. This parameter is necessary for the report of severity information.
If this parameter is configured for no DTC, the Dem provides no DTC functional unit information.
Template Description
This attribute specifies a 1-byte value which identifies the corresponding basic vehicle / system function which reports the
DTC. This parameter is necessary for the report of severity information.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticTroubleCode::DiagnosticTroubleCodeUds.functionalUnit
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00643]
4
M2 Parameter
DiagnosticExtract::Dem::DiagnosticTroubleCode::DiagnosticTroubleCodeUds.wwhObdDtcClass
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00912]
4
Reference to the cycle which is triggering the aging of the event.
Template Description
This represents the applicable aging cycle.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticAging::DiagnosticAging.agingCycle
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00624]
4
DEM_EVENT_SIGNIFICANCE_OCCURRENCE ECUC-ENUMERATION-LITERAL-DEF
BSW Description
issue, which indicates additional information concerning insufficient system behavior
Template Description
Issue, which indicates additional information concerning insufficient system behavior.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticTroubleCode::DiagnosticSignificanceEnum.occurence
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
DiagnosticExtract::Dem::DiagnosticDebouncingAlgorithm::DiagnosticDebounceBehaviorEnum.freeze
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
Defines the value of the internal debounce counter, which indicates the failed status.
Template Description
This value defines the event-specific limit that indicates the "failed" counter status.
M2 Parameter
CommonStructure::ServiceNeeds::DiagEventDebounceCounterBased.counterFailedThreshold
Mapping Rule Mapping Type
Shall be taken from DiagnosticExtract::DiagnosticCommonProps.debounceAlgorithm full
Props.debounceAlgorithm.counterFailedThreshold. Applicable if DiagnosticExtract::Diagnostic
CommonProps.debounceAlgorithmProps.debounceAlgorithm is modeled by means of a DiagEvent
DebounceCounterBased.
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00618]
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00685]
4
Jump-Up value of the internal debounce counter which is taken as initialization value for the counter when the respective
step-up occurs.
Template Description
This value represents the initial value of the internal debounce counter if the counting direction changes from decrementing to
incrementing.
M2 Parameter
CommonStructure::ServiceNeeds::DiagEventDebounceCounterBased.counterJumpUpValue
Mapping Rule Mapping Type
Shall be taken from DiagnosticExtract::DiagnosticCommonProps.debounceAlgorithm full
Props.debounceAlgorithm.counterJumpValue. Applicable if DiagnosticExtract::DiagnosticCommon
Props.debounceAlgorithmProps.debounceAlgorithm is modeled by means of a DiagEvent
DebounceCounterBased.
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00639]
4
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00791]
4
BSW Description
The event debounce timer will be reset to initial value if a related enable condition is not fulfilled or ControlDTCSetting of the
related event is disabled. The qualification of the event will be restarted with the next valid event report.
Template Description
The event debounce counter will be reset to initial value if a related enable condition is not fulfilled or ControlDTCSetting of
the related event is disabled. The qualification of the event will be restarted with the next valid event report.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticDebouncingAlgorithm::DiagnosticDebounceBehaviorEnum.reset
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00717]
4
M2 Parameter
4
This represents the unit and scaling Id of the diagnostic test result.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticTestResult::DiagnosticTestIdentifier.uasId
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00811]
4
Template Description
The Dem accepts reported DTRs only when the configured debouncing mechanism is stable at the FAIL or PASS limit.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticTestResult::DiagnosticTestResultUpdateEnum.steady
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
valid
4
This container contains the configuration (parameters) for monitor internal debouncing.
Template Description
"This meta-class represents the ability to indicate that no Dem pre-debounce algorithm shall be used for this diagnostic
monitor. The SWC might implement an internal debouncing algorithm and report qualified (debounced) results to the Dem/
DM.
M2 Parameter
CommonStructure::ServiceNeeds::DiagEventDebounceMonitorInternal
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00712]
4
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00660]
4
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticEvent.recoverableInSameOperationCycle
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00916]
4
The indicator blinks when the event has status FAILED Not relevant with J1939.
Template Description
The indicator blinks when the event has status FAILED.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticConnectedIndicatorBehaviorEnum.blinkMode
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
Flash Indicator Lamp should be set to ’Fast Flash’
Template Description
Flash Indicator Lamp should be set to "Fast Flash".
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticConnectedIndicatorBehaviorEnum.fastFlashingMode
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
BSW Description
References a storage condition group.
Template Description
Defines which StorageConditionGroup is applicable for a DiagnosticEvent.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticMapping::DiagnosticEventToStorageConditionGroupMapping
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00769]
4
valid [ECUC_Dem_00885]
4
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
This attribute represents the identification number that is associated with the enclosing DiagnosticEvent and allows to identify
it when placed into a snapshot record or extended data record storage.
This value can be reported as internal data element in snapshot records or extended data records.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticEvent.associatedEventIdentification
Mapping Rule Mapping Type
If attribute DiagnosticEvent.associatedEventIdentification exists then the corresponding Dem full
InternalDataElement shall be set to DEM_EVENT_ASSOCIATED_IDENTIFICATION.
Mapping Status ECUC Parameter ID
valid
4
DemEnableCondition ECUC-PARAM-CONF-CONTAINER-DEF
BSW Description
This container contains the configuration (parameters) for enable conditions.
Template Description
Specification of an enable condition.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticCondition::DiagnosticEnableCondition
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00653]
M2 Parameter
4
valid [ECUC_Dem_00656]
4
valid [ECUC_Dem_00680]
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.maxNumberOfEventEntries
Mapping Rule Mapping Type
1:1 mapping full
5
4
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00688]
4
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00895]
4
Template Description
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.eventDisplacementStrategy
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00742]
4
Template Description
Event memory entry displacement is enabled, by consideration of priority and occurrence (but without active/passive status).
M2 Parameter
DiagnosticExtract::Dem::DiagnosticTroubleCode::DiagnosticEventDisplacementStrategyEnum.prioOcc
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.memoryEntryStorageTrigger
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00797]
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.maxNumberOfEventEntries
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00690]
4
This configuration switch defines the consideration of the fault confirmation process for the occurrence counter. For OBD and
mixed systems (OBD/non OBD, refer to DemOBDSupport) configuration switch shall always set to DEM_PROCESS_
OCCCTR_TF.
Template Description
This attribute defines the consideration of the fault confirmation process for the occurrence counter.
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.occurrenceCounterProcessing
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00767]
4
Mapping Status ECUC Parameter ID
valid
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.typeOfDtcSupported
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00720]
4
Mapping Status ECUC Parameter ID
valid
4
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00910]
4
DiagnosticExtract::Dem::DiagnosticTroubleCode::EnvironmentCaptureToReportingEnum.
captureAsynchronousToReporting
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.eventDisplacementStrategy
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00742]
4
Template Description
Event memory entry displacement is enabled, by consideration of priority active/passive status, and occurrence.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticTroubleCode::DiagnosticEventDisplacementStrategyEnum.full
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
BSW Description
Configures the primary trigger to allocate an event memory entry.
Template Description
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.memoryEntryStorageTrigger
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00797]
M2 Parameter
DiagnosticExtract::DiagnosticCommonProps::DiagnosticCommonProps.maxNumberOfEventEntries
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00691]
4
valid [ECUC_Dem_00778]
4
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00903]
4
Template Description
capture on "Confirmed"
M2 Parameter
DiagnosticExtract::Dem::DiagnosticFreezeFrame::DiagnosticRecordTriggerEnum.confirmed
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
Template Description
capture on "Test Failed"
M2 Parameter
DiagnosticExtract::Dem::DiagnosticFreezeFrame::DiagnosticRecordTriggerEnum.testFailed
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
DemFreezeFrameRecordTrigger ECUC-ENUMERATION-PARAM-DEF
BSW Description
Defines the trigger to store the FreezeFrameRecord.
Template Description
This attribute defines the primary trigger to allocate an event memory entry.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticFreezeFrame::DiagnosticFreezeFrame.trigger
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00803]
4
This parameter specifies the assigned denominator type which is applied in addition to the DEM_IUMPR_GENERAL_
INDIVIDUAL_DENOMINATOR conditions.
Template Description
This meta-class represents the ability to model a IUMPR denominator groups.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprDenominatorGroup
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00838]
4
DiagnosticIumprDenominatorGroup == IUMPR_DENOMINATOR_COLDSTART full
Mapping Status ECUC Parameter ID
valid
4
DEM_IUMPR_DEN_PHYS_API ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Additional physical condition (component activity) computed within the SW-C and reported via Dem_RepIUMPRDenRelease.
Template Description
DiagnosticIumprDenominatorGroup.iumpr:
This reference collects DiagnosticIumpr to a DiagnosticIumprDenominatorGroup.
Identifiable.category:
The category is a keyword that specializes the semantics of the Identifiable. It affects the expected existence of attributes and
the applicability of constraints.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprDenominatorGroup.iumpr, GenericStructure::GeneralTemplate
Classes::Identifiable::Identifiable.category
Mapping Rule Mapping Type
DiagnosticIumprDenominatorGroup.category == IUMPR_DENOMINATOR_PHYSICAL_API full
Mapping Status ECUC Parameter ID
valid
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
5
4
If groupIdentifier is set to DEM_IUMPR_AFRI1 full
Mapping Status ECUC Parameter ID
valid
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_AFRI2 full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_BOOSTPRS full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_CAT1 full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_CAT2 full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
if groupIdentifier is set to DEM_IUMPR_EGR full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_EGSENSOR. full
Mapping Status ECUC Parameter ID
valid
4
DEM_IUMPR_EVAP ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_EVAP full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_FLSYS full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_NMHCCAT full
Mapping Status ECUC Parameter ID
valid
4
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_NOXADSORB full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_NOXCAT full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier ist set to DEM_IUMPR_OXS1 full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
5
4
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_OSX2 full
Mapping Status ECUC Parameter ID
valid
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_PF1 full
Mapping Status ECUC Parameter ID
valid
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_PF2 full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_PMFILTER full
5
4
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_PRIVATE full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_SAIR full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_SECOXS1 full
Mapping Status ECUC Parameter ID
valid
Template Description
M2 Parameter
DiagnosticExtract::Dem::DiagnosticEvent::DiagnosticIumprGroup.groupIdentifier
Mapping Rule Mapping Type
If groupIdentifier is set to DEM_IUMPR_SECOXS2 full
Mapping Status ECUC Parameter ID
valid
M2 Parameter
4
local
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00730]
4
Template Description
Storage condition group which includes one or several storage conditions.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticConditionGroup::DiagnosticStorageConditionGroup
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid [ECUC_Dem_00773]
E.4 Fim
BSW Module BSW Context
FiM FiM/FiMConfigSet
BSW Parameter BSW Type
FiMFID ECUC-PARAM-CONF-CONTAINER-DEF
BSW Description
This container includes symbolic names of all FIDs.
Template Description
FunctionInhibitionNeeds:
Specifies the abstract needs on the configuration of the Function Inhibition Manager for one Function Identifier (FID). This
class currently contains no attributes. Its name can be regarded as a symbol identifying the FID from the viewpoint of the
component or module which owns this class.
DiagnosticFunctionIdentifier:
This meta-class represents a diagnostic function identifier (a.k.a. FID).
M2 Parameter
CommonStructure::ServiceNeeds::FunctionInhibitionNeeds, DiagnosticExtract::Fim::
DiagnosticFunctionIdentifier
Mapping Rule Mapping Type
In case the owner of the FunctionInhibitionNeeds is a BSW module then the FiMFID.shortName= full
{capitalizedMip}_{ServiceDependency.symbolicNameProps.symbol}.
5
4
Mapping Status ECUC Parameter ID
valid [ECUC_FiM_00039]
4
full
Mapping Status ECUC Parameter ID
valid [ECUC_FiM_00096]
4
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
Instance Reference to the primitve sub-element (at any level) of composite data in a port which shall be read. Supported are
VariableDataPrototypes in SenderReceiverInterfaces and NvDataInterfaces and ParameterDataPrototypes in Parameter
Interfaces (read only). This reference is applicable if the AutosarDataPrototype is typed with a ApplicationCompositeData
Type.
Template Description
This represents the dataElement in the application software that is accessed for diagnostic purpose. This role is applicable on
the classic platform.
M2 Parameter
DiagnosticExtract::ServiceMapping::DiagnosticServiceDataMapping.mappedDataElement
Mapping Rule Mapping Type
DiagnosticServiceDataMapping maps to a primitive element within a composite data, where the full
AutosarDataPrototype is typed with a ApplicationCompositeDataType.
Mapping Status ECUC Parameter ID
valid [ECUC_J1939Dcm_-
00066]
4
DiagnosticExtract::Dem::DiagnosticTroubleCode::DiagnosticTroubleCodeProps.memoryDestination
Mapping Rule Mapping Type
This upstream mapping shall only exist for a DiagnosticTroubleCodeJ1939 with attribute kind set to full
serviceOnly that references the DiagnosticTroubleCodeProps that owns the memoryDestination.
Mapping Status ECUC Parameter ID
valid [ECUC_J1939Dcm_-
00051]
4
This reference represents both the ModeDeclarationGroupPrototype and the ModeDeclaration relevant for the mode
comparison.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvModeCondition.modeElement
Mapping Rule Mapping Type
For DcmModeRef a new DiagnosticEnvBswModeElement is used, pointing to the ModeDeclaration full
via ModeInModuleDescriptionInstanceRef. This new DiagnosticEnvModeElement shall be
aggregated by the same DiagnosticEnvironmentalConfition as the DiagnosticEnvModeCondition,
in which the target of the reference DiagnosticEnvModeCondition.modeElement points to the this
DiagnosticEnvModeElement.
Mapping Status ECUC Parameter ID
valid [ECUC_J1939Dcm_-
00059]
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isEqual:
equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isEqual
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isNotEqual:
not equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isNotEqual
Mapping Rule Mapping Type
5
4
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isGreaterOrEqual:
greater than or equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isGreaterOrEqual
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isGreaterThan:
greater than
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isGreaterThan
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
J1939DCM_LESS_OR_EQUAL ECUC-ENUMERATION-LITERAL-DEF
BSW Description
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isLessOrEqual:
less than or equal
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isLessOrEqual
Mapping Rule Mapping Type
full
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticCompareTypeEnum.isLessThan:
less than
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticCompareTypeEnum.isLessThan
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
4
For DcmModeRef a new DiagnosticEnvSwcModeElement is used, pointing to the ModeDeclaration full
via PModeInSystemInstanceRef. This new DiagnosticEnvModeElement shall be aggregated by the
same DiagnosticEnvironmentalConfition as the DiagnosticEnvModeCondition, in which the target
of the reference DiagnosticEnvModeCondition.modeElement points to the this DiagnosticEnvMode
Element.
Mapping Status ECUC Parameter ID
valid [ECUC_J1939Dcm_-
00058]
4
BSW Parameter BSW Type
J1939DcmSwcSRDataElementArrayElementValue ECUC-INTEGER-PARAM-DEF
BSW Description
Value of an array SR data element compare value.
Template Description
This attribute represents a fixed compare value taken to evaluate the compare condition.
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvDataCondition.compareValue
Mapping Rule Mapping Type
DiagnosticDataElement referenced by the DiagnosticEnvDataCondition is an array. full
Mapping Status ECUC Parameter ID
valid [ECUC_J1939Dcm_-
00079]
4
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula
Mapping Rule Mapping Type
A DcmModeRule is mapped to a DiagnosticEnvConditionFormula, if this DcmModeRule is a full
subrule, i.e. it is referenced by a DcmArgumentRef. In addition, a new DiagnosticEnvironmental
Condition shall be created with DiagnosticEnvironmentalCondition.formula containing a Diagnostic
EnvConditionFormula. In both cases, if no DcmLogicalOperator is present in this DcmModeRule,
then DiagnosticEnvConditionFormula shall be set to DiagnosticLogicalOperatorEnum.logicalAnd.
Mapping Status ECUC Parameter ID
valid [ECUC_J1939Dcm_-
00053]
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticLogicalOperatorEnum.logicalAnd:
Logical AND
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticLogicalOperatorEnum.logicalAnd
Mapping Rule Mapping Type
1:1 mapping full
5
4
Mapping Status ECUC Parameter ID
valid
Template Description
DiagnosticEnvConditionFormula.op:
This attribute represents the concrete operator (supported operators: and, or) of the condition formula.
DiagnosticLogicalOperatorEnum.logicalOr:
Logical OR
M2 Parameter
DiagnosticExtract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticEnvConditionFormula.op, Diagnostic
Extract::Dcm::DiagnosticService::EnvironmentalCondition::DiagnosticLogicalOperatorEnum.logicalOr
Mapping Rule Mapping Type
1:1 mapping full
Mapping Status ECUC Parameter ID
valid
E.6 IdsM
BSW Module BSW Context
IdsM IdsM/IdsMConfiguration/IdsMEvent
BSW Parameter BSW Type
IdsMSinkDem ECUC-BOOLEAN-PARAM-DEF
BSW Description
5
4
The QSEv will be sent to the Dem Module into a Security Event Memory (Sem) to persist it on the local ECU.
Template Description
This meta-class represents the ability to map a security event that is defined in the context of the Security Extract to a
diagnostic event defined on the context of the DiagnosticExtract.
M2 Parameter
DiagnosticExtract::Dem::DiagnosticMapping::DiagnosticEventToSecurityEventMapping
Mapping Rule Mapping Type
If the (M2) DiagnosticEventToSecurityEventMapping of the DEXT defines a mapping between the full
(M2) SecurityEventDefinition corresponding to the enclosing IdsMEvent and a (M2) Diagnostic
Event, then IdsMSinkDem = TRUE. Otherwise, IdsMSinkDem = FALSE.
Mapping Status ECUC Parameter ID
valid [ECUC_IdsM_00035]
4
Variation Point Latest Binding Time
DiagnosticTroubleCodeObd.obdDTCValue preCompileTime
DiagnosticTroubleCodeProps.extendedDataRecord preCompileTime
DiagnosticTroubleCodeProps.freezeFrame preCompileTime
DiagnosticTroubleCodeProps.legislatedFreezeFrameContentWwhObd preCompileTime
DiagnosticTroubleCodeProps.priority preCompileTime
DiagnosticTroubleCodeProps.snapshotRecordContent preCompileTime
DiagnosticTroubleCodeUds.udsDtcValue preCompileTime
DiagnosticTroubleCodeUds.wwhObdDtcClass preCompileTime