DE102011007467A1 - Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components - Google Patents
Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components Download PDFInfo
- Publication number
- DE102011007467A1 DE102011007467A1 DE201110007467 DE102011007467A DE102011007467A1 DE 102011007467 A1 DE102011007467 A1 DE 102011007467A1 DE 201110007467 DE201110007467 DE 201110007467 DE 102011007467 A DE102011007467 A DE 102011007467A DE 102011007467 A1 DE102011007467 A1 DE 102011007467A1
- Authority
- DE
- Germany
- Prior art keywords
- processor structure
- test
- circuit according
- main processor
- checking
- 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
- 238000012360 testing method Methods 0.000 claims abstract description 69
- 230000006870 function Effects 0.000 claims description 13
- 238000000034 method Methods 0.000 claims description 12
- 238000012795 verification Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 5
- 238000010998 test method Methods 0.000 claims description 5
- 230000015556 catabolic process Effects 0.000 claims description 2
- 238000006731 degradation reaction Methods 0.000 claims description 2
- 230000002457 bidirectional effect Effects 0.000 claims 1
- 230000001419 dependent effect Effects 0.000 claims 1
- 239000000725 suspension Substances 0.000 claims 1
- 238000012544 monitoring process Methods 0.000 description 14
- 230000002093 peripheral effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- BUHVIAUBTBOHAG-FOYDDCNASA-N (2r,3r,4s,5r)-2-[6-[[2-(3,5-dimethoxyphenyl)-2-(2-methylphenyl)ethyl]amino]purin-9-yl]-5-(hydroxymethyl)oxolane-3,4-diol Chemical compound COC1=CC(OC)=CC(C(CNC=2C=3N=CN(C=3N=CN=2)[C@H]2[C@@H]([C@H](O)[C@@H](CO)O2)O)C=2C(=CC=CC=2)C)=C1 BUHVIAUBTBOHAG-FOYDDCNASA-N 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000001356 surgical procedure Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/2236—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
- G06F11/2242—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors in multi-processor systems, e.g. one processor becoming the test master
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
Description
Die Erfindung betrifft eine mehrkernige integrierte Mikroprozessorschaltung gemäß Anspruch 1, ein Prüfverfahren gemäß Anspruch 17 sowie die Verwendung der Mikroprozessorschaltung gemäß Anspruch 20.The invention relates to a multi-core integrated microprocessor circuit according to
Aus der
Bekannt sind außerdem Mikroprozessorstrukturen mit Anordnungen aus Master- und Slave-Prozessor, bei denen eine Überwachung durch Überprüfung von Rechenergebnissen stattfindet. Allerdings ist für eine Überwachung des Hauptprozessors eine aufwändige wiederholte Kommunikation zwischen den Prozessoren mit Datenaustausch erforderlich.Also known are microprocessor structures with master and slave processor arrangements in which monitoring is performed by checking computational results. However, to monitor the main processor requires a lot of repetitive communication between the processors with data exchange.
Aus Gründen der Vorteile einer hohen Rechengeschwindigkeit, der Einfachheit in der Softwareentwicklung und der niedrigen Kosten bei hohen Stückzahlen, werden kernredundante Mikroprozessorsysteme im Bereich der Kraftfahrzeugbremsen heute vielfach eingesetzt. Kernredundante Mikroprozessorsysteme sind überwiegend so konzipiert, dass sie keine Notlauffähigkeit haben. Das heißt, im Falle eines Fehlers wird ein Zugriff auf die Peripherie unterbunden.Due to the advantages of high computing speed, simplicity in software development, and low cost high volume, core redundant microprocessor systems are widely used in automotive brakes today. Kernredundante microprocessor systems are predominantly designed so that they have no runflat capability. That is, in the event of an error access to the periphery is prevented.
Ein Nachteil des Prinzips der Kernredundanz ist, dass wenn es auf drei oder mehrkernige Mikroprozessorstrukturen übertragen wird, dieses bedingt, dass der überwachende Kern die gleiche Rechenleistung aufweist, wie der überwachte Kern. Dies führt prinzipiell zu noch nicht optimal kostenoptimierten Mikroprozessorsystemen.A disadvantage of the principle of kernel redundancy is that when it is transferred to three or more core microprocessor structures, it requires that the monitoring kernel have the same computing power as the monitored kernel. This leads in principle to not yet optimally cost-optimized microprocessor systems.
Die Aufgabe der vorliegenden Erfindung besteht nun darin, eine neuartige, mindestens zweikernige abgesicherte Mikroprozessorstruktur mit Überwachungsmitteln anzugeben, welche gegenüber bekannten Mikroprozessorstrukturen kostenoptimiert ist.The object of the present invention is now to provide a novel, at least dinuclear secured microprocessor structure with monitoring means, which is cost-optimized over known microprocessor structures.
Diese Aufgabe wird erfindungsgemäß gelöst durch die mehrkernige integrierte Mikroprozessorschaltung gemäß Anspruch 1.This object is achieved by the multi-core integrated microprocessor circuit according to
Die mehrkernige integrierte Mikroprozessorschaltung gemäß der Erfindung umfasst mindestens zwei Prozessorkerne, die einer Hauptprozessorstruktur zugeordnet sind, und zusätzlich eine Nebenprozessorstruktur, der ein oder mehrere Prozessorkerne zugeordnet sind. Die Mikroprozessorschaltung umfasst, vorzugsweise zusätzlich zu einer in der Hauptprozessorstruktur vorhandenen Prüfueinrichtung, eine erste Prüfeinrichtung, mit der die Hauptprozessorstruktur die richtige Funktion der Nebenprozessorstruktur überprüfen kann. Diese erste Prüfeinrichtung ist als zusätliches Element zur in der Hauptprozessorstruktur bereits vorhandenen Prüflogik zu sehen. Die zusätzliche Prüfeinrichtung führt eine Überprüfung der Nebenprozessorstruktur zeitintegral durch, in dem zunächst eine Prüfung von nur Teilen oder Bereichen der Nebenprozessorstruktur erfolgt und die Prüfung danach schrittweise auf weitere Teile oder Bereiche der Nebenprozessorstruktur ausgedehnt wird.The multi-core microprocessor integrated circuit according to the invention comprises at least two processor cores associated with a main processor structure and additionally a slave processor structure associated with one or more processor cores. The microprocessor circuit comprises, preferably in addition to an existing in the main processor structure Prüfueinrichtung, a first test device with which the main processor structure can check the correct function of the secondary processor structure. This first test device is to be seen as an additional element to the test logic already present in the main processor structure. The additional checking device carries out a check of the secondary processor structure in a time-integral manner, in which at first a check of only parts or areas of the secondary processor structure takes place and the check is subsequently extended stepwise to further parts or areas of the secondary processor structure.
Die Hauptprozessorstruktur, welche bevorzugt kernredundant aufgebaut ist, und die Nebenprozessorstruktur können über Bussysteme miteinander Daten austauschen sowie auf gemeinsam genutzte Peripherie (I/O, Speicher etc.) und/oder eigens den Strukturen zugeordnete exklusive Peripherie zugreifen. Die Kerne der Hauptprozessorstruktur arbeiten vorzugsweise taktsynchron ein identisches Programm ab.The main processor structure, which preferably has a core-redundant structure, and the secondary processor structure can exchange data with one another via bus systems and access shared peripherals (I / O, memory, etc.) and / or exclusive peripherals assigned specifically to the structures. The cores of the main processor structure preferably operate an isochronous identical program.
Vorzugsweise weist für die Fehlerprüfung die erste Prüfeinrichtung einen Interrupteingang zur interruptgesteuerten Prüfung auf oder die Prüfeinrichtung wird durch einen Interrupt oder eine vergleichbare Softwareroutine aufgerufen. Dabei kann der Interrupt selbst die Fehlerprüfung direkt aufrufen oder auch nur indirekt, in dem zunächst eine Softwareroutine aufgerufen wird, welche dann die Fehlerprüfung triggert. Erfolgt ein Interrupt oder ein entsprechender Aufruf, wird insbesondere eine weitere Teileinheit der zu überprüfenden Einheit überprüft. Unter dem Begriff Teileinheit wird dabei nicht nur ein Teil des Speichers oder der Mikroprozessorstruktur verstanden, sondern auch ein Teil des Befehlssatz des oder der Kerns/Kerne der geprüften Schaltung, welcher zweckmäßigerweise bei der Überprüfung ebenfalls geprüft wird. Durch diese schrittweise Überprüfung wird der Umfang der Prüfung der Nebenprozessorstruktur immer weiter ausgedehnt. Ist die Nebenprozessorstruktur vollständig überprüft, beginnt das Prüfverfahren wieder neu. Diese Art der Überprüfung kann als kontinuierliche, zeitintegrale Überprüfung bezeichnet werden. Im Vergleich zu überwiegend in Hardware implementierten Überprüfungsverfahren nimmt die kontinuierliche, zeitintegrale Überprüfung mehr Zeit in Anspruch. Dieser Nachteil kann jedoch für viele Anwendungsfälle, bei denen eine schnelle Fehlerentdeckung keine besonders große Rolle spielt (nicht sicherheitskritische Software, wie zum Beispiel Komfortfunktionen für Kraftfahrzeuge), noch in Kauf genommen. werden. In diesem Fall überwiegt der einfache Hardwareaufbau bzw. der Vorteil, die kontinuierliche, zeitintegrale Überprüfung besonders bevorzugt sogar ganz als Prüfprogramm durchzuführen.For error checking, the first checking device preferably has an interrupt input for interrupt-controlled checking, or the checking device is called by an interrupt or a comparable software routine. The interrupt itself can directly call the error check or even indirectly, in which a software routine is first called, which then triggers the error check. If an interrupt or a corresponding call is made, in particular a further subunit of the unit to be checked is checked. The term subunit here is understood to mean not only a part of the memory or the microprocessor structure, but also a part of the instruction set of the core (s) of the tested circuit, which is expediently also checked during the check. This step-by-step verification extends the scope of the subprocessor structure check. If the slave processor structure is completely checked, the test procedure starts again. This type of verification can be called a continuous, time-integral review. In comparison to checking procedures implemented predominantly in hardware, the continuous, time-integral checking takes place take more time. However, this disadvantage can still be accepted for many applications in which rapid fault detection is not particularly important (non-safety-critical software such as comfort functions for motor vehicles). become. In this case, the simple hardware structure or the advantage of carrying out the continuous, time-integral checking especially preferably even entirely as a test program predominates.
Neben der ersten Prüfeinrichtung, deren Überprüfungsprinzip auch als symmetrische Überprüfung aufgefasst werden kann, erfolgt die an sich bekannte Überprüfung der Hauptprozessorstruktur durch Vergleich der darin verarbeiteten Daten, Ein-Ausgabe-Operationen einschließlich der Prüfdaten und Befehle. Über diese beiden Prüfeinrichtungen hinaus umfasst die Mikroprozessorschaltung vorzugsweise noch eine weitere Prüfeinrichtung, die beispielsweise durch Buskomparatoren realsisiert ist. Diese weitere Prüfeinrichtung ermöglicht eine Prüfung der Zugriffe von den Prozessorkernen auf den Speicher und die Ein-/Ausgabe, welche besonders bevorzugt sämtliche redundant erfolgen, also auch die Zugriffe des in einem Ausführungsbeispiel nicht redundanten Kerns der Nebenprozessorschaltung, was zum Beispiel durch Nutzung von Bus-Multiplexern möglich wird.In addition to the first test device, whose verification principle can also be understood as a symmetrical check, the per se known check of the main processor structure by comparing the data processed therein, input-output operations including the test data and commands. In addition to these two test devices, the microprocessor circuit preferably also comprises a further test device which is realized, for example, by bus comparators. This further test device makes it possible to check the accesses from the processor cores to the memory and the input / output, which are particularly preferably all redundant, that is also the accesses of the non-redundant core of the sub-processor circuit in one embodiment, which can be achieved, for example, by using bus Multiplexing is possible.
Die erfindungsgemäße Schaltung ist vorzugweise so ausgelegt, dass die Nebenprozessorstruktur nicht auf den Speicher, der der Hauptprozessorstruktur zugeordnet ist, zugreifen kann. Es ist allerdings zweckmäßig, dass die Nebenprozessorstruktur auf diesen Speicher zumindest lesend zugreifen kann. Hierdurch ist sichergestellt, dass fehlerhafte Programme, die von der Nebenprozessorstruktur abgearbeitet werden (z. B. nicht sicherheitskritische Software, wie Komfortfunktionen oder dergleichen), eine sicherheitskritische Software, wie z. B. einen Bremsregelungsalgorithmus, der von der Hauptprozessorstruktur abgearbeitet wird, nicht beeinträchtigen. Allerdings ist zweckmäßigerweise vorgesehen, dass Haupt- und Nebenprozessorstruktur zum Zwecke des Austauschs von Daten auf einen gemeinsamen Speicher oder Speicherbereich zugreifen können.The circuit according to the invention is preferably designed so that the secondary processor structure can not access the memory which is assigned to the main processor structure. However, it is expedient that the secondary processor structure can access this memory at least read. This ensures that faulty programs that are processed by the secondary processor structure (eg non-security-critical software, such as comfort functions or the like), a safety-critical software such. B. does not affect a brake control algorithm that is processed by the main processor structure. However, it is expediently provided that the main and secondary processor structure can access a common memory or memory area for the purpose of exchanging data.
Der Speicher, auf den die Hauptprozessorstruktur und zweckmäßigerweise auch die Nebenprozessorstruktur zugreifen kann, ist vorteilhafterweise als ein Speichermodul mit redundanter Struktur ausgeführt. Das Speichermodul ist besonders bevorzugt ein RAM, ein Flash-ROM Speicher oder eine andere Art von flüchtigem oder nichtflüchtigem überschreibbarem Speicher, wie z. B. nvRAM, Fram oder mRAMn.The memory, which can be accessed by the main processor structure and expediently also the secondary processor structure, is advantageously designed as a memory module with a redundant structure. The memory module is particularly preferably a RAM, a flash ROM memory or other type of volatile or non-volatile rewritable memory such. NvRAM, fram or mRAMn.
Nach einer weiteren bevorzugten Ausführungsform der Erfindung ist ein solches oder sind andere weitere zusätzliche vorzugsweise redundante Speichermodul/e direkt an die Hauptprozessorstruktur und/oder die Nebenprozessorstruktur angekoppelt (z. B. Tightly-Coupled Memory, TCM), welche zweckmäßigerweise durch die Struktur, an die sie angebunden sind, exklusiv genutzt werden. Durch die direkte Ankopplung von zusätzlichen Speichern oder Speichermodulen ist eine CPU-spezifische, exklusive Nutzung des zusätzlichen Speichers möglich, welche die Performance und/oder die Verfügbarkeit der erfindungsgemäßen Schaltung verbessert. Wenn man beispielsweise ein solches zusätzliches Speichermodul an die Hauptprozessorstruktur anschließt, so wird ermöglicht, dass die Nebenprozessorstruktur simultan und synchron unter Nutzung von Bus-Multiplexern auf die Speichermodule der Hauptprozessorstruktut zugreifen kann, wodurch diese nicht für andere Zugriffe auf die zusätzlichen, exdklusiven Speichermodule blockiert werden. Auch kann im Falle eines detektierten Defekts der zusätzlichen RAM-Module die Hauptprozessorstruktur weiterarbeiten bzw. teilweise weiterarbeiten, da die zusätzlichen RAM-Module physikalisch getrennt vom defekten RAM sind und nicht notwendigerweise ebenfalls Defekt sein müssen, wenn die nicht zusätzlichen und nicht exklusiven RAM-Module der Hauptprozessorstruktur einen Fehler aufweisen.According to a further preferred embodiment of the invention, such or other further additional preferably redundant memory module (s) is directly coupled to the main processor structure and / or the secondary processor structure (eg Tightly-Coupled Memory, TCM), which is expediently due to the structure which they are connected, are used exclusively. The direct coupling of additional memory or memory modules, a CPU-specific, exclusive use of the additional memory is possible, which improves the performance and / or availability of the circuit according to the invention. For example, by attaching such an additional memory module to the main processor structure allows the slave processor structure to simultaneously and synchronously access the memory modules of the main processor structure using bus multiplexers, thereby preventing them from being blocked for other accesses to the additional exclusive memory modules , Also, in the event of a detected failure of the additional RAM modules, the main processor structure may continue to operate partly because the additional RAM modules are physically separate from the defective RAM and need not necessarily be defective as well when the non-exclusive and non-exclusive RAM modules the main processor structure have an error.
Nach einer weiteren bevorzugten Ausführungsform der Erfindung kann die Hauptprozessorstruktur ähnlich der Nebenprozessorstruktur einen dritten oder sogar weiteren, nicht redundanten Prozessorkern umfassen. Es ist auch möglich, dass die Nebenprozessorstruktur einen oder mehrere weitere nicht redundante Kerne umfasst. Auch dieser bzw. diese nicht redundanten Kerne kann/können dann von der Hauptprozessorstruktur oder der Nebenprozessorstruktur nach der Methode der zeitintegralen Überprüfung überwacht werden. Wenn die Nebenprozessorstruktur mehrkernig ausgeführt ist, wird bevorzugt dabei zwischen den Kernen der Nebenprozessorstruktur eine bidirektionale oder gegenseitige zeitintegrale Überprüfung durchgeführt, welche bereits bei einseitig festgestellten Fehlern zur Abschaltung oder stufenweise Degradation des Systems führt.According to another preferred embodiment of the invention, the main processor structure may comprise a third or even further non-redundant processor core, similar to the sub-processor structure. It is also possible that the secondary processor structure comprises one or more further non-redundant cores. This or these non-redundant cores can also be monitored by the main processor structure or the secondary processor structure according to the time-integral verification method. If the secondary processor structure is designed to be multi-core, a bi-directional or mutual time-integral check is preferably carried out between the cores of the secondary processor structure, which already leads to shutdown or stepwise degradation of the system in the case of unilaterally detected errors.
Die Erfindung bezieht sich auch auf ein Prüfverfahren, bei dem eine Prüfung der richtigen Funktion einer Schaltung, inbesondere eines Mikroprozessors oder eines Mikroprozessorsystems durchgeführt wird, wobei eine zeitintegrale Prüfung erfolgt, in dem bei einem ersten Interrupt oder Prüfschritt (z. B. ein Software-Ereignis) ein bestimmter Teil oder Bereich der Schaltung geprüft wird und bei einem darauffolgenden Interrupt ein weiterer, noch nicht geprüfter Teil oder Bereich der zu überprüfenden Schaltung geprüft wird.The invention also relates to a test method in which a test of the correct function of a circuit, in particular a microprocessor or a microprocessor system, is carried out, wherein a time-integral test is carried out in which at a first interrupt or test step (eg a software interruption). Event) a certain part or area of the circuit is checked and in a subsequent interrupt another, not yet tested part or area of the circuit to be checked is checked.
Bei dem Prüfverfahren wird vorzugsweise von der Hauptprozessorstruktur eine Prüfanweisung oder ein Prüfbefehl zur Kennzeichnung des zu prüfenden Teils oder Bereichs an die Nebenprozessorstruktur gesendet (vorzugsweise unter Nutzung des gemeinsamen Speichers
Eine geeignete Fehlerbehandlung besteht neben einer Meldung des Fehlers zweckmäßigerweise darin, dass das Mikroprozessorsystem entweder in einen Notlaufbetrieb geschaltet wird (es werden einzelne Funktionen oder die gesamte Funktion mit eingeschränkter Sicherheit aufrechterhalten) oder das Mikroprozessorsystem wird von der Peripherie getrennt oder abgeschaltet.Appropriate error handling, in addition to reporting the failure, is conveniently either to place the microprocessor system in runflat mode (individual functions or the entire function are maintained with limited security), or the microprocessor system is disconnected or powered off from the peripherals.
Vorzugsweise wird in der Nebenprozessorstruktur zur Durchführung der zeitintegralen Überprüfung ein parametrisierter Algorithmus ausgeführt. Die Parameter für die Parametrierung des parametrisierten Algorithmus sind zweckmäßigerweise im gemeinsam genutzten Speicher hinterlegt. Der parametrisierte Algorithmus ist bevorzugt in einem Festwertspeicher (ROM oder Flash-ROM) als Programm abgelegt, auf den die Nebenprozessorstruktur lesend zugreifen kann. Für die Durchführung der zeitintegralen Überprüfung wird bevorzugt von der Hauptprozessorstruktur von Prüfschritt zu Prüfschritt bevorzugt eine Änderung der Parameter im einem flüchtigen, gemeinsam genutzen Speicher vorgenommen, so dass der Prüfbereich nach und nach vergrößert wird (zeitintegrale Überprüfung).Preferably, a parameterized algorithm is executed in the secondary processor structure for carrying out the time-integral checking. The parameters for the parameterization of the parameterized algorithm are expediently stored in the shared memory. The parameterized algorithm is preferably stored in a read-only memory (ROM or Flash-ROM) as a program, to which the secondary processor structure can read. To carry out the time-integral checking, it is preferred for the main processor structure to carry out a change in the parameters in a volatile shared memory so that the test range is gradually increased (time-integral checking).
Weitere bevorzugte Ausführungsformen ergeben sich aus den Unteransprüchen und der nachfolgenden Beschreibung eines Ausführungsbeispiels an Hand von Figuren.Further preferred embodiments will become apparent from the subclaims and the following description of an embodiment with reference to figures.
Es zeigenShow it
Die Mikroprozessorschaltung in
Die Hauptprozessorstruktur
Die Nebenprozessorstruktur
Soll nun in der beispielhaft dargestellten Anordnung aus drei Kernen
Da die Überprüfung durch das Kernredundanzprinzip, wie sie bei der Hauptprozessorstruktur durchgeführt wird, in Bezug auf die Nebenprozessorstruktur nicht übertragbar ist, wird ein alternatives (erstes) Prüfverfahren angewendet, welches eine ausgedehnte und andauernde Überprüfung der Nebenprozessorstruktur zur Laufzeit ermöglicht.Since the kernel redundancy check, as performed on the main processor fabric, is not transferable with respect to the slave processor structure, an alternative (first) check method is used which allows for extended and ongoing checking of the slave processor structure at runtime.
Die Erfindung sieht vor, einen Mehrkernprozessor unter verschiedenen Kombinationen von Kernredundanz (Absicherung) und/oder Parallelprozessierung (Mehrleistung) so zu gestalten, dass durch einen gezielten Überwachungsalgorithmus, welcher verteilt ausgeführt wird, unter Einbeziehung verschiedener Chip-Resourcen wie Flash, RAM, etc. auch sicherheitsgerichtete Software auf nicht-redundanten Kernen ausgeführt werden kann.The invention provides for designing a multicore processor under various combinations of core redundancy (protection) and / or parallel processing (additional power) such that a targeted monitoring algorithm, which is carried out in a distributed fashion, incorporates various chip resources, such as flash, RAM, etc. Safety-related software can also be executed on non-redundant cores.
Bevorzugt umfasst die Nebenprozessorstruktur
Die Betriebssysteme der Hauptprozessorstruktur
Besonders bevorzugt handelt es sich bei den Betriebssystemen in der Hauptprozessorstruktur
Die Hauptprozessorstruktur
Die von der Prüfeinrichtung durchgeführten Prüfschritte werden bevorzugt durch ein entsprechend ausgeführtes Programmmodul (siehe
Als Bestandteil der weiteren Prüfeinrichtung umfasst die Mikroprozessorschaltung Bus-Komparatoren K1, K2, K3, welche insbesondere so weit wie möglich räumlich verteilt auf dem Chip angeordnet sind. Mittels der Bus-Komparatoren K1 bis K3 kann je nach deren Verknüpfung überprüft werden, ob an den Bussträngen
Eine Verbindung der Busstränge untereinander wird durch zwei in der Mikroprozessorschaltung vorgesehene Bus-Multiplexer
Der Shared-Speicher
Die dargestellte Mikroprozessorstruktur kann auch so aufgebaut sein, dass die vorhandenen Busstränge für einzelne Teilaufgaben genutzt werden können, sofern diese verschiedenen Busstränge verschiedenen Zwecken, im Sinne von Funktionen, dienen und nicht lediglich aus Sicherheitsgründen redundant, im Sinne von mehrfach, vorhanden sind und daher an das Parallelverarbeitungsprinzip gebunden sind. Selbstverständlich kann dennoch in geeigneter Weise unabhängig voneinander z. B. ein IO-Zugriff und ein Zugriff auf einen Flash-Speicher parallel erfolgen, sowohl für funktionale, im Sinne von ansteuerndem Charakter, als auch diagnostischer, im Sinne von pfadüberprüfenden Zwecken.The microprocessor structure shown can also be constructed so that the existing bus strands can be used for individual subtasks, provided that these different bus strands serve different purposes, in terms of functions, and not only for security redundant, in the sense of multiple, are present and therefore the parallel processing principle are bound. Of course, nevertheless, in a suitable manner independently z. B. IO access and access to a flash memory in parallel, both for functional, in the sense of driving character, as well as diagnostic, in the sense of path-checking purposes.
In
Die beschriebene Hardware-Struktur bietet die Möglichkeit, von der Hauptprozessorstruktur
Nach einer weiteren bevorzugten Ausführungsform der Erfindung hat nicht jede Prozessorstruktur
Bei der durch die Prüfeinrichtung durchgeführten Prüfung, welche im einfachsten Fall durch eine rein programmtechnische Maßnahme (Software-Algorithmus) oder ein entsprechendes Softwaremodul gebildet sein kann, schreibt zumindest einer der überwachenden Kerne
An Stelle eines gesondert definierten Speicherbereichs
Das zur Prüfung verwendete Programm ist vorzugsweise im der Nebenprozessorstruktur
Bei dem beispielgemäßen Prüfalgorithmus (zeitintegrale Prüfung) wird zunächst der überwachte Kern
Ein in Kern
Vorzugsweise handelt es sich bei dem Algorithmus zur zeitintegralen Überprüfung um einen parametrisierbaren Algorithmus. Vorteilhafterweise ist damit eine Überprüfung besonders einfach durchführbar.Preferably, the time-integral checking algorithm is a parameterizable algorithm. Advantageously Thus a review is particularly easy to carry out.
Vorstehend genannter parametrierbarer Algorithmus kann beispielsweise aus einem maschinennahen Programmcode bestehen, welcher Anweisungen umfasst, die nach Maßgabe der Parameter an Hand verschiedener Entscheidungen intern verzweigen und dadurch die ausgewählten Passagen anspringen und ausführen.For example, the parametric algorithm mentioned above can consist of a machine-oriented program code which includes instructions which internally branch according to the parameters on the basis of various decisions and thereby start and execute the selected passages.
Für den Fall, dass der überwachende Kern vom selben oder im wesentlichen ähnlichen Typ wie der überwachte Kern ist, so kann nach einer bevorzugten Ausführungsform im überwachenden Kern ein Duplikat des parametrierbaren Algorithmusses des überwachten Kerns ausgeführt werden.In the event that the supervisory core is of the same or substantially similar type as the monitored core, then according to a preferred embodiment, a replica of the parameterizable algorithm of the monitored core may be executed in the supervisory core.
Da der überwachende Kern oder besser gesagt, die überwachende Hauptprozessorstruktur
Bestandteil der Überprüfung sind vorzugsweise Prüfschritte, bei denen sämtliche Ankopplungen des überwachten Kerns B an die Bus-Multiplexer, die interne (einfach ausgeführte) Struktur des überwachten Kerns B einschließlich Register-Set und Arithmetische Logik-Einheit
Bei der zeitintegralen Überprüfung werden vorzugsweise alle Operationen (Befehlssatz, wie z. B. Lesen, Schreiben, Rechenoperationen) der Nebenprozessorstruktur
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- DE 19529434 A1 [0002] DE 19529434 A1 [0002]
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE201110007467 DE102011007467A1 (en) | 2010-04-28 | 2011-04-15 | Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102010028327.4 | 2010-04-28 | ||
DE102010028327 | 2010-04-28 | ||
DE201110007467 DE102011007467A1 (en) | 2010-04-28 | 2011-04-15 | Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102011007467A1 true DE102011007467A1 (en) | 2011-11-03 |
Family
ID=44786623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE201110007467 Withdrawn DE102011007467A1 (en) | 2010-04-28 | 2011-04-15 | Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102011007467A1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102015106193A1 (en) | 2015-04-22 | 2016-10-27 | Audi Ag | Switching of a motor vehicle electrical system when voltage drops |
DE102016125240A1 (en) * | 2016-12-21 | 2018-06-21 | Endress+Hauser SE+Co. KG | Electronic circuit for a field device of automation technology |
US10214189B2 (en) | 2012-10-16 | 2019-02-26 | Continental Teves Ag & Co. Ohg | Interface for interchanging data between redundant programs for controlling a motor vehicle |
DE102020119297A1 (en) | 2020-07-22 | 2022-01-27 | Endress+Hauser SE+Co. KG | Method for monitoring a first processor of a sensor module by a second processor |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19529434A1 (en) | 1995-08-10 | 1997-02-13 | Teves Gmbh Alfred | Microprocessor system for safety-critical regulations |
-
2011
- 2011-04-15 DE DE201110007467 patent/DE102011007467A1/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19529434A1 (en) | 1995-08-10 | 1997-02-13 | Teves Gmbh Alfred | Microprocessor system for safety-critical regulations |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10214189B2 (en) | 2012-10-16 | 2019-02-26 | Continental Teves Ag & Co. Ohg | Interface for interchanging data between redundant programs for controlling a motor vehicle |
DE102015106193A1 (en) | 2015-04-22 | 2016-10-27 | Audi Ag | Switching of a motor vehicle electrical system when voltage drops |
DE102015106193B4 (en) * | 2015-04-22 | 2019-11-28 | Audi Ag | Switching of a motor vehicle electrical system when voltage drops |
DE102016125240A1 (en) * | 2016-12-21 | 2018-06-21 | Endress+Hauser SE+Co. KG | Electronic circuit for a field device of automation technology |
DE102020119297A1 (en) | 2020-07-22 | 2022-01-27 | Endress+Hauser SE+Co. KG | Method for monitoring a first processor of a sensor module by a second processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2641176B1 (en) | Microprocessorsystem with fault tolerant architecture | |
EP1917592B1 (en) | Computer system with at least two execution units and a comparison unit and method for controlling the same | |
EP2550599B1 (en) | Control computer system, method for controlling a control computer system, and use of a control computer system | |
DE102008033675B4 (en) | Dual core engine control module architecture | |
EP1952239A1 (en) | Apparatus and method for eliminating errors in a system having at least two execution units with registers | |
EP2513796B1 (en) | Method for operating a processor | |
DE102010013349A1 (en) | Computer system and method for comparing output signals | |
DE112016004678T5 (en) | A method of executing programs in an electronic system for functional security applications comprising a plurality of processors, corresponding system and computer program product | |
DE102015003194A1 (en) | Method and device for handling safety-critical errors | |
WO2007017396A2 (en) | Method and device for monitoring operations of computer system | |
WO2018134023A1 (en) | Redundant processor architecture | |
DE102011007467A1 (en) | Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components | |
DE102011011333B4 (en) | Read to peripherals and write from peripherals with time-separated, redundant processor execution | |
WO2007057270A1 (en) | Program-controlled unit and method for the operation thereof | |
EP1615087A2 (en) | Control and regulation unit | |
WO2005045665A1 (en) | Method and device for operand processing in a processor unit | |
DE102004037713A1 (en) | Method, operating system and computing device for executing a computer program | |
DE102005037213A1 (en) | Operating modes switching method for use in computer system, involves switching between operating modes using switching unit, where switching is triggered by signal generated outside system, and identifier is assigned to signal | |
EP2228723B1 (en) | Method for error treatment of a computer system | |
DE102004051966A1 (en) | Method, operating system and computing device for executing a computer program | |
EP1915687A1 (en) | Method and device for control of a computer system with at least two execution units | |
DE102018210733A1 (en) | Method for monitoring at least one computing unit | |
DE102012011872B4 (en) | Control device with a bus diagnostic function | |
EP2662773B1 (en) | Redundant multi-processor system and corresponding method | |
WO2007017388A1 (en) | Method and device for analyzing processes in a computer system having a plurality of execution units |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R163 | Identified publications notified |
Effective date: 20111024 |
|
R012 | Request for examination validly filed | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |