• No results found

CAN FD and Partial Networking

N/A
N/A
Protected

Academic year: 2021

Share "CAN FD and Partial Networking"

Copied!
48
0
0

Loading.... (view fulltext now)

Full text

(1)

Ingo Kissel

FAE/Marketing In-Vehicle Networking

CAN FD and Partial Networking

(2)

• Automotive Networking Overview

• CAN FD Basics

• Partial Networking Basics

• Impact on Physical Layer

(3)
(4)

Two Challenges for Car Networks: Speed and Security

Powertrain Chassis

Safety

Infotainment

Full network exposed to attacks

(LOW protection level)

Gateway limits impact Unprotected sub-networks

(MEDIUM protection level)

Isolated systems

Domain GWs w/ controlled access

(HIGH protection level)

GATEWAY CAN FD FlexRay HS-CAN GW GW GW GW GW Today 2020 2025 IVN TODAY

All classic CAN

IVN TOMORROW

CAN FD, Ethernet

<< HURDLES >>

(5)

Towards Autonomous Drive: a Car Network Today Door control front left Door control front right Door control rear left Door control rear right Park heating Park assistance Ambient lighting Front power module left front power module right energy manager HVAC rear TPMS Antenna Car Access module Wiper Control dashboard Seat control Steering sensors angle/torque Gateway /

Body (Domain)Control Module

Engine control Stability control Transmission control Damping control (Adaptive) Cruise control Headlight control Anti-lock brake Battery management rain light sensor immo lighting switch start/stop CAN (FD) LIN FlexRay Ethernet Diagnosis Surround View Cam 1 Cam 4 Cam 2 Cam 3 Radar Unit Sens1 Sens 4 Sens 2 Sens 3 ADAS Unit Remote Tuner Amplifier Display Front Display Rear Display Rear Telematics Box Window Mirror Powertrain/Chassis Unit Gateway /

Body (Domain)Control Module

Backbone Head Unit 2B NODES IN 2014 4B NODES IN 2020 OVERGROWING AUTOMOTIVE MARKET

KEY ENABLER FOR ALL CAR INNOVATION

(6)

Why Automotive OEMs Look to CAN FD

Accelerate bandwidth in general operation

− New and increasingly complex functions being introduced

+ Consolidation of computing power and increasingly distributed functions

Accelerate ECU Flashing in production

− ECUs need to be flashed as quick as possible, without EMC constraints

Security introduction will require larger payloads

− Signatures and encryption will not be feasible / insufficient with 8-bytes (64-bit) frames.

(7)
(8)

DSI – PSI5 100M 20K 10M 1M 125K Comm uni c ati on Band w idth [ bi t/s ] Backbones, Diagnosis Multimedia

Increasing Bandwidth at Limited Cost

8M CAN FD CAN-HS 500kbps CDMA Arbitration Differential, Immune FlexRay time triggered TDMA Fault Tolerant ETH 100/1000BT1 MOST, USB, 1394-Firewire LIN/J2602 time triggered Fault Tolerant, By Wire Applications Safety, Sensors Global Standard Flexible Data • Increase bandwidth (x4, x8, x16)

• Low impact on Network Architecture & Cost

(9)

Net Bit Rate - CAN vs. CAN FD • 500 kBps in arbitration

−500 kBps in fast phase

− 2MBps in fast phase

• 500 kBps in arbitration

– 8 byte in fast phase

– 64 byte in fast phase

N et b it rate [ M B p s ] N et b it rate [M B p s ]

Number of data bytes per frame Fast phase bit rate [kBps]

(10)

CAN FD – Boosting Traditional CAN

Classic CAN Arbitration

phase Data phase (8byte) CRC EOF

CAN FD Arbitration phase Data phase (8byte) CRC EOF

CAN FD decouples bit rates in arbitration and data phase

Slower arbitration allows for more cable length, faster data phase keeps net bit rate unchanged!

Data phase (64byte) Arbitration phase

C R C

EOF

CAN FD allows up to 64 data bytes

CAN FD

CAN FD Arbitration

phase Data phase (64byte)

C R C

EOF CAN FD Arbitration

phase Data phase (64byte)

You have the freedom to choose independently:

(11)

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1)

SOF

(12)

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1)

SOF Identifier

Identifier: 11-bit or 29-bit

(13)

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1)

SOF Identifier RTR

RTR: remote transmit request

(14)

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1)

SOF Identifier RTR IDE

IDE: Identifier Extension

(15)

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1)

• The CAN FD frame format

SOF Identifier RTR IDE r0

r0: Reserved Bit

(r0 is dominant)

SOF Identifier RTR IDE FDF

FDF: FD frame format Bit

(FDF is recessive)

(earlier this bit was called EDL) CAN and CAN FD frames start identically

(16)

ESI BRS

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1) – DLC: data length code

• The CAN FD frame format – DLC: data length code

SOF Identifier RTR IDE r0 0: 0 bytes data

1: 1 bytes data 2: 2 bytes data 3: 3 bytes data 4: 4 bytes data 5: 5 bytes data 6: 6 bytes data 7: 7 bytes data 8: 8 bytes data 9…15: 8 byte data

SOF Identifier RTR IDE FDF

DLC

r0 0…8: like CAN, see above

9: 12 byte data 10: 16 byte data 11:20 byte data 12: 24byte data 13: 32byte data DLC R0, BRS and ESI will be explained later

(17)

ESI BRS

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1) – CRC

• The CAN FD frame format – CRC

SOF Identifier RTR IDE r0

SOF Identifier RTR IDE FDF

DLC

r0

15 bits CRC are added to achieve a Hamming distance of HD=6; stuff bits are not taken into account in CRC calculation. The results in a reduced HD of stuffed CAN frames.

DLC

CRC (15Bit)

CRC (17Bit) (DLC: 0…10) CRC (21 bit) (DLC: 11…15)

17 or 21 bits CRC are added depending on DLC. Stuff bits are

taken into account, resulting in a Hamming distance of HD=6 of the

stuffed CAN frame

(18)

ESI BRS

CAN FD – up to 64 Bytes of Data per Frame • The CAN frame format (ISO11898-1)

• The CAN FD frame format – Error State Indicator: ESI / Reserved Bit: r0

SOF Identifier RTR IDE r0

SOF Identifier RTR IDE FDF

DLC

r0 DLC

(19)

CAN FD Bit Timing • The CAN frame format (ISO11898-1)

• The CAN FD frame format – Bit Rate Switch: BRS

SOF Identifier RTR IDE r0

SOF Identifier RTR IDE

DLC

ESI BRS

FDF r0 DLC

BRS: can be used to switch to a higher bit rate by means of a new bit timing

(20)

Bit time BRS bit =

CAN FD Bit Timing

• At the sampling point of the BRS bit the CAN FD controller changes

the bit timing to “fast”, if BRS is recessive

FDF r0 BRS

e.g. 500kBit/s e.g. 2MBit/s

(21)

Bit time CRC Delimiter bit =

500ns x 60% + 2000ns x (1 - 80%) = 700ns

(Assumption: Sample point in arbitration phase = 80% Sample point in fast phase = 60%)

CAN FD Bit Timing

• At the sampling point of the CRC delimiter CAN FD controller changes

the bit timing back to “slow”

CRC Delimiter

Acknow-ledge End of frame

e.g. 500kBit/s e.g. 2MBit/s

(22)

CAN FD – FD Active

• Traditional HS CAN controllers cannot send CAN FD frames.

• Enabling a node to send CAN FD frames means: changing the µC.

• Traditional HS CAN controllers cannot receive CAN FD frames.

• A HS CAN controller would invalidate any CAN FD frame by sending an error frame. Thus preventing CAN FD communication.

(23)

CAN FD – FD Passive

• A mix of CAN and CAN FD controllers is only operable if the CAN

nodes are made passive for the periods in that CAN FD frames are on the bus.

− Use case:

CAN communication during normal operation.

CAN FD communication only during SW download for that part of the network that can handle CAN FD frames.

− Solution:

Use TJA1145FD partial networking transceivers in the CAN nodes. These can be set into partial

(24)
(25)

CAN Networking

Technical Principle

Wake up behavior according ISO 11898-5

All ECUs are woken-up by any activity on the bus (global wake-up)

ECU 2 ECU 3 ECU 4 ECU 5

ECU X ECU active

Typical applications:

(26)

Partial Networking

Generic Idea of “Partial Networking”

Without Partial Networking: With Partial Networking:

PN-enabled networks are capable of operating only those parts of a network that are functionally required at a given time

(27)

Partial Networking

Technical Principle

Wake up behavior according ISO 11898-6

Partial Networking is the ability to operate certain parts of a network while others remain inactive

Normal Bus traffic does not wake up a partial network enabled ECU

ECU 2 ECU 3 ECU 4 ECU 5

PN enabled ECU wakes up only when a defined wake-up message is received

ECU X ECU X

ECU active

ECU in sleep mode

Typical applications:

(28)
(29)

Partial Networking – Wake Up

Identifier

Wake Up Message defined by Identifier and DLCIdentifier:

Use of 11 bit or 29 bit Identifier

Single identifier (all 11/29 bits are defined)

−Group of identifiers (min one bit don´t care)

relevant

Irrelevant

Mask: Certain ID bits are irrelevant Example: 11 bit Identifier

Mask: All ID bits are relevant

Example configuration

11bit ID

ID Range: 0x1A0 – 0x1A7 Binary: 001 1010 0xxx

(30)

Partial Networking – Wake Up

Data Length Code

Data Length Code (DLC)

−0 … 8: Defines the length of the wake message in Byte‘s

Expected Data length and received data length have to be equivalent to identify a valid Wake message

Example configuration

Data length: 1 Byte = 8 Bit

(31)

Partial Networking – Wake Up

Addressing Groups (Data Field)

Addressing (Data Field) −Is irrelevant if DLC=0

Every single bit is used to address a dedicated group of CAN nodes (can adress only 1 or up to 64 groups in one message)

−Individual Nodes can be members of 1 or more groups

Example configuration

Group 1: Node 1, Node 2 Group 2: Node 5

(32)

Partial Networking – Wake Up Wake-Up process/workflow DLC 0 0 1 1 0 1 0 0 0 1 1 0 0 1 0 1 0 0 0 1 0 0 0 IdentifierDLC Datafield 0 0 1 1 0 1 0 0 0 1 1 0 0 1 0 1 0 0 0 1 0 0 0 Identifier Datafield

Configuration node 1: ID range: 0x1A0 – 0x1A7, DLC=1, Groups 1, 3

DLC 0 Identifier 0 1 1 0 1 0 0 X X X 0 0 0 1 1 0 1 0 0 0 0 0 1 2 3 4 5 6 7 8 Groups DLC 0 0 1 1 0 1 0 0 X X X 0 0 0 1 1 0 0 1 0 0 0 0 Identifier Groups 1 2 3 4 5 6 7 8

Configuration node 2: ID range: 0x1A0 – 0x1A7, DLC=1, Groups 1, 4

(33)

Partial Networking – Wake Up Wake-Up process/workflow

DLC

0 0 1 1 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 1 0 0 0

Identifier Datafield

Configuration node 1: ID range: 0x1A0 – 0x1A7, DLC=1, Groups 1, 3

1 2 3 4 5 6 7 8 DLC 0 Identifier 0 1 1 0 1 0 0 X X X 0 0 0 1 1 0 1 0 0 0 0 0 Groups DLC 0 0 1 1 0 1 0 0 X X X 0 0 0 1 1 0 0 1 0 0 0 0 Identifier Groups 1 2 3 4 5 6 7 8

Configuration node 2: ID range: 0x1A0 – 0x1A7, DLC=1, Groups 1, 4

Received message:

matchmatchmatchmatchmatchmatchmatchmatchdon’t caredon’t caredon’t carematchmatchmatchmatch End of ID and control field:

Complete matchValid wake-up message !

(34)

Partial Networking – Wake Up Wake-Up process/workflow

DLC

0 0 1 1 0 1 0 0 0 1 0 0 0 0 1 0 1 1 1 1 0 0 0

Identifier Datafield

Configuration node 1: ID range: 0x1A0 – 0x1A7, DLC=1, Groups 1, 3

1 2 3 4 5 6 7 8 DLC 0 Identifier 0 1 1 0 1 0 0 X X X 0 0 0 1 1 0 1 0 0 0 0 0 Groups DLC 0 0 1 1 0 1 0 0 X X X 0 0 0 1 1 0 0 1 0 0 0 0 Identifier Groups 1 2 3 4 5 6 7 8

Configuration node 2: ID range: 0x1A0 – 0x1A7, DLC=1, Groups 1, 4

Received message:

No Wake-up!

No Wake-up!

Wake-up

Wake-up

Actually the wake-up happens only in case the CRC has been received correctly.

(35)

Challenges of Introducing CAN FD for General Operation

Core Problem: CAN FD and “Classic” CAN nodes cannot be simply mixed, while not all nodes need bandwidth acceleration Gateway

EPS Cl TCU

ECU

Chassis ADAS Power Train

Gateway

EPS Cl ECU

Chassis ADAS Power Train TCU CAN FD Fast Branch

Classic CAN Network

- Critical nodes at bandwidth limit (either flashing or general use) - Network organised by function

Option 1: CAN FD Fast Branch - Networks organised by technology, not function. - Increased routing via gateway

- Complicated firewall policies

- Lacks scalability

- Sub-optimal wiring solutions

Gateway

EPS Cl TCU

ECU

Chassis ADAS Power Train

Option 2: Update complete branch - Network organised by function

- Legacy nodes updated - Higher development costs

(36)

CAN Flexible Data Impact on ISO11898-6 Physical Layer

Flexible Data passive

CAN Flexible Data frame should not “disturb” Partial Networking transceiver:The circuitry must be designed to avoid “Error Detection” and to prevent the

Frame Error Counter from increasing and falsely waking up the transceiver

Proper detection of “End of frame / Idle detection”

Regular CAN Frame

Idle phase detection (11 recessive bits)

No idle phase detection during the Fast data

CAN FD Frame

(37)

CAN FD Passive: Enhancing Partial Networking TJA1145 offers partial networking

functionality according to ISO11898-6

CAN FD frames will be seen as coding errors and thus TJA1145 will wake-up with error

counter overflow when in partial networking sleep mode

TJA1145FD offers additionally the option to remain in

partial networking sleep mode, when CAN FD frames occur on the bus

CAN FD frames are recognized by their recessive FDF bit and judged as ‘valid CAN frames’ regardless of what comes after the FDF bit

 Partial Partial FD-active

FD-active FD-active Enh partial Enh partial FD-active

Wake-up due to CAN FD traffic  CAN Error Frames No Wake-up due to CAN FD traffic

(38)

CAN FD – bit Rates Above 1 MBps

Classic CAN operation (all nodes)

e.g. during standard operation mode

TJA 1145 FD TJA 1145 FD TJA 1145 FD TJA 1145 FD Classic CAN Classic CAN CAN FD Classic CAN Classic CAN Classic CAN C lassic C AN – 50 0kB it /s CAN FD TJA 1145 FD

CAN FD operation(limited number of nodes)

e.g. during Software download

or ‘high performance communication modes’

(39)
(40)

ISO Standards Applicable to CAN Physical Layer • CAN Flexible Data and Partial Networking

− Flexible data was incorporated into the new ISO11898-1 specification

− ISO11898 -2, -5, and -6 were merged into the ISO11898-2 specification

− Additional testing will be required for Partial Networking

− Requires better intrinsic Physical Layer performance and functionality

Standards XCVR mode Operation

ISO11898-2 Transmit-Receive (Normal mode) Bi-directional interface to the physical bus

ISO11898-5 Low power mode and wake up Wake up on any CAN frame

(41)

High Speed CAN Physical Layer

Simplified Architecture – ISO11898-2 and -5

(42)

125ns/bit (8Mb/s) TxD CAN 500ns/bit (2Mb/s) X4 2Mb/s TxD RxD CAN Bus Signals at 500 kb/s, 2, 4 and 8 Mb/s

(ISO11898-2 Test Conditions: 60 ohms / 100 pF)

(43)
(44)
(45)

TXD

Vdiff

RXD

CAN FD – Bit Rates Above 1 MBps

Bit rate: 2MBps Slope defined mainly by transceiver Slope defined mainly by network

Same behavior as for 500kBps

500ns

580ns

Dominant bits are prolonged Recessive bits are shortened

500ns

420ns

(46)

CAN FD – Bit Rates Above 1 MBps

Bit rate: 2MBps

RXD

The stable portion of the recessive bits is getting very short!

(47)

New Timing Requirements

Ensure a minimum duration of the recessive level, based on “existing” Physical Layer performances, and -2 -5 testing conditions

(48)

References

Related documents