WO2011120490A1 - Computersystem und verfahren zum vergleichen von ausgangssignalen - Google Patents

Computersystem und verfahren zum vergleichen von ausgangssignalen Download PDF

Info

Publication number
WO2011120490A1
WO2011120490A1 PCT/DE2011/000268 DE2011000268W WO2011120490A1 WO 2011120490 A1 WO2011120490 A1 WO 2011120490A1 DE 2011000268 W DE2011000268 W DE 2011000268W WO 2011120490 A1 WO2011120490 A1 WO 2011120490A1
Authority
WO
WIPO (PCT)
Prior art keywords
processor cores
comparison
output signals
output
cots
Prior art date
Application number
PCT/DE2011/000268
Other languages
English (en)
French (fr)
Inventor
Dietmar Geiger
Michael Paulitsch
Original Assignee
Eads Deutschland 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 Eads Deutschland Gmbh filed Critical Eads Deutschland Gmbh
Priority to AU2011235381A priority Critical patent/AU2011235381B2/en
Priority to US13/638,438 priority patent/US9612922B2/en
Priority to EP11717465A priority patent/EP2553578A1/de
Publication of WO2011120490A1 publication Critical patent/WO2011120490A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • G06F11/184Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/187Voting techniques
    • G06F11/188Voting techniques where exact match is not required

Definitions

  • the invention relates to a computer system and a method for comparing output signals output by means of at least two COTS processor cores.
  • the invention further relates to a computer program.
  • test procedures require a particularly intensive examination of the design of the corresponding hardware and the software running thereon.
  • test methods are time-consuming and expensive.
  • development of appropriate hardware and software is expensive and time consuming.
  • the hardware can often only be used for the respective safety-critical computer system.
  • the invention includes the idea of providing or creating a computer system that can ensure data integrity through the use of multiple dissimilar processor cores. On the other hand, availability is increased by using multiple processors.
  • the invention comprises an arrangement of a computer system with at least two, for example three, COTS processor cores and with an evaluation device connected to the at least two COTS processor cores for evaluating output signals by means of the COTS processor cores, the evaluation means comparing means for pairwise comparing the respective ones
  • comparison means having output signals output, wherein the comparison means are further configured to output a comparison signal corresponding to the respective comparison of the output signals.
  • NoC network-on-chip
  • COTS processor cores For example, a network-on-chip (NoC) is connected to the COTS processor cores.
  • a NoC is in particular a
  • a system-on-chip (SoC) communication subsystem may be configured to communicate the output signals to external receivers.
  • an external receiver may include, for example, a landing flap, a landing gear or a tail of an aircraft or a space shuttle.
  • the NoC can be certified according to the RTCA DO-254 test procedure. However, it is not necessary for the NoC to successfully complete such or similar certification process. It is enough if the NoC is certified for the specific application. For example, the NoC may only be for one Memory access, communication, network, routing or pre-processing of data, for example as a filter, or certified for a combination thereof. Such a NoC is cheaper to manufacture and still allows a fail-safe and integrated computer system.
  • the NoC may include memory consistency logic.
  • a method is furthermore provided for comparing output signals output by means of at least two COTS processor cores, comprising the following steps:
  • the step can be:
  • a computer program is provided with program code for carrying out the method according to the invention when the computer program is executed on a computer.
  • the invention thus encompasses the idea of comparing the output signals of COTS processor cores, which are connected to one another, for example, by means of a system-on-chip (SoC), in pairs, and to determine from these comparisons which output signal is integer.
  • SoC system-on-chip
  • the output signal corresponds to a result of a calculation performed by means of a COTS processor core.
  • integer that the result lies within a certain Fault Tolerance range. Only if this is the case will there be no inadmissible system state changes. The system will have a valid state.
  • SoC system-on-chip
  • this includes
  • NoC network-on-chip
  • the NoC is an integral NoC.
  • the NoC is with
  • An Integral NoC in this context can be defined as a NoC, either after
  • the comparison of the output signals may be at least partially performed by means of the COTS processor cores
  • Processor core A has calculated the result 1 and processor core B has that
  • Result 0 calculated.
  • A now compares his result to the result of B and B compares his result to the result of A.
  • a and B both determine that the results do not match and give the NoC a corresponding signal or comparison signal.
  • the NoC becomes the information from this signal that the two results, 1 and 0, should be discarded since it can not be determined which result is correct.
  • a and B come to a different result in the comparison, that is, for example, A determines that the results are not
  • a and B will pass corresponding signals or comparison signals to the NoC.
  • the NoC detects that at least one of the cores has calculated an incorrect result and rejects both results 1 and 0. In particular, this prevents any further processing of incorrect results.
  • the external receiver comprises further comparison means for
  • the receiver may for example comprise an actuator, which in particular in one
  • Landing flap or integrated in a landing gear or in a tail unit Landing flap or integrated in a landing gear or in a tail unit.
  • COTS is an abbreviation known to those skilled in the art and means: “Commercial of the shelf” or “components of the shelf”.
  • COTS hardware includes hardware from mass-produced
  • COTS processor cores can be, for example, processor cores of known processors of IBM, ARM, Intel, AMD or VIA, as used in particular in known mobile computer systems or personal computers (PC).
  • PC personal computers
  • AMD Athlon or AMD Phenom processors or processors may be used.
  • the above list should not be understood as exhaustive. Rather, all processors can be used, which are also used in the usual embedded computers or personal computer (PC).
  • PC personal computer
  • These can be embedded processors, desktop processors and / or mobile processors. Since such processors have not usually been manufactured primarily for safety-critical applications, they do not have to pass through the test methods mentioned at the beginning, nor do they exist. But that means in particular that the manufacturing and development costs of such
  • COTS processor cores are significantly lower compared to certified processors.
  • the COTS processor cores can also be classified as non-certified
  • processor cores are called. In particular, not certified according to any of the above test methods and development methods.
  • COTS processor cores it is nevertheless possible by means of such COTS processor cores to create a computer system which can be used in safety-critical areas, in particular in the aerospace industry.
  • COTS processor cores in the following non-limiting example, there should be three COTS processor cores, A, B and C, an evaluation device which has comparison means for pairwise comparing the respective output signals.
  • the output of the COTS processor core A is compared with the output of the COTS processor core B. Further, the output of the COTS processor core B is compared with the output of the COTS processor core C and output of the COTS processor core C with the output of the COTS processor core A.
  • the comparison means are used in the case of Compare this capture and output corresponding comparison signals.
  • the comparison signals comprise, in particular, the information that the respective cores have output the same output signals, that is to say calculate the same result.
  • the COTS processor core A calculates a different result than the COTS processor cores B and C
  • the COTS processor core A will output a different output signal than the COTS processor cores B and C.
  • the comparison means will compare the output signals from core A and core B and comparing the outputs of core A and C detect that the respective output signals are not equal and a corresponding one
  • the comparison means will detect that the output signals of core B and core C are equal and output a corresponding comparison signal.
  • the comparison signals comprise in particular the information that the cores B and C have output the same output signal, ie calculated the same result, and that the core A has outputting a different output signal compared to the cores B and C, ie a calculated another result. In this way, it is detected that two of the COTS processor cores, B and C, have calculated a different result than the third COTS processor core, A.
  • COTS processor cores are provided.
  • the COTS processor cores are comprised by a processor, in particular the COTS processor cores are integrated in the processor.
  • the COTS processor cores may also each be comprised by a single processor, in particular integrated therein.
  • the processor comprising the two COTS processor cores can also be broadly referred to as a multi-core processor.
  • a plurality of multi-core processors can be provided.
  • IC Computer system of an integrated circuit
  • IC integrated circuit
  • the individual electronic components in particular the COTS processor cores and / or the evaluation device, but also further electronic components, in particular further logic circuits, on a substrate,
  • a semiconductor substrate is arranged and / or integrated, thereby enabling a particularly miniaturized and cost-effective design,
  • SoC system-on-a-chip
  • the COTS processor cores are physically connected to the comparison means. This means that the COTS processor cores with the comparison means each by means of a
  • Output signals can be transmitted without a large time delay to the comparison means.
  • a large time delay to the comparison means.
  • Switching means may be provided, which is connected between one or more COTS processor cores and the comparison means, wherein the
  • Switching device receives the output signals and then to the
  • the switching device can be configured such that it transmits the output signals to the comparison means depending on a load condition of the comparison means. So can be avoided in an advantageous manner that already busy comparison means not yet further comparison calculations are charged, which can cause a significant time delay.
  • the switch may be a bus, a routing device and / or a storage coherence device configured to ensure coherence in memories, such as RAM or caches, associated with the COTS processor cores.
  • the switching device may also be referred to as a "network on a chip.”
  • the NoC may also be comprised of an integrated circuit
  • the NoC is certifiable for a safety-critical application, in particular according to one of the test methods mentioned at the outset, for example a verification method in accordance with DO-254 and / or DO-178b.
  • a selection device connected to the comparison means is formed, which is configured in such a way, depending on the comparison signals
  • the selection device comprises a logical OR circuit.
  • the comparison means comprise logical AND circuits.
  • the selection device is comprised by the COTS processor cores, in particular the selection device can be integrated in the COTS processor cores.
  • the selection device and the evaluation device are integrated in a logic circuit device.
  • the logic circuit device can be certified according to one of the test methods mentioned above, in particular by a method according to DO-254 and / or DO-178b test method.
  • the selection device and / or the evaluation device can also be certifiable according to one of these test methods.
  • a still fail-safe computer system is created in an advantageous manner, which is suitable for safety-critical applications, in particular in the aerospace industry.
  • the three COTS processor cores are each formed as a logical or a physical COTS processor core. In another preferred embodiment of the invention, it may be provided that at least one of the three COTS processor cores is different from the other two COTS processor cores.
  • Integrity regarding systematic errors can be achieved.
  • a processor core may have a serial failure that causes the processor core to give erroneous results in certain calculations. This circumstance, however, is due to the processor cores different from this processor core
  • one COTS processor core may be manufactured by AMD while the other two COTS processor cores are manufactured by Intel.
  • the processor cores differ in their clock frequency and / or in their cache memory.
  • processor cores with a lower clock frequency and / or with less cache memory than other processor cores can be used for less compute-intensive tasks, for example, for a signature calculation and / or a signature analysis.
  • the additional processor cores with the higher clock frequency and / or with the larger cache memory can be used in particular for compute-intensive tasks.
  • costs can advantageously be saved and nevertheless a highly integrated and redundant computer system can be created.
  • the comparison signals are connected to a connected to the comparison means
  • the selection device selects an output signal for further processing depending on the transmitted comparison signals.
  • two output signals are classified as equal if respective parameters of the output signals lie within a predetermined error tolerance range.
  • Such parameters may be, for example, digitized results of certain arithmetic operations whose deviation is within certain limits.
  • the computer program is stored in a firmware of the evaluation device.
  • the firmware may be stored in a rewritable memory,
  • FIG. 1 shows a computer system according to the invention
  • 2 shows the computer system according to the invention from FIG. 1 with a NoC
  • FIG. 1 shows a computer system according to the invention
  • 2 shows the computer system according to the invention from FIG. 1 with a NoC
  • FIG. 1 shows a computer system according to the invention
  • 2 shows the computer system according to the invention from FIG. 1 with a NoC
  • FIG. 1 shows a computer system according to the invention
  • Fig. 3 shows the computer system according to the invention from Fig. 2 with an external
  • FIG. 4 shows the computer system according to the invention from FIG. 3, wherein the COTS processor cores have comparison means
  • FIG. 5 shows a schematic view of the comparison means of the processor cores from FIG. 4 and FIG
  • FIG. 6 shows the computer system according to the invention from FIG. 4 with an external one
  • Fig. 1 shows a computer system 101 with three COTS-Prozessorkemen 103, 105 and 107, which are preferably not identical.
  • the three COTS processor cores 103, 105 and 107 are integrated in a processor 109.
  • the processor 109 is thus a Dreikemreaor.
  • the processor 109 is thus a Dreikemreaor.
  • Processor 109 may be a four-core, eight-core, or sixteen-core processor.
  • the three COTS processor cores 103, 105 and 107 are each integrated in a separate processor.
  • the computer system 101 further comprises a logic circuit device 1 1 1, in which an evaluation device 113 is integrated.
  • the evaluation device 1 13 comprises three comparison means 15, 117 and 119.
  • the comparison means 15 is connected to the COTS processor cores 103 and 107 and receives the respective output signals of the COTS processor cores 103 and 107.
  • the comparison means 117 is provided with the COTS Processor core 103 and 105 and receives the respective output signals of the COTS processor cores 103 and 105.
  • the Compare means 1 19 is connected to the COTS processor cores 105 and 107 and receives the respective output signals of the COTS processor cores 105 and 107.
  • the comparison means 15, 17, and 19 each comprise a logical AND circuit.
  • a selector 121 is integrated into the logic circuit device 1 1 1, which is connected to the comparison means 1 15, 1 17 and 1 19.
  • the selector 121 comprises a logical OR circuit.
  • the comparison means 15 will compare the respective output signals of the COTS processor cores 103 and 107 with each other and output a corresponding comparison signal and transmit them to the selector 121.
  • the comparison signal comprises, in particular, the information as to whether respective parameters, for example phase, frequency and / or amplitude, of the output signals are within a predetermined error tolerance range. If the respective parameters are within the predetermined error tolerance range, the respective output signals are classified as equal.
  • the comparison means 117 compares the respective output signals of the COTS processor cores 103 and 105.
  • the comparison means 1 19 compares the respective output signals of the COTS processor cores 105 and 107. The comparison means 1 17 and 1 19 then enter analogously compare signal corresponding to the respective comparison and transmit it to the selection device 121.
  • selector 121 may select one of the three output signals for further processing. If one of the three COTS processor cores 103, 105, and 107 has an output other than the other two COTS processor cores, the selector 121 becomes the other one
  • Discard output signal because statistically it is more likely that this other output signal will be based on a wrong calculation than the respective output signals of the two other COTS processor cores which have output an equal output signal.
  • the selector 121 will then select an output signal for further processing from the two equally classified output signals.
  • Fig. 2 shows the computer system 101 of Fig. 1, wherein in addition a NoC 123 is connected to the three COTS processor cores 103, 105 and 107.
  • the NoC 123 may be connected to an external receiver 125.
  • the NoC 123 transmits the output signals to the external receiver 125.
  • the NoC 123 may transmit the output signal selected by means of the selector 121 to the external receiver 125.
  • the NoC 123 is certifiable, for example according to one of the above test methods, whereby it is not necessary that the NoC 123 has successfully passed the entire test procedure, but only test procedures for a specific application.
  • Such an application may, in particular, be a memory access, a communication, a routing, a network or a pre-processing of data, for example filters, or a combination thereof.
  • the NoC 123 may include a so-called "memory consistency logic", memory consistency logic (not shown)
  • the external receiver 125 may include, for example, an actuator (not shown) or be integrated into one such as an actuator or an undercarriage of an aircraft or of a space shuttle, the actuator can then be controlled by means of the selected signal, for example, the flaps are extended, whereby incorrect calculations are discarded by means of the computer system 101, No false signal, in particular a control signal, can be transmitted to the actuator so that the actuator is controlled according to a correct control command. For example, a pilot of an aircraft may command to extend the flaps, according to one
  • the three COTS processors 103, 105, and 107 each receive a measured aircraft velocity value and independently calculate a corresponding landing flap position. The respective flaps positions are then compared by means of the logic circuit means 111 and discarded any false landing flap positions. The NoC 123 then transmits a control signal associated with the correct landing flap position to the landing flaps, whereupon these extend or retract into the corresponding position. A false signal is not transmitted so that advantageously operation of the aircraft is particularly safe.
  • the computer system 101 of FIG. 3 is shown, wherein the COTS processors 103, 105 and 107 each comprise comparison means 115a, 117a and 119a.
  • the comparison means 115a, 117a and 119a are in particular formed so as to compare the output signals at least partially with one another, in particular in pairs.
  • Comparative means 115a, 117a and 119a are outsourced, so to speak.
  • the computing power of modern COTS processors is advantageously utilized efficiently.
  • Comparative agents 117a and 119a are formed analogously.
  • the comparison means 115a comprises three logical AND circuits 116a, 116b and 116c.
  • Each logic circuit 116a, 116b and 116c will output the result of the pairwise comparison and transmit it to, for example, the NoC 123 and / or the logic circuit device 111.
  • the NoC 123 and / or the logic circuit means 111 can then determine from the results of the comparison means 115a and also from the results of the comparison means 117a and 119a, whether the calculations are correct or whether and which
  • this further comparison means 127 is arranged to compare the output signals of the COTS processor cores 103, 105 and 107 and / or the signals output from the comparison means 115a, 17a and 119a0 to determine a correct result and false ones Discard results.
  • a comparison of the signals from the logic circuit means 111 is thus at least partially outsourced to the receiver 125, so to speak. It can be provided in particular that the further comparison means 127
  • the NoC 123 then serves only for communication and for transmitting the output signals to the external receiver 125.
  • a plurality of processor cores may be provided.
  • too only two processor cores can be provided.
  • the calculations of the two processor cores are then compared with each other and only if they match, a corresponding control signal to the external receiver, which may in particular include an actuator, transmitted.
  • the external receiver which may in particular include an actuator
  • the receiver will then compare the calculations with one another by means of the further comparison means and actuate the actuator only if they match, for example extend the flaps.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

Die Erfindung betrifft ein Computersystem (101), mit: - zumindest zwei COTS-Prozessorkernen (103, 105, 107) und - einer mit den zumindest zwei COTS-Prozessorkernen (103, 105, 107) verbundene Auswerteeinrichtung (113) zum Auswerten mittels der zumindest zwei COTS-Prozessorkerne (103, 105, 107) ausgegebenen Ausgangssignalen, wobei die Auswerteeinrichtung (113) Vergleichsmittel (115, 117, 119) zum paarweise miteinander Vergleichen der jeweiligen ausgegebenen Ausgangssignale aufweist, wobei die Vergleichsmittel (115, 117, 119) ferner konfiguriert sind, ein dem jeweiligen Vergleich der Ausgangssignale entsprechendes Vergleichssignal auszugeben. Die Erfindung betrifft ferner ein Verfahren zum Vergleichen mittels zumindest zwei COTS-Prozessorkerne (103, 105, 107) ausgegebenen Ausgangssignalen sowie ein Computerprogramm.

Description

Computersystem und Verfahren zum Vergleichen von Ausgangssignalen
Die Erfindung betrifft ein Computersystem und ein Verfahren zum Vergleichen von mittels zumindest zweier COTS-Prozessorkerne ausgegebenen Ausgangssignalen. Die Erfindung betrifft femer ein Computerprogramm.
Hintergrund der Erfindung
Damit ein Computersystem in sicherheitskritischen Bereichen wie beispielsweise der Luft- und Raumfahrtindustrie verwendet werden kann, muss es verschiedene standardisierte Testverfahren durchlaufen, die teilweise vom Gesetzgeber geregelt sind. Solche Testverfahren oder Standards umfassen insbesondere SAE ARP4754, SAE ARP4761 , RTCA DO-178b oder RTCA DO-254. Derartige sicherheitskritische Computersysteme weisen insbesondere speziell für den jeweiligen
Anwendungszweck hergestellte zertifizierte Hardwarebauteile wie beispielsweise Schaltungen, inbesondere anwendungsspezifische integrierte Schaltungen (ASIC), Prozessoren oder Prozessorkerne auf. Hierbei verlangen insbesondere die RTCA DO-178b / ED-12B und das RTCA DO-254 / ED-80-Entwicklungs- und - Testverfahren, nachfolgend kurz Testverfahren genannt, eine besonders intensive Prüfung des Designs der entsprechenden Hardware und der darauf laufenden Software. Nachteilig hieran ist aber, dass solche Testverfahren zeitaufwendig und teuer sind. Ebenso ist die Entwicklung entsprechender Hardware und Software teuer und zeitaufwendig. Ferner kann aufgrund der Spezialisierung die Hardware oft nur für das jeweilige sicherheitskritische Computersystem verwendet werden.
Zusammenfassung der Erfindung
Es ist daher Aufgabe der Erfindung ein Computersystem, ein Verfahren und ein Computerprogramm bereitzustellen, welche die obigen Nachteile überwinden, und insbesondere im Vergleich zum Stand der Technik kostengünstigere hoch- sicherheitskritische Computersysteme ermöglichen.
Erfindungsgemäß wird diese Aufgabe mittels der Gegenstände der unabhängigen Ansprüche 1 , 7 und 10 gelöst. Weitere bevorzugte Ausgestaltungen der Erfindung sind Gegenstand von jeweils abhängigen Unteransprüchen.
Die Erfindung umfasst den Gedanken ein Computersystem bereitzustellen oder zu erstellen, das zum einen eine Datenintegrität durch die Verwendung mehrerer dissimilarer Prozessorkeme sicherstellen kann. Zum anderen wird die Verfügbarkeit durch die Verwendung mehrerer Prozessoren erhöht. Die Erfindung umfasst eine Anordnung eines Computersystems mit zumindest zwei, beispielsweise drei, COTS- Prozessorkemen und mit einer mit den zumindest zwei COTS-Prozessorkernen verbundene Auswerteeinrichtung zum Auswerten mittels der COTS- Prozessorkeme ausgegebenen Ausgangssignalen, wobei die Auswerteeinrichtung Vergleichsmittel zum paarweise miteinander Vergleichen der jeweiligen
ausgegebenen Ausgangssignale aufweist, wobei die Vergleichsmittel femer konfiguriert sind, ein dem jeweiligen Vergleich der Ausgangssignale entsprechendes Vergleichssignal auszugeben.
Beispielsweise ist ein Netzwerk-auf-einem-Chip (Network-on-Chip (NoC)) mit den COTS-Prozessorkernen verbunden. Ein NoC ist insbesondere ein
Kommunikationssubsystem eines System-on-Chip (SoC) und kann beispielsweise konfiguriert sein, die Ausgangssignale an externe Empfänger zu übermitteln. Ein solcher externer Empfänger kann beispielsweise eine Landeklappe, ein Fahrwerk oder ein Leitwerk eines Luftfahrzeugs oder eines Space Shuttles umfassen. Hierbei kann der NoC insbesondere nach dem RTCA DO-254-Testverfahren zertifiziert sein. Allerdings ist es nicht erforderlich, dass der NoC einen solchen oder ähnlichen Zertifizierungsprozess erfolgreich absolviert hat. Es reicht, wenn der NoC für die spezifische Anwendung zertifiziert ist. Beispielsweise kann der NoC nur für einen Speicherzugriff, eine Kommunikation, ein Netzwerk, ein routing oder ein pre- processing von Daten, beispielsweise als Filter, oder für eine Kombination hiervon zertifiziert sein. Ein solcher NoC ist kostengünstiger herzustellen und ermöglicht trotzdem ein ausfallsicheres und integres Computersystem. Beispielsweise kann der NoC eine Speicherkonsistenzlogik („memory consistency logic") umfassen.
Erfindungsgemäß wird weiterhin ein Verfahren zum Vergleichen von mittels zumindest zweier COTS-Prozessorkerne ausgegebenen Ausgangssignalen bereitgestellt, umfassend die folgenden Schritte:
- Übermitteln der Ausgangssignale an eine Vergleichsmittel aufweisende
Auswerteeinrichtung,
- paarweises miteinander Vergleichen der jeweiligen übermittelten
Ausgangssignale mittels der Vergleichsmittel,
- Ausgeben eines dem jeweiligen Vergleich der Ausgangssignale
entsprechendes Vergleichssignal (integeres Signal).
Im Falle von mehr als zwei Prozessorkemen kann dann noch der Schritt:
- Auswahl eines der integeren Signale
hinzukommen.
Des Weiteren wird ein Computerprogramm bereitgestellt mit Programmcode zur Ausführung des erfindungsgemäßen Verfahrens, wenn das Computerprogramm auf einem Computer ausgeführt wird. Die Erfindung umfasst also den Gedanken, die Ausgangssignale von COTS- Prozessorkernen, die beispielsweise untereinander mittels eines System-on-Chip (SoC) verbunden sind, jeweils paarweise miteinander zu vergleichen und aus diesen Vergleichen zu ermitteln, welches Ausgangssignal integer ist. Ein
Ausgangssignal entspricht insbesondere einem Ergebnis einer mittels eines COTS- Prozessorkems durchgeführten Berechnung. In diesem Zusammenhang bedeutet integer, dass das Ergebnis innerhalb eines bestimmten Fehlertoleranzbereichs liegt. Nur wenn das der Fall ist, wird es keine unzulässigen Systemzustandsänderungen geben. Das System wird insofern einen zulässigen Zustand aufweisen. Das erfindungsgemäße System ermöglicht somit insbesondere eine Minimierung von Designfehlern bei System-on-Chip (SoC)-Systemen.
In einer einfachen beispielhaften Ausgestaltung der Erfindung umfasst das
Computersystem zwei unterschiedliche oder dissimilare COTS-Prozessorkerne, wobei insbesondere ein Network-on-Chip (NoC) mit den zwei Prozessorkemen verbunden ist und wobei der Network-on-Chip weiterhin derart konfiguriert ist, die von den COTS-Prozessorkernen ausgegebenen Ausgangssignale zu vergleichen. Insbesondere ist der NoC ein integres NoC. Insbesondere ist der NoC mit
mindestens zwei COTS-Prozessorkemen verbunden. Ein integres NoC in diesem Zusammenhang kann als ein NoC definiert werden, das entweder nach
Entwicklungs- und Testverfahren wie RTCA DO-178b und RTCA DO-254 entwickelt wurde oder das aufgrund von speziellen Tests und technischen Argumenten den oben erwähnten Testverfahren gleichzusetzen ist. In einer weiteren beispielhaften Ausgestaltung der Erfindung kann der Vergleich der Ausgangssignale zumindest teilweise mittels der COTS-Prozessorkerne
durchgeführt werden. Als nicht einschränkendes Beispiel wird im Folgenden der Fall von zwei COTS-Prozessorkemen A und B näher erläutert. Prozessorkern A hat das Ergebnis 1 berechnet und Prozessorkern B hat das
Ergebnis 0 berechnet. A vergleicht jetzt sein Ergebnis mit dem Ergebnis von B und B vergleicht sein Ergebnis mit dem Ergebnis von A. A und B stellen beide fest, dass die Ergebnisse nicht übereinstimmen und geben dem NoC ein entsprechendes Signal bzw. Vergleichssignal aus. Der NoC wird aus diesem Signal die Information entnehmen, dass die beiden Ergebnisse, 1 und 0, zu verwerfen sind, da nicht festgestellt werden kann, welches Ergebnis korrekt ist.
Sollten A und B bei dem Vergleich zu einem unterschiedlichen Ergebnis kommen, das heisst, dass A beispielsweise feststellt, dass die Ergebnisse nicht
übereinstimmen, aber B der irrtümlichen Auffassung ist, dass die Ergebnisse übereinstimmen, so werden A und B entsprechende Signale bzw. Vergleichssignale an den NoC übermitteln. Der NoC erfasst dadurch, dass zumindest einer der Kerne ein falsches Ergebnis berechnet hat und verwirft beide Ergebnisse 1 und 0. Somit wird insbesondere vermieden, dass falsche Ergebnisse weiter verarbeitet werden.
In einer anderen beispielhaften Ausgestaltung der Erfindung kann vorgesehen sein, dass die Vergleichssignale von A und B mittels des NoC an einen externen
Empfänger übermittelt werden, ohne dass der NoC die Vergleichssignale weiter bearbeitet. Der externe Empfänger umfasst weitere Vergleichsmittel zum
Vergleichen der Vergleichssignale der Kerne A und B. Der Vergleich wird also nicht im NoC durchgeführt, sondern in dem externen Empfänger. Der Empfänger kann beispielsweise einen Aktuator umfassen, welcher insbesondere in einer
Landeklappe oder in einem Fahrwerk oder in einem Leitwerk integriert ist.
Die Abkürzung COTS ist eine dem Fachmann bekannte Abkürzung und bedeutet: „Commercial of the shelf" oder„components of the shelf" (Kommerzielle Produkte aus dem Regal). COTS-Hardware umfasst Hardware aus seriengefertigten
Bauelementen ohne spezielle Anpassung an eine vorgegebene Anwendung. COTS- Prozessorkeme können beispielsweise Prozessorkeme von bekannten Prozessoren von IBM, ARM, Intel, AMD oder VIA sein, wie sie insbesondere in bekannten mobilen Computersystemen oder Personal Computers (PC) verwendet werden. Insbesondere können AMD Athlon- oder AMD Phenom-Prozessoren oder - Prozessorkeme verwendet werden. Die obige Aufzählung soll nicht als abschließend verstanden werden. Es sollen vielmehr sämtliche Prozessoren verwendet werden können, welche auch in den üblichen Embedded Computern oder Personal Computer (PC) verwendet werden. Hierbei kann es sich um Embedded Prozessoren, Desktop-Prozessoren und / oder um Mobilprozessoren handeln. Da solche Prozessoren üblicherweise nicht primär für sicherheitskritische Anwendungen hergestellt wurden, müssen sie die eingangs genannten Testverfahren nicht durchlaufen und auch nicht bestehen. Das bedeutet aber insbesondere, dass die Herstellungs- und Entwicklungskosten solcher
Prozessoren im Vergleich zu zertifizierten Prozessoren deutlich geringer sind. Die COTS-Prozessorkerne können insofern auch als nicht-zertifizierte, also
zertifikatfreie, Prozessorkerne bezeichnet werden. Insbesondere nicht-zertifiziert nach einem der obigen Testverfahren und Entwicklungsverfahren.
Erfindungsgemäß ist es mittels solcher COTS-Prozessorkeme dennoch möglich, ein Computersystem zu schaffen, welches in sicherheitskritischen Bereichen, insbesondere der Luft- und Raumfahrtindustrie, eingesetzt werden kann.
Insbesondere kann eine Zuverlässigkeit des Computersystems von 10"9
Ausfällen/Stunde erreicht werden. Hierzu ist mit den COTS-Prozessorkernen, im folgenden nicht einschränkenden Beispiel sollen es drei COTS-Prozessorkerne, A, B und C, sein, eine Auswerteeinrichtung verbunden, welche Vergleichsmittel zum paarweise miteinander Vergleichen der jeweiligen Ausgangssignale aufweist.
Beispielsweise wird das Ausgangssignal des COTS-Prozessorkerns A mit dem Ausgangssignal des COTS-Prozessorkerns B verglichen. Weiterhin wird das Ausgangssignal des COTS-Prozessorkerns B mit dem Ausgangssignal des COTS- Prozessorkems C und Ausgangssignal des COTS-Prozessorkerns C mit dem Ausgangssignal des COTS-Prozessorkerns A verglichen.
Wenn im Idealfall alle drei COTS-Prozessorkeme das gleiche Ausgangssignal ausgeben, das heißt insbesondere, dass alle drei Kerne das gleiche Ergebnis einer vorgegebenen Berechnung berechnet haben, werden die Vergleichsmittel beim Vergleichen dies erfassen und entsprechende Vergleichssignale ausgeben. Das heißt, dass die Vergleichssignale insbesondere die Information umfassen, dass die jeweiligen Kerne die gleichen Ausgangssignale ausgegeben haben, also das gleiche Ergebnis berechneten.
Wenn allerdings beispielsweise der COTS-Prozessorkem A ein anderes Ergebnis berechnet als die COTS-Prozessorkerne B und C wird der COTS-Prozessorkern A ein anderes Ausgangssignal ausgeben als die COTS-Prozessorkerne B und C. Die Vergleichsmittel werden also beim Vergleich der Ausgangssignale von Kern A und Kern B und beim Vergleich der Ausgangssignale von Kern A und C erfassen, dass die jeweiligen Ausgangssignale nicht gleich sind und ein entsprechendes
Vergleichssignal ausgeben. Weiterhin werden die Vergleichsmittel erfassen, dass die Ausgangssignale von Kern B und Kern C gleich sind und ein entsprechendes Vergleichssignal ausgeben. Das heißt, dass die Vergleichssignale insbesondere die Information umfassen, dass die Kerne B und C das gleiche Ausgangssignal ausgegeben haben, also das gleiche Ergebnis berechneten, und dass der Kern A ein im Vergleich zu den Kernen B und C anderes Ausgangssignal ausgegeben hat, also ein anderes Ergebnis berechnete. Auf diese Weise wird also erfasst, dass zwei von den COTS-Prozessorkernen, B und C, ein anderes Ergebnis berechnet haben als der dritte COTS-Prozessorkern, A. Statistisch betrachtet ist es insofern
wahrscheinlicher, dass das Ergebnis des Kerns A falsch ist.
Nach einer bevorzugten Ausgestaltung der Erfindung sind mehr als drei COTS- Prozessorkerne vorgesehen. Insbesondere umfasst das Computersystem 4, bevorzugterweise 8, insbesondere 16 COTS-Prozessorkerne. In einer weiteren beispielhaften Ausführungsform der Erfindung sind die COTS-Prozessorkerne von einem Prozessor umfasst, insbesondere sind die COTS-Prozessorkerne in dem Prozessor integriert. Nach noch einer anderen bevorzugten Ausführungsform können die COTS-Prozessorkerne auch jeweils von einem einzelnen Prozessor umfasst sein, insbesondere in diesem integriert sein. Beispielsweise können auch zwei COTS-Prozessorkerne von einem Prozessor umfasst sein, während der dritte COTS-Prozessorkem von einem weiteren Prozessor umfasst ist. Der die zwei COTS-Prozessorkerne umfassende Prozessor kann ganz allgemein auch als ein Mehrkernprozessor bezeichnet werden. Insbesondere können bei beispielhaften Ausführungsformen des erfindungsgemäßen Computersystems mit mehr als drei COTS-Prozessorkernen mehrere Mehrkernprozessoren vorgesehen sein.
Nach einer weiteren bevorzugten Ausgestaltung der Erfindung ist das
Computersystem von einem integrierten Schaltkreis (IC,„Integrated Circuit") umfasst. Das heißt, dass die einzelnen elektronischen Bauelemente, insbesondere die COTS-Prozessorkerne und / oder die Auswerteeinrichtung, aber auch weitere elektronischen Bauelemente, insbesondere weitere logische Schaltungen, auf einem Substrat, insbesondere einem Halbleitersubstrat, angeordnet und / oder integriert sind. Hierdurch wird ein besonders miniaturisierter und kostengünstiger Aufbau ermöglicht. Eine solche Anordnung kann auch als ein Ein-Chip-System (SoC,„System on a Chip") bezeichnet werden.
In einer bevorzugten Ausführungsform der Erfindung sind die COTS- Prozessorkerne physikalisch mit den Vergleichsmitteln verbunden. Das heißt, dass die COTS-Prozessorkerne mit den Vergleichsmitteln jeweils mittels einer
Datenverbindung verbunden sind. Das ermöglicht insbesondere, dass die
Ausgangssignale ohne eine große Zeitverzögerung zu den Vergleichsmitteln übertragen werden können. Alternativ oder ergänzend kann auch eine
Vermittlungseinrichtung vorgesehen sein, welche zwischen einem oder mehreren COTS-Prozessorkernen und den Vergleichsmitteln geschaltet ist, wobei die
Vermittlungseinrichtung die Ausgangssignale empfängt und dann an die
Vergleichsmittel übermittelt. Insbesondere kann die Vermittlungseinrichtung derart konfiguriert sein, dass sie die Ausgangssignale an die Vergleichsmittel abhängig von einem Auslastzustand der Vergleichsmittel übermittelt. So kann in vorteilhafter Weise vermieden werden, dass bereits ausgelastete Vergleichsmittel nicht noch mit weiteren Vergleichsberechnungen belastet werden, wodurch eine erhebliche Zeitverzögerung entstehen kann. Die Vermittlungseinrichtung kann insbesondere einen Bus, eine Routing-Einrichtung und / oder eine Speicherkohärenzeinrichtung sein, welche derart konfiguriert ist, eine Kohärenz in mit den COTS- Prozessorkernen verbundenen Speichern, beispielsweise RAM oder Cache- Speicher, sicherzustellen. Die Vermittlungseinrichtung kann auch als ein Netzwerk- auf-einem-Chip (NoC,„Network on a Chip") bezeichnet werden. Insbesondere kann auch das NoC von einem integrierten Schaltkreis umfasst sein. Nach einer beispielhaften Ausführungsform der Erfindung ist das NoC zertifizierbar für eine sicherheitskritische Anwendung, insbesondere nach einem der eingangs genannten Testverfähren, beispielsweise einem Verifikationsverfahren entsprechend dem DO- 254 und / oder DO-178b.
In einer weiteren beispielhaften Ausgestaltung der Erfindung kann vorgesehen sein, dass eine mit den Vergleichsmitteln verbundene Auswahleinrichtung gebildet ist, welche derart konfiguriert ist, abhängig von den Vergleichssignalen ein
Ausgangssignal zur weiteren Verarbeitung auszuwählen. Somit wird insbesondere ein redundantes Computersystem geschaffen. Redundanz bedeutet in diesem Zusammenhang insbesondere Verfügbarkeit. Das heißt, dass das Computersystem für einen korrekten fehlerfreien Betrieb verfügbar ist. Das heißt insbesondere, dass bei einer Berechnungsanforderung an das Computersystem der Prozessor und / oder die Prozessorkerne das Ergebnis innerhalb eines vorbestimmten Zeitraums ausgeben müssen. In einer bevorzugten Ausführungsform der Erfindung umfasst die Auswahleinrichtung eine logische ODER-Schaltung. In einer weiteren
beispielhaften Ausgestaltung der Erfindung umfassen die Vergleichsmittel logische UND-Schaltungen. In einer weiteren beispielhaften Ausführungsform der Erfindung kann vorgesehen sein, dass die Auswahleinrichtung von den COTS- Prozessorkernen umfasst ist, insbesondere kann die Auswahleinrichtung in den COTS-Prozessorkernen integriert sein. In einer anderen bevorzugten Ausgestaltung der Erfindung sind die Auswahleinrichtung und die Auswerteeinrichtung in einer Logikschaltungseinrichtung integriert. Insbesondere ist die Logikschaltungseinrichtung nach einem der eingangs genannten Testverfahren zertifizierbar, insbesondere nach einem Verfahren entsprechend DO-254 und / oder DO-178b Testverfahren. Beispielsweise können aber auch die Auswahleinrichtung und / oder die Auswerteeinrichtung nach einem dieser Testverfahren zertifizierbar sein. Somit wird in vorteilhafter Weise ein noch ausfallsicheres Computersystem geschaffen, welches für sicherheitskritische Anwendungen, insbesondere in der Luft- und Raumfahrtindustrie, geeignet ist.
In noch einer weiteren beispielhaften Ausführungsform der Erfindung sind die drei COTS-Prozessorkerne jeweils als ein logischer oder als ein physikalischer COTS- Prozessorkem gebildet. In einer anderen bevorzugten Ausgestaltung der Erfindung kann vorgesehen sein, dass zumindest einer der drei COTS-Prozessorkeme verschieden von den beiden anderen COTS-Prozessorkemen ist. Somit kann in vorteilhafter Weise eine
Integrität bezüglich systematischer Fehler erreicht werden. Beispielsweise kann ein Prozessorkern einen Serienfehler aufweisen, aufgrund dessen der Prozessorkem bei bestimmten Berechnungen fehlerhafte Ergebnisse ausgibt. Dieser Umstand wird aber durch die von diesem Prozessorkem verschiedenen Prozessorkerne
ausgeglichen, da aufgrund der Verschiedenheit diese Prozessorkeme mit einer sehr hohen Wahrscheinlichkeit genau diesen Serienfehler nicht aufweisen.
Beispielsweise kann ein COTS-Prozessorkern von der Firma AMD hergestellt sein, während die beiden anderen COTS-Prozessorkeme von der Firma Intel hergestellt sind. Es kann aber auch in einer beispielhaften Ausgestaltung der Erfindung vorgesehen sein, dass sich die Prozessorkeme in ihrer Taktfrequenz und / oder in ihrem Cache-Speicher unterscheiden. Beispielsweise können Prozessorkeme mit einer niedrigeren Taktfrequenz und / oder mit weniger Cache-Speicher als weitere Prozessorkerne für wenig rechenintensive Aufgaben verwendet werden, beispielsweise für eine Signaturberechnung und / oder einer Signaturanalyse. Die weiteren Prozessorkerne mit der höheren Taktfrequenz und / oder mit dem größeren Cache-Speicher können insbesondere für rechenintensive Aufgaben verwendet werden. So können in vorteilhafter Weise Kosten eingespart und trotzdem ein hoch integres und redundantes Computersystem geschaffen werden.
Nach einer bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens werden die Vergleichssignale an eine mit den Vergleichsmitteln verbundene
Auswahleinrichtung übermittelt, wobei die Auswahleinrichtung abhängig von den übermittelten Vergleichssignalen ein Ausgangssignal zur weiteren Verarbeitung auswählt.
In einer anderen beispielhaften Ausgestaltung des erfindungsgemäßen Verfahrens werden zwei Ausgangssignale als gleich klassifiziert, wenn jeweilige Parameter der Ausgangssignale innerhalb eines vorbestimmten Fehlertoleranzbereichs liegen. Solche Parameter können beispielsweise digitalisierte Ergebnisse bestimmter Rechenoperationen sein, deren Abweichung innerhalb bestimmter Grenzen liegen. Somit ist es ermöglicht, den gewünschten Grad an Integrität einzustellen. Nach einer bevorzugten Ausführungsform der Erfindung ist das Computerprogramm in einer Firmware der Auswerteeinrichtung gespeichert. Insbesondere kann die Firmware in einem wiederbeschreibbaren Speicher gespeichert werden,
insbesondere in einem EPROM oder einem EEPROM. Beschreibung bevorzugter Ausführunqsbeispiele
Die Erfindung wird im Folgenden anhand von bevorzugten Ausführungsbeispielen unter Bezugnahme auf Zeichnungen von Figuren näher erläutert. Hierbei zeigen: Fig. 1 ein erfindungsgemäßes Computersystem, Fig. 2 das erfindungsgemäße Computersystem aus Fig. 1 mit einem NoC,
Fig. 3 das erfindungsgemäße Computersystem aus Fig. 2 mit einem externen
Empfänger,
Fig. 4 das erfindungsgemäße Computersystem aus Fig. 3, wobei die COTS- Prozessorkeme Vergleichsmittel aufweisen, Fig. 5 eine schematische Ansicht der Vergleichsmittel der Prozessorkeme aus Fig. 4 und
Fig. 6 das erfindungsgemäße Computersystem aus Fig. 4 mit einem externen
Empfänger.
Fig. 1 zeigt ein Computersystem 101 mit drei COTS-Prozessorkemen 103, 105 und 107, die vorzugsweise nicht baugleich sind. Die drei COTS-Prozessorkeme 103, 105 und 107 sind in einem Prozessor 109 integriert. Der Prozessor 109 ist also ein Dreikemprozessor. In einem nicht gezeigten Ausführungsbeispiel kann der
Prozessor 109 ein Vierkem-, Achtkern- oder ein Sechszehnkemprozessor sein. In einem weiteren nicht gezeigten Ausführungsbeispiel sind die drei COTS- Prozessorkeme 103, 105 und 107 jeweils in einem separaten Prozessor integriert.
Das Computersystem 101 umfasst femer eine Logikschaltungseinrichtung 1 1 1 , in welcher eine Auswerteeinrichtung 113 integriert ist. Die Auswerteeinrichtung 1 13 umfasst drei Vergleichsmittel 1 15, 1 17 und 119. Das Vergleichsmittel 1 15 ist mit den COTS-Prozessorkemen 103 und 107 verbunden und empfängt die jeweiligen Ausgangssignale der COTS-Prozessorkeme 103 und 107. Das Vergleichsmittel 1 17 ist mit den COTS-Prozessorkemen 103 und 105 verbunden und empfängt die jeweiligen Ausgangssignale der COTS-Prozessorkeme 103 und 105. Das Vergleichsmittel 1 19 ist mit den COTS-Prozessorkernen 105 und 107 verbunden und empfängt die jeweiligen Ausgangssignale der COTS-Prozessorkeme 105 und 107. In einer nicht gezeigten Ausführungsform umfassen die Vergleichsmittel 1 15, 1 17 und 1 19 jeweils eine logische UND-Schaltung.
Des Weiteren ist in die Logikschaltungseinrichtung 1 1 1 eine Auswahleinrichtung 121 integriert, welche mit den Vergleichsmitteln 1 15, 1 17 und 1 19 verbunden ist. In einer nicht gezeigten Ausführungsform umfasst die Auswahleinrichtung 121 eine logische ODER-Schaltung.
Das Vergleichsmittel 1 15 wird die jeweiligen Ausgangssignale der COTS- Prozessorkeme 103 und 107 miteinander vergleichen und ein entsprechendes Vergleichssignal ausgeben und an die Auswahleinrichtung 121 übermitteln. Das Vergleichssignal umfasst insbesondere die Information, ob jeweilige Parameter, beispielsweise Phase, Frequenz und / oder Amplitude, der Ausgangssignale innerhalb eines vorbestimmten Fehlertoleranzbereichs liegen. Wenn die jeweiligen Parameter innerhalb des vorbestimmten Fehlertoleranzbereichs liegen, werden die jeweiligen Ausgangssignale als gleich klassifiziert. Auf die gleiche Art und weise vergleicht das Vergleichsmittel 117 die jeweiligen Ausgangssignale der COTS-Prozessorkeme 103 und 105. Ebenfalls analog vergleicht das Vergleichsmittel 1 19 die jeweiligen Ausgangssignale der COTS- Prozessorkeme 105 und 107. Die Vergleichsmittel 1 17 und 1 19 geben dann analog ein dem jeweiligen Vergleich entsprechendes Vergleichssignal aus und übermitteln dieses an die Auswahleinrichtung 121.
Falls alle drei COTS-Prozessorkeme 103, 105 und 107 das gleiche Ausgangssignal ausgegeben haben, kann die Auswahleinrichtung 121 eines der drei Ausgangssignale für eine weitere Verarbeitung auswählen. Falls einer der drei COTS- Prozessorkeme 103, 105 und 107 ein anderes Ausgangssignal als die zwei anderen COTS-Prozessorkerne ausgibt, wird die Auswahleinrichtung 121 das andere
Ausgangssignal verwerfen, weil es statistisch gesehen wahrscheinlicher ist, dass dieses andere Ausgangssignal auf einer falschen Berechnung beruht, als die jeweiligen Ausgangssignale der zwei anderen COTS-Prozessorkerne, welche ein gleiches Ausgangssignal ausgegeben haben. Die Auswahleinrichtung 121 wird dann aus den beiden als gleich klassifizierten Ausgangssignalen ein Ausgangssignal zur weiteren Verarbeitung auswählen.
Fig. 2 zeigt das Computersystem 101 aus Fig. 1 , wobei zusätzlich ein NoC 123 mit den drei COTS-Prozessorkernen 103, 105 und 107 verbunden ist.
Gemäß Fig. 3 kann der NoC 123 mit einem externen Empfänger 125 verbunden sein. Der NoC 123 übermittelt insbesondere die Ausgangssignale an den externen Empfänger 125. Zusätzlich oder alternativ kann der NoC 123 das mittels der Auswahleinrichtung 121 ausgewählte Ausgangssignal dem externen Empfänger 125 übermitteln. Der NoC 123 ist insbesondere zertifizierbar, beispielsweise nach einem der obigen Testverfahren, wobei es nicht erforderlich ist, dass der NoC 123 das gesamte Testverfahren erfolgreich bestanden hat, sondern nur Testverfahren für eine spezifische Anwendung. Eine solche Anwendung kann insbesondere ein Speicherzugriff, eine Kommunikation, ein routing, ein Netzwerk oder ein pre- processing von Daten, beispielsweise Filter, oder eine Kombination hiervon sein. Der NoC 123 kann insbesondere eine sogenannte„memory consistency logic", eine Speicherkonsistenzlogik (nicht gezeigt) umfassen. Der externe Empfänger 125 kann beispielsweise einen Aktuator (nicht gezeigt) umfassen oder in einen solchen integriert sein. Beispielsweise kann ein Aktuator eine Landeklappe, ein Leitwerk oder ein Fahrwerk eines Luftfahrzeugs oder eines Space Shuttles sein. Mittels des ausgewählten Signals kann dann der Aktuator gesteuert werden. Beispielsweise werden die Landeklappen ausgefahren. Dadurch, dass mittels des Computersystems 101 falsche Berechnungen verworfen werden, kann dem Aktuator kein falsches Signal, insbesondere ein Steuersignal, übermittelt werden, so dass der Aktuator entsprechend einem richtigen Steuerbefehl gesteuert wird. Beispielsweise kann ein Pilot oder eine Pilotin eines Luftfahrzeugs den Befehl geben, die Landeklappen auszufahren und zwar entsprechend einer
Luftfahrzeuggeschwindigkeit. Die drei COTS-Prozessoren 103, 105 und 107 erhalten jeweils einen gemessenen Luftfahrzeuggeschwindigkeitswert und berechnen unabhängig von einander eine entsprechende Landeklappenstellung. Die jeweiligen Landeklappenstellungen werden dann mittels der Logikschaltungseinrichtung 111 verglichen und eventuelle falsche Landeklappenstellungen verworfen. Der NoC 123 übermittelt dann ein der korrekten Landeklappenstellung zugeordnetes Steuersignal an die Landeklappen, woraufhin diese in die entsprechende Stellung ausfahren bzw. einfahren. Ein falsches Signal wird so nicht übermittelt, so dass in vorteilhafter Weise ein Betrieb des Luftfahrzeugs besonders sicher ist.
In Fig. 4 ist das Computersystem 101 aus Fig. 3 gezeigt, wobei die COTS- Prozessoren 103, 105 und 107 jeweils Vergleichsmittel 115a, 117a und 119a umfassen. Die Vergleichsmittel 115a, 117a und 119a sind insbesondere derart gebildet, die Ausgangssignale zumindest teilweise miteinander, insbesondere paarweise, zu vergleichen. Somit kann der Vergleich der Ausgangssignale zumindest teilweise von den Vergleichsmitteln 115, 117 und 119 in die
Vergleichsmittel 115a, 117a und 119a sozusagen ausgelagert werden. Hier wird in vorteilhafter Weise die Rechenleistung modemer COTS-Prozessoren effizient ausgenutzt.
In Fig. 5 ist das Vergleichsmittel 115a schematisch dargestellt, wobei die
Vergleichsmittel 117a und 119a analog gebildet sind. Das Vergleichsmittel 115a umfasst drei logische UND-Schaltungen 116a, 116b und 116c. Der logischen Schaltung 116a werden die Ausgangssignale der COTS-Prozessoren 103, als Reil A dargestellt, und 105, als Pfeil B dargestellt, übermittelt. Analog werden die
Ausgangsignale der COTS-Prozessorkeme 105 und 107, als Pfeil C dargestellt, der logischen Schaltung 116b und die Ausgangsignale der COTS-Prozessoren 103 und 5 107 der logischen Schaltung 116c übermittelt. Es findet also ein paarweises
miteinander Vergleichen der Berechnungen der jeweiligen COTS-Prozessorkerne 103, 105 und 107 statt. Jede logische Schaltung 116a, 116b und 116c wird das Ergebnis des paarweisen Vergleichs ausgeben und beispielsweise an den NoC 123 und / oder an die Logikschaltungeinrichtung 111 übermitteln. Der NoC 123 und /0 oder die Logikschaltungseinrichtung 111 können dann aus den Ergebnissen des Vergleichsmittel 115a und auch aus den Ergebnissen der Vergleichsmittel 117a und 119a ermitteln, ob die Berechnungen korrekt sind bzw. ob und welche
Berechnungen bzw. welche Ausgangssignale zu verwerfen sind. 5 In Fig. 6 ist das Computersystem 101 aus Fig. 4 gezeigt mit dem externen
Empfänger 125 aus Fig. 3, wobei der Empfänger 125 zusätzlich noch ein weiteres Vergleichsmittel 127 aufweist. Dieses weitere Vergleichsmittel 127 ist insbesondere derart gebildet, die Ausgangssignale der COTS-Prozessorkerne 103, 105 und 107 und / oder die Signale, welche von den Vergleichsmitteln 115a, 17a und 119a0 ausgegeben werden, miteinander zu vergleichen, um ein korrektes Ergebnis zu bestimmen und falsche Ergebnisse zu verwerfen. In diesem Ausführungsbeispiel ist damit ein Vergleichen der Signale von der Logikschaltungseinrichtung 111 zumindest teilweise in den Empfänger 125 sozusagen ausgelagert. Es kann insbesondere vorgesehen sein, dass das weitere Vergleichsmittel 127
5 ausschließlich die Ausgangssignale miteinander vergleicht. Der NoC 123 dient hier dann lediglich zur Kommunikation und zur Übertragung der Ausgangssignale an den externen Empfänger 125.
Obwohl die vorherigen Ausführungsbeispiel sich auf drei Prozessorkeme beziehen,0 können auch mehrere Prozessorkeme vorgesehen sein. Insbesondere können auch nur zwei Prozessorkerne vorgesehen sein. Hier werden dann insbesondere die Berechnungen der beiden Prozessorkerne miteinander verglichen und nur wenn diese übereinstimmen, wird ein entsprechendes Steuersignal an den externen Empfänger, welcher insbesondere einen Aktuator umfassen kann, übermittelt. Es kann aber auch beispielsweise vorgesehen sein, die Berechnungen der beiden Prozessorkerne direkt mittels des NoC dem Empfänger zu übermitteln. Hier wird dann der Empfänger mittels des weiteren Vergleichsmittels die Berechnungen miteinander vergleichen und nur bei Übereinstimmung den Aktuator betätigen, beispielsweise die Landeklappen ausfahren.
Zusammenfassend ist es insbesondere mittels der erfindungsgemäßen Verbindung der drei COTS-Prozessoren 103, 105 und 107 mit den Vergleichsmitteln 115, 117 und 119 möglich, ein sowohl redundantes als auch hoch integres Computersystem zu schaffen, welches für sicherheitskritische Anwendungen, insbesondere in der Luft- und Raumfahrtindustrie, beispielsweise in einem Space Shuttle, verwendet werden kann. Dadurch, dass nur das Computersystem als solches, nicht aber noch zusätzlich die einzelnen COTS-Prozessoren 103, 105 und 107 die hohen
Anforderungen an die vorgenannten Testverfahren erfüllen müssen, damit das Computersystem beispielsweise für sicherheitskritische Anwendungen in der Luft- und Raumfahrtindustrie verwendet werden kann, können erhebliche Kosten eingespart werden, ohne dass auf eine hohe Sicherheit, beispielsweise eine Ausfallsicherheit, verzichtet werden muss.
Bezugszeichenliste Computersystem
, 105, 107 COTS-Prozessorkerne
Prozessor
Logikschaltungseinrichtung Auswerteeinrichtung
, 117, 119, 115a, 117a, 119a Vergleichsmittel
Auswahleinrichtung NoC
externer Empfänger weiteres Vergleichsmittel

Claims

Ansprüche
1. Computersystem (101 ), mit:
- zumindest zwei COTS-Prozessorkemen (103, 105, 107) und
- einer mit den zumindest zwei COTS-Prozessorkemen (103, 105, 107)
verbundene Auswerteeinrichtung (1 13) zum Auswerten mittels der zumindest zwei COTS-Prozessorkerne (103, 105, 107) ausgegebenen
Ausgangssignalen, wobei die Auswerteeinrichtung (1 13) Vergleichsmittel (1 15, 1 17, 1 19) zum paarweise miteinander Vergleichen der jeweiligen ausgegebenen Ausgangssignale aufweist, wobei die Vergleichsmittel (115, 1 17, 1 19) femer konfiguriert sind, ein dem jeweiligen Vergleich der
Ausgangssignale entsprechendes Vergleichssignal auszugeben.
2. Computersystem (101) nach Anspruch 1 , wobei eine mit den
Vergleichsmitteln (1 15, 1 17, 1 19) verbundene Auswahleinrichtung (121 ) gebildet ist, welche derart konfiguriert ist, abhängig von den
Vergleichssignalen ein Ausgangssignal zur weiteren Verarbeitung
auszuwählen.
3. Computersystem (101 ) nach Anspruch 2, wobei die Auswahleinrichtung (121 ) und die Auswerteeinrichtung (1 13) in einer Logikschaltungseinrichtung (1 1 1 ) integriert sind.
4. Computersystem (101 ) nach einem der vorherigen Ansprüche, wobei die COTS-Prozessorkerne (103, 105, 107) jeweils als ein logischer oder als ein physikalischer COTS-Prozessorkern gebildet sind.
5. Computersystem (101) nach einem der vorherigen Ansprüche, wobei
zumindest einer der COTS-Prozessorkerne (103, 105, 107) verschieden von dem anderen COTS-Prozessorkemen (103, 105, 107) ist.
6. Computersystem (101 ) nach einem der vorherigen Ansprüche, wobei ein Netzwerk-auf-einem-Chip (123) mit den COTS-Prozessorkemen (103, 105 und 107) verbunden ist.
7. Verfahren zum Vergleichen von mittels zumindest zweier COTS- Prozessorkerne (103, 105, 107) ausgegebenen Ausgangssignalen
umfassend die folgenden Schritte:
- Übermitteln der Ausgangssignale an eine Vergleichsmittel (1 15, 1 17, 1 19) aufweisende Auswerteeinrichtung (1 13),
- paarweises miteinander Vergleichen der jeweiligen übermittelten
Ausgangssignale mittels der Vergleichsmittel (1 15, 1 17, 1 19),
- Ausgeben eines dem jeweiligen Vergleich der Ausgangssignale
entsprechendes Vergleichssignal.
8. Verfahren nach Anspruch 7 wobei die Vergleichssignale an eine mit den Vergleichsmitteln (1 15, 1 17, 119) verbundene Auswahleinrichtung (121 ) übermittelt werden und wobei die Auswahleinrichtung (121 ) abhängig von den übermittelten Vergleichssignalen ein Ausgangssignal zur weiteren Verarbeitung auswählt.
9. Verfahren nach Anspruch 7 oder 8, wobei zwei Ausgangssignale als gleich klassifiziert werden, wenn jeweilige Parameter der Ausgangssignale innerhalb eines vorbestimmten Fehlertoleranzbereichs liegen.
10. Computerprogramm mit Programmcode zur Ausführung des Verfahrens nach einem der Ansprüche 7 bis 9, wenn das Computerprogramm auf einem Computer ausgeführt wird.
PCT/DE2011/000268 2010-03-30 2011-03-16 Computersystem und verfahren zum vergleichen von ausgangssignalen WO2011120490A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
AU2011235381A AU2011235381B2 (en) 2010-03-30 2011-03-16 Computer system and method for comparing output signals
US13/638,438 US9612922B2 (en) 2010-03-30 2011-03-16 Computer system and method for comparing output signals
EP11717465A EP2553578A1 (de) 2010-03-30 2011-03-16 Computersystem und verfahren zum vergleichen von ausgangssignalen

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102010013349A DE102010013349B4 (de) 2010-03-30 2010-03-30 Computersystem und Verfahren zum Vergleichen von Ausgangssignalen
DE102010013349.3 2010-03-30

Publications (1)

Publication Number Publication Date
WO2011120490A1 true WO2011120490A1 (de) 2011-10-06

Family

ID=44116175

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2011/000268 WO2011120490A1 (de) 2010-03-30 2011-03-16 Computersystem und verfahren zum vergleichen von ausgangssignalen

Country Status (5)

Country Link
US (1) US9612922B2 (de)
EP (1) EP2553578A1 (de)
AU (1) AU2011235381B2 (de)
DE (1) DE102010013349B4 (de)
WO (1) WO2011120490A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2587378A1 (de) * 2011-10-27 2013-05-01 Diehl BGT Defence GmbH & Co.KG Verfahren zum Betrieb einer Steuereinrichtung zum wenigstens teilweise autonomen Betrieb eines Fahrzeugs und Steuereinrichtung zur Durchführung solch eines Verfahrens
EP2787401A1 (de) * 2013-04-04 2014-10-08 ABB Technology AG Verfahren und Vorrichtung zur Steuerung einer physikalischen Einheit in einem Automatisierungssystem

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012212304A1 (de) * 2012-07-13 2014-01-16 Siemens Aktiengesellschaft Anordnung mit einem Mikroprozessorsystem
US8714494B2 (en) * 2012-09-10 2014-05-06 Siemens Industry, Inc. Railway train critical systems having control system redundancy and asymmetric communications capability
US9233698B2 (en) * 2012-09-10 2016-01-12 Siemens Industry, Inc. Railway safety critical systems with task redundancy and asymmetric communications capability
DE102013202253A1 (de) * 2013-02-12 2014-08-14 Paravan Gmbh Schaltung zur Steuerung eines Beschleunigungs-, Brems- und Lenksystems eines Fahrzeugs
CN106462482B (zh) * 2014-05-08 2020-04-14 高准公司 用于执行故障安全计算的方法
DE102015003194A1 (de) 2015-03-12 2016-09-15 Infineon Technologies Ag Verfahren und Vorrichtung zum Handhaben von sicherheitskritischen Fehlern
US9734006B2 (en) * 2015-09-18 2017-08-15 Nxp Usa, Inc. System and method for error detection in a critical system
WO2017155598A2 (en) 2016-01-05 2017-09-14 Philip Koopman A safety architecture for autonomous vehicles
DE102017210156B4 (de) * 2017-06-19 2021-07-22 Zf Friedrichshafen Ag Vorrichtung und Verfahren zum Ansteuern eines Fahrzeugmoduls
JP2020145356A (ja) * 2019-03-07 2020-09-10 株式会社東芝 集積回路装置
JP2021020648A (ja) * 2019-07-30 2021-02-18 マツダ株式会社 車両制御システム
CN112667450B (zh) * 2021-01-07 2022-05-06 浙江大学 一种可动态配置的多核处理器容错系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0496506A2 (de) * 1991-01-25 1992-07-29 Hitachi, Ltd. Verarbeitungseinheit für einen Rechner und Rechnersystem mit einer solchen Einheit
US5577199A (en) * 1993-06-01 1996-11-19 Mitsubishi Denki Kabushiki Kaisha Majority circuit, a controller and a majority LSI
US20090031115A1 (en) * 2007-07-24 2009-01-29 Pruiett Jay R Method for high integrity and high availability computer processing
WO2009090502A1 (en) * 2008-01-16 2009-07-23 Freescale Semiconductor, Inc. Processor based system having ecc based check and access validation information means

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3215177A1 (de) * 1982-04-23 1983-10-27 Hartmann & Braun Ag, 6000 Frankfurt Ueberwachungssystem fuer eine oder mehrere, gleichartig aufgebaute prozessstationen
US5931959A (en) * 1997-05-21 1999-08-03 The United States Of America As Represented By The Secretary Of The Air Force Dynamically reconfigurable FPGA apparatus and method for multiprocessing and fault tolerance
US7908520B2 (en) * 2000-06-23 2011-03-15 A. Avizienis And Associates, Inc. Self-testing and -repairing fault-tolerance infrastructure for computer systems
US7272681B2 (en) * 2005-08-05 2007-09-18 Raytheon Company System having parallel data processors which generate redundant effector date to detect errors

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0496506A2 (de) * 1991-01-25 1992-07-29 Hitachi, Ltd. Verarbeitungseinheit für einen Rechner und Rechnersystem mit einer solchen Einheit
US5577199A (en) * 1993-06-01 1996-11-19 Mitsubishi Denki Kabushiki Kaisha Majority circuit, a controller and a majority LSI
US20090031115A1 (en) * 2007-07-24 2009-01-29 Pruiett Jay R Method for high integrity and high availability computer processing
WO2009090502A1 (en) * 2008-01-16 2009-07-23 Freescale Semiconductor, Inc. Processor based system having ecc based check and access validation information means

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2587378A1 (de) * 2011-10-27 2013-05-01 Diehl BGT Defence GmbH & Co.KG Verfahren zum Betrieb einer Steuereinrichtung zum wenigstens teilweise autonomen Betrieb eines Fahrzeugs und Steuereinrichtung zur Durchführung solch eines Verfahrens
EP2787401A1 (de) * 2013-04-04 2014-10-08 ABB Technology AG Verfahren und Vorrichtung zur Steuerung einer physikalischen Einheit in einem Automatisierungssystem
WO2014161660A1 (en) * 2013-04-04 2014-10-09 Abb Technology Ag Method and apparatus for controlling a physical unit in an automation system
US10114356B2 (en) 2013-04-04 2018-10-30 Abb Schweiz Ag Method and apparatus for controlling a physical unit in an automation system

Also Published As

Publication number Publication date
DE102010013349A1 (de) 2011-10-06
AU2011235381B2 (en) 2016-01-14
US9612922B2 (en) 2017-04-04
DE102010013349B4 (de) 2013-06-13
US20130060526A1 (en) 2013-03-07
EP2553578A1 (de) 2013-02-06
AU2011235381A1 (en) 2012-09-27

Similar Documents

Publication Publication Date Title
DE102010013349B4 (de) Computersystem und Verfahren zum Vergleichen von Ausgangssignalen
DE112018002176B4 (de) Anormalitätsbestimmungsvorrichtung, Anormalitätsbestimmungsverfahren und Anormalitätsbestimmungsprogramm
DE102018203374A1 (de) Fehlerbaumanalyse für technische Systeme
DE102017201032A1 (de) Redundante Prozessorarchitektur
DE102007006612B4 (de) Verfahren, Endgerät und Computerprogrammprodukt zum Erhöhen der Verfügbarkeit eines globalen Navigationssystems
EP1810139B1 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
DE102008004205A1 (de) Schaltungsanordnung und Verfahren zur Fehlerbehandlung in Echtzeitsystemen
WO2018033344A1 (de) Verfahren und vorrichtung zur redundanten datenverarbeitung
DE102005054587A1 (de) Programmgesteuerte Einheit und Verfahren zum Betreiben derselbigen
DE102019131865A1 (de) Verfahren und vorrichtung zur eigendiagnose der ram-fehlererkennungslogik eines antriebsstrangcontrollers
EP2745205B1 (de) Verfahren zum betreiben eines steuerungsnetzwerk und steuerungsnetzwerk
DE102018112584A1 (de) Konfigurierbare Sensorvorrichtung und Verfahren zur Überwachung ihrer Konfiguration
DE102011007467A1 (de) Mehrkernige integrierte Mikroprozessorschaltung mit Prüfeinrichtung, Prüfverfahren und Verwendung
DE10302456A1 (de) Vorrichtung für sicherheitskritische Anwendungen und sichere Elektronik-Architektur
DE102008003450B4 (de) Digitalschaltungen und Verfahren zum Testen einer Digitalschaltung
EP3399425B1 (de) Verfahren zur erkennung einer verdrahtungstopologie
EP1812853B1 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
EP2902905A1 (de) Verfahren zur Überprüfung der Abarbeitung von Software
DE102009015683A1 (de) Sicherheitssystem zur Sicherung einer fehlersicheren Steuerung elektrischer Anlagen und Sicherheitssteuerung damit
DE102017201621A1 (de) Integrierte Schaltung für ein Steuergerät eines Kraftfahrzeugs, Verfahren zur Herstellung einer integrierten Schaltung
DE3731097A1 (de) Schaltungsanordnung zur ueberwachung einer einrichtung mit zwei mikroprozessoren, insbesondere einer kraftfahrzeug-elektronik
DE112019007286T5 (de) Fahrzeuginterne steuerungsvorrichtung und fahrzeuginternes steuerungssystem
WO2014019722A1 (de) Vorrichtung und verfahren zur realisierung eines steuersystems mit hoher verfügbarkeit und/oder integrität
WO2017153411A1 (de) Verfahren zum betreiben eines steuergeräts für ein kraftfahrzeug
DE19805819B4 (de) Verfahren zur Überwachung von integrierten Schaltkreisen

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: 11717465

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011717465

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2011235381

Country of ref document: AU

WWE Wipo information: entry into national phase

Ref document number: 7811/DELNP/2012

Country of ref document: IN

ENP Entry into the national phase

Ref document number: 2011235381

Country of ref document: AU

Date of ref document: 20110316

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 13638438

Country of ref document: US