Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD, COMPUTER-READABLE MEDIUM, SYSTEM, AND VEHICLE COMPRISING THE SYSTEM FOR VALIDATING A TIME FUNCTION OF A MASTER AND THE CLIENTS IN A NETWORK OF A VEHICLE
Document Type and Number:
WIPO Patent Application WO/2019/001929
Kind Code:
A1
Abstract:
The invention relates to a method for validating a time function in a network of a vehicle, the method comprising the following steps: ascertaining a receiving time of a sync message of a master for synchronising a time information item by a first client, wherein the first client is connected to the maser via a first communication channel; receiving a follow-up message of the master via the first communication channel by the first client, wherein the follow-up message comprises a transmission time of the sync message; ascertaining a receiving time of a further sync message of the master by the first client; receiving a further follow-up message of the master via the first communication channel by the first client, wherein the further follow-up message comprises a transmission time of the further sync message; determining a time function of the first client based on the receiving time of the sync message, the receiving time of the further sync message, the transmission time of the follow-up message, and the transmission time of the further follow-up message; ascertaining a synchronised transmission time of a path delay request message from the first client to the master by means of the time function of the client; ascertaining a synchronised receiving time of a path delay response message from the master by means of the time function of the client; receiving a path delay response follow-up message from the master by the first client, wherein the path delay response follow-up message comprises a synchronised receiving time of the path delay request message and a synchronised transmission time of the path delay response message; and validating a time function of the master based on the synchronised transmission time of the path delay request message to the client, the synchronised receiving time of the path delay response message at the client, the synchronised receiving time of the path delay request message at the master, the synchronised transmission time of the path delay response message at the master, and a predefined maximum delay between the first client and the master.

Inventors:
TURNER MAX (DE)
MAIER ALEXANDER (DE)
BOGENBERGER FLORIAN (DE)
HUDOLETNJAK EMILY (DE)
Application Number:
PCT/EP2018/065159
Publication Date:
January 03, 2019
Filing Date:
June 08, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BAYERISCHE MOTOREN WERKE AG (DE)
International Classes:
H04J3/06; H04L45/02; H04L45/121; B60W50/02
Foreign References:
DE102011087472A12013-06-06
US20100019811A12010-01-28
Other References:
NOSEWORTHY BOB: "Network-based application-independent time-error and direct port latency measurement", 2016 IEEE INTERNATIONAL SYMPOSIUM ON PRECISION CLOCK SYNCHRONIZATION FOR MEASUREMENT, CONTROL, AND COMMUNICATION (ISPCS), IEEE, 4 September 2016 (2016-09-04), pages 1 - 6, XP032971423, DOI: 10.1109/ISPCS.2016.7579511
PATRICK WUNNER ET AL: "Development and Testing of Automotive Ethernet-Networks together in one Tool - OMNeT", 3 September 2014 (2014-09-03), XP055499947, Retrieved from the Internet
BOB NOSEWORTHY ET AL: "Passive and Active Probing of Slave Timing Error for 802.1AS 2015-11-11 ; as-ren-probing-slave-te-proposal-1115-v06", IEEE DRAFT; AS-REN-PROBING-SLAVE-TE-PROPOSAL-1115-V06, IEEE-SA, PISCATAWAY, NJ USA, vol. 802, no. v06, 10 November 2015 (2015-11-10), pages 1 - 28, XP068101371
Download PDF:
Claims:
Patentansprüche

1 . Verfahren zum Validieren einer Zeitfunktion in einem Netzwerk eines Fahrzeugs, das Verfahren umfassend:

Ermitteln einer Empfangszeit einer Sync-Nachricht eines Masters zur Synchronisation einer Zeitinformation durch einen ersten Client, wobei der erste Client mit dem Master über einen ersten Kommunikationskanal verbunden ist;

Empfangen einer Follow-Up-Nachricht des Masters über den ersten

Kommunikationskanal durch den ersten Client, wobei die Follow-Up-Nachricht eine Sendezeit der Sync-Nachricht umfasst;

Ermitteln einer Empfangszeit einer weiteren Sync-Nachricht des Masters durch den ersten Client;

Empfangen einer weiteren Follow-Up-Nachricht des Masters über den ersten

Kommunikationskanal durch den ersten Client, wobei die weitere Follow-Up-Nachricht eine Sendezeit der weiteren Sync-Nachricht umfasst;

Bestimmen einer Zeitfunktion des ersten Client basierend auf der Empfangszeit der Sync-Nachricht, der Empfangszeit der weiteren Sync-Nachricht, der Sendezeit der Follow-Up- Nachricht und der Sendezeit der weiteren Follow-Up-Nachricht;

Ermitteln einer synchronisierten Sendezeit einer Path-Delay-Request-Nachricht von dem ersten Client an den Master mittels der Zeitfunktion des Client;

Ermitteln einer synchronisierten Empfangszeit einer Path-Delay-Response-Nachricht von dem Master mittels der Zeitfunktion des Client;

Empfangen eines Path-Delay-Response-Follow-Up-Nachricht von dem Master durch den ersten Client, wobei die Path-Delay-Response-Follow-Up-Nachricht eine synchronisierte Empfangszeit der Path-Delay-Request-Nachricht und eine synchronisierte Sendezeit der Path- Delay-Response-Nachricht umfasst; und

Validieren einer Zeitfunktion des Masters basierend auf der synchronisierten Sendezeit der Path-Delay-Request-Nachricht an dem Client, der synchronisierten Empfangszeit der Path- Delay-Response-Nachricht an dem Client, der synchronisierten Empfangszeit der Path-Delay- Request-Nachricht an dem Master, der synchronisierten Sendezeit der Path-Delay-Response- Nachricht an dem Master, und einer vorgegebenen maximalen Verzögerung zwischen dem ersten Client und dem Master.

2. Verfahren nach Anspruch 1 , das Verfahren weiterhin umfassend: Empfangen einer Validierungsanfragenachricht eines zweiten Client über einen zweiten Kommunikationskanal durch den ersten Client,

wobei die Validierungsanfragenachricht folgende Zeitinformationen zwischen dem zweiten Client und einem dem zweiten Client zugehörigen Master umfasst:

eine synchronisierte Sendezeit einer Path-Delay-Request-Nachricht; eine synchronisierte Empfangszeit einer Path-Delay-Response-Nachricht;

eine synchronisierte Empfangszeit einer Path-Delay-Request-Nachricht; und eine synchronisierte Sendezeit einer Path-Delay-Response-Nachricht;

Bestimmen einer maximalen Verzögerung zwischen dem zweiten Client und dem zweiten Client zugehörigen Master basierend auf einer vorgegebenen Netzwerktopologie durch den ersten Client; und

Validieren einer Zeitfunktion des dem zweiten Client zugehörigen Master basierend auf der synchronisierten Sendezeit der Path-Delay-Request-Nachricht, der synchronisierten Empfangszeit der Path-Delay-Response-Nachricht, der synchronisierten Empfangszeit der Path-Delay-Request-Nachricht, der synchronisierten Sendezeit der Path-Delay-Response- Nachricht, und der bestimmten maximalen Verzögerung.

3. Verfahren nach einem der vorhergehenden Ansprüche, das Verfahren weiterhin umfassend:

Übermitteln eines Ergebnisses des Validierens der Zeitfunktion des Masters und/oder des dem zweiten Client zugehörigen Masters an eine oder mehrere sicherheitsrelevante Funktionen durch den ersten Client; und/oder

Ausführen der einen oder mehreren sicherheitsrelevanten Funktionen unter Verwendung des Ergebnisses des Validierens der Zeitfunktion.

4. Verfahren nach einem der vorhergehenden Ansprüche, das Verfahren weiterhin umfassend:

Prädizieren einer synchronisierten Empfangszeit einer Sync-Nachricht des Masters durch den ersten Client unter Verwendung der Zeitfunktion des ersten Client;

Validieren der Zeitfunktion des ersten Client, wobei das Valideren der Zeitfunktion des ersten Client umfasst:

Bestimmen, ob die prädizierte, synchronisierte Empfangszeit der Sync-Nachricht zuzüglich der vorgegebenen, maximale Verzögerung zwischen dem ersten Client und dem Master einen Wert ergibt, der innerhalb eines vorgegebenen Intervallbereichs um die in der Follow-Up-Nachricht beinhaltete Sendezeit des Masters liegt; und

Falls der Wert innerhalb des vorgegebenen Intervallbereichs liegt: Bestimmen der Zeitfunktion des ersten Client als valide;

Falls der Wert nicht innerhalb des vorgegebenen Intervallbereichs liegt:

Bestimmen der Zeitfunktion des ersten Client als nicht valide; und Aktualisieren der Zeitfunktion des ersten Client basierend auf der Empfangszeit der Sync-Nachricht, der Empfangszeit der weiteren Sync-Nachricht, der Sendezeit der Follow-Up-Nachricht und der Sendezeit der weiteren Follow-Up-Nachricht.

5. Verfahren nach einem der vorhergehenden Ansprüche, das Verfahren weiterhin umfassend:

Empfangen einer weiteren Validierungsanfragenachricht des zweiten Clients über den zweiten Kommunikationskanal, wobei die weitere Validierungsanfragenachricht folgende Zeitinformationen zwischen dem zweiten Client und einem dem zweiten Client zugehörigen Master umfasst:

eine prädizierte Empfangszeit einer Sync-Nachricht zwischen dem zweiten Client und dem zweiten Client zugehörigen Master;

eine synchronisierte Sendezeit der Sync-Nachricht zwischen dem zweiten Client und dem zweiten Client zugehörigen Master;

Validieren der Zeitfunktion des zweiten Clients durch den ersten Client, wobei das Valideren der Zeitfunktion des zweiten Clients umfasst:

Bestimmen, ob die prädizierte Empfangszeit der Sync-Nachricht des zweiten Client zuzüglich einer vorgegebenen, maximale Verzögerung zwischen dem zweiten Client und dem zweiten Client zugehörigen Master einen Wert ergibt, der innerhalb eines vorgegebenen Intervallbereichs um die synchronisierte Sendezeit der Sync-Nachricht des dem zweiten Client zugehörigen Masters liegt; und

Falls der Wert innerhalb des vorgegebenen Intervallbereichs liegt:

Bestimmen der Zeitfunktion des zweiten Client als valide;

Falls der Wert nicht innerhalb des vorgegebenen Intervallbereichs liegt:

Bestimmen der Zeitfunktion des zweiten Client als nicht valide; und

Übermitteln eines Ergebnisses des Validierens der Zeitfunktion des zweiten Clients an eine oder mehrere sicherheitsrelevante Funktionen durch den ersten Client.

6. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Validieren der

synchronisierten Zeiten umfasst:

Bestimmen, ob die synchronisierte Sendezeit der Path-Delay-Request-Nachricht zuzüglich der vorgegebenen, maximalen Verzögerung einen ersten Wert ergibt, der innerhalb eines vorgegebenen Intervallbereichs um die synchronisierte Empfangszeit der Path-Delay- Request-Nachricht liegt;

Bestimmen, ob die synchronisierte Sendezeit der Path-Delay-Response-Nachricht zuzüglich der vorgegebenen, maximalen Verzögerung einen zweiten Wert ergibt, der innerhalb des vorgegebenen Intervallbereichs um die synchronisierte Empfangszeit der Path-Delay- Response-Nachricht liegt; und

Falls der erste Wert und der zweite Wert innerhalb der jeweiligen Intervallbereiche liegen:

Bestimmen der Zeitfunktion des Masters als valide; und

Falls der erste Wert und/oder der zweite Wert nicht innerhalb der jeweiligen

Intervallbereiche liegen:

Bestimmen der Zeitfunktion des Masters als nicht valide.

7. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Netzwerk ein Ethernet- Netzwerk ist; und/oder

wobei der zweite Client ein Client oder eine Bridge ist; und/oder

wobei der Master ein Grand-Master oder ein Sub-Master ist.

8. Computer-lesbare Medium zum Validieren einer Zeitfunktion eines Masters in einem

Netzwerk eines Fahrzeugs, wobei das Computer-lesbare Medium Instruktionen umfasst, die, wenn ausgeführt auf einem Computer oder einem Steuergerät, das Verfahren nach einem der Ansprüche 1 bis 7 ausführen.

9. System zum Validieren einer Zeitfunktion eines Masters in einem Netzwerk eines Fahrzeugs, wobei das System dazu ausgebildet ist, das Verfahren nach einem der Ansprüche 1 bis 7 auszuführen.

10. Fahrzeug umfassend das System zum Validieren einer Zeitfunktion eines Masters in einem Netzwerk eines Fahrzeugs nach Anspruch 9.

Description:
Verfahren, Computer-lesbares Medium, System, und Fahrzeug umfassend das System zum Validieren einer Zeitfunktion eines Masters und der Clients in einem Netzwerk eines Fahrzeugs

Die Erfindung betrifft ein Verfahren zum Validieren einer Zeitfunktion eines Masters und der Clients in einem Netzwerk eines Fahrzeugs. Die Erfindung betrifft ferner ein Computer-lesbares Medium, ein System, sowie ein Fahrzeug umfassend das System zum Validieren einer Zeitfunktion eines Masters und der Clients in einem Netzwerk des Fahrzeugs.

Aus dem Stand der Technik sind verschiedene, standardisierte Verfahren zur

Zeitsynchronisation in Netzwerken bekannt. Beispielsweise beschreibt das Precision-Time- Protocol, kurz PTP, ein Zeitsynchronisationsverfahren, das beispielsweise in IEEE 1588 und IEEE802.1AS standardisiert ist. Das PTP sieht vor, Nachrichten zur Zeitsynchronisation unidirektional von einem Sender an einen Empfänger zu übermitteln. Dem Sender liegen keine Informationen vor, ob die Nachrichten zur Zeitsynchronisation korrekt bei einem Empfänger empfangen und verarbeitet wurden. Eine korrekte Funktionsweise eines Gesamtsystems im Sinne einer Funktionssicherheit nach ISO 26262 kann mittels der bekannten

Zeitsynchronisationsverfahren daher nicht erreicht werden.

Es ist daher eine Aufgabe der Erfindung, ein Validieren einer Zeitfunktion in einem Netzwerk eines Fahrzeugs effizient zu verbessern.

Gelöst wird diese Aufgabe durch die Merkmale der unabhängigen Ansprüche. Vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung ergeben sich aus den abhängigen Ansprüchen.

Gemäß einem ersten Aspekt zeichnet sich die Erfindung aus durch ein Verfahren zum

Validieren einer Zeitfunktion in einem Netzwerk eines Fahrzeugs. Das Netzwerk kann CAN, FlexRay, und/oder Ethernet sein. Die Zeitfunktion kann eine Zeitabbildung umfassen, die eine gemessene Zeit in eine synchronisierte Zeit umwandelt bzw. eine gemessene Zeit auf eine synchronisierte Zeit abbildet. Das Fahrzeug kann ein Landfahrzeug, z.B. ein Kraftfahrzeug oder ein Motorrad sein. Das Verfahren umfasst ein Ermitteln einer Empfangszeit einer Sync- Nachricht eines Masters zur Synchronisation einer Zeitinformation durch einen ersten Client, wobei der erste Client, im Folgenden auch Validator genannt, mit dem Master über einen ersten Kommunikationskanal verbunden ist. Der Master kann ein Gerät oder eine Komponente des Netzwerks sein, mit der der erste Client über den ersten Kommunikationskanal verbunden ist. Der Master kann ein Grand-Master sein, d.h. ein Master, der in einer Hierarchie von Mastern einem Wurzelelement entspricht, oder ein Sub-Master sein, d.h. ein Master, der in der

Hierarchie von Mastern unterhalb dem Wurzelelement angeordnet ist. Beispielsweise kann eine Bridge des Netzwerks ein Sub-Master sein. Der erste Kommunikationskanal kann

beispielsweise das Precision-Time-Protocol, kurz PTP, bereitstellen. Die Sync-Nachricht ist vorzugsweise eine Nachricht, die periodisch und/oder ereignisgesteuert von einem Master an einen Client, z.B. den ersten Client, übermittelt wird. Das Verfahren umfasst weiterhin ein Empfangen einer Follow-Up-Nachricht des Masters über den ersten Kommunikationskanal durch den ersten Client, wobei die Follow-Up-Nachricht eine Sendezeit der Sync-Nachricht am Master umfasst. Die Follow-Up-Nachricht ist vorzugsweise eine Nachricht, die auf eine Sync- Nachricht des Masters folgt und von dem Master an den ersten Client übermittelt wird. Alternativ können einem Verfahren mit nur einem Schritt die Sync-Nachricht und die FollowUp-Nachricht in einer gemeinsamen Nachricht zusammengefasst sein.

Das Verfahren umfasst ein Ermitteln einer Empfangszeit einer weiteren Sync-Nachricht des Masters durch den ersten Client, und ein Empfangen einer weiteren Follow-Up-Nachricht des Masters über den ersten Kommunikationskanal durch den ersten Client, wobei die weitere Follow-Up-Nachricht eine Sendezeit der weiteren Sync-Nachricht umfasst. Das Verfahren bestimmt eine Zeitfunktion des ersten Client basierend auf der Empfangszeit der Sync- Nachricht, der Empfangszeit der weiteren Sync-Nachricht, der Sendezeit der Follow-Up- Nachricht und der Sendezeit der weiteren Follow-Up-Nachricht. Die Zeitfunktion des ersten Client kann eine gemessene Zeit des ersten Client auf eine synchronisierte Zeit abbilden.

Allgemein kann eine Zeitfunktion eines Geräts des Netzwerks, eine auf dem Gerät gemessene Zeit auf eine synchronisierte Zeit des Netzwerks abbilden. Eine Zeit kann beispielsweise eine Sendezeit oder eine Empfangszeit einer Nachricht sein.

Das Verfahren umfasst ferner ein Ermitteln einer synchronisierten Sendezeit einer Path-Delay- Request-Nachricht von dem ersten Client an den Master mittels der Zeitfunktion des Client, ein Ermitteln einer synchronisierten Empfangszeit einer Path-Delay-Response-Nachricht von dem Master mittels der Zeitfunktion des Client, und ein Empfangen eines Path-Delay-Response- Follow-Up-Nachricht von dem Master durch den ersten Client, wobei die Path-Delay-Response- Follow-Up-Nachricht eine synchronisierte Empfangszeit der Path-Delay-Request-Nachricht und eine synchronisierte Sendezeit der Path-Delay-Response-Nachricht umfasst. Weiterhin umfasst das Verfahren ein Validieren einer Zeitfunktion des Masters basierend auf der synchronisierten Sendezeit der Path-Delay-Request-Nachricht an dem ersten Client, der synchronisierten Empfangszeit der Path-Delay-Response-Nachricht an dem ersten Client, der synchronisierten Empfangszeit der Path-Delay-Request-Nachricht an dem Master, der synchronisierten

Sendezeit der Path-Delay-Response-Nachricht an dem Master, und einer vorgegebenen maximalen Verzögerung zwischen dem ersten Client und dem Master. Die vorgegebene maximale Verzögerung kann eine Verzögerung in der Kommunikation der Nachrichten über den ersten Kommunikationskanal zwischen dem Master und dem ersten Client sowie zwischen dem ersten Client und dem Master umfassen.

Vorteilhafterweise kann der erste Client durch das Validieren der synchronisierten Sende- und Empfangszeiten des ersten Clients und des Masters bewerten, ob die Zeitfunktion des Masters valide ist, d.h. ob die von dem Client bestimmten Sende- und Empfangszeiten mit den von dem Master an den ersten Client übermittelten Send- und Empfangszeiten gleich sind oder sich zumindest innerhalb eines vorgegebenen Zeitintervalls befinden. Durch das Verwenden einer maximalen Verzögerung als Obergrenze kann sichergestellt werden, dass die synchronisierten Sende- und Empfangszeiten des Masters durch den Client validiert werden können.

Gemäß einer vorteilhaften Ausgestaltung kann das Verfahren weiterhin ein Empfangen einer Validierungsanfragenachricht eines zweiten Clients, im Folgenden auch kurz Client genannt, über einen zweiten Kommunikationskanal durch den ersten Client umfassen. Der zweite Kommunikationskanal ist vorzugsweise ein Kommunikationskanal, der ein im Vergleich zu dem ersten Kommunikationskanal ein verschiedenes Kommunikationsprotokoll verwendet.

Beispielsweise kann der zweite Kommunikationskanal ein SOME/IP-Kommunikationsproktokoll verwenden. Die Validierungsanfragenachricht kann folgende Zeitinformationen zwischen dem zweiten Client und einem dem zweiten Client zugehörigen Master umfassen: eine

synchronisierte Sendezeit einer Path-Delay-Request-Nachricht, eine synchronisierte

Empfangszeit einer Path-Delay-Response-Nachricht, eine synchronisierte Empfangszeit einer Path-Delay-Request-Nachricht, und eine synchronisierte Sendezeit einer Path-Delay- Response-Nachricht. Das Verfahren kann ferner ein Bestimmen einer maximalen Verzögerung zwischen dem zweiten Client und dem zweiten Client zugehörigen Master basierend auf einer vorgegebenen Netzwerktopologie durch den ersten Client, und ein Validieren einer Zeitfunktion des dem zweiten Client zugehörigen Master basierend auf der synchronisierten Sendezeit der Path-Delay-Request-Nachricht, der synchronisierten Empfangszeit der Path-Delay-Response- Nachricht, der synchronisierten Empfangszeit der Path-Delay-Request-Nachricht, der synchronisierten Sendezeit der Path-Delay-Response-Nachricht, und der bestimmten maximalen Verzögerung umfassen. Hiermit kann ein vorzugsweise zentraler Client, z.B. der erste Client, auf Anfrage die Zeitfunktion eines anderen Clients, z.B. des zweiten Clients, validieren. Ein Client des Netzwerks kann somit stets prüfen, ob die Zeitfunktion des Clients selbst und/oder des dazugehörigen Masters valide ist. Ferner kann durch das Validieren unter Verwendung der Netzwerktopologie eine Position des Clients und des Masters im Netzwerk bestimmt werden und ausgehend von der Position des Clients und des Masters die maximale Verzögerung abgeleitet werden.

Gemäß einer weiteren, vorteilhaften Ausgestaltung kann das Verfahren weiterhin ein

Übermitteln eines Ergebnisses des Validierens der Zeitfunktion des Masters und/oder des dem zweiten Client zugehörigen Masters an eine oder mehrere sicherheitsrelevante Funktionen durch den ersten Client, und/oder ein Ausführen der einen oder mehreren sicherheitsrelevanten Funktionen unter Verwendung des Ergebnisses des Validierens der Zeitfunktion. Hiermit kann eine sicherheitsrelevante Funktion auf validen Zeitinformationen ausgeführt werden. Ist beispielsweise die sicherheitsrelevante Funktion eine Funktion zum Fusionieren von

Sensordaten, kann die sicherheitsrelevante Funktion hiermit sicherstellen, dass die

Zeitinformationen der Sensordaten valide sind.

Gemäß einer weiteren, vorteilhaften Ausgestaltung kann Verfahren weiterhin ein Prädizieren einer synchronisierten Empfangszeit einer Sync-Nachricht des Masters durch den ersten Client unter Verwendung der Zeitfunktion des ersten Clients, und ein Validieren der Zeitfunktion des ersten Clients. Das Validieren der Zeitfunktion des ersten Clients kann bestimmen, ob die prädizierte, synchronisierte Empfangszeit der Sync-Nachricht zuzüglich der vorgegebenen, maximale Verzögerung zwischen dem ersten Client und dem Master einen Wert ergibt, der innerhalb eines vorgegebenen Intervallbereichs um die in der Follow-Up-Nachricht beinhaltete Sendezeit des Masters liegt. Falls der Wert innerhalb des vorgegebenen Intervallbereichs liegt, kann das Verfahren die Zeitfunktion des ersten Client als valide bestimmen. Falls der Wert nicht innerhalb des vorgegebenen Intervallbereichs liegt, kann das Verfahren die Zeitfunktion des ersten Client als nicht valide bestimmen, und die Zeitfunktion des ersten Client basierend auf der Empfangszeit der Sync-Nachricht, der Empfangszeit der weiteren Sync-Nachricht, der Sendezeit der Follow-Up-Nachricht und der Sendezeit der weiteren Follow-Up-Nachricht aktualisieren. Hiermit kann der erste Client, d.h. der Validator, seine eigene Zeitfunktion effizient validieren und gegebenenfalls aktualisieren.

Gemäß einer weiteren, vorteilhaften Ausgestaltung kann das Verfahren eine weitere

Validierungsanfragenachricht des zweiten Clients über den zweiten Kommunikationskanal empfangen. Die weitere Validierungsanfragenachricht zwischen dem zweiten Client und einem dem zweiten Client zugehörigen Master umfasst folgende Zeitinformationen: eine prädizierte Empfangszeit einer Sync-Nachricht zwischen dem zweiten Client und dem zweiten Client zugehörigen Master und eine synchronisierte Sendezeit der Sync-Nachricht zwischen dem zweiten Client und dem zweiten Client zugehörigen Master. Vorzugsweise bestimmt der zweite Client die synchronisierte Sendezeit der Sync-Nachricht aus einer Follow-Up-Nachricht des dem zweiten Client zugehörigen Masters. Das Verfahren kann die Zeitfunktion des zweiten Clients durch den ersten Client validieren, wobei das Valideren der Zeitfunktion des zweiten Clients bestimmt, ob die prädizierte Empfangszeit der Sync-Nachricht des zweiten Clients zuzüglich einer vorgegebenen, maximale Verzögerung zwischen dem zweiten Client und dem

dazugehörigen Master einen Wert ergibt, der innerhalb eines vorgegebenen Intervallbereichs um die synchronisierte Sendezeit der Sync-Nachricht des dem zweiten Clients zugehörigen Masters liegt. Falls der Wert innerhalb des vorgegebenen Intervallbereichs liegt, kann das Verfahren die Zeitfunktion des zweiten Client als valide bestimmen. Falls der Wert nicht innerhalb des vorgegebenen Intervallbereichs liegt, kann das Verfahren die Zeitfunktion des zweiten Client als nicht valide bestimmen und ein Ergebnis des Validierens der Zeitfunktion des zweiten Clients an eine oder mehrere sicherheitsrelevante Funktionen durch den ersten Client übermitteln. Hiermit kann der erste Client, d.h. der Validator, die Zeitfunktion eines beliebigen anderen Clients des Netzwerks, z.B. den zweiten Cleint, effizient validieren und das Ergebnis an sicherheitsrelevante Funktionen des Fahrzeugs, z.B. Komponenten und/oder Verfahren zur Sensordatenfusion, weiterleiten.

Gemäß einer weiteren, vorteilhaften Ausgestaltung kann das Validieren der synchronisierten Zeiten bestimmen, ob die synchronisierte Sendezeit der Path-Delay-Request-Nachricht zuzüglich der vorgegebenen, maximalen Verzögerung einen ersten Wert ergibt, der innerhalb eines vorgegebenen Intervallbereichs um die synchronisierte Empfangszeit der Path-Delay- Request-Nachricht liegt, und bestimmen, ob die synchronisierte Sendezeit der Path-Delay- Response-Nachricht zuzüglich der vorgegebenen, maximalen Verzögerung einen zweiten Wert ergibt, der innerhalb des vorgegebenen Intervallbereichs um die synchronisierte Empfangszeit der Path-Delay-Response-Nachricht liegt. Falls der erste Wert und der zweite Wert innerhalb der jeweiligen Intervallbereiche liegen, kann die Zeitfunktion des Masters als valide bestimmt werden. Falls der erste Wert und/oder der zweite Wert nicht innerhalb der jeweiligen

Intervallbereiche liegen, kann die Zeitfunktion des Masters als nicht valide bestimmt werden. Hiermit kann die Zeitfunktion des Masters effizient durch den Client, insbesondere durch den ersten Client, validiert werden.

Gemäß einer weiteren, vorteilhaften Ausgestaltung kann das Netzwerk ein Ethernet-Netzwerk, sein, kann der zweite Client ein Client oder eine vorzugsweise Time-Aware Bridge sein, und/oder kann der Master ein Grand-Master oder ein Sub-Master sein.

Gemäß einem weiteren Aspekt zeichnet sich die Erfindung aus durch ein Computer-lesbares Medium zum Validieren einer Zeitfunktion eines Masters in einem Netzwerk eines Fahrzeugs, wobei das Computer-lesbare Medium Instruktionen umfasst, die, wenn ausgeführt auf einem Computer oder einem Steuergerät, das oben beschriebene Verfahren ausführen.

Gemäß einem weiteren Aspekt zeichnet sich die Erfindung aus durch ein System zum

Validieren einer Zeitfunktion eines Masters in einem Netzwerk eines Fahrzeugs, wobei das System dazu ausgebildet ist, das oben beschriebene Verfahren auszuführen.

Gemäß einem weiteren Aspekt zeichnet sich die Erfindung aus durch ein Fahrzeug umfassend das oben beschriebene System zum Validieren einer Zeitfunktion eines Masters in einem Netzwerk eines Fahrzeugs.

Weitere Merkmale der Erfindung ergeben sich aus den Ansprüchen, den Figuren und der Figurenbeschreibung. Alle vorstehend in der Beschreibung genannten Merkmale und

Merkmalkombinationen sowie die nachfolgend in der Figurenbeschreibung genannten und/oder in den Figuren allein gezeigten Merkmale und Merkmalkombinationen sind nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder aber in Alleinstellung verwendbar. Im Folgenden wird anhand der beigefügten Zeichnungen ein bevorzugtes Ausführungsbeispiel der Erfindung beschrieben. Daraus ergeben sich weitere Details, bevorzugte Ausgestaltungen und Weiterbildungen der Erfindung. Im Einzelnen zeigen schematisch

Fig. 1 ein beispielhaftes System zum Validieren einer Zeitfunktion,

Fig. 2 ein beispielhaftes Verfahren zum Berechnen einer Zeitfunktion, und

Fig. 3 ein beispielhaftes Verfahren zum Bestimmen einer Verzögerung in einem Netzwerk.

Im Detail zeigt Fig. 1 ein System 100 zum Validieren einer Zeitfunktion in einem Netzwerk eines Fahrzeugs. Das Netzwerk ist vorzugsweise ein Ethernet-Netzwerk. Das in Fig. 1 gezeigte, beispielhafte System 100 umfasst einen Grand-Master 102, eine Bridge 104, einen Validator 106, und einen Client 108. Der Validator 106 ist in dem System 100 ein Client der Bridge 104. Jeder Client und jede Bridge kann eine lokale, nichtsynchrone Uhr umfassen. Die lokale, nichtsynchrone Uhr kann eine präzise Sendezeit für Nachrichten, die von einem Client oder einer Bridge gesendet werden, und eine präzise Empfangszeit für Nachrichten, die von einem Client oder einer Bridge empfangen werden, ermitteln. Ferner hat jeder Client und jede Bridge als Client eine Zeitfunktion, die eine Abbildung einer lokalen, nichtsynchronen Zeit T auf eine synchronisierte Zeit t eines jeweiligen Masters ausführt.

Der Grand-Master 102 ist eine Netzwerkkomponente, die eine Uhrzeit an Clients des Grand- Masters 102 verteilt. In Fig. 1 hat der Grand-Master einen Client, die Bridge 104, an die der Grand-Master 102 die Uhrzeit verteilt. Die Uhrzeit, die der Grand-Master 102 verteilt kann mit t(R) angegeben werden, wobei R die real vergangene Zeit bezeichnet. Die real vergangene Zeit R kann als physikalisch absolut angesehen werden. Jedoch kann die real vergangene Zeit R durch den Grand-Master 102 nicht exakt gemessen werden. Aus diesem Grund verteilt der Grand-Master 102 die Zeit t(R), d.h. eine Uhrzeit in Abhängigkeit der real vergangenen Zeit R anstatt die real vergangene Zeit R selbst. Der Grand-Master 102 ist ein Master bzw. eine Masterkomponente des Netzwerks.

Das System 100 kann eine Bridge 104 umfassen, die ein Client oder ein Sub-Master sein kann. Ein Sub-Master ist ein Master, der eine von der Uhrzeit des Grand-Masters 102 abgeleitete Zeit, insbesondere eine mit dem Grand-Master 102 synchronisierte Zeit, an Clients des Masters verteilt. Beispielsweise ist die Bridge 104 ein Client des Grand-Masters 102. Weiter kann die Bridge 104 beispielsweise ein Sub-Master für Clients der Bridge 104 sein. Wie in Fig. 1 gezeigt, hat die Bridge 104 zwei Clients, den Validator 106 und den Client 108. Der Validator 106 kann im Sinne der ISO 26262 sicher, engl, safe, validieren, ob ein Client, z.B. Client 108, oder eine Bridge, z.B. Bridge 104, des Netzwerks sich mittels PTP auf die gleiche Zeit synchronisiert haben. Das Validator 106 ist vorzugsweise ein Client der Bridge 104. Der Validator 106 weist einen vorgegebenen ASIL-Level, z.B. ASIL-D, auf. Der Client 108, die Bridge 106, und/oder der Grand-Master 102 müssen daher keinen vorgegebenen ASIL-Level erfüllen.

Als Client der Bridge 104 kann der Validator 106 eine lokale, nichtsynchrone Zeit T der lokalen, nichtsynchronen Uhr mit einer synchronisierten Zeit t der Bridge 104 als (Sub-)Master synchronisieren 1 10. Dazu kann der Validator 106 eine Zeitfunktion t'v(T) berechnen, mit der eine Abbildung der lokalen, nicht-synchronisierten Zeit T des Validators 106 auf die

synchronisierte Zeit t der Bridge 104 erfolgt.

Fig. 2 zeigt ein beispielhaftes Verfahren 200 zum Berechnen der Zeitfunktion t' eines Clients 202 zur Synchronisation der lokalen, nichtsynchronen Zeit mit der Zeit eines Masters 204. Der Client 202 kann der Validator 106, die Bridge 104 als Client, und/oder der Client 108 sein. Der Master 204 kann der Grand-Master 102 und/oder die Bridge 104 als Sub-Master sein.

Der Client 202 kann über einen ersten Kommunikationskanal, z.B. über PTP, die lokale, nichtsynchrone Zeit T mit dem Master 204 synchronisieren. Im Detail kann der Client 202 eine Sync-Nachricht 206 des Masters 204 empfangen und eine Empfangszeit T2 der Sync-Nachricht des Masters ermitteln. Der Client 202 kann ferner eine Follow-Up-Nachricht des Masters empfangen (nicht gezeigt), wobei die Follow-Up-Nachricht eine Sendezeit t1 der Sync-Nachricht am Master umfasst. Mittels der Follow-Up-Nachricht kann der Client 202 die Sendezeit der Sync-Nachricht am Master 204 ermitteln. Der Client 202 kann eine weitere Sync-Nachricht 208 des Masters 204 empfangen und eine Empfangszeit T12 der weiteren Sync-Nachricht des Masters ermitteln. Weiterhin kann der Client 202 eine weitere Follow-Up-Nachricht des Masters 204 empfangen (nicht gezeigt), wobei die weitere Follow-Up-Nachricht eine Sendezeit der weiteren Sync-Nachricht am Master 204 11 1 beinhaltet.

Der Client 202 kann eine Zeitfunktion zum Synchronisieren der lokalen, nichtsynchronisierten Uhr basierend auf der Empfangszeit der Sync-Nachricht, der Empfangszeit der weiteren Sync- Nachricht, der Sendezeit der Follow-Up-Nachricht und der Sendezeit der weiteren Follow-Up- Nachricht bestimmen. Im Detail kann der Client 202 einen Korrekturwert dS bestimmen, mit der die lokale, nichtsynchronisierte Zeit T korrigiert werden muss, um die synchronisierte Zeit t' zu erhalten. Der Korrekturwert dS kann wie folgt berechnet werden: dS = T2 - (t1 + pDelay), wobei pDelay eine Verzögerung ist, die bei dem Übermitteln der Nachricht über den ersten

Kommunikationskanal auftritt. Die Zeitfunktion des Client 202 t'(T) kann wie folgt ermittelt werden: t'(T) = T - dS. Mittels der berechneten Rate und der ermittelten Zeitfunktion kann der Client 202 eine Prädiktion einer Sendezeit einer empfangenen Sync-Nachricht des Masters 204 vornehmen. Mit dem Empfangen der dazugehörigen Follow-Up-Nachricht des Masters, die die Sendezeit des Masters 204 kann der Client 202 prüfen, ob die mittels der Zeitfunktion prädizierte Zeit des Client 202 synchron zu der tatsächlichen Zeit des Masters 204 ist.

Entspricht die prädizierte Sendezeit des Client 202 der tatsächlichen Sendezeit des Masters 204, sind die Zeiten des Clients 202 und des Masters 204 synchron. Ferner kann eine

Ratenabweichung dm berechnet werden, welche einen Gangunterschied der

nichtsynchronisierte Zeit T des Clients 202 von der synchronisierten Zeit des Masters 204 beschreibt: dm = (T12 -T2) / (t1 1 - 11 ). Diese kann verwendet werden, um die prädizierte Zeit des Clients 202 besser zu bestimmen.

Für das Bestimmen der Zeitfunktion kann der Client 202 eine Verzögerung pDelay zwischen dem Client 202 und dem Master 204 bestimmen. Wie in Fig. 1 gezeigt, kann die Verzögerung pDelay zwischen dem Validator 106 als Client und der Bridge 104 als Master, dem Client 108 und der Bridge 104 als Master, sowie der Bridge 104 als Client und dem Grand-Master 102 als Master bestimmt werden 1 12. Vorzugsweise wird die Verzögerung pDelay über den ersten Kommunikationskanal ermittelt.

Fig. 3 zeigt ein beispielhaftes Verfahren 300 zum Bestimmen der Verzögerung eines Path- Delay, kurz pDelay, in dem Netzwerk zwischen dem Client 202 und dem Master 204. Der Client 202 kann der Client 108, der Validator 106, und/oder die Bridge 104 als Client sein. Der Master 204 kann die Bridge 104 als Master und/oder der Grand-Master 102 sein. Der Client 202 kann eine Path-Delay-Request-Nachricht 302 erstellen und an den Master 204 senden, mit der ein Bestimmen der Verzögerung initiiert werden kann. Ferner kann der Client 202 eine

synchronisierte Sendezeit t'cpl der Path-Delay-Request-Nachricht 302 an den Master 204 bestimmen. Für das Bestimmen der synchronisierten Sendezeit kann der Client 202 zunächst eine Sendezeit mit der lokalen, nichtsynchronisierten Zeit ermitteln und die Zeitfunktion des Client 202 auf die ermittelte Sendezeit ausführen, um die synchronisierte Sendezeit zu erhalten. Das Master 204 kann die Path-Delay-Request-Nachricht 302 des Client 202 empfangen und eine synchronisierte Empfangszeit t'mp2 bestimmen. Dazu kann der Master 204 zunächst eine Empfangszeit mit einer lokalen, nichtsynchronisierten Zeit ermittelt und anschließen eine Zeitfunktion des Masters 204 auf die ermittelte Empfangszeit ausführen, um die synchronisierte Empfangszeit zu erhalten. Der Master 204 kann eine Path-Delay-Response-Nachricht 304 erzeugen und an den Client 204 senden. Für die Path-Delay-Response-Nachricht 304 kann der Master 204 eine synchronisierte Sendezeit t'mp3 ermitteln. Analog zum Bestimmen der synchronisierten Empfangszeit, kann der Master 204 die synchronisierte Sendezeit t'mp3 ermitteln. Der Client 202 kann die Path-Delay-Response-Nachricht 304 empfangen und eine synchronisierten Empfangszeit t'cp4 ermitteln. Die synchronisierte Empfangszeit t'cp4 kann der Client 202 ermitteln, in dem der Client 202 eine Empfangszeit mit der lokalen,

nichtsynchronisierten Zeit bestimmt und anschließen die Zeitfunktion des Client 202 auf die bestimmte Empfangszeit ausführt.

Weiter kann der Master 204 eine Path-Delay-Response-Follow-Up-Nachricht 306 erzeugen und an den Client 202 senden. Die Path-Delay-Response-Follow-Up-Nachricht 306 enthält die synchronisierte Empfangszeit t'mp2 und die synchronisierte Sendezeit t'mp3 des Masters 204. Der Client 202 kann die Path-Delay-Response-Follow-Up-Nachricht empfangen. Mit dem Empfangen der Path-Delay-Response-Follow-Up-Nachricht des Master 204 hat der Client 202 die synchronisierten Zeiten t'cpl , t'mp2, t'mp3, und t'cp4 bestimmt. Die Verzögerung pDelay kann aus einer Differenz zwischen der synchronisierten Empfangszeit t'mp2 und der synchronisierten Sendezeit t'cpl sowie aus einer Differenz zwischen der synchronisierten Empfangszeit t'cp4 und der synchronisierten Sendezeit t'mp3 ermittelt werden. Ferner kann der Client eine maximale Verzögerung pDmax auf Basis der synchronisierten Zeiten t'cpl , t'mp2, t'mp3, und t'cp4 bestimmen. Alternativ kann die maximale Verzögerung pDmax des Netzwerks fest vorgegeben sein, z.B. durch einen Konfigurationsparameter des Netzwerks.

Mittels der synchronisierten Zeiten t'cpl , t'mp2, t'mp3, und t'cp4 kann der Client 202 eine Zeitfunktion des Masters 204 validieren. Wie in Fig. 1 gezeigt kann beispielsweise mittels der synchronisierten Zeiten t'cpl , t'mp2, t'mp3, und t'cp4 der Validator 106 als Client 202 die Zeitfunktion der Bridge 104 als Master 204 validieren. Für das Validieren der Zeitfunktion des Masters 204 durch den Client 202 gilt:

1 ) t'cpl + pDmax « t'mp2 und 2) t'mp3 + pDmax » t'cp4, wobei pDmax die maximale Verzögerung zwischen dem Client 202 und dem Master 204 ist. Die maximale Verzögerung pDmax des Netzwerks des Fahrzeugs ist vorzugsweise kleiner als 100ns auf Grund der begrenzten Länge der Leitungen in dem Fahrzeug. Beim Bestimmen der synchronisierten Zeiten können kleinere Abweichungen auftreten, die einen exakten Vergleich der synchronisierten Zeiten verhindern. Um diese Abweichungen zu berücksichtigen, kann ein vorgegebenes Intervall definiert sein, das festlegt, wie stark eine Abweichung der

synchronisierten Zeiten zwischen dem Client und dem Master sein darf. Dies ermöglicht einen ungefähren Vergleich der synchronisierten Zeiten des Clients 202 mit den synchronisierten Zeiten des Masters 204. Sind die Bedingungen 1 ) und 2) erfüllt, kann die Zeitfunktion des Masters 204 als korrekt angenommen werden.

Ist der Master 204 beispielsweise eine Bridge 104 mit mehreren Clients 202, z.B. Client 108 und Validator 106, wird davon ausgegangen, dass die Bridge 104 als Master 204 die validierte Zeitfunktion für alle Clients 202 der Bridge 104 anwendet. Ein Validieren der Zeitfunktion der Bridge 104 durch einen Client 202, z.B. Validator 106, ist somit ausreichend, um die

Zeitfunktion der Bridge 104 als Master 204 für alle Clients 202 der Bridge 104 zu validieren.

Zusätzlich kann der Validator 106 als Client 202 Validierungsanfragenachrichten von Clients 202, z.B. Client 108 und/oder Bridge 104 als Client 202, empfangen 1 14. Die

Validierungsanfragenachrichten können von dem Validator 106 über einen zweiten

Kommunikationskanal empfangen werden. Der zweite Kommunikationskanal ist unterschiedlich zu dem ersten Kommunikationskanal. Beispielsweise kann der zweite Kommunikationskanal SOME/IP für das Übermitteln der Validierungsanfragenachricht verwenden. Das Verwenden des zweiten Kommunikationskanals ermöglicht ein out-of-band Übertragen der

Validierungsanfragenachrichten. Des Weiteren können die Validierungsanfragenachrichten zeitunkritisch über den zweiten Kommunikationskanal übertragen werden. Eine

Validierungsanfragenachricht eines Clients 202, z.B. Client 108 oder Bridge 104 als Client, an den Validator 106 kann eine synchronisierte Sendezeit einer Path-Delay-Request-Nachricht, eine synchronisierte Empfangszeit einer Path-Delay-Response-Nachricht, eine synchronisierte Empfangszeit einer Path-Delay-Request-Nachricht, und eine synchronisierte Sendezeit einer Path-Delay-Response-Nachricht zwischen einem Client 202 und einem Master 204 umfassen. Weiterhin ist auf dem Validator 106 eine vorgegebene Netzwerktopologie gespeichert. Die Netzwerktopologie weist vorzugsweise eine Baumstruktur auf, ausgehend von dem Grand- Master 102 als Wurzelelement der Topologie. Der Validator 106 kann eine maximale

Verzögerung zwischen einem Client 202, von dem die Validierungsanfragenachricht empfangen wurde, und einem zugehörigen Master 204 des Netzwerks basierend auf einer vorgegebenen Netzwerktopologie bestimmen. Basierend auf der synchronisierten Sendezeit der Path-Delay- Request-Nachricht, der synchronisierten Empfangszeit der Path-Delay-Response-Nachricht, der synchronisierten Empfangszeit der Path-Delay-Request-Nachricht, der synchronisierten

Sendezeit der Path-Delay-Response-Nachricht, und der bestimmten maximalen Verzögerung kann der Validator 106, wie oben beschrieben, die Zeitfunktion des Masters 204 des

anfragenden Clients 202 validieren.

Durch ein iteratives Validieren der Zeitfunktionen der Master 204 durch den Validator 106 kann der Validator 106 sicher im Sinne der ISO 26262 feststellen, dass alle Clients 202 des

Netzwerks sich auf die gleiche Zeit synchronisiert haben. Die Zeitsynchronisation kann somit sicher validiert werden, ohne dass eine Sicherheitslast der Client 108, die Bridge 104, und der Grand-Master 102 tragen muss. Die Sicherheitslast wird nur von dem Validator 106 getragen.

Weiterhin kann der Validator 106 eine weitere Validierungsanfragenachricht eines Clients 202, z.B. Client 108 oder Bridge 104 als Client, über den zweiten Kommunikationskanal empfangen 1 14. Die weitere Validierungsnachricht kann eine prädizierte Empfangszeit einer Sync-Nachricht und eine synchronisierte Sendezeit einer Sync-Nachricht aus einer Follow-Up-Nachricht zwischen einem Client 202 und einem Master 204 umfassen. Der Validator 106 kann die Zeitfunktion eines Clients 202 valideren, indem der Validator 106 bestimmt, ob die prädizierte Empfangszeit der Sync-Nachricht des Clients 202 zuzüglich einer vorgegebenen, maximale Verzögerung zwischen dem Client 202 und dem Master 204 einen Wert ergibt, der innerhalb eines vorgegebenen Intervallbereichs um die synchronisierte Sendezeit der Sync-Nachricht des dem Clients zugehörigen Masters liegt. Falls der Wert innerhalb des vorgegebenen

Intervallbereichs liegt, kann der Validator 106 die Zeitfunktion des Clients 202 als valide bestimmen. Falls der Wert nicht innerhalb des vorgegebenen Intervallbereichs liegt, kann der Validator 106 die Zeitfunktion des Clients 202 als nicht valide bestimmen. Vorzugsweise kann der Validator 106 das Ergebnis des Validierens der Zeitfunktion des Clients 202 an eine oder mehrere sicherheitsrelevante Funktionen übermitteln. Durch die weitere

Validierungsanfragenachricht kann der Validator 106 effizient Zeitfunktionen von Clients 202 des Netzwerks iterativ validieren bis alle Zeitfunktionen der Clients 202 des Netzwerks validiert wurden.

Bezugszeichenliste

100 System

102 Grand-Master

104 Bridge

106 Validator

108 Client

1 10 Synchronisieren der Zeit über einen ersten Kommunikationskanal

1 12 Bestimmen einer Verzögerung über einen ersten Kommunikationskanal

1 14 Übermitteln bzw. Empfangen von Validierungsanfragenachrichten über einen

Kommunikationskanal

200 Verfahren

202 Client

204 Master

206 Sync-Nachricht

208 Sync-Nachricht

300 Verfahren

302 Path-Delay-Request-Nachricht

304 Path-Delay-Response-Nachricht

306 Path-Delay-Response-Follow-Up-Nachricht