Controller Area Network Flashcards
Wofür steht die Abkürzung CAN?
Controller Area Network
Was sind die Schlüsseleigenschaften von CAN?
- Benötigt mindestens zwei Nodes
- Event basiert, kein Schedule nötig
- Robust serial communication protocol
- Message-based communication
- Distributed control
- Broadcast communication
Was sind die Stärken von CAN?
- Akzeptierter Standard
- Robust
- Hoher Grad an Flexibilität
- Hinzufügen von neuen receiving Nodes einfach
- Viel Soft- und Hardware Support verfügbar
Auf welchen Layern des OSI Modells ist CAN zu finden?
Das CAN Protokoll ist auf dem Physical Layer und dem Data Link Layer
Was ist ein Propagation Delay (Ausbreitungsverzögerung)?
Der Propagation Delay eines Kanals ist die Zeit, die ein Bit benötigt, um von einem Ende des Kanals zum anderen Ende des Kanals zu gelangen
Wodurch wir der Propagation Delay bestimmt?
Der Propagation Delay wird bestimmt durch die Übertragungsgeschwindigkeit eines elektromagnetischen km/sec
Was ist die Bandbreite?
Die Bandbreite ist die Anzahl der Bits, die einen Kanal in einer Sekunde durchlaufen können
Was ist die Bitlength eines Kanals?
Die Bitlength ist die Anzahl der Bits, die einen Kanal während des Propagation Delays durchlaufen können
Durch welche Ungleichung ist das Limit von Dateneffizienz bei jedem Kommunikationsprotokoll gegeben?
Effizienz < Nachrichtenlänge/(Nachrichtenlänge+Bitlänge)
Was ist Bitwise Arbitration (Schlichtung)?
Wenn zwei Stationen eine Übertragung zum selben Zeitpunkt beginnen, dann wird die Station mit dem dominanten Bit im arbitration field gewinnen und die Station mit dem rezessiven Bit stoppt seine Übertragung
Wie funktioniert Bit Encoding bei CAN?
- CAN nutzt Non Return to Zero (NRZ) encoding
- Bit Stuffing: Nach 5 Bits mit identischen Wert, führt der Sender ein zusätzliches Bit mit dem entgegengesetzten Wert ein
Welche Error Typen gibt es bei CAN?
- Bit Error
- Stuff error
- CRC error
- Form error
- Acknowledgment error
Was ist ein Bit Error?
Ein Bitfehler wird erkannt, wenn sich der vom Bus gelesene Bitwert von dem gesendeten Bitwert unterscheidet
Was ist ein Stuff error?
Entdeckt beim sechsten aufeinanderfolgenden Auftreten desselben Bits in einem Nachrichtenfeld, das Bitstuffing unterliegt
Was ist ein CRC error?
Der vom Empfänger errechnete CRC-Wert weicht von dem in der Nachricht gespeicherten Wert ab
Was ist ein Form error?
Bitfeld in fester Form enthält ein oder mehrere unzulässige Bits
Was ist ein Acknowledgement error?
Von einem Sender erkannt, wenn ein rezessives Bit auf dem ACK Slot gefunden wird
Wie läuft Error Signaling ab?
- Wenn ein Error von mindestens einem Node erkannt wird, unterbricht der Node die Übertragung durch Senden eines Error Flags
- Error Flag besteht aus 6 dominanten Bits -> Verletzt die Bit Stuffing Regel und alle anderen Nodes reagieren, indem sie auch Error Flags senden
Woraus besteht eine Error Signaling Sequence?
- Die Error Signaling Sequence besteht aus der Überlagerung von Error Flags, die von verschiedenen Nodes gesendet werden, gefolgt von einem Error Delimiter Field
- Länge Sequenz zwischen 6 und 12 Bits
Was ist Fault Containment?
Fehlerhafte Einheiten erkennen und sie in den passiven oder ausgeschalteten Zustand versetzen, so dass sie den Buszustand nicht mit ihren Ausgängen beeinflussen können
Was sind Probleme von CAN in sicherheitsrelevanten verteilten Echtzeitsystemen?
- Large variability in transmission latencies
- Diagnostic deficiences
- No consistent atomic multicast
- No handling of babbling idiot failures
- Arbitration logic limits throughput
Welche Broadcasts gibt es?
- Reliable Broadcast
- Atomic Broadcast
- Timely Broadcast
Woraus besteht ein Reliable Broastcast?
- Validity
- Agreement
- Integrity
Woraus besteht ein Atomic Broadcast?
- Validity
- Total Order
Woraus besteht ein Timely Broadcast?
Timeliness
Welche CAN Failure Assumptions gibt es?
- Crash Failures
- Omission Failures
- Timing Failures
Was ist im CAN Protokoll ein Mechanismus für Konsistenz?
Die Globalisierung lokaler Fehler zielt auf eine systemweite Konsistenz ab
Welche Inkonsistenten Szenarien gibt es bei CAN?
- Double Reception of Messages
- Inconsistent Message Omission
Welche higher order CAN-based Protokolle gibt es?
- Eager-Diffusion Based CAN (EDCAN)
- Lazy Message Diffusion (RELCAN)
- Totally Ordered CAN (TOTCAN)
Wie lauten die Eigenschaften von Eager-Diffusion Based CAN (EDCAN)?
- Zuverlässiger Broadcast ohne total ordering
- Hohe Bandbreiten Nutzung
Was sind die Eigenschaften von Lazy-Message Diffusion (RELCAN)?
- Zuverlässiger Broadcast ohne total ordering
- Effiziente Bandbreitennutzung und retransmission nur in Error Fällen
Wie lauten die Eigenschaften von Totally Ordered CAN (TOTCAN)?
Atomic Broadcast mit total order
Was sind CAN-based higher protocols?
CAN Protokolle mit zusätzlicher Funktionalität (z.B. Message Fragmentation)
Was ist Time-Triggered CAN (TT CAN)?
- TT CAN ist eine Erweiterung von CAN, die Clock Synchronisation und time-triggered communication unterstützt
- Time-master Node sendet zyklisch einen Synchronisations-Frame, der von anderen Nodes genutzt wird, um ihre lokale Zeit einzustellen und die Übertragung zu initiieren