CLASSIC
Modul: systemtemplate
Rolle: constitutive
Konfidenz: 95%
SNIP_CLASSIC_SYSTEMTEMPLATE_SECTION_3_3_5_4_LIN_Slave
Wortlaut
3.3.5.4 LIN Slave
AUTOSAR supports the definition of a stand-alone LIN slave1. In other words, it is possible to define an ECU Extract that contains the modeling of a LIN slave independently
of the modeling of the LIN master.
That said, the ability to define properties of the LIN slave in the context of the LIN master in the form of LinMaster.linSlave still exists and can be used where applicable.
[TPS_SYST_05018] Semantics of meta-class LinSlave ⌈Meta-class LinSlave
describes the existence of a LIN slave task in a LIN topology node. It describes the
attributes of a single LIN slave node.⌋(RS_SYST_00022)
[TPS_SYST_05019] Semantics of LinErrorResponse.responseError ⌈Each Lin
slave has the ability to set an error bit in the response part of one specific LinUnconditionalFrame in the event of errors occurring on frame level. The error bit is
modeled by means of a reference to an ISignalTriggering in the role LinErrorResponse.responseError.⌋(RS_SYST_00022)
Please note that because the response error bit applies for frame errors the responsibility for setting the response error bit lies exclusively at the LinIf.
In the event of such an error, the LinIf on the Lin slave Ecu calls Com_SendSignal
() to set the value of the response error bit if applicable2 and thus the system model
needs to foresee the existence of an ISignalTriggering for this purpose.
Aside: on the Lin master, typically a piece of application software picks up the received
error bit and uses it to e.g. increment a counter for debouncing purposes. If the counter
exceeds a certain value in e.g. a given time interval the Lin master has to assume
that a serious problem exists in the communication with this specific slave and react
accordingly.
1In former versions of this specification document the properties of a LIN slave could only be defined
in the context of the corresponding LIN master
2In principle, the LinIf on the Lin slave Ecu could directly patch the value of the response error bit
into a Tx Pdu before sending but in this case the LinIf would have to pick the correct Pdu and patch it
accordingly. In other words, the LinIf would replicate a certain amount of Com functionality. the usage
of an ISignalTriggering significantly simplifies the implementation of the LinIf.
System Template
In terms of modeling, this means that if formally modeled application software on the
Lin master exists that processes the error response bit (the receiving side of the error
response bit) then a DataMapping to a SystemSignal that carries the response
error bit needs to be defined.
It is important to understand that application software on a Lin slave positively has no
business of setting the value of the response error bit. In other words: on the sending
side (i.e. the Lin slave), the application software is not affected and therefore there shall
not be a DataMapping on the sending side. This relation motivates the existence of
[constr_1656].
[constr_1656] No application-level write access to LinErrorResponse.responseError on Lin slave ⌈The SystemSignal referenced in the role systemSignal by the ISignal referenced by the ISignalTriggering that in turn is referenced in the role LinErrorResponse.responseError shall not be referenced by a
DataMapping that allows for writing to the SystemSignal.⌋()
Class
<<atpVariation>> LinSlave
Package
M2::AUTOSARTemplates::SystemTemplate::Fibex::Fibex4Lin::LinTopology
Note
Describing the properties of the referring ecu as a LIN slave.
Base
ARObject, CommunicationController, Identifiable, LinCommunicationController, Multilanguage
Referrable, Referrable
Attribute
Type
Mult.
Kind
Note
assignNad
Boolean
0..1
attr
This attribute has the ability to control whether the node
configuration command ’Assign NAD’ is supported.
configuredNad
Integer
1
attr
To distinguish LIN slaves that are used twice or more
within the same cluster.
functionId
PositiveInteger
1
attr
LIN function ID
initialNad
Integer
0..1
attr
This attribute represents the initial NAD.
linError
Response
LinErrorResponse
1
aggr
Each slave node shall publish one response error in one
of its transmitted unconditional frames.
nasTimeout
TimeValue
0..1
attr
Value of the N_AS timeout. Unit: seconds.
supplierId
PositiveInteger
1
attr
LIN Supplier ID
variantId
PositiveInteger
1
attr
Specifies the Variant ID
Table 3.39: LinSlave
Class
LinErrorResponse
Package
M2::AUTOSARTemplates::SystemTemplate::Fibex::Fibex4Lin::LinCommunication
Note
Each slave node shall publish a one bit signal, named response_error, to the master node in one of its
transmitted unconditional frames. The response_error signal shall be set whenever a frame (except for
event triggered frame responses) that is transmitted or received by the slave node contains an error in
the frame response. The response_error signal shall be cleared when the unconditional frame containing
the response_error signal is successfully transmitted.
Base
ARObject
Attribute
Type
Mult.
Kind
Note
responseError
ISignalTriggering
0..1
ref
This ISignal shall be taken to transport the responseError
bit.
Table 3.40: LinErrorResponse
System Template
Versionen & Provenienz · Zugeordnete Anforderungen
Diese Angaben zeigt der Versions-Explorer.
Begründung & Zuweisungs-Evidenz
Cited verbatim in the snippet (deterministic citation).
Dokumenten-Herkunft & Rückverfolgbarkeit
| Spezifikations-Dokument | SystemTemplate.pdf |
|---|---|
| Dokumentseite | Seite 89 |
| Ziel-Modul | systemtemplate (classic) |
| Ziel-Anforderung | TPS_SYST_05019 |
| Semantische Rolle | constitutive |
| Automatisierungs-Konfidenz | 0.95 |