GB5200 CAN Communication Strategy Specification
GB5200 CAN Communication Strategy Specification
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Release: 20.20.137
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Table Of Contents
1 Introduction .......................................................................................................................................... 5
1.1 Document Updates and Revision History ..................................................................................... 5
1.1.1 Issue History .......................................................................................................................... 5
1.1.2 Revision Log .......................................................................................................................... 5
1.2 Document Scope ......................................................................................................................... 13
1.3 Document Mission/Theme ......................................................................................................... 13
1.4 Document Status Classification................................................................................................... 13
1.5 Requirement Wording Conventions ........................................................................................... 13
2 References .......................................................................................................................................... 14
2.1 Precedence Order ....................................................................................................................... 14
2.2 Government Documents............................................................................................................. 14
2.3 General Motors Documents ....................................................................................................... 14
2.4 Industry Documents .................................................................................................................... 15
2.4.1 AUTOSAR ............................................................................................................................. 15
2.4.2 ISO ....................................................................................................................................... 16
2.4.3 SAE ...................................................................................................................................... 16
2.4.4 Protocol Specific Documents .............................................................................................. 16
2.4.4.1 CAN.................................................................................................................................. 16
2.5 Definitions and Acronyms ........................................................................................................... 16
3 Requirements ...................................................................................................................................... 20
3.1 General........................................................................................................................................ 20
3.2 ISO Seven Layer Model Requirements ........................................................................................ 20
3.2.1 Physical Layer Requirements .............................................................................................. 20
3.2.1.1 Network Topology ........................................................................................................... 21
3.2.1.2 Supported Network Data Rates ...................................................................................... 23
3.2.2 Data Link Layer Requirements ............................................................................................ 23
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
1 Introduction
1.1 Document Updates and Revision History
This document can be revised and appear in several versions. The document will be classified in order to
allow identification of updates and versions.
Release 1.1, Sept 12, 3.2.1.1.3 Corrected network reference. Was: public, should
DRAFT 2012 be: Expansion
Sept 13, 3.3.1.2.2.2, Added logic to keep network active for a minimum
2012 amount of time following a sleep to wake transition
3.3.1.2.2.3.1,
& local activation.
3.3.1.2.2.3.3.2.3
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Release 1.2, Oct 23, 1.5 Removed [REQ] references, added attributes
DRAFT 2012 Heading, Information, and Functional.
Release 1.3, March 16, all sections Change all references of GMW3122 to GB7200,
DRAFT 2013 Change all references of I-doc to GB6001, Changed
all references of UDS spec to GB6000
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
3.2.1.2 Added CAN-FD rates for 500 and 125 k networks per
CR 14811
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
March 13, 2.5 Added defintiions of Classic CAN message and CAN
2015 FD message
Release 1.9 July 6, 2016 3.3.3.2.2 removed objects GBCCS922, GBCCS923, GBCCS924
Release 2.0 July 14, 3.3.3.2.4, 3.3.3.2.6.1 remove figures 18 and 19. added objects
2015 GBCCS1711 - GBCCS1717
Release 2.0 July, 27, all fixed spelling and grammar errors, removed sections
2015 from GB5210 that do not apply to Private networks,
added all transmit models to GB5210, removed
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Release 2.1 March 2, 3.2.2 added requirement to interleave CAN 2.0 and CAN
2016 FD messages
Release 2.1 April 21, 3.2.2.2 added additional reserved range of 29 bit identifiers
2016
Release 2.2 October 14, 3.3.2.3.2 added requirement to enable receive PDUs each
2016 time NMF is received
Release 2.2 June 3, 3.2.3.2 added requirements that CAN IDs for diagnsotic,
2016 Protected signals, and counter sync signals be
unique across Public networks, clarified that NMF
CAN IDs be unique across Public networks
Release 2.3 November 3.3.2.3.2 added requirement to enable receive PDU groups
25, 2016 each time a NMF is received
20.20.137 September 2.5, 3.2.3.2.1 Changed Classic CAN to Classical CAN to match ISO
18, 2017 11898
20.20.137 September 3.2.1.1.2.1 clarified requirement that ECU has to receive and
18, 2017 process all messages, except when bus off
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
20.20.137 September 3.3.3.1.4.1, 3.3.3.2.5 added requirement on periodic rates when software
19, 2017 can't meet specified value
The In-Vehicle CAN Network subsystem shall be scaleable to support ECU’s that range from simple
control modules up to highly complex units.
The In-Vehicle CAN Network subsystem shall also support the transfer of diagnostic services and the
transformation from and to a specified set of globally accepted standards for diagnostic tester access
and communication.
Shall – a binding requirement of the component or subsystem within the scope of this
specification.
Must – a requirement of a components or subsystem outside of the scope of this specification.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
2 References
2.1 Precedence Order
In case of conflict between the text of this specification and the documents cited herein, the text of this
specification takes precedence. Nothing in this specification, however, supersedes applicable laws and
regulations unless a specific exemption has been obtained.
GB72XX Dual Wire CAN Physical Layer and Data Link Specification December 2012 or
greater
GMW3173 GMLAN Architecture and Bus Wiring Requirements V3.0 (July 2008)
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
V4.0.0
V4.2.0
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
V3.2.0
2.4.2 ISO
Document Document Document Title Document
Number Reference Version
ISO 11898-1 ISO11898-1 Road vehicles - Interchange of digital information - ISO/DIS 11898-
Controller area network (CAN) for high-speed 1 (Ed 2)
communication
2.4.3 SAE
N/A
Activating ECU ECU assigned to monitor and process partial network activation criteria.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Term Definition
Activation - active Process in which activating ECUs monitor local events and cause partial
networks to become actively communicating. Partial networks are considered
locally activated.
Activation - passive Process in which network members are notified from a remote ECU via the
network that a partial network is activating. Partial networks are considered
remotely activated.
Activation criteria Conditional requirements used to determine when a partial network should be
activated.
Bus Off An error state defined in ISO 11898, a controller in bus off is switched off from
the bus
CAN FD message CAN message transmitted using the ISO defined CAN FD frame format. CAN FD
= CAN Flexible Data. CAN FD messages can be transmitted with a faster baud
rate for the payload portion of the message or with up to 64 bytes of data or
both.
Classical CAN message CAN message that is transmitted with the frame format defined in the Bosch
CAN 2.0 specification.
Data field consists of the data to be transferred within a frame. It can contain from 0 bytes
to 64 bytes, and each byte contains 8 bits.
Data Dictionary Representation of signals, PDU, and messages and the assignments of these to
the transmitting and receiving ECUs.
Deactivation criteria Conditional requirements used to determine when a partial network should be
allowed to expire.
Frame Data link protocol unit specifying the arrangement and meaning of bits or bit
fields in the sequence of transfer across the transmission medium.
Gateway A multi-network ECU responsible for transferring data from one network to
another.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Term Definition
Multi-Network Member An ECU that communicates in more than one physical network.
Network Activation Process in which a network transitions from inactive to active communications.
Network Management Message who’s data payload is formatted to notify which partial networks are
Frame active or inactive.
Partial Network Collections of signals whose transmission and reception are started and stopped
as a unit. Partial Networks may be started and stopped independently of each
other.
PDU Collection of signals that an ECU sends and receives in support of a specific
Partial Network
PDU group Collection of PDUs that an ECU sends and receives in support of a specific Partial
Network
Signal group A group of signals that must be read and written as a unit without interruption
to ensure data coherency.
Signal supervision Deadline monitoring for a signal from an ECU assigned to transmit it on a
regular interval. If the deadline is missed, the ECU is notified.
Acronyms Explanation
ASR AUTOSAR
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Acronyms Explanation
CC Communication Controller
DD Data Dictionary
HW Hardware
ID Identifier
NM Network Management
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Acronyms Explanation
PN Partial Network
TBD To Be Defined
3 Requirements
3.1 General
The CAN Communication Strategy specification captures WHAT the serial data communication network
shall do to robustly send and receive data under normal and abnormal operating conditions. The CAN
Software Strategy specification captures HOW the requirements of the Communication Strategy shall be
implemented.
Transceiver: Electrical circuit that connects the CAN communication controller to the network.
Network Loading: Electrical load consists of the resistance and capacitance on the network line(s).
Filter: Circuitry which include (but not limited to) an inductor and capacitor necessary to improve
EMI immunity.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Wiring: Physical media used to send/receive the electrical communication signals to/from network
members.
Vehicle Architectures shall be composed using one or more instantiations of CAN network(s).
[GBCCS313]
An ECU shall be either a network member, a multi-network member (MNM), or a gateway (GW).
[GBCCS315]
Expansion network
GW MNM
Private network
D
L
Public network C
At least but not limited to one network member in the public network shall be assigned to manage and
control public network activation/deactivation. [GBCCS319]
The public network shall be accessible via the Data Link Connector or through a central gateway.
[GBCCS321]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
At least but not limited to one ECU in the point-to-point network shall be assigned to manage and
control point-to-point network activation/deactivation. [GBCCS1447]
The point-to-point network shall activate/deactivate as a uniform cluster (partial network support is not
required). [GBCCS1450]
The ECU shall have the capability to receive and process all CAN messages it has been assigned
regardless of when they are transmitted on the network except when bus off. [GBCCS1884]
The ECU shall have the capability to transmit all CAN messages it has been assigned when its transmit
model requirements have been met. [GBCCS335]
A network member shall be able to process remote network activation requests. [GBCCS337]
A network member shall be able to receive all Network Management Frames regardless of network
bandwidth loading. [GBCCS338]
A network member shall transmit a Network Management Frame when it has been configured to be an
activating ECU and activation criteria are true. [GBCCS340]
A gateway shall transfer wake up requests from one network to all other networks. [GBCCS345]
A gateway shall transfer partial network management data from one network to all other networks.
[GBCCS346]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
A gateway shall be configured to transfer signal data from one network to other networks. [GBCCS347]
A gateway shall transfer wakeup requests, partial network management data and signal data within a
specified gateway transfer delay time that shall be a value ≤ 30ms.
Rationale: Gateway transfer delay time is influenced by the dependent function’s performance
characteristics, the number of signals it is transferring, and the networks it is connected to data rate(s).
Each gateway design shall specify the transfer delay time in accordance to these influences.
[GBCCS1736]
A gateway shall be configured to transfer block data from one network to other networks using the
network and transport layer. [GBCCS350]
Each network shall have a specified data rate that provides network members enough serial data
capacity, bandwidth, throughout the network’s lifecycle. [GBCCS354]
Each network member shall have a configurable network data rate which shall be set in accordance with
the network it is connected.
Rationale: The ECU inherits the data rate of the network it is assigned. Whatever data rate is specified
for that particular network, the ECU will use that data rate to establish timing register values.
[GBCCS1737]
CAN DLL shall support mixed mode operation (i.e. handle 11 bit and 29 bit identifiers at run time).
[GBCCS380]
The CAN DLL shall support interleaving the transmission and reception of CAN 2.0 and CAN FD
messages. [GBCCS1797]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Network management messages shall have 11bit Standard CAN identifiers. [GBCCS385]
Normal communication diagnostic messages shall have 29bit Extended CAN identifiers. [GBCCS386]
Bootloader diagnostic messages shall have both 11bit Standard CAN identifiers and 29bit Extended CAN
identifiers. [GBCCS387]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
States of an Enumerated signal not explicitly defined in the signal database shall be reserved for future
use. [GBCCS1601]
These states will not be defined as in the signal database as "Unused and Reserved", but may not be
used for other purposes.
An ECU acting as an onboard tester to collect data for a diagnostic or prognostic function shall be
allowed to use physically addressed diagnostic service messages to support this function. [GBCCS1587]
The CAN Identifier assigned to messages containing Protected signals shall be unique across all Public
CAN networks. [GBCCS1824]
The CAN Identifier assigned to messages containing Counter Sync signals shall be unique across all Public
CAN networks. [GBCCS1825]
Constant ECU Identifier Source Node Control Bit Partial Network Identifier Bits
001 b7-b0 Identifier Vector
Byte2 – Byte 7
b10-b8
Byte 0 Byte 1
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
The Constant field shall reside in the high-order three bits of the CAN frame identifier. [GBCCS455]
The Constant field of the CAN Identifier shall be set to 001b. [GBCCS456]
The ECU Identifier field shall reside in the low-order eight bits of the CAN frame identifier. [GBCCS457]
The ECU Identifier field shall contain the unique Source Node Identifier which indicates which device is
transmitting the frame. [GBCCS458]
The Network Management Frame CAN Identifier assigned to each ECU shall be unique across all Public
CAN networks. [GBCCS459]
The Control Bit Vector shall be initialized with 0x00 during initialization. [GBCCS465]
All ECUs that transmit NM Frames shall set the Repeat Mesage Request Bit in the Control Bit Vector to
zero (0) for all NM PDU transmissions. [GBCCS1738]
All ECUS that transmit NM Frames shall set the NM Coordinator Sleep Bit in the Control Bit Vector to
zero (0) for all NM PDU transmissions. [GBCCS1739]
All ECUs that transmit NM Frames shall set the Partial Network Information Bit in the Control Bit Vector
to one (1) for all NM PDU transmissions. [GBCCS1740]
The management of the Active Wakeup Bit in the Control Bit Vector is handled by the AUTOSAR CAN
NM module.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
The mapping of Partial Network Identifier Bits to specific Partial Networks shall be defined in GB5280.
[GBCCS1742]
The Activating ECU shall transmit a value of one in the Partial Network Identifier Bit corresponding to
the Partial Network that is being activated. [GBCCS484]
The Activating ECU shall transmit a value of zero in the Partial Network Identifier Bit corresponding to
the Partial Network that is not being activated. [GBCCS485]
The Diagnostic message CAN Identifiers assigned to each ECU shall be unique across all Public CAN
networks. [GBCCS1826]
The network layer also manages connection setup and flow control.
Bus visible network management data is used to indicate when a network member wants to activate a
particular communication session, partial network, and when the activating member no longer requires
the communication session active. Network members monitor the network management data to
determine when they are required to participate in the communication session.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Once an ECU determines that it will participate in a communication session, the ECU begins transmitting
data, processing received data, and monitoring the communication subsystem for errors.
Some communication sessions may only require a subset of the network members to participate. Partial
network management determines whether an ECU will participate and if so will manage enabling the
appropriate portions of data necessary to support the active partial network. [GBCCS1743]
While actively communicating the ECU can monitor its ability to transmit data without causing a
disturbance in the network, check received signals for valid states, and detect when other network
members are no longer present when they should be transmitting data it requires. The ECU will be
configured to react appropriately in the event an error is detected.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
While actively communicating the ECU may receive requests from a tester to stop its communication
session. The ECU will be configured to react appropriately in the event a halt communication request is
received.
While actively communicating the ECU continues to monitor local data and remote requests to detect
when a communication session is no longer needed. When the ECU has determined that a
communication session is no longer needed it begins the process of deactivating the communication
session. If it activated the communication session, it will transmit data notifying the other network
members that the session is no longer needed. Once all communication sessions within the ECU are
deactivated, the ECU can either remain in a state where local operations may be processed or return to
a low power sleep state.
Communication strategy elements execute within the ECU and are dependent on the services of the
infrastructure. Non-communication infrastructure elements are included to show their interaction with
the communication elements. Detailed requirements for the behavior of the infrastructure software
that are beyond communication element requirements are not covered in this document.
The desired behavior of the CAN communication strategy elements and its relationship to the rest of the
ECU logic are graphically represented in this document through the use of State Transition Diagrams
(STDs). Notational conventions for the state transition diagram are given in Appendix A.
Sections are titled to correspond to the states in the STDs. Individual requirements are documented
within the section (i.e., state) that is primarily responsible for implementing the requirement. If a
requirement is implemented by a combination of states, cross-references are made to the others.
Requirements that correspond to transitions between states are documented in the state from which
the transition originates.
Numerous requirements in this section rely on the concept of timers. For the purpose of these
requirements, timer operating states have been defined but actual timer maintenance processes are not
specified.
Timers shall begin their counting when the “Start” command is specified. [GBCCS521]
Timers shall stop their counting when the “Stop” command is specified. [GBCCS522]
Timers shall have reached their counting limit when the “Expired” conditional is specified. [GBCCS523]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
ECU_UNPOWERED
[POWERED]
[not_POWERED]
ECU_POWERED
ECU_EXECUTING_RESET
RESET_COMPLETE
ECU_MANAGEMENT_ACTIVE
RESET
COMMUNICATION_MANAGEMENT_LOGIC
COMM_MANAGEMENT_INACTIVE
LOCAL_ACTIVATION_MONITOR_ACTIVE
REMOTE_WAKEUP_MONITOR_ACTIVE
COMM_INIT No Communication
LOCAL_EVENT
COMM_INIT_COMPLETE
WAKEUP_SOURCE
ECU_IN_STANDBY ECU_READY
STANDBY_OK
PASSIVE_NETWORK_REQUEST or
ACTIVE_NETWORK_REQUEST /
Start NETWORK_MODE_MIN_TIMER;
COMM = NO_COMM and
ALL_BUS_ASLEEP
COMM_MANAGEMENT_ACTIVE
The ECU shall detect when power is applied and begin executing its reset logic. [GBCCS529]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
The ECU shall detect when power is removed and return to the ECU_UNPOWERED state. [GBCCS532]
Once the ECU reset logic has successfully completed the ECU shall initiate ECU Management activities.
[GBCCS535]
When ECU Management is active three concurrent processes will address detecting remote wakeup
requests, assessing ECU specific communication activation criteria, and managing CAN communication
transitions from inactive-to-active and active-to-inactive:
The ECU shall detect when remote wakeup requests are received from the CAN network. [GBCCS542]
The ECU shall detect when ECU local applications require CAN communications. [GBCCS543]
Following power up or completing an ECU reset the ECU shall initialize communications. [GBCCS544]
ECUs shall manage communication transitions from inactive communication to actively communicating
and actively communicating to inactive communication. [GBCCS545]
The ECU shall detect if a reset occurs and begin executing its normal power up reset logic. [GBCCS546]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
REMOTE_WAKEUP_MONITOR_ACTIVE
Expired REMOTE_NETWORK_WAKEUP_CONFIRMATION_TIMER /
Set LOCAL_EVENT;
AWAITING_REMOTE_NETWORK_WAKEUP_CHx
ECU interface hardware shall be configured to electrically wake the ECU upon detection of a specified
wakeup request or set of specified wakeup requests. [GBCCS551]
ECU shall be capable of discriminating a local event from a network wakeup request. [GBCCS552]
ECU shall notify that a passive network request was received once the network wakeup request is
validated (confirmed). [GBCCS553]
ECU shall request that communication be set to full communication once the network wakeup request is
validated (confirmed). [GBCCS554]
ECU shall start a communication synchronization timer once the network wakeup request is validated
(confirmed).
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Rationale: Activating ECUs and Activated ECUs wait a synchronization period of time allowing each to
become receive ready prior to enabling signals for transmission and reception. [GBCCS1745]
CAN communication strategy supports more than one communication session, partial network. Each
partial network will have its own activation and deactivation criteria defined and logic to track the local
and remote activation requests
LOCAL_ACTIVATION_MONITOR_ACTIVE
Detect LOCAL_EVENT /
Determine PN()_ACTIVATION_CRITERIA_STATUS;
AWAITING_LOCAL_ACTIVATION
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
ECU shall be configured to activate one or more than one partial network. [GBCCS562]
Each partial network shall have activation and deactivation criteria defined. [GBCCS563]
ECU shall be configured to monitor and assess each configured partial network’s activation criteria and
deactivation criteria. [GBCCS564]
When the network’s activation criteria are assessed true and the ECU has not already activated the
network, the ECU shall activate the communication session. [GBCCS1242]
When the partial network’s activation criteria are assessed true and the ECU has not already activated
the partial network the ECU shall indicate its local request to activate the partial network. [GBCCS565]
When the partial network’s activation criteria are assessed true and the ECU has not already activated
the partial network the ECU shall request that a network wakeup be transmitted. [GBCCS566]
When the partial network’s activation criteria are assessed true and the ECU has not already activated
the partial network the ECU shall start a communication synchronization timer.
Rationale: Activating ECUs and Activated ECUs wait a synchronization period of time allowing each to
become receive ready prior to enabling signals for transmission and reception. [GBCCS1746]
When the partial network is being activated for the first time e.g. the partial network’s activation criteria
are assessed true and the ECU has not already activated the partial network, the ECU shall keep the
communication session active for a specified minimum amount of time. [GBCCS569]
When the partial network’s deactivation criteria are assessed true the ECU shall notify that an active
network request is no longer active. [GBCCS570]
When the partial network’s deactivation criteria are assessed true the ECU shall indicate that the local
request for the partial network is no longer active. [GBCCS571]
When the network’s deactivation criteria are assessed true the ECU shall notify that an active network
request is no longer active. [GBCCS1243]
When the network’s deactivation criteria are assessed true the ECU shall indicate that the local request
for the network is no longer active. [GBCCS1244]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
requirements for the behavior of the Communication Management software that are beyond the
communication requirements are not covered in this document (COMM_MANAGEMENT_INACTIVE).
COMM_MANAGEMENT_INACTIVE summarizing at a high level processes that occur when the ECU
is not communicating,
COMM_INIT responsible for configuring the CAN controller and transceiver following power apply
and,
Communication management logic causes the ECU to begin the transition to active communication
when required following a remote wakeup request or processing a local communication session (partial
network) activation request. It also deactivates ECU communications when the communication services
are no longer required.
ECU_READY where the ECU may perform local operations which do not require communication,
and
ECU_IN_STANDBY where the ECU is not performing any operations and can enter a low-power
consumption state.
Detailed requirements for the transitions between these two sub-states are beyond the communication
requirements and are not covered in this document. Generically speaking, the ECU transitions from
ECU_IN_STANDBY to ECU_READY when it has local operations to perform that do not require
communication and transitions the opposite direction when these operations are no longer necessary.
The ECU shall begin the transition to active communication when either a remote wakeup request had
been detected or a local communication session (partial network) activation request had been
processed. [GBCCS584]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
The ECU shall keep the communication session active for a specified minimum amount of time
(NETWORK_MODE_MIN_TIMER) when either a remote wakeup request had been detected or a local
communication session (partial network) activation request had been processed. [GBCCS585]
The ECU shall determine if there are any conditions prohibiting communications. [GBCCS586]
The ECU shall allow communication as long as there are no conditions prohibiting communications.
[GBCCS587]
The ECU shall coordinate communication activation and deactivation across all of the ECU’s networks.
[GBCCS588]
Following power up or completing an ECU reset the ECU shall initialize the CAN controller and
transceiver. [GBCCS591]
NM_COORDINATOR_MONITOR_ACTIVE responsible for detecting when all the ECU’s CAN channels
are no longer needed (bus asleep).
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
COMM_MANAGEMENT_ACTIVE
COMM_MANAGEMENT_MONITOR
Detect no PASSIVE_NETWORK_REQUEST and
no ACTIVE_NETWORK_REQUEST /
Set COMM == NO_COMM;
Determine COMM_ALLOWED
COMM_ENABLED
ComM Request Pending State
NM_COORDINATION_MONITOR_ACTIVE
Expired WAIT_BUS_SLEEP_TIMER /
Set COMM == NO_COMM;
NETWORK_MANAGEMENT_ACTIVE
COMM_PREPARE_TO_SLEEP
ComM Ready Sleep State
COMM_ACTIVE
ComM Full Communication State
The ECU shall transition to inactive communication when communication services are no longer
required and the network coordinator has confirmed that all CAN channels are no longer active (bus
asleep). [GBCCS600]
3.3.1.2.2.3.3.1 NM_COORDINATION_MONITOR_ACTIVE State
Network coordination is used to coordinate the shutdown of communication services for all of the ECUs
networks. If any network is active, communication services remain active. When all networks have
entered a sleep state, communication services can become inactive.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
NM_COORDINATION_MONITOR_ACTIVE
ECU_COMMUNICATION_NETWORKS_INACTIVE
ECU_COMMUNICATION_NETWORK_ACTIVE
Communication services shall remain active as long as one network is actively communicating.
[GBCCS605]
Communication services shall notify ECU management when communication is no longer needed; all
networks are asleep. [GBCCS607]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
communications, e.g. local and remote activation request are no longer true, while waiting for
communication allowed confirmation, the ECU may return to a communication inactive state.
ECU shall transition to full communications capability as long as there are no ECU conditions prohibiting
communication activation and either a local activation has been detected or a remote wakeup was
processed. [GBCCS612]
ECU shall activate all CAN channels needed to support the activating communication session once the
decision to enter full communications has been made. [GBCCS613]
ECU shall detect that communication activation requests have been canceled before the decision to
enter full communications has been made and return to a communications inactive state. [GBCCS614]
3.3.1.2.2.3.3.2.2 COMM_PREPARE_TO_SLEEP State
Communication management allows the ECU to stabilize before for deactivating communications. If
communication requests are received during this stabilization time, the ECU will return to fully
communicating. Once the stabilization period has expired network coordination will be notified that the
bus is asleep.
ECU shall detect that conditions for resuming full communications has occurred while waiting for the
bus sleep timer to expire and reactivate all CAN channels needed to support the activating
communication session. [GBCCS617]
ECU shall detect that a diagnostic communication session became active while waiting for the bus sleep
timer to expire and reactivate all CAN channels needed to support the diagnostic communication
session. [GBCCS618]
ECU shall prepare for deactivated communications once the decision to go to sleep has stabilized (bus
sleep timer has expired). [GBCCS619]
3.3.1.2.2.3.3.2.3 COMM_ACTIVE State
Fully active communication will allow the ECU to transmit and receive signals based on active
communication session(s). Communications remains active for a minimum amount of time.
Communications remains active as long as there is an active communication or diagnostic session. Once
all communication and diagnostic sessions become inactive the ECU prepares for inactive
communications and waits a period of time to transition in case any new communication sessions
become active.
ECU shall prepare for inactive communications by entering a stabilization state after detecting the
minimum network activation period has lapsed, that there are no active partial networks, no locally
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
active or remotely active partial network requests to be processed, and no active diagnostic
communication sessions. [GBCCS622]
More than one communication session can be active and managed at any time. All vehicle network
signals are not required to participate in all communication sessions. Operating the communication
network “in parts” e.g. requiring only those signals assigned to a particular communication session to
actively participate, is supported. The subset of the network’s signals transmitted and received in
support of a communication forms a partial network.
Network management controls which ECUs must be active to participate in a particular partial network.
Network management will only activate the ECUs which have signals assigned to the particular partial
network. The set of ECUs assigned to participate in a partial network form a partial network cluster.
Network management controls which set of signals are to be transmitted and received while the partial
network is active. Partial network cluster members responsible for transmitting signals will be
supervised by ECUs relying on their data.
Activating ECUs will follow an activation process to determine when a partial network is to become
active. Under the right conditions activating ECUs will wakeup and notify all partial network cluster
members which partial network is to become active. Activating ECUs will transmit a Network
Management Frame to notify partial network cluster members which partial networks are being
activated. Activating ECUs will continue to transmit the Network Management Frame indicating the
partial network is active as long as the conditions requiring the partial network are true.
Activated ECUs will follow a process to determine when it should actively participate in a partial
network. Activated ECUs monitor the network for wakeups and interpret all received Network
Management Frames to determine if any one of its assigned partial networks have been activated.
Partial networks are not switched off but rather timeout. Each partial network has a timeout timer
associated with it within all partial network cluster members. All partial network cluster members
service the partial network timeout timer based on the Network Management Frame. Activating ECUs
start and reset their partial network timeout timer when transmitting a Network Management Frame
indicating the partial network is active. Activated ECUs start and reset their partial network timeout
timer whenever a Network Management Frame from any channel is received indicating the partial
network is active. The partial network timeout timer is not reset but continues to countdown whenever
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
the Network Management Frame is transmitted or received indicating that partial network is no longer
required.
When the partial network is no longer needed, the activating ECU sets the appropriate PNI Bit to zero.
As long as no other ECU is activating the partial network, the partial network will eventually time out
within all partial network cluster members and become inactive.
The following figure is included here to show the relationship of Network management within
Communication management.
COMM_MANAGEMENT_ACTIVE
COMM_MANAGEMENT_MONITOR
Detect no PASSIVE_NETWORK_REQUEST and
no ACTIVE_NETWORK_REQUEST /
Set COMM == NO_COMM;
Determine COMM_ALLOWED
COMM_ENABLED
ComM Request Pending State
NM_COORDINATION_MONITOR_ACTIVE
Expired WAIT_BUS_SLEEP_TIMER /
Set COMM == NO_COMM;
NETWORK_MANAGEMENT_ACTIVE
COMM_PREPARE_TO_SLEEP
ComM Ready Sleep State
COMM_ACTIVE
ComM Full Communication State
3.3.2.1 NETWORK_MANAGEMENT_ACTIVE
While network management is active conditions for activating and deactivating partial networks will be
monitored and reacted, remote activation requests received within Network Management Frames will
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
be processed, and local activation requests will be announced by transmitting Network Management
Frames.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
NETWORK_MANAGEMENT_ACTIVE
PARTIAL_NETWORK_MANAGEMENT_MONITOR
PN( )_INACTIVE
PNC No Communication
NM_FRAME_TX_MANAGEMENT_ACTIVE
Activate Supervision;
Start PN()_TIMEOUT_TIMER;
Start NM_TIMEOUT_TIMER;
Set COMM == FULL_COMM_REQ;
PN( )_LOCALLY_ACTIVATED
PNC Requested State
3.3.2.1.1 REMOTE_ACTIVATION_MONITOR_ACTIVE
Partial network cluster members notify each other when they activate and deactivate partial networks
by transmitting a Network Management Frame. All ECUs in the network monitor the Network
Management Frame and process the partial network state changes.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
REMOTE_ACTIVATION_MONITOR_ACTIVE
AWAITING_NM_FRAME_RECEPTION
ECU shall have a dedicated timeout timer for each partial network it has been assigned to participate
within. [GBCCS645]
ECUs shall receive all transmitted Network Management Frames regardless of network bandwidth
loading. [GBCCS646]
ECU shall interpret the received Network Management Frames to determine if any remote ECU requires
a partial network it has been assigned to be active. [GBCCS648]
ECU shall service the specific partial network timeout timer when it has determined a remote ECU
requires a partial network it has been assigned to be active. [GBCCS649]
3.3.2.1.2 NM_FRAME_TX_MANAGEMENT_ACTIVE
Network Management Frames are transmitted by partial network activating ECUs to indicate their need
or lack of need to communicate. NM_FRAME_TX_MANAGEMENT_ACTIVE determines when a partial
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
network activating ECUs will start and stop transmitting a Network Management Frame and how often
the Network Management Frame will be sent.
NM_FRAME_TX_MANAGEMENT_ACTIVE
NM_FRAME_TX_INACTIVE
LOCALLY_ACTIVING_PN
/ Start NM_FRAME_CYCLE_OFFSET_TIMER;
WAKEUP_DELAY
CAN NM frame offset time
Expired NM_FRAME_CYCLE_OFFSET_TIMER
NM_FRAME_CYCLIC_TX_ACTIVE
CanNmMsgCycleTime
Expired NETWORK_MODE_MIN_TIMER
Detect ACTIVE_NETWORK_REQUEST and
GENERATE_WAKEUP
Network Management Frame shall be used in the process of generating a wakeup pattern. [GBCCS654]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Rationale: Partial network transceivers have a specific pattern they are expecting to bring them out of a
quiescent state, synchronize internal clocks to the bus, and to satisfy wakeup filtering. [GBCCS1751]
Network Management Frames shall be transmitted cyclically for a predetermined period of time
following the wakeup pattern to notify ECUs which partial network is being activated.
Rationale: Network members require a period of time to react to the wakeup pattern and become
receive ready. To accommodate the range times it may take ECUs to become receive ready, the
Network Management Frame will be transmitted a fixed number of times after generating the wakeup
pattern. [GBCCS1752]
Partial network timeout timers shall be reset and started whenever a Network Management Frame is
transmitted with that particular partial network activated. [GBCCS659]
Network management timeout timer shall be reset and started whenever a Network Management
Frame is transmitted. [GBCCS660]
Network Management Frames shall be transmitted cyclically with a predetermined periodic interval
while the ECU is activating at least one partial network. [GBCCS661]
Network Management Frames shall stop transmitting cyclically when the ECU is no longer activating any
partial networks. [GBCCS662]
3.3.2.1.3 PARTIAL_NETWORK_MANAGEMENT_MONITOR
Each partial network operates independent of one another. Each partial network will have activation
criteria used to transition the partial network from an inactive state to an active state and deactivation
criteria used to transition the partial network from an active state to an inactive state. Local activation
takes precedence over remotely activated. PARTIAL_NETWORK_MANAGEMENT_MONITOR manages
these transitions.
3.3.2.1.3.1 PN()_INACTIVE
Partial networks can be activated from within the ECU (locally) or by another ECU (remotely).
Activating ECUs and Activated ECUs wait a synchronization period of time allowing each to become
receive ready prior to enabling signals for transmission and reception. Once activated signals may be
transmitted, received, and supervised.
Partial network shall become locally active once local activation criteria for the partial network has been
met. [GBCCS668]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Partial network bit in the Network Management Frame shall be set active once the partial network
becomes locally active. [GBCCS669]
Network management shall request full communications once the partial network becomes locally
active. [GBCCS670]
Network management and Partial network timeout timers shall be started once the partial network
becomes locally active. [GBCCS671]
Once the partial network has become locally or remotely activated and a communication
synchronization period has lapsed, PDU groups assigned to the partial networks shall be enabled for
transmit and receive processing. [GBCCS672]
Once the partial network has become locally or remotely activated, supervision for the partial network
shall be enabled for transmit and receive processing. [GBCCS673]
Partial network shall become remotely active once remote activation criteria for the partial network has
been met. [GBCCS674]
3.3.2.1.3.2 PN()_LOCALLY_ACTIVATED
While local activation criteria remain true the partial network remains locally activated. When the ECU
detects local activation criteria is no longer true, it will determine if any other ECU has activated the
partial network before processing deactivation.
Partial network shall no longer be considered locally active once local deactivation criteria for the partial
network has been met. [GBCCS677]
Partial network bit in the Network Management Frame shall be cleared once the partial network is no
longer locally active. [GBCCS678]
ECU shall determine if the partial network is remotely activated before continuing the partial network
deactivation process once the partial network is no longer locally active. [GBCCS679]
3.3.2.1.3.3 PN()_REMOTELY_ACTIVATED
While remote activation criteria remain true and the partial network has not been locally activated, the
partial network remains remotely activated. If the partial network becomes locally activated the partial
network transitions to the locally activated state. When the ECU detects neither remote nor local
activation criteria are true and the partial network timeout timer has expired, it will consider the partial
network deactivated. Once deactivated signals will no longer be transmitted, received, or supervised.
After the partial network has been deactivated for a period of time the partial network cluster will be
considered inactive.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Partial network shall remain remotely active as long as remote activation criteria for the partial network
are being met. [GBCCS682]
Partial network shall become locally active once local activation criteria for the partial network has been
met. [GBCCS683]
Partial network bit in the Network Management Frame shall be set active once the partial network
becomes locally active. [GBCCS684]
Network management shall request full communications once the partial network becomes locally
active. [GBCCS685]
Network Management and Partial network timeout timer shall be started once the partial network
becomes locally active. [GBCCS686]
Once the partial network has become locally activated, PDU groups assigned to the partial networks
shall be enabled for transmit and receive processing. [GBCCS687]
Once the partial network has become locally activated, supervision for the partial network shall be
enabled for transmit and receive processing. [GBCCS688]
Partial network shall be deactivated once the partial network timeout timer is expired. [GBCCS689]
PDU groups assigned to the partial networks shall be disabled for transmit and receive processing once
the partial network becomes deactivated. [GBCCS690]
Supervision for the partial networks shall be disabled for transmit and receive processing once the
partial network becomes deactivated. [GBCCS691]
Partial network shall become inactive after a stabilization period has lapsed. [GBCCS692]
The following figure contains additional detail of the COMM_ACTIVE state. COMM_ACTIVE contains
three concurrent processes:
BUS_OFF_MONITOR_ACTIVE, responsible for monitoring specific error indications from the CAN
controller
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
COMM_ACTIVE
COMMUMUNICATION_ACTIVE
TX_ONLINE
Detect FRAME()_Tx_REQ and
FRAME() PDU group(s) = ACTIVE and
SUPERSET_CAL = ENABLED /
TX_MODE = OFFLINE Transmit Frame;
DIAGNOSTIC_COMMAND_MONITOR_ACTIVE
BUS_OFF_MONITOR_ACTIVE
TX_MODE = ONLINE
RX_ONLINE
Detect FRAME()_Rx and
FRAME() PDU group(s) = ACTIVE and
RX_MODE = OFFLINE / SUPERSET_CAL = ENABLED /
Stop FRAME()_DEADLINE_MONITOR; Start FRAME()_DEADLINE_MONITOR;
RX_OFFLINE
3.3.2.2.1 BUS_OFF_MONITOR_ACTIVE
While actively communicating, the possibility of CAN errors exists. When the CAN hardware detects
these errors, error notifications occur and the errors are managed. BUS_OFF_MONITOR_ACTIVE
contains the logic for processing these notifications. Depending on the error CAN communication may
be suspended in accordance to ISO11898 and for some configurable amount of time thereafter in an
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
attempt to limit the faulty ECU’s exposure to the network. Multi-network ECUs will have the ability to
monitor and manage CAN error conditions for each of its CAN channels.
BUS_OFF_MONITOR_ACTIVE
Detect BUS_OFF_OCCURANCE_COUNTER >= L1_TO_L2 /
Detect ERROR_PASSIVE /
Set BUS_OFF_DELAY_TIME == L2;
Notify ERROR_PASSIVE;
/ Set BUS_OFF_DELAY_TIME == L1;
Reset BUS_OFF_OCCURANCE_COUNTER
AWAITING_BUS_OFF
Detect BUS_OFF/
Notify BUS_OFF;
Detect BUS_OFF_DELAY_TIMEOUT /
Set TX_MODE == ONLINE
Increment BUS_OFF_OCCURANCE_COUNTER;
BUS_OFF_DELAY RESET_DLL
Detect DLL_RESET_COMPLETE / (still observes ISO11898 bus off recovery rules)
Set TX_MODE == OFFLINE
The ECU shall detect and react to ISO 11898 compliant notifications of “bus off”. [GBCCS704]
When a bus off condition is detected, the application shall be notified. [GBCCS706]
When a bus off condition is detected, the ECU shall reset its DLL suspending communications until
ISO11898 compliant bus off recovery has been observed. [GBCCS707]
ECU shall continue to suspend communications for a configurable amount of bus off delay time.
[GBCCS708]
ECU shall resume communications once bus off delay time has expired. [GBCCS709]
Once the ECU has experienced a configurable amount of bus off conditions the bus off delay time shall
be extended. [GBCCS710]
3.3.2.2.2 DIAGNOSTIC_COMMAND_MONITOR_ACTIVE
ECU must activate communications whenever service/diagnostic requests are received and deactivate
communications once the service/diagnostic request has been responded. If a service/diagnostic
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
procedure must be executed and the procedure cannot be reliably executed while the ECU performs its
normal communication, then the ECU’s may receive a request to halt normal communications.
NORMAL_COMM_HALT_MONITOR_ACTIVE is responsible for providing the service that halts and re-
enables normal communication.
DIAGNOSTIC_COMMAND_MONITOR_ACTIVE
/DCM_REQ == DEACTIVE;
AWAITING_DCM_COMMAND_REQ
PROCESSING_DCM_COMMAND
When ECU determines a service/diagnostic session no longer requires active communications, active
communications shall be rescinded. [GBCCS716]
When ECU detects a request to halt all communication channels, all communication channels shall be
halted.
When ECU detects a request to halt a specific communication channel, the specific communication
channel shall be halted.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
When ECU detects a request to re-enable all communication channels, all communication channels shall
be re-enabled.
When ECU detects a request to re-enable a specific communication channel, the specific communication
channel shall be re-enabled.
3.3.2.2.3 COMMUNICATION_ACTIVE
The ECU is configured with a set of communication messages. The entire set of messages may or may
not apply to all vehicles the ECU can be used within; subsets of messages that can or cannot be actively
communicated or monitored are supported. Messages that are configured in an active subset and have
met their transmit model requirements will be transmitted. Supervision deadline monitors are serviced
upon message reception.
The Payload Signal Initialization Completion Time is the time to transmit all signals assigned to a partial
network at least once when that partial network is activated. This time begins with last frame of the
wakeup pattern.
Activated ECUs and Activating ECUs should complete the transmission of all messages assigned to a
Partial Network within the Payload Signal Initialization Completion Time.
A = Maximum number of functional message ids possible in system less any message ids reserved for
diagnostic communication
B = 25% = percentage of ids that can be used in system with 75% bus loading limit
C = Time it takes to transmit a message with an 11 bit header, 8 bytes of data, and worst case bit stuffing
D = Assume 25% of transmits are initial transmits for 500 kbps networks (not repeats due to periodic
transmit model) and 50% for 125 kbps networks
3.3.2.2.3.1 TX_ONLINE
Message transmission is enabled in this state.
ECU shall transmit a message once it has met its transmit model requirements provided it has been
configured for transmit in that vehicle’s configuration and at least one of the message’s assigned partial
networks are active. [GBCCS726]
Communication channel shall disable transmitting capabilities when TX_MODE = OFFLINE. [GBCCS727]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
ECU shall transmit all messages that are configured in an active partial network and have met their
transmit model requirements within the Payload Signal Initialization Completion Time. [GBCCS1499]
3.3.2.2.3.2 TX_OFFLINE
Message transmission is disabled in this state.
Communication channel shall enable transmitting capabilities when TX_MODE = ONLINE. [GBCCS730]
3.3.2.2.3.3 RX_ONLINE
Message reception and deadline monitoring is enabled in this state.
Receive message deadline monitoring shall be active when full communication capable provided it has
been configured for reception in that vehicle’s configuration and at least one of the message’s assigned
partial networks are active. [GBCCS734]
ECU shall receive a message provided it has been configured for reception in that vehicle’s configuration
and at least one of the message’s assigned partial networks are active. [GBCCS735]
ECU shall reset receive message deadline monitoring upon message reception provided it has been
configured for reception in that vehicle’s configuration and at least one of the message’s assigned
partial networks are active. [GBCCS736]
Communication channel shall disable message reception capabilities when RX_MODE = OFFLINE.
[GBCCS737]
Receive message deadline monitoring shall be disabled when RX_MODE = OFFLINE. [GBCCS738]
3.3.2.2.3.4 RX_OFFLINE
Message reception and deadline monitoring is disabled in this state.
Communication channel shall enable reception capabilities when RX_MODE = ONLINE provided at least
one of the ECU’s assigned partial networks are active. [GBCCS741]
Communication channel shall enable Receive message deadline monitoring when RX_MODE = ONLINE
provided at least one of the ECU’s assigned partial networks are active. [GBCCS742]
When the activating ECU assesses activation criteria to be true it transmits a wakeup pattern to
activate the other partial network cluster members.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
The activating ECU then waits a predefined amount of time to allow the other partial network
cluster members time to react to the wakeup pattern and become receive ready.
Once the wait period lapses the activating ECU assumes that all the other partial network cluster
members are able to receive the Network Management Frame indicating which partial network
is to become active.
Activating ECU transmits the Network Management Frame, indicating which partial network is
to become active.
Once partial network cluster members have received and processed the Network Management
Frame they are able to actively communicate.
Partial network cluster members continue to communicate until the partial network times out.
The following figure illustrates the activation process when the network transitions from inactive to
active.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
PN ACTIVATING PN ACTIVATED
PN init
Active_Synch_Time
xcvr sync + NM xmit + rcvr’s rdy + 10ms
NM Passive_Synch_Time
t0 ECU dependent: 0 - 60ms
PN timer 1) PN and NM Timers are reset everytime NM frame xmit’d, 2) NM timer is longer than PN timer since it must stay active whenever any Comm port is active.
Passive_Synch_
Time
Activating ECU shall monitor and assess activation criteria and react when it becomes true (local
activation) by implementation of SUM_PNC. [GBCCS755]
Activating ECU shall set the partial network bit in the Network Management Frame to active (1) once
activation criteria are true. [GBCCS756]
Activating ECU shall transmit a wakeup pattern once PN activation criteria are true. [GBCCS757]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Activating ECU shall transmit the Network Management Frames cyclically for a predetermined period of
time as the wakeup pattern and to notify ECUs which partial network is being activated.
Rationale: Network members require a period of time to react to the wakeup pattern and become
receive ready. To accommodate the range times it may take ECUs to become receive ready, the
Network Management Frame will be transmitted a fixed number of times. [GBCCS1885]
Activating ECU shall not clear the PN bit for an activated PN until the Repeat Message Time expires.
[GBCCS1886]
Activating ECU shall enable for transmit and receive PDU groups assigned to the partial network after
waiting a predetermined period of time for the other network members to become receive ready.
[GBCCS760]
Activating ECU shall enable supervision for PDU groups assigned to the partial network after waiting a
predetermined period of time for the other network members to become receive ready. [GBCCS761]
Activating ECU shall continue to transmit the Network Management Frame cyclically as long as
deactivation criteria are not true. [GBCCS762]
Activating ECU shall reset the partial network timer each time the Network Management Frame is
transmitted with the partial network bit set active. [GBCCS763]
Activating ECU shall reset the network management timer each time the Network Management Frame is
transmitted with the partial network bit set active. [GBCCS764]
Activated ECU shall wakeup and become receive ready in a predefined amount of time following the
reception of a partial network wakeup pattern. [GBCCS767]
Activated ECU shall receive and process Network Management Frames. [GBCCS768]
Activated ECU shall reset the partial network timer each time the Network Management Frame is
received with the partial network bit set active. [GBCCS769]
Activated ECU shall reset the network management timer each time the Network Management Frame is
received with the partial network bit set active. [GBCCS770]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Activated ECU shall enable for transmit and receive PDU groups assigned to the partial network.
[GBCCS771]
Activated ECU shall enable supervision for PDU groups assigned to the partial network. [GBCCS772]
Activated ECU shall enable the receive PDUs for a Partial Network (PN) each and every time a Network
Management Frame for that PN is received once the Repeat Message State expires. [GBCCS1835]
The following figure summarizes the interfaces uses for transmitting and receiving signals.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
APPL
SUM_xxxx F(x)
AUTOSAR
RTE STACK
Com_SendSignal
Com_SendSignalGroup
Com_ReceiveSignal
Com
PduR_ComTransmit
Com_RxIndication
PduR
CanIf_Transmit
PduR_CanRxIndication
CanIf
CAN_Write
CanIf_RxIndication
CANDriver
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
All undefined bits in a frame shall be initialized and transmitted always with the value ‘0’ (zero).
[GBCCS784]
All unused signals in a frame shall be initialized and transmitted always with the value ‘0’ (zero).
[GBCCS785]
Each message containing event triggered signals shall have a configurable minimum delay time (MDT)
that must lapse before a consecutive transmit may occur. [GBCCS788]
Rationale: Messages may have multiple transmit criteria resulting in the message being transmitted
quite often. MDT regulates how often a message will actually be transmitted.
All message transmit requests which occur before the MDT has elapsed shall be satisfied with a single
message transmission which occurs once the MDT has elapsed. [GBCCS790]
Each message shall have a configurable confirmation response capable of notifying successful and
unsuccessful message transmission. [GBCCS791]
Rational: Applications whose operation requires transmission of all signal state transitions must make
sequential transmit requests only after prior states have been successfully transmitted.
Multiple byte signals shall be placed into messages without the possibility of an interrupt occurring
between the writing of each individual byte. [GBCCS795]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Signal data shall be transmitted using endianness encoding specified in the Data Dictionary. [GBCCS797]
3.3.3.1.4.1 Periodic
Periodic messages shall be transmitted at a fixed periodic interval (repetition rate) whenever at least
one of its assigned Partial Network(s) are active (see Figure 15). [GBCCS802]
ECUs shall transmit messages at a periodic rate slower than the specified rate if the ECU software timing
can't meet the specified rate. Examples: transmitting at 12.5 ms instead of 10 ms or 25 ms instead of 20
ms. [GBCCS1887]
Periodic message interval accuracy shall be within ± 10% of the repetition rate measured with the device
in isolation. [GBCCS803]
Periodic messages shall begin cyclic transmission after a specified offset time has lapsed.
Rationale: Offset time provides the network designer an opportunity to stagger the start points of
periodic messages in an effort to avoid transmit burst situations. [GBCCS1757]
Message
Transmission
Enabled
Offset
Time
Periodic Interval Periodic Interval Periodic Interval
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
The Periodic interval should be chosen to ensure that consuming functions’ requirements are met, but
not faster than a transmitting application is capable of producing fresh data.
3.3.3.1.4.2 Event
Event messages shall be transmitted once transmit criteria are evaluated true. (see Figure 16).
Rationale: There are numerous forms of transmit criteria for event messages. Some examples include
but are not limited to:
a) after a certain amount of change has been detected in a signal value (send-on-change),
b) after an enabling condition has evaluated true and a timer has elapsed (periodic-when-enabled).
[GBCCS1758]
Consecutive transmissions of an event message shall occur once the MDT has lapsed. [GBCCS812]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
2. Where there is no need (or value) in retransmitting a signal if a receiver may have missed the
message reception
3. Where the operator is in the loop
The Minimum Delay Time should be chosen to ensure that consuming functions’ requirements are met,
but not faster than a transmitting application is capable of producing fresh data.
3.3.3.1.4.3 Periodic+Event
Periodic+Event messages shall have the transmit characteristics of both the Periodic transmit model and
the Event transmit model. [GBCCS1017]
Consecutive transmissions of a Periodic+Event message shall occur once the MDT has lapsed.
[GBCCS1018]
Periodic+Event message MDT shall be less than the periodic interval minus its negative tolerance.
[GBCCS1019]
The Periodic Interval and Minimum Delay Time should be chosen to ensure that consuming functions’
requirements are met, but not faster than a transmitting application is capable of producing fresh data.
3.3.3.1.4.4 Poll/Response
Response message shall be transmitted once poll message has been received and data for response
message is ready for transmit. [GBCCS1020]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Functional behavior:
Input:
f(x):
Processing:
Transferring from one network to another done at frame level not signal level.
Output:
Frame with signals passed exactly how received on the destination network.
Functional behavior:
Input:
f(x):
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Processing:
Apply appropriate header info or “carrier” data to the original frame for the network(s) where
it is re-broadcast.
Transferring from one network to another network is done at frame level not signal level.
Ouput:
Frame with signals passed exactly how received on the destination network(s).
Example: One frame is received with 5 parameters, FRAMExx:(A,B,C,D,E). Two frames are transmitted
on a different network each containing some signals from the original frame: FRAMEyy:(A) and
FRAMEzz:(D,C).
Functional behavior:
Input:
f(x):
Processing:
Application gets signal from one network, puts it onto destination network
Output:
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Example: Two frames are received from different sources FRAMEyy:(A,B,C) and FRAMEzz:(D,E,F). One
frame is transmitted FRAMExx:(C,F,E).
Functional behavior:
Input:
f(x):
Processing:
Application gets signals from one network, puts them onto destination network
Output:
Signals are combined with others and broadcast in appropriate frames on the destination
network.
Example: Two frames are received FRAMExx:(A,B) and FRAME:(C,D). Data is distributed, combined, and
transmitted in three new frames FRAMEaa:(A), FRAMEbb:(B,D), and FRAMEcc:(C)
Functional behavior:
Input:
f(x):
Processing:
Application gets signals from one network, puts them onto destination network
Output:
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Signals are combined and distributed with others in appropriate frames on the destination
network.
A signal is received on one network and sent on another network in a different representation (ex.
scaled differently). Transforming data transfer model results in a One-to-One relationship with data
received to data transmitted.
Functional behavior:
Input:
f(x):
Processing:
Application gets signal from network
Output:
Example: Receive two individual wheel speeds, calculate and transmit an averaged wheel speed.
Functional behavior:
Input:
f(x):
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Processing:
Application gets signals from network
Output:
Functional behavior:
Input:
f(x):
Processing:
Application performs analysis on information about the signal
Output:
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Rationale: The ECU may be designed to receive a set of messages into a single CAN object. The ECU
must be capable of emptying the receive buffer quick enough to avoid an overrun condition. Since
messages are transmitted asynchronously, operating conditions may exist where all the messages
present on the network during 100% network bandwidth utilization must be received by the ECU.
[GBCCS1767]
The ECU shall have a configurable notification capable of indicating when an overrun condition has
occurred. [GBCCS919]
The ECU shall discard, without processing, any received REMOTE FRAME messages it does not explicitly
support. [GBCCS920]
The ECU shall discard, without processing, any received EXTENDED IDENTIFIER messages it does not
explicitly support. [GBCCS921]
The ECU shall receive a message with more data bytes than expected, but shall only process the signals
it was configured to receive. [GBCCS925]
The ECU shall discard a message with less data bytes than expected. The signals in the shorter than
expected message will not be processed. [GBCCS1286]
The related Mask signal, if applicable, shall be set to "Use Data". [GBCCS1712]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Signal supervision, if applicable, shall not have detected a deadline monitoring failure. [GBCCS1714]
The Security Check, if applicable, shall not have detected a failure. [GBCCS1715]
The Safety Check, if applicable, shall not have detected a failure. [GBCCS1716]
Rationale: The deadline time value is dependent on the application’s functional response time of the
received signal. The periodic interval of a signal is set to satisfy the application’s functional response
time. Generally an application is tolerant to one missed signal reception. Therefore as a general rule of
thumb the network designer can set the deadline time to a value greater than two times the signal’s
periodic interval, e.g. 2.5 times the slowest possible periodic interval of the signal. [GBCCS1768]
Signal deadline monitoring shall begin whenever at least one of the received signal’s Partial Networks
are active. [GBCCS935]
A supervised received signal shall have failed supervision when not received by a specified deadline, e.g.
a deadline timeout occurs. [GBCCS936]
Note: Deadline monitoring for a self-supervised signal can only be achieved when the message it is
framed within is transmitted with either a Periodic or Periodic+Event transmit model. [GBCCS1769]
Rationale: Some signals require no failsofting or error recovery processing. Typically these are signals
which fall into one of the following categories: [GBCCS1770]
Operator in the loop (ones where an operator causes the event which triggers a signal for transmit);
Signals that have constant value. For instance, a signal indicating transmission type, which is, sent once
during an ignition cycle, but which cannot change.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Signals for which the last received value or the power up default is the desired substitute value when
the signal is not received.
A received signal shall have a configurable notification capable of indicating when it has failed
supervision. [GBCCS948]
Application shall have a defined data failsofting process to follow when it detects failed signal
supervision for the expected receive signal.
Rationale: Notifying the application when supervision fails allows the application to determine which
applicable data falisofting steps are to be taken. Some examples include… utilizing some other data
signal(s) in the algorithm, execute an alternative algorithm, or apply an application specific substitution
value. [GBCCS1771]
ECUs transmitting data shall transmit at least one periodic message in every partial network it provides
data. [GBCCS953]
ECUs supervising received data sources shall have a configurable reception deadline monitor assigned to
one of the periodic messages being transmitted by the data source in a particular partial network: ECU
deadline monitor. [GBCCS954]
ECU deadline monitoring shall begin when the partial network for the monitored periodic message being
transmitted by the data source is active. [GBCCS956]
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
A supervised data source shall have failed supervision when a deadline timeout occurs. [GBCCS957]
A configurable notification shall be made in the event a deadline timeout occurs. [GBCCS958]
A Loss of Comm Fault Active signal is a signal used for supervising ECUs that cannot be supervised
directly since they are located on different networks. There will be some signals defined whose purpose
will be to represent the availability of these ECUs on the other networks.
When the gateway detects a signal supervision timeout for the signal which has been assigned for
supervision of a certain ECU, then it shall set the corresponding value of the Loss of Comm Fault Active
signal per the requirements in GB8002. [GBCCS1810]
The activating ECU assesses the deactivation criteria as true and transmits a Network
Management Frame with the appropriate partial network bit set to zero.
If the activating ECU is no longer activating any partial networks it will stop transmitting the
Network Management Frame.
Activating ECU transmitting the Network Management Frame with the partial network set to
inactive, will not reset the partial network timer.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Partial network cluster members receiving the Network Management Frame with the partial
network set inactive, will not reset the partial network timer.
Partial network cluster members not receiving the Network Management Frame will continue to
count down the partial network timer.
When the partial network timer expires the partial network is considered inactive.
When the partial network timer expires partial network cluster members will no longer transmit
nor expect to receive signals that were assigned to that partial network.
When all the ECU’s partial networks are inactive network management is no longer active.
ECU shall disable supervision for PDU groups assigned to the partial network after the partial network
timer expires. [GBCCS1491]
ECU shall disable for transmit and receive PDU groups assigned to the partial network after the partial
network timer expires. [GBCCS1474]
The following figure illustrates the activation process when the network transitions from active to
inactive.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
NMF (PN2) NMF (PN3) NMF are transmitted asynchronously but with a
periodic interval set to CanNmMsgCycleTime
PN1Timer PNTimer is reset to CanNmPnResetTime whenever a NMF is received with the PN bit set
Prepare PNC1 Sleep Timer Prepare PNC Sleep Timer is set to ComMPncPrepareSleepTimer
and is started after PN Timer expires.
PN2Timer
PN3Timer
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
Bus off recovery is done as defined in ISO11898. Bus off monitoring tracks the number of times the
faulty ECU experiences a bus off. When the faulty ECU has exceeded a defined number of bus off
occurrences CAN communication will be prohibited beyond the ISO11898 definition in an attempt to
limit the faulty ECU’s exposure to the network. Bus off recovery will follow once a defined delay period
has lapsed.
ECUs supervising messages from the faulty ECU continue to monitor for message reception and react to
deadline monitor timeouts while the faulty ECU recovers from the bus off.
GB5200_CAN_Communication_Strategy_Specification.do
CAN Strategy Development Team
cx
GB5200 II
4 Appendix A
The following conventions are used in the state transition diagrams throughout the document:
State transition labels utilize the character “/” to separate the transition conditional description from
the actions to be taken as a result of the executing the transition.
States that hierarchically contain other state diagrams are referred to as “super-states” or “parent
states”. The states contained within them are called “sub-states” or “child states”.
States that contain multiple state diagrams that execute in parallel are labeled with a “file tab” on the
enclosing state. Such states are called “and-states”.
The parallel activities within an and-state are separated graphically by a dashed line. Each of these
activities starts simultaneously upon entry to the and-state.
The symbol “” is used to denote the default, or initial state. The state diagram begins execution in
this state. This symbol also denotes the starting state for state diagrams contained within and-states or
super-states when a transition occurs to the enclosing and or super state.
An exit condition on a super-state or on an and-state is equivalent to having the same exit condition
applied to every sub-state in the and-state or super-state.
The diagrams contained within a super-state or and-state begin executing (at the default state) when
the enclosing state is entered and stop executing when the enclosing state is exited.
Super-states are shaded gray when their sub-states are graphically represented elsewhere in the
document
The symbol “==” is used when variables are assigned values. The symbol “=” is used when a logical
evaluation is being performed.