Hallo zusammen,
ich versuche gerade mich in die Thematik Flexray einzulesen, hänge aber
etwas in der Luft was den Flexray Frame bzw. dessen Interpretation
angeht.
Speziell der Bereich Payload, also die Nutzdaten des Frames, ist für
mich unklar. Was ich verstanden habe ist, dass in einem Frame im
statischen Bereich bis zu 254 Bytes übertragen werden können. Aber:
- Wie werden diese Bytes interpretiert bzw. woher weiß der potentielle
Empfänger wie er diesen Bytestrom zu interpretieren hat? (Es scheint ja
keine Botschafts-ID o.ä. zu geben)
- Wird im Slot X Frame Y in jedem Zyklus der gleiche Bytestrom (in Bezug
auf die Interpretation) übertragen? Oder können die Bytes im nächsten
Zyklus eine andere Bedeutung haben?
- Was passiert wenn mehr als 254 Bytes versendet werden müssen?
Vielen Dank für Eure hilfe.
Gruß
David
Danke für den Tipp. Auf den Vector-Seiten habe ich mich schon
"durchgefrässt" inkl. webinar etc. Konnte aber leider speziell zu diesen
Fragen keine Antwort finden.
Gruß
Hallo David,
ich gebe Dir mal ein paar kurze Antworten als
Anhaltspunkte/Stichpunktlieferanten für die weitere Suche.
Ich beschränke mich auf Automotive Anwendungsfälle, woanders darf
Flexray ja ohnehin nicht eingesetzt werden, oder hat sich da inzwischen
was getan?
> - Wie werden diese Bytes interpretiert bzw. woher weiß der potentielle> Empfänger wie er diesen Bytestrom zu interpretieren hat? (Es scheint ja> keine Botschafts-ID o.ä. zu geben)
Botschafts-ID ist im Prinzip gleichbedeutend mit Slot-ID und ggf.
zusätzlich noch der Cycle-Count (Stichwort Cycle-Multiplexing).
Wie die Datenbytes zu interpretieren sind (PDUs, Signale, etc.), weiß
der Automobilhersteller und dokumentiert das entsprechend z.B. in einem
FIBEX-File (XML - siehe ASAM e.V.).
> - Wird im Slot X Frame Y in jedem Zyklus der gleiche Bytestrom (in Bezug> auf die Interpretation) übertragen? Oder können die Bytes im nächsten> Zyklus eine andere Bedeutung haben?
Je nachdem, was sich derjenige gedacht hat, der den Bus Schedule
entworfen hat. Man kann für jeden Slot individuell ein sogenanntes
Cycle-Multiplexing einsetzen. Je nach Konfiguration kann dann je nach
CycleCount ein anderer Inhalt übertragen werden. z.B. bei
Cycle-Repetition 2 werden in geradzahligen und ungeradzahligen Cycles
unterschiedliche Daten (PDUs) übertragen.
> - Was passiert wenn mehr als 254 Bytes versendet werden müssen?
Das kommt nur in sehr wenigen Fällen vor (z.B. beim Flashen via
Flexray). In diesem Fall wird ein Transportprotokoll eingesetzt, bei dem
die Daten in meherere kleinere Happen zerlegt und zyklusweise übertragen
werden.
Ansonsten sind die Signale im Auto allerhöchstens 32 bit lang (und das
sind sehr wenige).
Viele Grüße
marrtn
Hallo marrtn,
danke für deine ausführliche Antwort. Das hilft mir schon ein ganzes
Stück weiter.
Ein paar zusätzliche Fragen haben sich aber noch ergeben:
> Botschafts-ID ist im Prinzip gleichbedeutend mit Slot-ID und ggf.> zusätzlich noch der Cycle-Count (Stichwort Cycle-Multiplexing).> Wie die Datenbytes zu interpretieren sind (PDUs, Signale, etc.), weiß> der Automobilhersteller und dokumentiert das entsprechend z.B. in einem> FIBEX-File (XML - siehe ASAM e.V.).
Somit muss dem Sender und dem Empfänger das Layout der Slots von
vornherein bekannt sein. Vergleichbar mit dem Botschafts-Layout z.B. auf
dem CAN. (zumindest was den statischen Bereich der Übertragung angeht)
Richtig?
> In diesem Fall wird ein Transportprotokoll eingesetzt, bei dem> die Daten in meherere kleinere Happen zerlegt und zyklusweise übertragen> werden.
OK, soweit klar entspricht dann dem Vorgehen auf dem CAN.
> Ansonsten sind die Signale im Auto allerhöchstens 32 bit lang (und das> sind sehr wenige).
Agree, aber die Signale werden doch zu PDUs zusammengefasst und somit
müssten sich doch auch größere Datenmengen ergeben, die innerhalb eines
Slots übertragen werden. Es wird doch nicht nur 1 Signal pro Slot
übertragen, oder?
> Ich beschränke mich auf Automotive Anwendungsfälle, woanders darf> Flexray ja ohnehin nicht eingesetzt werden, oder hat sich da inzwischen> was getan?
Gute Frage, für mich sind auch nur die Anwendungsfälle im autmotive
Bereich interessant.
Danke + Gruß
David
David schrieb:> Somit muss dem Sender und dem Empfänger das Layout der Slots von> vornherein bekannt sein. Vergleichbar mit dem Botschafts-Layout z.B. auf> dem CAN. (zumindest was den statischen Bereich der Übertragung angeht)> Richtig?
Exakt. Auf beiden Seiten muss bekannt sein, in welchem Slot an welcher
Stelle die interessanten Signale liegen. Darüberhinaus gibt es noch eine
Reihe von "Low-Level-Parametern", die bei allen Steuergeräten an diesem
Bus identisch sein müssen, ansonsten kann es sein, dass der Bus
nichteinmal aufstarten ("synchron werden") kann. Mit diesen Parametern
wird z.B. die Länge des statischen Segments, die Länge von Slots im st.
Seg, die Länge von Minislots u.v.a.m. festgelegt.
> Agree, aber die Signale werden doch zu PDUs zusammengefasst und somit> müssten sich doch auch größere Datenmengen ergeben, die innerhalb eines> Slots übertragen werden. Es wird doch nicht nur 1 Signal pro Slot> übertragen, oder?
Ja klar, aber die PDUs sind natürlich so gewählt, dass sie in die
entsprechenden Slots passen. Für PDUs, die zwischen CAN und Flexray
geroutet werden, wird gerne eine Länge von 8 Byte genommen. Auf der
Flexrayseite können dann mehrere 8-Byte-PDUs in einen längeren
Frame/Slot gepackt werden.
Gruß
marrtn
marrtn schrieb:> ... Ich beschränke mich auf Automotive Anwendungsfälle, woanders darf> Flexray ja ohnehin nicht eingesetzt werden, ...
Das es nur bei Automotive üblich ist, ist klar.
Aber dass es nicht eingesetzt werden DARF(!) interessiert mich:
Wo steht das ? Ist das eine Lizenzbedingung beim Verwenden der
Controller-IC's ?
mfg