WO2013123543A1 - Verfahren zur fehlererkennung in einem system-of-systems - Google Patents
Verfahren zur fehlererkennung in einem system-of-systems Download PDFInfo
- Publication number
- WO2013123543A1 WO2013123543A1 PCT/AT2013/050043 AT2013050043W WO2013123543A1 WO 2013123543 A1 WO2013123543 A1 WO 2013123543A1 AT 2013050043 W AT2013050043 W AT 2013050043W WO 2013123543 A1 WO2013123543 A1 WO 2013123543A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- fault
- unit
- fault containment
- units
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2294—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0709—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a distributed system consisting of a plurality of standalone computer nodes, e.g. clusters, client-server systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0784—Routing of error reports, e.g. with a specific transmission path or data flow
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1629—Error detection by comparing the output of redundant processing systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/805—Real-time
Definitions
- the invention relates to a method for error detection in a fault-containment units (FCUs) comprising distributed real-time computer system, in particular a fault-tolerant system-of-systems (SoS), which has a global time base.
- FCUs fault-containment units
- SoS fault-tolerant system-of-systems
- the invention relates to a distributed real-time computer system, in particular a system-of-systems comprising fault containment units.
- the invention relates to a message distribution unit for such a real-time computer system.
- the present invention is in the field of computer technology. It describes an innovative method, such as in a distributed real-time computer system, in particular in a system-of-systems, the functional processing and error detection can be parallelized to improve the fault tolerance and shorten the response time.
- SoS system-of-systems
- a distributed real-time computer system particularly a system-of-systems (SoS) consisting of a plurality of autonomous subsystems, must recognize and, as far as possible, tolerate subsystem errors.
- SoS transient A failure cause is said to be transient if it occurs only for a short time, damages a data structure, but does not affect the future functionality of the hardware.
- Examples of transient error causes are neutrons from cosmic radiation, short-term disturbances in the power supply or Heisenbugs [6, p.138] in the software.
- the first step in error handling is error detection.
- a clear separation of the tasks of processing and error detection is necessary to guarantee the independence of error detection from a faulty processing system. This independence is ensured when processing and fault detection are performed in separate Fault-Containment Units (FCUs) (as described in detail in [6, p.136]).
- FCUs Fault-Containment Units
- an independent autonomous subsystem FCU is called.
- FCUs Sensor FCUs (SFCU) that use sensors to read data from the environment and preprocess that data, (ii) process FCUs (VFCU), merge the results from multiple sensor FCUs, and on (iii) output FCUs (AFCU) that use actuators to output data to the environment, and (iv) monitor FCUs (MFCUs) to check the results of the SFCUs, VFCUs, and AFCUs to detect errors.
- SFCU Sensor FCUs
- VFCU process FCUs
- AFCU output FCUs
- MFCUs monitor FCUs
- the FCUs communicate via exchange units exclusively by means of messages.
- a switching unit may arbitrate an incoming message from a sender FCU to one or more receiver FCUs. The time of switching a message is called the switching time of the message.
- a large SoS e.g. a cyclic distributed fault tolerant SoS the parallelization of processing and error detection in a concurrent improvement of the response time behavior can be realized.
- the fault containment units communicate by means of messages via at least one message distribution unit, a message time being associated with a message formed by a fault containment unit, and a message distribution unit receives a message that forwards messages to one or more fault-containment units operating in parallel, and wherein a processing fault-containment unit (VFCU) does not prioritize any of its results that are affected by one or more of the received messages sends the received message associated commit times to the environment of the processing fault containment unit or to change the internal state of the processing fault containment unit.
- VFCU processing fault-containment unit
- a message distribution unit for switching messages in a distributed real-time computer system, in particular a fault-tolerant system-of-systems (SoS), which includes fault-containment units (FCUs) and which has a global time base Fault containment units communicate by means of messages via the at least one message distribution unit, with a message formed by a fault containment unit is associated with a Gayitmentzeittician, and wherein a message distribution unit that receives a message, the message to one or more parallel operating fault Containments-Units, according to the invention, the message distribution unit is adapted to copy an incoming message and send a copy of the message immediately to a monitor fault containment unit and a second copy of the message to a message associated with the message delay time before the second copy of the message is sent from the message dispatch unit to the following processing fault containment units.
- SoS fault-tolerant system-of-systems
- this object is also achieved with a distributed real-time computer system, in particular a fault-tolerant system-of-systems (SoS), which includes fault containment units (FCUs) and which has a global time base and at least one message distribution unit mentioned above for switching messages solved, wherein the fault containment units communicate by means of messages via the at least one message distribution unit, with a message formed by a fault containment unit is associated with a Kiritmentzeittician, and wherein a message distribution unit that receives a message, the message to a or multiple parallel fault-containment units, and according to the invention, the message distribution unit is adapted to copy an incoming message and send a copy of the message immediately to a monitor fault containment unit and a second copy of the message up to a m delay the commit time associated with the message before sending the second copy of the message from the message dispatch unit to the following processing fault containment units.
- SoS fault-tolerant system-of-systems
- the date of the appointment associated with a message is included in the message.
- the time of receipt associated with a message is derived from the a priori timed schedule of the fault containment units.
- VFCUs processing fault containment units
- MFCUs monitor fault containment units
- the message distribution unit assigns one or more messages from a sensor fault containment unit (SFCU) to one or forwarding a plurality of designated fault-containment processing units and additionally to one or more monitor fault-containment units
- SFCU sensor fault containment unit
- a monitor fault-containment unit checks the contents of the received messages and if an error has occurred in a message an error message is sent to the one or more designated fault-containment units prior to the comment time associated with the message such that the one or more designated fault-containment units designate all of the failed one Message-biased results before the date of the decision can be discarded.
- a designated processing fault containment unit replaces a result discarded in one cycle due to an error by the result of the preceding cycle.
- a plurality of fault containment units which can accept sensor data, form messages with the same commit time, wherein several or all of these messages are transmitted via one or more message distribution units to one or more processing fault containments Subunits and to one or more monitor fault containment units, and wherein the processing fault containment units do not deliver results that are affected by any of these messages to the environment of processing prior to the commit time associated with the messages -Fault-containments unit sends or uses to change the inner state of a processing fault-containment unit.
- the distribution unit forwards received messages immediately to the monitor fault containment units, but the forwarding of the messages delays to the processing fault-containment units until the time of the commit, in the event of a detected failure, the monitor fault containment units send an error message to the dispatcher unit before the commit time so that the dispatcher unit can discard the erroneous messages and not forwards the processing fault containment units.
- the error fault-containment unit receiving an error message decides after an analysis of the description of the error contained in the error message whether in this cycle the results are sent to the environment of the processing fault containment unit. Unit or used to permanently change the internal state of the processing fault-containment unit.
- the basic idea of the present invention is that, with a message conveying the result of an FCU for further processing in the following VFCU, a commit time is indicated which indicates when results calculated by the VFCU on the basis of the received message, at the earliest be issued to the environment of the VFCU or written to the internal state of the VFCU.
- a message is sent at the same time to one or more VFCUs and MFCUs at the switching time. In the time interval between the switching time and the time of the notification, the message is further processed by the VFCUs and checked in parallel by the MFCU (s).
- the MFCU If an MFCU detects an error, the MFCU sends an error message to the appropriate VFCUs before the commit time so that the VFCUs can discard the erroneous results before the commit time. This prevents the occurrence of error propagation into the environment or into the next processing cycle.
- Each FCU is embedded in an environment that receives messages from that FCU.
- the term "environment" of an FCU thus includes all recipients of messages of a given FCU.
- each cycle begins with reading the sensor data from one or more SFCUs. After preprocessing the sensor data in the SFCUs, the results are forwarded in the form of messages to one or more VFCUs, MFCUs, and finally AFCUs, which output the final results to the actuators.
- the FCU manages a special data structure in each cycle, which contains all the data passed from one cycle to the following cycle. This data structure, defined at the end of each cycle, is called the internal state of the FCU [6, p.84]. An error in the processing of an FCU can only take effect if the FCU sends incorrect results to the environment or if a faulty internal state is transferred to the following cycle of the FCU.
- VFCUs and MFCUs monitor the results of the VFCUs without immediately preventing a detected failure in a VFCU from taking effect in the environment of the VFCU.
- the present invention allows the propagation of a detected fault into the environment of a VFCU.
- FIG. 1 shows a SoS with three sensor FCUs and a processing FCU
- Fig. 2 shows the implementation of the system of Fig. 1 in a multiprocessor system-on-chip (MPSoC).
- MPSoC multiprocessor system-on-chip
- Fig. 1 is a timed cyclic SoS with three sensors 101, 104, 107, an actuator 171, sensor FCUS (SFCUs) 102, 105, 108, a monitor FCU (MFCU) 120, a processing FCU (VFCU) 130, a Output FCU (AFCU) 170 and a switching unit 110 shown. It is assumed that all FCUs can access a global time with known precision. The construction of such a global time is described in detail in [6, Chapter 3].
- the sensor 101 is managed by the SFCU 102, the sensor 104 by the SFCU 105, and the sensor 107 by the SFCU 108. At the beginning of a new cycle, the SFCUs 102, 105, 108 read the sensor data.
- the SFCU 105 After the preprocessing of the sensor data by the corresponding The SFCU 105 sends a message via a channel 106 and the SFCU 108 via channel 109 a message to the switching unit 110.
- the switching unit 110 sends the messages to the SFCU 102 via a channel 103 to the switching unit 110 in a timed system pre-specified cyclic switching time over the channel 112 to the VFCU 130 and in parallel via the channel 111 to the MFCU 120.
- the switching unit 110 may be described by a TTEthernet switch, as described in [2], [7], or a multirouter [3] can be realized.
- the message includes a commit time indicating at what earliest time the VFCU 130 is allowed to pass a result affected by the three messages over the channel 131 to the AFCU 170.
- the VFCU 130 may only rewrite its internal state after the time of the commitment.
- the commit time associated with a message may be derived from the a priori fixed cyclic schedule of the FCUs and communicated a priori to the VFCU 130 and the MFCU 120 at the time of system boot.
- the commitment date does not have to be included in the message.
- the VFCU 130 Upon receiving the messages from the SFCUs 102, 105, 108, the VFCU 130, by reference to its current internal state, performs a sensor fusion and calculates a new result for passing to the AFCU 170 and a new internal state for the next cycle. If these results are available before the commitment date, the output of the results from VFCU 130 is delayed until the time of the commitment.
- the MFCU 120 checks to see if the messages of the three SFCUs 102, 105, 108 are rendering a meaningful picture of the environment or if one or more of the messages are faulty.
- a detected error is sent to VFCU 130 via channel 111, switch 110, and channel 112 in the form of an error message prior to the acquisition time.
- the VFCU 130 analyzes the error description contained in the message and decides whether the results calculated in this cycle must be discarded. In the event the VFCU 130 discards the results, its inner state remains unchanged and no new value is passed to the AFCU 170 for output to the actuator 171 in this cycle.
- FIG. 2 shows an implementation of the described method by means of a multiprocessor system on chip (MPSoC).
- the MPSoC 200 includes the SFCUs 102, 105, 108 as IP cores.
- the switching unit 110 is designed as a network-on-chip.
- another MFCU 125 is implemented as an IP core.
- the VFCU 130 is also a standalone IP core.
- the AFCU 170, which drives the actuator 171, is implemented as a separate subsystem. The new method can thus be implemented very efficiently on an MPSoC and makes use of the inherent parallelism of MPSoCs.
- the disclosed method may also be implemented in the distribution unit 110.
- the messages of the SFCUs 102, 105, 108 are forwarded immediately from the distribution unit to the MFCU 120, but the forwarding of these messages to the VFCU 130 is delayed by the distribution unit 110 until the time of receipt. If an error message arrives from the MFCU 120 in the distributor unit 110 before the time of the command, the distributor unit discards the messages of the SFCUs 102, 105, 108 still present in the memory of the distributor unit.
- this implementation realizes the abstraction of a fail-silent sensor system ie the sensor system sends either correct messages or no messages.
- An alternative implementation of the faü-sueence pursued by parts of the industry employs self-checking hardware for this purpose.
- the disclosed method has the advantage over the self-checking hardware that not only digital hardware errors on the hardware level, but also the much more frequent errors of the sensors and software errors can be detected at the system level.
- the present invention describes an innovative method of real-time functionalization and fault detection in a system of systems, and how to prevent a detected error from propagating into the environment. This is made possible by the introduction of a commitment date associated with a preliminary result.
- the concurrent independent error detection must report the failure to the subsystem issuing the output to the environment before the commit time, so that a detected error will not result in false outputs to the environment.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
Description
VERFAHREN ZUR FEHLERERKENNUNG IN EINEM SYSTEM-OF-SYSTEMS
Die Erfindung betrifft ein Verfahren zur Fehlererkennung in einem Fault-Containments- Units (FCUs) umfassenden verteilten Echtzeitcomputersystem, insbesondere einem fehlertoleranten System-of-Systems (SoS), welches über eine globale Zeitbasis verfügt.
Weiters betrifft die Erfindung ein verteiltes Echtzeitcomputersystem, insbesondere ein System-of-Systems, umfassend Fault-Containments-Units.
Außerdem betrifft die Erfindung eine Nachrichtenverteileinheit für ein solches Echtzeitcomputersystem.
Die vorliegende Erfindung liegt im Bereich der Computertechnik. Sie beschreibt ein innovatives Verfahren, wie in einem verteilten Echtzeitcomputersystem, insbesondere in einem System-of-Systems die funktionale Verarbeitung und die Fehlererkennung parallelisiert werden können, um die Fehlertoleranz zu verbessern und die Antwortzeit zu verkürzen.
Ein verteiltes Echtzeitcomputersystem, insbesondere ein System-of-Systems (SoS), das aus einer Vielzahl von autonomen Subsystemen besteht, muss Fehler von Subsystemen erkennen und nach Möglichkeit tolerieren. Erfahrungsgemäß ist die überwiegende Anzahl der Fehlerursachen in einem SoS transient. Ein Fehlerursache wird als transient bezeichnet, wenn sie nur kurzzeitig auftritt, eine Datenstruktur beschädigt, aber die zukünftige Funktionsfähigkeit der Hardware nicht beeinträchtigt. Beispiele für transiente Fehlerursachen sind Neutronen aus der Höhenstrahlung, kurzzeitige Störungen in der Stromversorgung oder Heisenbugs [6, p.138] in der Software.
Der erste Schritt in der Fehlerbehandlung ist die Fehlererkennung. Eine klare Trennung der Aufgaben von Verarbeitung und Fehlererkennung ist notwendig, um die Unabhängigkeit der Fehlererkennung von einem fehlerhaften Verarbeitungssystem zu garantieren. Diese Unabhängigkeit ist gewährleistet, wenn die Verarbeitung und die Fehlererkennung in getrennten Fault-Containment Units (FCU) (wie in [6, p.136] ausführlich beschrieben) vorgenommen wird. Im Folgenden wird ein unabhängiges autonomes Subsystem FCU genannt.
In einem großen fehlertoleranten SoS wird zwischen folgenden FCUs unterschieden: (i) Sensor FCUs (SFCU), die mittels Sensoren Daten der Umgebung einlesen und diese Daten vorverarbeiten, (ii) Verarbeitungs FCUs (VFCU), die Ergebnisse von mehreren Sensor FCUs fusionieren und weiter verarbeiten, (iii) Ausgabe FCUs (AFCU), die mittels Aktuatoren Daten an die Umgebung ausgeben, und (iv) Monitor FCUs (MFCU), die Ergebnisse der SFCUs, VFCUs und AFCUs überprüfen, um Fehler zu erkennen. Es wird angenommen, dass alle FCUs auf eine globale Zeitbasis zugreifen können. Die FCUs kommunizieren über Vermittlungseinheiten ausschließlich mittels Nachrichten. Eine Vermittlungseinheit kann eine eintreffende Nachricht von einer Sender FCU an eine oder mehrere Empfänger FCUs vermitteln. Der Zeitpunkt der Vermittlung einer Nachricht wird Vermittlungszeitpunkt der Nachricht genannt.
Es ist eine Aufgabe der Erfindung, anzugeben, wie in einem Echtzeitcomputer System, insbesondere einen SoS die Parallelisierung von Verarbeitung und Fehlererkennung bei einer gleichlaufenden Verbesserung des Antwortzeitverhaltens realisiert werden kann.
Insbesondere ist es eine Aufgabe der Erfindung, anzugeben, wie in einem großen Echtzeitcomputersystem, insbesondere einem großen SoS, z.B. einem zyklisch arbeitenden verteilten fehlertoleranten SoS die Parallelisierung von Verarbeitung und Fehlererkennung bei einer gleichlaufenden Verbesserung des Antwortzeitverhaltens realisiert werden kann.
Diese Aufgabe wird mit einem eingangs erwähnten Verfahren dadurch gelöst, dass erfindungsgemäß die Fault-Containments-Units mittels Nachrichten über mindestens eine Nachrichtenverteileinheit kommunizieren, wobei mit einer von einer Fault-Containments-Unit gebildeten Nachricht ein Kommitmentzeitpunkt assoziiert ist, und wobei eine Nachrichtenverteileinheit, die eine Nachricht empfängt, die Nachricht an eine oder mehrere parallel arbeitende Fault-Containments-Units weiterleitet, und wobei eine Verarbeitungs-Fault- Containments-Unit (VFCU) keines ihrer Resultate, die von einer oder mehreren der empfangenen Nachrichten beeinflusst sind, vor dem mit den empfangenen Nachrichten assoziierten Kommitmentzeitpunkten an die Umgebung der Verarbeitungs-Fault-Containments-Unit sendet oder zur Veränderung des inneren Zustands der Verarbeitungs-Fault-Containments- Unit verwendet.
Weiters wird die oben erwähnte Aufgabe mit einer Nachrichtenverteileinheit zur Vermittlung von Nachrichten in einem verteilten Echtzeitcomputersystem, insbesondere einem fehlertoleranten System-of-Systems (SoS), welches Fault-Containments-Units (FCUs) umfasst und welches über eine globale Zeitbasis verfügt, wobei die Fault-Containments-Units mittels Nachrichten über die zumindest eine Nachrichtenverteileinheit kommunizieren, wobei mit einer von einer Fault-Containments-Unit gebildeten Nachricht ein Kommitmentzeitpunkt assoziiert ist, und wobei eine Nachrichtenverteileinheit, die eine Nachricht empfängt, die Nachricht an eine oder mehrere parallel arbeitende Fault-Containments-Units weiterleitet, wobei erfindungsgemäß die Nachrichtenverteileinheit dazu eingerichtet ist, eine eintreffende Nachricht zu kopieren und eine Kopie der Nachricht sofort an eine Monitor-Fault- Containments-Unit zu senden und eine zweite Kopie der Nachricht bis zu einem mit der Nachricht assoziierten Kommitmentzeitpunkt zu verzögern, bevor die zweite Kopie der Nachricht von der Nachrichtenverteileinheit an die folgende Verarbeitungs-Fault- Containments-Units gesendet wird.
Außerdem wird diese Aufgabe auch noch mit einem verteilten Echtzeitcomputersystem, insbesondere einem fehlertoleranten System-of-Systems (SoS), welches Fault-Containments- Units (FCUs) umfasst und welches über eine globale Zeitbasis sowie zumindest eine oben erwähnte Nachrichtenverteileinheit zur Vermittlung von Nachrichten verfügt, gelöst, wobei die Fault-Containments-Units mittels Nachrichten über die zumindest eine Nachrichtenverteileinheit kommunizieren, wobei mit einer von einer Fault-Containments-Unit gebildeten Nachricht ein Kommitmentzeitpunkt assoziiert ist, und wobei eine Nachrichtenverteileinheit, die eine Nachricht empfängt, die Nachricht an eine oder mehrere parallel arbeitende Fault-Containments-Units weiterleitet, und wobei erfindungsgemäß die Nachrichtenverteileinheit dazu eingerichtet ist, eine eintreffende Nachricht zu kopieren und eine Kopie der Nachricht sofort an eine Monitor-Fault-Containments-Unit zu senden und eine zweite Kopie der Nachricht bis zu einem mit der Nachricht assoziierten Kommitmentzeitpunkt zu verzögern, bevor die zweite Kopie der Nachricht von der Nachrichtenverteileinheit an die folgende Verarbeitungs-Fault-Containments-Units gesendet wird.
Von Vorteil kann es dabei sein, wenn der mit einer Nachricht assoziierte Kommitmentzeitpunkt in der Nachricht enthalten ist.
Es kann aber auch von Vorteil sein, wenn der mit einer Nachricht assoziierte Kommitment- zeitpunkt aus dem a priori festgelegten zeitgesteuerten Zeitplan der Fault-Containments- Units abgeleitet wird.
Zweckmäßig ist es, wenn zwischen Verarbeitungs-Fault-Containments-Units (VFCUs) und Monitor-Fault-Containments-Units (MFCUs) unterschieden wird, wobei die Nachrichtenverteileinheit eine oder mehrere Nachrichten einer Sensor-Fault-Containments-Unit (SFCU) an eine oder mehrere designierte Verarbeitungs-Fault-Containments-Units und zusätzlich an eine oder mehrere Monitor-Fault-Containments-Units weiterleitet, und wobei eine Monitor- Fault-Containments-Unit den Inhalt der empfangenen Nachrichten überprüft und, falls in einer Nachricht ein Fehler festgestellt wird, vor dem mit der Nachricht assoziierten Kom- mitmentzeitpunkt eine Fehlernachricht an die eine oder die mehreren designierten Verarbei- tungs-Fault-Containments-Units sendet, so dass die eine oder die mehreren designierten Verarbeitungs-Fault-Containments-Units alle von der fehlerhaften Nachricht beeinflussten Resultate vor dem Kommitmentzeitpunkt verwerfen können.
Mit Vorteil ist vorgesehen, dass in einem zyklisch arbeitenden Echtzeitcomputer System, insbesondere einem zyklisch arbeitenden System-of-Systems eine designierte Verarbeitungs- Fault-Containments-Unit ein in einem Zyklus aufgrund eines Fehlers verworfenes Resultat durch das Resultat des vorangegangen Zyklus ersetzt.
Außerdem kann vorgesehen sein, dass in einem Zyklus eine Vielzahl von Fault- Containments-Units, die Sensordaten übernehmen können, Nachrichten mit dem gleichen Kommitmentzeitpunkt bilden, wobei mehrere oder alle dieser Nachrichten über eine oder mehrere Nachrichtenverteileinheiten an eine oder mehrere Verarbeitungs-Fault- Containments-Units und an eine oder mehrere Monitor-Fault-Containments-Units gesendet werden, und wobei die Verarbeitungs-Fault-Containments-Units keine Resultate, die von einer dieser Nachrichten beeinflusst sind, vor dem mit den Nachrichten assoziierten Kommitmentzeitpunkt an die Umgebung einer Verarbeitungs-Fault-Containments-Unit sendet oder zur Veränderung des inneren Zustands einer Verarbeitungs-Fault-Containments-Unit verwendet.
Weiters kann vorgesehen sein, dass die Verteilereinheit empfangene Nachrichten sofort an die Monitor-Fault-Containments-Units weiterleitet, jedoch die Weiterleitung der Nachrichten
an die Verarbeitungs-Fault-Containments-Units bis zum Kommitmentzeitpunkt verzögert, wobei im Falle eines erkannten Fehlers die Monitor-Fault-Containments-Units vor dem Kommitmentzeitpunkt eine Fehlernachricht an die Verteilereinheit senden, so dass die Verteilereinheit die fehlerhaften Nachrichten verwerfen kann und nicht an die Verarbei- tungs-Fault-Containments-Units weiterleitet.
Außerdem kann es von Vorteil sein, wen die eine Fehlernachricht empfangende Verarbei- tungs-Fault-Containments-Unit nach einer Analyse der in der Fehlernachricht enthaltenen Beschreibung des Fehlers entscheidet, ob in diesem Zyklus die Resultate an die Umgebung der Verarbeitungs-Fault-Containments-Unit gesendet oder zur permanenten Veränderung des inneren Zustands der Verarbeitungs-Fault-Containments-Unit verwendet werden.
Die Grundidee der vorliegenden Erfindung besteht darin, dass mit einer Nachricht, die das Ergebnis einer FCU zur Weiterverarbeitung in der folgenden VFCU transportiert, ein Kommitmentzeitpunkt assoziiert wird, welcher angibt, wann Resultate, die von der VFCU auf der Basis der empfangenen Nachricht berechnet werden, frühestens an die Umgebung der VFCU ausgegeben oder in den inneren Zustand der VFCU geschrieben werden dürfen. Eine Nachricht wird zum Vermittlungszeitpunkt quasi gleichzeitig an eine oder mehrere VFCUs und MFCUs gesendet. Im Zeitintervall zwischen dem Vermittlungszeitpunkt und dem Kommitmentzeitpunkt wird die Nachricht von den VFCUs weiterverarbeitet und parallel dazu von der oder den MFCUs überprüft. Wenn eine MFCU einen Fehler erkennt, wird von der MFCU vor dem Kommitmentzeitpunkt eine Fehlernachricht an die entsprechende VFCUs gesendet, so dass die VFCUs die fehlerhaften Resultate vor dem Kommitmentzeitpunkt verwerfen können. Damit wird verhindert, dass eine Fehlerfortpflanzung in die Umgebung oder in den nächsten Verarbeitungszyklus stattfindet.
Jede FCU ist eingebettet in ein Umfeld, das Nachrichten von dieser FCU empfängt. Der Begriff„Umgebung" einer FCU umfasst somit alle Empfänger von Nachrichten einer gegebenen FCU.
Es wird angenommen, dass jeder Zyklus mit dem Lesen der Sensordaten von einer oder mehreren SFCUs beginnt. Nach Vorverarbeitung der Sensordaten in den SFCUs werden die Ergebnisse in Form von Nachrichten an eine oder mehrere VFCUs, MFCUs und schließlich AFCUs weitergeleitet, die die endgültigen Resultate an die Aktuatoren ausgegeben. In jeder
FCU wird in jedem Zyklus eine spezielle Datenstruktur verwaltet, in der alle Daten enthalten sind, die von einem Zyklus an den folgenden Zyklus übergeben werden. Diese Datenstruktur, die am Ende jedes Zyklus definiert ist, wird innerer Zustand der FCU genannt [6, p.84]. Ein Fehler in der Verarbeitung einer FCU kann nur wirksam werden, wenn von der FCU fehlerhafte Resultate an die Umgebung ausgegeben werden oder wenn ein fehlerhafter innerer Zustand dem folgenden Zyklus der FCU übergeben wird.
Die unabhängige Realisierung von VFCUs und MFCUs wird in einer Anzahl von Patenten angesprochen, z.B. in [1], [3], und [5]. In diesen Patenten beobachten die MFCUs die Ergebnisse der VFCUs ohne sofort zu verhindern, dass ein erkannter Fehler in einer VFCU in der Umgebung der VFCU wirksam wird. Durch die Einführung eines Kommitmentzeitpunkts und die Verzögerung der Ausgabe einer VFCU bis zu diesem Kommitmentzeitpunkt ermöglicht es die vorliegende Erfindung die Ausbreitung eines erkannten Fehlers in die Umgebung einer VFCU zu verhindern.
Die Erfindung wird an Hand der folgenden, beispielhaften Zeichnung näher erörtert. In dieser zeigt
Fig. 1 ein SoS mit drei Sensor FCUs und einer Verarbeitungs FCU, und
Fig. 2 die Realisierung des Systems von Fig. 1 in einem Multiprocessor System-on-Chip (MPSoC).
Das folgende konkrete Beispiel behandelt eine der vielen möglichen Realisierungen des neuen Verfahrens.
In Fig. 1 ist ein zeitgesteuertes zyklisches SoS mit drei Sensoren 101, 104, 107, einem Aktuator 171, Sensor FCUS (SFCUs) 102, 105, 108, einer Monitor FCU (MFCU) 120, einer Verarbeitungs FCU (VFCU) 130, einer Ausgabe FCU (AFCU) 170 sowie einer Vermittlungseinheit 110 dargestellt. Es wird angenommen, dass alle FCUs auf eine globale Zeit mit bekannter Präzision zugreifen können. Der Aufbau einer solchen globalen Zeit ist in [6, Kapitel 3] genau beschrieben. Der Sensor 101 wird von der SFCU 102, der Sensor 104 von der SFCU 105 und der Sensor 107 von der SFCU 108 verwaltet. Am Beginn eines neuen Zyklus lesen die SFCUs 102, 105, 108 die Sensordaten. Nach der Vorverarbeitung der Sensordaten durch die entspre-
chenden SFCUs sendet die SFCU 102 eine Nachricht über einen Kanal 103 an die Vermittlungseinheit 110. Analog sendet die SFCU 105 eine Nachricht über einen Kanal 106 und die SFCU 108 über Kanal 109 eine Nachricht an die Vermittlungseinheit 110. Die Vermittlungseinheit 110 sendet die Nachrichten zu dem in einem zeitgesteuerten System vorab spezifizierten zyklischen Vermittlungszeitpunkt über den Kanal 112 an die VFCU 130 und parallel dazu über den Kanal 111 an die MFCU 120. Die Vermittlungseinheit 110 kann durch einen TTEthernet Switch, wie in [2], [7] beschrieben, oder durch einen Multirouter [3] realisiert werden. Die Nachricht enthält einen Kommitmentzeitpunkt, der angibt, zu welchem frühesten Zeitpunkt die VFCU 130 ein von den drei Nachrichten beeinflusstes Resultat über den Kanal 131 an die AFCU 170 weiterleiten darf. Die VFCU 130 darf ihren inneren Zustand erst nach dem Kommitmentzeitpunkt neu beschreiben. Alternativ kann in einem zeitgesteuerten System der mit einer Nachricht assoziierte Kommitmentzeitpunkt aus dem a priori festgelegten zyklischen Zeitplan der FCUs abgeleitet werden und a priori zum Zeitpunkt des Systemstarts der VFCU 130 und der MFCU 120 mitgeteilt werden. Der Kommitmentzeitpunkt muss dann nicht in der Nachricht enthalten sein.
Nach Empfang der Nachrichten der SFCUs 102, 105, 108 führt die VFCU 130 unter Bezugnahme auf ihren aktuellen inneren Zustand eine Sensor Fusion durch und berechnet ein neues Resultat zur Weitergabe an die AFCU 170 und einen neuen inneren Zustand für den nächsten Zyklus. Falls diese Resultate vor dem Kommitmentzeitpunkt vorliegen, wird die Ausgabe der Resultate von der VFCU 130 bis zum Kommitmentzeitpunkt verzögert. Parallel zur Verarbeitung der Nachrichten der drei SFCUs 102, 105, 108 in der VFCU 130 überprüft die MFCU 120, ob die Nachrichten der drei SFCUs 102, 105, 108 ein sinnvolles Bild der Umgebung zeichnen oder ob eine oder mehrere der Nachrichten fehlerhaft sind. Ein erkannter Fehler wird in Form einer Fehlernachricht vor dem Kommitmentzeitpunkt über den Kanal 111, der Vermittlungseinheit 110 und dem Kanal 112 an die VFCU 130 gesendet. Wenn die VFCU eine Fehlernachricht von der MFCU 120 empfängt, so analysiert die VFCU 130 die in der Nachricht enthaltene Fehlerbeschreibung und entscheidet, ob die in diesem Zyklus errechneten Resultate verworfen werden müssen. Im Falle, dass die VFCU 130 die Resultate verwirft, bleibt ihr innerer Zustand unverändert und es wird in diesem Zyklus kein neuer Wert an die AFCU 170 zur Ausgabe an den Aktuator 171 weitergegeben.
In vielen zyklischen Echtzeitanwendungen der Regelungstechnik oder im Multimediabereich wird der Ausfall eines Zyklus durch die Anwendung toleriert. Durch die offengelegte
Erfindung wird verhindert, dass ein transienter Fehler durch die Beschädigung des inneren Zustands einer FCU zu einem permanenten Fehler wird oder durch die Ausgabe eines fehlerhaften Resultats ein Schaden in der Umgebung entsteht.
Fig. 2 zeigt eine Realisierung des beschriebenen Verfahrens mittels eines Multiprocessor System on Chip (MPSoC). Der MPSoC 200 beinhaltet die SFCUs 102, 105, 108 als IP-cores. Die Vermittlungseinheit 110 ist als Network-on-Chip ausgeführt. Neben der MFCU 120 ist eine weitere MFCU 125 als IP-core realisiert. Die VFCU 130 ist ebenfalls ein eigenständiges IP-core. Die AFCU 170, die den Aktuator 171 ansteuert, ist als getrenntes Subsystem implementiert. Das neue Verfahren lässt sich somit sehr effizient auf einem MPSoC realisieren und nützt die inhärente Parallelität von MPSoCs.
Das offengelegte Verfahren kann auch in der Verteilereinheit 110 implementiert werden. In diesem Fall werden die Nachrichten der SFCUs 102, 105, 108 von der Verteilereinheit sofort an die MFCU 120 weitergeleitet, jedoch wird die Weiterleitung dieser Nachrichten an die VFCU 130 durch die Verteilereinheit 110 bis zum Kommitmentzeitpunkt verzögert. Wenn vor dem Kommitmentzeitpunkt eine Fehlernachricht von der MFCU 120 in der Verteilereinheit 110 eintrifft, so verwirft die Verteilereinheit die noch im Speicher der Verteilereinheit vorhandene Nachrichten der SFCUs 102, 105, 108. In einem zeitgesteuerten System realisiert diese Implementierung die Abstraktion eines fail-silent Sensorsystems, d.h. das Sensorsystem sendet entweder richtige Nachrichten oder keine Nachrichten. Eine alternative Implementierung der faü-süence, die von Teilen der Industrie verfolgt wird, setzt zu diesem Zweck self- checking Hardware ein. Das offengelegte Verfahren hat gegenüber der self-checking Hardware den Vorteil, dass nicht nur digitale Hardwarefehler auf der Hardwareebene, sondern zusätzlich auch die wesentlich häufigeren Fehler der Sensoren und Softwarefehler auf Systemebene erkannt werden können.
Wenn neben den transienten Fehlerursachen auch permanente Hardwarefehler toleriert werden müssen, so ist der Einsatz von redundanter Hardware erforderlich. Entsprechend der spezifizierten Fehlerhypothese müssen die Sensoren, die FCUs, die Vermittlungseinheiten und die Kommunikationskanäle redundant ausgelegt werden. Das offen gelegte Verfahren zur Fehlererkennung und Fehlerbehandlung kann auch beim Einsatz von redundanter Hardware angewendet werden.
Erfahrungsgemäß beansprucht in vielen Echtzeitsystemen die Fehlererkennung einen vergleichbaren Aufwand wie die zur Verarbeitung. Die klare Trennung und Parallelanordnung von Verarbeitungsfunktion und Fehlererkennungsfunktion bietet im Vergleich zur üblichen Serienanordnung innerhalb einer einzigen FCU folgende technische und wirtschaftliche Vorteile:
• Zusätzlich zur offensichtlichen Verkürzung der Antwortzeit wird auch die Zuverlässigkeit verbessert, da die VFCUs verkleinert werden und ein fail-silent Ausfall einer MFCU (die dominante Ausfallart der Hardware) keinen Ausfall der Verarbeitungsfunktion bedingt.
• Die Wahrscheinlichkeit für das Auftreten von korrelierten Fehlern wird reduziert und damit die Sicherheit erhöht.
• Die Parallelanordnung von Verarbeitungsfunktion und Fehlererkennungs-funktion erleichtert eine Implementierung auf einem MPSoC.
• Die Unabhängigkeit der Funktionen reduziert die Systemkomplexität und führt damit zu einer Reduktion der Entwicklungs- und Validierungskosten.
Die vorliegende Erfindung beschreibt ein innovatives Verfahren wie in einem System-of- Systems unter Echtzeitbedingungen die funktionale Verarbeitung und die Fehlererkennung parallelisiert werden können, und wie verhindert werden kann, dass sich ein erkannter Fehler in die Umgebung fortpflanzt. Dies wird durch die Einführung eines mit einem vorläufigen Ergebnis assoziierten Kommitmentzeitpunkts ermöglicht. Die parallel arbeitende unabhängige Fehlererkennung muss vor dem Kommitmentzeitpunkt den Fehler an das Subsystem, das die Ausgabe an die Umgebung vornimmt, melden, so dass ein erkannter Fehler zu keinen falschen Ausgaben an die Umgebung führt.
Zitierte Literatur:
[1] US 5,793,753
[2] US 7,839,868
[3] US 8,004,993
[4] US Pat Application 20110307741
[5] US Pat Application 20050094674
[6] Kopetz, H. Real-Time Systems, Design Principles for Distributed Embedded
Applications. Springer Verlag. 2011.
[7] SAE Standard von TT Ethernet. URL: http://standards.sae.org/as6802
Claims
1. Verfahren zur Fehlererkennung in einem Fault-Containments-Units (FCUs) umfassenden verteilten Echtzeitcomputersystem, insbesondere einem fehlertoleranten System-of- Systems (SoS), welches über eine globale Zeitbasis verfügt, dadurch gekennzeichnet, dass die Fault-Containments-Units mittels Nachrichten über mindestens eine Nachrichtenverteileinheit kommunizieren, wobei mit einer von einer Fault-Containments-Unit gebildeten Nachricht ein Kommitmentzeitpunkt assoziiert ist, und wobei eine Nachrichtenverteileinheit, die eine Nachricht empfängt, die Nachricht an eine oder mehrere parallel arbeitende Fault-Containments-Units weiterleitet, und wobei eine Verarbeitungs-Fault-Containments-Unit (VFCU) keines ihrer Resultate, die von einer oder mehreren der empfangenen Nachrichten beeinflusst sind, vor dem mit den empfangenen Nachrichten assoziierten Kommitmentzeitpunkten an die Umgebung der Verarbeitungs-Fault-Containments-Unit sendet oder zur Veränderung des inneren Zustands der Verarbeitungs-Fault-Containments-Unit verwendet.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der mit einer Nachricht assoziierte Kommitmentzeitpunkt in der Nachricht enthalten ist.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der mit einer Nachricht assoziierte Kommitmentzeitpunkt aus dem a priori festgelegten zeitgesteuerten Zeitplan der Fault-Containments-Units abgeleitet wird.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass zwischen Verarbeitungs-Fault-Containments-Units (VFCUs) und Monitor-Fault-Containments-Units (MFCUs) unterschieden wird, wobei die Nachrichtenverteileinheit eine oder mehrere Nachrichten einer Sensor-Fault-Containments-Unit (SFCU) an eine oder mehrere designierte Verarbeitungs-Fault-Containments-Units und zusätzlich an eine oder mehrere Monitor- Fault-Containments-Units weiterleitet, und wobei eine Monitor-Fault-Containments-Unit den Inhalt der empfangenen Nachrichten überprüft und, falls in einer Nachricht ein Fehler festgestellt wird, vor dem mit der Nachricht assoziierten Kommitmentzeitpunkt eine Fehler- nachricht an die eine oder die mehreren designierten Verarbeitungs-Fault-Containments- Units sendet, so dass die eine oder die mehreren designierten Verarbeitungs-Fault- Containments-Units alle von der fehlerhaften Nachricht beeinflussten Resultate vor dem Kommitmentzeitpunkt verwerfen können.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass in einem zyklisch arbeitenden Echtzeitcomputersystem, insbesondere einem zyklisch arbeitenden System-of-Systems eine designierte Verarbeitungs-Fault-Containments-Unit ein in einem Zyklus aufgrund eines Fehlers verworfenes Resultat durch das Resultat des vorangegangen Zyklus ersetzt.
6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass in einem Zyklus eine Vielzahl von Fault-Containments-Units, die Sensordaten übernehmen können, Nachrichten mit dem gleichen Kommitmentzeitpunkt bilden, wobei mehrere oder alle dieser Nachrichten über eine oder mehrere Nachrichtenverteileinheiten an eine oder mehrere Verarbeitungs-Fault-Containments-Units und an eine oder mehrere Monitor-Fault- Containments-Units gesendet werden, und wobei die Verarbeitungs-Fault-Containments- Units keine Resultate, die von einer dieser Nachrichten beeinflusst sind, vor dem mit den Nachrichten assoziierten Kommitmentzeitpunkt an die Umgebung einer Verarbeitungs- Fault-Containments-Unit sendet oder zur Veränderung des inneren Zustands einer Verarbei- tungs-Fault-Containments-Unit verwendet.
7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass die Verteilereinheit empfangene Nachrichten sofort an die Monitor-Fault-Containments-Units weiterleitet, jedoch die Weiterleitung der Nachrichten an die Verarbeitungs-Fault- Containments-Units bis zum Kommitmentzeitpunkt verzögert, wobei im Falle eines erkannten Fehlers die Monitor-Fault-Containments-Units vor dem Kommitmentzeitpunkt eine Fehlernachricht an die Verteilereinheit senden, so dass die Verteilereinheit die fehlerhaften Nachrichten verwerfen kann und nicht an die Verarbeitungs-Fault-Containments-Units weiterleitet.
8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die eine Fehlernachricht empfangende Verarbeitungs-Fault-Containments-Unit nach einer Analyse der in der Fehlernachricht enthaltenen Beschreibung des Fehlers entscheidet, ob in diesem Zyklus die Resultate an die Umgebung der Verarbeitungs-Fault-Containments-Unit gesendet oder zur permanenten Veränderung des inneren Zustands der Verarbeitungs-Fault- Containments-Unit verwendet werden.
9. Nachrichtenverteileinheit zur Vermittlung von Nachrichten in einem verteilten Echtzeitcomputersystem, insbesondere einem fehlertoleranten System-of-Systems (SoS), welches Fault-Containments-Units (FCUs) umfasst und welches über eine globale Zeitbasis verfügt, wobei die Fault-Containments-Units mittels Nachrichten über die zumindest eine Nachrichtenverteileinheit kommunizieren, wobei mit einer von einer Fault-Containments-Unit gebildeten Nachricht ein Kommitmentzeitpunkt assoziiert ist, und wobei eine Nachrichtenverteileinheit, die eine Nachricht empfängt, die Nachricht an eine oder mehrere parallel arbeitende Fault-Containments-Units weiterleitet, dadurch gekennzeichnet, dass die Nachrichtenverteileinheit dazu eingerichtet ist, eine eintreffende Nachricht zu kopieren und eine Kopie der Nachricht sofort an eine Monitor-Fault-Containments-Unit zu senden und eine zweite Kopie der Nachricht bis zu einem mit der Nachricht assoziierten Kommitmentzeitpunkt zu verzögern, bevor die zweite Kopie der Nachricht von der Nachrichtenverteileinheit an die folgende Verarbeitungs-Fault-Containments-Unit gesendet wird.
10. Nachrichtenverteileinheit nach Anspruch 9, dadurch gekennzeichnet, dass der mit einer Nachricht assoziierte Kommitmentzeitpunkt in der Nachricht enthalten ist.
11. Nachrichtenverteileinheit nach Anspruch 9, dadurch gekennzeichnet, dass der mit einer Nachricht assoziierte Kommitmentzeitpunkt aus dem a priori festgelegten zeitgesteuerten Zeitplan der Fault-Containments-Units abgeleitet wird.
12. Verteiltes Echtzeitcomputersystem, insbesondere fehlertolerantes System-of-Systems (SoS), welches Fault-Containments-Units (FCUs) umfasst und welches über eine globale Zeitbasis verfügt, mit zumindest einer Nachrichtenverteileinheit nach einem der Ansprüche 9 bis 11 zur Vermittlung von Nachrichten, wobei die Fault-Containments-Units mittels Nachrichten über die zumindest eine Nachrichtenverteileinheit kommunizieren, wobei mit einer von einer Fault-Containments-Unit gebildeten Nachricht ein Kommitmentzeitpunkt assoziiert ist, und wobei eine Nachrichtenverteileinheit, die eine Nachricht empfängt, die Nachricht an eine oder mehrere parallel arbeitende Fault-Containments-Units weiterleitet, dadurch gekennzeichnet, dass die Nachrichtenverteileinheit dazu eingerichtet ist, eine eintreffende Nachricht zu kopieren und eine Kopie der Nachricht sofort an eine Monitor-Fault-Containments-Unit zu senden und eine zweite Kopie der Nachricht bis zu einem mit der Nachricht assoziierten Kommitmentzeitpunkt zu verzögern, bevor die zweite Kopie der Nachricht von der Nachrichtenverteileinheit an die folgende Verarbeitungs-Fault-Containments-Unit gesendet wird.
13. Echtzeitcomputersystem nach Anspruch 12, dadurch gekennzeichnet, dass zwischen Verarbeitungs-Fault-Containments-Units (VFCUs) und Monitor-Fault-Containments-Units (MFCUs) unterschieden wird, wobei die Nachrichtenverteileinheit eine oder mehrere Nachrichten einer Sensor-Fault-Containments-Unit (SFCU) an ein oder mehrere designierte Verarbeitungs-Fault-Containments-Units und zusätzlich an eine oder mehrere Monitor- Fault-Containments-Units weiterleitet, und wobei eine Monitor-Fault-Containments-Unit den Inhalt der empfangenen Nachrichten überprüft und, falls in einer Nachricht ein Fehler festgestellt wird, vor dem mit der Nachricht assoziierten Kommitmentzeitpunkt eine Fehlernachricht an die eine oder die mehreren designierten Verarbeitungs-Fault-Containments- Units sendet, so dass die eine oder die mehreren designierten Verarbeitungs-Fault- Containments-Units alle von der fehlerhaften Nachricht beeinflussten Resultate vor dem Kommitmentzeitpunkt verwerfen können.
14. Echtzeitcomputer System nach Anspruch 12 oder 13, dadurch gekennzeichnet, dass in einem zyklisch arbeitenden Echtzeitcomputer System, insbesondere einem zyklisch arbeitenden System-of-Systems eine designierte Verarbeitungs-Fault-Containments-Unit ein in einem Zyklus aufgrund eines Fehlers verworfenes Resultat durch das Resultat des vorangegangen Zyklus ersetzt.
15. Echtzeitcomputer System nach einem der Ansprüche 12 bis 14, dadurch gekennzeichnet, dass in einem Zyklus eine Vielzahl von Fault-Containments-Units, die Sensor daten übernehmen können, Nachrichten mit dem gleichen Kommitmentzeitpunkt bilden, wobei mehrere oder alle dieser Nachrichten über eine oder mehrere Nachrichtenverteileinheiten an eine oder mehrere Verarbeitungs-Fault-Containments-Units und an eine oder mehrere Monitor-Fault-Containments-Units gesendet werden, und wobei die Verarbeitungs-Fault- Containments-Units keine Resultate, die von einer dieser Nachrichten beeinflusst sind, vor dem mit den Nachrichten assoziierten Kommitmentzeitpunkt an die Umgebung einer Verarbeitungs-Fault-Containments-Unit sendet oder zur Veränderung des inneren Zustands einer Verarbeitungs-Fault-Containments-Unit verwendet.
16. Echtzeitcomputer System nach einem der Ansprüche 12 bis 15, dadurch gekennzeichnet, dass die Nachrichtenverteileinheit empfangene Nachrichten sofort an die Monitor-Fault- Containments-Units weiterleitet, jedoch die Weiterleitung der Nachrichten an die Verarbei- tungs-Fault-Containments-Units bis zum Kommitmentzeitpunkt verzögert, wobei im Falle eines erkannten Fehlers die Monitor-Fault-Containments-Units vor dem Kommitmentzeitpunkt eine Fehlernachricht an die Verteilereinheit senden, so dass die Verteilereinheit die fehlerhaften Nachrichten verwerfen kann und nicht an die Verarbeitungs-Fault- Containments-Units weiterleitet.
17. Echtzeitcomputer System nach einem der Ansprüche 12 bis 16, dadurch gekennzeichnet, dass die eine Fehlernachricht empfangende Verarbeitungs-Fault-Containments-Unit nach einer Analyse der in der Fehlernachricht enthaltenen Beschreibung des Fehlers entscheidet, ob in diesem Zyklus die Resultate an die Umgebung der Verarbeitungs-Fault- Containments-Unit gesendet oder zur permanenten Veränderung des inneren Zustands der Verarbeitungs-Fault-Containments-Unit verwendet werden.
18. Echtzeitcomputersystem nach einem der Ansprüche 12 bis 17 , dadurch gekennzeichnet, dass die Monitor-Fault-Containments-Unit den Inhalt der Nachricht sofort überprüft und im Fall einer Fehlererkennung vor dem Kommitmentzeitpunkt eine Fehlermeldung an die Nachrichtenverteileinheit sendet und die Nachrichtenverteileinheit eine fehlerhafte Nachricht verwirft bevor die fehlerhafte Nachricht von der Vermittlungseinheit an die designierte Verarbeitungs-Fault-Containments-Unit gesendet wird.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/380,048 US9575859B2 (en) | 2012-02-22 | 2013-02-20 | Method for fault recognition in a system of systems |
| EP13709731.7A EP2791801B1 (de) | 2012-02-22 | 2013-02-20 | Verfahren zur fehlererkennung in einem system-of-systems |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| ATA227/2012 | 2012-02-22 | ||
| AT2272012 | 2012-02-22 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2013123543A1 true WO2013123543A1 (de) | 2013-08-29 |
Family
ID=47891319
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/AT2013/050043 Ceased WO2013123543A1 (de) | 2012-02-22 | 2013-02-20 | Verfahren zur fehlererkennung in einem system-of-systems |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US9575859B2 (de) |
| EP (1) | EP2791801B1 (de) |
| WO (1) | WO2013123543A1 (de) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016049670A1 (de) * | 2014-10-01 | 2016-04-07 | Fts Computertechnik Gmbh | Verteiltes echtzeitcomputersystem und zeitgesteuerte verteilereinheit |
| WO2016033629A3 (de) * | 2014-09-05 | 2016-05-06 | Fts Computertechnik Gmbh | Computersystem und verfahren für sicherheitskritische anwendungen |
| EP3110061A1 (de) * | 2015-06-23 | 2016-12-28 | Fts Computertechnik Gmbh | Verteiltes echtzeitcomputersystem sowie verfahren zur erzwingung des fail-silent-verhaltens eines verteilten echtzeitcomputersystems |
| US10019292B2 (en) | 2015-12-02 | 2018-07-10 | Fts Computertechnik Gmbh | Method for executing a comprehensive real-time computer application by exchanging time-triggered messages among real-time software components |
| EP3376330A1 (de) * | 2017-03-17 | 2018-09-19 | TTTech Computertechnik AG | Fehlertolerantes verfahren zur erkennung von fehlern in einem elektronischen system zur steuerung eines kontrollierten objektes |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20170048144A1 (en) * | 2015-08-13 | 2017-02-16 | Futurewei Technologies, Inc. | Congestion Avoidance Traffic Steering (CATS) in Datacenter Networks |
| US10523760B2 (en) | 2015-10-16 | 2019-12-31 | Tttech Computertechnik Ag | Method and computer system for quickly transmitting time-controlled real-time messages |
Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0246218A2 (de) * | 1986-05-14 | 1987-11-19 | Alcatel Austria Aktiengesellschaft | Fehlertolerantes Datenverarbeitungssystem |
| US5793753A (en) | 1996-09-17 | 1998-08-11 | Coherent Communications Systems Corp. | Telecommunications network management observation and response system |
| WO2002031656A2 (de) * | 2000-10-10 | 2002-04-18 | Fts Computertechnik Ges.M.B.H | Behandeln von fehlern in einem fehlertoleranten verteilten computersystem |
| US20050094674A1 (en) | 2002-02-18 | 2005-05-05 | Manfred Zinke | Method and circuit arrangement for the monitoring and management of data traffic in a communication system with several communication nodes |
| WO2009108978A1 (de) * | 2008-03-04 | 2009-09-11 | Fts Computertechnik Gmbh | Verfahren zur erhöhung der robustheit von computersystemen sowie computersystem |
| US7839868B2 (en) | 2002-06-13 | 2010-11-23 | FTS Computer Technik GmbH | Communication method and system for the transmission of time-driven and event-driven Ethernet messages |
| WO2011003121A1 (de) * | 2009-07-09 | 2011-01-13 | Fts Computertechnik Gmbh | System-on-chip fehlererkennung |
| US8004993B2 (en) | 2008-07-25 | 2011-08-23 | Tttech Computertechnik Aktiengesellschaft | Multirouter for time-controlled communication system |
| US20110307741A1 (en) | 2010-06-15 | 2011-12-15 | National Chung Cheng University | Non-intrusive debugging framework for parallel software based on super multi-core framework |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5694542A (en) * | 1995-11-24 | 1997-12-02 | Fault Tolerant Systems Fts-Computertechnik Ges.M.B. | Time-triggered communication control unit and communication method |
-
2013
- 2013-02-20 US US14/380,048 patent/US9575859B2/en active Active
- 2013-02-20 EP EP13709731.7A patent/EP2791801B1/de active Active
- 2013-02-20 WO PCT/AT2013/050043 patent/WO2013123543A1/de not_active Ceased
Patent Citations (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0246218A2 (de) * | 1986-05-14 | 1987-11-19 | Alcatel Austria Aktiengesellschaft | Fehlertolerantes Datenverarbeitungssystem |
| US5793753A (en) | 1996-09-17 | 1998-08-11 | Coherent Communications Systems Corp. | Telecommunications network management observation and response system |
| WO2002031656A2 (de) * | 2000-10-10 | 2002-04-18 | Fts Computertechnik Ges.M.B.H | Behandeln von fehlern in einem fehlertoleranten verteilten computersystem |
| US20050094674A1 (en) | 2002-02-18 | 2005-05-05 | Manfred Zinke | Method and circuit arrangement for the monitoring and management of data traffic in a communication system with several communication nodes |
| US7839868B2 (en) | 2002-06-13 | 2010-11-23 | FTS Computer Technik GmbH | Communication method and system for the transmission of time-driven and event-driven Ethernet messages |
| WO2009108978A1 (de) * | 2008-03-04 | 2009-09-11 | Fts Computertechnik Gmbh | Verfahren zur erhöhung der robustheit von computersystemen sowie computersystem |
| US8004993B2 (en) | 2008-07-25 | 2011-08-23 | Tttech Computertechnik Aktiengesellschaft | Multirouter for time-controlled communication system |
| WO2011003121A1 (de) * | 2009-07-09 | 2011-01-13 | Fts Computertechnik Gmbh | System-on-chip fehlererkennung |
| US20110307741A1 (en) | 2010-06-15 | 2011-12-15 | National Chung Cheng University | Non-intrusive debugging framework for parallel software based on super multi-core framework |
Non-Patent Citations (2)
| Title |
|---|
| KOPETZ H ET AL: "TTP - A PROTOCOL FOR FAULT-TOLERANT REAL-TIME SYSTEMS", COMPUTER, IEEE SERVICE CENTER, LOS ALAMITOS, CA, US, vol. 27, no. 1, 1 January 1994 (1994-01-01), pages 14 - 23, XP000426338, ISSN: 0018-9162, DOI: 10.1109/2.248873 * |
| KOPETZ, H.: "Design Principles for Distributed Embedded Applications", 2011, SPRINGER VERLAG, article "Real-Time Systems" |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2016033629A3 (de) * | 2014-09-05 | 2016-05-06 | Fts Computertechnik Gmbh | Computersystem und verfahren für sicherheitskritische anwendungen |
| WO2016049670A1 (de) * | 2014-10-01 | 2016-04-07 | Fts Computertechnik Gmbh | Verteiltes echtzeitcomputersystem und zeitgesteuerte verteilereinheit |
| EP3110061A1 (de) * | 2015-06-23 | 2016-12-28 | Fts Computertechnik Gmbh | Verteiltes echtzeitcomputersystem sowie verfahren zur erzwingung des fail-silent-verhaltens eines verteilten echtzeitcomputersystems |
| US10019292B2 (en) | 2015-12-02 | 2018-07-10 | Fts Computertechnik Gmbh | Method for executing a comprehensive real-time computer application by exchanging time-triggered messages among real-time software components |
| EP3376330A1 (de) * | 2017-03-17 | 2018-09-19 | TTTech Computertechnik AG | Fehlertolerantes verfahren zur erkennung von fehlern in einem elektronischen system zur steuerung eines kontrollierten objektes |
Also Published As
| Publication number | Publication date |
|---|---|
| US9575859B2 (en) | 2017-02-21 |
| US20150012779A1 (en) | 2015-01-08 |
| EP2791801A1 (de) | 2014-10-22 |
| EP2791801B1 (de) | 2015-09-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2791801B1 (de) | Verfahren zur fehlererkennung in einem system-of-systems | |
| US8010846B1 (en) | Scalable self-checking processing platform including processors executing both coupled and uncoupled applications within a frame | |
| DE19836347C2 (de) | Fehlertolerantes Computersystem | |
| DE2908316C2 (de) | Modular aufgebaute Multiprozessor-Datenverarbeitungsanlage | |
| EP1810145B1 (de) | Verfahren und vorrichtung zur synchronisierung in einem mehrprozessorsystem | |
| DE19832060C2 (de) | Doppelbare Prozessoreinrichtung | |
| DE102005014488A1 (de) | Verfahren und System zum Bedienen asynchroner Unterbrechungen bei mehreren Prozessoren, die ein Benutzerprogramm ausführen | |
| WO2013152379A1 (de) | Verfahren und vermittlungseinheit zur zuverlässigen vermittlung von synchronisationsnachrichten | |
| DE112011104471T5 (de) | Verfahren zur Failover-Verwaltung von virtuellen Maschinen und System zum Unterstützen desselben | |
| AT515454A2 (de) | Verfahren zur Behandlung von Fehlern in einem zentralen Steuergerät sowie Steuergerät | |
| DE3328405C2 (de) | ||
| EP1358554B1 (de) | Automatische inbetriebnahme eines clustersystems nach einem heilbaren fehler | |
| EP2981868A1 (de) | Steuer- und datenübertragungsanlage, prozesseinrichtung und verfahren zur redundanten prozesssteuerung mit dezentraler redundanz | |
| DE102018118243B4 (de) | Techniken zur Bereitstellung eines abgesicherten Steuerungsparameters zur mehrkanaligen Steuerung einer Maschine | |
| EP2513796A1 (de) | Verfahren zum betreiben einer recheneinheit | |
| EP2801174B1 (de) | Verfahren und vorrichtung zur konsistenten änderung der zeitpläne in einer zeitgesteuerten vermittlung | |
| CN101441586A (zh) | 基于微包协议的三模冗余容错计算机无缝重构方法 | |
| WO2013096986A2 (de) | Verfahren zur zeitrichtigen zusammenführung von ergebnissen von periodisch arbeitenden edv-komponenten | |
| US10346242B2 (en) | Distributed real-time computer system and time-triggered distribution unit | |
| EP3669278B1 (de) | Verfahren und vorrichtung zum unidirektionalen und integritätsgeschützten synchronisieren von log-daten | |
| CH712732A1 (de) | Computerisiertes System. | |
| EP2250560B1 (de) | Verfahren zur erhöhung der robustheit von computersystemen sowie computersystem | |
| EP2520989A2 (de) | Verfahren zum Betrieb eines hochverfügbaren Systems mit funktionaler Sicherheit sowie ein hochverfügbares System mit funktionaler Sicherheit | |
| EP3469484B1 (de) | Datenübertragung zwischen signaltechnisch sicheren recheneinheiten | |
| DE10319903B4 (de) | Eigensichere Rechneranordnung |
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: 13709731 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2013709731 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 14380048 Country of ref document: US |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |