DE4111072C3 - Verfahren zum Feststellen einer Störung in einem Mikrocomputersystem - Google Patents
Verfahren zum Feststellen einer Störung in einem MikrocomputersystemInfo
- Publication number
- DE4111072C3 DE4111072C3 DE4111072A DE4111072A DE4111072C3 DE 4111072 C3 DE4111072 C3 DE 4111072C3 DE 4111072 A DE4111072 A DE 4111072A DE 4111072 A DE4111072 A DE 4111072A DE 4111072 C3 DE4111072 C3 DE 4111072C3
- Authority
- DE
- Germany
- Prior art keywords
- task
- program
- execution
- programs
- carried out
- 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.)
- Expired - Fee Related
Links
Classifications
-
- 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/076—Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/22—Safety or indicating devices for abnormal conditions
-
- 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/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0715—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Debugging And Monitoring (AREA)
Description
Die Erfindung betrifft ein Verfahren zum Feststellen einer
Störung in einem Mikrocomputersystem, und betrifft insbesondere
ein Verfahren zum Feststellen von Störungen, welche
einen anormalen Betriebszustand, wie einen Systemabsturz,
einen nicht programmierten Systemstop u. ä. während einer
Multitasking-Verarbeitung in einem Mikrocomputersystem be
wirken.
Aus der Zeitschrift "IBM Technical Disclosure Bulletin"
Vol. 30, Nr. 11, April 1988, Seiten 272 bis 276 ist es bekannt,
zur Überwachung der normalen Ausführung von Aufgaben
einen Überwachungszeitgeber zu verwenden.
Überwachungszeitgeber werden ferner auch bei Mikrocomputersystemen
verwendet, um eine Störung oder eine anormale Programmausführung
festzustellen, die wahrscheinlich einen
Systemabsturz, einen nichtprogrammierten Systemstop oder
etwas ähnliches bewirken. In Abhängigkeit von den Umständen
ist es manchmal jedoch schwierig mit Hilfe eines Überwachungszeitgebers
zwischen einer normalen und einer anormalen
Programmausführung zu unterscheiden, da bei der herkömmlichen
Methode, bei welcher der Überwachungszeitgeber
verwendet wird, eine anormale Programmausführung festgestellt
wird, indem die Erzeugung eines Rücksetzimpulses nur
auf der Basis davon gesteuert wird, ob ein bestimmter
Schritt in dem Programm durchgeführt wurde oder nicht.
Folglich erfordert die herkömmliche Methode eine zusätzliche
komplizierte Hardware u. ä., um genauer zwischen einer
normalen und einer anormalen Programmausführung zu unterscheiden.
Zur Überwindung dieses Nachteils ist in der JP 58-1 54 052 A
ein Feststellverfahren vorgeschlagen, bei welchem eine vorherbestimmte
arithmetische Berechnung jedesmal dann durchgeführt
wird, wenn ein Verarbeitungsschritt, welcher unter
einer Anzahl Verarbeitungsschritte, welche ein gewünschtes
Programm bilden, entsprechend ausgewählt worden ist, durchgeführt
wird, ein impulsförmiges Signal jedesmal dann erzeugt
wird, wenn die arithmetische Berechnung ein vorgeschriebenes
Ergebnis erzeugt, und dann auf der Basis des
Zustands des impulsförmigen Signals unterschieden wird, ob
ein anormaler Zustand bei der Ausführung des Programms aufgetreten
ist oder nicht.
Aus der DE 29 39 194 A1 ist ein Verfahren und eine Schal
tungsanordnung zum Überwachen des ordnungsgemäßen Ablaufs
eines Programms bekannt, welches aus einer Reihe von gegebe
nenfalls mehrfach auszuführenden Unterprogrammen besteht,
wobei ein Fehlermeldesignal bei Feststellung eines fehler
haften Programmablaufs in einer im Echtzeitbetrieb arbeiten
den Datenverarbeitungsanlage erzeugt wird, wobei in die
Folge auszuführender Programmbefehle Prüfbefehle eingefügt
werden, deren Auftreten überwacht wird.
Das wesentliche dieses bekannten Verfahrens besteht darin,
daß lediglich die Übergangsstellen von einem Unterprogramm
zu einem anderen Unterprogramm der im Zuge der jeweiligen
Programmabwicklung auszuführenden Unterprogramme jeweils
durch ein eine Parameterangabe über die Ebene des zugehöri
gen Unterprogramms in bezug auf sämtliche gegebenenfalls
abzuwickelnden Unterprogramme und eine Angabe über die Häu
figkeit, in der das jeweilige Unterprogramm im Zuge des
Programmablaufs benutzt wird, aufweisendes Prüfbefehlswort
gekennzeichnet werden, und daß die im Zuge der jeweiligen
Programmabwicklung tatsächlich ermittelten Prüfbefehle als
Ist-Befehle für einen Vergleich mit einer vorgegebenen Soll-
Befehlsfolge bereitgestellt werden.
Bei diesem bekannten Verfahren kann nach der jeweiligen
Ausführung eines Ausführungsprogramms nicht mit Hilfe einer
Abfrage unterschieden werden, ob die Verarbeitung des Auf
gabenprogramms normal ausgeführt wurde oder nicht. Es wird
lediglich nach jeder Ausführung eines Unterprogramms eine
Zählerstandsänderung ausgeführt.
Aus der DE 33 22 074 A1 ist eine Notlaufeinrichtung für
mikrocomputer-gesteuerte Systeme bekannt, um eine Leerlauf-
Füllungsregelung in einem Kraftfahrzeug durchzuführen. Der
dabei verwendete Mikrocomputer weist Eingänge für Betriebs
parametern entsprechende Signal auf, ferner einen Signal
ausgang zur Abgabe von im Mikrocomputer erzeugten Steuersi
gnalen, sowie einen weiteren Ausgang zur Abgabe von regel
mäßigen Impulsen bei normalem Betrieb des Systems, wobei die
Impulse in einer Schaltung auf regelmäßiges Auftreten über
prüft werden. Es ist ferner ein Funktionsgenerator vorgese
hen, der ebenfalls Steuersignale abgibt und eine Logik in
Abhängigkeit von der Schaltung dem System die Steuersignale
des Mikrocomputers oder die Steuersignale des Funktionsgene
rators zuleitet. Das wesentliche dieser bekannten Notlauf
einrichtung besteht darin, daß die regelmäßigen Impulse als
Ausfall-Sicherheitsimpulse verwendet werden, und zwar zur
ständigen Überwachung der Steuerung, wobei die Schaltung
einen Reset-Eingang des Mikrocomputers im Störungsfall mit
einem Ausfallsicherheits-Signal ansteuert und wobei die
Steuersignale des als Notlauf-Funktionsgenerators verwende
ten Funktionsgenerators als Notlaufsignale dem System zu
geführt werden.
Aus der DE 30 08 036 A1 ist eine Überwachungseinrichtung für
programmgesteuerte Vorrichtungen bekannt, bei der an ver
schiedenen Stellen des Programms, insbesondere nach Teilpro
grammen, Kontroll-Bits bzw. Kontroll-Codeworte abgegeben und
in Registern eines Rechners eingespeichert werden. Am Ende
des Gesamtprogramms werden die Registerinhalte mit den In
halten von Norm-Registern oder Festwerten verglichen und bei
Nicht-Übereinstimmung ein Neustart des Prozesses ausgelöst.
Weiter kann bei dieser bekannten Überwachungseinrichtung zur
Erkennung von einem falschen bzw. richtigen Programmdurch
lauf ein Kontrollimpuls erzeugt werden.
In neuen Mikrocomputer-Systemen ist häufig ein sogenanntes
Multitasking angewendet, bei welchem ein Auftrag in eine
Anzahl Aufgaben aufgeteilt wird, und Programme für die jeweiligen
Aufgaben zu verschiedenen Zeiten aktiviert werden
und zu verschiedenen Zeitabschnitten ablaufen. Da jedoch in
einem Multitasking-System die Programme für die jeweiligen
Aufgaben durch ein Unterbrechungs-Verarbeitungsprogramm
aktiviert werden, können anormale Ausführungen, welche in
einem oder mehreren der Programme für die Aufgaben auftreten,
nicht festgestellt werden, wenn nicht die anormale
Durchführung oder Störung in dem Programm unter der Überwachung
eines Überwachungszeitgebers vorkommt.
Es soll daher ein Verfahren zum Feststellen
einer Störung in einem Mikrocomputer-System geschaffen
werden, bei welchem eine Störungsfeststellung in dem Mikrocomputer-System
sicher gewährleistet werden kann, welches
ein Programm durch Multitasking ausführt.
Gemäß der Erfindung
ist dies bei einem Verfahren zum Feststellen einer
Störung in einem Mikrocomputer-System durch die Merkmale im
kennzeichnenden Teil des Anspruchs 1 erreicht. Vorteilhafte
Weiterbildungen und Ausgestaltungen der Erfindung ergeben
sich aus den Unteransprüchen.
Entsprechend dem erfindungsgemäßen Verfahren wird in dem
Fall, daß ein gegebener Auftrag in eine Anzahl Aufgaben
aufgeteilt wird, und die Programme für diese Aufgaben, welche
nachstehend als "Aufgaben-Programme" bezeichnet sind,
in der Art eines Multitasking durchgeführt werden, eine
Prüfung durchgeführt, um zu bestimmen, ob jedes der Aufgaben-Programme
normal durchzuführen ist oder nicht. Datensetzeinrichtungen
sind beispielsweise in allen entsprechenden
Aufgaben-Programmen außer einem vorgeschriebenen Aufgaben-Programm
vorgesehen, und der Inhalt jeder Datensetzeinrichtung
wird entsprechend der Ausführungsbedingung des
zugeordneten Aufgaben-Programms geändert. Zu dem Zeitpunkt,
an welchem das vorgeschriebene Aufgaben-Programm ausgeführt
wird, werden die Inhalte aller Datensetzeinrichtungen geprüft,
um zu bestimmen, ob alle Aufgaben-Programme normal
durchzuführen sind oder nicht.
Jedes Aufgaben-Programm ist selbst imstande zu unterscheiden,
ob es normal durchgeführt worden ist oder nicht, und
der Inhalt der zugeordneten Datensetzeinrichtung wird in
Abhängigkeit von dem Ergebnis dieser Unterscheidungsoperation
geändert. Die Inhalte aller Datensetzeinrichtungen
werden zum Zeitpunkt der Ausführung des vorgeschriebenen
Aufgaben-Programms geprüft.
Die Spezifikationen der einzelnen Aufgaben-Programme, wie
ihre Aktivierungshäufigkeit, ihr Aktivierungstiming u. ä.,
sind im voraus bekannt. Daher ist es durch Prüfen der Änderungen
in den Inhalten der Datensetzeinrichtungen auf der
Basis der bekannten Spezifikationen möglich, zu unterscheiden,
ob die jeweiligen Aufgaben-Programme normal ausgeführt
wurden oder nicht. Folglich wird ein doppeltes Prüfen
durchgeführt, um die anormale Ausführung der Aufgaben-Programme
mit hoher Zuverlässigkeit festzustellen.
Nachfolgend wird die Erfindung anhand von bevorzugten Ausführungsformen
unter Bezugnahme auf die anliegenden Zeichnungen
im einzelnen erläutert. Es zeigt
Fig. 1 eine schematische Darstellung einer Ausfüh
rungsform eines Verbrennungsmotor-Steuersy
stems für Fahrzeuge, in welchem die Ausführung
eines Steuerprogramms entsprechend dem erfin
dungsgemäßen Verfahren geprüft wird, und
Fig. 2 ein Flußdiagramm eines Steuerprogramms, wel
ches in einem Mikrocomputer ausgeführt wird,
welcher in dem Steuersystem der Fig. 1 vorge
sehen ist.
In Fig. 1 ist ein Verbrennungsmotor-Steuersystem 1 zum elektro
nischen Steuern des Betriebs eines Verbrennungsmotors 3 dar
gestellt, welchem Kraftstoff von einer Einspritzpumpe 2 einge
spritzt wird. Das System 1 hat einen Mikrocomputer 4. Ein Be
schleunigungsfühler 5 ist mit einem Gaspedal 6 verbunden, um
ein Beschleunigungssignal A zu erzeugen, welches das Betäti
gen (Drücken) des Gaspedals 6 anzeigt, und es ist ein Kühlmittel
temperaturfühler 7 vorgesehen, welcher ein Kühlmitteltempera
tur-Signal W erzeugt, welches die Temperatur des Motorkühl
mittels anzeigt. Ein Kraftstofftemperatur-Fühler 8 erzeugt
ein Kraftstofftemperatur-Signal F, welches die Temperatur des
Kraftstoffs in einem (nicht dargestellten) Kraftstoffbehälter
anzeigt, und ein Drehzahlfühler 9 erzeugt ein Drehzahlsignal
N, welches die Drehzahl des Verbrennungsmotors 3 anzeigt.
Die Signale A, W, F und N werden zum Umwandeln
in eine digitale Form an einen Analog-Digital-Umsetzer
(A/D-) 10 abgegeben,
und die entsprechenden digitalen Daten DA, DW, DF und DN, die
von dem A/D-Umsetzer 10 erhalten worden sind, werden in den
Mikrocomputer 4 als Daten eingegeben, welche die Betriebspa
rameter des Verbrennungsmotors 3 darstellen.
Der Mikrocomputer 4 herkömmlicher Ausführung weist eine Zen
traleinheit (CPU) 11, einen Festwertspeicher (ROM) 12, einen
Randomspeicher (RAM) 13 und eine Ein-/Ausgabeeinheit (E/A) 14
auf, welche durch einen Bus 15 miteinander verbunden sind.
Ein Steuerprogramm 20 (das nachstehend anhand von Fig. 2 er
läutert wird) zum Steuern des Betriebs des Verbrennungsmotors
3 ist in dem ROM 12 gespeichert, und das Steuerprogramm wird
in dem Mikrocomputer 4 in der Art von Multitasking durchge
führt.
Als Ergebnis der Durchführung des Steuerprogramms wird ein
Steuersignal CS von dem Mikrocomputer 4 erzeugt und an ein
Stellglied 18 zum Betätigen eines Kraftstoffeinstellteils 2a
der Einspritzpumpe 2 angelegt, wodurch die Menge an Kraft
stoff, welche von der Einspritzpumpe 2 eingespritzt worden
ist, gesteuert wird.
Wie in dem Flußdiagramm der Fig. 2 dargestellt, wird das Steu
erprogramm 20 von n Aufgaben- bzw. Task-Programmen P1 bis Pn
für Aufgaben 1 bis n gebildet. Die Aufgaben-Programme P1 bis
Pn werden jeweils wiederholt mit einem eigenen Aktivierungs
zyklus und einer Aktivierungs-Zeitsteuerung ausgeführt, wo
durch der Betrieb des Verbrennungsmotors 3 entsprechend dem
Steuerprogramm 20 gesteuert wird, das in der Art von Multi
tasking ausgeführt wird.
Nach der Aktivierung des Aufgaben-Programms P1 wird die Ver
arbeitung der Aufgabe 1 zuerst bei einem Schritt 21 durchge
führt, und es wird auf einen Schritt 22 übergegangen, bei
welchem eine Unterscheidung getroffen wird, ob das Programm
zum Durchführen der Aufgabe 1 beim Schritt 21 normal durchge
führt wurde oder nicht. Die herkömmliche Prüfmethode kann für
die beim Schritt 22 durchgeführte Unterscheidung angewendet
werden, und die Entscheidung beim Schritt 22 ist ja, wenn die
Verarbeitung der Aufgabe 1 normal durchgeführt wurde. Folg
lich geht in diesem Fall die Operation auf den Schritt 23
über, bei welchem der Zählerstand eines Zählers C1 um eins
erhöht wird, und die Ausführung des Aufgaben-Programms P1 ist
beendet. In dieser Ausführungsform wirkt der Zähler C1 als
eine Datensetzeinrichtung, deren Inhalt entsprechend der Aus
führung des Aufgaben-Programms P1 geändert wird. Andererseits
wird die Ausführung des Aufgaben-Programms P1 ohne die Aus
führung des Schritts 23 beendet, wenn die Entscheidung beim
Schritt 22 nein ist.
Folglich wird eine Inkrementierung oder Erhöhung des Zähler
stands des Zählers C1 in demselben Zeitintervall wie demjeni
gen zwischen aufeinanderfolgenden Aktivierungen des Aufgaben-
Programms P1 durchgeführt.
Die Disposition oder Anordnung des Aufgaben-Programms P2 für
die Aufgabe 2 ist ähnlich derjenigen des Aufgaben-Programms
P1 für die Aufgabe 1. Insbesondere wird, nachdem der Prozeß
für die Aufgabe 2 beim Schritt 31 durchgeführt ist, beim
Schritt 32 unterschieden, ob die Ausführung des Aufgaben-Pro
gramms P2 normal durchgeführt wurde oder nicht. Es wird dann
auf einen Schritt 33 übergegangen, bei welchem der Zähler
stand eines Zählers C2, welcher als eine Datensetzeinrichtung
wirkt, deren Inhalt entsprechend der Ausführungsbedingung des
Aufgaben-Programms P2 geändert wird, nur um eins erhöht wird,
wenn das Programm zum Verarbeiten der Aufgabe 2 normal durch
geführt wurde.
Folglich wird in diesem Fall die Erhöhung des Zählers C2 in
demselben Zeitintervall wie diejenige der Durchführung des
Aufgaben-Programms P2 ausgeführt.
Die Ausführungsbedingung der Aufgaben-Programme P3, P4 . . .
Pn-1 für die Aufgaben 3, 4, ...., n-1 werden in ähnlicher
Weise auf der Basis geprüft, ob die Zählerstände der Zähler
C3 bis Cn-1 in denselben Zeitintervallen wie den Aktivierungs
intervallen der jeweiligen Aufgaben-Programme P3 bis Pn-1 in
krementiert werden oder nicht.
Nunmehr wird das Aufgaben-Programm Pn für die Aufgabe n be
schrieben. Nachdem das Programm für ein Verarbeiten der Auf
gabe n beim Schritt 101 entsprechend der Aktivierung des Auf
gaben-Programms Pn durchgeführt worden ist, geht die Opera
tion bei einem Schritt 102 weiter, bei welchem eine Unter
scheidung getroffen wird, ob das Programm zum Verarbeiten der
Aufgabe n beim Schritt 101 normal durchgeführt wurde oder
nicht. Die Entscheidung beim Schritt 102 wird nein, wenn bei
dem Schritt 102 festgestellt wird, daß die Operation beim
Schritt 101 nicht normal durchgeführt wurde, und die Ausfüh
rung des Aufgaben-Programms n wird beendet.
Dagegen wird die Entscheidung beim Schritt 102 ja, wenn die
Operation beim Schritt 101 normal durchgeführt wurde, und es
wird auf einen Schritt 103 1 übergegangen, bei welchem der
Zählerstand des Zählers C1 auf der Basis der Beziehung zwi
schen dem Aktivierungsintervall des Aufgaben-Programms P1 und
demjenigen des Aufgaben-Programms Pn geprüft wird.
Insbesondere ist es beispielsweise durch eine einfache Be
rechnung möglich, im voraus den Wert K1 des Zählers C1 zu
kennen, welcher zum Zeitpunkt der Ausführung des Aufgaben-
Programms Pn erhalten werden sollte, vorausgesetzt, daß das
Aufgaben-Programm P1 in dem vorgeschriebenen Aktivierungsin
tervall wiederholt normal durchgeführt wurde. Folglich ist es
durch Vergleich des aktuellen Zählerstands des Zählers C1 zu
dieser Zeit mit dem Wert K1 möglich zu erkennen, ob das Auf
gaben-Programm P1 normal durchgeführt wurde oder nicht.
Beim Schritt 103 1 wird entschieden, daß das Aufgaben-Programm
P1 normal durchgeführt wurde, wenn der aktuelle Zählerstand
des Zählers C1 gleich dem Wert K1 ist. In diesem Fall wird
die Entscheidung beim Schritt 103 1 ja, und es wird auf einen
Schritt 103 2 übergegangen, bei welchem unterschieden wird, ob
der Zählerstand des Zählers C2 zu diesem Zeitpunkt gleich dem
erwarteten Wert ist oder nicht, welcher auf der Basis der Ak
tivierungsintervalle der Aufgaben-Programme P2 und Pn in der
selben Weise wie beim Schritt 103 1 bestimmt worden ist. Die
Zählerstände der Zähler C3, C4 . . . Cn-1 der Aufgaben-Program
me P3, P4, . . . Pn-1 werden in ähnlicher Weise bei den
Schritten 103 3 bis 103 n-1 geprüft.
Wie aus Fig. 2 zu ersehen ist, wird ein Schritt 104 durchge
führt, und ein Überwachungszeitgeber-Impuls WP wird nur er
zeugt, wenn festgestellt wird, daß alle Zählerstände, welche
in den Aufgaben-Programmen P1 bis Pn-1 erhalten worden sind,
zum Zeitpunkt einer Durchführung des Aufgaben-Programms Pn
die richtigen Werte sind. Dagegen wird der Schritt 104 nicht
durchgeführt, selbst wenn nur ein Zählerstand unter den Zäh
lerständen der Zähler C1 bis Cn-1 nicht gleich dem entspre
chenden vorausgesagten Wert ist. Dementsprechend wird dann
der Überwachungszeitgeber-Impuls
WP in diesem Fall nicht erzeugt.
Wie in Fig. 1 dargestellt, wird der Überwachungszeitgeber-Im
puls WP als ein Rücksetzimpuls an den Überwachungszeitgeber
17 bekannter Ausführung in dem Mikrocomputer 4 angelegt. Der
Überwachungszeitgeber 17 erhält auch ein Taktimpulssignal CL
vorherbestimmter Frequenz von einem Taktimpulsgenerator 16.
Der Zählerstand des Überwachungszeitgebers 17 wird jedesmal
dann inkrementiert, wenn ein Impuls des Taktimpulssignals CL
angelegt wird, und wird entsprechend dem Anlegen des Überwa
chungs-Impulses WP rückgesetzt. Folglich erscheint ein Über
laufimpuls als ein System-Rücksetzimpuls RP an der Ausgangs
leitung 17a des Überwachungszeitgebers 17 in dem Fall, daß
ein Überwachungs-Impuls WP nicht an den Überwachungszeitgeber
17 abgegeben wird, bevor der Zählerstand des Überwachungs
zeitgebers 17 seinen Überlaufzustand erreicht hat.
Da der Überwachungszeitgeber 17 so ausgelegt ist, daß der
Zeitabschnitt von dem Zeitpunkt an, an welchem der Überwa
chungszeitgeber 17 zurückgesetzt wird, bis zu dem Zeitpunkt,
bei welchem dessen Zählerstand seinen Überlaufzustand er
reicht, etwas länger ist als das Zeitintervall zwischen auf
einanderfolgenden Erzeugungen des Überwachungs-Impulses WP in
dem Fall, daß das Steuerprogramm normal ausgeführt wird, wird
der System-Rücksetzimpuls RP nicht erzeugt, solange das Steu
erprogramm normal ausgeführt wird. Jedoch wird der System-
Rücksetzimpuls RP beispielsweise wegen einer anormalen Ausfüh
rung des Steuerprogramms erzeugt, wenn das Zeitintervall zwi
schen aufeinanderfolgenden Überwachungs-Impulsen WP länger
als der Zeitabschnitt von dem Rücksetzzeitpunkt bis zu dem
Zeitpunkt des Überlaufs des Überwachungszeitgebers 17 ist.
Der System-Rücksetzimpuls RP wird an die Zentraleinheit (CPU)
11 angelegt, um diese zurückzusetzen.
Bei der vorstehend beschriebenen Anordnung entscheidet jedes
der Aufgaben-Programme P1 bis Pn zum Verarbeiten der Aufgaben
1 bis n selbst, ob es normal durchgeführt worden ist oder
nicht, und in Abhängigkeit von dem Ergebnis der Entscheidung
inkrementiert es einen der zugeordneten Zähler C1 bis Cn-1
oder inkrementiert ihn nicht. Dann werden die Zählerstände
der Zähler C1 bis Cn-1 geprüft, wenn die Programme zum Verar
beiten der Aufgabe n in dem Aufgaben-Programm Pn normal
durchgeführt wird, und basierend auf den jeweiligen Zeitakti
vierungsintervallen der Aufgaben-Programme wird dann unter
schieden, ob jedes der Aufgaben-Programme richtig durchge
führt wurde oder nicht.
Dementsprechend wird der Überwachungszeitgeber-Impuls WP nur
erzeugt, wenn jede der Aufgaben 1 bis n normal durchgeführt
wurde, und jedes der Aufgaben-Programme P1 bis Pn wurde wie
derholt zu dem richtigen Zeitintervall aktiviert. Dagegen
wird der Überwachungs-Impuls WP nicht erzeugt, und die Zen
traleinheit (CPU) 11 wird zurückgesetzt, selbst wenn eines
der Programme zum Verarbeiten der Aufgaben 1 bis n nicht nor
mal durchgeführt wird, und/oder selbst wenn eine Ausführung
für die Aufgaben-Programme P1 bis Pn nicht zu dem richtigen
Zeitintervall aktiviert wird.
Hilfsweise können verschiedene andere herkömmliche Methoden
angewendet werden, um eine richtige Ausführung der Programme
zum Verarbeiten der Aufgaben 1 bis n zu prüfen. Beispielswei
se kann eine Feststellmethode angewendet werden, bei welcher
die zu überprüfende Aufgabe in eine Anzahl Schritte aufge
teilt wird, eine vorherbestimmte arithmetische Berechnung bei
der Beendigung jedes Schritts durchgeführt wird, und, nachdem
alle Schritte durchgeführt worden sind, eine Unter- bzw. Ent
scheidung getroffen wird, ob die Ergebnisse der arithmeti
schen Berechnungen gleich den Werten sind oder nicht, welche
erwartet würden, wenn die Aufgabe normal durchgeführt wird.
Entsprechend der vorerwähnten Anordnung wird zusätzlich zu
dem Prüfen, ob jede der Aufgaben 1 bis n richtig durchgeführt
wurde oder nicht, ebenfalls auf der Basis der Zeitintervalle
für die wiederholte Ausführung der Aufgaben-Programme geprüft,
ob die Aufgaben-Programme P1 bis Pn richtig durchgeführt wur
den oder nicht. Mittels dieses Doppelprüfsystems kann eine
Feststellung, ob das Steuerprogramm normal ausgeführt wird
oder nicht, mit hoher Zuverlässigkeit durchgeführt werden.
Claims (4)
1. Verfahren zum Feststellen einer Störung in einem Mikro
computersystem, in welchem ein gegebener Auftrag in eine An
zahl Aufgaben aufgeteilt wird, und eine Anzahl Aufgaben-Pro
gramme für die Aufgaben in der Art Multitasking ausgeführt
werden, dadurch gekennzeichnet, daß
unterschieden wird, ob jedes Verarbeiten der Aufgaben nach dessen jeweiliger Ausführung normal ausgeführt wurde oder nicht;
der Inhalt von als Zähler ausgeführten Datensetzeinrich tungen, welche für alle Aufgaben-Programme, außer für ein vorgeschriebenes Aufgaben-Programm, vorgesehen sind, entspre chend dem Ergebnis des Unterscheidungsschrittes geändert wird, derart, daß der Zählerstand durch einen vorgeschriebe nen Wert zu einem Zeitpunkt geändert wird, an welchem be stimmt und entschieden wird, daß der Prozeß der entsprechen den Aufgabe normal ist, und
der Zählerstand jedes Zählers während der Ausführung des vorgeschriebenen Aufgaben-Programms auf der Basis eines Akti vierungsintervalls für eine wiederholte Ausführung der Aufga ben-Programme geprüft wird, wobei bestimmt und entschieden wird, ob die Ausführung aller Aufgaben-Programme normal war oder nicht.
unterschieden wird, ob jedes Verarbeiten der Aufgaben nach dessen jeweiliger Ausführung normal ausgeführt wurde oder nicht;
der Inhalt von als Zähler ausgeführten Datensetzeinrich tungen, welche für alle Aufgaben-Programme, außer für ein vorgeschriebenes Aufgaben-Programm, vorgesehen sind, entspre chend dem Ergebnis des Unterscheidungsschrittes geändert wird, derart, daß der Zählerstand durch einen vorgeschriebe nen Wert zu einem Zeitpunkt geändert wird, an welchem be stimmt und entschieden wird, daß der Prozeß der entsprechen den Aufgabe normal ist, und
der Zählerstand jedes Zählers während der Ausführung des vorgeschriebenen Aufgaben-Programms auf der Basis eines Akti vierungsintervalls für eine wiederholte Ausführung der Aufga ben-Programme geprüft wird, wobei bestimmt und entschieden wird, ob die Ausführung aller Aufgaben-Programme normal war oder nicht.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
eine vorherbestimmte arithmetische Berechnung zumindest zu
einer Zeit bei einem vorherbestimmten Schritt im Verlauf der
Ausführung des Aufgaben-Programms durchgeführt wird, und das
Ergebnis der arithmetischen Berechnung mit einem Standardwert
verglichen wird, um zu unterscheiden, ob die Aufgabe normal
verarbeitet wurde oder nicht.
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
ein Überwachungszeitgeber-Impuls entsprechend dem Ergebnis
des Prüfschrittes erzeugt wird, wenn bestätigt wird, daß alle
Aufgaben-Programme normal durchgeführt wurden.
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß
das vorgeschriebene Aufgaben-Programm einen Schritt aufweist,
einen Überwachungszeitgeber-Impuls entsprechend dem Ergebnis
des Prüfschrittes zu erzeugen, wenn bestätigt wird, daß alle
Aufgaben-Programme normal durchgeführt wurden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2091169A JP2793993B2 (ja) | 1990-04-05 | 1990-04-05 | マイクロコンピュータにおけるプログラム暴走検出方法 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE4111072A1 DE4111072A1 (de) | 1991-10-10 |
DE4111072C2 DE4111072C2 (de) | 1992-12-10 |
DE4111072C3 true DE4111072C3 (de) | 1996-09-26 |
Family
ID=14018973
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4111072A Expired - Fee Related DE4111072C3 (de) | 1990-04-05 | 1991-04-05 | Verfahren zum Feststellen einer Störung in einem Mikrocomputersystem |
Country Status (3)
Country | Link |
---|---|
US (1) | US5257373A (de) |
JP (1) | JP2793993B2 (de) |
DE (1) | DE4111072C3 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004028796B3 (de) * | 2004-06-15 | 2006-01-19 | Siemens Ag | Kontrollerbaustein |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5825989A (en) * | 1992-06-12 | 1998-10-20 | Xerox Corporation | System for diagnosing a source of malfunction resulting from the execution of a print job in a network printing system |
US7831516B2 (en) | 1992-12-15 | 2010-11-09 | Sl Patent Holdings Llc | System and method for redistributing and licensing access to protected information among a plurality of devices |
US7089212B2 (en) * | 1992-12-15 | 2006-08-08 | Sl Patent Holdings Llc | System and method for controlling access to protected information |
US6266654B1 (en) * | 1992-12-15 | 2001-07-24 | Softlock.Com, Inc. | Method for tracking software lineage |
US7209901B2 (en) | 1992-12-15 | 2007-04-24 | Sl Patent Holdings Llc C/O Aol Time Warner | Method for selling, protecting, and redistributing digital goods |
DE19500957A1 (de) * | 1994-07-19 | 1996-01-25 | Bosch Gmbh Robert | Verfahren zur Steuerung von technischen Vorgängen oder Prozessen |
JPH08115235A (ja) * | 1994-10-14 | 1996-05-07 | Honda Motor Co Ltd | 制御装置の異常検出装置およびその方法 |
US6002871A (en) * | 1997-10-27 | 1999-12-14 | Unisys Corporation | Multi-user application program testing tool |
FR2771828B1 (fr) * | 1997-12-03 | 2002-11-29 | Sextant Avionique | Procede de securisation pour un calculateur |
US6966364B1 (en) * | 1999-02-12 | 2005-11-22 | Asml Holding N.V. | Systems and methods for controlling local environment |
GB9911890D0 (en) | 1999-05-22 | 1999-07-21 | Lucas Ind Plc | Method and apparatus for detecting a fault condition in a computer processor |
US7191898B1 (en) | 2003-09-04 | 2007-03-20 | Union Rich Usa, Llc | Saw blade case |
FR2864411B1 (fr) * | 2003-12-23 | 2006-03-03 | Cit Alcatel | Terminal avec des moyens de protection contre le dysfonctionnement de certaines applications java |
DE102005021986A1 (de) * | 2005-05-09 | 2006-11-16 | Robert Bosch Gmbh | Verfahren zur Steuergeräte-Überwachung |
JP4609381B2 (ja) * | 2006-06-14 | 2011-01-12 | 株式会社デンソー | 異常監視用プログラム、記録媒体及び電子装置 |
JP5590667B2 (ja) * | 2010-07-01 | 2014-09-17 | 株式会社日立製作所 | サブルーチン実行監視装置及びサブルーチン実行監視方法 |
JP5477654B2 (ja) * | 2010-10-22 | 2014-04-23 | 株式会社デンソー | 電子制御装置、及び、これを用いた電動パワーステアリング装置 |
JP6060584B2 (ja) * | 2012-09-19 | 2017-01-18 | 富士電機株式会社 | プログラム異常検出装置、そのプログラム |
JP6440986B2 (ja) * | 2014-08-01 | 2018-12-19 | ローム株式会社 | 給電装置およびそのコントローラ、制御方法、それを用いた電子機器 |
JP6787658B2 (ja) * | 2015-10-16 | 2020-11-18 | コイト電工株式会社 | 処理装置、交通信号装置及び情報表示装置 |
DE102016203852A1 (de) * | 2016-03-09 | 2017-09-14 | Robert Bosch Gmbh | Verfahren zum Betreiben eines Steuergeräts für ein Kraftfahrzeug |
FR3089315B1 (fr) * | 2018-11-30 | 2021-08-20 | Continental Automotive France | Procédé de détection d’une disparition de tache |
JP6788145B2 (ja) * | 2020-06-24 | 2020-11-18 | コイト電工株式会社 | 処理装置、交通信号装置及び情報表示装置 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2939194A1 (de) * | 1979-09-27 | 1981-05-14 | Siemens AG, 1000 Berlin und 8000 München | Verfahren und schaltungsanordnung zum ueberwachen des ordnungsgemaessen ablaufs eines programms |
US4321666A (en) * | 1980-02-05 | 1982-03-23 | The Bendix Corporation | Fault handler for a multiple computer system |
US4323966A (en) * | 1980-02-05 | 1982-04-06 | The Bendix Corporation | Operations controller for a fault-tolerant multiple computer system |
DE3008036A1 (de) * | 1980-03-03 | 1981-09-17 | Robert Bosch Gmbh, 7000 Stuttgart | Ueberwachungseinrichtung fuer programmgesteuerte vorrichtungen |
JPS58154052A (ja) * | 1982-03-09 | 1983-09-13 | Diesel Kiki Co Ltd | マイクロコンピユ−タにおけるプログラム暴走検出方法 |
DE3322074A1 (de) * | 1982-07-23 | 1984-01-26 | Robert Bosch Gmbh, 7000 Stuttgart | Notlaufeinrichtung fuer mikrocomputergesteuerte systeme |
JPS59139462A (ja) * | 1983-01-31 | 1984-08-10 | Hitachi Ltd | エラ−検出装置 |
JPS63163932A (ja) * | 1986-12-26 | 1988-07-07 | Fuji Electric Co Ltd | 制御用計算機のシステム監視方式 |
US4816989A (en) * | 1987-04-15 | 1989-03-28 | Allied-Signal Inc. | Synchronizer for a fault tolerant multiple node processing system |
JPS63282857A (ja) * | 1987-05-15 | 1988-11-18 | Mitsubishi Electric Corp | プログラムの暴走防止方式 |
-
1990
- 1990-04-05 JP JP2091169A patent/JP2793993B2/ja not_active Expired - Lifetime
-
1991
- 1991-04-02 US US07/679,226 patent/US5257373A/en not_active Expired - Fee Related
- 1991-04-05 DE DE4111072A patent/DE4111072C3/de not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004028796B3 (de) * | 2004-06-15 | 2006-01-19 | Siemens Ag | Kontrollerbaustein |
Also Published As
Publication number | Publication date |
---|---|
JPH03288942A (ja) | 1991-12-19 |
JP2793993B2 (ja) | 1998-09-03 |
US5257373A (en) | 1993-10-26 |
DE4111072A1 (de) | 1991-10-10 |
DE4111072C2 (de) | 1992-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4111072C3 (de) | Verfahren zum Feststellen einer Störung in einem Mikrocomputersystem | |
DE4114999C2 (de) | System zur Steuerung eines Kraftfahrzeuges | |
DE10056408C1 (de) | Vorrichtung zur Überwachung eines Prozessors | |
DE2946081C2 (de) | ||
DE3521081A1 (de) | Mikrocomputeranordnung | |
DE2735397C2 (de) | Überwachungseinrichtung für eine programmgesteuerte Maschine | |
DE3111126A1 (de) | "pruef- und sicherungseinrichtung fuer elektronische steuersysteme, insbesondere in kraftfahrzeugen" | |
DE2945543C2 (de) | ||
DE4039355A1 (de) | Vorrichtung zur pruefung einer watchdog-schaltung | |
EP1866714B1 (de) | Verfahren und vorrichtung zur überwachung einer prozessausführung | |
DE3343227A1 (de) | Verfahren zur ueberwachung von elektronischen rechenbausteinen, insbesondere mikroprozessoren | |
DE3936259C2 (de) | ||
EP0097826B1 (de) | Verfahren zur Steuerung eines Mikrorechners | |
EP1479003B1 (de) | Verfahren und vorrichtung zur steuerung einer funktionseinheit eines kraftfahrzeugs | |
DE10235564A1 (de) | Verfahren zum Überwachen eines Mikroprozessors und Schaltungsanordnung mit einem Mikroprozessor | |
EP0799143B1 (de) | Verfahren und schaltungsanordnung zur überwachung der funktion einer programmgesteuerten schaltung | |
DE3014251A1 (de) | Vorrichtung zur steuerung einer brennkraftmaschine | |
WO1988005570A1 (en) | Process and device for monitoring computer-controlled final control elements | |
DE19841260B4 (de) | Verfahren zum Erkennen von Fehlerzuständen und fahrzeugeigenes Diagnosesystem | |
EP1025501B1 (de) | Verfahren und vorrichtung zur überprüfung einer fehlerüberwachung einer schaltung | |
DE4035520C2 (de) | Verfahren und Anordnung zur Messung der Geschwindigkeit eines Fahrzeuges | |
EP2338111B1 (de) | Verfahren und vorrichtung zum testen eines rechnerkerns in einer mindestens zwei rechnerkerne aufweisenden recheneinheit | |
DE10160298A1 (de) | Verfahren und Vorrichtung zur Verarbeitung von Interrput-Signalen | |
DE4319881B4 (de) | Verfahren zur Verarbeitung von Interruptsignalen einer Interruptquelle | |
DE102020202338B4 (de) | Elektronische steuereinheit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8366 | Restricted maintained after opposition proceedings | ||
8305 | Restricted maintenance of patent after opposition | ||
D4 | Patent maintained restricted | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: BOSCH AUTOMOTIVE SYSTEMS CORP., TOKIO/TOKYO, JP |
|
8339 | Ceased/non-payment of the annual fee |