Vergangene Prüfungsfragen Flashcards

1
Q

Was wissen Sie über die Synchronisation von Uhren?

A

Uhren müssen synchronisiert werden, damit eine gemeinsame Zeitbasis im System herrscht und damit eine Aussage über die Echtzeitfähigkeit getroffen werden kann. Wird auch benötigt, um eine Reihenfolge der Events herstellen zu können. Uhren werden im Allgemeinen nach einem Schema synchronisiert:
1. Jede Node erhält durch Nachrichtenaustausch den Zustand der global Clock in allen
anderen Nodes.
2. Jede Node analysiert die erhaltenen Informationen um Fehler zu erkennen. Mittels
einer Konvergenzfunktion wird ein Korrekturwert für die lokale Clock berechnet.
3. Die lokale Clock wird um den berechneten Korrekturwert angepasst.
Algorithmen unterscheiden sich in der Art und Weise, wie sie die Werte der anderen
Nodes erhalten, in der Konvergenzfunktion und in der Anwendung des Korrekturwertes.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Wie funktioniert die Master Slave Synchronisation? (Central Master Algorithm)

A

Der Master sendet periodisch seine Zeit als Nachricht an die Slaves. Sobald ein Slave einen neuen Zeitwert vom Master erhält, speichert er den Stand seiner lokalen Clock als Zeitpunkt des Eingangs der Nachricht. Der Slave rechnet aus der Ankunftszeit der Synchronisationsnachricht die Latenz des Nachrichtentransports raus. Mit dem neuen Wert wird die Differenz zwischen der global clock und der lokalen Clock berechnet. Jetzt ist bekannt, um wie viel die eigene Clock abweicht. Der Slave kann nun die lokale Clock um diese Abweichung korrigieren.
(Wichtiger Hinweis: es gibt eine maximale Latenz, aber es gibt auch den Jitter der nicht immer gleich ist und somit nicht rausgerechnet werden kann.)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Was ist die Präzision von einem Ensemble von Uhren?

A

Ist der maximale Versatz zwischen den Uhren bei einem Tick.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Wie kann man byzantinische Uhren mit Fault Tolerant Average (FTA) synchronisieren,
wie funktioniert das?

A

Jeder Knoten misst die Zeitunterschiede zwischen seiner eigenen Uhr und allen anderen Uhren und sortiert k extreme Differenzen aus, wobei k die Anzahl der byzantinischen Fehler ist, die toleriert werden sollen. Das heißt, es werden k höchste und k niedrigste Werte gestrichen. Anschließend wird der Mittelwert gebildet. Der Einfluss der byzantinischen Uhren wird so eingegrenzt. Würden Extremwerte nicht gestrichen, könnte der Fehler durch byzantinische Uhren beliebig groß werden. (Der Fehler byzantinischer Uhren könnte durch zusätzliche Uhren komplett eliminiert werden, das ist aber nicht ratsam, weil es teuer ist.)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Ein protokoll wo ich zum Beispiel so ein Verfahren verwende (…) ist das Flex-Ray
Protokoll, wie funktioniert das, was wissen Sie über das Flex-Ray Protokoll? Weitere
Frage: Wie funktioniert das dynamische Segment? Können Sie mir erklären wie das
Protokoll abläuft?

A

• FlexRay ist ein echtzeitfähiges Protokoll, welches TDMA (Time Division Multiple Access) verwendet, um festzulegen, wer wann senden darf. Jede Node besitzt dann
einen bestimmten Zeitabschnitt, in dem sie senden darf und muss.

• Der Kommunikationszyklus von FlexRay ist das grundlegende Schema, welches immer wiederholt wird und besteht aus vier Abschnitten.

• 1. Abschnitt Statisches Segment: in Slots unterteilt,reservierter Abschnitt für Daten,
die innerhalb eines festen Zeitraumes eintreffen (jede Node hat einen festen statischen Abschnitt, wird der nicht benötigt bleibt er leer)

• 2. Abschnitt Dynamisches Segment: für Daten die ereignisbasiert sind, Minislots für
sporadische Nachrichten, dynamische IDs werden fortlaufend nummeriert

• 3. Abschnitt Symbol Window: für Symbole reserviert, z.B. Netzwerkwartung, Starten
des Netzwerks

• 4. Network Idle Time (NIT): feste Ruhezeit zur Synchronisation der Knotentakte.
Makroticks synchronisieren sich aktiv selbst

• eine Nachrichten-ID stimmt immer mit der entsprechenden Slot-ID überein

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was ist der Action Point Offset des statischen Segments? (Anders gefragt: Darf ich im
statischen Segment direkt am Anfang vom Slot zu senden beginnen? Warum nicht? Was würde passieren?)

A

FlexRay Uhren sind ebenfalls nicht perfekt synchronisiert und besitzen eine Präzision. Bei der Versendung von Nachrichten muss eine Präzision am Anfang und am Ende der
Nachricht abgewartet werden, da es sonst zu Überlagerungen von Nachrichten kommen kann. Der Punkt ab dem gesendet werden darf ist der Action Point.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Wie löse ich Kollisionen beim CAN Protokoll auf?

A

Dafür ist die Bitweise Arbitrierung zuständig. Im Grunde werden dabei die Nachrichten IDs verglichen. Es wird immer das aktuelle Bit betrachtet, sind sie gleich, wird das nächste Bit betrachtet. Sobald eine Nachricht ein dominantes Bit besitzt, wo die andere Nachricht ein rezessives Bit hat, wird das rezessive Bit von dem dominanten Bit überschrieben. Sobald das geschieht, hört die Node mit dem rezessiven Bit auf zu senden und wird zum Empfänger. Die Nachricht mit dem dominanten Bit wird weitergesendet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

(Basierend auf einer Frage kam es zur Antwort mit dem Hauptnachteil von CAN) Wodurch wird die Bandbreite bei CAN beschränkt?

A

Jedes gesendete Bit muss sich stabilisieren bevor es gelesen werden kann, dazu muss immer ein Propagation Delay abgewartet werden. Bei anderen Protokollen z.B. Ethernet muss ein Propagation Delay nur zwischen zwei Nachrichten abgewartet werden.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Was sind real-time Systeme?

A

RT Systeme sind Rechensysteme, die in erster Linie nicht nur der Informationsverarbeitung dienen, sondern auch mit physikalischen Prozessen interagieren. Die Funktionalität des Systems hängt nicht nur von der korrekten Berechnung ab, sondern auch von dem Zeitpunkt, an dem das Ergebnis verfügbar ist.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Wie werden real-time Systeme auf Basis der Deadline klassifiziert?

A
  • Soft Deadline: das Ergebnis hat auch nach der Deadline noch einen Nutzen
  • Firm Deadline: das Ergebnis hat nach der Deadline keinen Nutzen mehr
  • Hard Deadline: Deadline darf auf keinen Fall verpasst werden, da das eine Katastrophe auslösen könnte
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Was ist der Unterschied zwischen Fault und Failure?

A

Der Fault ist eine Fehlerursache, während der Failure das Fehlverhalten ist. Ein Fault löst (über einen Error) einen Failure aus. Fault ist außerdem ein Zustand und Failure ein Event.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was passiert, wenn bei FlexRay keine Nachricht im Dynamic Slot gesendet wird?

A

Der Dynamic Slot behält die Größe eines Mini-Slots und ist damit so klein wie möglich.
Der Slot bleibt an sich ungenutzt und leer.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Was sind Failure Modes (Welche Failure Modes gibt es?)? (5)

A
  • Crash Omission (CO) Failures
  • Massive Transient Disturbances
  • Babbling Idiots Failures
  • Masquerading Failures
  • SOS Failure (Sligthly-Of-Specification)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Wie läuft das CAN Protokoll ab?

A

Kommuniziert wird über Broadcast. Die Identifier kennzeichnen den Inhalt und die
Priorität der Nachricht. Kollisionsprüfung findet über Bitweise Arbitrierung statt.
Fehlererkennung findet durch Bitstuffing statt. Bitstuffing: nach 5 Bits mit identischem
Wert (entweder dominant oder rezessiv), führt der Sender ein zusätzliches Bit mit dem entgegengesetzten Wert ein.
Wird ein Fehler erkannt, wird die Übertragung der Nachricht unterbrochen und die
Node sendet ein Errorflag (6 dominante Bits). Dadurch wird Bitstuffing Regel verletzt
und weitere Nodes senden Errorflags (Globalisierung lokaler Fehler).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly