WO2015164897A1 - Verfahren zur flexiblen steuerung von zeitgesteuerten datenflüssen in einem verteilten computersystem - Google Patents

Verfahren zur flexiblen steuerung von zeitgesteuerten datenflüssen in einem verteilten computersystem Download PDF

Info

Publication number
WO2015164897A1
WO2015164897A1 PCT/AT2015/050103 AT2015050103W WO2015164897A1 WO 2015164897 A1 WO2015164897 A1 WO 2015164897A1 AT 2015050103 W AT2015050103 W AT 2015050103W WO 2015164897 A1 WO2015164897 A1 WO 2015164897A1
Authority
WO
WIPO (PCT)
Prior art keywords
ttk
time
ttdf
triggered
connectors
Prior art date
Application number
PCT/AT2015/050103
Other languages
English (en)
French (fr)
Inventor
Hermann Kopetz
Original Assignee
Fts Computertechnik Gmbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fts Computertechnik Gmbh filed Critical Fts Computertechnik Gmbh
Publication of WO2015164897A1 publication Critical patent/WO2015164897A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Definitions

  • the invention relates to a method for, in particular flexible, control of data flows in a distributed computer system, which comprises a distributed computer system a plurality of node computers and a plurality of connectors.
  • the invention relates to a distributed computer system, in particular a distributed real-time computer system comprising a plurality of node computers and a plurality of connectors.
  • the invention also relates to a time-triggered connector (TTK) for such a computer system.
  • TTK time-triggered connector
  • TTDF time-triggered data flow
  • TTDF the flow of information is unidirectional, i. there are no repercussions of a fault from the receiver to the transmitter.
  • the error detection can be performed by the receiver on the basis of its a priori knowledge of the reception times and does not require acknowledgment messages.
  • the omission of the acknowledgment messages increases the available bandwidth for application messages and simplifies the realization of multicast data flows. • The time planning of the TTDF enables trouble-free high utilization of the physical transmission channels.
  • a bandwidth of less than 1 Mbit / s is required to transport this TTDF.
  • more than a thousand such TTDFs can be transmitted on a physical channel with a bandwidth of 1 Gbit / second.
  • a large distributed real-time system has to be adapted and extended again and again to the constantly changing external requirements.
  • a time-triggered connector is a special distribution unit that distributes data flows according to a priori schedules. According to the invention, each TTDF or each flexible TTDF or each TTDF to be controlled flexibly is routed via at least one such TTK.
  • TTDF which can be controlled flexibly is understood to mean a TTDF that is to be controlled flexibly, in contrast to data flows which are not to be flexibly controlled or which need not be flexibly controlled.
  • Flexible refers to a flexible control in terms of time and / or space.
  • flexible means that the recipients of a TTDF and / or the times of transmission of the TT messages can be adapted to changing circumstances.
  • the software in the transmitter does not have to be changed.
  • the clock synchronization of the node computers is realized by software.
  • the clock synchronization of the node computer can also be implemented by hardware of the node computer. Many node computers do not have corresponding hardware. In order to use such node computers, it is expedient to realize the clock synchronization of the node computer in software.
  • Each TTDF is transported to a port of a TTK, which TTK is characterized in that another port of this TTK is connected to a monitor node computer.
  • each TTDF is to be transported to a monitor port of a TTK.
  • a monitor node can be connected to this monitor port in order to observe all TTDF occurring in the system without a sample effect.
  • Each TTDF message contains the time of origin of the data transported in the TTDF message.
  • a TTDF is transported via more than one TTK.
  • a TTDF message arriving at a port of a TTK is output at the same or different times at several ports of the TTK.
  • the routes of the TTDF between the node computers are determined by the totality of the parameter lists stored in the TTK.
  • a TTDF is transported on two redundant disjoint routes from the sending node computer to the receiving node computer.
  • TTK time-triggered connectors
  • At least one port of each node computer is physically connected to a port of a TTK, and / or
  • a plurality of TTK are arranged on the route of a TTDF between the port of the transmitting node computer and the port of the receiving node computer, and / or
  • the node computer and the TTK are arranged on a board and the physical connections between the ports are realized by printed conductors on the board, and / or
  • a node computer and one or more TTK are integrated in a chip, and / or
  • the TTDF messages correspond to the TTEthernet standard.
  • TTK time-triggered connector
  • the present invention is in the field of computer technology. It describes an innovative method and apparatus, such as programmable timing connectors that can separate the topology of the communication from processing in a distributed real-time computer system and how the data flows between the node computers of a distributed real-time system can be flexibly controlled. Definitions
  • a DF graph is a directed graph describing the DF between the processing processes of a distributed computer system, where the processing processes are the nodes and the DF are the edges of the DF graph.
  • a DF message A message from the sequence of messages from a DF.
  • a DF message preferably contains a header, the time of origin of the data transported in the DF message, the payload data and a check field for checking the correctness of the transported data.
  • the time of origin of the payload data transported in the DF message is the time at which the sensor acquired the data.
  • Timed data flow A data flow in which the time interval between two consecutive DF messages is constant and the periodic transmission and reception times of the DF messages are announced a priori to the sender and receiver.
  • TTDF message A message from the sequence of messages from a TTDF.
  • Port A physical device in a node computer or in a time-triggered connector (TTK), which includes the electronics for sending and receiving messages.
  • TTK time-triggered connector
  • Physical channel A channel for transmitting a message between the ports at the endpoints of the channel. Two ports are physically connected when there is either a wired or wireless channel for transmitting messages between the ports.
  • two slots can be active at the same time, ie two messages, each in one direction, can be transported simultaneously.
  • Time Triggered Connector A switching unit that has access to global time and has multiple ports, with a specified a priori parameter list specifying at which recurring time a TTDF message arrives at a port of the TTK and at which recurring time this TTDF message is issued to one or more ports of the TTK.
  • a TTK may latch a TTDF message until there is a free slot on the physical channel to the next receiver of the message.
  • Route of a DF The sequence of all physical channels between the port of the sending node computer, the ports of the intermediate TTKs and the port of the receiving node computer of the DF. Two routes are disjoint if the routes do not have a TTK located on both routes.
  • FIG. 1 shows a simple, exemplary data flow graph
  • FIG 2 shows an example of the connection of node computers to time-triggered connectors.
  • a DF graph is a directed graph describing the data flows between the processing processes of a distributed computer system, where the processing processes form the nodes and the data flows form the edges of the DF graph.
  • Figure 1 shows a data flow graph with 6 nodes and 9 edges as may occur in a robotic application.
  • the data flows are represented by the directed arrows 100.
  • the sensor process 101 sends a data flow to the fusion process 105.
  • the sensor process 102 sends a data flow to the preprocessing process 104, which sends the results of preprocessing to the fusion process 105.
  • the fusion process 105 sends a data flow to the issue process 106.
  • the issue process sends a data flow to the sensor process 101 and to the sensor process 102. All of the named processes, ie the processes 101, 102, 104, 105 and 106, can send specified data flows to the monitor process 103.
  • FIG. 2 shows the bi-directional physical channels 200 connecting the processing processes of the DF graph of FIG. 1 performed on the node computers. At least one port of each node computer is connected via a bi-directional physical channel to at least one port of a time-triggered connector (TTK).
  • TTK time-triggered connector
  • a schedule is loaded in each node computer and in each TTK indicating at which periodically recurring times a DF message is to be sent from a port over a physical channel and at which recurring periodic time the DF message is at the receive port arrives.
  • the precision determines the granularity of the time base [4] and thus the minimum time interval between two messages. Assuming that the transmission of a message takes 10 ⁇ sec and the precision is 10 ⁇ sec, the best possible utilization of a physical channel is 50%. With a precision of 1 ⁇ sec, the best possible utilization of the physical channel is 90%. Preferably, therefore, it is assumed that the precision of the global time of TTK is better than sec. As stated in [4] on page 70, such a small precision is achievable when a particular hardware mechanism (such as described in the IEEE 1588 standard) of the communication controller or TTK records the time of arrival of a synchronization message.
  • the clock synchronization of the node computer can also be done via such a hardware mechanism.
  • the clock synchronization of the node computer is realized by the software of the node computer without special hardware support.
  • the achievable by software precision is at the level of the operating system in the range of 10 microseconds.
  • This inferior precision of the global time of the node computers reduces the processing time available to the node computer in a period and must be taken into account when creating the schedule for a node computer.
  • this reduction in processing time is not problematic if the sampling interval in the example above is 10 msec- much longer than the precision.
  • the reduction of the processing time by the inferior precision of 10 ⁇ sec is only 0.1%.
  • a parameter list is loaded a priori which specifies how long an incoming DF message is to be temporarily stored in the TTK before it is to be output to a port of the TTK specified in the parameter list.
  • the syntactic structure of a TTDF message can correspond to the TTEthernet standard [5].
  • the date of origin of the data transported in the DF message should be specified in each TTDF message in order to be able to classify the data in a timely manner.
  • a sending and a receiving node computer have two ports, then these ports can be used to transport messages to two independent TTKs. Let it then configure from the sending node computer to the receiving node computer two redundant routes that are disjoint to each other.
  • a communication system configured in this way tolerates the loss of a message or the failure of a TTK.
  • the node computers and the TTK may be arranged on a single board.
  • the physical channels are realized by means of the printed conductors on the board.
  • the present invention results in a substantial decoupling of the transport of the data flows from the processing of the data in a distributed real-time system and thus enables the flexible control of the data flows without impairing the ongoing operation.
  • the feedbackless unidirectional flow of data reduces the complexity of the design and allows for expansion of existing systems without compromising the functionality of running applications.

Abstract

Die Erfindung betrifft ein Verfahren zur flexiblen Steuerung von Datenflüssen in einem verteilten Computersystem, welches verteilte Computersystem eine Vielzahl von Knotenrechnern und eine Vielzahl von Konnektoren umfasst, wobei zumindest ein Teil der, vorzugsweise alle Konnektoren time-triggered Konnektoren (TTK) sind, alle Knotenrechner und alle time- triggered Konnektoren (TTK) Zugriff auf eine globale Zeit haben, wobei die Uhrensynchronisation der time-triggered Konnektoren (TTK) durch Hardwaremechanismen, insbesondere durch Hardwaremechanismen der time-triggered Konnektoren (TTK), unterstützt oder realisiert wird, und wobei die Uhrensynchronisation der time-triggered Konnektoren (TTK) besser ist als 1 μsec ist, und wobei alle von einem Knotenrechner ausgehenden oder eintreffenden, flexibel zu steuernden TT-Datenflüsse (TTDF) auf einem oder mehreren physikalischen Kanälen zwischen einem oder mehreren Ports des Knotenrechners und einem oder mehreren Ports einer oder mehrerer time-triggered Konnektoren (TTK) transportiert werden, und wobei jeder time-triggered Konnektor (TTK) auf der Basis einer ihm a priori bekannt gegeben Parameterliste entscheidet, wie lange eine Nachricht eines TTDF (DF Nachricht) im time-triggered Konnektor (TTK) zwischen-zu-speichern ist und zu welchem, insbesondere zukünftigen, Zeitpunkt und an welchem Port des time-triggered Konnektor (TTK) die zwischengespeicherte DF Nachricht auszugeben ist. Weiters betrifft die Erfindung Computersystem zum Durchführen eines solchen Verfahrens.

Description

VERFAHREN ZUR FLEXIBLEN STEUERUNG VON ZEITGESTEUERTEN DATENFLÜSSEN IN EINEM
VERTEILTEN COMPUTERSYSTEM
Die Erfindung betrifft ein Verfahren zur, insbesondere flexiblen, Steuerung von Datenflüssen in einem verteilten Computersystem, welches verteilte Computersystem eine Vielzahl von Knotenrechnern und eine Vielzahl von Konnektoren umfasst.
Weiters betrifft die Erfindung verteiltes Computersystem, insbesondere ein verteiltes Echtzeit- Computersystem, umfassend eine Vielzahl von Knotenrechnern und eine Vielzahl von Konnektoren.
Schließlich betrifft die Erfindung noch einen Time-Triggered Konnektor (TTK) für ein solches Computersystem.
In vielen verteilten Echtzeitsystemen (Echtzeit-Computersystemen) wird die Umgebung des Echtzeitsystems durch eine Vielzahl von Sensoren periodisch beobachtet. Nach einer sich aus der jeweiligen Aufgabenstellung ergebenden Vorverarbeitung der beobachteten Rohdaten auf einem mit dem Sensor unmittelbar verbundenen Knotenrechner wird periodisch eine Nachricht gebildet, die die wesentlichen Merkmale der Beobachtung beinhaltet. Diese periodische Nachricht muss zur weiteren Verarbeitung an die folgenden Verarbeitungsprozesse transportiert werden. Wir bezeichnen eine zeitliche Folge von solchen periodischen Nachrichten als einen Datenfluss. Ein Datenfluss ist ein zeitgesteuerter Datenfluss (time-triggered data flow— TTDF), wenn die periodischen Nachrichten eines Datenflusses (die DJ --Nachrichten) zu vorab festgelegten wiederkehrenden Zeitpunkten, die dem Sender und dem Empfänger a priori bekannt sind, transportiert werden. Im Vergleich zu einem ereignisgesteuerten Datenfluss hat ein TTDF folgende wesentliche Vorteile:
• In einem TTDF ist der Informationsfluss unidirektional, d.h. es gibt keine Rückwirkungen eines Fehlers vom Empfänger zum Sender.
• Die Fehlererkennung kann vom Empfänger auf der Basis seines a priori Wissens der Empfangszeitpunkte durchgeführt werden und erfordert keine Quittungsnachrichten.
• Der Wegfall der Quittungsnachrichten erhöht die verfügbare Bandbreite für Applikationsnachrichten und vereinfacht die Realisierung von Multicast Datenflüssen. • Die zeitliche Planung der TTDF ermöglicht eine störungsfreie hohe Auslastung der physikalischen Übertragungskanäle.
Wenn z.B. ein Sensor alle 10 msec eine DF-Nachricht von 1000 Byte Länge sendet (dies entspricht einer Abtastrate von 100 Hz), so benötigt man zum Transport dieses TTDF eine Bandbreite von weniger als 1 Mbit/ Sekunde. Bei entsprechender Planung können auf einem physikalischen Kanal mit einer Bandbreite von 1 Gbit/Sekunde mehr als tausend solcher TTDF übertragen werden.
Es ist eine Aufgabe der Erfindung, Datenflüsse zwischen den Knotenrechnern eines verteilten Echtzeitsystems flexibel steuern zu können.
Diese Aufgabe wird mit einem eingangs erwähnten Verfahren und einem eingangs erwähnten Computersystem dadurch gelöst, dass erfindungsgemäß zumindest ein Teil der, vorzugsweise alle Konnektoren time-triggered Konnektoren (TTK) sind, alle Knotenrechner und alle time-triggered Konnektoren (TTK) Zugriff auf eine globale Zeit haben, wobei die Uhrensyn- chronisation der time-triggered Konnektoren (TTK) durch Hardwaremechanismen, insbesondere durch Hardwaremechanismen der time-triggered Konnektoren (TTK), unterstützt oder realisiert wird, und wobei alle von einem Knotenrechner ausgehenden oder eintreffenden, - insbesondere flexibel - zu steuernden TT-Datenflüsse (TTDF) auf einem oder mehreren physikalischen Kanälen zwischen einem oder mehreren Ports des Knotenrechners und einem oder mehreren Ports einer oder mehrerer time-triggered Konnektoren (TTK) transportiert werden, und wobei in jede TTK a priori eine Parameterliste geladen wird, die angibt, wie lange eine eingehende Nachricht eines TTDF (DF Nachricht) im TTK zwischen-zu-speichern sowie zu welchem, insbesondere zukünftigen, Zeitpunkt und an welchem Port des time-triggered Konnektor (TTK) die DF Nachricht auszugeben ist, und wobei jeder time-triggered Konnektor (TTK) auf der Basis dieser Parameterliste eingehende DF Nachrichten zwischenspeichert bzw. zu dem in der Parameterliste angegebenen Zeitpunkt an dem angegebenen Port ausgibt.
Ein großes verteiltes Echtzeitsystem muss immer wieder an die sich ständig ändernden externen Anforderungen angepasst und erweitert werden.
Durch die vorliegende Erfindung werden Anpassungen wesentlich erleichtert, da die Steuerung und der Transport der Datenflüsse zwischen den Knotenrechnern von der Verarbeitung der Daten innerhalb der Knotenrechner getrennt wird. Diese Trennung erfolgt durch die Einführung von Konnektoren [5, S.39], insbesondere von time-triggered Konnektoren. Ein time- triggered Konnektor (TTK) ist eine spezielle Verteilereinheit, die Datenflüsse entsprechend a priori erstellter Zeitpläne verteilt. Erfindungsgemäß wird jeder TTDF oder jeder flexible TTDF bzw. jeder flexibel zu steuernde TTDF über mindestens einen solchen TTK geleitet.
Unter„flexibel zu steuernder TTDF" ist dabei ein TTDF zu verstehen, der flexibel gesteuert werden soll, im Gegensatz zu Datenflüssen, die nicht flexibel gesteuert werden sollen oder nicht flexibel gesteuert werden müssen.
„Flexibel" bezieht sich dabei auf eine in zeitlicher und/ oder räumlicher Hinsicht flexible Steuerung.
Insbesondere ist unter„flexibel" zu verstehen, dass die Empfänger eines TTDF und/ oder die Zeitpunkte des Sendens der TT Nachrichten an veränderte Umstände angepasst werden können.
Die Software im Sendern muss dazu nicht geändert werden.
Bevorzugte Ausführungsformen des erfindungsgemäßen Verfahrens und des erfindungsgemäßen Computersystems, welche für sich alleine oder in beliebiger Kombination miteinander realisiert sein können, sind im Folgenden beschrieben:
> Die Uhrensynchronisation der Knotenrechner ist durch Software realisiert. Prinzipiell kann die Uhrensynchronisation der Knotenrechner auch durch Hardware der Knotenrechner realisiert sein. Viele Knotenrechner verfügen aber nicht über entsprechende Hardware. Um auch solche Knotenrechner verwenden zu können, ist es zweckmäßig, die Uhrensynchronisation der Knotenrechner in Software zu realisieren.
> Jeder TTDF wird zu einem Port eines TTK transportiert, welcher TTK dadurch gekennzeichnet ist, dass ein weiterer Port dieses TTK mit einem Monitorknotenrechner verbunden ist. Vorzugszeise soll jeder TTDF an einen Monitorport eines TTK transportiert werden. So kann z.B. bei Auftreten eines Problems ein Monitorknoten an diesen Monitorport angeschlossen werden, um alle im System auftretenden TTDF ohne probe effect beobachten zu können. > In jeder TTDF Nachricht ist der Zeitpunkt der Entstehung der in der TTDF Nachricht transportierten Daten enthalten.
> Ein TTDF wird über mehr als einen TTK transportiert.
> Eine an einem Port eines TTK eintreffende TTDF Nachricht wird zu gleichen oder zu unterschiedlichen Zeitpunkten an mehreren Ports des TTK ausgegeben.
> Die Routen der TTDF zwischen den Knotenrechnern werden durch die Gesamtheit der in den TTK gespeicherten Parameterlisten bestimmt.
> Ein TTDF wird auf zwei redundanten disjunkten Routen vom sendenden Knotenrechner zum empfangenden Knotenrechner transportiert.
> Die Uhrensynchronisation der time-triggered Konnektoren (TTK) ist besser als 1 μsec.
In Zusammenhang mit dem erfindungsgemäßen Computersystem kann es weiters noch von Vorteil sein, wenn
> mindestens ein Port jedes Knotenrechners mit einem Port eines TTK physikalisch verbunden ist, und/ oder
> auf einer Route eines TTDF zwischen dem Port des sendenden Knotenrechners und dem Port des empfangenden Knotenrechners mehrere TTK angeordnet sind, und/o- der
> die Knotenrechner und die TTK auf einer Platine angeordnet sind und die physikalischen Verbindungen zwischen den Ports durch Leiterbahnen auf der Platine realisiert werden, und/ oder
> ein Knotenrechner und ein oder mehrere TTK in einem Chip integriert sind, und/ oder
> die TTDF Nachrichten dem TTEthernet Standard entspricht.
Ein erfindungsgemäßer Time-Triggered Konnektor (TTK) für ein oben beschriebenes Computersystem zeichnet sich dadurch aus, dass der TTK einen Speicher zur Zwischenspeiche- rung von TTDF Nachrichten enthält.
Die vorliegende Erfindung liegt im Bereich der Computertechnik. Sie beschreibt ein innovatives Verfahren und eine Vorrichtung, wie durch parametrisierbare zeitgesteuerte Konnektoren die Topologie der Kommunikation von der Verarbeitung in einem verteilten Echtzeitcomputersystem getrennt werden kann und wie die Datenflüsse zwischen den Knotenrechnern eines verteilten Echtzeitsystems flexibel gesteuert werden können. Begriffserklärungen
Datenfluss (DF): Eine zeitliche Folge von Nachrichten mit identischer Syntax.
DF-Graph: Ein DF-Graph ist ein gerichteter Graph, der die DF zwischen den Verarbeitungsprozessen eines verteilten Computersystems beschreibt, wobei die Verarbeitungsprozesse die Knoten und die DF die Kanten des DF-Graphen bilden.
DF Nachricht: Eine Nachricht aus der Folge von Nachrichten eines DF. Eine DF Nachricht beinhaltet vorzugsweise einen Header, den Zeitpunkt der Entstehung der in der DF Nachricht transportierten Daten, die Payload Daten und ein Check-Feld zur Überprüfung der Korrektheit der transportierten Daten. Bei einem Sensorsystem ist der Zeitpunkt der Entstehung der in der DF Nachricht transportierten Payload Daten der Zeitpunkt der Erfassung der Daten durch den Sensor.
Zeitgesteuerter Datenfluss (time-triggered Datenfluss TTDF): Ein Datenfluss, bei dem das Zeitintervall zwischen zwei aufeinanderfolgende DF Nachrichten konstant ist und die periodischen Sende- und Empfangszeitpunkte der DF Nachrichten dem Sender und Empfänger a priori bekannt gegeben werden.
TTDF Nachricht: Eine Nachricht aus der Folge von Nachrichten eines TTDF.
Port: Eine physikalische Baueinheit in einem Knotenrechner oder in einem Time-triggered Konnektor (TTK), die die Elektronik zum Senden und zum Empfangen von Nachrichten um- fasst.
Physikalischer Kanal: Ein Kanal zur Übertragung einer Nachricht zwischen den Ports an den Endpunkten des Kanals. Zwei Ports sind physikalisch verbunden wenn zwischen den Ports entweder ein leitungsgebundener oder drahtloser Kanal zur Übertragung von Nachrichten existiert.
Slot: Ein Zeitintervall, während dessen eine Nachricht auf einem physikalischen Kanal in einer Richtung transportiert wird. In einem bi-direktionalen physikalischen Kanal können gleichzeitig zwei Slots aktiv sein, d.h. es können gleichzeitig zwei Nachrichten, jede in einer Richtung, transportiert werden.
Time-Triggered Konnektor (TTK): Eine Vermittlungseinheit, die Zugriff auf die globale Zeit hat und die über mehrere Ports verfügt, wobei in einer a priori festgelegten Parameterliste spezifiziert ist, zu welchem wiederkehrenden Zeitpunkt eine TTDF-Nachricht an einem Port des TTK eintrifft und zu welchem wiederkehrenden Zeitpunkt diese TTDF-Nachricht an einen oder mehreren Ports des TTK auszugegeben ist. Ein TTK kann eine TTDF-Nachricht durch Zwischenspeicherung so lange verzögern, bis ein freier Slot auf dem physikalischen Kanal zum nächsten Empfänger der Nachricht gegeben ist.
Route eines DF: Die Sequenz aller physikalischen Kanäle zwischen dem Port des sendenden Knotenrechnern, den Ports der zwischengeschalteten TTKs und dem Port des empfangenden Knotenrechners des DF. Zwei Routen sind disjunkt, wenn die Routen über keinen TTK führen, der auf beiden Routen angeordnet ist.
Im Folgenden ist die Erfindung an Hand der Zeichnung beispielhaft erläutert, und es zeigt Fig. 1 einen einfachen, beispielhaften Datenfluss Graphen, und
Fig. 2 beispielhaft die Anbindung von Knotenrechnern an Time-triggered Konnektoren.
Das folgende konkrete Beispiel behandelt eine der vielen möglichen Realisierungen des neuen Verfahrens.
Im Rahmen der Systementwicklung eines umfangreichen verteilten Echtzeitsystem wird ausgehend von der gegebenen Aufgabenstellung zuerst ein Datenflussgraph erstellt [2,3] . Ein DF Graph ist ein gerichteter Graph, der die Datenflüsse zwischen den Verarbeitungsprozessen eines verteilten Computersystems beschreibt, wobei die Verarbeitungsprozesse die Knoten und die Datenflüsse die Kanten des DF Graphen bilden.
Fig. 1 zeigt einen Datenflussgraphen mit 6 Knoten und 9 Kanten, wie er in einer Roboteranwendung auftreten kann. Die Datenflüsse werden durch die gerichteten Pfeile 100 dargestellt. Der Sensorprozess 101 sendet einen Datenfluss zu dem Fusionsprozess 105. Der Sensorprozess 102 sendet einen Datenfluss zum Vorverarbeitungsprozess 104, der die Ergebnisse der Vorverarbeitung zum Fusionsprozess 105 sendet. Der Fusionsprozess 105 sendet einen Datenfluss zum Ausgabeprozess 106. Der Ausgabeprozess sendet einen Datenfluss zum Sensorprozess 101 und zum Sensorprozess 102. Alle genannten Prozesse, d.s. die Prozesse 101, 102, 104, 105 und 106 können spezifizierte Datenflüsse zum Monitorprozess 103 senden.
Im Folgenden wird angenommen, dass jeder Verarbeitungsprozess einem Knotenrechner zugewiesen wird.
Fig. 2 zeigt die bi-direktionalen physikalischen Kanäle 200, die die auf den Knotenrechnern durchgeführten Verarbeitungsprozesse des DF-Graphen der Fig. 1 verbinden. Mindestens ein Port jedes Knotenrechners wird über einen bi-direktionalen physikalischen Kanal mit mindestens einem Port eines time-triggered Konnektors (TTK) verbunden. In Fig. 2 sind die Knotenrechner 101 und 102 mit dem TTK 201, die Knotenrechner 103 und 104 mit dem TTK 203 und die Knotenrechner 105 und 106 mit dem TTK 202 verbunden. Wenn keine Monitorkomponente 103 vorhanden ist, so bleibt der physikalische Kanal von der TTK 203 zu der Monitorkomponente 103 offen. Aus Fig. 2 ist ersichtlich, dass ein TTDF über mehrere TTK gesendet werden kann.
Vor Inbetriebnahme des verteilten Computersystems wird in jedem Knotenrechner und in jeder TTK ein Zeitplan geladen der angibt, zu welchem periodisch wiederkehrenden Zeitpunkten eine DF Nachricht von einem Port über einen physikalischen Kanals zu senden ist und zu welchem wiederkehrenden periodischen Zeitpunkt die DF Nachricht beim Empfangs-Port eintrifft.
Erfindungsgemäß wird angenommen, dass alle Knotenrechner und alle TTK Zugriff auf eine globale Zeit bekannter Präzision haben.
In einer zeitgesteuerten TTK bestimmt die Präzision die Granularität der Zeitbasis [4] und damit den minimalen zeitlichen Abstand zweier Nachrichten. Wenn angenommen wird, dass die Übertragung einer Nachricht 10 μ sec dauert und die Präzision 10 μsec beträgt, so ist liegt die bestmögliche Auslastung eines physikalischen Kanals bei 50% . Bei einer Präzision von 1 μsec liegt die bestmögliche Auslastung des physikalischen Kanals bei 90% . Vorzugsweise wird daher angenommen, dass die Präzision der globalen Zeit der TTK besser ist als ^sec. Wie in [4] auf Seite 70 angeführt, ist eine so kleine Präzision erreichbar, wenn eine spezieller Hardwaremechanismus (wie z.B. im IEEE 1588 Standard beschrieben) des Kommunikationskontrollers bzw. des TTK den Zeitpunkt des Eintreffens einer Synchronisationsnachricht aufnimmt.
Die Uhrensynchronisation der Knotenrechner kann ebenfalls über einen solchen Hardwaremechanismus erfolgen.
Da aber nicht vorausgesetzt wird, dass ein Knotenrechner über einen solchen speziellen Hardwaremechanismus zur Unterstützung der Uhrensynchronisation verfügt, wird in diesem Fall die Uhrensynchronisation der Knotenrechner von der Software des Knotenrechners ohne spezielle Hardwareunterstützung realisiert. Die mittels Software erreichbare Präzision liegt auf der Ebene des Betriebssystems im Bereich von 10 μsec. Diese schlechtere Präzision der globalen Zeit der Knotenrechner (im Vergleich zu der Präzision der TTK) reduziert die in einer Periode dem Knotenrechner zur Verfügung stehende Verarbeitungszeit und muss bei der Erstellung des Zeitplans für einen Knotenrechner berücksichtigt werden. Diese Reduktion der Verarbeitungszeit ist jedoch nicht problematisch, wenn das Abtastintervall— im obigen Beispiel 10 msec— viel länger ist als die Präzision. In obigem Beispiel beträgt die Reduktion der Verarbeitungszeit durch die schlechtere Präzision von 10 μsec nur 0.1 % .
In jede TTK wird a priori eine Parameterliste geladen die angibt, wie lange eine eingehende DF Nachricht im TTK zwischen-zu-speichern ist, ehe sie an einen in der Parameterliste spezifizierten Port des TTK auszugeben ist. Somit können die Routen aller TTDF über die in den TTK vorhandenen Parameterlisten flexibel bestimmt werden, ohne die Software der Knotenrechner ändern zu müssen.
Die syntaktische Struktur einer TTDF Nachricht kann dabei dem TTEthernet Standard [5] entsprechen.
Vorzugsweise soll in jeder TTDF Nachricht der Entstehungszeitpunkt der in der DF Nachricht transportierten Daten angegeben werden, um die Daten zeitgerecht einordnen zu können.
Wenn ein sendender und ein empfangender Knotenrechner über zwei Ports verfügt, so können über diese Ports Nachrichten zu zwei unabhängigen TTK transportiert werden. Es lassen sich dann vom sendenden Knotenrechner zum empfangenden Knotenrechner zwei redundante Routen konfigurieren, die zueinander disjunkt sind. Ein so konfiguriertes Kommunikationssystem toleriert den Verlust einer Nachricht oder der Ausfall einer TTK.
In einer konkreten Implementierung können die Knotenrechner und die TTK auf einer einzigen Platine angeordnet sein. In diesem Fall werden die physikalischen Kanäle mittels der Leiterbahnen auf der Platine realisiert.
Es können auch ein Knotenrechner und die mit ihm direkt verbundene TTK auf einem einzigen Chip realisiert werden.
Die vorliegende Erfindung führt zu einer weitgehenden Entkopplung des Transports der Datenflüsse von der Verarbeitung der Daten in einem verteilten Echtzeitsystem und ermöglicht somit die flexible Steuerung der Datenflüsse ohne Beeinträchtigung des laufenden Betriebs. Der rückwirkungsfreie unidirektionale Fluss der Daten reduziert die Komplexität des Entwurfs und ermöglicht eine Erweiterung bestehender Systeme ohne die Funktionalität von laufenden Anwendungen zu beeinträchtigen.
Zitierte Literatur:
[1] US Patent Application 20140033173 Frenkiel A.L et al. Generating Layouts for Graphs ofData Flow Applications. Published Jan 30. 2014
[2] Moreira. O. et al. Data Flow Computational Models, in: Scheduling Real-Time Streaming Applications onto an Embedded Multiprocessor. Vol 24 of the Series on Embedded Systems, pp. 39-52. Springer Verlag. 2014.
[3] ColacoJ.L et al. A Conservative Extension ofSynchronous Data Flow with State Machines. Proc. of EMSOFT 2005. pp.173-182. ACM Press. 2005
[4] Kopetz, H. Real-Time Systems, Design Principles for Distributed Embedded Applications. Springer Verlag. 2011.
[5] Gaudel, M.C. et al. Final Version oft the DSOS Conceptual Model. Technical Report CS-TR-782, University of Newcastle upon Tyne. GB. 2003
SAE Standard AS6802 von TT Ethernet. URL: http://standards.sae.org/as6802

Claims

PATENTANSPRÜCHE
\. Verfahren zur, insbesondere flexiblen, Steuerung von Datenflüssen in einem verteilten Computersystem, welches verteilte Computersystem eine Vielzahl von Knotenrechnern und eine Vielzahl von Konnektoren umfasst, dadurch gekennzeichnet dass zumindest ein Teil der, vorzugsweise alle Konnektoren time-triggered Konnektoren (TTK) sind, alle Knotenrechner und alle time-triggered Konnektoren (TTK) Zugriff auf eine globale Zeit haben, wobei die Uhrensynchronisation der time-triggered Konnektoren (TTK) durch Hardwaremechanismen, insbesondere durch Hardwaremechanismen der time-triggered Konnektoren (TTK), unterstützt oder realisiert wird, und wobei alle von einem Knotenrechner ausgehenden oder eintreffenden, zu steuernden, insbesondere flexibel zu steuernden, TT- Datenflüsse (TTDF) auf einem oder mehreren physikalischen Kanälen zwischen einem oder mehreren Ports des Knotenrechners und einem oder mehreren Ports einer oder mehrerer time- triggered Konnektoren (TTK) transportiert werden, und wobei in jede TTK a priori eine Parameterliste geladen wird, die angibt, wie lange eine eingehende Nachricht eines TTDF (DF Nachricht) im TTK zwischen-zu-speichern sowie zu welchem, insbesondere zukünftigen, Zeitpunkt und an welchem Port des time-triggered Konnektor (TTK) die DF Nachricht auszugeben ist, und wobei jeder time-triggered Konnektor (TTK) auf der Basis dieser Parameterliste eingehende DF Nachrichten zwischenspeichert bzw. zu dem in der Parameterliste angegebenen Zeitpunkt an dem angegebenen Port ausgibt.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Uhrensynchronisation der Knotenrechner durch Software realisiert ist.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass jeder TTDF zu einem Port eines TTK, welcher TTK dadurch gekennzeichnet ist, dass ein weiterer Port dieses TTK mit einem Monitorknotenrechner verbunden ist, transportiert wird.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass in jeder TTDF Nachricht der Zeitpunkt der Entstehung der in der TTDF Nachricht transportierten Daten enthalten ist.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass ein TTDF über mehr als einen TTK transportiert wird.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass eine an einem Port eines TTK eintreffende TTDF Nachricht zu gleichen oder zu unterschiedlichen Zeitpunkten an mehreren Ports des TTK ausgegeben wird.
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Routen der TTDF zwischen den Knotenrechnern durch die Gesamtheit der in den TTK gespeicherten Parameterlisten bestimmt werden.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass ein TTDF auf zwei redundanten disjunkten Routen vom sendenden Knotenrechner zum empfangenden Knotenrechner transportiert wird.
9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass die Uhrensynchronisation der time-triggered Konnektoren (TTK) besser als 1 μsec ist.
10. Verteiltes Computersystem, umfassend eine Vielzahl von Knotenrechnern und eine Vielzahl von Konnektoren, dadurch gekennzeichnet, dass zur, insbesondere flexiblen, Steuerung von Datenflüssen zumindest ein Teil der, vorzugsweise alle Konnektoren time-triggered Konnektoren (TTK) sind, alle Knotenrechner und alle time- triggered Konnektoren (TTK) Zugriff auf eine globale Zeit haben, wobei die Uhrensynchronisation der time-triggered Konnektoren (TTK) durch Hardwaremechanismen, insbesondere durch Hardwaremechanismen der time-triggered Konnektoren (TTK), unterstützt oder realisiert ist, und wobei alle von einem Knotenrechner ausgehenden oder eintreffenden, zu steuernden, insbesondere flexibel zu steuernden, TT-Datenflüsse (TTDF) auf einem oder mehreren physikalischen Kanälen zwischen einem oder mehreren Ports des Knotenrechners und einem oder mehreren Ports einer oder mehrerer time-triggered Konnektoren (TTK) transportiert werden, und wobei in jede TTK a priori eine Parameterliste geladen ist, die angibt, wie lange eine eingehende Nachricht eines TTDF (DF Nachricht) im TTK zwischen-zu-speichern sowie zu welchem, insbesondere zukünftigen, Zeitpunkt und an welchem Port des time-triggered Konnektor (TTK) die DF Nachricht auszugeben ist, und wobei jeder time-triggered Konnektor (TTK) dazu eingerichtet ist, auf der Basis dieser Parameterliste eingehende DF Nachrichten zwischen-zu-speichern bzw. zu dem in der Parameterliste angegebenen Zeitpunkt an dem angegebenen Port auszugeben.
11. Computersystem nach Anspruch 10, dadurch gekennzeichnet, dass die Uhrensynchronisation der Knotenrechner durch Software realisiert ist.
12. Computersystem nach Anspruch 10 oder 11, dadurch gekennzeichnet, dass jeder TTDF zu einem Port eines TTK, welcher TTK dadurch gekennzeichnet ist, dass ein weiterer Port dieses TTK mit einem Monitorknotenrechner verbunden ist, transportiert wird.
13. Computersystem nach einem der Ansprüche 10 bis 12, dadurch gekennzeichnet, dass in jeder TTDF Nachricht der Zeitpunkt der Entstehung der in der TTDF Nachricht transportierten Daten enthalten ist.
14. Computersystem nach einem der Ansprüche 10 bis 13, dadurch gekennzeichnet, dass ein TTDF über mehr als einen TTK transportiert wird.
15. Computersystem nach einem der Ansprüche 10 bis 14, dadurch gekennzeichnet, dass eine an einem Port eines TTK eintreffende TTDF Nachricht zu gleichen oder zu unterschiedlichen Zeitpunkten an mehreren Ports des TTK ausgegeben wird.
16. Computersystem nach einem der Ansprüche 10 bis 15, dadurch gekennzeichnet, dass die Routen der TTDF zwischen den Knotenrechnern durch die Gesamtheit der in den TTK gespeicherten Parameterlisten bestimmt werden.
17. Computersystem nach einem der Ansprüche 10 bis 16, dadurch gekennzeichnet, dass ein TTDF auf zwei redundanten disjunkten Routen vom sendenden Knotenrechner zum empfangenden Knotenrechner transportiert wird.
18. Computersystem nach einem der Ansprüche 10 bis 17, dadurch gekennzeichnet, dass mindestens ein Port jedes Knotenrechners mit einem Port eines TTK physikalisch verbunden ist.
19. Computersystem nach einem der Ansprüche 10 bis 18, dadurch gekennzeichnet, dass auf einer Route eines TTDF zwischen dem Port des sendenden Knotenrechners und dem Port des empfangenden Knotenrechners mehrere TTK angeordnet sind.
20. Computersystem nach einem der Ansprüche 10 bis 19, dadurch gekennzeichnet, dass die Knotenrechner und die TTK auf einer Platine angeordnet sind und die physikalischen Verbindungen zwischen den Ports durch Leiterbahnen auf der Platine realisiert werden.
21. Computersystem nach einem der Ansprüche 10 bis 20, dadurch gekennzeichnet, dass ein Knotenrechner und ein oder mehrere TTK in einem Chip integriert sind.
22. Computersystem nach einem der Ansprüche 10 bis 21, dadurch gekennzeichnet, dass die TTDF Nachrichten dem TTEthernet Standard entspricht.
23. Computersystem nach einem der Ansprüche 10 bis 22, dadurch gekennzeichnet, dass die Uhrensynchronisation der time-triggered Konnektoren (TTK) besser als 1 μsec ist.
24. Time-Triggered Konnektor (TTK) für ein Computersystem nach einem der Ansprüche 10 bis 23, dadurch gekennzeichnet, dass der TTK einen Speicher zur Zwischenspeicherung von TTDF Nachrichten enthält.
PCT/AT2015/050103 2014-05-02 2015-04-27 Verfahren zur flexiblen steuerung von zeitgesteuerten datenflüssen in einem verteilten computersystem WO2015164897A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
ATA50318/2014 2014-05-02
AT503182014 2014-05-02

Publications (1)

Publication Number Publication Date
WO2015164897A1 true WO2015164897A1 (de) 2015-11-05

Family

ID=53776247

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AT2015/050103 WO2015164897A1 (de) 2014-05-02 2015-04-27 Verfahren zur flexiblen steuerung von zeitgesteuerten datenflüssen in einem verteilten computersystem

Country Status (1)

Country Link
WO (1) WO2015164897A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3182652A1 (de) * 2015-12-14 2017-06-21 Fts Computertechnik Gmbh Verfahren zur periodischen erfassung von messwerten in einem echtzeitcomputersystem sowie echtzeitcomputersystem
EP3214804A1 (de) * 2016-03-01 2017-09-06 FTS Computertechnik GmbH Verfahren zum zuverlässigen transport von alarmnachrichten in einem verteilten computersystem
US9898670B2 (en) 2013-12-13 2018-02-20 Fts Computertechnik Gmbh Method and device for observing the environment of a vehicle

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013155548A1 (de) * 2012-04-19 2013-10-24 Fts Computertechnik Gmbh Verfahren und vorrichtung zur konsistenten änderung der zeitpläne in einer zeitgesteuerten vermittlung
US20140033173A1 (en) 2012-05-11 2014-01-30 International Business Machines Corporation Generating Layouts for Graphs of Data Flow Applications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013155548A1 (de) * 2012-04-19 2013-10-24 Fts Computertechnik Gmbh Verfahren und vorrichtung zur konsistenten änderung der zeitpläne in einer zeitgesteuerten vermittlung
US20140033173A1 (en) 2012-05-11 2014-01-30 International Business Machines Corporation Generating Layouts for Graphs of Data Flow Applications

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
COLACO,J.L ET AL.: "Proc. of EMSOFT 2005", 2005, ACM PRESS, article "A Conservative Extension of Synchronous Data Flow with State Machines", pages: 173 - 182
GAUDEL, M.C. ET AL.: "Final Version oft the DSOS Conceptual Model", TECHNICAL REPORT CS-TR-782, 2003
KOPETZ, H.: "Design Principles for Distributed Embedded Applications", 2011, SPRINGER VERLAG, article "Real-Time Systems"
MARTIN SCHOEBERL ED - AJAY V BHATT: "A Time-Triggered Network-on-Chip", FIELD PROGRAMMABLE LOGIC AND APPLICATIONS, 2007. FPL 2007. INTERNATION AL CONFERENCE ON, IEEE, PI, 1 August 2007 (2007-08-01), pages 377 - 382, XP031159098, ISBN: 978-1-4244-1059-0 *
MOREIRA. O. ET AL.: "Scheduling Real-Time Streaming Applications onto an Embedded Multiprocessor", vol. 24, 2014, SPRINGER VERLAG, article "Data Flow Computational Models", pages: 39 - 52
SAE STANDARD AS6802, Retrieved from the Internet <URL:http://standards.sae.org/as6802>

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9898670B2 (en) 2013-12-13 2018-02-20 Fts Computertechnik Gmbh Method and device for observing the environment of a vehicle
EP3182652A1 (de) * 2015-12-14 2017-06-21 Fts Computertechnik Gmbh Verfahren zur periodischen erfassung von messwerten in einem echtzeitcomputersystem sowie echtzeitcomputersystem
EP3214804A1 (de) * 2016-03-01 2017-09-06 FTS Computertechnik GmbH Verfahren zum zuverlässigen transport von alarmnachrichten in einem verteilten computersystem
US9898924B2 (en) 2016-03-01 2018-02-20 Fts Computertechnik Gmbh Method for the reliable transport of alarm messages in a distributed computer system

Similar Documents

Publication Publication Date Title
DE102008007672B4 (de) Verfahren und Vorrichtung zum Übertragen von Daten in einem Netzwerk
DE10038552A1 (de) System und Verfahren zur Übertragung von OPC-Daten über Datennetze, insbesondere Internet, mit asynchroner Datenverbindung
WO2008124854A2 (de) Kommunikationsverfahren und apparat zur effizienten und sicheren übertragung von tt-ethernet nachrichten
DE102013207826B3 (de) Verfahren zum Betreiben eines Slave-Knotens eines digitalen Bussystems
EP2634973A1 (de) Kommunikationsgerät für ein redundant betreibbares industrielles Kommunikationsnetz und Verfahren zum Betrieb eines Kommunikationsgeräts
EP4191954A1 (de) Moduleinheit zum verbinden eines datenbusteilnehmers
DE102011015966B4 (de) Automatisierungssystem
EP1509005B1 (de) Verfahren und Vorrichtung zur Übertragung von Daten über ein Busnetz mittels Broadcast
WO2015164897A1 (de) Verfahren zur flexiblen steuerung von zeitgesteuerten datenflüssen in einem verteilten computersystem
EP3151475B1 (de) Verfahren zur asynchronen datenkommunikation in einem echtzeitfähigen ethernet-datennetzwerk
EP2827207A1 (de) Verfahren zur Übermittlung von Datenrahmen mittels eines Kommunikationsgeräts eines industriellen Automatisierungssystems und Kommunikationsgerät
EP3363165B1 (de) Verfahren und computersystem zur schnellen übertragung von zeitgesteuerten echtzeitnachrichten
AT514714A1 (de) Verfahren zur Übertragung von Nachrichten in einem Computernetzwerk sowie Computernetzwerk
EP3172869B1 (de) Verfahren zur nachbildung von laufzeiten in netzwerken, sowie entsprechendes gateway
EP3157201A1 (de) Zeitgesteuertes cut-through verfahren zum datentransport in verteilten echtzeitsystemen
DE102011086726B4 (de) Verfahren zur redundanten Kommunikation zwischen einem Nutzer-Terminal und einem Leitsystem-Server
EP2865134B1 (de) Verfahren und vorrichtung zum aufbau von optimalen zeitgesteuerten pfaden in einem computernetzwerk
EP3632049A1 (de) Statussignalausgabe
DE102010023070B4 (de) Verfahren und Filter zur Übertragung zeitgesteuerter Botschaften
WO2009068198A2 (de) Vorrichtung und verfahren zur drahtlosen vernetzung von geräten der automatisierungstechnik
EP3518470A1 (de) Verfahren zur daten-kommunikation in einem insbesondere industriellen netzwerk, vorrichtung zur durchführung des verfahrens, computerprogramm sowie computerlesbares medium
DE102017208825B4 (de) Übertragen von Daten auf einem Lokalbus
EP3157187A1 (de) Zeitgesteuertes verfahren zum periodischen fehlertoleranten transport von echtzeitdaten in einem verteilten computersystem
EP3026848A1 (de) Verfahren zur Datenübermittlung in einem redundant betreibbaren industriellen Kommunikationsnetz und Koppel-Kommunikationsgerät
DE102015222848B4 (de) System und Verfahren zum Analysieren eines Netzwerks

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15745362

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15745362

Country of ref document: EP

Kind code of ref document: A1