WO2007017444A1 - Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen - Google Patents

Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen Download PDF

Info

Publication number
WO2007017444A1
WO2007017444A1 PCT/EP2006/064976 EP2006064976W WO2007017444A1 WO 2007017444 A1 WO2007017444 A1 WO 2007017444A1 EP 2006064976 W EP2006064976 W EP 2006064976W WO 2007017444 A1 WO2007017444 A1 WO 2007017444A1
Authority
WO
WIPO (PCT)
Prior art keywords
memory
data
bus
test data
microprocessor system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/EP2006/064976
Other languages
English (en)
French (fr)
Inventor
Wolfgang Fey
Andreas Kirschbaum
Adrian Traskov
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Continental Teves AG and Co OHG
Original Assignee
Continental Teves AG and Co OHG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Continental Teves AG and Co OHG filed Critical Continental Teves AG and Co OHG
Priority to JP2008525549A priority Critical patent/JP2009505188A/ja
Priority to US12/063,458 priority patent/US9529681B2/en
Priority to EP06792655A priority patent/EP1913477A1/de
Publication of WO2007017444A1 publication Critical patent/WO2007017444A1/de
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature

Definitions

  • Microprocessor system for controlling or regulating at least partially safety-critical processes
  • the invention relates to a microprocessor system according to claim 1 and its use in motor vehicle control devices.
  • the present invention has for its object to provide an alternative binuclear microprocessor system, which also includes a full size memory and a test data memory for storing redundancy information associated with the original data stored in the complete memory, and wherein the microprocessor system over a corresponding binuclear microprocessor system increased error detection rate white st.
  • the microprocessor system comprises two central processing units integrated in a chip housing.
  • Each arithmetic unit is assigned its own bus system (first and second bus) so that it is also redundant.
  • At least one complete memory is arranged on the first bus.
  • At least one test data memory is located on the second bus system, which has a reduced storage capacity compared to the complete memory on the first bus system.
  • test data memory on the second bus test data are stored, which are related to data of the memory on the first bus system. Storing the test data is used to detect typical data memory errors that may occur in rare cases when writing or reading. Detecting such errors can also be accomplished by having the full memory duplicate and storing the data twice in identical form. However, this is expensive because the memory occupies a significant part of the manufacturing cost of a chip. It has been found that, in accordance with the microprocessor system according to the present invention, sufficient error detection can also be performed with a redundancy memory which is reduced in storage space requirement, the test data memory.
  • a check information or a Check value (eg parity information, Hamming code or the like) stored in the test data memory.
  • this may be a 1 bit width parity bit.
  • More complex coding methods, eg Hamming codes, can also enable error correction and detect multiple errors.
  • the parity information can be summarized word by word and / or from several data words of the complete memory (block by block test data coding).
  • only part of the complete memory is protected by a check data memory on the second bus.
  • a check data memory on the second bus.
  • the bus systems also include comparison and / or driver components, which enable the data exchange and / or comparison of data between the two bus systems.
  • a per se known hardware test data generator is arranged, which is realized for example by logic gates.
  • the necessary for the detection of memory errors fürInformationen are therefore not generated by a central processing unit (CPU), but by a so-called, physically separated from the CPU hardware test data generator.
  • a hardware test data generator is preferably a substantially hard-wired semiconductor structure, which independently performs certain work steps for data processing and / or signal processing according to a predetermined logic without the help of a central processing unit.
  • the operations performed by the hardware generator could in principle also be carried out by the central processing unit, this, in addition to a possibly increased error rate, is usually associated with a higher clock cycle consumption, which would greatly increase the runtime.
  • the complete memory is preferably a read / write memory.
  • a read-only memory for example ROM, Otp-ROM, EPROM, EEPROM or Flash-ROM
  • ROM read-only memory
  • a device for address error detection is implemented in the microprocessor system according to the invention.
  • This is in particular designed so that means are provided which incorporate the address of the data to be protected in the calculation of the test data.
  • the test data which are, for example, check bits, are most preferably calculated not only on the basis of the data bits, but on the basis of the data to be protected and the associated address. In this way, addressing errors can be detected while reading the data.
  • the address celebration recognition is preferably present on each of the two bus systems.
  • An alternatively preferred means for address error detection consists in an additionally implemented in the microprocessor system device that performs in the background one or more tests for address error detection.
  • This type of error detection is expediently not performed in parallel during write / read accesses. Rather, this error detection measure is carried out in particular only in the context of a periodic separate check in which there are preferably no further significant CPU activities.
  • the alternative address error detection described here can be implemented as software or as a hardware measure. The means described here can be executed in particular within the CPU or within the hardware state machine as in the manner of a built-in self-test.
  • the memory is preferably written with a predefined pattern and then read out.
  • the pattern can be particularly preferably designed such that possible decoding errors or driving errors deliberately lead to a corruption of the data. During readout, this intentionally induced error is then detected.
  • an addressing error detection means is preferably implemented in which the address of the memory cell is written to a memory cell and then checked.
  • test data memory which is used according to the invention is, in principle, a conventional read / write memory, but with a reduced memory size compared to the full memory.
  • microprocessor systems are integrated in a common chip housing and are preferably operated isochronously. Preferably, both systems are arranged on a common semiconductor material.
  • the microprocessor system comprises two bus systems, which preferably each consist of a data bus, address bus and control bus.
  • the read-write memory s
  • at least one read-only memory is also provided for operating the microprocessor system.
  • the term read-only memory is understood to mean a non-volatile memory, at least for a certain time, such as in particular of the ROM, flash-ROM or OTP-ROM type.
  • the redundancy concept which is preferred, is also transferred to the read-only memory, then it is provided that it is ensured by appropriate test information that the data of the read-only memory are protected. This can be achieved in particular by a smaller read-only memory on the second bus, which contains suitable test information instead of the data.
  • test data are additionally stored on the first bus in the physical memory or at least in the immediate vicinity of the full read / write memory.
  • In the immediate vicinity means that the corresponding chip structures adjacent to each other, so that the necessary low duration of the data can be maintained.
  • the microprocessor system is preferably constructed such that during a read cycle the data of the complete memory is compared with test data associated with this data by one or more hardware test units, which are / are positioned in particular in or in the vicinity of the data memory area.
  • the hardware correction unit (s) correct the data in the event of an error using the test data. This correction makes it possible, for example, to error, such as a wrong bit, easily correct, so that the microprocessor system does not need to be turned off. Depending on the complexity of the test word, even more complicated errors can be intercepted.
  • FIG. 1 a dinuclear integrated microcontroller with a data memory and additional test memory.
  • the microcontroller in Fig. 1 comprises two central processing units (CPU) 1, 2, which operate isochronous. Both microcomputers operate the same program. Each unit is separately assigned to an address and data bus. At CPU 1, a complete data memory 7 is connected, which is secured in part by a test data memory 51 on the second bus.
  • the microprocessor system further comprises a comparator 3 designed as a hardware element, with which the pending addresses and data of the two bus systems are constantly compared with one another. If not, an error signal is generated.
  • the components usually present in microprocessor systems such as input / output units, read-only memory, etc., are not shown in more detail in the figures. These components, not shown, essentially correspond to the core-redundant microcontroller described in WO99 / 35543.
  • Test data memory 51 on the second bus has compared to memory 7 by a factor of 8 reduced memory size.
  • test data are stored, which are generated virtually simultaneously each time data is written by CPU 1 in memory 7 by hardware generator 6.
  • the writing process can be carried out in principle without increased clock cycle consumption.
  • the test data already generated for memory 51 are stored again in the memory module of the memory 7 in other memory addresses 5 of this memory.
  • the codes used for the error correction and for the Error detection can be identical or different, so that the test data is either identical or different.
  • test data memory 5 is arranged in the spatial vicinity of the data memory 7, so that a correction of the data can take place within a short time and is therefore still possible within the scope of the given timing.
  • the check data generating method e.g., Hamming code
  • the available data is simultaneously made available to CPU 1 and CPU 2 via the bus drivers contained in block 3.
  • memory 51 is also addressed parallel to the data read from CPU 2 via address decoder 9.
  • Memory 51 also contains test data for error detection, which are in particular checksums of the data in memory 7. If data and test data do not match, an error is also detected. An error detection also takes place on the second bus, but this refers to data which may have been corrected in the area of the first bus. This check is made in hardware comparator 4, which can also generate an error signal.
  • the test data memory 5 is arranged in the spatial vicinity of the data memory 7, so that a correction of the data can take place within a short time and is therefore still possible within the scope of the given timing.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Mikroprozessorsystem (50) zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen umfassend zwei in einem Chipgehäuse integrierte Zentralrecheneinheiten (1,2), ein erstes und ein zweites Bussystem, zumindest einen vollständiger Speicher (7) am ersten Bussystem, mindestens einen Prüf datenspeicher (51) am zweiten Bussystem, welcher gegenüber dem vollständige Speicher am ersten Bussystem einen reduzierten Speicherumfang hat und in dem Prüfdaten gespeichert sind, die mit Daten des Speichers (7) am ersten Bussystem zusammenhängen, wobei die Bussysteme Vergleichs- und/oder Treiberkomponenten umfassen, welche den Datenaustausch und/oder Vergleich von Daten zwischen den beiden Bussystemen ermöglichen und wobei zumindest am zweiten Bussystem ein Hardware-Prüf datengenerator (4) angeordnet ist, wobei zumindest ein Teil des vollständigen Speichers am ersten Bus mittels eines weiteren Prüfdatenspeichers (5) und Prüfdaten am ersten Bus zusätzlich abgesichert ist. Die Erfindung betrifft außerdem die Verwendung des obigen Mikroprozessorsystems in Kraftfahrzeugsteuergeräten.

Description

Mikroprozessorsystem zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen
Die Erfindung betrifft ein Mikroprozessorsystem gemäß Anspruch 1 und dessen Verwendung in Kraftfahrzeugsteuergeräten .
Aus der DE 195 29 434 Al (P 7959) geht ein Mikroprozessorsystem für sicherheitskritische Anwendungen gemäß dem Oberbegriff von Anspruch 1 hervor. In diesem Mikroprozessorsystem sind aus Gründen der Redundanz zwei gleichartige Mikroprozessorkerne (Kernredundanz) vorgesehen, welche taktsynchron und parallel das gleiche Programm abarbeiten. Die den Mikroprozessorsystemen zugeordneten Bussysteme sind ebenfalls zweifach vorhanden, jedoch ist der Speicher aus Kostengründen nicht vollsymmetrisch aufgebaut. Es hat sich gezeigt, dass eine hohe Fehlererkennungsrate erreicht werden kann, wenn an einem der beiden Bussysteme lediglich Prüfdaten in einem Prüfdatenspeicher mit geringerem Speicherumfang gespeichert werden, welche den vollständigen Daten im vollständigen Speicher eindeutig zugeordnet sind. Damit beiden Kernen jeweils alle Daten redundant zur Verfügung stehen, wird ständig ein Vergleich der vollständigen Daten mit den Prüfdaten unter Verwendung von Hardware-Generatoren durchgeführt. Die Hardware-Generatoren können entweder Prüfdaten erzeugen oder die Prüfdaten zum Vergleich mit Hilfe der vollständigen Daten vervollständigen (Datenfehlerkorrektur ) .
Die vorliegende Erfindung setzt sich zum Ziel, eine alternatives zweikerniges Mikroprozessorsystem anzugeben, welches ebenfalls einen vollständigen Speicher und einen Prüfdatenspeicher mit geringerer Größe zur Speicherung von Redundanzinformationen umfasst, welche den im vollständigen Speicher gespeicherten Originaldaten zugeordnet sind, und wobei das Mikroprozessorsystem gegenüber entsprechenden zweikernigen Mikroprozessorsystem eine erhöhte Fehlererkennungsrate auf- wei st .
Diese Aufgabe wird erfindungsgemäß gelöst durch das Mikroprozessorsystem gemäß Anspruch 1.
Das Mikroprozessorsystem gemäß der Erfindung umfasst zwei in einem Chipgehäuse integrierte Zentralrecheneinheiten.
Jeder Recheneinheit ist ein eigenes Bussystem (erster und zweiter Bus) zugeordnet, so dass dieses ebenfalls redundant ausgeführt ist.
An dem ersten Bus ist zumindest ein vollständiger Speicher angeordnet. Am zweiten Bussystem befindet sich mindestens ein Prüfdatenspeicher, welcher gegenüber dem vollständigen Speicher am ersten Bussystem einen reduzierten Speicherumfang hat.
Im Prüfdatenspeicher am zweiten Bus werden Prüfdaten gespeichert, die mit Daten des Speichers am ersten Bussystem zusammenhängen. Das Speichern der Prüfdaten dient zur Erkennung von typischen Datenspeicherfehlern, welche bei Schreiboder Leseoperationen in seltenen Fällen vorkommen können. Die Erkennung solcher Fehler kann auch dadurch erfolgen, dass der vollständige Speicher doppelt vorhanden ist und die Daten zweimal in identischer Form gespeichert werden. Dies ist jedoch kostenintensiv, da der Speicher einen beträchtlichen Teil der Herstellungskosten eines Chips einnimmt. Es hat sich gezeigt, dass entsprechend dem Mikroprozessorsystem nach der vorliegenden Erfindung eine ausreichende Fehlererkennung auch mit einem im Speicherplatzbedarf reduzierten Redundanzspeicher, dem Prüfdatenspeicher vorgenommen werden kann. Hierzu wird beispielsweise zu einem Datenwort (Datum) im vollständigen Speicher eine PrüfInformation oder ein Prüfwert (z.B. Paritätsinformation, Hamming-Code oder dergleichen) im Prüfdatenspeicher gespeichert. Im einfachsten Fall kann das ein Paritätsbit der Breite 1 Bit sein. Komplexere Codierungsverfahren, z.B. Hamming-Codes können auch eine Fehlerkorrektur ermöglichen sowie mehrfache Fehler erkennen. Die Paritätsinformation kann wortweise und/oder aus mehreren Datenworten des vollständigen Speichers zusammenge- fasst (blockweise Prüfdatenkodierung) gebildet sein.
Bevorzugt ist nur ein Teil des vollständigen Speichers durch einen Prüfdatenspeicher am zweiten Bus abgesichert. In diesem Fall gibt es folglich Speicherbereiche im vollständigen Speicher, die nicht gegen Fehler abgesichert sind. Diese Speicherbereiche können mit weniger wichtigen Programmfunktionen gefüllt werden, welche nicht sicherheitskritisch sind. Es ist aber auch möglich, dass der gesamte vollständige Speicher durch den Prüfdatenspeicher am zweiten Bus abgesichert ist.
Die Bussysteme umfassen außerdem Vergleichs- und/oder Treiberkomponenten, welche den Datenaustausch und/oder Vergleich von Daten zwischen den beiden Bussystemen ermöglichen.
Zumindest am zweiten Bussystem ist ein an sich bekannter Hardware-Prüfdatengenerator angeordnet, welcher beispielsweise durch logische Gatter realisiert ist. Die für die Erkennung von Speicherfehlern notwendigen PrüfInformationen werden demzufolge nicht von einer Zentralrecheneinheit (CPU) erzeugt, sondern durch einen sogenannten, physikalisch von der CPU getrennt angeordneten Hardware-Prüfdatengenerator . Ein Hardware-Prüfdatengenerator ist vorzugsweise eine im wesentlichen festverdrahtete Halbleiterstruktur, welche nach einer vorgegebenen Logik bestimmte Arbeitsschritte zur Datenverarbeitung und/oder Signalverarbeitung selbstständig ohne Hilfe einer Zentralrecheneinheit durchführt. Die vom Hardware-Generator durchgeführten Operationen könnten zwar im Prinzip auch von der Zentralrecheneinheit durchgeführt werden, jedoch ist dies - neben einer möglichen erhöhten Fehlerrate - in der Regel mit einem höheren Taktzyklenverbrauch verbunden, wodurch die Laufzeit stark erhöht werden würde .
Bei dem vollständigen Speicher handelt es sich bevorzugt um einen Schreib-/Lesespeicher . Es ist aber auch möglich, dass ein Nur-Lesespeicher (z.B. ROM, Otp-ROM, EPROM, EEPROM oder Flash-ROM) nach dem erfindungsgemäßen Prinzip abgesichert wird.
Das aus der DE 195 29 434 Al bekannte Verfahren der Absicherung mit einem Prüfdatenspeicher erfüllt zwar die für heutige Anwendungen erforderlichen Anforderungen an Verfügbarkeit, jedoch existieren außer den erwähnten Speicherfehlern auch zusätzliche Fehlerarten, welche sich durch die bekannte Architektur nicht absichern lassen. So lassen sich zum Beispiel Fehler auf dem Adress-Bus und Fehler des Adress- Dekoders nicht erkennen. Zwar würde eine blockweise Prüfda- tenkodierung zur Erzeugung von PrüfInformationen die Erkennung dieser zusätzlichen Fehlerarten zulassen, jedoch wäre dieses Verfahren auf die Anwendung eines Festwertspeichers beschränkt. Daher wird gemäß der Erfindung zumindest ein Teil des vollwertigen Speichers am ersten Bus mittels eines ebenfalls am ersten Bus angeordneten zusätzlichen weiteren Prüfdatenspeichers und entsprechenden Prüfdaten abgesichert. Hierdurch wird eine Erkennung der vorstehend erwähnten zusätzlichen Fehlerarten erreicht.
Vorzugsweise ist im Mikroprozessorsystem nach der Erfindung eine Einrichtung zur Adressfehlererkennung implementiert. Diese ist insbesondere so ausgestaltet, dass Mittel vorgesehen sind, welche die Adresse der abzusichernden Daten bei der Berechnung der Prüfdaten einbeziehen. Ganz besonders bevorzugt werden beim Schreiben insbesondere die Prüfdaten, welche z.B. Prüfbits sind, nicht nur an Hand der Datenbits berechnet, sondern an Hand der abzusichernden Daten und der zugehörigen Adresse. Auf diese Weise können Adressierungsfehler beim Lesen der Daten erkannt werden. Die Adressfeiererkennung ist vorzugsweise an jedem der beiden Bussysteme vorhanden .
Ein alternativ bevorzugtes Mittel zur Adressfehlererkennung besteht in einer zusätzlich im Mikroprozessorsystem implementierten Einrichtung, die im Hintergrund einen oder mehrere Tests zur Adressfehlererkennung durchführt. Diese Art der Fehlererkennung wird zweckmäßigwerweise nicht parallel während Schreib-/Lesezugriffen durchgeführt. Diese Fehlererkennungsmaßnahme wird vielmehr insbesondere nur im Rahmen einer periodischen gesonderten Prüfung durchgeführt, bei der bevorzugt keine weiteren wesentlichen CPU-Aktivitäten vorliegen. Die hier beschriebene alternative Adressfehlererkennung kann als Software oder als Hardware-Maßnahme ausgeführt sein. Die hier beschriebenen Mittel können insbesondere innerhalb der CPU oder innerhalb der Hardware State Maschine als nach Art eines eingebauten Selbsttests ausgeführt werden .
Gemäß dem Selbsttest wird bevorzugt der Speicher mit einem vordefinierten Muster (Pattern) beschrieben und anschließend ausgelesen. Das Muster kann besonders bevorzugt so ausgelegt sein, dass mögliche Decodierungsfehler oder Ansteurungsfeh- ler absichtlich zu einer Verfälschung der Daten führen. Beim Auslesen wird dieser absichtlich herbeigeführte Fehler dann erkannt . Zusätzlich oder alternativ zu den beiden vorstehend erwähnten Fehlererkennungseinrichtung ist bevorzugt ein Adressie- rungsfehlererkennungsmittel implementiert, bei dem in eine Speicherzelle die Adresse der Speicherzelle geschrieben und danach überprüft wird.
Ein Beispiel für die zuvor beschriebene Methode ist der sogenannte „Address-to-Data" Test. Gemäß diesem Test wird jede Speicherstelle mit dmn Zahlenwert der Adresse der Speicherstelle beschrieben:
Adresse Datum OxOO 0x00 0x01 0x01
Oxff Oxff
Bei einem Fehler wird dann eine Zahl nicht zurückgelesen, eine andere dafür doppelt.
Der Prüfdatenspeicher, der gemäß der Erfindung eingesetzt wird, ist im Prinzip ein herkömmlicher Schreib-/Lese- speicher, jedoch mit einem gegenüber dem vollständen Speicher reduzierten Speicherumfang.
Die Mikroprozessorsysteme sind in einem gemeinsamen Chipgehäuse integriert und werden bevorzugt taktsynchron betrieben. Bevorzugt sind beide Systeme auf einem gemeinsamen Halbleitermaterial angeordnet.
Das Mikroprozessorsystem umfasst zwei Bussysteme, welche bevorzugt jeweils aus einem Datenbus, Adressbus und Kontrollbus bestehen. Neben dem oder den Schreib-/Lesespeichern ist zum Betrieb des Mikroprozessorsystems natürlich auch zumindest ein Festwertspeicher vorhanden. Unter dem Begriff Festwertspeicher wird gemäß der Erfindung ein zumindest für eine gewisse Zeit nicht flüchtiger Speicher, wie insbesondere vom Typ ROM, Flash-ROM oder OTP-ROM verstanden. Entsprechend dem Prinzip der Kernredundanz ist es dabei nicht unbedingt nötig, dass an beiden Bussystemen vollständige bzw. inhaltlich identische Festwertwertspeicher vorhanden sind. Wenn das Redundanzkonzept, was bevorzugt ist, auch auf den Festwertspeicher übertragen wird, dann ist vorgesehen, dass durch entsprechende PrüfInformationen sichergestellt ist, dass die Daten des Festwertspeichers abgesichert sind. Dies kann insbesondere durch einen kleineren Festwertspeicher am zweiten Bus erreicht werden, welcher an Stelle der Daten geeignete PrüfInformation enthält.
Bevorzugt werden in dem Mikroprozessorsystem nach der Erfindung Prüfdaten zusätzlich am ersten Bus im physikalischen Speicher oder zumindest in unmittelbarer Nähe des vollwertigen Schreib-/Lesespeichers gespeichert. In unmittelbarer Nähe bedeutet, dass die entsprechenden Chipstrukturen aneinander angrenzen, so dass die notwendige geringe Laufzeit der Daten eingehalten werden kann.
Das Mikroprozessorsystem ist bevorzugt so aufgebaut, dass bei einem Lesezyklus die Daten des vollständigen Speichers mit diesen Daten zugeordneten Prüfdaten durch eine oder mehrere Hardware-Prüfeinheiten verglichen werden, welche insbesondere im oder in der Nähe des Daten-Speicherbereichs positioniert ist/sind. Die Hardware-Korrektureinheit (en) korrigieren die Daten im Falle eines Fehlers mit Hilfe der Prüfdaten. Durch diese Korrektur lassen sich beispielsweise Ein- fachfehler, wie z.B. ein falsches Bit, ohne weiteres korrigieren, so dass das Mikroprozessorsystem nicht abgeschaltet werden muss. Je nach Komplexität des Prüfwortes können so auch kompliziertere Fehler abgefangen werden. Ist eine Korrektur nicht erfolgreich, dass heißt, war der Fehler in den Daten so komplex, dass durch Verknüpfung mit den Prüfinformationen die korrigierten Daten immer noch fehlerhaft sind, so werden diese durch eine bevorzugt vorhandene weitere Vergleichseinheit, die die auf den parallelen Bussystemen anstehenden Daten vergleicht, entdeckt. Als Folge davon wird zweckmäßigerweise ein Fehlersignal auf einer geeigneten Fehlerleitung ausgegeben, welche insbesondere das Mikroprozessorsystem stilllegt oder von der weiteren Elektronik abkoppelt. Hierdurch wird beispielsweise in einem elektronischen Bremssystem wirksam verhindert, dass irrtümlich die Ventiltreiber angesteuert werden.
Im Gegensatz zu bekannten fehlerkorrigierenden/fehlererkennenden Mikroprozessoren, die das Prinzip der Kernredundanz nutzen, und in denen lediglich Mechanismen zur Erkennung/Korrektur von Fehlern in einer Speicherzelle vorhanden waren, ist es gemäß der Erfindung nun möglich, den gesamten Speicher abzusichern. Dies ermöglicht die Ausweitung des verwendeten Redundanzkonzepts vom Nur-Lesespeicher auch auf den Datenspeicher. Hierdurch lassen sich die Herstellungskosten unter Beibehaltung der vorhandenen Sicherheitsanforderungen weiter absenken.
Weitere bevorzugte Ausführungsformen ergeben sich aus den Unteransprüchen und der nachfolgenden Beschreibung eines Ausführungsbeispiels an Hand einer Figur.
Es zeigt Fig. 1 einen zweikernigen integrierten MikroController mit einem Datenspeicher und zusätzlichem Prüfspeicher .
Der MikroController in Fig. 1 umfasst zwei Zentralrecheneinheiten (CPU) 1, 2, die taktsynchron arbeiten. Beide Mikrocomputer arbeiten das gleiche Programm ab. Jede Einheit ist jeweils getrennt einem Adress- und Datenbus zugeordnet. An CPU 1 ist ein vollständiger Datenspeicher 7 angeschlossen, welcher zum Teil durch einen Prüfdatenspeicher 51 am zweiten Bus abgesichert ist. Das Mikroprozessorsystem umfasst weiterhin einen als Hardware-Element ausgeführten Vergleicher 3, mit dem die anstehenden Adressen und Daten der beiden Bussysteme ständig miteinander verglichen werden. Bei Nichtübereinstimmung wird ein Fehlersignal erzeugt. Zur vereinfachten Darstellung sind in den Figuren die bei Mikroprozessorsystemen üblicherweise vorhandenen Komponenten, wie Ein- gabe-/Ausgabeeinheiten, Nur-Lesespeicher, etc. nicht näher dargestellt. Diese nicht dargestellten Komponenten entsprechen im wesentlichen dem in der WO99/35543 beschriebenen kernredundanten MikroController.
Prüfdatenspeicher 51 am zweiten Bus besitzt gegenüber Speicher 7 einen um den Faktor 8 reduzierten Speicherumfang. In Speicher 51 werden Prüfdaten gespeichert, welche praktisch gleichzeitig bei jedem Schreibvorgang von Daten durch CPU 1 in Speicher 7 durch Hardware-Generator 6 erzeugt werden. Durch die Erzeugung der Prüfdaten ohne programmtechnische Mittel kann der Schreibvorgang im Prinzip ohne erhöhten Taktzyklenverbrauch durchgeführt werden. Zusätzlich werden im physikalischen Speichermodul des Speichers 7 in andere Speicheradressen 5 dieses Speichers die bereits für Speicher 51 erzeugten Prüfdaten noch ein weiteres Mal abgelegt. Die dabei verwendeten Codes für die Fehlerkorrektur und für die Fehlererkennung können identisch oder unterschiedlich ausgeführt sein, so dass die Prüfdaten entweder identisch oder unterschiedlich sind.
Beim Lesen wird Speicher 7 von CPU 1 über Adressdekoder 8 adressiert. Während des Lesevorgangs ist Hardware-Einheit 6 aktiv. In Hardware-Einheit 6 werden die Daten entsprechend dem Prüfdatenerzeugungsverfahren (z.B. Hamming-Code) überprüft und ggf. sofort korrigiert. Über die in Block 3 enthaltenen Bustreiber werden die anstehenden Daten gleichzeitig CPU 1 und CPU 2 zur Verfügung gestellt. Während des Lesevorgangs durch CPU 1 wird außerdem parallel zum Datenlesen von CPU 2 über Adressdekoder 9 Speicher 51 adressiert. Speicher 51 enthält ebenfalls Prüfdaten zur Fehlererkennung, welche insbesondere Prüfsummen der Daten in Speicher 7 sind. Falls Daten und Prüfdaten nicht zueinander passen, wird e- benfalls ein Fehler erkannt. Am zweiten Bus findet zwar auch eine Fehlererkennung statt, jedoch bezieht sich diese auf ggf. im Bereich des ersten Bus korrigierte Daten. Diese Prüfung wird in Hardware-Vergleicher 4 vorgenommen, welcher e- benfalls ein Fehlersignal erzeugen kann. Der Prüfdatenspei- cher 5 ist in räumlicher Nähe des Datenspeichers 7 angeordnet, damit eine Korrektur der Daten innerhalb kurzer Zeit erfolgen kann und damit noch im Rahmen des vorgegebenen Ti- mings möglich ist.

Claims

Patentansprüche
1. Mikroprozessorsystem (50) zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen umfassend zwei in einem Chipgehäuse integrierte Zentralrecheneinheiten (1, 2), ein erstes und ein zweites Bussystem, zumindest einen vollständiger Speicher (7) am ersten Bussystem, mindestens einen Prüfdatenspeicher (51) am zweiten Bussystem, welcher gegenüber dem vollständige Speicher am ersten Bussystem einen reduzierten Speicherumfang hat und in dem Prüfdaten gespeichert sind, die mit Daten des Speichers (7) am ersten Bussystem zusammenhängen, wobei die Bussysteme Vergleichs- und/oder Treiberkomponenten umfassen, welche den Datenaustausch und/oder Vergleich von Daten zwischen den beiden Bussystemen ermöglichen und wobei zumindest am zweiten Bussystem ein Hardware-Prüfdatengenerator (4) angeordnet ist, dadurch gekennzeichnet, dass zumindest ein Teil des vollständigen Speichers am ersten Bus mittels eines weiteren Prüfdatenspeichers (5) und Prüfdaten am ersten Bus zusätzlich abgesichert ist.
2. Mikroprozessorsystem nach Anspruch 1, dadurch gekennzeichnet, dass die weiteren Prüfdaten am ersten Bus durch einen zusätzlichen Prüfdatengenerator (6) am ersten Bus abgesichert sind.
3. Mikroprozessorsystem nach Anspruch 2, dadurch gekennzeichnet, dass der vollständige Speicher und/oder der Prüfdatenspeicher am ersten Bus und der Prüfdatenspeicher am zweiten Bus jeweils einen eigenen Adressdekoder (8,9) aufweisen .
4. Mikroprozessorsystem nach mindestens einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Prüfdaten, die am ersten Bus anstehen, im physikalischen Speicher oder zumindest in unmittelbarer Nähe des vollwertigen vollständigen Speichers gespeichert werden.
5. Mikroprozessorsystem nach mindestens einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass eine oder mehrere Vergleichsstrukturen in Hardware (3) implementiert ist/sind, welche während eines jeden Schreib- und/oder Lesevorgangs die anstehenden Adressen der Adressbusse und/oder die an den Datenbussen anstehenden Daten miteinander vergleicht, und bei abweichenden Adressen und/oder Daten ein Fehlersignal erzeugt.
6. Mikroprozessorsystem nach mindestens einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass bei einem Lesezyklus die Daten des vollständige Speichers vor dem Vergleich in Vergleichsstruktur (3) zunächst auf Fehler mittels dem dem vollständigen Speicher direkt an diesem Bus zugeordneten Prüfdatenspeicherbereich geprüft werden und im Falle eines Fehler die Daten korrigiert werden oder ein Fehlersignal erzeugt wird.
7. Mikroprozessorsystem nach mindestens einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass bei einem Lesezyklus die Daten des Speichers mit diesen Daten zugeordneten Prüfdaten durch eine Hardware-Prüfeinheit (6) verglichen werden, welche insbesondere im oder in der Nähe des Daten-Speicherbereichs positioniert sind, und eine Hardware-Korrektureinheit (6) die Daten im Falle eines Fehlers mit Hilfe der Prüfdaten korrigiert.
8. Mikroprozessorsystem nach mindestens einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass am ersten Bussystem ein Hardware-Prüfdatengenerator (6) angeordnet ist, welcher die Prüfdaten für Prüfdatenspeicher (5) erzeugt.
9. Verwendung der Mikroprozessorsysteme gemäß den obigen Ansprüchen in Kraftfahrzeugsteuergeräten, insbesondere in Kraftfahrzeugbremsensteuergeräten, Steuergeräten für Fahrwerksregelung, Steuergeräten für Sicherheitssysteme oder für entsprechende Kombinationssteuergeräte.
PCT/EP2006/064976 2005-08-11 2006-08-02 Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen Ceased WO2007017444A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2008525549A JP2009505188A (ja) 2005-08-11 2006-08-02 少なくとも部分的に安全上重大なプロセスの制御または調節用マイクロプロセッサシステム
US12/063,458 US9529681B2 (en) 2005-08-11 2006-08-02 Microprocessor system for controlling or regulating at least partly safety-critical processes
EP06792655A EP1913477A1 (de) 2005-08-11 2006-08-02 Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
DE102005038306.8 2005-08-11
DE102005038306 2005-08-11
DE102006036384.1 2006-08-02
DE102006036384A DE102006036384A1 (de) 2005-08-11 2006-08-02 Mikroprozessorsystem zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen

Publications (1)

Publication Number Publication Date
WO2007017444A1 true WO2007017444A1 (de) 2007-02-15

Family

ID=37727089

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2006/064976 Ceased WO2007017444A1 (de) 2005-08-11 2006-08-02 Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen

Country Status (6)

Country Link
US (1) US9529681B2 (de)
EP (1) EP1913477A1 (de)
JP (1) JP2009505188A (de)
KR (1) KR20080033393A (de)
DE (1) DE102006036384A1 (de)
WO (1) WO2007017444A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8365037B2 (en) * 2007-01-03 2013-01-29 GM Global Technology Operations LLC Vehicle parameter infrastructure security strategy
JP5509568B2 (ja) * 2008-10-03 2014-06-04 富士通株式会社 コンピュータ装置、プロセッサ診断方法、及びプロセッサ診断制御プログラム
DE102009018140A1 (de) * 2009-04-08 2010-10-21 Pilz Gmbh & Co. Kg Sichere Schalteinrichtung und modulares fehlersicheres Steuerungssystem
US9934117B2 (en) * 2015-03-24 2018-04-03 Honeywell International Inc. Apparatus and method for fault detection to ensure device independence on a bus

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0306348A2 (de) * 1987-09-04 1989-03-08 Digital Equipment Corporation Zweiwegeprozessoren mit Fehleruntersuchung in E/A-Lesungen
DE19529434A1 (de) * 1995-08-10 1997-02-13 Teves Gmbh Alfred Microprozessorsystem für sicherheitskritische Regelungen
US5909541A (en) * 1993-07-14 1999-06-01 Honeywell Inc. Error detection and correction for data stored across multiple byte-wide memory devices

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2509297B2 (ja) * 1987-08-31 1996-06-19 沖電気工業株式会社 自己訂正機能付半導体記憶装置及びマイクロコンピュ―タ
US4926426A (en) * 1988-08-30 1990-05-15 Unisys Corporation Error correction check during write cycles
DE4341082A1 (de) * 1993-12-02 1995-06-08 Teves Gmbh Alfred Schaltungsanordnung für sicherheitskritische Regelungssysteme
CA2240932C (en) * 1995-12-18 2002-03-26 Elsag International N.V. Processor independent error checking arrangement
DE19716197A1 (de) * 1997-04-18 1998-10-22 Itt Mfg Enterprises Inc Mikroprozessorsystem für sicherheitskritische Regelungen
DE19720618A1 (de) * 1997-05-16 1998-11-19 Itt Mfg Enterprises Inc Mikroprozessorsystem für Kfz-Regelungssysteme
DE19800311A1 (de) * 1998-01-07 1999-07-08 Itt Mfg Enterprises Inc Elektronische, digitale Einrichtung
DE19832060C2 (de) * 1998-07-16 2000-07-06 Siemens Ag Doppelbare Prozessoreinrichtung
US6393582B1 (en) * 1998-12-10 2002-05-21 Compaq Computer Corporation Error self-checking and recovery using lock-step processor pair architecture
DE10124027A1 (de) * 2001-05-16 2002-11-21 Continental Teves Ag & Co Ohg Verfahren,Mikroprozessorsystem für sicherheitskritische Regelungen und dessen Verwendung
JP5389440B2 (ja) * 2005-08-11 2014-01-15 コンチネンタル・テベス・アーゲー・ウント・コンパニー・オーハーゲー 少なくとも部分的に安全上重大なプロセスの制御または調節用マイクロプロセッサシステム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0306348A2 (de) * 1987-09-04 1989-03-08 Digital Equipment Corporation Zweiwegeprozessoren mit Fehleruntersuchung in E/A-Lesungen
US5909541A (en) * 1993-07-14 1999-06-01 Honeywell Inc. Error detection and correction for data stored across multiple byte-wide memory devices
DE19529434A1 (de) * 1995-08-10 1997-02-13 Teves Gmbh Alfred Microprozessorsystem für sicherheitskritische Regelungen

Also Published As

Publication number Publication date
US9529681B2 (en) 2016-12-27
EP1913477A1 (de) 2008-04-23
DE102006036384A1 (de) 2007-03-29
KR20080033393A (ko) 2008-04-16
US20100235680A1 (en) 2010-09-16
JP2009505188A (ja) 2009-02-05

Similar Documents

Publication Publication Date Title
EP0843853B1 (de) Microprozessorsystem für sicherheitskritische regelungen
DE102007045398A1 (de) Integriertes Mikroprozessorsystem für sicherheitskritische Regelungen
DE3876459T2 (de) Speicher und deren pruefung.
DE2225841C3 (de) Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
EP2100308B1 (de) Verfahren und halbleiterspeicher mit einer einrichtung zur erkennung von adressierungsfehlern
WO2002093287A2 (de) Verfahren, mikroprozessorsystem für sicherheitskritische regelungen und dessen verwendung
EP1588380B1 (de) Verfahren zur erkennung und/oder korrektur von speicherzugriffsfehlern und elektronische schaltungsanordnung zur durchführung des verfahrens
EP1913478B1 (de) Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen
DE102005016050A1 (de) Speicherfehlererkennungsvorrichtung und Verfahren zum Erkennen eines Speicherfehlers
EP1913477A1 (de) Mikroprozessorsystem zur steuerung bzw. regelung von zumindest zum teil sicherheitskritischen prozessen
EP1924916A2 (de) Speicheranordnung und betriebsverfahren dafür
DE10340236B4 (de) Anordnung mit einer Datenverarbeitungseinrichtung und einem Speicher
DE102009002786A1 (de) Verfahren zum Test eines Speichers sowie Steuervorrichtung mit Mitteln für einen Speichertest
DE102004059392B4 (de) Verfahren zur Neubelegung eines Befehlsspeichers, Subsystem zur Durchführung eines derartigen Verfahrens, sowie Mikrokontroller
DE102005016051B4 (de) Speicherüberprüfungsvorrichtung und Verfahren zum Überprüfen eines Speichers
EP1461689B1 (de) Verfahren und prüfeinrichtung zum entdecken von adressierungsfehlern in steuergeräten
EP1966696A1 (de) Verfahren zur erkennung einer versorgungsunterbrechung in einem datenspeicher und zur wiederherstellung des datenspeichers
EP1246066A2 (de) Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems
DE10360196A1 (de) Schaltungsanordnung und Verfahren zur Überwachung eines Adressdecoders
DE10360198B4 (de) Schaltungsanordnung und Verfahren zur Überwachung eines Adressdecoders
EP1428218A2 (de) Verfahren zur erkennung von speicherfehlern in elektronischen bremssystemen, rechnersystem und dessen verwendung
DE102004051936A1 (de) Verfahren und Vorrichtung zur Erhöhung der Verfügbarkeit für eine Speichereinheit und Speichereinheit
EP1639466A1 (de) Verfahren und vorrichtung zur fehlererkennung für einen cachespeicher und entsprechender cachespeicher
WO2007033905A1 (de) Datenverarbeitungssystem zum überprüfen und korrigieren eines datenwortes und betriebsverfahren dafür

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2006792655

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2008525549

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: KR

Ref document number: 1020087003366

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 200680029480.8

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2006792655

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 12063458

Country of ref document: US