mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik FlexRay - MessageBuffer


Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich beschäfftige mich zur Zeit mit dem Thema FlexRay, sprich ich lese 
mich in die Spezifikation ein und versuche die ganzen Zusammenhänge 
einigermaßen zu verstehen, da ich meine Diplomarbeit wohl in diesem 
Gebiet machen werde.

Zu meiner Frage:
Betrachtet man den E-Ray-Core von Bosch, dann fällt mir auf, dass man im 
Message RAM Speicher für "static massage buffer", "dynamic message 
buffer" und für "FIFO buffer" reservieren kann. Nur wozu könnte man den 
FIFO buffer gebrauchen?
Wenn ich eine ID als "interessant" empfinde, definiere ich sie bei der 
Konfiguration doch als zu empfangende Nachricht, was bedeutet, dass sie 
im static oder dynamic message buffer abgelegt wird. So wie ich das 
verstanden habe werden alle Nachrichten, die nicht direkt als zu 
empfangende Nachrichten definiert sind und durch den FIFO-Filter kommen 
im FIFO-Buffer abgespeichert.
Warum nun dieses FIFO? Hab ich da irgendwas an der ganzen Sache nicht 
verstanden?

Autor: Berti (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
FIFO ist da um viele Daten die auf einmal kommen "abzufedern". Z.B. wenn 
der µC langsamer ist mit der Verarbeitung der Daten als die 
Geschwindigkeit mit der neue Daten kommen.

Autor: Dennis (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, das ist mir schon klar.

Aber:
Im Apllication Note des E-Ray-Cores 
(http://www.semiconductors.bosch.de/pdf/070601_AN004_1R01.pdf) wird 
beschrieben, dass nur Nachrichten im FIFO abgespeichert werden, die man 
nicht als zu empfangende Nachrichten des jeweiligen Nodes konfiguriert 
hat und durch das FIFO-Filter gehen (4.5.1 Example One, Seite 14).
Heißt also alle Nachrichten, die mich eigentlich nicht "interessieren" 
werden im FIFO abgespeichert. Die Nachrichten, welche mich interessieren 
werden bei jedem Empfang überschrieben.
Irgendwie erscheint mir das ein wenig Schwachsinnig.

Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein FIFO kann bei FlexRay sinnvoll sein, wenn z.B. sowas wie ein Gateway 
implementiert werden soll. Dort muss dann nicht für jede zu 
verarbeitende Nachricht extra ein Puffer konfiguriert werden, sondern es 
wird die älteste Nachricht aus dem FIFO genommen und entsprechend 
weitergleitet.

Zudem kommt man um die Umkonfiguration von Nachrichtenspeichern herum, 
wenn die Anzahl von interessanten Nachrichten die Anzahl der verfügbaren 
Nachrichtenspeicher übersteigt. Einfach alles in den FIFO legen lassen 
und unwichtige Frames verwerfen.

Klar, wenn du nur ein Gerät entwirfst, was in einen Zeitslot Daten 
schreibt und aus einem anderen Daten empfängt, brauchst du keinen FIFO. 
Kommt eben auf die Anwendung an.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.