DE10030991A1 - Verfahren und Vorrichtung zur Synchronisation eines Rechners und einer Überwachungsschaltung - Google Patents

Verfahren und Vorrichtung zur Synchronisation eines Rechners und einer Überwachungsschaltung

Info

Publication number
DE10030991A1
DE10030991A1 DE10030991A DE10030991A DE10030991A1 DE 10030991 A1 DE10030991 A1 DE 10030991A1 DE 10030991 A DE10030991 A DE 10030991A DE 10030991 A DE10030991 A DE 10030991A DE 10030991 A1 DE10030991 A1 DE 10030991A1
Authority
DE
Germany
Prior art keywords
computer
watchdog
microcontroller
time
monitoring circuit
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
DE10030991A
Other languages
English (en)
Inventor
Peter Bolz
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE10030991A priority Critical patent/DE10030991A1/de
Priority to US09/896,634 priority patent/US6848064B2/en
Publication of DE10030991A1 publication Critical patent/DE10030991A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error 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/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B9/00Safety arrangements
    • G05B9/02Safety arrangements electric
    • G05B9/03Safety arrangements electric with multiple-channel loop, i.e. redundant control systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0043Signal treatments, identification of variables or parameters, parameter estimation or state estimation
    • B60W2050/0044In digital systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23307Initial program loader, ipl, bootstrap loader
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24125Watchdog, check at timed intervals
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/24Pc safety
    • G05B2219/24198Restart, reinitialize, boot system after fault detection, hanging up, stalling

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Betreiben mindestens eines Rechners und mindestens einer dem mindestens einen Rechner zugeordneten und nach einem bestimmten zeitlichen Muster von dem Rechner zu bedienenden Überwachungsschaltung (Watchdog), insbesondere für eine Steuer- oder Sicherheitseinrichtung für ein Kraftfahrzeug, wobei der Rechner rückgesetzt wird, falls die Überwachungsschaltung nicht nach dem zeitlichen Muster bedient wird. Um auf möglichst einfache Weise eine Synchronisation des Rechners auf die Überwachungsschaltung zu ermöglichen, wird vorgeschlagen, dass nach einem Hochfahren (1) des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus eine Zeitbasis ermittelt wird, die nach dem Hochfahren des Rechners bis zu einem Rücksetzen des Rechners auf Grund einer fehlenden Bedienung der Überwachungsschaltung nach dem zeitlichen Muster vergeht, und dass die Überwachungsschaltung in zeitlichen Abständen bedient wird, die in Abhängigkeit von der Zeitbasis ermittelt werden (11).

Description

Die vorliegende Erfindung betrifft ein Verfahren zum Betreiben mindestens eines Rechners und mindestens einer dem mindestens einem Rechner zugeordneten Überwachungsschaltung (Watchdog). Der Rechner dient insbesondere für eine Steuer- oder Sicherheitseinrichtung für ein Kraftfahrzeug. Die Überwachungsschaltung muss nach einem bestimmten zeitlichen Muster von dem Rechner bedient werden. Falls die Überwachungsschaltung nicht nach dem zeitlichen Muster bedient wird, wird der Rechner rückgesetzt.
Die Erfindung betrifft außerdem ein Steuergerät mit mindestens einem Rechner und mindestens einer dem mindestens einem Rechner zugeordneten und nach einem bestimmten zeitlichen Muster von dem Rechner zu bedienenden Überwachungsschaltung (Watchdog), insbesondere für eine Sicherheitseinrichtung für ein Kraftfahrzeug.
Schließlich betrifft die vorliegende Erfindung ein Steuerelement, insbesondere ein Read-Only-Memory oder ein Flash-Memory, für ein derartiges Steuergerät.
Stand der Technik
In vielen Steuergeräten und in zunehmendem Maße auch in Kraftfahrzeugen kommen als Mikrocontroller bzw. Mikroprozessoren ausgebildete Rechner zur Steuerung bzw. Regelung beliebiger Funktionen zum Einsatz. Die zu steuernden/regelnden Funktionen in einem Kraftfahrzeug sind bspw. die Brennkraftmaschine, eine Klimaanlage oder sicherheitskritische Funktionen wie eine elektronische Lenkung (steer-by-wire), ein elektronisches Gaspedal, ein Antiblockierbremssystem (ABS) oder ein Passagier-Rückhaltesystem (Airbag, Gurtstraffer, rückpralldämpfende Kopfstütze, etc.).
Mikroprozessoren beinhalten nur ein Rechenwerk, während Mikrocontroller auch Speicher, bspw. Random-Access-Memory (RAM), Read-Only-Memory (ROM), Electrically-Erasable-Programmable-Read-Only-Memory (EEPROM) oder Flash-Memory, und Peripheriefunktionen, bspw. einen Digital/Analog-Wandler oder Analog/Digtal-Wandler, umfassen. Mikrocontroller können Fehlfunktionen zeigen, die durch äußere Einflüsse, wie bspw. elektromagnetische Einstrahlung oder statische Entladung, verursacht sein können. Eine weitere Ursache für Fehlfunktionen können Störungen auf Grund von Software-Fehlern in einem bestimmten Betriebsmodus sein.
Um solche Fehlfunktionen eines Mikrocontrollers erkennen zu können, besitzen moderne Steuergeräte mehr oder weniger aufwendige Hardware-Überwachungsschaltungen, sog. Watchdogs. Ein Watchdog ist bspw. auf einem anwendungsspezifischen integrierten Schaltkreis (sog. Application Specific Integrated Circuit; ASIC) realisiert. Ein Watchdog muss von dem Mikrocontroller nach einem bestimmten zeitlichen Muster, bspw. in festen zeitlichen Abständen, bedient bzw. angesteuert werden. Unterbleibt eine Bedienung des Watchdogs geht dieser von einer Fehlfunktion des Mikrocontrollers aus und veranlasst ein Rücksetzen des Mikrocontrollers.
Anschließend wird der Mikrocontroller aus dem Rücksetzmodus wieder in einen Arbeitsmodus hochgefahren. Das Rücksetzen des Mikrocontrollers umfasst ein Rücksetzen sämtlicher Peripheriefunktionen und eine Initialisierung des Mikroprozessors. Beim Hochfahren des Mikrocontrollers aus dem Rücksetzmodus werden Funktionstests durchgeführt, um eine Fehlfunktion des Mikrocontrollers detektieren und möglichst auch diagnostizieren zu können. Im Gegensatz zum Rücksetzen und Hochfahren des Mikrocontrollers nach einem Aus- und Einschalten des Mikrocontrollers liegt beim Rücksetzen und Hochfähren des Mikrocontrollers nach einem Rücksetzbefehl des Watchdog die Versorgungsspannung ohne Unterbrechung an dem Mikrocontroller an, so dass Dateninhalte der Speicher des Mikrocontrollers erhalten bleiben.
Das Bedienen des Watchdogs durch den Mikrocontroller kann auf unterschiedliche Weise erfolgen, bspw. durch ein einfaches digitales Signal über eine elektrische Verbindung. Der Watchdog kann aber auch durch eine zeitliche Sequenz von Signalen über mehrere elektrische Verbindungen bedient werden. Die Signale müssen nach einem bestimmten zeitlichen Muster von dem Mikrocontroller an den Watchdog übermittelt werden. Ein einfacher Watchdog muss bspw. in regelmäßigen zeitlichen Abständen vor Ablauf einer bestimmten Zeitspanne bedient werden. Ein Fenster-Watchdog muss innerhalb eines festen Zeitfensters regelmäßig bedient werden. Ein Fenster-Watchdog veranlasst ein Rücksetzen des Mikrocontrollers sowohl wenn der Watchdog zu früh (vor Beginn des Zeitfensters) als auch zu spät (nach dem Ende des Zeitfensters) bedient wird.
Aus der DE 40 23 700 A1 ist eine Watchdog-Überwachungsschaltung bekannt, die in regelmäßigen zeitlichen Abständen von einem Mikrocontroller durch ein Watchdog-Signal bedient wird. Liegt die Frequenz der aus den einzelnen Watchdog-Signalen entstehenden Signalfolge außerhalb eines bestimmten gültigen Frequenzfensters, detektiert der Watchdog eine Fehlfunktion des Mikrocontrollers.
Ein Watchdog besitzt von dem Mikrocontroller unabhängige Einrichtungen zum Erzeugen von Watchdog-Zeiten. Ein Watchdog kann unabhängig von einem Mikrocontroller auf ein festes zeitliches Muster, bspw. einen festen zeitlichen Abstand bis zu einer erneuten Bedienung, eingestellt werden. Bei der schärferen Anforderung eines Fenster- Watchdog kann unabhängig von einem Mikrocontroller der Beginn und das Ende des Zeitfensters fest eingestellt werden. Das zeitliche Muster nach dem der Watchdog bedient werden muss, kann also variieren ohne dass dies von außen anhand des Watchdogs oder des eingesetzten Mikrocontrollers erkennbar wäre.
Mikrocontroller werden in zunehmendem Maße mit frei programmierbaren Programmspeicher gefertigt, z. B. in der Flash-Technik. Durch die Flash-Technik ist es möglich, dass eine Mikrocontroller-Bauart in verschiedenen Applikationen mit applikationsspezifischer Software programmiert wird. Die Programmierung kann bereits beim Halbleiterhersteller oder erst vor Ort beim Anwender erfolgen. Zur Programmierung kann der Mikrocontroller in ein separates Programmiergerät eingelegt werden.
In zunehmendem Maße erfolgt die Programmierung jedoch beim Anwender bei in einer Zielhardware - bspw. dem Steuergerät einer Sicherheitseinrichtung für ein Kraftfahrzeug - eingelegten Mikrocontroller. Die Programmierung in der Zielhardware wird in der Regel durch serielle Kommunikation zwischen einem externen Rechner und einem in dem Mikrocontroller ablauffähigen Hilfsprogramm gesteuert. Das Hilfsprogramm wird auch als Bootloader bezeichnet und beinhaltet die Programmieralgorithmen und das Datenhandling. Die Programmierung kann z. B. in der Fertigungslinie des Steuergeräteherstellers oder aber unmittelbar in einem Kraftfahrzeug erfolgen. Die serielle Kommunikation erfolgt in einem Kraftfahrzeug üblicherweise über eine sog. K-Leitung oder über einen Controller-Area-Network (CAN)-Bus.
Unterschiedliche Applikationen des Mikrocontrollers bringen es mit sich, dass sowohl eine Mikrocontroller-Bauart mit unterschiedlichen Prozessor-Taktraten betrieben wird als auch die Watchdogs mit unterschiedlichen zeitlichen Mustern zu bedienen sind. Dies stellt insbesondere während der Programmierung des Mikrocontrollers mittels des Bootloaders, ein großes Problem dar, da dem Microcontroller vor der Programmierung nicht bekannt sein kann, nach welchem zeitlichen Muster der Watchdog zu bedienen ist.
Um eine Bedienung des Watchdogs sicherzustellen, muss nach dem Stand der Technik für eine bestimmte Prozessor-Taktfrequenz und für ein bestimmtes zeitliches Muster zur Bedienung des Watchdogs jeweils eine individuelle Bootloader-Software vorhanden sein. Dies ist jedoch aufwendig, speicherplatzintensiv und teuer.
Aus dem Stand der Technik sind des weiteren Bootloader bekannt, die verschiedene feste zeitliche Muster zum Bedienen des Watchdogs vorschreiben. Das, zeitliche Muster ist z. B. über Mikrocontroller-Ports oder interne nicht flüchtige Speicherzellen konfigurierbar, so dass sich eine geringe Flexibilität der Bootloader ergibt. Neben der stark eingeschränkten Flexibilität dieser bekannten Bootloader ist ein weiterer Nachteil dieser bekannten Bootloader der relativ große Hardware- und Softwareaufwand.
Der vorliegenden Erfindung liegt die Aufgabe zu Grunde, auf eine möglichst einfache Weise eine Synchronisation eines Rechners mit einer dem Rechner zugeordneten und nach einem bestimmten zeitlichen Muster von dem Rechner zu bedienenden Überwachungsschaltuug (Watchdog) zu erzielen.
Zur Lösung der Aufgabe wird ausgehend von dem Verfahren der eingangs genannten Art vorgeschlagen, dass nach einem Hochfahren des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus eine Zeitbasis ermittelt wird, die nach dem Hochfahren des Rechners bis zu einem Rücksetzen des Rechners auf Grund einer fehlenden Bedienung der Überwachungsschaltung nach dem zeitlichen Muster vergeht, und dass die Überwachungsschaltung in zeitlichen Abständen bedient wird, die in Abhängigkeit von der Zeitbasis ermittelt werden.
Vorteile der Erfindung
Erfindungsgemäß wird das zeitliche Muster, mit dem der Watchdog bedient werden muss, um zu verhindern, dass der Watchdog ein Rücksetzen des Rechners veranlasst, für die jeweilige Applikation des Rechners individuell ermittelt. Die verschiedenen Applikationen können sich in der Taktrate des Mikroprozessors oder in dem zeitlichen Muster des Watchdogs unterscheiden. Mit dem erfindungsgemäßen Verfahren kann der Rechner auf eine besonders einfache Weise auf die Überwachungsschaltung synchronisiert werden.
Zur Ermittlung des zeitlichen Musters wird der Rechner zunächst in an sich bekannter Weise hochgefahren. Nach diversen Initialisierungsvorgängen unmittelbar nach dem Hochfahren muss die Überwachungsschaltung bedient werden. Gemäß der vorliegenden Erfindung unterbleibt jedoch die Bedienung der Überwachungsschaltung und es wird gewartet, bis die Überwachungsschaltung ein Rücksetzen des Rechners wegen fehlender Bedienung nach dem vorgegebenen zeitlichen Muster veranlasst. Die Zeit, die vom Hochfahren des Rechners bis zum Rücksetzen vergeht, wird als Zeitbasis erfasst. In Abhängigkeit dieser Zeitbasis werden zeitliche Abstände ermittelt, die zwischen einer Bedienung der Überwachungsschaltung und der nächsten Bedienung vergehen.
Gemäß einer vorteilhaften Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, dass das Verfahren ausgeführt wird bevor mit Hilfe eines in dem Rechner gespeicherten Hilfsprogramms (Bootloader) ein Applikationsprogramm in einen Programmspeicher des Rechners geladen wird. Die im Rahmen des erfindungsgemäßen Verfahrens ermittelten zeitlichen Abstände, in denen die Überwachungsschaltung von dem Rechner bedient werden muss, werden also bei einer programmierung des Rechners mit einem Applikationsprogramm berücksichtigt. Dadurch kann ein einziger Bootloader unabhängig von der Taktrate eines Mikroprozessors des Rechners und unabhängig von dem zeitlichen Muster zum Bedienen der Überwachungsschaltung arbeiten. Das zeitliche Muster zum Bedienen der Überwachungsschaltung wird individuell vor jeder Programmierung des Rechners ermittelt. Die Überwachungsschaltung wird in den ermittelten zeitlichen Abständen bedient, so dass ein Rücksetzen des Rechners durch die Überwachungsschaltung während der programmierung des Rechners verhindert wird.
Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass die zeitlichen Abstände durch Multiplikation der Zeitbasis mit einem Korrekturfaktor ermittelt werden. Der Korrekturfaktor wird vorteilhafterweise kleiner als 1 - vorzugsweise zwischen 0,75 und 0,9 - gewählt. Die Zeitbasis gibt diejenige Zeitspanne wieder, nach der der Watchdog spätestens hätte bedient werden müssen, um zu verhindern, dass die Überwachungsschaltung ein Rücksetzen des Rechners veranlasst. Durch den Korrekturfaktor werden die zeitlichen Abstände etwas verringert, so dass der Watchdog etwas vor dem spätest möglichen Zeitpunkt bedient wird. Auf diese Weise kann verhindert werden, dass auf Grund einer geringfügigen zeitlichen Verschiebung der Bedienung des Watchdogs, bspw. auf Grund von Fertigungstoleranzen des Mikrocontrollers oder vor, verlängerten Signallaufzeiten, zu späteren Zeitpunkten hin durch die Überwachungsschaltung fälschlicherweise ein Rücksetzen des Rechners veranlasst wird.
Gemäß einer anderen vorteilhaften Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, zum Ermitteln der Zeitbasis nach dem Hochfahren des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus ein Zähler hochgezählt und der Zählerstand in einem ersten Speicherelement, vorzugsweise einem Random-Access-Memory (RAM), abgelegt wird. Der Zähler speichert die Differenz des Zählerstandes eines System-Timers nach dem Hochfahren des Rechners (Systemstart) zu dem Zählerstand während des Wartens auf ein Rücksetzen durch den Watchdog. Bei manchen Mikrocontrollern wird der System-Timer automatisch nach dem Hochfahren des Rechners gestartet. Bei anderen Mikrocontrollern muss der System-Timer nach dem Hochfahren des Rechners durch einen besonderen Befehl gestartet werden. Der Zählerstand wird in einem Speicherelement abgelegt, an dem während des Rücksetzens und des erneuten Hochfahrens des Rechners ununterbrochen eine Versorgungsspannung anliegt, so dass der Inhalt des Speicherelements auch nach einem erneuten Hochfahren des Rechners nicht verloren geht.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass der Zählerstand nach einem erneuten Hochfahren des Rechners nach dem Rücksetzen des Rechners aufgrund einer fehlenden Bedienung der Überwachungsschaltung der Zählerstand aus dem ersten Speicherelement ausgelesen und als Zeitbasis zum Bedienen der Überwachungsschaltung herangezogen wird. Der Zählerstand entspricht demjenigen Zeitpunkt, zu dem der Watchdog nach dem Hochfahren des Rechners spätestens hätte bedient werden sollen, um ein durch die Überwachungsschaltung veranlasstes Rücksetzen des Rechners zu verhindern. Auf Grundlage des Zählerstandes kann eine Zeitbasis und können zeitliche Abstände ermittelt werden, die zum Bedienen des Watchdogs herangezogen wird.
Vorteilhafterweise wird nach einem Hochfahren des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus ein zweites Speicherelement mit einem ersten vorgebbaren Bitmuster belegt und der Inhalt des zweiten Speicherelements zum Erkennen eines erneuten Hochfahrens des Rechners bei jedem Hochfahren des Rechners abgefragt. Entspricht der Inhalt des zweiten Speicherelements beim Hochfahren des Rechners dem ersten Bitmuster, handelt es sich um ein erneutes Hochfahren des Rechners und nicht um ein Hochfahren nach einem Aus- und Einschalten (Power-On) des Rechners. Bei einem erneuten Hochfahren des Rechners wird dann der Inhalt des ersten Speicherelements ausgelesen und es werden die zeitlichen Abstände zum Bedienen der Überwachungsschaltung bestimmt.
Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass nach einem erneuten Hochfahren des Rechners das zweite Speicherelement mit einem von dem ersten Bitmuster unterschiedlichen zweiten vorgebbaren Bitmuster belegt wird. Es ist denkbar, dass es während der Ausführung des erfindungsgemäßen Verfahrens tatsächlich zu einer Fehlfunktion des Rechners und infolgedessen zu einem Rücksetzen des Rechners kommt. In einem solchen Fall hat der in dem ersten Speicherelement abgelegte Zählerstand noch nicht seinen Endwert erreicht. Der Zählerstand gibt nämlich nicht den spätest möglichen Zeitpunkt zum Bedienen der Überwachungsschaltung, sondern lediglich den Zeitpunkt wieder, an dem der Rechner auf Grund der Fehlfunktion rückgesetzt wurde. Durch die vorgeschlagene Ausführungsform kann verhindert werden, dass ein in dem ersten Speicherelement abgelegter falscher Zählerstand als Zeitbasis zum Bedienen der Überwachungsschaltung herangezogen wird. Die Überwachungsschaltung wird zunächst mit dem ermittelten falschen zeitlichen Abstand bedient und veranlasst infolgedessen ein Rücksetzen des Rechners. Nach dem erneuten Hochfahrendes Rechners wird das erfindungsgemäße Verfahren dann noch einmal durchlaufen und dieses Mal der richtige zeitliche Abstand ermittelt, sofern nicht wieder ein Rücksetzen des Rechners auf Grund einer Fehlfunktion auftritt.
Zum Erkennen eines erneuten Hochfahrens des Rechners wird alternativ oder zusätzlich vorgeschlagen, dass bei jedem Hochfahren des Rechners überprüft wird, ob eine Markierung (Power-On-Flag) des Rechners zum Erkennen eines Hochfahrens des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus nach einem Einschalten des Rechners gesetzt ist. Die Power-On-Flag ist ein Hardware-Bit, das nach einem erstmaligen Hochfahren des Rechners nach dem Einschalten gesetzt ist, und das nach dem Hochfahren des Rechners im Anschluss an ein Rücksetzen jedoch nicht gesetzt ist. Durch Abfragen der Power-On-Flag kann festgestellt werden, ob der Rechner das erste Mal nach dem Einschalten des Rechners oder nach einem Rücksetzen des Rechners hochfährt. Eine Power-On-Flag ist allerdings nicht bei jedem Rechner verfügbar.
Von besonderer Bedeutung ist die Realisierung des erfindungsgemäßen Verfahrens in Farm eines Steuerelements, das für ein Steuergerät insbesondere einer Sicherheitseinrichtung für ein Kraftfahrzeug vorgesehen ist. Dabei ist auf dem Steuerelement ein Programm abgespeichert, das auf einem Rechner, insbesondere auf einem Mikroprozessor, ablauffähig und zur Ausführung des erfindungsgemäßen Verfahrens geeignet ist. In diesem Fall wird also die Erfindung durch ein auf dem Steuerelement abgespeichertes Programm realisiert, so dass dieses mit dem Programm versehene Steuerelement in gleicher Weise die Erfindung darstellt wie das Verfahren, zu dessen Ausführung das Programm geeignet ist. Als Steuerelement kann insbesondere ein elektrisches Speichermedium zur Anwendung kommen, bspw. ein Read-Only-Memory oder ein Flash-Memory.
Als eine weitere Lösung der Aufgabe der vorliegenden Erfindung wird ausgehend von dem Steuergerät der eingangs genannten Art vorgeschlagen, dass das Steuergerät Mittel zum Ermitteln einer Zeitbasis aufweist, die nach einem Hochfahren des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus bis zu einem Rücksetzen des Rechners auf Grund einer fehlenden Bedienung der Überwachungsschaltung nach dem zeitlichen Muster vergeht, und dass das Steuergerät zweite Mittel zum Bedienen der Überwachungsschaltung in der Zeitbasis entsprechenden zeitlichen Abständen aufweist.
Weitere Merkmale, Anwendungsmöglichkeiten und Vorteile der Erfindung ergeben sich aus der nachfolgenden Beschreibung von Ausführungsbeispielen der Erfindung, die in der Zeichnung dargestellt sind. Dabei bilden alle beschriebenen oder dargestellten Merkmale für sich oder in beliebiger Kombination den Gegenstand der Erfindung, unabhängig von ihrer Zusammenfassung in den Patentansprüchen oder deren Rückbeziehung sowie unabhängig von ihrer Formulierung bzw. Darstellung in der Beschreibung bzw. in der Zeichnung. Es zeigt:
Fig. 2 ein Ablaufdiagramm eines erfindungsgemäßen Verfahrens gemäß einer bevorzugten Ausführungsform.
Fig. 1 zeigt eine Anordnung mit einem Watchdog und einem Microcontroller, welche erfindungsgemäß betrieben bzw. ausgestaltet ist.
Beschreibung der Ausführungsbeispiele
Fig. 1 zeigt einen Microcontroller µC mit wenigstens einem Steuerelement SE, insbesondere wenigstens einem Speicherelement, z. B. ein Read-Only-Memory, Random-Access-Memory oder Flash-Memory, und einen Watchdog WD, welche miteinander verbunden sind.
Über den Port WDS des Mikrocontrollers kann das Watchdogsignal, also ein Signal, welches nach einem bestimmten zeitlichen Muster übertragen wird, an den Watchdog WD auf dessen WDS Port übertragen werden.
Mit einem Watchdog Port IRS, welcher mit einem Reset-Port R des Microcontrollers verbunden ist kann ein Reset des Mikrocontrollers durch den Watchdog ausgelöst werden. Dazu wird beispielsweise ein Impulsresetsignal vom Watchdog and den Mikrocontroller µC gesandt.
Dabei ist die Anordung z. B. Teil eines Steuergerätes SG bzw. in einem Steuergerät SG untergebracht.
Der Watchdog und der Mikrocontroller werden dabei erfindungsgemäß synchronisiert, was anhand Fig. 2 näher erläutert wird.
Das in Fig. 2 dargestellte erfindungsgemäße Verfähren dient zum Synchronisieren eines Mikrocontrollers auf einen externen Watchdog. Ein Watchdog ist eine Hardware-Überwachungsschaltung, die von dem Mikrocontroller nach einem bestimmten zeitlichen Muster bedient werden muss. Wird der Watchdog nicht nach dem vorgegebenen zeitlichen Muster bedient, geht er von einer Fehlfunktion des Mikrocontrollers aus und veranlasst ein Rücksetzen des Mikrocontrollers. Das erfindungsgemäße Verfahren wird insbesondere zu Beginn einer Programmierung des Mikrocontrollers ausgeführt. Zur Programmierung ist der Mikrocontroller in einer Zielhardware, bspw. in einem Steuergerät für eine Steuer- oder Sicherheitseinrichtung für ein Kraftfahrzeug, eingelegt. Die Programmierung in der Zielhardware wird in der Regel durch eine serielle Kommunikation zwischen einem externen Programmierrechner und einem auf dem Mikrocontroller ablauffähigen Hilfsprogramm gesteuert. Das Hilfsprogramm wird auch als Bootloader bezeichnet und beinhaltet die Programmieralgorithmen und das Datenhandling.
Als Bootloader im Sinne der vorliegenden Erfindung wird zum einen ein mikrocomputerspezifischer Bootloader bezeichnet, der in der Regel von dem Halbleiterhersteller in dem Mikrocontroller zur Verfügung gestellt wird oder von einem Anwender vor dem Einbau des Mikrocontrollers in der Zielhardware in einem separaten Programmiergerät einprogrammiert wird. Ein derartiger Bootloader ist üblicherweise einheitlich für viele verschiedene Applikationen und anwenderunabhängig. Zum anderen kann es sich bei dem Bootloader aber auch um eine von dem Anwender für eine bestimmte Applikation oder nach bestimmten Anforderungen des Anwenders (Kompatibilität mit anderen Bootloadern, einheitliche Bootloader für einen bestimmten Kraftfahrzeugtyp oder für einen Kraftfahrzeughersteller, etc.) geschaffene Software handeln.
Bei dem in Fig. 2 dargestellten Ausführungsbeispiel des erfindungsgemäßen Verfahrens erfolgt die Synchronisation des Mikrocontrollers auf den externen Watchdog durch eine Programmsequenz zu Beginn des Bootloaders. Zunächst wird der Watchdog von dem Mikrocontroller nicht bedient. Es wird darauf gewartet, dass, der Watchdog ein Rücksetzen des Mikrocontrollers veranlasst, da der Watchdog nicht nach dem vorgegebenen zeitlichen Muster bedient worden ist. Vom Hochfahren des Rechners bis zum Rücksetzen des Rechners auf Grund einer ausbleibenden Bedienung des Watchdogs wird eine Zeitbasis gemessen und aus der Zeitbasis dann eine Watchdog-Zeit bzw. ein zeitlicher Abstand zwischen zwei aufeinanderfolgenden Bedienungen des Watchdogs ermittelt. In diesem zeitlichen Abstand kann der Mikrocontroller dann den Watchdog während der Programmierung bedienen und so ein Rücksetzen des Mikrocontrollers verhindern.
Das erfindungsgemäße Verfahren beginnt bei Funktionsblock 1 mit einem Hochfahren des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus. Der Rechner kann zum ersten Mal nach dem Einschalten des Rechners (sog. Kaltstart) oder nach einem Rücksetzbefehl des Watchdogs erneut hochfahren (sog. Warmstart).
In einem nachfolgenden Abfrageblock 2 wird überprüft, ob eine Power-On-Flag gesetzt ist. Die Power-On-Flag ist ein Hardware-Bit, das bei einem erstmaligen Hochfahren des Rechners nach dem Einschalten des Rechners gesetzt ist. Bei einem erneuten Hochfahren des Rechners auf Grund eins Rücksetzbefehls des Watchdogs ist die Power-On-Flag nicht gesetzt. Der Abfrageblock 2 ist nur bei solchen Mikrocontrollern vorhanden, die eine Power-On-Flag aufweisen. Die Abfrage der Power-On-Flag dient als zusätzliche Abfrage, ob der Rechner erstmalig nach dem Einschalten des Rechners oder nach einem Rücksetzbefehl des Watchdogs erneut hochfährt. Auf den Abfrageblock 2 könnte ohne Einschränkung der Funktionalität des erfindungsgemäßen Verfahrens auch verzichtet werden.
Falls der Rechner erstmalig nach dem Einschalten des Rechners hochfährt, wird zu Funktionsblock 3 verzweigt, wo ein Zähler gestartet wird. Der Zähler ist bspw. als ein System-Timer ausgebildet. Es gibt auch Mikrocontroller, die eine freilaufenden/selbststartenden System-Timer aufweisen (z. B. Motorola HC12), die nicht gestartet werden müssen. Bei solchen Mikrocontrollern kann in dem erfindungsgemäßen Verfahren auf den Funktionsblock 3 verzichtet werden.
Anschließend wird in einem Funktionsblock 4 der aktuelle Stand des System-Timers als Startzeit abgespeichert. In einem zweiten Speicherelement (Speicher2) wird in Funktionsblock 5 ein erstes vorgebbares Bitmuster (BITMUSTER1) abgelegt. Anschließend geht das erfindungsgemäße Verfahren in eine Endlosschleife 6 über, in deren Verlauf in einem Funktionsblock 7 die Differenz des aktuellen Stands des System-Timers und der Startzeit in einem ersten Speicherelement (Speicher1) abgelegt wird. Das erbte Speicherelement ist bspw. als ein Random-Access-Memory (RAM) ausgebildet, an dem während des Rücksetzens und des Hochfahrens des Rechners aufgrund eines Rücksetzbefehls des Watchdogs (Warmstart) ohne Unterbrechung eine Versorgungsspannung anliegt. Dadurch ist der Inhalt des ersten Speicherelements auch nach einem Rücksetzen des Rechners noch vorhanden, sofern die Versorgungsspannung stabil bleibt. Die Endlosschleife 6 wird so lange durchlaufen, bis der Watchdog ein Rücksetzen des Rechners veranlasst, da der Watchdog nicht nach dem vorgegebenen zeitlichen Muster bedient worden ist. Das Rücksetzen des Rechners ist in Fig. 2 durch eine gestrichelte Linie 8 dargestellt.
Nach dem Rücksetzen 8 des Rechners fährt der Rechner in Funktionsblock 1 erneut hoch. Da es sich um ein erneutes Hochfahren nach einem Rücksetzbefehl des Watchdogs handelt, ist die Power-On-Flag nicht gesetzt und das Verfahren verzweigt von Abfrageblock 2 zu Abfrageblock 9, wo überprüft wird, ob in dem zweiten Speicherelement (Speicher2) das erste Bitmuster (BITMUSTER1) abgelegt ist.
Da in dem Funktionsblock 5 in dem zweiten Speicherelement das erste Bitmuster abgelegt, wurde, wird nun von dem Abfrageblock 9 zu Funktionsblock 10 verzweigt, wo ein zweites Bitmuster (BITMUSTER2) in dem zweiten Speicherelement (Speicher2) abgelegt wird, wobei sich das zweites Bitmuster von dem ersten Bitmuster unterscheidet.
Anschließend wird in einem Funktionsblock 11 eine Watchdog-Zeit aus dem Produkt eines Korrekturfaktors K und dem Inhalt des ersten Speicherelements (Speicher1) ermittelt. Die Watchdog-Zeit ist der zeitliche Abstand, der zwischen zwei unmittelbar aufeinanderfolgenden Bediensignalen des Mikrocontrollers für den Watchdog liegt. Der Korrekturfaktor K ist kleiner als 1, vorzugsweise liegt er im Bereich zwischen 0,75 und 0,9. Durch den Korrekturfaktor K werden Toleranzen in dem Mikrocontroller oder in dem Watchdog berücksichtigt, indem die Bedienung des Watchdog zeitlich nach vorne verlagert wird. Dadurch kann ein fälschlicherweise ausgelöstes Rücksetzen des Rechners auf Grund einer zu späten Bedienung des Watchdogs verhindert werden.
In einem anschließenden Funktionsblock 12 wird eine Watchdog-Bedienung initialisiert mit einer Periode, die der Watchdog-Zeit entspricht. Schließlich wird zu der Bootloaderfunktionalität in Funktionsblock 13 verzweigt.
Dort wird mit Hilfe des Bootloaders ein Applikationsprogramm in den Programmspeicher des Mikrocontrollers geladen. Mit Hilfe verschiedener Applikationsprogramme kann eine Mikrocontroller-Bauart für verschiedene Steuerungsanwendungen eingesetzt werden. Mit der in Funktionsblock 12 bestimmten Periode wird während der Programmierung des Mikrocontrollers der Watchdog bedient, um ein Zurücksetzen des Mikrocontrollers während der Programmierung zu verhindern. Wenn kein Applikationsprogramm in den Programmspeicher des Mikrocontrollers geladen werden muss, z. B. in einem späteren Einsatz des Steuergerätes, weil das Applikationsprogramm bereits geladen ist, wird von dem Bootloader 13 direkt zu dem Applikationsprogramm gesprungen.
Nachfolgend wird ein Sonderfall des erfindungsgemäßen Verfahrens beschrieben, bei dem während der Endlosschleife 6 ein Rücksätzen des Mikrocontrollers auf Grund einer Fehlfunktion des Mikrocontrollers veranlasst wird. Die Endlosschleife 6 wird also früher als vorgesehen verlassen, was dazu führt, dass in dem ersten Speicherelement (Speicher1) ein falscher Wert abgelegt ist. Das wiederum führt dazu, dass nach dem erneuten Hochfahren des Rechners in dem Funktionsblock 11 eine falsche Watchdog-Zeit und in dem Funktionsblock 12 eine falsche Periode für die Watchdog-Bedienung festgelegt wird. Während der Programmierung des Mikrocontrollers in dem Funktionsblock 13 kommt es infolgedessen zu einem Rücksetzen des Rechners, da der Watchdog nach einem falschen zeitlichen Muster bedient worden ist. Das Rücksetzen ist in Fig. 2 mit einer gestrichelten Linie 14 dargestellt.
Nach dem Rücksetzen des Rechners fährt der Rechner erneut hoch. Der Funktionsblock 1 und der Abfrageblock 2 werden wie oben beschrieben durchlaufen. Von dem Abfrageblock 9 aus wird jedoch nicht - wie oben beschrieben - zu dem Funktionsblock 10, sondern zu dem Funktionsblock 3 verzweigt, da in dem vorherigen Durchlauf des Verfahrens in Funktionsblock 10 das zweite Bitmuster (BITMUSTER2) in dem zweiten Speicherelement (Speicher2) abgelegt worden ist. In den Funktionsblöcken 4 bis 7 wird dann wieder die Zeitdauer ermittelt und in dem ersten Speicher (Speicher1) abgelegt, die vom Hochfahren des Rechners bis zu einem Rücksetzen des Rechners auf Grund einer ausbleibenden Bedienung des Watchdogs vergeht. Anschließend wird dann in dem Funktionsblock 11 die richtige Watchdog-Zeit und in dem Funktionsblock 12 die richtige Periode für die Watchdogbedienung berechnet, so dass der Mikrocontroller während der Programmierung des Programmspeichers des Mikrocontrollers mit Hilfe des Bootloaders in Funktionsblock 13 mit dem von dem Watchdog vorgegebenen zeitlichen Muster bedient werden kann.

Claims (11)

1. Verfahren zum Betreiben mindestens eines Rechners und mindestens einer dem mindestens einen Rechner zugeordneten und nach einem bestimmten zeitlichen Muster von dem Rechner zu bedienenden Überwachungsschaltung (Watchdog), insbesondere für eine Steuer- oder Sicherheitseinrichtung für ein Kraftfahrzeug, wobei der Rechner rückgesetzt wird, falls die Überwachungsschaltung nicht nach dem zeitlichen Muster bedient wird, dadurch gekennzeichnet, dass nach einem Hochfahren (1) des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus eine Zeitbasis ermittelt wird, die nach dem Hochfahren des Rechners bis zu einem Rücksetzen des Rechners aufgrund einer fehlenden Bedienung der Überwachungsschaltung nach dem zeitlichen Muster vergeht, und dass die Überwachungsschaltung in zeitlichen Abständen bedient wird, die in Abhängigkeit von der Zeitbasis ermittelt werden (11).
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Verfahren ausgeführt wird bevor mit Hilfe eines in dem Rechner gespeicherten Hilfsprogramme (Bootloader) ein Applikationsprogramm in einen Programmspeicher des Rechners geladen wird (13).
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die zeitlichen Abstände durch Multiplikation der Zeitbasis mit einem Korrekturfaktor (K) ermittelt werden (11).
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass der Korrekturfaktor (K) kleiner als 1, vorzugsweise zwischen 0,75 und 0,9, gewählt wird.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass zum Ermitteln der Zeitbasis nach dem Hochfahren (1) des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus ein Zähler hochgezählt und der Zählerstand in einem ersten Speicherelement (Speichert), vorzugsweise einem Random-Access-Memory (RAM), abgelegt wird (7).
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass der Zählerstand nach einem erneuten Hochfahren des Rechners nach dem Rücksetzen des Rechners aufgrund einer fehlenden Bedienung der Überwachungsschaltung dar Zählerstand aus dem ersten Speicherelement (Speichen) ausgelesen und als Zeitbasis zum Bedienen der Überwachungsschaltung herangezogen wird (11).
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, dass nach einem Hochfahren (1) des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus ein zweites Speicherelement (Speicher2) mit einem ersten vorgebbaren Bitmuster (BITMUSTER1) belegt wird (5) und der Inhalt des zweiten Speicherelements (Speicher2) zum Erkennen eines erneuten Hochfahrens des Rechners bei jedem Hochfahren (1) des Rechners abgefragt wird (9).
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass nach einem erneuten Hochfahren des Rechners das zweite Speicherelement (Speicher2) mit einem von dem ersten Bitmuster (BITMUSTER1) unterschiedlichen zweiten vorgebbaren Bitmuster (BITMUSTER2) belegt wird (10).
9. Verfahren nach einem der Ansprüche 6 bis 8, dadurch gekennzeichnet, dass bei jedem Hochfahren (1) des Rechners überprüft wird (2), ob eine Markierung (Power-On-Flag) des Rechners zum Erkennen eines Hochfahrens des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus nach einem Einschalten des Rechners gesetzt ist.
10. Steuerelement, insbesondere Read-Only-Memory oder Flash-Memory, für ein Steuergerät insbesondere einer Steuer- oder Sicherheitseinrichtung für ein Kraftfahrzeug, auf dem ein Programm abgespeichert ist, das auf einem Rechner, insbesondere auf einem Mikroprozessor, ablauffähig und zur Ausführung eines Verfahrens nach einem der Ansprüche 1 bis 9 geeignet ist.
11. Steuergerät mit mindestens einem Rechner und mindestens einer dem mindestens einen Rechner zugeordneten und nach einem bestimmten zeitlichen Muster von dem Rechner zu bedienenden Überwachungsschaltung (Watchdog), insbesondere für eine Steuer- oder Sicherheitseinrichtung für ein Kraftfahrzeug, dadurch gekennzeichnet, dass das Steuergerät Mittel zum Ermitteln einer Zeitbasis aufweist, die nach einem Hochfahren des Rechners aus einem Rücksetzmodus in einen Arbeitsmodus bis zu einem Rücksetzen des Rechners aufgrund einer fehlenden Bedienung der Überwachungsschaltung nach dem zeitlichen Muster vergeht, und dass das Steuergerät zweite Mittel zum Bedienen der Überwachungsschaltung in der Zeitbasis entsprechenden zeitlichen Abständen aufweist.
DE10030991A 2000-06-30 2000-06-30 Verfahren und Vorrichtung zur Synchronisation eines Rechners und einer Überwachungsschaltung Ceased DE10030991A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE10030991A DE10030991A1 (de) 2000-06-30 2000-06-30 Verfahren und Vorrichtung zur Synchronisation eines Rechners und einer Überwachungsschaltung
US09/896,634 US6848064B2 (en) 2000-06-30 2001-06-29 Method and device for synchronizing a computing device and a monitoring circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10030991A DE10030991A1 (de) 2000-06-30 2000-06-30 Verfahren und Vorrichtung zur Synchronisation eines Rechners und einer Überwachungsschaltung

Publications (1)

Publication Number Publication Date
DE10030991A1 true DE10030991A1 (de) 2002-01-10

Family

ID=7646782

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10030991A Ceased DE10030991A1 (de) 2000-06-30 2000-06-30 Verfahren und Vorrichtung zur Synchronisation eines Rechners und einer Überwachungsschaltung

Country Status (2)

Country Link
US (1) US6848064B2 (de)
DE (1) DE10030991A1 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10252990B3 (de) * 2002-11-14 2004-04-15 Siemens Ag Steuereinheit zur Auslösung eines Insassenschutzmittels in einem Kraftfahrzeug und Verfahren zur Überwachung der ordnungsgemäßen Funktion einer vorzugsweise solchen Steuereinheit
WO2005098557A1 (de) * 2004-04-10 2005-10-20 Robert Bosch Gmbh Mikrocontrollersystem und betriebsverfahren dafür
EP1865393A1 (de) * 2006-06-08 2007-12-12 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungssystems, Kommunikationsteilnehmer und Automatisierungssystem
EP2590037A1 (de) * 2011-11-04 2013-05-08 VEGA Grieshaber KG Speicherüberprüfung durch Boot-Loader beim Starten eines Feldgeräts

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6959404B2 (en) * 2001-08-23 2005-10-25 Texas Instruments Incorporated Extended dynamic range watchdog timer
US7689875B2 (en) * 2002-04-25 2010-03-30 Microsoft Corporation Watchdog timer using a high precision event timer
US7308614B2 (en) * 2002-04-30 2007-12-11 Honeywell International Inc. Control sequencing and prognostics health monitoring for digital power conversion and load management
DE10225472A1 (de) * 2002-06-10 2003-12-18 Philips Intellectual Property Verfahren und Chipeinheit zum Überwachen des Betriebs einer Mikrocontrollereinheit
DE10225471A1 (de) * 2002-06-10 2003-12-18 Philips Intellectual Property Verfahren und Chipeinheit zum Überwachen des Betriebs einer Mikrocontrollereinheit
US7917738B2 (en) * 2002-06-11 2011-03-29 Nxp B.V. Method and base chip for monitoring the operation of a microcontroller unit
DE102004056416A1 (de) * 2004-11-23 2006-05-24 Robert Bosch Gmbh Beschleunigungssensor in einem Steuergerät
US20070168740A1 (en) * 2006-01-10 2007-07-19 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for dumping a process memory space
CN101916216B (zh) * 2010-09-08 2012-11-07 神州数码网络(北京)有限公司 一种嵌入式操作***中bootrom的自动修复装置和控制方法
CN103033244B (zh) * 2012-11-29 2014-10-15 一重集团大连设计研究院有限公司 一种矿用自卸车称重装置及其工作方法
CN104454344B (zh) * 2014-10-22 2017-12-29 四川东方电气自动控制工程有限公司 一种高效的状态码锁存复位设计方法
CN105425774B (zh) * 2015-11-30 2019-12-10 深圳市轱辘汽车维修技术有限公司 车载诊断接头的控制方法、装置及车载诊断接头
CN107957925B (zh) * 2016-10-17 2021-03-26 佛山市顺德区顺达电脑厂有限公司 用于计算机装置的***信息存取方法
US10296434B2 (en) * 2017-01-17 2019-05-21 Quanta Computer Inc. Bus hang detection and find out

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3224286A1 (de) * 1982-06-28 1983-12-29 Robert Bosch Gmbh, 7000 Stuttgart Steuervorrichtung mit einem mikrorechner
DE4023700C2 (de) 1990-07-26 1998-11-12 Bosch Gmbh Robert Schaltungsanordnung zur Überwachung der Freqenz einer Signalfolge einer elektronischen Vorrichtung, insbesondere eines Mikrorechners
DE4039355C2 (de) * 1990-12-10 1998-07-30 Bosch Gmbh Robert Vorrichtung zur Funktionsüberprüfung einer Watchdog-Schaltung
JPH08132992A (ja) * 1994-11-10 1996-05-28 Mitsubishi Electric Corp 車載用制御装置
DE19800462C1 (de) * 1998-01-08 1999-06-17 Siemens Ag Verfahren zum Synchronisieren einer elektronischen Einrichtung zur Funktionsüberwachung eines Mikroprozessors sowie elektronische Einrichtung zur Durchführung des Verfahrens
DE19845220A1 (de) * 1998-10-01 2000-04-13 Bosch Gmbh Robert Verfahren und Vorrichtung zur Synchronisation und Überprüfung von Prozessor und Überwachungsschaltung

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10252990B3 (de) * 2002-11-14 2004-04-15 Siemens Ag Steuereinheit zur Auslösung eines Insassenschutzmittels in einem Kraftfahrzeug und Verfahren zur Überwachung der ordnungsgemäßen Funktion einer vorzugsweise solchen Steuereinheit
US7426430B2 (en) 2002-11-14 2008-09-16 Siemens Aktiengesellschaft Control unit for activating an occupant protection means in a motor vehicle and method for monitoring the proper functioning of a control unit preferably of this type
WO2005098557A1 (de) * 2004-04-10 2005-10-20 Robert Bosch Gmbh Mikrocontrollersystem und betriebsverfahren dafür
US7653837B2 (en) 2004-04-10 2010-01-26 Robert Bosch Gmbh Microcontroller system and operating method for secure device locking using counter and timer
EP1865393A1 (de) * 2006-06-08 2007-12-12 Siemens Aktiengesellschaft Verfahren zum Betrieb eines Automatisierungssystems, Kommunikationsteilnehmer und Automatisierungssystem
EP2590037A1 (de) * 2011-11-04 2013-05-08 VEGA Grieshaber KG Speicherüberprüfung durch Boot-Loader beim Starten eines Feldgeräts
US8972786B2 (en) 2011-11-04 2015-03-03 Vega Grieshaber Kg Starting a field device

Also Published As

Publication number Publication date
US20020046362A1 (en) 2002-04-18
US6848064B2 (en) 2005-01-25

Similar Documents

Publication Publication Date Title
DE10030991A1 (de) Verfahren und Vorrichtung zur Synchronisation eines Rechners und einer Überwachungsschaltung
DE10049441B4 (de) Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems
EP1756986B1 (de) Verfahren zur etablierung einer globalen zeitbasis in einem zeitgesteuerten kommunikationssystem und kommunikationssystem
EP1854007A2 (de) Verfahren, betriebssysem und rechengerät zum abarbeiten eines computerprogramms
EP1810139B1 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
DE19630757A1 (de) Steuersystem mit einem Mikrocomputer und zugehöriger elektrisch rekonfigurierbarer Logikschaltung
EP0671031B1 (de) Mikrorechner mit überwachungsschaltung
EP2190697B1 (de) Steuergerät und verfahren zur ansteuerung von personenschutzmitteln
DE102006051909A1 (de) Elektronisches Kraftfahrzeugsteuergerät mit zumindest einem Mikroprozessorsystem
DE102014213922B4 (de) Fahrzeug-Infotainmentsystem
EP1812853B1 (de) Verfahren, betriebssystem und rechengerät zum abarbeiten eines computerprogramms
DE102019122601B4 (de) Informationsverarbeitungsvorrichtung
DE10200242B4 (de) Verfahren zur Funktionsüberwachung eines Steuergeräts
DE60030236T2 (de) Elektronischer Steuerapparat, der eine Modusüberprüfungsfunktion hat
EP2342606B1 (de) Steuergerät und verfahren zum betreiben eines steuergeräts, computerprogramm, computerprogrammprodukt
DE19605606B4 (de) Einrichtung zum Rücksetzen eines Rechenelements
EP2338111B1 (de) Verfahren und vorrichtung zum testen eines rechnerkerns in einer mindestens zwei rechnerkerne aufweisenden recheneinheit
DE102007038543B4 (de) Begleit-Chip zur Anwendung in einer Motorsteuerung
DE102017212918A1 (de) Verfahren zum Betreiben eines Steuergerätes und Vorrichtung mit zugehörigem Steuergerät
DE102009000874A1 (de) Verfahren zur Verbesserung der Analysierbarkeit von Softwarefehlern in einem Mikrocontroller
DE19618108A1 (de) Fahrzeugdiebstahl-Sicherungssystem und eine Diebstahlbestimmungseinrichtung dafür
EP1774417B1 (de) Verfahren und vorrichtung zum überwachen des ablaufs eines steuerprogramms auf einem rechengerät
DE10330695B4 (de) Fehlersicheres Programm
DE102016005928B4 (de) Beobachtungsvorrichtung und Verfahren zum Ermitteln einer Resetdauer eines Resets eines Steuergeräts eines Kraftfahrzeugs
DE19946096A1 (de) Steuergerät, insbesondere für ein Kraftfahrzeug

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
R084 Declaration of willingness to licence
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R003 Refusal decision now final