DE69219372T2 - Mikrorechner mit Zeitüberwachungseinrichtung - Google Patents

Mikrorechner mit Zeitüberwachungseinrichtung

Info

Publication number
DE69219372T2
DE69219372T2 DE69219372T DE69219372T DE69219372T2 DE 69219372 T2 DE69219372 T2 DE 69219372T2 DE 69219372 T DE69219372 T DE 69219372T DE 69219372 T DE69219372 T DE 69219372T DE 69219372 T2 DE69219372 T2 DE 69219372T2
Authority
DE
Germany
Prior art keywords
interrupt
wdt
request
cpu
watchdog timer
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
Application number
DE69219372T
Other languages
English (en)
Other versions
DE69219372D1 (de
Inventor
Tsuyoshi Katayose
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.)
NEC Electronics Corp
Original Assignee
NEC Corp
Nippon Electric Co Ltd
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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Application granted granted Critical
Publication of DE69219372D1 publication Critical patent/DE69219372D1/de
Publication of DE69219372T2 publication Critical patent/DE69219372T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • 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/0706Error 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/0721Error 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 within a central processing unit [CPU]
    • 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/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Description

    Hintergrund der Erfindung Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft einen Mikrocomputer, und insbesondere einen Mikrocomputer mit einem Zentralprozessor und einem Überwachungs-Zeitgeber, der eine nicht maskierbare Unterbrechung in Reaktion auf einen Überlauf des Zeitgebers erzeugt.
  • Beschreibung des zugehörigen Standes der Technik
  • Herkömmlich enthalten viele Mikrocomputer einen Zentralprozessor (der in der Beschreibung oft mit "CPU" abgekürzt wird), eine Unterbrechungssteuerung (die in der Beschreibung oft mit "INTC" abgekürzt wird) und periphere Schaltungen, wie beispielsweise einen ND-Wandler und eine serielle Übertragungsschaltung, von denen alle in einem einzigen Halbleitersubstratchip angeordnet sind, und weisen einen Überwachungs-Zeitgeber (der in der Beschreibung oft mit "WDT" abgekürzt wird) auf, der eine nicht maskierbare Unterbrechung in Reaktion auf einen Überlauf des Zeitgebers erzeugt, um die Zuverlässigkeit des gesamten Mikrocomputersystems zu erhöhen.
  • Im Fall einer Verwendung des Überwachungs-Zeitgebers wird ein Programm zum Löschen (oder Voreinstellen) eines Zählers des Überwachungs-Zeitgebers innerhalb jeder vorbestimmten Zeitperiode ohne Ausnahme vorbereitet, so daß dann, wenn das Programm ohne Schwierigkeiten ausgeführt wird, kein Überlauf des Überwachungs-Zeitgebers erzeugt wird. Beispielsweise tritt zur Zeit eines Programmablaufs dann, wenn der Zähler des Überwachungs-Zeitgebers aufgrund eines Auftretens einer Anormalität selbst nach dem Verstreichen einer vorbestimmten Zeitperiode nicht voreingestellt wird, ein Überlauf beim Überwachungs- Zeitgeber auf. Dieser Überlauf wird als nicht maskierbare Unterbrechung erfaßt, und eine Anormalität des Systems wird einer externen Vorrichtung berichtet, und eine Operation wird zu einem zuvor programmierten Programm verzweigt, wie beispielsweise zu einem Rücksetzprogramm zum Durchführen einer Verarbeitung für das Auftreten einer Anormalität.
  • Wie es oben angegeben ist, kann die WDT-(Überwachungs- Zeitgeber-)Unterbrechung nicht durch ein EI-Flag oder ähnliches maskiert werden, was unterschiedlich von normalen maskierbaren Unterbrechungen ist. Daher wird dann, wenn gerade ein anderes Unterbrechungsverarbeitungsprogramm ausgeführt wird, wenn die WDT-Unterbrechung auftritt, die Operation zum WDT- Unterbrechungsverarbeitungsprogramm verzweigt. Demgemäß gibt es dann, wenn es nötig ist, ein Programm vorzubereiten, das asynchron von einem Ausführungszustand eines internen Programms erzeugt und verarbeitet wird, ähnlich wie ein Unterbrechungsverarbeitungsprogramm zum Verarbeiten einer Unterbrechungsanforderung von einer externen Vorrichtung, eine Möglichkeit, daß der Zähler des Überwachungs-Zeitgebers nicht innerhalb der vorbestimmten Zeitperiode voreingestellt werden kann. Daher wird zum Verhindern, daß die WDT-Unterbrechung auftritt, weil die Situation derart falsch verstanden wird, daß sie eine Systemanormalität ist, der Befehl zum Voreinstellen des WDT zu Beginn des Unterbrechungsverarbeitungsprogramms ausgeführt.
  • Auch in dem Fall, daß es gewünscht ist, ein Unterbrechungsverarbeitungsprogramm in einer minimalen Zeit zu beenden, wie bei einem Anwendersystem zum Erfassen aus einer Unterbrechung eines äußeren Anschlusses, daß die Zufuhr elektrischer Leistung zum System gestoppt ist, und zum Ausführen eines Speicherns von Steuerdaten und einer Änderung von Anschlußtorausgaben, wird der Befehl zum Voreinstellen des WDT zu Beginn eines Unterbrechungsverarbeitungsprogramms ausgeführt, um zu verhindern, daß aufgrund des Auftretens der WDT- Unterbrechung Zeit verschwendet wird.
  • Zum Ermöglichen, den Befehl zum Voreinstellen des WDT zu Beginn des Unterbrechungsverarbeitungsprogramms auszuführen, empfängt die CPU keine Unterbrechungsanforderung von der Unterbrechungssteuerung ohne Ausnahme nur, nachdem die Operation zum Unterbrechungsverarbeitungsprogramm verzweigt ist.
  • Ein Befehl an einer Anfangsadresse des Unterbrechungsverarbeitungsprogramms wird nämlich sicher ausgeführt.
  • Andererseits führt die Unterbrechungssteuerung einen Empfang von Unterbrechungsverarbeitungsanforderungen und eine Prioritätspegelsteuerung durch und benachrichtigt die CPU über ein Auftreten einer Unterbrechungsanforderung. Wenn eine Vielzahl von Unterbrechungsverarbeitungsanforderungen miteinander konkurrieren, wird diese Unterbrechungssteuerung zum Verarbeiten einer zuerst aufgetretenen Anforderung konfiguriert, und zum Zurückhalten einer spät aufgetretenen Anforderung (von spät aufgetretenen Anforderungen). Daher verzweigt die CPU dann, wenn eine Unterbrechungsanforderung eines externen Anschlusses auftritt und von der Unterbrechungssteuerung zur CPU übertragen wird, wenn die WDT- Unterbrechungsverarbeitungsanforderung in einer Periode auftritt und der Unterbrechungssteuerung mitgeteilt wird, in der die CPU gerade die Verzweigungsverarbeitung ausführt, die zum Unterbrechungsverarbeitungsprogramm des externen Anschlusses geht, zuerst zum Unterbrechungsverarbeitungsprogramm des externen Anschlusses, um seinen Anfangsbefehl auszuführen, und verzweigt danach zum WDT-Unterbrechungsverarbeitungsprogramm.
  • Obwohl das Voreinstellen des Überwachungs-Zeitgebers zu Beginn des Unterbrechungsverarbeitungsprogramms ausgeführt wird, ist es nämlich dann, wenn der Überlauf im Überwachungs-Zeitgeber auftritt, in einem bestimmten Fall während der Ausführung der Unterbrechungsverarbeitung des externen Anschlusses so, daß die Operation durch die der CPU mitgeteilten WDT- Unterbrechungsverarbeitungsanforderung zum WDT- Unterbrechungsverarbeitungsprogramm verzweigt wird.
  • Im herkömmlichen Mikrocomputer tritt der Überlauf, wie es aus dem Obigen zu sehen ist, wenn die WDT-Unterbrechung und eine andere Unterbrechung miteinander konkurrieren, selbst dann, wenn der Befehl zum Voreinstellen des WDT zu Beginn des ersten verzweigten Unterbrechungsverarbeitungsprogramms ausgeführt wird, im Überwachungs-Zeitgeber auf, und die Operation wird durch die der CPU mitgeteilten WDT-Unterbrechungsverarbeitungsanforderung zum WDT- Unterbrechungsverarbeitungsprogramm verzweigt.
  • Daher wird in dem Fall, in dem es gewünscht ist, ein Unterbrechungsverarbeitungsprogramm in einer minimalen Zeit zu beenden, wie in einem Anwendersystem zum Erfassen aus einer Unterbrechung eines externen Anschlusses, daß die Zufuhr elektrischer Leistung zum System gestoppt ist, und zum Ausführen eines Speicherns von Steuerdaten und einer Änderung von Anschlußtorausgaben, wenn der Überwachungs-Zeitgeber verwendet wird, wenn das WDT- Unterbrechungsverarbeitungsprogramm die Verzweigung zum Rücksetzprogramm durchführt, die Verarbeitung für das Ausschalten der elektrischen Leistung nicht ausgeführt.
  • Andererseits ist in dem Fall, daß das WDT-Unterbrechungsverarbeitungsprogramm die Verzweigung zum Rücksetzprogramm nicht durchführt und die Operation nach der Beendigung der WDT-Unterbrechungsverarbeitung zum ersten verzweigten Unterbrechungsverarbeitungsprogramm zurückgebracht wird, da es nötig ist, das System durch vorheriges Berechnen der Verarbeitungszeit der WDT- Unterbrechung als verbrauchte Zeit zu entwickeln, eine zusätzliche Schaltung zum Aufrechterhalten der Zufuhr elektrischer Leistung zum Mikrocomputer während einer vorbestimmten Zeitperiode nach dem Abschalten der Leistung der Hauptzufuhr von elektrischer Leistung zum Anwendersystem erforderlich, um eine größere aufrechterhaltende elektrische Leistungskapazität zu haben. Dies ist eine Ursache für höhere Kosten.
  • In "Microelectronics Journal, Bd. 12, Nr. 2, März 81, Luton, GB, S.21-24, AR. Wood" sind Software-Techniken zum Prüfen von Hardwarefehlern oder Software- Fehlfunktionen offenbart.
  • Eines der offenbarten Verfahren ist die Verwendung eines Überwachungs- Zeitgebers. Der Überwachungs-Zeitgeber überwacht die Zeit, die vom Mikroprozessor benötigt wird, um Unterprogramme und Unterbrechungsprogramme auszuführen, und löst einen Alarm aus, wenn das Systemprogramm für länger als eine vorbestimmte Zeit in einem Unterprogramm bleibt. Der Zeitgeber wird durch ein Flag-Signal vom Mikroprozessor periodisch rückgesetzt. Die Befehle, die das Rücksetz-Flag zum Rücksetzen des Zeitgebers erzeugen, sind innerhalb des Ausführungsprogramms zwischen Unterprogramm-Verbindungen angeordnet. Der Hardware-Zeitgeber wird derart eingestellt, daß er eine Auszeit hat, die etwa um 20 Prozent länger als das längste richtige Unterprogramm ist, dessen Dauer aus der Anzahl von Befehlen und aus der Prozessorbefehlszykluszeit bestimmt werden kann.
  • Zusammenfassung der Erfindung
  • Demgemäß ist es eine Aufgabe der vorliegenden Erfindung, einen Mikrocomputer zu schaffen, der den oben angegebenen Nachteil des herkömmlichen überwunden hat.
  • Eine weitere Aufgabe der vorliegenden Erfindung besteht im Schaffen eines Mikrocomputers mit einem Überwachungs-Zeitgeber, wobei der Mikrocomputer nicht zum WDT-Unterbrechungsverarbeitungsprog ramm verzweigt, wenn die WDT- Unterbrechungsanforderung im Laufe einer Ausführung eines ersten oder zuvor verzweigten Unterbrechungsverarbeitungsprogramms auftritt.
  • Die obigen und andere Aufgaben der vorliegenden Erfindung werden gemäß der vorliegenden Erfindung durch einen Mikrocomputer gelöst, der folgendes aufweist: einen Zentralprozessor, einen Überwachungs-Zeitgeber, der eine Verarbeitungsanforderung erzeugt, wenn im Überwachungs-Zeitgeber ein Überlauf auftritt, eine Unterbrechungs-Steuerschaltung, die die vom Überwachungs-Zeitg eber erzeugte Vera rbeitungsanforderung als nicht maskierbare Unterbrechung verarbeitet, eine Einrichtung, um in Reaktion auf die Ausführung eines Befehls des Zentralprozessors ein Initialisierungssignal an den Überwachungs-Zeitgeber auszugeben, um den Überwachungs-Zeitgeber zu initialisieren, dadurch gekennzeichnet, daß die Unterbrechungs-Steuerschaltung weiterhin eine Einrichtung aufweist, die auf das Initialisierungssignat anspricht, um die vom Überwachungs-Zeitgeber erzeugte Verarbeitungsanforderung während einer Zeitdauer zu löschen, in der die Unterbrechungs-Steuerschaltung die Verarbeitungsanforderung aufrechterhält Die obigen und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden Beschreibung bevorzugter Ausführungsbeispiele der Erfindung unter Bezugnahme auf die beigefügten Zeichnungen klar.
  • Kurze Beschreibung der Zeichnungen
  • Fig. 1 ist ein Blockdiagramm eines wesentlichen Teils eines Ausführungsbeispiels des Mikrocomputers gemäß der vorliegenden Erfindung;
  • Fig. 2 ist ein Diagramm einer logischen Schaltung eines wesentlichen Teils der Unterbrechungssteuerung, die im in Fig. 1 gezeigten Mikrocomputer enthalten ist; und
  • Fig. 3 ist ein Blockdiagramm eines wesentlichen Teils eines weiteren Ausführungsbeispiels des Mikrocomputers gemäß der vorliegenden Erfindung.
  • Beschreibung der bevorzugten Ausführungsbeispiele
  • In Fig. 1 ist ein Blockdiagramm eines wesentlichen Teils eines Ausführungsbeispiels des Mikrocomputers gemäß der vorliegenden Erfindung gezeigt. Der gezeigte Mikrocomputer ist so aufgebaut, daß dann, wenn eine CPU (Zentralprozessor) einen WDT-(Überwachungs-Zeitgeber-)Initialisierungsbefehl ausführt, eine Unterbrechungssteuerung (INTC) eine WDT-Unterbrechung automatisch löscht, welche noch nicht von der CPU empfangen worden ist oder durch die CPU aufrechterhalten wird.
  • Der gezeigte Mikrocomputer ist allgemein mit dem Bezugszeichen 1 bezeichnet und ist über einen Bus 5 mit einer Speichereinheit 2 gekoppelt. Der Mikrocomputer 1 enthält darin eine CPU 10, einen Überwachungs-Zeitgeber 11 und eine Unterbrechungssteuerung 12, die durch den Bus 5 für eine gegenseitige Datenübertragung zwischen der CPU 10, dem Überwachungs-Zeitgeber 11 und der Unterbrechungssteuerung 12 gekoppelt sind.
  • Die CPU 10 enthält darin einen Programmzähler, ein Programmstatuswort, eine Recheneinheit, einen Befehlsdecoder, verschiedene Steuerregister, maskierbare Unterbrechungs-Sperr/Freigabe-Flags, etc., die in der Zeichnung der Vereinfachung der Zeichnungen halber nicht gezeigt sind, da diese Elemente Fachleuten auf dem technischen Gebiet wohlbekannt sind. Die CPU 10 führt verschiedene interne Operationssteuerungen des Mikrocomputers 1 durch, einschließlich einer Steuerung einer Ausführung von Befehlen, einschließlich eines Initialisierungsbefehls, der nur für den Überwachungs-Zeitgeber 11 verwendet wird, und einer Unterbrechungsverarbeitungssteuerung.
  • Die Speichereinheit 2 enthält einen Programmspeicher und einen Datenspeicher (von denen beide nicht gezeigt sind) zum Speichern verschiedener Typen von Daten.
  • Der Überwachungs-Zeitgeber 11 ist zum Beginnen seiner Zähloperation aufgebaut, wenn die CPU 10 nach einem Rücksetzen des Systems einen WDT- Initialisierungsbefehl ausführt und ein WDTCLR-(Überwachungs-Zeitgeber-Lösch- )Signal 24 erzeugt. Danach wird der WDT-Initialisierungsbefehl jedesmal ausgeführt, wenn der Überwachungs-Zeitgeber initialisiert wird. Hier kann die Zähloperation des Überwachungs-Zeitgebers nicht durch ein Verfahren gestoppt werden, das ein anderes als das Rücksetzen des Systems ist. Wenn vor dem Ausführen des WDT-Initialisierungsbefehls im Überwachungs-Zeitgeber ein Überlauf auftritt, er zeugt der Überwachungs-Zeitgeber 11 eine WDT- Unterbrechungsverarbeitungsanforderung INTWDT 21, die zur Unterbrechungssteuerung 12 eingegeben wird.
  • Die Unterbrechungssteuerung 12 empfängt ein maskierbares Unterbrechungs- Freigabesignal EI 26 und führt die Empfangssteuerung und die Prioritätspegelsteuerung der Verarbeitungsanforderung INTWDT 21 und andere auftretende Unterbrechungsanforderungen auf der Basis des empfangenen maskierbaren Unterbrechungs-Freigabesignals EI 26 und der Inhalte von internen Steuerregistern durch, die in der Unterbrechungssteuerung vorgesehen sind. Als Ergebnis gibt die Unterbrechungssteuerung 12 dann, wenn eine Bedingung zum Empfangen der Unterbrechung erfüllt wird, ein Unterbrechungsanforderungssignal INTREQ (INTRQ) 22 zur CPU 10 aus.
  • Wenn die CPU 10 das Unterbrechungsanforderungssignal INTREQ 22 empfängt, stoppt die CPU eine gerade ausgeführte programmierte Verarbeitung und führt die Unterbrechungsverarbeitung aus. Damit die CPU 10 nämlich in der Lage ist, die gestoppte programmierte Verarbeitung erneut zu starten, speichert sie Informationen des Programmzählers und des Programmstatuswortes zu einem Stapelbereich der Speichereinheit 2. Zusätzlich erzeugt die CPU ein Unterbrechungs- Bestätigungssignal INTACK 23 zur Unterbrechungssteuerung 12 und empfängt durch den Bus 5 von der Unterbrechungssteuerung 12 Vektorinformationen für die Unterbrechungsanforderung mit dem höchsten Prioritätspegel unter den gegenwärtig auftretenden Unterbrechungsanforderungen. Auf der Basis der empfangenen Vektorinformationen verzweigt die CPU 10 zur Anfangsadresse eines Unterbrechungsverarbeitungsprogramms, das zuvor in der Speichereinheit 2 eingestellt ist. Danach wird das verzweigte Unterbrechungsverarbeitungsprogramm ausgeführt.
  • Wenn das verzweigte Unterbrechungsverarbeitungsprogramm beendet ist, wird ein Rücksprungbefehl IRET ausgeführt, so daß das Programm gestoppt wird, weil die Unterbrechungsverarbeitung wieder begonnen wird. Für diesen Zweck werden die Informationen des Programmzählers und des Programmstatuswortes, die im Stapelbereich der Speichereinheit 2 gespeichert sind, zurückgebracht oder erneut gespeichert.
  • Andererseits löscht die Unterbrechungssteuerung 12 dann, wenn der WDT- lnitialisierungsbefehl durch die CPU 10 ausgeführt wird, das WDTCLR-Signal 24 nicht nur zum Überwachungs-Zeitgeber zugeführt, sondern auch zur Unterbrechungssteuerung 12, und in Reaktion auf das WDTCLR-Signal 24 löscht die Unterbrechungssteuerung 12 die in der Unterbrechungssteuerung 12 intern gehaltene WDT-Unterbrechungsanforderung. Bei dieser Anordnung wird nach der Ausführung des WDT-Initialisierungsbefehls die Operation nie zum WDT- Unterbrechungsprog ramm verzweigt, bis im Überwachungs-Zeitgeber 11 ein nächster Überlauf auftritt.
  • Nun wird eine interne Operation der Unterbrechungssteuerung 12 unter Bezugnahme auf das Diagramm einer logischen Schaltung der Fig. 2 beschrieben, die eine interne Struktur der Unterbrechungssteuerung 12 darstellt. Zur Vereinfachung der Klärung ist angenommen, daß die Unterbrechungsverarbeitungsanforderungen, die durch die Unterbrechungssteuerung 12 gesteuert werden, vier sind, nämlich drei normale Unterbrechungsverarbeitungsanforderungen 25a, 25b und 25c, und die WDT-Unterbrechungsverarbeitungsanforderung INTWDT 21.
  • Die Unterbrechungssteuerung 12 enthält vier Unterbrechungsanforderungs-Flags 30a, 30b, 30c und 30d zum jeweiligen einzelnen Speichern einer nicht maskierbaren Unterbrechungsverarbeitungsanforderung 25a, der WDT- Unterbrechungsverarbeitungsanforderung INTWDT 21 und von maskierbaren Unterbrechungsverarbeitungsanforderungen 25b und 25c, und Masken-Flags 31b und 31c zum jeweiligen einzelnen Sperren und Freigeben der maskierbaren Unterbrechungsverarbeitungsanforderungen 25b und 25c. Weiterhin enthält die Unterbrechungssteuerung 12 eine Prioritätspegelsteuereinheit 33 zum Durchführen einer Prioritätspegelsteuerung zwischen den Unterbrechungsverarbeitungsanforderun gen 25a, 25b und 25c und der WDT-Unterbrechungsverarbeitungsanforderung INTWDT 21, um eine Unterbrechungsverarbeitungsanforderung mit dem höchsten Prioritätspegel auszuwählen, und eine Vektorerzeugungseinheit 34 zum Erzeugen einer Vektorinformation entsprechend einer ausgewählten der Unterbrechungsverarbeitungsanforderungen 25a, 25b und 25c und der WDT- Unterbrechungsverarbeitungsanforderung INTWDT 21. Die erzeugte Vektorinformation wird zum Bus 5 über einen gesteuerten Pufferspeicher 35 ausgegeben, der aktiviert wird, wenn das Unterbrechungsanforderungs-Bestätigungssignal 23 aktiv ist.
  • Insbesondere hat das Unterbrechungsanforderungs-Flag 30a einen gesetzten Eingang 5, der angeschlossen ist, um eine Unterbrechungsverarbeitungsanforderung 25a zu empfangen, und einen Q-Ausgang, der mit einem Eingang eines Latchs 331a der Prioritätspegel-Steuereinheit 33 verbunden ist. Ein Auswahlsignal 35a, das vom Latch 331a ausgegeben wird, wird mit der Vektorerzeugungseinheit 34 und einem Eingang eines UND-Gatters 301a verbunden, das einen Ausgang aufweist, der mit einem Rücksetzeingang R des Flags 30a verbunden ist.
  • Das Unterbrechungsanforderungs-Flag 30d hat einen Setzeingang 5, der angeschlossen ist, um die Unterbrechungsverarbeitungsanforderung INTWDT 21 zu empfangen, und einen Q-Ausgang, der mit einem Eingang eines nicht invertierenden Eingangs eines UND-Gatters 332d der Prioritätspegel-Steuereinheit 33 verbunden ist. Das UND-Gatter 332d hat einen invertierenden Eingang, der mit dem Q-Ausgang des Flags 30a verbunden ist, und ein Ausgang des UND-Gatters 332d ist mit einem Eingang eines Latchs 331d des Prioritätspegel-Steuereinheit 33 verbunden. Ein vom Latch 331d ausgegebenes Auswahlsignal 35d ist mit der Vektorerzeugungseinheit 34 und einem Eingang eines UND-Gatters 301d verbunden, das einen Ausgang hat, der über ein ODER-Gatter 302 mit einem Rücksetzeingang R des Flags 30d verbunden ist. Das ODER-Gatter 302 empfängt das WDTCLR- Signal 24 an seinem anderen Eingang.
  • Das Unterbrechungsanforderungs-Flag 30b hat einen Setzeingang 5, der angeschlossen ist, um die Unterbrechungsverarbeitungsanforderung 25b zu empfangen, und einen Q-Ausgang, der mit einem Eingang eines nicht invertierenden Eingangs eines UND-Gatters 334 der Prioritätspegel-Steuereinheit 33 verbunden ist. Das UND-Gatter 334b hat einen anderen nichtinvertierenden Eingang, der angeschlossen ist, um das EI-Signal 26 zu empfangen, und einen invertierenden Eingang, der mit dem Masken-Flag 31b verbunden ist. Ein Ausgang des UND-Gatters 334b ist mit einem nichtinvertierenden Eingang eines UND-Gatters 332b verbun den. Das UND-Gatter 332b hat einen invertierenden Eingang, der mit einem Ausgang eines ODER-Gatters 333d verbunden ist, das ein Paar von Eingängen hat, die jeweils mit den Q-Ausgängen der Flags 30a und 30d verbunden sind. Ein Ausgang des UND-Gatters 332b ist mit einem Eingang eines Latchs 331b der Prioritätspegel-Steuereinheit 33 verbunden. Ein vom Latch 331b ausgegebenes Auswahisignal 35b ist mit der Vektorerzeugungseinheit 34 und einem Eingang eines UND-Gatters 301b verbunden, das einen Ausgang hat, der mit einem Rücksetzeingang R des Flags 30b verbunden ist.
  • Das Unterbrechungsanforderungs-Flag 30c hat einen Setzeingang S, der angeschlossen ist, um die Unterbrechungsverarbeitungsanforderung 25c zu empfangen, und einen Q-Ausgang, der mit einem Eingang eines nichtinvertierenden Eingangs eines UND-Gatters 334c der Prioritätspegel-Steuereinheit 33 verbunden ist. Das UND-Gatter 334c hat einen weiteren nichtinvertierenden Eingang, der angeschlossen ist, um das EI-Signal 26 zu empfangen, und einen invertierenden Eingang, der mit dem Masken-Flag 31c verbunden ist. Ein Ausgang des UND-Gatters 334c ist mit einem nichtinvertierenden Eingang eines UND-Gatters 332c verbunden. Das UND-Gatter 332c hat einen invertierenden Eingang, der mit einem Ausgang eines ODER-Gatters 333b verbunden ist, das ein Paar von Eingängen hat, die jeweils mit dem Ausgang des UND-Gatters 334b und dem Ausgang des ODER-Gatters 333d verbunden sind. Ein Ausgang des UND-Gatters 332c ist mit einem Eingang eines Latchs 331c der Prioritätspegel-Steuereinheit 33 verbunden. Ein Auswahlsignal 35c, das vom Latch 331c ausgegeben wird, ist mit der Vektorerzeugungseinheit 34 und einem Eingang eines UND-Gatters 301c verbunden, das einen Ausgang hat, der mit einem Rücksetzeingang R des Flags 30b verbunden ist.
  • Der Ausgang des UND-Gatters 334c und der Ausgang des ODER-Gatters 333b sind mit einem Paar von Eingängen eines ODER-Gatters 333c verbunden, welches wiederum einen Ausgang hat, der das Unterbrechungsanforderungssignal INTRQ 22 zur CPU 10 erzeugt. Der jeweils andere Eingang der UND-Gatter 301a, 301b, 30c und 301d ist angeschlossen, um das Unterbrechungs-Bestätigungssignal 23 zu empfangen.
  • Zusätzlich arbeiten die internen Latchs 331a bis 331d zum Zwischenspeichern ihrer Eingaben nicht nur dann, wenn ihre Eingabe auf "1" aktiviert ist, sondern auch dann, wenn das WDTCLR-Signal 24 auf "1" aktiviert ist.
  • Bei diesem Beispiel sind durch die Wirkung der Struktur der logischen Schaltung, die aus den UND-Gattern 332d, 332b und 332c und den ODER-Gattern 333d und 333b aufgebaut ist, die Prioritätspegel der Unterbrechungsverarbeitungsanforderungen 25a, 25b und 25c und der WDT-Unterbrechungsverarbeitungsanforderung INTWDT 21 fest. Die Reihenfolge der Prioritätspegel ist nämlich folgendermaßen: (die Unterbrechungsverarbeitungsanforderung 25a) > (die WDT Unterbrechungsverarbeitungsanforderung 1 NTWDT 21) > (die Unterbrechungsverarbeitungsanforderung 25b) > (die Unterbrechungsverarbeitungsanforderung 25c). Zusätzlich sind die maskierbaren Unterbrechungsanforderungen in einem Bestätigungsfreigabezustand (d.h. das EI-Signal 26 ist aktiv und die Masken-Flags 31b und 31c sind nicht gesetzt.).
  • Zuerst wird eine Operation bei dem Fall erklärt, bei dem eine Vielzahl von Verarbeitungsanforderungen gleichzeitig auftritt. Wenn die Unterbrechungsverarbeitungsanforderung INTWDT 21 und die Unterbrechungsverarbeitungsanforderung 25b gleichzeitig auftreten, werden die Unterbrechungsanforderungs-Flags 30d und 30b auf "1 " gesetzt, und dies wird der Prioritätspegel-Steuereinheit 33 berichtet. Wie es oben angegeben ist, wird das Auswahisignal 35d deshalb, weil (die WDT- Unterbrechungsverarbeitungsanforderung INTWDT 21) > (die Unterbrechungsverarbeitungsanforderung 25b), auf "1" aktiviert, welches zur Vektorerzeugungseinheit 34 zugeführt wird und auch in Richtung zum Unterbrechungsanforderungs-Flag 30d rückgekoppelt wird. Gleichzeitig wird das Unterbrechungsanforderungssignal INTRQ 22 zur CPU 10 zugeführt. Zu dieser Zeit sind alle anderen Auswahlsignale 35a, 35b und 35c inaktiv, d.h. "0".
  • Wenn das Unterbrechungsanforderungssignal INTRQ 22 durch die CPU 10 bestätigt wird, wird das Unterbrechungs-Bestätigungssignal 23 zur Unterbrechungssteuerung 12 zugeführt. In Reaktion auf dieses aktive Unterbrechungs- Bestätigungssignal 23 wird das aktive Auswahlsignal 35d durch sein zugehöriges UND-Gatter 301d geführt und an den Rücksetzeingang R des Unterbrechungsanforderungs-Flags 30d angelegt, um den Q-Ausgang des Unterbrechungsanforderungs-Flags 30d auf "0" rückzusetzen.
  • Andererseits gibt die Vektorerzeugungseinheit 34 eine Vektorinformation entsprechend der Unterbrechungsanforderung INTWDT 21 über den Bus zur CPU aus, da der Steuer-Pufferspeicher 35 durch das Unterbrechungs-Bestätigungssignal 23 in einen aktivierten Zustand versetzt wird.
  • Übrigens werden die Signalpegel der Auswahlsignale 25a bis 25d normalerweise in den internen Latches 331a bis 331d der Prioritätspegel-Steuereinheit 33 gehalten, nachdem das Unterbrechungsanforderungssignal INTRQ 22 erzeugt ist, bis das Unterbrechungs-Bestätigungssignal INTACK 24 durch die CPU 10 erzeugt wird. Daher wird mit der Unterbrechungsempfangsverarbeitung für die Unterbrechungsverarbeitungsanforderung 25 aufgehört oder sie wird aufrechterhalten.
  • Als nächstes wird eine Operation bei dem Fall beschrieben, bei dem eine Vielzahl von Unterbrechungsanforderungen zu Zeiten auftritt, die unterschiedlich voneinander sind. Es ist angenommen, daß die Unterbrechungsverarbeitungsanforderung 25c zuerst auftritt, das Unterbrechungsanforderungs-Flag 30c auf "1" gesetzt ist, was der Prioritätspegel-Steuereinheit 33 mitgeteilt wird. In der Prioritätspegel- Steuereinheit 33 wird das Auswahlsignal 35c auf "1" aktiviert, was zur Vektorerzeugungseinheit 34 und in Richtung zum Unterbrechungsanforderungs-Flag 30c übertragen wird, und das Unterbrechungsanforderungssignal INTRQ 22 wird zur CPU 10 ausgegeben. Zur gleichen Zeit sind alle anderen Auswahlsignale 35a, 35b und 35d inaktiv, d.h. "0".
  • Danach wird dann, wenn das INTWDT-Signal 21 erzeugt wird, das Unterbrechungsanforderungs-Flag 30d auf "1" gesetzt, was der Prioritätspegel- Steuereinheit 33 mitgeteilt wird. Wie es oben angegeben ist, ist die Beziehung der Prioritätspegel folgendermaßen: (die WDT- Unterbrechungsverarbeitungsanforderung INTWDT 21) > (die Unterbrechungsverarbeitungsanforderung 25c), aber da die Unterbrechungsanforderung 22 der CPU 10 mitgeteilt worden ist, werden die Auswahlsignale 35a bis 35d durch die internen Latchs 331a bis 331d aufrechterhalten, bis das Unterbrechungs-Bestätigungssignal 23 zur Unterbrechungssteuerung 12 zugeführt wird, nachdem die Unterbrechungsanforderung 22 bestätigt wurde. Das bedeutet, daß die Auswahlsignale 35a bis 35d unverändert bleiben. Demgemäß wird die Unterbrechungs-Bestätigungsverarbeitung für die Unterbrechungsverarbeitungsanforderung INTWDT 21 aufrechterhalten.
  • In beiden der oben angegebenen Fälle ist eine Operation zum Löschen der WDT- Unterbrechung bei einer Ausführung des WDT-Initialisierungsbefehls folgendermaßen: wenn der WDT-Initialisierungsbefehl ausgeführt wird, gibt die CPU das WDTCLR-Signal 24 zur Unterbrechungssteuerung 12 aus, so daß das Unterbrechungsanforderungs-Flag 35d auf "0" rückgesetzt wird.
  • Selbst während der Halteperiode nach der Erzeugung der Unterbrechungsanforderung INTRQ 22, bis zum Empfang des Unterbrechungs-Bestätigungssignals INTACK 24, führen die internen Latches 311a bis 331d die Zwischenspeicheroperation wieder in Reaktion auf das WDTCLR-Signal 24 durch, so daß die internen Latches 311a bis 331d erneuert werden. Als Ergebnis wird das Auswahisignal 35d auf "0" deaktiviert, und daher wird das Auftreten der Unterbrechungsverarbeitungsanforderung LNTWDT 21 gelöscht. Demgemäß wird die WDT- Unterbrechungsverarbeitung niemals durch die CPU 10 ausgeführt, und die Empfangssteuerung und die Prioritätspegelsteuerung für die Unterbrechungsverarbeitungsanforderungen 25a bis 25c, die andere als die Unterbrechungsverarbeitungsanforderung INTWDT 21 sind, werden durchgeführt.
  • Wie es oben angegeben ist, ist das oben angegebene Ausführungsbeispiel so konfiguriert, daß dann, wenn die CPU den WDT-Initialisierungsbefehl ausführt, die Unterbrechungssteuerung die WDT-Unterbrechungsanforderung automatisch löscht. Daher wird dann, wenn die WDT-Unterbrechungsanforderung gleichzeitig mit einer anderen Unterbrechungsanforderung auftritt, wenn der WDT- Initialisierungsbefehl zu Beginn des zuvor verzweigten Unterbrechungsverarbeitungsprogramms ausgeführt wird, die Operation niemals zum WDT- Unterbrechungsverarbeitungsprogramm verzweigt, und zwar selbst dann, wenn der Überlauf bereits erzeugt ist und die Unterbrechungsverarbeitungsanforderung mitgeteilt worden ist.
  • In Fig. 3 ist ein Blockdiagramm eines wesentlichen Teils eines weiteren Ausführungsbeispiels des Mikrocomputers gemäß der vorliegenden Erfindung gezeigt.
  • Das zweite Ausführungsbeispiel unterscheidet sich vom ersten Ausführungsbeispiel nur durch das Verfahren, durch das der durch die CPU auszuführende WDT- Initialisierungsbefehl und das WDTCLR-Signal erzeugt werden. Daher sind Elementen, die gleich jenen sind, die in Fig. 1 gezeigt sind, dieselben Bezugszeichen zugeordnet und ihre Erklärung wird weggelassen.
  • Unterschiedlich vom ersten Ausführungsbeispiel, bei dem der WDT- Initialisierungsbefehl in der CPU 10 ausgeführt wird und das WDTCLR-Signal durch die CPU 10 erzeugt wird, ist ein Mikrocomputer 201 des zweiten Ausführungsbeispiels derart, daß eine CPU 110 vorbestimmte Daten in ein internes Steuerregister 101 eines Überwachungs-Zeitgebers 111 unter Verwendung eines allgemeinen Befehis schreibt und ein Inhalt des internen Steuerregisters 101 durch einen internen Decoder 112 decodiert wird, was einen Überwachungs- Zeitgeberzähler 103 initialisiert. Der Decoder 112 erzeugt auch ein WDTCLR- Signal 124. Der Überwachungs-Zeitgeberzähler 103 erzeugt die WDT- Unterbrechungsverarbeitungsanforderung INTWDT 121, wenn ein Überlauf im Überwachungs-Zeitgeberzähler 103 auftritt.
  • Somit ist es nicht erforderlich, daß die CPU 110 in sich eine Schaltung zum Ausführen eines Befehls nur für den WDT-Initialisierungsbefehl hat. Daher ist es möglich, den Überwachungs-Zeitgeber 111 sogar durch Verwenden der CPU des Mikrocomputers zu steuern, die einen Befehlssatz hat, der den Befehl für nur den WDT-Initialisierungsbefehl nicht enthält. Dies ist auf eine gebräuchliche LSI (Mikrocomputer) anwendbar, in welcher ein CPU-Block allgemein ausgeführt ist und eine periphere Schaltung mit dem Überwachungs-Zeitgeber individuell aufgebaut ist.
  • Beim oben angegebenen Ausführungsbeispiel ist das WDT- Unterbrechungsanforderungs-Flag in der Unterbrechungssteuerung angeordnet. Jedoch kann ein ähnlicher Effekt selbst dann erwartet werden, wenn eine Modifikation in bezug auf den Effekt durchgeführt wird, daß ein Flag zum Speichern einer Verarbeitungsanforderung im Überwachungs-Zeitgeber intern vorgesehen ist und ein im Überwachungs-Zeitgeber intern vorgesehenen Flag gehaltenes Unterbrechungsanforderungssignal zur Unterbrechungssteuerung übertragen wird. Dies wird eine sogenannte Pegelunterbrechungssteuerung genannt.
  • Wie es aus der obigen Erklärung zu sehen ist, ist der Mikrocomputer gemäß der vorliegenden Erfindung derart, daß dann, wenn die WDT- Unterbrechungsanforderung mit einer anderen Unterbrechungsanforderung konkurrierend auftritt, wenn der WDT-Initialisierungsbefehl zu Beginn des zuvor verzweigten Unterbrechungsverarbeitungsprogramms ausgeführt wird, die Operation selbst dann nie zum WDT-Unterbrechungsverarbeitungsprogramm verzweigt wird, wenn der Überlauf bereits erzeugt worden ist und die Unterbrechungsverarbeitungsanforderung mitgeteilt worden ist.
  • Daher ist es bei einem Anwendersystem zum Erfassen aus einer Unterbrechung eines externen Anschlusses, daß die Zufuhr einer elektrischen Leistung zum System gestoppt ist, und zum Ausführen eines Sicherns von Steuerdaten und einer Änderung von Anschlußtorausgängen, möglich, den Nachteil zu vermeiden, daß die Verarbeitung zum Ausschalten elektrischer Leistung nicht durchgeführt wird, weil die Operation zum Rücksetzprogramm verzweigt wird, wenn die WDT- Unterbrechungsverarbeitungsanforderung auftritt. Demgemäß kann eine geeignete Verarbeitung durchgeführt werden.
  • Zusätzlich ist es in dem Fall, daß dann, wenn die WDT- Unterbrechungsverarbeitungsanforderung auftritt, die Operation nicht zum Rücksetzprogramm verzweigt wird, nicht mehr nötig, das System durch vorheriges Berechnen der Verarbeitungszeit der WDT-Unterbrechung als verbrauchte Zeit zu entwickeln. Daher kann das Unterbrechungsverarbeitungsprogramm der Unterbrechung eines externen Anschlusses in einer minimalen Zeit beendet werden.
  • Somit ist die Erfindung unter Bezugnahme auf die spezifischen Ausführungsbeispiele gezeigt und beschrieben worden. Es sollte jedoch beachtet werden, daß die vorliegende Erfindung keineswegs auf die Details der dargestellten Strukturen beschränkt ist, sondern daß Änderungen und Modifikationen innerhalb des Schutzumfangs der beigefügten Ansprüche durchgeführt werden können.

Claims (2)

1. Mikrocomputer (1) mit einer CPU (10,110), einem Überwachungs- Zeitgeber (11), der eine Verarbeitungsanforderung (21) erzeugt, wenn im Überwachungs-Zeitgeber (11) ein Überlauf auftritt, einer Unterbrechungs- Steuerschaltung (12), die die vom Überwachungs-Zeitgeber (11) erzeugte Verarbeitungsanforderung (21) als nichtmaskierbare Unterbrechung verarbeitet, einer Einrichtung, um in Reaktion auf die Ausführung eines vorgegebenen Befehis der CPU (10, 110) ein Initialisierungssignal (24) an den Überwachungs-Zeitgeber (11) auszugeben, um den Überwachungs-Zeitgeber (11) zu initialisieren, dadurch gekennzeichnet, daß die Unterbrechungs-Steuerschaltung (12) weiterhin eine Einrichtung aufweist, die auf das Initialisierungssignal (24) anspricht, um die vom Überwachungs-Zeitgeber (11) erzeugte Verarbeitungsanforderung (21) während einer Zeitdauer zu löschen, in der die Unterbrechungs-Steuerschaltung (12) die Verarbeitungsanforderung (21) aufrechterhält.
2. Mikrocomputer nach Anspruch 1, bei dem der Überwachungs- Zeitgeber (11) einen Überwachungszeitgeber-Zähler (103) zur Erzeugung der Verarbeitungsanforderung (21), wenn der Überlauf im Überwachungszeitgeber- Zähler (103) auftritt, ein internes Steuerregister (101), das von der CPU (10,110) mit vorgegebenen Daten beschrieben wird, und einen internen Decoder (112) zum Decodieren eines Inhalts des internen Steuerregisters (101) aufweist, um den Überwachungszeitgeber-Zähler (103) zu initialisieren, wenn der interne Decoder (112) die vorgegebenen Daten decodiert.
DE69219372T 1991-02-01 1992-02-03 Mikrorechner mit Zeitüberwachungseinrichtung Expired - Fee Related DE69219372T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3011827A JP2867717B2 (ja) 1991-02-01 1991-02-01 マイクロコンピュータ

Publications (2)

Publication Number Publication Date
DE69219372D1 DE69219372D1 (de) 1997-06-05
DE69219372T2 true DE69219372T2 (de) 1997-12-11

Family

ID=11788600

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69219372T Expired - Fee Related DE69219372T2 (de) 1991-02-01 1992-02-03 Mikrorechner mit Zeitüberwachungseinrichtung

Country Status (4)

Country Link
US (1) US5408643A (de)
EP (1) EP0497380B1 (de)
JP (1) JP2867717B2 (de)
DE (1) DE69219372T2 (de)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04306735A (ja) * 1991-04-04 1992-10-29 Toshiba Corp 非同期割込み禁止機構
JP2658697B2 (ja) * 1991-12-11 1997-09-30 富士通株式会社 ウォッチ・ドック・タイマ回路
US5530872A (en) * 1992-12-23 1996-06-25 International Business Machines Corporation Method and system for directing device driver to service multiple sequential interrupt requests generated by I/O device connected thereto
JPH08132992A (ja) * 1994-11-10 1996-05-28 Mitsubishi Electric Corp 車載用制御装置
US5541943A (en) * 1994-12-02 1996-07-30 At&T Corp. Watchdog timer lock-up prevention circuit
US5528756A (en) * 1995-01-30 1996-06-18 Elsag International N.V. Method and apparatus for performing supervisory functions in digital systems and obtaining diagnostics thereof
KR0177093B1 (ko) * 1995-05-31 1999-05-15 윤종용 Cpu 리셋회로
JP3357514B2 (ja) * 1995-09-20 2002-12-16 シャープ株式会社 暴走検出復帰方式
JPH09160807A (ja) * 1995-12-06 1997-06-20 Mitsuba Corp マイクロプロセッサの誤動作検出方法
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
DE19651075A1 (de) * 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
US5787290A (en) * 1996-12-20 1998-07-28 International Business Machines Corporation Adapter with an onboard interrupt controller for controlling a computer system
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
US5819095A (en) * 1996-12-20 1998-10-06 International Business Machines Corporation Method and apparatus for allowing an interrupt controller on an adapter to control a computer system
ATE243390T1 (de) * 1996-12-27 2003-07-15 Pact Inf Tech Gmbh Verfahren zum selbständigen dynamischen umladen von datenflussprozessoren (dfps) sowie bausteinen mit zwei- oder mehrdimensionalen programmierbaren zellstrukturen (fpgas, dpgas, o.dgl.)
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
JPH10269109A (ja) * 1997-03-21 1998-10-09 Mitsubishi Electric Corp マイクロコンピュータ
US6012154A (en) * 1997-09-18 2000-01-04 Intel Corporation Method and apparatus for detecting and recovering from computer system malfunction
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
US6393590B1 (en) * 1998-12-22 2002-05-21 Nortel Networks Limited Method and apparatus for ensuring proper functionality of a shared memory, multiprocessor system
CN1378665A (zh) 1999-06-10 2002-11-06 Pact信息技术有限公司 编程概念
US6496890B1 (en) 1999-12-03 2002-12-17 Michael Joseph Azevedo Bus hang prevention and recovery for data communication systems employing a shared bus interface with multiple bus masters
EP1342158B1 (de) 2000-06-13 2010-08-04 Richter, Thomas Pipeline ct-protokolle und -kommunikation
DE10049441B4 (de) * 2000-10-06 2008-07-10 Conti Temic Microelectronic Gmbh Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems
DE10049440A1 (de) * 2000-10-06 2002-04-11 Daimler Chrysler Ag Verfahren zum Betrieb eines von einem Prozessor gesteuerten Systems
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7844796B2 (en) * 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US7996827B2 (en) * 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
AU2003208266A1 (en) 2002-01-19 2003-07-30 Pact Xpp Technologies Ag Reconfigurable processor
EP1351145A1 (de) * 2002-04-04 2003-10-08 Hewlett-Packard Company Rechnerfehlerbehebung und Notifizierungssystem
US20040015741A1 (en) * 2002-07-17 2004-01-22 Adc Telecommunications Israel Ltd. Watchdog device operation
EP1383047A1 (de) * 2002-07-18 2004-01-21 Cp8 Verfahren zur Sicherung der Ausführung eines Programms gegen Strahlungsangriffe oder ähnliches
WO2004021176A2 (de) 2002-08-07 2004-03-11 Pact Xpp Technologies Ag Verfahren und vorrichtung zur datenverarbeitung
US20040034701A1 (en) * 2002-08-14 2004-02-19 Adc Dsl Systems, Inc. Watchdog termination in a communication system
AU2003289844A1 (en) 2002-09-06 2004-05-13 Pact Xpp Technologies Ag Reconfigurable sequencer structure
US20040098573A1 (en) * 2002-11-18 2004-05-20 Adc Telecommunication Israel Ltd. Configurable initialization of hardware
US20040250178A1 (en) * 2003-05-23 2004-12-09 Munguia Peter R. Secure watchdog timer
EP1661001A2 (de) * 2003-08-27 2006-05-31 Philips Intellectual Property & Standards GmbH Schaltungsanordnung und verfahren zum unterstützen und überwachen einer mikrosteuerung
EP1676208A2 (de) * 2003-08-28 2006-07-05 PACT XPP Technologies AG Datenverarbeitungseinrichtung und verfahren
CN100405307C (zh) * 2005-02-01 2008-07-23 艾默生网络能源有限公司 看门狗控制方法
FR2888370A1 (fr) * 2005-07-05 2007-01-12 St Microelectronics Sa Protection de l'execution d'un programme
WO2007082730A1 (de) * 2006-01-18 2007-07-26 Pact Xpp Technologies Ag Hardwaredefinitionsverfahren
CN100397353C (zh) * 2006-07-26 2008-06-25 华为技术有限公司 一种提高单板异常处理能力的***和方法
FR2910144A1 (fr) * 2006-12-18 2008-06-20 St Microelectronics Sa Procede et dispositif de detection errones au cours de l'execution d'un programme.
US7783872B2 (en) * 2007-03-30 2010-08-24 Dell Products, Lp System and method to enable an event timer in a multiple event timer operating environment
US9053233B2 (en) 2011-08-15 2015-06-09 Freescale Semiconductor, Inc. Method and device for controlling debug event resources
WO2013027529A1 (ja) 2011-08-25 2013-02-28 インターナショナル・ビジネス・マシーンズ・コーポレーション 割り込み処理に起因する異常動作の検知
JP5910793B2 (ja) * 2013-04-26 2016-04-27 株式会社オートネットワーク技術研究所 フェイルセーフ回路
GB201405323D0 (en) * 2014-03-25 2014-05-07 Imagination Tech Ltd Prioritsing events to which a processor is to respond
CN104899125B (zh) * 2015-06-04 2019-01-29 新华三技术有限公司 一种单板***的运行信息获取方法和装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0656591B2 (ja) * 1981-07-06 1994-07-27 株式会社日立製作所 デ−タ編集処理装置
JPS60263235A (ja) * 1984-06-12 1985-12-26 Omron Tateisi Electronics Co マイクロコンピユ−タシステム
JPS6129239A (ja) * 1984-07-19 1986-02-10 Nec Corp プロセツサ異常再開方式
JPH0795291B2 (ja) * 1986-01-13 1995-10-11 沖電気工業株式会社 ウオツチドツグタイマ
US4726024A (en) * 1986-03-31 1988-02-16 Mieczyslaw Mirowski Fail safe architecture for a computer system
JPS6355601A (ja) * 1986-08-26 1988-03-10 Matsushita Electric Works Ltd ウオツチドツグタイマ回路
US4956842A (en) * 1988-11-16 1990-09-11 Sundstrand Corporation Diagnostic system for a watchdog timer

Also Published As

Publication number Publication date
JPH04246740A (ja) 1992-09-02
EP0497380B1 (de) 1997-05-02
EP0497380A2 (de) 1992-08-05
JP2867717B2 (ja) 1999-03-10
DE69219372D1 (de) 1997-06-05
EP0497380A3 (en) 1993-05-12
US5408643A (en) 1995-04-18

Similar Documents

Publication Publication Date Title
DE69219372T2 (de) Mikrorechner mit Zeitüberwachungseinrichtung
DE19531653C2 (de) Einchip-Mikroprozessor mit eingebauter Selbsttestfunktion
DE69933515T2 (de) Peripherieprozessor
DE2722099C2 (de)
DE3876780T2 (de) Mikrorechner mit eingebauter chipauswahl und programmierbarer busdehnung.
DE3853759T2 (de) Datenprozessor mit zwei Betriebsmoden.
DE3786862T2 (de) Fehlertolerante Rechnerarchitektur.
DE69906156T2 (de) Mikroprozessorvorrichtung mit programmierbaren wartezuständen
DE69428634T2 (de) Hardware-Anordnung und Verfahren zur Ausdehnung der Datenverarbeitungszeit in den Fliessbandstufen eines Mikrorechnersystems
DE112006003598T5 (de) Fehlertolerantes Booten in Multiprozessorsystemen
DE69114321T2 (de) Zum Durchführen der Unterbrechungsverschachtelungsfunktion geeignetes Unterbrechungssteuerungsgerät.
CH654943A5 (de) Pruefeinrichtung fuer mikroprogramme.
DE3942669A1 (de) Virtuelles maschinensystem
DE69222468T2 (de) Vorrichtung zur Steigerung der Leistung eines einer Multiprozessorstruktur mit einer möglicherweise hohen Anzahl von Prozessoren zugeordneten Echtzeitsteuerprogrammkerns
DE4027510A1 (de) Ic mit testfunktion
DE69515811T2 (de) Zeitüberwachungsschaltung mit Schaltung zur Verhinderung von Blockierungen
DE69322554T2 (de) Unterbrechungsfreigabeschaltungen und -verfahren
DE69815006T2 (de) Datenverarbeitungseinheit mit Fehlerbeseitungsmöglichkeiten
DE102016122375A1 (de) Dynamischer containerisierter Systemspeicherschutz für Niedrigenergie-MCUs
DE3852721T2 (de) Einrichtung zum dynamischen Schalten der Taktquelle eines Datenverarbeitungssystems.
DE69622785T2 (de) Prozessorunterbrechungssteuerung
DE68921334T2 (de) Gerät zur programmierten vorübergehenden Aufhebung des Prozessorbetriebs zum Wiederversuch, zur Rückgewinnung und zum Austesten.
DE3750045T2 (de) Unterbrechungssteuerungsvorrichtung für eine virtuelle Maschine mit einer Vielzahl von Verarbeitungseinheiten.
EP1537482B1 (de) Verfahren und schaltungsanordnung zur synchronisation synchron oder asynchron getakteter verarbeitungseinheiten
DE68926266T2 (de) Datenprozessor mit der Fähigkeit, Unterbrechungen mit hoher Geschwindigkeit zu verarbeiten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: NEC ELECTRONICS CORP., KAWASAKI, KANAGAWA, JP

8339 Ceased/non-payment of the annual fee