Réseaux de données - Accueil de l'Intranet IUT...
Transcript of Réseaux de données - Accueil de l'Intranet IUT...
1
RRééseauxseaux de de donndonnééeses
2
Fondamentaux de communication
Les définitions de bases qu’il faut comprendre
� Communication – échange d’information
� Protocole – méthode standardisée de communication
� nœud - un participant d’un réseau
� Les méthodes de communication
– Série - transfert des données, un bit a la fois
� très populaire car peu cher
– e.g.: Ethernet, CAN, LIN
– Parallèle - transfert des données par octet
� plus cher
3
Catégories de communication
� Basée sur la façon dont les nœuds sont connectés
– Intra ECU communication
» Communication entre périphériques et microcontrôleur
– Inter ECU communication
» Communication entre deux contrôleurs (ECU) ou plus
� Basée sur le nombre de nœuds connectés
– Communication « Broadcast »
» L’information est disponible pour tous les nœuds présents sur le réseau
– Communication Point à point
» Seulement entre deux nœuds
4
parallel
serial
Intra ECU communication
5
Inter-Module Communication
6
Multiplexage de donnéesMultiplexage
– Une technique de transmission/réception de données entre différents
nœuds sur un lien / bus commun
– La plupart des bus sont multiplexés
– Le multiplexage est utilisé dans les réseaux complexes
– Le multiplexage permet de réduire le nombre de fils donc le poids
des faisceaux de câblage
– Il existe une possibilité de perte de donnée due aux collisions
– Des techniques variées de synchronisation sont utilisées pour éviter
ou résoudre les collisions
7
Une vision du Multiplexage
IPGauges
8
Le Multiplexage dans l’automobile
Two different Mux systems are shown
RedRed & & BlueBlue
9
Topologie des réseaux
� Etoile
� Anneau
� Point à Point
� Bus
� Arbre
10
Topologie de réseau: Etoile
– Nœud central
– Ajout d’un nœud possible en fonctionnement
– Plus de câble– Nœud central : passage obligé entre 2 machines
⇒ point faible
11
Topologie de réseau: Anneau
– Communication unidirectionnelle– Régénération à chaque nœud
– Extension impossible en fonctionnement– Problème si un nœud tombe en panne :
⇒ chaque nœud est un point faible
12
Topologie de réseau: Point á Point / Bus
Point à Point
Bus– Tous les nœuds sontconnectés directement via
le bus
13
Topologie de réseau: arbre
– Compromis entre étoile et bus
– Défaillance d’un nœud possible sans perturber le réseau
– Extension aisée
14
Standardisation & Classification SAE
Nous avons besoin de protocoles standards pour
– Etablir une compatibilité entre des produits de différents fabricants
– Améliorer la maintenance des logiciels
– Supporter une architecture de réseaux ouverte
La SAE définie les protocoles de communication en 3 classes:
– Classe A
– Classe B
– Classe C
15
Classe A
Classe A
– faible vitesse de transmission (< 10 Kbps).
– faible cout
– exemples UART, E&C, Sinebus, I2C, J1708 / J1587 / J1922, BEAN, CCD, ACP,
UBP TTP/A, LIN.
16
Classe B
Classe B
– utilisée pour des vitesses de transmissions
de faibles à moyennes (10Kb/s to 125
Kb/s).
– exemples Class 2, GMLAN (low speed),
PCI (J1850), SCP (J1850), ISO 11898 (CAN).
17
Classe C
Classe C
– utilisée pour des transmissions a hautes vitesses ( > 125 Kb/s to 1Mb/s).
– pour des applications temps réel
– exemples GMLAN (high), J1939 (250 Kb/s
CAN), J11898.
18
Réseaux automobiles
19
Protocole de bus sériel
� Les données séries sont simplement des
données binaire transportées comme une
suite d’information.
� Le format de cette suite d’information est
défini par le protocole.
� Chaque protocole utilise un logiciel qui
contrôle la communication.
20
Serial Data Bus Nodes
� Le bus est un moyen de transport de
l’information; le plus souvent un câble.
� Chaque module électronique peut être un
nœud indépendant d’un ou plusieurs bus.
� Chaque nœud joue un rôle dans le système
et à des fonctions spécifiques qui font que
le système fonctionne correctement.
� Souvent un nœud a besoin d’information
des autres nœud pour faire son travail
correctement .
21
Bus sériel
� Pour partager de l’information, un nœud doit transmettre des données et au moins un nœud doit les recevoir.
� Le Bus étant sériel, par définition, seul un nœud peut transmettre un bit à un moment donné.
� Les problèmes tels que la contention (deux nœuds ou plus transmettent en même temps) ou les erreurs de donnée doivent être définis et pris en compte par le protocole.
22
Le standard OSI
� Le standard ISO Open Systems Interconnection(OSI) spécifie les fonctions hiérarchiques qui forment les différentes couches des protocoles.
� Les couches sont:
1. Physique (Spécifications mécaniques et électriques)
2. Liaison (Structuration des données sous forme de trames, détection et correction des erreurs)
3. Réseau (Routage, acheminement des données)
4. Transport (Formatage des données sous forme de message)
5. Session (Structuration du dialogue)
6. Présentation (cryptage, format, compression…)
7. Application
23
Couche 1 (physique)
Spécifie le type d’encodage des données
sur le Bus.
Par exemple:
– (1) “Fixed pulse width” – Chaque bit est
encodé sur un même temps de base.
– (2) “Variable pulse width” – l’encodage est
régie par des règles qui font varier le temps de transmission d’un bit.
24
Couche 2 (Liaison)
� – LLC (Logical Link Control)
– Filtrage des messages
– Recouvrement des erreurs bit/trame
– Notification de surcharge
� – MAC (Medium Access)
– Mise en trame, gestion émission/réception
– Détection/signalisation erreur bit
– Arbitrage (gestion des accès simultanés : collisions)
– Temps de latence
– Topologie
25
Serial Data Bus
� Le Protocole spécifie une des méthodes
d’accès au bus pour permettre à un nœud
de communiquer sur le bus sériel.
Les méthodes possibles sont:
– (1) Maitre-Esclave
– (2) Token Slot/Token Ring
– (3) Carrier Sense Multiple Access (CSMA).
26
Serial Data Bus
� La méthode d’accès “Maitre-Esclaves”présente les caractéristiques suivantes:
– (1) Un nœud agit comme “Maitre” les
autres nœuds sont des esclaves.
– (2) Un nœud esclave ne peut pas
transmettre à moins que le maitre ne le
lui demande.
27
Serial Data Bus
La méthode a jeton (Token Slot ou TokenRing:
– (1) Chaque nœud a un intervalle de temps donne pour transmettre son message.
– (2) Le premier nœud utilise son jeton et le passe au nœud suivant.
– (3) Le nœud suivant l’utilise à son tours et le passe au suivant. Ce processus continue tant que le bus est actif.
28
Serial Data Bus
La méthode d’accès multiple à écoute de ligne:
Carrier Sense Multiple Access (CSMA)
– (1) les nœuds écoutent le bus pour savoir si il
est déjà utilisé avant d’essayer de transmettre. Si le bus est déjà pris alors les nœuds
attendent.
– (2) Plus d’un nœud peut commencer à
transmettre en même temps d’où le besoin d’une détection de collision et arbitration.
29
LIN
� LIN
– C’est un protocole de Classe A qui a été
spécifié par un consortium (Audi , BMW , DaimlerChrysler , Motorola, Volcano
Communications Technologies, Volkswagen, Volvo)
– Il utilise la méthode d’accès Maitre-esclaves
� Protocol Device:
– Il utilise les interface UART/SCI des
microcontrôleurs.
30
LIN
Key features of LIN:
– Single Master, Multiple Slave protocol
– Multicast reception
– Baud rate of 2 - 20kbps
– Self baud synchronization without quartz
or ceramic resonator in slave nœuds
– Single wire bus (physical layer similar to
Keyword))
31
LIN
Limitations
– Maximum bus speed - 20 kbps
– Software intensive:
» Byte by byte reception.
» Framing of message.
» Validation of message.
» Synchronization.
32
33
CAN Overview
� CAN - Controller Area Network
– Serial data link protocol
– Suitable for real-time, critical, vehicle control applications
– Supports multicast without routing (all nodes receive all
messages)
– Automatic retransmission of corrupted messages
– High level of error detection (< 10^-10)
� CAN INVENTED BY BOSCH
– Early 1980’s (joined with Intel in 1985)
– For automotive use
– In use since 1991 model year by Mercedes S-Class
34
CAN Overview
� Three CAN buses were originally defined
– High-Speed Differential (Dual wire)
» Intended for real time control
» Operates at 500 kbits/sec
– Mid-Speed Fault Tolerant Differential (Dual wire)
» Intended for large data transfers
» Operates at 125 kbits/sec
» Automatically switch to single wire reception when fault detected
– Low-Speed (Single wire)
» Intended for low frequency functions or operator functions
» Operates at 33.33 kbits/sec
» With enhanced wakeup capability
35
Signal Encoding
� SIGNAL ENCODING
– Non-Return to Zero - Five (NRZ-5)
– Each bit is either ‘dominant’ or ‘recessive’
– In each bit, there is not a falling or rising edge
» lower frequency
» lower EMI
5V
0V
Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6
dominant bit-level
recessive bit-level
Non-Return-to-Zero (NRZ) Method
36
Bus Arbitration
� BUS ARBITRATION
– zero dominant
listening only
listening only
Bus Arbitration Method
Node 1
Node 2
Node 3
Bus-level
recessive
dominant
S
O
F
Identifier
R
T
R10 9 8 7 6 5 4 3 2 1 0
Control
Field
Data
Field
37
Stuff Bit
� Stuff bit is added automatically after every sequence of five equal
bits
� Error and Overload Frames are not stuffed
� CRC is calculated on the un-stuffed bit stream
– Transmitted CRC itself is stuffed
S
S
S
Bit Stuffing
Unstuffed bit-sequence
Stuffed bit-sequence
38
Standard Frame
� Start of Frame (SOF) marks beginning of frame
� 11-bit Identifier, or arbitration field
– CAN standard version 2.0 “A”
– Most significant seven bits must not be all recessive (1s)
� Remote Transmit Request (RTR)
– A dominant bit for Data Frames
� Data Length Code (DLC)
– Encodes the number of data bytes to follow, msb to the left
Standard Data Frame
111 1 2 4 0 - 64 15 1 1 1 7 3
BusIdle
BusIdle
Start of Frame
11-bit Identifier
RTR
not used
Data-length
Data
CRC ACK
CRC Delimiter ACK Delimiter
End ofFrame
Intermission
39
Extended Frame
� 29-bit Identifier, or arbitration field
– CAN standard version 2.0 “B”
� Substitute Remote Request (SRR) bit
– Placeholder for RTR bit position in Standard Data Frames
– Sent recessive so will lose arbitration to a Standard Data Frame
� Identifier Extension (IDE) bit
– Recessive bit to indicate an Extended Data Frame
– Sent recessive so will lose arbitration to a Standard Data Frame
Extended Data Frame
111 1 4 0 - 64 15 1 1 7 3
Bus
Idle
Bus
Idle
Start of Frame
Identifier
SRR Data-length
Data
CRC ACK
CRC Delimiter ACK Delimiter
End of
Frame
1 18 1 1 1 1
IDE Identifier
RTR
R1,R0
Intermission
40
Acknowledgment Scheme
� Positive Acknowledgement
– Receivers send a dominant bit in the ACK slot
– At least one node received the data correctly
– No error frames
– Message data is used
� Negative Acknowledgement
– Receivers send error frame
– The message was corrupted
– Message is retransmitted by the transmitter
41
FlexRay
42
FlexRay
– Developed by Daimler-Chrysler, BMW, Motorola, Philips starting in early 2000
» DC focused on being first to market with steer-by-wire, product architecture already mostly determined
» DC-requested changes to TTP not immediately adopted by TTTech
» TTP = Time Triggered Protocol
» BMW heavily invested in protocol R&D, developed alternative protocol Byteflight, which was not adopted by the market
» Bosch has collaborated with GM
– Flexray combines features of TTP, CAN, and BMW Byteflight
– DC and BMW are currently technology leaders in X-by-Wire
» Seek competitive advantage
» Have significant experience internally
43
Flexray
Solution with restrictions(reuse of available Physical Layer):
•Optional redundant communication channels
•Support of “wake-up” via bus, depends on the Physical Layer
•low gross data rate (similar to CAN)
•Support of power management, depends on the Physical Layer
•Bus Guardian, depends on the Physical Layer (Bus Guardian defined in separate specification)
Node
Redundancy
passivebus
communicationcontroller
(and host)
Bus Driver
Topology of a Distributed FlexRay System - Passive Bus Example:
44
FlexRay
� Timeline chart of Communications Cycles:
45
FlexRay - Transmit Frame Encoding
� The Transmit frame breaks down each of the two segments into
somewhat complicated layers…so to simplify:
� The Static Segment contains “n” number of slots appropriately
named: “Static Slots”. “n” typically is the number of participating nodes on the bus
� The Dynamic Segment contains “n+x” number of slots which are
called “Minislots” (“x” just indicates that Minislots come after the
Static Slots)
� Each slot (static or dynamic) consists of a “frame” with fixed format
structure
� Every “frame” is made up of a “Header” , a “Payload” and a “Trailer”
46
Overview of Flexray Frame Structure
CRC CRC
24 bit
DataFrame ID
7 bit
0 ... 246 Bytes
Cycle CRC
FlexRay Frame 5 + (0 ... 246) + 3 Bytes
Length
12 bit 6 bit
Syn
c B
it
11 bit 16 bit
Message IDHeaderCRC
Nu
ll F
ram
e In
dic
ati
on
Header Segment Payload Segment Trailer Segment
Data Data
Header CRCCovered Area
Netw
ork
Man
ag
em
en
t
Reserv
ed
1111
Data
NM
FlexRay Frame 5 + (0 ... 254) + 3 bytes
47
Intro to Sleep and Operating Modes
� A Flexray bus Node begins in the Sleep state and transitions to the
Standby state
� In Sleep mode, there must be power on the receiver side of each
node in order to receive a “wakeup pattern”
� In Standby, there is no processing of Frame and Symbols from the
bus
� The node moves to Start Up state where Frames and Symbols begin
but there is no interaction with the CHI
� In the GO state, there is full operation of the node on the bus and
interaction with the application via the CHI
48
Flexray Mode Transitions
� Again, the Frame and Signal processing element has 3 modes
� The first is STANDBY
� The second is STARTUP
� And the third is GO
49
Flexray Mode Transitions (illustrated)
� EXAMPLE OF WAKEUP FROM SLEEP: