DE102005037243A1 - Method for mode switching and signal comparison in computer system has two processing units whereby synchronization means are provided which associates rate information with predeterminable data according to processing unit - Google Patents
Method for mode switching and signal comparison in computer system has two processing units whereby synchronization means are provided which associates rate information with predeterminable data according to processing unit Download PDFInfo
- Publication number
- DE102005037243A1 DE102005037243A1 DE200510037243 DE102005037243A DE102005037243A1 DE 102005037243 A1 DE102005037243 A1 DE 102005037243A1 DE 200510037243 DE200510037243 DE 200510037243 DE 102005037243 A DE102005037243 A DE 102005037243A DE 102005037243 A1 DE102005037243 A1 DE 102005037243A1
- Authority
- DE
- Germany
- Prior art keywords
- comparison
- data
- signals
- processing units
- switching
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- G06F11/1641—Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/1675—Temporal synchronisation or re-synchronisation of redundant processing components
- G06F11/1679—Temporal synchronisation or re-synchronisation of redundant processing components at clock signal level
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
Ein Verfahren zur Erkennung von Fehlern in einem Vergleichsmodus ist in Wo 01/46806 A1 beschrieben. Dabei werden die Daten in einem Verarbeitungseinheit mit zwei Verarbeitungseinheiten ALUs parallel verarbeitet und verglichen. Bei einem Fehler (Soft-Error, transienter Fehler) arbeiten dort beide ALUs solange unabhängig voneinander, bis die fehlerhaften Daten entfernt sind und eine erneute (teilweise wiederholte) redundante Verarbeitung vorgenommen werden kann. Das setzt voraus, dass beide ALUs synchron zueinander arbeiten und die Ergebnisse taktgenau verglichen werden können.One A method for detecting errors in a comparison mode is described in Wo 01/46806 A1. The data is stored in a processing unit processed and compared in parallel with two processing units ALUs. In case of an error (soft error, transient error) both work there ALUs as long as independent from each other until the faulty data is removed and a renewed (partially repeated) redundant processing can be performed. The requires that both ALUs work in sync with each other and the Results can be compared exactly to the clock.
Im Stand der Technik sind Verfahren bekannt, wie zwischen einem Vergleichsmodus zur Fehlererkennung, in dem Aufgaben redundant abgearbeitet werden, und einem Performanzmodus zur Erzielung einer höheren Leistungsfähigkeit umgeschaltet werden kann. Voraussetzung ist hier, dass die Verarbeitungseinheiten für den Vergleichsmodus gegenseitig synchronisiert werden. Dazu ist es notwendig, dass beide Verarbeitungseinheiten angehalten werden können und taktgenau synchron arbeiten, um die Ergebnisdaten beim Schreiben in den Speicher miteinander vergleichen zu können. Dazu sind Eingriffe in die Hardware notwendig, einzelne Lösungen werden vorgeschlagen.in the The prior art discloses methods such as between a comparison mode for error detection, in which tasks are processed redundantly, and a performance mode for better performance can be switched. Prerequisite here is that the processing units for the Comparison mode are synchronized each other. For this it is necessary that both processing units can be stopped and clock-synchronously work to the result data when writing to be able to compare with each other in the memory. These are interventions in the hardware necessary, individual solutions are suggested.
In
der Patentschrift
Aus der Flugzeugindustrie sind Votingsysteme bekannt, die Inputs von Standardrechnern verwenden können und diese durch einen Mehrheitsentscheid sicher verarbeiten und damit sicherheitsrelevante Aktionen auslösen können. Ein System, das inter-Verarbeitungseinheit und inter-Control-Unit Kommunikation miteinander kombiniert, ist das FME-System, bei dem durch einen hohen Grad von Redundanz auch im Falle von einzelnen oder gar mehreren Fehlern das System noch arbeitsfähig bleibt und von der DASA für die Raumfahrt entwickelt wurde (Urban, et al: A survivable avioncs system for space applications, Int. Symposium on Fault-tolerant Computing, FTCS-28 (1998), pp.372-381). Dieses System kann sogar byzantinische Fehler (d.h. besonders bösartige Fehler, bei denen nicht alle Komponenten die gleiche Informationen erhalten, sondern von einem Intriganten sogar „vorsätzlich" unterschiedlich falsche Informationen an verschiedene Komponenten verteilt werden) tolerieren. Ein solches System ist wegen des hohen Aufwandes kommerziell anwendbar für besonders kritische Systeme, die in sehr geringen Stückzahlen gefertigt werden. Eine kostengünstige Lösung, die in großen Stückzahlen herstellbar ist und zusätzlich noch Umschaltmöglichkeiten besitzt, ist nicht bekannt. Es besteht deshalb die Aufgabe, eine Umschalt- und Vergleichseinheit zu schaffen, die es erlaubt, den Betriebsmodus von zwei oder mehreren Verarbeitungseinheiten umzuschalten und dabei ohne Eingriffe in die Struktur dieser Verarbeitungseinheiten auskommt und auch keinen zusätzlichen Signale zu diesem Zweck benötigt. Dabei soll es möglich sein, verschiedene digitale oder analoge Signale von verschiedenen Verarbeitungseinheiten in einem Vergleichmodus gegenseitig zu vergleichen. Dabei soll dieser Vergleich unter Umständen auch dann möglich sein, wenn die Verarbeitungseinheiten mit verschiedenen Taktsignalen betrieben werden und nicht synchron zueinander arbeiten. Darüberhinaus ist es Aufgabe der Erfindung, Mittel und Verfahren zur Verfügung zu stellen, durch die der vergleich auch mit verschiedenen Takten durchgeführt werden kann.Out In the aviation industry, voting systems are known that use inputs from Can use standard computers and handle them safely by a majority vote and so that safety-relevant actions can be triggered. A system, the inter-processing unit and inter-control unit communication is combined with each other the FME system, where by a high degree of redundancy too in case of single or even multiple errors the system still able to work stays and from the DASA for Space has been developed (Urban, et al: A survivable avioncs system for space applications, Int. Symposium on Fault-tolerant Computing, FTCS-28 (1998), pp.372-381). This system can even Byzantine errors (that is, particularly malicious errors that do not all components get the same information, but from an intriguer even "deliberately" different incorrect information is distributed to different components) tolerate. Such a system is commercial because of the high cost applicable for particularly critical systems, in very small numbers be made. A cost effective solution that in big numbers is manufacturable and in addition still switching options owns, is not known. It is therefore the object of a switchover and compare unit that allows the mode of operation to switch from two or more processing units and without Interferes with the structure of these processing units and no additional signals needed for this purpose. It should be possible be different digital or analog signals from different Compare processing units in a comparison mode each other. there This comparison should possibly also possible be if the processing units with different clock signals operate and do not work in sync with each other. Furthermore It is an object of the invention to provide means and methods available through which the comparison can also be performed with different measures.
Vorteileadvantages
Vorteilhafterweise verwendet man ein Verfahren zur Umschaltung und zum Datenvergleich bei einem Rechnersystem mit wenigstens zwei Verarbeitungseinheiten, welche jeweils in einem vorgegebenen Takt Daten verarbeiten, wobei Umschaltmittel vorgesehen sind und zwischen wenigstens zwei Betriebsmodi umgeschaltet wird, wobei Vergleichsmittel vorgesehen sind und ein erster Betriebsmodus einem Vergleichsmodus und ein zweiter Betriebsmodus einem Performanzmodus entspricht, dadurch gekennzeichnet, dass Synchronisationsmittel vorgesehen sind, welche den vorgebbaren Daten eine Taktinformation abhängig von einer Verarbeitungseinheit zuordnen und wenigstens die Vergleichsmittel diese Taktinformation bei den entsprechenden Daten berücksichtigen.advantageously, One uses a method for switching and for data comparison in a computer system having at least two processing units, which each process data in a predetermined clock, wherein Switching means are provided and between at least two operating modes is switched, wherein comparison means are provided and a first operating mode a comparison mode and a second operating mode corresponds to a performance mode, characterized in that synchronization means are provided, which the specifiable data is a clock information dependent from a processing unit and at least the comparison means consider this timing information in the corresponding data.
Vorteilhafterweise verwendet man ein Verfahren, bei dem die Synchronisationsmittel wenigstens Speichermittel enthalten und in den Speichermitteln vorgebbare Daten mit diesen zugeordneter Taktinformation abgespeichert werden.advantageously, One uses a method in which the synchronization means at least storage means and predeterminable in the storage means Data are stored with these associated clock information.
Vorteilhafterweise verwendet man ein Verfahren, bei dem eine Weiterverarbeitung von vorgebbaren Daten abhängig von der diesen Daten zugeordneten Taktinformation erfolgt.advantageously, One uses a method in which a further processing of specifiable data from the clock information associated with this data takes place.
Vorteilhafterweise verwendet man ein Verfahren, bei dem eine Bereitstellung der vorgebbaren Daten in der diesen Daten zugeordneten Taktinformation erfolgt.advantageously, One uses a method in which a provision of the specifiable data takes place in the clock information associated with this data.
Vorteilhafterweise verwendet man ein Verfahren, bei dem die Daten vor dem Eingang in die Vergleichsmittel gepuffert werden.advantageously, One uses a method in which the data before the input in the comparison means are buffered.
Vorteilhafterweise verwendet man ein Verfahren, bei dem eine Handshake Schnittstelle derart vorgesehen ist, dass ein Datenempfang quittiert wird.advantageously, One uses a method in which a handshake interface is provided such that a data receipt is acknowledged.
Vorteilhafterweise verwendet man ein Verfahren, bei dem eine Vorgabe, dass das nächste Ausgangsdatum verglichen werden soll durch ein Vergleichssignal erfolgt.advantageously, One uses a method in which a default is that the next starting date to be compared is done by a comparison signal.
Vorteilhafterweise verwendet man ein Verfahren, bei dem einem Datum das verglichen werden soll eine Kennung zugeordnet wird, durch die der Vergleich ausgelöst wird.advantageously, One uses a method in which a date is compared is to be assigned an identifier by which the comparison triggered becomes.
Vorteilhafterweise verwendet man eine Vorrichtung zur Umschaltung und zum Datenvergleich bei einem Rechnersystem mit wenigstens zwei Verarbeitungseinheiten, welche jeweils in einem vorgegebenen Takt Daten verarbeiten, wobei Umschaltmittel enthalten sind und zwischen wenigstens zwei Betriebsmodi umgeschaltet wird, wobei Vergleichsmittel enthalten sind und ein erster Betriebsmodus einem Vergleichsmodus und ein zweiter Betriebsmodus einem Performanzmodus entspricht, dadurch gekennzeichnet, dass Synchronisationsmittel enthalten sind, welche derart ausgestaltet sind, dass den vorgebbaren Daten eine Taktinformation abhängig von einer Verarbeitungseinheit zugeordnet wird und die Vergleichsmittel derart ausgestaltet sind, dass diese die Taktinformation bei den entsprechenden Daten berücksichtigen.advantageously, one uses a device for switching and for data comparison a computer system with at least two processing units, which each process data in a predetermined clock, wherein Switching means are included and between at least two modes of operation is switched, wherein comparison means are included and a first operating mode a comparison mode and a second operating mode corresponds to a performance mode, characterized in that synchronization means are included, which are designed such that the specifiable Data depends on a clock information is assigned by a processing unit and the comparison means are designed such that this the clock information at the take appropriate data into account.
Vorteilhafterweise verwendet man eine Vorrichtung, bei der die Synchronisationsmittel wenigstens Speichermittel enthalten und diese derart ausgestaltet sind, dass in den Speichermitteln vorgebbare Daten mit diesen zugeordneter Taktinformation abgespeichert werden.advantageously, One uses a device in which the synchronization means at least contain storage means and designed this way are that in the storage means predeterminable data associated with these Clock information is stored.
Vorteilhafterweise verwendet man eine Vorrichtung, bei der es sich bei den Speichermitteln um wenigstens einen FIFO Speicher handelt.advantageously, one uses a device which is the storage means is at least one FIFO memory.
Vorteilhafterweise verwendet man eine Vorrichtung, bei der jeder Verarbeitungseinheit ein Synchronisationsmittel zugeordnet ist.advantageously, one uses a device in which each processing unit a synchronization means is assigned.
Vorteilhafterweise verwendet man eine Vorrichtung, bei der die Umschaltmittel und die Vergleichsmittel als Umschalt- und Vergleichseinheit ausgebildet und einander zugeordnet sind.advantageously, one uses a device in which the switching means and the Comparative means designed as a switching and comparison unit and associated with each other.
Vorteilhafterweise verwendet man eine Vorrichtung, bei der wenigstens ein Einganspufferspeicher vorgesehen ist, welcher derart ausgebildet ist, dass die Daten vor dem Eingang in die Vergleichsmittel gepuffert werden.advantageously, one uses a device in which at least one input buffer is provided, which is designed such that the data before buffered to the input in the comparison means.
Vorteilhafterweise verwendet man eine Vorrichtung, bei der eine Handshake Schnittstelle derart vorgesehen ist, dass ein Datenempfang quittiert wird.advantageously, One uses a device in which a handshake interface is provided such that a data receipt is acknowledged.
Weitere Vorteile und vorteilhafte Ausgestaltungen ergeben sich aus den Merkmalen der Ansprüche sowie der Beschreibung.Further Advantages and advantageous embodiments will be apparent from the features the claims as well as the description.
Figurencharacters
Beschreibung der AusführungsbeispieleDescription of the embodiments
Eine Ausführungseinheit oder Verarbeitungseinheit kann im Folgenden sowohl einen Prozessor/Core/CPU, als auch eine FPU (Floating Point Unit), DSP (Digitaler Signalprozessor), Coprozessor oder ALU (Arithmetic logical Unit) bezeichnen.A execution unit or processing unit can hereinafter include both a processor / core / CPU, as well as an FPU (Floating Point Unit), DSP (Digital Signal Processor), Coprocessor or ALU (arithmetic logical unit).
Es wird ein System von zwei oder mehr Verarbeitungseinheiten betrachtet. Grundsätzlich gibt es in sicherheitsrelevanten Systemen die Möglichkeit, solche Ressourcen entweder zur Erhöhung der Leistungsfähigkeit zu verwenden, in dem man die verschiedenen Verarbeitungseinheiten möglichst mit verschiedenen Aufgaben versorgt. Alternativ kann man einige der Ressourcen auch redundant zueinander verwenden, indem man sie mit der gleichen Aufgabe versorgt und bei ungleichem Resultat auf einen Fehler erkennt.It Consider a system of two or more processing units. in principle In safety-relevant systems there is the possibility of such resources either to increase the efficiency to use in which one the different processing units preferably provided with different tasks. Alternatively you can do some The resources also use redundant to each other by using them supplied with the same task and uneven result detects an error.
Je nachdem, wie viele Verarbeitungseinheiten es gibt, sind mehrere Modi denkbar. In einem Zweier-System existieren die beiden Modi „Vergleich" und „Performanz", wie oben beschrieben. In einem Dreier-System kann man neben dem reinen Performanz-Modus, in dem alle drei Verarbeitungseinheiten parallel arbeiten, und dem reinen Vergleichsmodus, in dem alle drei Verarbeitungseinheiten redundant rechnen und verglichen wird, auch einen 2aus3-Voting Modus realisieren, in dem alle drei Verarbeitungseinheiten redundant rechnen und eine Majoritätsauswahl vorgenommen wird. Weiter kann man auch einen gemischten Modus realisieren, bei dem z.B. zwei der Verarbeitungseinheiten redundant zueinander rechnen und die Ergebnisse verglichen werden, während die dritte Verarbeitungseinheit eine andere, parallele Aufgabe bearbeitet. In einem vier- oder mehr-Verarbeitungseinheiten System sind offensichtlich noch weitere Kombinationen denkbar.ever There are several, according to how many processing units there are Modes conceivable. In a two-way system, the two modes "comparison" and "performance" exist as described above. In a threefold system, in addition to the pure performance mode, in which all three processing units work in parallel, and the pure comparison mode, in which all three processing units redundant and is compared, also a 2aus3 voting mode in which all three processing units calculate redundantly and a majority vote is made. Next you can also realize a mixed mode, at the e.g. two of the processing units redundant to each other calculate and compare the results while the third processing unit another, parallel task edited. In a four or more processing units System obviously more combinations are conceivable.
Die zu lösende Aufgabe ist es, dass die zur Verfügung stehenden Verarbeitungseinheiten in einem System im Betrieb variabel eingesetzt werden können, ohne einen Eingriff in die bestehende Struktur dieser Verarbeitungseinheiten (z.B. zu Synchronisationszwecken) notwendig zu machen. In einer speziellen Ausführung soll jede Verarbeitungseinheit mit einem eigenen Takt arbeiten können, d.h. die Abarbeitung gleicher Aufgaben zum Zwecke des Vergleichs auch asynchron zueinander abarbeiten können.The to be solved Task is that the available processing units can be used variably in a system during operation, without an interference with the existing structure of these processing units (for synchronization purposes, for example). In a special design Each processing unit should be able to operate with its own clock, i. the execution of identical tasks for the purpose of comparison also can work asynchronously to each other.
Diese Aufgabe wird dadurch gelöst, dass ein universelles, breit einsetzbares IP geschaffen wird, das eine Umschaltung der Betriebsmodi (z.B. Vergleichs-, Performanz- oder Voting Modus) zu beliebigen Zeitpunkten ohne vorheriges Abschalten der Verarbeitungseinheiten ermöglicht und den Vergleich oder das Voting der zueinander möglicherweise asynchronen Datenströme managt. Dieses IP kann als Chip ausgeführt werden, oder es kann zusammen mit einer oder mehreren Verarbeitungseinheiten auf einem Chip integriert werden. Weiter ist es nicht Voraussetzung, dass dieser Chip nur aus einem Stück Silizium besteht, es ist durchaus auch möglich, dass dieses aus getrennten Bausteinen realisiert wird.These Task is solved by that a universal, widely deployable IP is created that switching modes of operation (e.g., comparison, performance, or voting mode) at any time without prior shutdown allows the processing units and the comparison or voting of each other possibly asynchronous streams manages. This IP can be run as a chip, or it can work together with integrated one or more processing units on a chip become. Further, it is not a requirement that this chip only from a piece of silicon exists, it is also possible that this is realized from separate components.
Um
die Synchronität
zwischen unterschiedlichen Verarbeitungseinheiten zu gewährleisten,
sind Signale notwendig, die eine ständig weitergehende Programmabarbeitung
einzelner Verarbeitungseinheiten verhindern. Dazu ist üblicherweise
ein WAIT-Signal vorgesehen. Falls eine Ausführungseinheit nicht über ein
Wait-Signal verfügt,
kann sie auch über
einen Interrupt synchronisiert werden. Dazu wird das Synchronisationssignal
(z.B. M140 in
Dieser Vorgang wird solange fortgesetzt, bis die Synchronität hergestellt wurde (z.B. liefern andere Verarbeitungseinheiten die erwarteten Vergleichsdaten ab). Eine genaue Taktsynchronität und insbesondere Phasengleichheit mit anderen Verarbeitungseinheiten kann jedoch mit diesem Verfahren nur bedingt garantiert werden. Es ist deshalb zu empfehlen, dass bei einer Benutzung des Interrupt-Signals zur Synchronisation die zu vergleichenden Daten in der UVE zwischengespeichert werden, bevor sie verglichen werden.This Operation will continue until synchronicity is established (For example, other processing units provide the expected Comparative data). Exact clock synchronization and in particular phase equality However, with other processing units, this process can be used only conditionally guaranteed. It is therefore recommended that when using the interrupt signal for synchronization the data to be compared is stored in the UVE before they are compared.
Der Vorteil der Erfindung ist, dass beliebige kommerziell verfügbare Standard-Strukturen eingesetzt werden können, weil keine zusätzlichen Signale benötigt werden (keine Eingriffe in die Hardwarestruktur) und beliebige Ausgangssignale dieser Komponenten überwacht werden können, die beispielsweise direkt zur Ansteuerung von Aktoren verwendet werden. Das schließt die Überprüfung von Wandlerstrukturen wie DACs und PWMs mit ein, die bisher nach dem Stand der Technik so nicht direkt durch einen Vergleich prüfbar sind.The advantage of the invention is that any commercially available standard structures can be used because no additional signals are needed (no interference with the hardware structure) and any output signals of these components can be monitored, which are used for example directly to control actuators. This includes the verification of transducer structures such as DACs and PWMs, which have not been directly testable by comparison so far in the prior art.
Sofern die Überprüfung für einzelne Aufgaben oder SW-Tasks nicht benötigt wird, ist aber auch eine Umschaltung in einen Performanzmodus möglich, in dem unterschiedliche Tasks auf verschiedene Verarbeitungseinheiten verteilt werden.Provided the review for individual Tasks or SW tasks not needed is, but is also a switch to a performance mode possible, in different tasks to different processing units be distributed.
Ein weiterer Vorteil ist es, dass in einem Vergleichs- oder Votingmodus nicht alle Daten verglichen werden müssen. Nur die zu vergleichenden oder zu votenden Daten werden in der Umschalt- und Vergleichseinheit zueinander synchronisiert. Die Auswahl dieser Daten ist durch das gezielte Ansprechen der Umschalt- und Vergleichseinheit variabel (programmierbar) und kann an die jeweilige Verarbeitungseinheitarchitektur sowie an die Anwendung angepasst werden. Damit ist auch die Verwendung von diversitären μC oder Softwareteilen leicht möglich, da nur Ergebnisse, die sinnvollerweise verglichen werden können, tatsächlich auch verglichen werden.One Another advantage is that in a comparison or voting mode not all data needs to be compared. Only those to be compared or Data to be selected is in the switching and comparison unit synchronized with each other. The selection of this data is through the Targeted response of the switching and comparison unit variable (programmable) and can be adapted to the respective processing unit architecture as well adapted to the application. This is also the use of diversified μC or software parts easily possible, because only results that can reasonably be compared actually do be compared.
Weiter kann jeder Zugriff zu einem (z.B. externen) Speicher damit überwacht werden oder auch nur die Ansteuerung externer I/O Module. Interne Signale können über die softwaregesteuerte zusätzliche Ausgabe zum Umschaltmodul auf dem externen Daten- und/oder Adressbus geprüft werden.Further For example, any access to a (e.g., external) memory can be monitored or only the control of external I / O modules. internal Signals can over the software-controlled additional Output to the switching module on the external data and / or address bus checked become.
Alle Steuersignale für die Vergleichsoperationen werden in der vorzugsweise programmierbaren Umschalt- und Voting-Einheit erzeugt und der Vergleich findet auch dort statt. Die Verarbeitungseinheiten (z.B. Prozessoren), deren Ausgaben miteinander verglichen werden sollen, können das gleiche Programm benutzen, ein dupliziertes Programm (was zusätzlich die Erkennung von Fehlern beim Speicherzugriff ermöglicht) oder auch ein diversifiziertes Programm zur Erkennung von Software-Fehlern. Dabei müssen nicht alle von den Verarbeitungseinheiten bereitgestellten Signale miteinander verglichen werden, sondern es ist auch möglich, mittels einer Kennung (Adress- oder Steuersignale) bestimmte Signale für den Vergleich vorzusehen oder auch nicht. Diese Kennung wird in der Umschalt- und Vergleicheinrichtung ausgewertet und damit der Vergleich gesteuert.All Control signals for the comparison operations are performed in the preferably programmable switching mode and Voting unit generated and the comparison also takes place there. The processing units (e.g., processors) whose outputs are compared to be able to use the same program, a duplicate program (which in addition the Detection of memory access errors) or a diversified program to detect software errors. Not all of the processing units need doing this provided signals are compared with each other, but it is also possible, by means of an identifier (address or control signals) certain signals for the Provide comparison or not. This identifier is in the Switching and comparison device evaluated and thus the comparison controlled.
Separate Timer überwachen Abweichungen im Zeitverhalten über ein vorgebbares Limit hinaus. Einige oder auch alle Module der Umschalt- und Vergleichseinheit können auf einem Chip integriert sein, auf einem gemeinsamen Board oder auch räumlich getrennt untergebracht sein. Im letzteren Fall werden die Daten und Steuersignale über geeignete Bussysteme miteinander ausgetauscht. Register vor Ort werden dann über das Bussystem beschrieben und steuern die Vorgänge mittels der darin abgespeicherten Daten und/oder Adressen/Steuersignale.separate Monitor timer Deviations in the time behavior over a definable limit. Some or all modules of the switching and comparison unit can be integrated on a chip, on a common board or also spatially separated be housed. In the latter case, the data and control signals are transmitted via appropriate Bus systems exchanged with each other. Register locally will then be over Bus system described and control the operations by means of the stored therein Data and / or addresses / control signals.
In
Die Umschalteinheit enthält mindestens ein Steuerregister B15, das mindestens ein Speicherelement für ein binäres Zeichen (Bit) B16 besitzt, das den Modus der Vergleichseinheit umschaltet. B16 kann mindestens die beiden Werte 0 und 1 annehmen und kann sowohl durch die Signale B20 oder B21 der Verarbeitungseinheiten oder durch interne Prozesse der Umschalteinheit gesetzt oder rückgesetzt werden.The Switching unit contains at least one control register B15, the at least one memory element for a binary Has character (bit) B16, which switches the mode of the comparison unit. B16 can take at least the two values 0 and 1 and can both by the signals B20 or B21 of the processing units or by internal processes of the changeover unit are set or reset become.
Ist B16 auf den ersten Wert gesetzt, so arbeitet die Umschalteinheit im Vergleichsmodus. In diesem Modus werden alle ankommenden Datensignale aus B20 mit den Datensignalen aus B21 verglichen, sofern bestimmte vorgebbare Vergleichs-Bedingungen der Steuer- und/oder Adresssignale aus den Signalen B20 und B21 erfüllt sind, die die Gültigkeit der Daten und den vorgesehenen Vergleich für diese Daten signalisieren.is B16 set to the first value, the switching unit operates in comparison mode. In this mode, all incoming data signals will turn off B20 compared with the data signals from B21, provided that certain specifiable Comparison conditions of the control and / or address signals from the Signals B20 and B21 met are the validity signal the data and the intended comparison for that data.
Sind diese Vergleichs-Bedingungen an beiden Signalen B20 und B21 gleichzeitig erfüllt, so werden die Daten aus diesen Signalen unmittelbar verglichen und bei Ungleichheit wird ein Fehlersignal B17 gesetzt. Ist nur die Vergleichs-Bedingung aus entweder den Signalen B20 bzw. B21 erfüllt, so wird das entsprechende Synchronisationssignal B40 bzw. B41 gesetzt. Dieses Signal bewirkt in der entsprechenden Verarbeitungseinheit B10 bzw. B11 ein Anhalten der Verarbeitung, und damit eine Verhinderung der Weiterschaltung der entsprechenden Signale, die bisher nicht miteinander verglichen werden konnten. Das Signal B40 bzw. B41 bleibt solange gesetzt, bis die entsprechende Vergleichs-Bedingung der jeweils anderen Verarbeitungseinheit B21 bzw. B20 erfüllt ist. In diesem Fall wird der Vergleich ausgeführt und das entsprechende Synchronisationssignal zurückgesetzt.are these comparison conditions on both signals B20 and B21 simultaneously Fulfills, so the data from these signals are compared directly and if inequality an error signal B17 is set. Is only the Comparison condition from either the signals B20 or B21 met, so the corresponding synchronization signal B40 or B41 is set. This signal causes in the corresponding processing unit B10 or B11 stop the processing, and thus a prevention the forwarding of the corresponding signals, not previously could be compared with each other. The signal B40 or B41 remains until the corresponding comparison condition of the each other processing unit B21 or B20 is met. In this case, the comparison is performed and the corresponding synchronization signal reset.
Um den Vergleich bei der beschriebenen ungleichzeitigen Bereitstellung der zu vergleichenden Daten durch die beiden Verarbeitungseinheiten sicherzustellen, ist es entweder notwendig, dass die Daten und Vergleichs-Bedingungen der entsprechenden Verarbeitungseinheit solange auf den entsprechenden Werten gehalten werden, bis das entsprechende Synchronisationssignal B40 bzw. B41 zurückgesetzt wurde, oder es müssen die zuerst bereitgestellten Daten in der Umschalteinheit bis zum Vergleich gespeichert werden.Around the comparison in the described non-simultaneous provision the data to be compared by the two processing units To ensure it is either necessary that the data and comparison conditions the corresponding processing unit as long as the corresponding Values are held until the corresponding synchronization signal B40 or B41 reset was or will have to the first provided data in the switching unit until comparison get saved.
Je nachdem, welche Verarbeitungseinheit zuerst Daten bereitstellt, muss diese mit der Weiterabarbeitung ihres Programms oder ihrer Prozesse solange warten, bis die andere Verarbeitungseinheit die entsprechenden Vergleichsdaten bereitstellt.ever after which processing unit provides data first, this must be done with the further processing of their program or their Processes wait until the other processing unit has the appropriate Provides comparative data.
In
einer speziellen Ausführung
der Umschalteinheit nach
Ist B16 auf den zweiten Wert gesetzt, so sind die Synchronisationssignale B20 und B21 sowie das Fehlersignal B17 immer inaktiv, beispielsweise auf den Wert 0 gesetzt. Es findet auch kein Vergleich statt und beide Verarbeitungseinheiten arbeiten voneinander unabhängig.is B16 set to the second value, so are the synchronization signals B20 and B21 and the error signal B17 always inactive, for example set to the value 0. There is no comparison and both processing units work independently.
Eine
wesentliche Komponente in dem erfindungsgemäßen System ist der Vergleicher.
In der einfachsten Form ist er in
Eine
zweite Klasse von Ausführungsformen kann
dahingehend unterschieden werden, welchen Grad der Synchronität die beiden
Inputs M510, M511 (bzw. M610, M611) haben müssen. Eine möglich Variante
ist durch taktweise Synchronität
gekennzeichnet, d.h. der Vergleich der Daten kann in einem Takt durchgeführt werden.
Eine leichte Änderung
entsteht dadurch, dass bei einem festen Phasenversatz zwischen den
Inputs ein synchrones Verzögerungselement
verwendet wird, das die entsprechenden Signale beispielsweise um
ganzahlige oder auch halbe Taktperioden verögert. Ein solcher Phasenversatz
ist nützlich
um Common Cause Fehler zu vermeiden, d.h. das sind solche Fehler,
die gleichzeitig auf mehrere Verarbeitungseinheiten wirken können. In
Weiter kann man im Vergleicher Ausführungsformen danach unterscheiden, wie das Signal M520 (oder M620) generiert wird. Eine bevorzugte Ausführungsform ist es, die Inputsignale M510, M511 (bzw. M610, M611) auf den Ausgang zu legen und die Verbindung durch Schalter unterbrechbar zu machen. Der besondere Vorteil dieser Variante ist es, dass zur Umschaltung zwischen Performanzmodus und möglichen verschiedenen Vergleichsmodi dieselben Schalter verwendet werden können. Alternativ können die Signale auch aus vergleicherinternen Zwischenspeichern generiert werden.Further one can compare in the embodiments differ according to how the signal M520 (or M620) is generated becomes. A preferred embodiment is it, the input signals M510, M511 (or M610, M611) to the output to set and make the connection by switch interruptible. The particular advantage of this variant is that for switching between performance mode and possible different comparison modes the same switches are used can. Alternatively you can the signals are also generated from internal buffers become.
Eine letzte Klasse von Ausführungsformen kann dahingehend unterschieden werden, wie viele Inputs am Vergleicher vorliegen und wie der Vergleicher reagieren soll. Bei drei Inputs kann ein Majoritätsvoting, ein Vergleich von allen drei oder ein Vergleich von nur zwei Signalen vorgenommen werden. Bei vier oder mehr Inputs sind entsprechend mehr Varianten denkbar. Diese Varianten sind vorzugsweise mit den verschiedenen Betriebsmodi des Gesamtsystems zu koppeln.A last class of embodiments can be distinguished by how many inputs on the comparator and how the comparator should react. With three inputs can a majority vote, a comparison of all three or a comparison of only two signals be made. With four or more inputs are appropriate more variants conceivable. These variants are preferably with the couple different operating modes of the overall system.
Um
den allgemeinen Fall darzulegen wird in
An dieser Figur lässt sich darlegen, wie die verschiedenen denkbaren Modi entstehen können. Dazu ist in dieser Figur die logische Komponente einer Schaltlogik N110 enthalten. Die Komponente muss nicht als solche existieren, entscheidend ist, dass ihre Funktion vorhanden ist. Sie legt zunächst fest, wie viele Ausgangssignale es überhaupt gibt. Weiter legt die Schaltlogik N110 fest, welche der Eingangssignale zu welchem der Ausgangssignale beitragen. Dabei kann ein Eingangssignal zu genau einem Ausgangssignal beitragen. In mathematischer Form anders formuliert ist also durch die Schaltlogik eine Funktion definiert, die jedem Element der Menge {N140, ..., N14n} ein Element der Menge {N160, ..., N16n} zuordnet.At this figure leaves Explain how the various conceivable modes can arise. To is the logical component of a switching logic N110 in this figure contain. The component does not have to exist as such, crucial is that their function exists. She first determines how many output signals are there at all gives. Furthermore, the switching logic N110 determines which of the input signals to which of the output signals contribute. This can be an input signal contribute to exactly one output signal. In mathematical form In other words, a function is defined by the switching logic, each element of the set {N140, ..., N14n} is an element of the set {N160, ..., N16n} assigns.
Die Funktion der Verarbeitungslogik N120 legt dann zu jedem der Ausgänge N16i fest, in welcher Form die Eingänge zu diesem Ausgangsignal beitragen. Auch diese Komponente muss nicht als eigene Komponente vorhanden sein. Entscheidend ist wieder, dass die beschriebenen Funktionen im System realisiert sind. Um beispielhaft die verschiedenen Variationsmöglichkeiten zu beschreiben, sei ohne Beschränkung der Allgemeinheit angenommen, dass der Ausgang N160 durch die Signale N141, ..., N14m erzeugt wird. Falls m = 1 entspricht dies einfach einer Durchschaltung des Signals, falls m = 2 dann werden die Signale N141, N142 verglichen. Dieser Vergleich kann synchron oder asynchron durchgeführt werden, er kann bitweise oder nur auf signiftkante Bits oder auch mit einem Toleranzband durchgeführt werden.The Function of the processing logic N120 then applies to each of the outputs N16i firmly, in what form the inputs contribute to this output signal. Also this component does not have to be present as a separate component. Decisive is again that the described functions are realized in the system. To exemplify the different variations to describe, is without limitation the generality assumed that the output N160 by the signals N141, ..., N14m is generated. If m = 1 this simply equals one Switching through the signal, if m = 2 then the signals N141, N142 compared. This comparison can be synchronous or asynchronous carried out it can be bitwise or only on significant bits or else performed with a tolerance band become.
Falls m >= 3 gibt es mehrere Möglichkeiten.If m> = 3 there are several Options.
Eine erste Möglichkeit besteht darin, alle Signale zu vergleichen und bei Vorhandensein mindestens zweier verschiedener Werte einen Fehler zu detektieren, den man optional signalisieren kann.A first option is to compare all the signals and if present at least two different values to detect an error, which one can signal optional.
Eine zweite Möglichkeit besteht darin, dass man eine k aus m -Auswahl vornimmt (k >m/2). Diese kann durch Verwendung von Vergleichern realisiert werden. Optional kann ein Fehlersignal generiert werden, wenn eines der Signale als abweichend erkannt wird. Ein möglicherweise verschiedenes Fehlersignal kann generiert werden, wenn alle drei Signale verschieden sind.A second option consists in making a k out of m selection (k> m / 2). This can be through Use of comparators can be realized. Optionally, a Error signal generated when one of the signals as different is recognized. One maybe different error signal can be generated if all three Signals are different.
Eine dritte Möglichkeit besteht darin, diese Werte einem Algorithmus zuzuführen. Dies kann beispielsweise die Bildung eines Mittelwerts, eines Medianwert, oder die Verwendung eines fehlertoleranten Algorithmus (FTA) darstellen. Ein solcher FTA beruht darauf, Extremwerte der Eingangswerte weg zu streichen und eine Art der Mittelung über die restlichen Werte vorzunehmen. Diese Mittelung kann über die gesamte Menge der restlichen Werte, oder vorzugsweise über eine in HW leicht zu bildenden Teilmenge vorgenommen werden. In diesem Fall ist es nicht immer notwendig, die Werte tatsächlich zu vergleichen. Bei der Mittelwertbildung muss beispielsweise nur addiert und dividiert werden, FTM, FTA oder Median erfordern eine teilweise Sortierung. Gegebenenfalls kann auch hier bei hinreichend großen Extremwerten optional ein Fehlersignal ausgegeben werdenA third possibility is to apply these values to an algorithm. This For example, the formation of an average, a median, or the use of a Fault Tolerant Algorithm (FTA). Such an FTA is based on omitting extreme values of the input values delete and make a kind of averaging over the remaining values. This averaging can over the total amount of the remaining values, or preferably over one be made in HW easily formed subset. In this Case it is not always necessary to actually set the values to compare. For example, averaging only adds up and divide, FTM, FTA or median require a partial Sorting. If necessary, can also be here at sufficiently large extreme values optionally an error signal can be output
Diese verschiedenen genannten Möglichkeiten der Verarbeitung mehrerer Signale zu einem Signal werden der Kürze wegen als Vergleichsoperationen bezeichnet.These various options mentioned processing of multiple signals into one signal will be for brevity referred to as comparison operations.
Die Aufgabe der Verarbeitungslogik ist es also, die genaue Gestalt der Vergleichsoperation für jedes Ausgangssignal – und damit auch für die zugehörigen Eingangssignale – festzulegen. Die Kombination der Information der Schaltlogik N110 (d.h. die o.g. Funktion) und der Verarbeitungslogik (d.h. die Festlegung der Vergleichsoperation pro Ausgangssignal, d.h. pro Funktionswert) ist die Modusinformation und diese legt den Modus fest. Diese Information ist im allgemeinen Fall natürlich mehrwertig, d.h. nicht nur über ein logisches Bit darstellbar. Nicht alle theoretisch denkbaren Modi sind in einer gegebenen Implementierung sinnvoll, man wird vorzugsweise die Zahl der erlaubten Modi einschränken. Zu betonen ist, dass im Fall von nur zwei Ausführungseinheiten, wo es nur einen Vergleichsmodus gibt, die gesamte Information auf nur ein logisches Bit kondensiert werden kann.The The task of the processing logic is therefore to determine the exact shape of the Comparison operation for every output signal - and with it also for the associated Input signals - specify. The combination of information of the switching logic N110 (i.e., the above function) and the processing logic (i.e., the determination of the comparison operation per output, i. per function value) is the mode information and this sets the mode. This information is in general Case of course polyvalent, i. not just about a logical bit can be displayed. Not all theoretically conceivable Modes are useful in a given implementation, you will preferably restrict the number of allowed modes. To emphasize is that in the case of only two execution units, where there is only one comparison mode, all the information is on only one logical bit can be condensed.
Eine Umschaltung von einem Performanz- in einen Vergleichsmodus ist im allgemeinen Fall dadurch charakterisiert, dass Ausführungseinheiten, die im Performanzmodus auf verschiedene Ausgänge hin abgebildet werden, im Vergleichsmodus auf den gleichen Ausgang hin abgebildet werden. Vorzugsweise ist dies dadurch realisiert, dass es ein Teilsystem von Ausführungseinheiten gibt, bei dem im Performanzmodus alle Eingangssignale N14i, die im Teilsystem zu berücksichtigen sind, direkt auf korrespondierende Ausgangssignale N16i geschalten werden, während sie im Vergleichsmodus alle auf einen Ausgang hin abgebildet sind. Alternativ kann eine solche Umschaltung auch dadurch realisiert werden, dass Paarungen geändert werden. Es ist dadurch dargestellt, dass man im allgemeinen Fall nicht von dem Performanzmodus und dem Vergleichsmodus sprechen kann, obwohl man in einer gegebenen Ausprägung der Erfindung die Menge der erlaubten Modi so einschränken kann, dass dies der Fall ist. Man kann aber immer von einer Umschaltung vom Performanz- in den Vergleichsmodus (und umgekehrt) sprechen.Switching from a performance mode to a comparison mode is characterized in the general case by the fact that execution units that are displayed in the performance mode on different outputs are mapped in the compare mode to the same output. This is preferably realized in that there is a subsystem of execution units in which in the performance mode, all input signals N14i to be considered in the subsystem are switched directly to corresponding output signals N16i, while in the comparison mode they are all mapped to one output. Alternatively, such switching can also be realized by changing pairings. It is represented by the fact that in the general case one can not speak of the performance mode and the comparison mode, although in a given off of the invention can limit the amount of allowed modes so that this is the case. However, one can always speak of switching from the performance to the comparison mode (and vice versa).
Zwischen diesen Modi kann, über Software gesteuert, dynamisch im Betrieb umgeschaltet werden. Ausgelöst wird die Umschaltung dabei beispielsweise über die Ausführung von speziellen Umschaltinstruktionen, speziellen Instruktionssequenzen, explizit gekennzeichneten Instruktionen oder durch den Zugriff auf bestimmte Adressen durch wenigstens eine der Ausführungseinheiten des Multiprozessorsystems.Between these modes can, over Software controlled, dynamically switched during operation. Is triggered the switch thereby, for example, the execution of special switching instructions, special instruction sequences, explicitly marked instructions or by accessing certain addresses through at least one of the execution units of the multiprocessor system.
In
Auch Ausgangssignale M180, M181, die nicht in die UVE geführt werden und interne Signale einer Verarbeitungseinheit, können zumindest bezüglich ihres berechneten Wertes verglichen werden, indem man diesen Wert auf den Ausgängen M120, M121 zum Zwecke des Vergleichs ausgibt. Entsprechendes kann auch mit Eingangssignalen M190, M191, die nicht über M100 kommen, durchgeführt werden.Also Output signals M180, M181, which are not led to the UVE and internal signals of a processing unit, at least in terms of Their calculated value can be compared by taking this value on the outputs M120, M121 for purposes of comparison. Corresponding can also with input signals M190, M191, which do not come via M100.
Um die Einheit M100 zu überwachen kann es für ausgewählte oder auch alle Signale M160, M161 möglich sein, sie über M170, M171 oder auch M190, M191 zurück zu lesen. Damit kann man auch im Vergleichsmodus sicherstellen, dass fehlerhafte Signale aus der Einheit M100 detektiert werden. Durch einen geeigneten Abschaltpfad, auf den (in einer ODER-Verknüpfung) M100, M110, M111 Zugriff haben, kann damit ein fail-silence Verhalten des gesamten Systems hergestellt werden.Around to monitor the unit M100 can it for selected or all signals M160, M161 may be possible, they are via M170, M171 or M190, M191 back to read. This can also ensure in comparison mode, that erroneous signals from the unit M100 are detected. Through a suitable shutdown path to which (in an OR operation) M100, M110, M111 access, thus can have a fail-silence behavior of the entire system.
In
Optional gibt es weitere Controlregister, wie z.B. M240, das die maximal erlaubte Zeitzdifferenz (in Anzahl von Taktperioden) zwischen den Verarbeitungseinheiten zur Ansteuerung eines internen oder externen Watchdogs enthält, sowie M241 mit dem Zeitdifferenzwert (Taktperiodenanzahl), ab welchem der schnellste Prozessor mittels WAIT- oder Interrupt-Signalen zeitweise angehalten bzw. verzögert werden soll, um beispielsweise einen Überlauf von Datenregistern zu verhindern.Optionally, there are other control registers, such as M240, which contains the maximum allowed time difference (in number of clock periods) between the processing units for controlling an internal or external watchdog, and M241 with the time difference value (clock cycle number), from which the fastest processor should be temporarily stopped or delayed by means of WAIT or interrupt signals, for example to prevent an overflow of data registers.
Im Statusregister M220 wird z.B. neben dem Error-Bit auch gespeichert, wie groß der Taktversatz zwischen den Verarbeitungseinheiten aktuell ist. Dazu wird z.B. mindestens ein Timer M230 immer von einer Verarbeitungseinheit gestartet wenn ein (über Adress- und Steuersignale, z.B. bestimmter Adressbereich) besonders gekennzeichneter Datenwert zuerst bereitgestellt wird und der Wert des Timers immer dann ins Statusregister übernommen, wenn der entsprechende Datenwert von der zweiten Verarbeitungseinheit bereitgestellt wird. Der Timer wird darüber hinaus vorzugsweise so eingestellt, dass auch bei unterschiedlichen Programmabläufen entsprechend der WCET (worst case execution time) garantiert alle Verarbeitungseinheiten ein Datum liefern müssen. Falls der vorgegebene Wert vom Timer überschritten wird, wird ein Fehlersignal ausgegeben.in the Status register M220 is e.g. stored next to the error bit as well, how big the Clock offset between the processing units is up to date. To is e.g. at least one timer M230 always from a processing unit started when a (over Address and control signals, e.g. certain address range) especially indicated data value is provided first and the value the timer is always taken into the status register, if the corresponding Data value is provided by the second processing unit. The timer will be over also preferably set so that even at different Program sequences accordingly WCET (worst case execution time) guarantees all processing units have to deliver a date. If the preset value is exceeded by the timer, a Error signal output.
Die Ausgänge M120, M121 der Verarbeitungseinheiten sind in M100 insbesondere für den Vergleichsmodus in einem Pufferspeicher M250, M251 zu speichern, sofern es sich um digitale Daten handelt und sie nicht taktgenau bereitgestellt werden können. Vorzugsweise kann dieser Speicher als FIFO ausgeführt sein. Besitzt dieser Speicher nur eine Tiefe von 1 (Register), so ist z.B. durch Wait-Signale dafür zu sorgen, dass die Ausgabe weiterer Werte bis zum erfolgten Vergleich verzögert wird, um einen Datenverlust zu vermeiden.The outputs M120, M121 of the processing units are in M100 in particular for the comparison mode in a buffer memory M250, M251 store, provided it is digital data and they are not provided in a timely manner can be. Preferably, this memory may be implemented as a FIFO. If this memory only has a depth of 1 (register), then e.g. by wait signals for it to ensure that the output of other values until the comparison delayed is to avoid data loss.
Weiterhin
gibt es eine Vergleichseinheit M210, die die digitalen Daten aus
den Eingangsspeichern M250, M251, den direkten Eingängen M120, M121
oder M170, M171 miteinander vergleicht. Diese Vergleichseinheit
kann auch serielle digitale Daten (z.B. PWM-Signale) miteinander vergleichen, wenn man
z.B. in der Speichereinheit M250, M251 die seriellen Daten empfangen
und in parallele Daten umwandeln kann, die dann in M210 verglichen
werden. Ebenso können
asynchrone digitale Eingangssignale M170, M171 über zusätzliche Speichereinheiten M270,
M271 synchronisiert werden. Wie auch für die Eingangssignale
Die Umschaltung zwischen Performance- und Vergleichsmodus erfolgt durch Setzen oder Rücksetzen des Modus-Bits im Controlregister, wodurch z.B. entsprechende Interrupts in den beiden Verarbeitungseinheiten verursacht werden. Der Vergleich selbst wird durch die bereitgestellten Daten M120, M121 sowie den dazugehörigen Adressen und Steuersignalen M130, M131 everanlasst. Dabei können bestimmte Signale aus M120 und M130 bzw. M121 und M131 als Kennung fungieren, die angibt, ob ein Vergleich der zugeordmneten Daten erfolgen soll.The Switching between performance and comparison mode is done by Set or reset the mode bit in the control register, causing e.g. corresponding interrupts in the two processing units. The comparison itself is provided by the provided data M120, M121 as well as the associated Addresses and control signals M130, M131 everanlasst. There are certain Signals from M120 and M130 or M121 and M131 act as identifier, indicating whether a comparison of the assigned data should be made.
Dies
ist eine weitere Ausführungsform
gegenüber
der einfachen Umschaltung in
In
dieser Vergleichseinheit können
ebenso analoge Daten in einer speziell dafür geeigneten analogen Vergleichseinheit
M211 (analog compare unit) miteinander verglichen werden. Das setzt
aber voraus, dass die Ausgabe der analogen Signale genügend synchron
zueinander erfolgt oder dass man in der analog compare unit eine
Speicherung der durch einen dort implementierten ADC digitalisierten
Daten vorsieht (siehe dazu weitere Ausführungen zu den
Für analoge Eingangssignale von den peripheren Einheiten ist auch ein Vergleich möglich. Insbesondere wenn es sich um redundante Sensorsignale des gleichen Systemparameters handelt, benötigt man dann keine zusätzlichen Synchronisationsmaßnahmen, sondern nur gegebenenfalls ein Steuersignal, das die Gültigkeit der Sensorsignale anzeigt. Die Realisierung eines Vergleichs analoger Signale wird im Detail noch gezeigt.For analog Input signals from the peripheral units is also a comparison possible. Especially when it comes to redundant sensor signals of the same System parameter is needed you then no additional Synchronization measures but only optionally a control signal that is the validity indicates the sensor signals. The realization of a comparison analog Signals will still be shown in detail.
Verschiedene Ausführungsformen im Controlregister sind denkbar. Es kann über geeignete Bitkombinationen beschrieben werden, ob ein Fehlererkennungs- oder ein Fehlertoleranzmuster verwendet werden soll. Je nach Aufwand, den man in die Einheit M300 steckt, kann man auch noch angeben, welchen Typ von Fehlertoleranzmuster (2 aus 3, Median, 2 aus 4, 3 aus 4, FTA, FTM...) man verwenden will. Weiter kann man es konfigurierbar gestalten, welchen Ausgang man durchschaltet. Man kann auch danach Ausführungsformen bilden, welche Komponenten für welches Datum auf diese Konfiguration Einfluss nehmen können.Various embodiments in the control register are conceivable. It can have appropriate bit combinations be described whether an error detection or a fault tolerance pattern should be used. Depending on the effort you put into the unit M300 you can also specify which type of fault tolerance pattern (2 out of 3, median, 2 out of 4, 3 out of 4, FTA, FTM ...) you want to use. Next you can make it configurable, which output one turns on. It is also possible then to form embodiments which Components for which Date on this configuration can influence.
Die Ausgangssignale der beteiligten Verarbeitungseinheiten werden dann in der Umschalteinheit miteinander verglichen. Da die Signale nicht notwendigerweise taktgenau verarbeitet werden, ist eine Zwischenspeicherung der Daten erforderlich. Dabei können auch Daten in der Umschalteinheit verglichen werden, die mit einer größeren Zeitdifferenz von den verschiedenen Verarbeitungseinheiten an die Umschalteinheit gegeben werden. Durch die Verwendung eines Zwischenspeichers (z.B. ausgebildet als FIFO-Speicher: first in – first out oder auch in einer anderen Pufferform) können auch zunächst von einem Verarbeitungseinheit mehrere Daten empfangen werden, während andere Verarbeitungseinheiten noch keine Daten bereitstellen. Dabei ist ein Maß für die Synchronität der beiden Verarbeitungseinheiten der Füllstand des FIFO-Speichers. Wird ein bestimmter vorgebbarer Füllstand überschritten, so wird die in der Bearbeitung am weitesten vorangeschrittene Verarbeitungseinheit entweder durch ein vorhandenes WAIT-Signal oder durch geeignete Interrupt-Routinen zeitweise angehalten, um auf die langsamer in der Bearbeitung voranschreitenden Verarbeitungseinheiten zu warten. Die Überwachung sollte dabei auf alle extern verfügbaren Signale einer Verarbeitungseinheit ausgedehnt werden; das schließt auch analoge Signale oder PWM-Signale mit ein. In der Umschalteinheit sind dazu Strukturen vorzusehen, die einen Vergleich solcher Signale zulassen. Zusätzlich wird vorgeschlagen, eine maximale Zeitabweichung zwischen den zu vergleichenden Daten vorzugeben und mittels mindestens eines Timers zu überwachen.The Output signals of the processing units involved are then compared in the switching unit. Because the signals are not are necessarily processed exactly clocked, is a caching the data required. It can Also, data in the switching unit to be compared with a larger time difference from the various processing units to the switching unit are given. By using a cache (e.g. designed as FIFO memory: first in - first out or else in one other buffer form) also first several data are received from one processing unit while others Processing units do not yet provide data. It is a measure of the synchronicity of the two Processing units of the level of the FIFO memory. If a certain predefinable fill level is exceeded, this will be the processing unit that has made the most progress in processing either by an existing WAIT signal or by suitable Interrupt routines temporarily paused to slow in to wait for the processing units to progress. The supervision should look at all externally available signals of a processing unit to be extended; that includes too analog signals or PWM signals with. In the switching unit For this purpose, structures should be provided which allow a comparison of such signals allow. additionally It is suggested to have a maximum time difference between specify comparative data and by means of at least one timer to monitor.
Werden
im allgemeinen Fall mehr als zwei Verarbeitungseinheiten durch eine
gemeinsame Umschalteinheit miteinander verbunden, so ist für jede diese
Verarbeitungseinheiten oder Verarbeitungseinheiten ein Controlregister
erforderlich. Eine spezielle Ausführung dieser Controlregister
ist in
Die
(n + 1) unteren Bits B500x bis B50nx des jeweiligen Controlregisters
Cx sind den n + 1 Prozessoren/Verarbeitungseinheiten eindeutig zugeordnet. Das
Bit B514x des Controlregisters Cx schaltet zwischen Vergleich/Voting
einerseits und paralleler Arbeit andererseits um und entspricht
dem Wert von B16 aus
Sind B50ik und B50kk des Controlregisters Ck auf Eins gesetzt (0 ≤ i, k ≤ n)., so bedeutet das in dieser ausführungsform, daß die Ausgänge der Verarbeitungseinheit i mit denen vom Verarbeitungseinheit k verglichen werden sollen. Ist zusätzlich auch B50jk gleich Eins, dann soll zwischen i, j und k gevotet werden und das Votingergebnis wird am Ausgang k der UVE ausgegeben (0 ≤ i, j, k ≤ n). Dazu kann für jede Gruppe von Verarbeitungseinheiten eine spezielle Art des Votings oder auch nur eines mehrheitlichen Vergleichs festgelegt werden, wie schon in der Erläuterung zum Bild M4 aufgezählt wurde. Allgemein müssen alle Bits B50ik für die zu vergleichenden/zu votenden Verarbeitungseinheiten i (im Controlregister Ck) gesetzt sein, wenn am Ausgang k der UVE das Votingergebnis ausgegeben werden soll. Eine parallele Ausgabe auf anderen Ausgängen ist möglich.If B50ik and B50kk of the control register Ck are set to one (0≤i, k≤n), then in this embodiment this means that the outputs of the processing unit i are to be compared with those of the processing unit k. If, in addition, B50jk equals one, then vv should be voted between i, j and k and the voting result is output at the output k of the EIS (0 ≤ i, j, k ≤ n). For this purpose, for each group of processing units, a special type of vote or even a majority comparison can be determined, as already enumerated in the explanation for picture M4. general my all bits B50ik must be set for the processing units i to be compared / voted (in the control register Ck) if the voting result is to be output at the output k of the UVE. Parallel output on other outputs is possible.
Eine Eins in B50ii des Controlregisters i (0 ≤ i,≤ n) gibt an, daß der Ausgang i der Vergleichseinheit aktiv sein soll. Tragen alle Controlregister Ci nur in den entsprechenden Speicherstellen B50ii eine Eins (i = 0, 1, ... n), so arbeiten alle Verarbeitungseinheiten im Performanzmodus mit beliebig unterschiedlichen Programmen und eigenen Ausgangssignalen. Sind alle n + 1 unteren Bits B50ik gleich Eins (i = 0, 1, ... n), und ist außerdem B514k gesetzt, dann werden die Ausgangssignale aller Verarbeitungseinheiten durch Mehrheitsentscheid (Voting) ausgewählt und auf den Ausgang k der UVE ausgegeben; bei n = 1 findet nur ein Vergleich statt.A One in B50ii of the control register i (0 ≤ i, ≤ n) indicates that the output i should be active in the comparison unit. Carry all control registers Ci only in the corresponding memory locations B50ii a one (i = 0, 1, ... n), all processing units work in performance mode with arbitrarily different programs and own output signals. If all n + 1 lower bits B50ik are equal to one (i = 0, 1, ... n), and is as well B514k set, then the output signals of all processing units by voting by majority vote and to the output k of the UVE issued; if n = 1, only one comparison takes place.
In den folgenden Ausführungen wird beispielhaft beschrieben, wie ein Ablauf beim Übergang zu einem Vergleich/Voting in einem System mit mehreren Verarbeitungseinheiten aussehen kann.In the following versions is described as an example, as a process in the transition to a comparison / voting in a system with several processing units can look like.
Das Bit B514i im Controlregister Ci wird gesetzt, um den Vergleich oder das Voting zu aktivieren. Dieses Bit kann sowohl durch den Verarbeitungseinheit selbst gesetzt werden, als auch von den Umschalt- und Vergleichseinheit in Abhängigkeit von bestimmten Systemzuständen, Zeitbedingenungen oder anderen Bedingungen (wie zum Beispiel Zugriffen auf bestimmte Speicherbereiche, Fehler oder Unplausibilitäten). Werden mit B514i die Bits B50ii und B50ki gesetzt, werden durch die UVE automatisch die Bits B511i und B511k gesetzt und dadurch Interrupts in den Verarbeitungseinheiten i und k ausgelöst. Diese Interrupts bewirken, daß die Verarbeitungseinheiten an eine bestimmte Programmstelle springen, bestimmte Initialisierungsschritte für den Übergang zum zum Vergleichsmodus durchführen und dann eine Rückmeldung (Ready) an die Umschalt- und Vergleichseinheit ausgeben. Das Ready-Signal bewirkt ein automatisches Zurücksetzen des Interrupt-Bits B511i im jeweiligen Controlregister Ci der Verarbeitungseinheit und gleichzeitig das Setzen des Wait-Bits B512i. Wenn alle Wait-Bits der beteiligten Verarbeitungseinheiten gesetzt sind, werden sie von der Umschalt- und Vergleichseinheit gleichzeitig zurückgesetzt. Die Verarbeitungseinheiten beginnen dann mit der Abarbeitung der zu überwachenden Programmteile. In einer vorteilhaften Ausführungsform ist ein Schreiben auf ein Controlregister Ci mit gesetztem Bit B514i durch Verriegelung (HW oder SW) verhindert. Das bewirkt sinnvollerweise, dass die Konfiguration des Vergleichs nicht während der Abarbeitung geändert werden kann. Eine Änderung im Controlregister Ci ist erst nach dem Rücksetzen des Bits B514i möglich. Dieses Rücksetzen bewirkt Interrupts in den betreffenden Verarbeitungseinheiten durch Setzen der Bits B510x in den Controlregistern aller beteiligten Verarbeitungseinheiten zum Übergang in den Normalmodus (parallele Arbeitsweise).The Bit B514i in the control register Ci is set to the comparison or to activate the voting. This bit can be used both by the processing unit itself, as well as from the switching and comparison unit dependent on of certain system states, Time constraints or other conditions (such as access certain memory areas, errors or implausibilities). Become with B514i bits B50ii and B50ki are set by the UVE the bits B511i and B511k are automatically set and thus interrupts triggered in the processing units i and k. Cause these interrupts that the Processing units jump to a specific program location, certain initialization steps for transitioning to compare mode perform and then a feedback (Ready) to the switching and comparison unit output. The ready signal causes an automatic reset of the Interrupt bits B511i in the respective control register Ci of the processing unit and simultaneously setting the wait bit B512i. If all wait bits the participating processing units are set, they will reset by the switching and comparison unit at the same time. The processing units then start processing the to be monitored Program parts. In an advantageous embodiment is a letter to a control register Ci with set bit B514i by locking (HW or SW) prevented. This sensibly causes the configuration not during the comparison the processing changed can be. A change in the Control register Ci is only possible after resetting bit B514i. This Reset causes interrupts in the respective processing units by setting the bits B510x in the control registers of all involved processing units to the transition in the normal mode (parallel operation).
Die Konsistenz aller Controlregister zueinander wird entsprechend Anwendervorgaben überwacht und im Fehlerfalle wird ein Fehlersignal generiert, das Bestandteil der Statusinformationen ist. So darf es zum Beispiel nicht vorkommen, dass eine Verarbeitungseinheit gleichzeitige für mehrere unabhängige Vergleichs- oder Votingprozesse verwendet werden, weil dann die Synchronisation nicht gewährleistet ist. Denkbar ist aber ein Vergleich auch mehrerer Verarbeitungseinheiten ohne eine Ausgabe der Datensignale, sondern nur zu dem Zwecke, ein Fehlersignal bei Ungleichheit zu erzeugen.The Consistency of all control registers to each other is monitored according to user specifications and in the event of an error, an error signal is generated, the component the status information is. For example, it should not happen that one processing unit simultaneously performs simultaneous comparisons for several independent or voting processes are used, because then the synchronization not guaranteed is. Conceivable, however, is a comparison of several processing units without an output of the data signals, but only for the purpose of Generate error signal in case of inequality.
In einer weiteren Ausführungsform ist der Eintrag in mehreren oder allen Controlregistern der an einem Vergleich oder einem Voting beteiligten Verarbeitungseinheiten gleichartig vorzunehmen, d.h. die entsprechenden Bits dieser Verarbeitungseinheiten sind dort gleichartig zu setzen, ggf. mit Ausnahme des eigenen Bits i, das die Ausgabe steuert.In a further embodiment is the entry in several or all control registers on one Comparison or a voting involved processing units similar to make, i. the corresponding bits of these processing units are to be set the same, if necessary with the exception of the own bit i controlling the output.
In
Tritt ein Fehler beim Vergleich auf, wird in dem betreffenden Controlregister das Error-Bit gesetzt. Bei einem Voting wird das Datum der betreffenden Verarbeitungseinheit ignoriert; bei einem einfachen Vergleich der Ausgang gesperrt.kick an error in the comparison, is in the respective control register the error bit is set. In a voting, the date of the relevant Processing unit ignored; in a simple comparison of the Output blocked.
Alle
Daten, die nicht rechtzeitig vor Ablauf der programmierten Zeit
bereitstehen, werden wie Fehler behandelt. Das Rücksetzen der Error-Bits erfolgt
systemabhängig
und ermöglicht
gegebenenfalls eine Reintegration der betreffenden Verarbeitungseinheit
Für den
Fall, daß die
Verarbeitungseinheiten und/oder der Voter nicht räumlich konzentriert
angeordnert sind, ist auch ein dezentrales Voting in Verbindung
mit einem geeigneten Bussystem gemäß
Die Rücksetzung des Vergleichs- und Votingbits in einem Controlregister mit aktivem Ausgangsbit bewirkt einen Interrupt in den beteiligten Verarbeitungseinheiten, die dann wieder in eine parallele Arbeitsweise zurückgeführt werden. Dabei kann jeder Verarbeitungseinheit eine unterschiedliche Einsprungadresse besitzen, die separat verwaltet wird. Die Programmabarbeitung kann auch dann vom gleichen Programmspeicher aus erfolgen. Die Zugriffe sind aber separat und in der Regel zu unterschiedlichen Adressen. Sofern der sicherheitsrelevante Teil gering ist im Vergleich zu den parallelen Modi ist abzuwägen, ob ein eigener Programmspeicher mit dupliziertem Sicherheitspart eventuell weniger aufwändig ist. Auch der Datenspeicher kann im Performance-Mode gemeinsam benutzt werden. Die Zugriffe erfolgen dann nacheinander beispielsweise mittels des AHB/ABP-Bus.The resetting of the comparison and voting bits in a control register with active off gang bit causes an interrupt in the participating processing units, which are then returned to a parallel operation. In this case, each processing unit may have a different entry address, which is managed separately. The program execution can also take place from the same program memory. The accesses are separate and usually to different addresses. If the security-relevant part is small in comparison to the parallel modes, it must be weighed whether a separate program memory with duplicated security part may be less expensive. The data memory can also be shared in performance mode. The accesses are then successively, for example by means of the AHB / ABP bus.
Als Besonderheit ist noch zu erwähnen, daß die Error-Bits vom System ausgewertet werden müssen. Um eine sichere Abschaltung im Fehlerfalle zu gewährleisten, sind die sicherheitsrelevanten Signale in geeigneter Form redundant zu realisieren (zum Beispiel im 1-aus-2 Code).When Special feature is still to mention that the Error bits must be evaluated by the system. For a safe shutdown to ensure in case of failure, are the safety-relevant signals in a suitable form redundant to realize (for example in the 1-out-of-2 code).
In
den bisherigen UVEs nach den
Dazu
ist darüber
hinaus ein Handshake-Interface erforderlich (
In einer besonderen Ausführungsform sind die Speicherelemente M800 als FIFO-Speicher (first- in, first-out) ausgestaltet.In a particular embodiment are the memory elements M800 as FIFO memory (first-in, first-out) designed.
Die
Schaltungen zum Vergleich analoger Signale von
Dabei ist B100 ein Operationsverstärker, auf dessen negativen Eingang B101 ein Signal B141 geschaltet ist, das über einen Widerstand B110 mit dem Wert Rin mit dem Eingangssignal B111 verbunden ist, an dem der Spannungswer V1 anliegt. Der positive Eingang B102 ist mit dem Signal B142 verbunden, das über den Widerstand B120 mit dem Wert Rin mit dem Eingang B121 verbunden, an dem der Spannungswert V2 anliegt. Der Ausgang B103 dieses Operationsverstärkers ist mit dem Ausgangssignal B190 verbunden, das den Spannungswert Vout besitzt. Das Signal B190 ist über den Widerstand B140 mit dem Wert Rf mit dem Signal B141 verbunden und das Signal B142 ist über den Widerstand B130 mit dem Wert Rf mit dem Signal B131 verbunden, das den Spannungswert des analogen Bezugspunktes Vagnd trägt.In this case, B100 is an operational amplifier, to whose negative input B101 a signal B141 is connected, which is connected via a resistor B110 with the value R in to the input signal B111, to which the voltage generator V 1 is applied. The positive input B102 is connected to the signal B142, which is connected via the resistor B120 with the value R in to the input B121, to which the voltage value V 2 is applied. The output B103 of this operational amplifier is connected to the output of B190, which has the voltage value of V out. The signal B190 is connected via the resistor B140 with the value R f with the signal B141 and the signal B142 is connected via the resistor B130 with the value R f with the signal B131 carrying the voltage value of the analog reference point V agnd.
Die
Ausgangsspannung kann mit den oben angegebenen Spannungs- und Widerstandswerten nach
folgender Formel berechnet werden:
Wird der Differenzverstärker nur mit einer positiven Betriebsspannung betrieben, wie üblicherweise bei CMOS, so wird als Analog-Ground Vagnd eine Spannung zwischen Betriebsspannung und Digital-Ground gewählt, üblicherweise das mittlere Potential. Sind die zwei analogen Eingangsspannungen V1 und V2 nur geringfügig unterschiedlich, so wird die Ausgangsspannung Vout nur eine geringe Differenz Vdiff zu dem analogen Ground aufweisen (positiv oder negativ).If the differential amplifier is only operated with a positive operating voltage, as is usually the case with CMOS, a voltage between the operating voltage and the digital ground is selected as the analog ground V agnd , usually the mean potential. If the two analog input voltages V 1 and V 2 are only slightly different, then the output voltage V out will have only a small difference V diff to the analog ground (positive or negative).
Mit
Hilfe von 2 Komparatoren wird nun geprüft, ob die Ausgangsspannung
oberhalb Vagnd + Vdiff (
In
Das
wird dadurch erreicht, indem die Widerstände B150, B160, B170 und B180
mit ihren Werten R1, R2,
R3 und R4 in Beziehung
zu der festen Referenzspannung Vref, die
an den Signalen B211 und B311 anliegt, wie folgt dimensioniert werden:
Mit V2max wird dabei der maximal tolerierte Spannungswert von V2 an Signal B121 und mit V1min der minimal tolerierte Spannungswert von V1 an Signal B111 bezeichnet. Die Referenzspannungsquelle kann von extern zur Verfügung gestellt werden, oder aber durch eine intern realisierte bandgap (temperaturkompensierte und betriebsspannungsunabhängige Referenzspannung) realisiert werden. In Gleichung (4) wird die maximale tolerierte Differenz Vdiff aus der maximalen positiven Abweichung V2max und der zugehörigen maximalen negativen Abweichung V1min bestimmt, d.h. (V2max – V1min) ist die maximal tolerierte Spannungsabweichung redundanter analoger Signale zueinander, die miteinander verglichen werden sollen.V 2max denotes the maximum tolerated voltage value of V 2 at signal B121 and V 1min the minimum tolerated voltage value of V 1 at signal B111. The reference voltage source can be provided externally, or realized by an internally realized bandgap (temperature-compensated and operating voltage-independent reference voltage). In equation (4), the maximum tolerated difference V diff is determined from the maximum positive deviation V 2max and the associated maximum negative deviation V 1min , ie (V 2max -V 1min ) is the maximum tolerated voltage deviation of redundant analog signals to each other compared to each other should be.
Wird
einer der Spannungswerte an den beiden Signale B290 oder B390 (Voben oder Vunten)
positiv, so liegt eine größere Abweichung
der Analogsignale vor, als sie toleriert werden soll. Sofern die
Prozessoren, die diese Analogsignale liefern, synchronisiert sind,
liegt somit ein Fehler vor, der gespeichert werden muß und ggf.
zum Abschalten der Ausgangssignale führt. Die Synchronität ist gegeben,
wenn zum Beispiel das Ready-Signal im Controlregister der entsprechenden
Verarbeitungseinheiten aktiv ist, oder bestimmte digitale Signale
an die UVE gesendet werden, die einen bestimmten Zustand des betreffenden Analogsignals
und damit auch den zu vergleichenden Wert im Sinne einer Kennung
signalisieren. Eine Schaltung, die den Fehler einspeichert, ist
in
Für niedrigere Geschwindigkeitsanforderungen können auch Wandler nach dem Zählprinzip benutzt werden, die zum Beispiel mittels der Eingansspannung oder des Eingansstroms eine entsprechende konstante Auf- oder Entladung eines zu einem Integrator geschalteten Kondensators bewirken. Die dazu notwendige Zeit wird gemessen und ins Verhältnis gesetzt zu der Zeit, die in der Gegenrichtung zur Ent- bzw. Aufladung des gleichen Kondensators (Integrators) mittels einer Referenzspannungsquelle bzw. eines entsprechenden Referenzstromes notwendig ist. Die Zeiteinheit wird in Takten gemessen und die Zahl der benötigten Takte ist ein Maß für den analogen Eingangswert. Ein solches Verfahren ist zum Beispiel das dual-slope Verfahren, bei dem die eine Flanke (slope) durch die Entladung entsprechend dem Analogwert bestimmt ist und die zweite Flanke durch die Wiederaufladung entsprechend dem Referenzwert bestimmt ist (siehe auch http://www.exstrom.com/journal/adc/dsadc.html).For lower Speed requirements can also converters according to the counting principle be used, for example, by means of the input voltage or the input current a corresponding constant charge or discharge cause a switched to an integrator capacitor. The necessary time is measured and put in relation to the time in the opposite direction to the charge or charge the same capacitor (Integrators) by means of a reference voltage source or a corresponding Reference current is necessary. The time unit is measured in bars and the number of needed Clocks is a measure of the analog Input value. One such method is, for example, the dual-slope Method in which the one slope (slope) by the discharge accordingly the analog value is determined and the second edge by recharging determined according to the reference value (see also http://www.exstrom.com/journal/adc/dsadc.html).
Der
ADC B600 von
Zum Vergleich der zwischengespeicherten digitalen und analogen Signale werden die Reihenfolge der Abspeicherung und ggf. das A-Bit (B730 bzw. B830) sowie die Kennung B720 oder B820 in Verbindung mit dem gewandelten Digitalwert B710 bzw. der Digitalwert B810 geprüft. Es besteht auch die Möglichkeit, z.B. wegen unterschiedlicher Bitbreite, die analogen und die digitalen Signale in getrennten Speichern (zwei FIFOs) unterzubringen. Der Vergleich erfolgt dann ereignisgesteuert: immer wenn ein Wert eines Prozessors zur UVE übertragen wird, wird geprüft, ob die anderen beteiligten Prozessoren einen solchen Wert schon bereitgestellt haben. Sofern das nicht der Fall ist, wird der Wert im entsprechenden FIFO oder Speicher abgelegt, im anderen Fall der Vergleich unmittelbar durchgeführt, wobei auch hier der FIFO als Speicher dienen kann. Ein Vergleich wird zum Beispiel immer dann dann absolviert, wenn die beteiligten FIFOs nicht leer sind. Bei mehr als zwei beteiligten Prozessoren bzw. Vergleichssignalen kann durch ein Voting ermittelt werden, ob alle Signale zur Verteilung zugelassen werden (fail silent Verhalten) oder ob ggf. nur durch ein Error-Signal der Fehlerzustand signalisiert wird.To compare the buffered digital and analog signals, the sequence of the storage and possibly the A bit (B730 or B830) as well as the identifier B720 or B820 in conjunction with the converted digital value B710 or the digital value B810 are checked. It is also possible, for example because of different bit width, to accommodate the analog and the digital signals in separate memories (two FIFOs). The comparison is then event-controlled: whenever a value of a processor is transmitted to the UVE, it is checked whether the other participating processors have already provided such a value. If this is not the case, the value is stored in the corresponding FIFO or memory, in the other case the comparison is carried out directly, whereby here too the FIFO can serve as memory. For example, a comparison is always completed if the FIFOs involved are not empty. For more than two participating processors or comparison signals can be determined by a vote who whether all signals are permitted for distribution (fail silent behavior) or whether the error state is signaled only by an error signal if necessary.
Claims (15)
Priority Applications (10)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200510037243 DE102005037243A1 (en) | 2005-08-08 | 2005-08-08 | Method for mode switching and signal comparison in computer system has two processing units whereby synchronization means are provided which associates rate information with predeterminable data according to processing unit |
EP05804493A EP1812860B1 (en) | 2004-10-25 | 2005-10-25 | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units |
JP2007537295A JP4669007B2 (en) | 2004-10-25 | 2005-10-25 | Method and apparatus for switching and comparing data in a computer system having at least two processing units |
DE502005006496T DE502005006496D1 (en) | 2004-10-25 | 2005-10-25 | METHOD AND DEVICE FOR MODE SWITCHING AND SIGNAL COMPARISON IN A COMPUTER SYSTEM HAVING AT LEAST TWO PROCESSING UNITS |
US11/665,727 US7856569B2 (en) | 2004-10-25 | 2005-10-25 | Method and device for a switchover and for a data comparison in a computer system having at least two processing units |
PCT/EP2005/055511 WO2006045784A1 (en) | 2004-10-25 | 2005-10-25 | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units |
AT05804493T ATE421120T1 (en) | 2004-10-25 | 2005-10-25 | METHOD AND DEVICE FOR MODE SWITCHING AND SIGNAL COMPARISON IN A COMPUTER SYSTEM WITH AT LEAST TWO PROCESSING UNITS |
CNA2008101697667A CN101393533A (en) | 2004-10-25 | 2005-10-25 | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units |
KR1020077008952A KR101017444B1 (en) | 2004-10-25 | 2005-10-25 | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units |
CNB2005800365777A CN100483359C (en) | 2004-10-25 | 2005-10-25 | Method and device for changing mode and comparing signal in a computer system having at least two processing units |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200510037243 DE102005037243A1 (en) | 2005-08-08 | 2005-08-08 | Method for mode switching and signal comparison in computer system has two processing units whereby synchronization means are provided which associates rate information with predeterminable data according to processing unit |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102005037243A1 true DE102005037243A1 (en) | 2007-02-15 |
Family
ID=37680932
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE200510037243 Withdrawn DE102005037243A1 (en) | 2004-10-25 | 2005-08-08 | Method for mode switching and signal comparison in computer system has two processing units whereby synchronization means are provided which associates rate information with predeterminable data according to processing unit |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102005037243A1 (en) |
-
2005
- 2005-08-08 DE DE200510037243 patent/DE102005037243A1/en not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1812860B1 (en) | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units | |
EP1812855B1 (en) | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units | |
EP1812859B1 (en) | Method and device for mode switching and signal comparison in a computer system with at least two processing units | |
WO2006045785A1 (en) | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units | |
DE102005037242A1 (en) | Processing unit`s e.g. CPU, analog or digital signals switching and comparing method for computer system, involves switching between operating modes of units and comparing analog signals of units by changing one signal into digital value | |
WO2006045788A1 (en) | Method and device for mode switching and signal comparison in a computer system comprising at least two processing units | |
EP1812856B1 (en) | Method and device for evaluating a signal of a computer system comprising at least two execution units | |
DE102004034766A1 (en) | Error detection method and system for processors using interlock step-wise concurrent part processes | |
EP1915688A1 (en) | Method and device for data processing | |
DE102017209856A1 (en) | Arithmetic unit and operating method for this | |
DE102005037240A1 (en) | Mode switching and data comparison method for use in computer system, involves providing switching unit for switching between two operating modes, carrying out vote in comparison mode and providing control unit for execution of vote | |
DE102005037241A1 (en) | Computer system `s switching method for aircraft industry, involves storing one of items of information in memory in intermediate manner for determinable time so that two items of information are directly compared with each other | |
CN101048756A (en) | Method and device for changing mode and comparing signal in a computer system having at least two processing units | |
DE102005037239A1 (en) | Processing unit`s e.g. CPU, performance and comparison modes switching method for computer system, involves adding synchronization signal to interruption input of one processing unit during asynchronism of unit in comparison mode | |
DE102005037243A1 (en) | Method for mode switching and signal comparison in computer system has two processing units whereby synchronization means are provided which associates rate information with predeterminable data according to processing unit | |
DE102005037238A1 (en) | Method for mode switching and signal comparison in computer system comprised of two processing units whereby two analog signals of processing units are compared such that a difference is created according to signal | |
WO2009103372A1 (en) | Arrangement for checking a program memory in a computation unit | |
DE102005037259A1 (en) | Method and device for determining a start state in a computer system having at least two execution units by switching register sets | |
DE102005037231A1 (en) | Computer system controlling method, involves enabling switching between two operating modes of computer system using switching unit, and carrying out changeover of clock frequency of computer system by switching between operating modes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R005 | Application deemed withdrawn due to failure to request examination |
Effective date: 20120809 |