DE3750948T2 - Datenverarbeitungssystem mit watch-dog Schaltung. - Google Patents
Datenverarbeitungssystem mit watch-dog Schaltung.Info
- Publication number
- DE3750948T2 DE3750948T2 DE3750948T DE3750948T DE3750948T2 DE 3750948 T2 DE3750948 T2 DE 3750948T2 DE 3750948 T DE3750948 T DE 3750948T DE 3750948 T DE3750948 T DE 3750948T DE 3750948 T2 DE3750948 T2 DE 3750948T2
- Authority
- DE
- Germany
- Prior art keywords
- reset signal
- reset
- output
- input
- predetermined
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 27
- 230000004044 response Effects 0.000 claims description 7
- 230000000295 complement effect Effects 0.000 claims description 4
- 125000004122 cyclic group Chemical group 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 239000004065 semiconductor Substances 0.000 claims description 3
- 230000001066 destructive effect Effects 0.000 claims description 2
- 230000007257 malfunction Effects 0.000 description 8
- 239000000872 buffer Substances 0.000 description 6
- 230000008859 change Effects 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000006880 cross-coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0763—Error or fault detection not based on redundancy by bit configuration check, e.g. of formats or tags
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Description
- Diese Erfindung bezieht sich auf ein programmiertes digitales Datenverarbeitungssystem mit einer Überwachungsschaltungsanordnung, die mit einem Rückstellsignaleingang gekoppelte Zeitsteuerungsmittel umfaßt und zur Erzeugung eines Ausgangssignals in Reaktion auf eine Überschreitung einer vorbestimmten Länge eines Intervalls zwischen aufeinanderfolgenden Rückstellvorgängen der Zeitsteuerungsmittel vorgesehen ist, wobei das genannte System so programmiert ist, daß es ein Hauptprogramm ausführt und vorbestimmte Rückstellsignale in die genannte vorbestimmte Länge nicht überschreitenden Intervallen an den genannten Rückstellsignaleingang liefert und dadurch die Zeitsteuerungsmittel zurücksetzt und so eingerichtet ist, daß es auf die Erzeugung eines genannten Ausgangssignals anspricht, indem es einen vorbestimmten Zustand annimmt, wobei jedes der genannten Rückstellsignale die Form eines Mehrbitwortes mit einem vorbestimmten Wert hat, der sich für aufeinanderfolgende Rückstellsignale in vorbestimmter Weise verändert, und wobei die Anordnung so eingerichtet ist, daß sie auch ein genanntes Ausgangssignal erzeugt, falls jedes dem Rückstellsignaleingang zugeführte Mehrbit-Rückstellsignal nicht den betreffenden vorbestimmten Wert aufweisen sollte.
- Überwachungsschaltungsanordnungen ("watch-dog circuit arrangements") sind hinlänglich bekannt und dienen der Überwachung der korrekten Implementierung eines Datenverarbeitungssystem-Programms. Die Zeitsteuerungsmittel können beispielsweise die Form eines kontinuierlich getakteten Zählers haben, der ein Überlaufsignal (das Zeitsteuerungsmittel-Ausgangssignal) abgibt, falls seine Kapazität überschritten wird, wobei der Zähler mit einem Rückstelleingang ausgestattet ist und ein diesem Rückstelleingang zugeführtes Signal dazu führt, daß der Zählerinhalt auf Null gesetzt wird. In seiner einfachsten Form kann das Datenverarbeitungssystem einen geeignet programmierten Mikrocomputer umfassen, wobei eine Einzelbitleitung seiner Ausgangsports mit dem Rückstelleingang des Zählers gekoppelt ist und wobei der Computer so programmiert ist, daß der Einzelbitleitung ein den Zähler rückstellendes Signal periodisch mit einer solchen Rate zugeführt wird, daß der Zähler stets vor einem Überlauf seines Inhalts zurückgesetzt wird. Bei normalen Betrieb gibt der Zähler daher nie ein Überlaufsignal ab. Wenn die Implementierung des Programms jedoch aus irgendeinem Grunde scheitern sollte, was dazu führt, daß die Rückstellung des Zählers ebenfalls scheitert, dann erreicht der Zählerinhalt schließlich sein Maximum, und der Zähler gibt ein Überlaufsignal ab. Der Überlaufsignalausgang kann beispielsweise mit einem "Gesamtrückstelleingang" des Mikrocomputers gekoppelt sein, so daß unter diesen Umständen der Mikrocomputer selbst zurückgestellt wird. Ein ähnliches Ergebnis wird erhalten, falls der Mikrocomputer fälschlicherweise mit einer Programmschleife beginnen sollte, die keinen Schritt beinhaltet, um der Einzelbitleitung ein Rückstellsignal für die Zeitsteuerung zuzuführen, oder einen solchen Schritt zwar beinhaltet, aber dieser Schritt nicht häufig genug wiederholt wird, um einen Überlauf des Zählerinhalts zu verhindern.
- GB-A-1 522 810 beschreibt ein System der eingangs genannten Art, das heißt ein System, das eine verbesserte Ausgestaltung des bis jetzt beschriebenen einfachen Systems darstellt. Bei diesem verbesserten System hat jedes Rückstellsignal die Form eines Mehrbitwortes mit einem Paar von vorbestimmten Werten, die altenieren und das Komplement des jeweils anderen darstellen. Die Zeitsteuerungsmittel werden nur in Reaktion auf die Zuführung eines solchen Rückstellsignals zurückgestellt, wenn das Signal den betreffenden vorbestimmten Wert aufweist. Wenn der Datenbus, der zur Übermittlung der Rückstellsignale an die Überwachungsschaltung verwendet werden kann, fehlerhaft arbeitet und dadurch die Rückstellsignale verstümmelt, werden die Zeitsteuerungsmittel folglich nämlich nicht zurückgesetzt und wird daraufhin ein Ausgangssignal erzeugt. (Bei dem bekannten System wird das Ausgangssignal dazu verwendet, einen Alarm auszulösen.) Somit wird auch das korrekte Funktionieren des Datenbusses überprüft. Eines der beiden Datenwörter wird, offenbar dauerhaft, im Speicher gespeichert. Wenn ein Rückstellvorgang für die Zeitsteuerungsmittel ausgeführt wird, wird dieses Wort in ein Register geschrieben und so als ein Rückstellsignal zur Überwachungsanordnung übertragen. Der Inhalt des Registers wird dann komplementiert und das Ergebnis ebenfalls zur Übenwachungsanordnung übertragen, wobei die beiden so übertragenen Wörter zusammen dazu führen, daß die Zeitsteuerungsmittel zurückgestellt werden. Die obengenannten vier Schritte stellen in dem System unmittelbar aufeinanderfolgende Schritte dar, und aus diesem Grunde ist es sehr wahrscheinlich, daß, wenn der Computer fälschlicherweise mit einer Programmschleife beginnt, in der Überwachungs-Rückstellsignale weiterhin mit der nahezu normalen Rate abgegeben werden, die Wörter immer noch in der korrekten Reihenfolge erscheinen, mit dem Ergebnis, daß die Zeitsteuerungsmittel unerwünschterweise weiterhin jedesmal zurückgestellt werden.
- Aufgabe der Erfindung ist es, diesen Nachteil zu beseitigen, und dazu ist das erfindungsgemäße programmierte digitale Datenverarbeitungssystem dadurch gekennzeichnet, daß es so programmiert ist, daß es während jedes Intervalls zwischen der Zuführung der aufeinanderfolgenden genannten Rückstellsignale an den genannten Rückstellsignaleingang den nächsten vorbestimmten Wert einem genannten Mehrbitwort zur Übertragung als dem nächsten Rückstellsignal zuweist und daß es weitere Hauptprogrammschritte zwischen jeder solchen Zuweisungsoperation und der unmittelbar vorangehenden und unmittelbar folgenden Zuführung eines Rückstellsignals ausführt.
- Es wurde nun erkannt, daß indem ein Schritt zur Zuweisung eines vorbestimmten Wertes zwischen der Zuführung jedes Rückstellwortes an den Rückstellsignaleingang und der Zuführung des nächsten derartigen Rückstellwortes an den solchen Zuweisungsschritt und dem unmittelbar vorangehenden und unmittelbar folgenden Rückstellsignalzuführungsschritt aufgenommen werden, eine Programmstruktur erhalten wird, die, wenn das Systemprogramm mit einer falschen Schleife beginnt, sehr wahrscheinlich dazu führt, daß die Zuweisungs- und Rückstellsignalzuführungsschritte in einer falschen Reihenfolge erfolgen oder einer der beiden Schritte gar nicht erfolgt, mit dem Ergebnis, daß, selbst wenn weiterhin Rückstellsignale mit der nahezu normalen Rate geliefert werden, es sehr wahrscheinlich ist, daß die Überwachungsschaltungsanordnung ihr Ausgangssignal wie gewünscht erzeugt.
- Die vorbestimmte An und Weise, wie sich der vorbestimmte Wert für aufeinanderfolgende Rückstellsignale verändert, kann im Prinzip beliebig sein (wobei berücksichtigt werden sollte, daß es für die Überwachungsanordnung notwendig ist, das Ergebnis der resultierenden Abfolge von Mehrbitworten, die bei Betrieb ihrem Rückstellsignaleingang zugeflihrt werden, zu "kennen"). Somit kann jeder vorbestimmte Wert aus dem vorangehenden Wert gewonnen werden, indem beispielsweise eine Rechenoperation ausgeführt wird, beispielsweise eine Addition oder Subtraktion einer Konstante. Vorzugsweise verändert sich der vorbestimmte Wert für aufeinanderfolgende Rückstellsignale jedoch entsprechend einer zyklischen Abfolge, die es beispielsweise ermöglicht, daß jeder vorbestimmte Wert dauerhaft in der Überwachungsschaltung zwecks Vergleich mit dem betreffenden empfangenen Rückstellsignal gespeichert wird. Im Prinzip kann eine solche zyklische Abfolge eine beliebige Anzahl der genannten vorbestimmten Werte enthalten, und im Prinzip braucht jeder vorbestimmte Wert in keiner besonderen Beziehung zu irgendeinem anderen vorbestimmten Wert zu stehen. Vorzugsweise besteht die zyidische Abfolge jedoch aus nur zwei vorbestimmten Werten, von denen jeder die komplementierte Version des jeweils anderen ist, beispielsweise ein Byte, das abwechselnd aus "0"- und "1"-Werten besteht, wodurch die Durchführung einer Überprüfung einer Kieuzkopplung zwischen benachbarten Bits ermöglicht wird. Entweder einer oder beide dieser Werte können zu einem beliebigen gegebenen Zeitpunkt vorzugsweise in einem Speicher mit wahlfreiem Zugriff gespeichert werden, aus dem sie auf eine im Grunde zerstörungsfreie Art und Weise für das betreffende Rückstellsignal ausgelesen werden können. Wenn nur ein Wert zu einem gegebenen Zeitpunkt gespeichert wird, kann jede der genannten Zuweisungsoperationen eine Komplementierung des momentan gespeicherten Wertes und einen Ersatz des momentan gespeicherten Wertes durch das Ergebnis umfassen. Wenn beide Werte zu einem irgendeinem gegebenen Zeitpunkt gespeichert werden, kann jede der Zuweisungsoperationen einen Wechsel eines Zeigers von einem gespeicherten Wert zum anderen umfassen Die Speicherung eines oder beider Werte im RAM verschafft eine Überprüfung, ob der betreffende Teil des RAM als Reaktion auf fehlerhaftes Funktionieren des Programms falsch überschrieben worden ist.
- Es kann dafür gesorgt werden, daß die Zeitsteuerungsmittel auf jedes genannte Rückstellsignal nur dann ansprechen, wenn das Rückstellsignal den vorbestimmten Wert aufweist, so daß die Zeitsteuerungsmittel selbst ein genanntes Ausgangssignal erzeugen, wenn während eines die vorbestimmte Länge überschreitenden Intervalls keine Rückstellsignale mit dem vorbestimmten Wert an den Rückstellsignaleingang geliefert werden, auch wenn Rückstellsignale mit anderen Werte während dieses Signals geliefert werden können Vorzugsweise ist die Anordnung jedoch so eingerichtet, daß sie direkt auf die Zuführung eines Rückstellsignals ohne den vorbestimmten Wert an den Rückstellsignaleingang anspricht, indem sie ein genanntes Ausgangssignal erzeugt.
- Das System kann so progammiert werden, daß es jedes Rückstellsignal innerhalb eines betreffenden vorbestimmten Zeitfensters dem Rückstellsignaleingang zuführt, und die Überwachungsschaltung kann so eingerichtet sein, daß sie auch ein genanntes Ausgangssignal erzeugt, wenn jedes dem Rückstellsignaleingang zugeführte Rückstellsignal diesem nicht innerhalb eines genannten vorbestimmten Zeitfensters zugeführt wird. Es kann beispielsweise dafür gesorgt werden, daß die Überwachungsschaltung die Zuführung eines Rückstellsignals an den Rückstellsignaleingang nur dann als Begrenzung eines genannten Intervalls behandelt, wenn diese Zuführung innerhalb eines vorbestimmten Zeitfensters erfolgt, so daß die Zeitsteuerungsmittel ihrerseits ein genanntes Ausgangssignal erzeugen, wenn dem Rückstellsignaleingang keine Rückstellsignale innerhalb der betreffenden genannten Zeitfenster, die die vorbestimmte Länge überschreiten, zugeführt werden, auch wenn weiterhin Rückstellsignale außerhalb solcher Zeitfenster geliefert werden können. Vorzugsweise ist die Anordnung jedoch so eingerichtet, daß sie direkt auf die Zuführung eines Rückstellsignals an den Rückstellsignaleingang außerhalb eines genannten Zeitfensters anspricht, indem sie ein genanntes Ausgangssignal erzeugt. Bei einer Fehlfunktion kann es sein, daß Rückstellsignale außerhalb solcher Zeitfenster geliefert werden, in welchem Falle dann auf die Fehlfunktion reagiert wird. Es kann dafür gesorgt werden, daß jedes genannte vorbestimmte unmittelbar vorangehende Rückstellsignal dem Rückstellsignaleingang zugeführt worden war. Wenn beispielsweise die Zeitsteuerungsmittel einen kontinuierlich getakteten Binärzähler umfassen, von dem ein Rückstelleingang mit dem Rückstellsignaleingang gekoppelt ist, kann jedes Zeitfenster einer Zeit entsprechen, während der ein bestimmtes Bits des Zählerinhalts einen gegebenen Wert aufweist. Wenn dies der Fall ist, kann das System so programmiert sein, daß es den Wert des genannten bestimmten Bits periodisch überprüft, um zu bestimmen, wenn es sich in den gegebenen Wert verändert hat, und daß es nach Detektierung einer solchen Veränderung dem Rückstellsignaleingang ein Rückstellsignal zuführt und zwischen der Detektion einer solchen Veränderung und der darauffolgenden Zuführung eines Rückstellsignals weitere Programmschritte ausführt. Die Ausführung der weiteren Programmschritte, das heißt die zeitliche Trennung des Rückstellsignals von der Detektion, die es ausgelöst hat, rnacht es weniger wahrscheinlich, daß das Rückstellsignal bei einer Fehlfunktion innerhalb eines genannten Zeitfensters geliefert wird.
- Vorzugsweise ist das System so programmiert, daß es die Überwachungsschaltungsanordnung beispielsweise durch Erzeugung einer für die Überwachungsanordnung spezifischen Adresse jedesmal eintaktet, wenn dem Rückstellsignaleingang ein Rückstellsignal zugeführt wird. Dies kann beispielsweise eine direkte Reaktion der Überwachungsanordnung auf die Zuführung eines Rückstellsignals ohne den vorbestimmten Wert und/oder eines Rückstellsignals außerhalb eines genannten Zeitfensters an den Rückstellsignaleingang vereinfachen.
- Wenn das System einen programmierten Microcomputer umfaßt, der mit einem externen Adreß-Latch ausgestattet ist, werden das Adreß-Latch und die Überwachungsschaltungsanordiiung vorzugsweise auf dem gleichen Halbleiter-Chip integriert.
- Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden näher beschrieben. Es zeigen:
- Figur 1 ein Blockschaltbild des Ausführungsbeispiels und
- Figur 2 einen Ablaufplan zur Erläuterung der Funktionsweise des Ausführungsbeispiels aus Figur 1.
- Figur 1 zeigt ein programmiertes digitales Datenverarbeitungssystem, das einen programmierten Mikrocomputer 1 umfaßt, der mit einem externen Adreß-Latch 5 und einer Überwachungsschaltungsanordnung ausgestattet ist.
- Der Mikrocomputer 1 hat kombinierte Adreß- und Datenbusleitungen für niedrigere Ordnung AD0... AD7 und Adreßbusleitungen für höhere Ordnung A8 ... A15, die mit anderen Teiien (nicht gezeigt) des Systems gekoppelt sein können, beispielsweise mit einem Programm- und/oder Datenspeicher, wie bei 2, 3 und 4 gezeigt. Da die Busleitungen A.0... AD7 eine doppelte Funktion haben, ist das Adreß- Latch 5 in bekannter Art und Weise eingerichtet. Wenn der Mikrocomputer 1 eine 16- Bit-Adresse ausgibt, gibt er ebenfälls ein Adreß-Lach-Freigabesignal an einem Ausgang ALE aus, der mit einem Eintaktungseingang 7 des Latch 5 verbunden ist. Dieses Signal bewirkt, daß das Latch 5 die Seinem Eingang 6 angebotenen acht Adreß-Bits niedrigerer Ordnung unter anderem einem Eingang 4 zuführt, wobei die acht Adreß-Bits höherer Ordnung einem Ausgang 3 zugeführt werden, woraufnin die Adreß/Datenbusleitungen AD0 .. AD7 verfügbar werden, um unter anderem über den Dateneingang/Ausgang 2 Datenbits vorn Mikrocomputer 1 zu empfangen oder an den Mikrocomputer 1 auszugeben. Der Mikrocomputer 1 hat in bekannter Weise auch einen Ausgang RD für ein Aktiv-Niedrig-Lesteuersignal, einen Ausgang WR für ein Aktiv-Niedrig-Schreibsteuersignal und einen Eingang RST für ein Aktiv-Niedrig-Ruckstellsignal. Die Ausgänge RD und WR können mit anderen Teilen (nicht gezeigt) des Systems gekoppelt sein, wie bei 8 und 9 schematisch angegeben.
- Die Überwachtungsanordnung umfaßt einen ersten und zweiten Komparator 10 und 11, einen 8-Zu-1-Decoder 12, einen 2-Zu-1-Multiplexer 13, einen durch zwei divdierenden Frequenzteiler, der von einem D-Typ-Flipflop 14 gebildet wird, dessen Ausgang Q über einen Invertierer 44 mit seinem Dateneingang D gekoppelt ist, ein D-Typ-Flipflop 15, eine Taktimpulsquelle 16, einen Zähler 18, einen acht Bit breiten Ausgangspuffer 18, einen Einschalt-Rückstellimpulsgeber 68, zwei UND-Gatter 69 und 70, ein NOR-Gatter 19 und zwei ODER-Gatter 20 und 21. Der Ausgang von Latch 5 ist mit einem acht Bit breiten ersten Eingang 22 von Komparator 11 verbunden, wobei ein festgelegtes 8-Bit-Byte Z einem acht Bit breiten zweiten Eingang 23 von Komparator 11 zugeführt wird. Der (Aktiv-Niedrig-)Ausgang 27 von Decoder 12 ist mit einem ein Bit breitem dritten Eingang 24 des Komparators 11 verbunden, dessem vierten Eingang 25 ein festgelegtes logisches "0"-Signal zugeführt wird. Der Kornparator 11 vergleicht die Gruppen von Bits, die seinem Eingang 22 zugeführt werden, mit den Gruppen von Bits, die seinein Eingang 23 zugeführt werden, und vergleicht das Bit, das seinem Eingang 24 zugeführt wird, mit dem Bit, das seinem Eingang 25 zugeführt wird, und erzeugt logisch "0" an seinem Ausgang 26, falls, und nur dann, in beiden Fällen Entsprechung vorliegt. Der Deooder 12 erzeugt logisch "0" an seinem. Ausgang 21, falls, und nur dann, der Mikrocomputer 1 eine bestimmte Gruppe von Bits in den Bitleitungen A8 .. A15 erzeugt, die mit dem Decodereingang 46 verbunden sind. Die Anordnung 11, 12 bildet so einen Adreß-Decoder für die Überwachungsschaltung; der Komparator 11 erzeugt logisch "0" an seinem Ausgang 26, falls, und nur dann, der Mikrocomputer 1 eine Adresse erzeugt, deren acht Bits niedrigerer Ordnung dem Byte Z entsprechen und deren acht Bits höherer Ordnung der Bit-Gruppe entsprechen, auf die der Decoder 12 anspricht. Der Komparatoreingang 22 und der Docodereingang 46 bilden so zusammen einen Eintaktungssignaleingang der Überwachung. Der Komparatorausgang 26 ist mit einem Eingang von jedem der ODER-Gatter 20 und 21 verbunden, deren zweite Eingänge mit den Mikrocomputerausgängen RD beziehungsweise WR verbunden sind. Das Gatter 20 erzeugt somit logisch "0" an seinem Ausgang 28, falls, und nur dann, der Mikrocomputer 1 die Überwachung taktet (eintaktet) und ebenfalls ein Aktiv-Nierrig-Lesesignal erzeugt) und das Gatter 21 erzeugt logisch "0" an seinem Ausgang 29, falls, und nur dann, der Mikrocomputer 1 die Überwachung taktet (eintaktet) und ebenfalls ein Aktiv-Hoch-Schreibsignal erzeugt.
- Die Adreß/Datenbitleitungen AD0... AD7 sind auch mit einem acht Bit breiten ersten Eingang 30 des Komparators 10 verbunden, von dem ein zweiter acht Bit breiter Eingang 31 mit dem acht Bit breiten Ausgang 32 des Multiplexers 13 verbunden ist. In die zwei acht Bit breiten Eingänge 33 und 34 des Multiplexers 13 werden festgelegte 8-Bit-Bytes X beziehungsweise Y eingespeist. In den Steuereingang 35 des Multiplexers 13 wird das Ausgangssignal des durch zwei dividierenden Flipflops 14 eingespeist. Der Komparator 10 hat einen Aktiv-Niedrig-Eintaktungssignaleingang 36, der mit dem Ausgang 29 des Gatters 21 verbunden ist. Der Ausgang 37 des Kornparators 10 ist sowohl direkt mit dem Dateneingang D des Flipflops 15 als auch über das UND-Gatter 70 mit dem (Aktiv-Niedrig-)Rückstelleingang RS des Zählers 17 verbunden. Der (auf negative Flanken ansprechende) Takteingang 38 des Flipflops 15 ist mit dem Ausgang des Gatters 21 verbunden, und der Takteingang 39 des Zählers 17 ist mit dem Ausgang des Taktsignalgebers 16 verbunden. Die beiden Eingänge des Gatters 19 sind mit dem Ausgang Q des Flipflops 15 beziehungsweise dem Ausgang für höchstwertige Bits Qn des Zählers 17 verbunden, wobei der Ausgang des Gatters 19 über das UND-Gatter 69 mit dem Aktiv-Niedrig-Eingang RST des Mikrocomputers 1, mit den asynchronen Aktiv-Niedrig-Rückstelleingängen RST der Flipflops 14 und 15 sowie mit dem zweiten Eingang des UND-Gatters 70 verbunden ist. Der zweite Eingang des UND-Gatters 69 wird vom Ausgang des Gebers 68 gespeist, der jedesmal, wenn das System eingeschaltet wird, kurzzeitig einen Ausgangsimpuls mit logisch "0" abgibt. Der Geber 68 kann beispielsweise eine Schmitt-Triggerschaltung umfassen, deren Eingang über einen Kondensator mit einer Stromversorgungsleitung und über einen Widerstand mit einer anderen Stromversorgungsleitung verbunden ist. Somit werden der Mikrocomputer 1, die Flipflops 14 und 15 sowie der Zähler 17 beim Einschalten zurückgestellt, und entweder der Ausgang des Flipflops 15 oder der Ausgang des Zählers 17 für das höchstwertigste Bit sollte ebenfalls logisch "1" annehmen. Wenn das Flipflop 14 sich im zurückgestellten Zustand befindet, steuert es den Multiplexer 13 so, daß er das Byte X dem Eingang 31 des Komparators 10 zuführt.
- Der Ausgang Qn-1 des Zählers für das zweithöchstwertige Bit ist mit allen Bitleitungen AD0 ... AD7 über den Mehrfachausgangspuffer 18 gekoppelt, von dem ein Aktiv-Niedrig-Signaleingang zur Ausgabefreigabe 40 mit dem Ausgang 28 des Gatters 20 verbunden ist. Der Ausgang Qn-1 des Zählers 17 ist auch mit dem (auf negative Flanken ansprechenden) Takteingang 41 des durch zwei dividierenden Flipflops 14 sowie auch mit einem dritten Einzelbiteingang 42 des Komparators 10 verbunden Einem vierten Einzelbiteingang 43 des Komparators 10 wird ein festgelegtes Signal mit logisch "1" zugeführt. Der Signalpegel am Ausgang 37 des Komparators 10 ist normalerweise logisch "1". Falls, und nur dann, ein Pegel logisch "0" am Eintaktungseingang 36 des Komparators 10 anliegt, vergleicht der Komparator 10 das an seinem Eingang 30 anliegende, aus dem Bitleitungen AD0 .. Ad7 kommende Byte mit dem an seinem Eingang 31 anliegenden, aus dem Multiplexer 13 kommende Byte (X oder Y) und vergleicht den Pegel an seinem Eingang 42 mit der an seinem Eingang 43 anliegenden logischen "1" und erzeugt logisch "0" an seinem Ausgang 36, falls) und nur dann, in beiden Fallen Entsprechung vorliegt.
- Bei Betrieb adressiert der Mikrocomputer 1 die Überwachungsanordnung in zwei verschiedenen Modi, nämlich einem Lesemodus und einem Schreibmodus, je nach dem, ob sie an ihrem Ausgang RD eine logische "0" oder an ihrem Ausgang WR eine logische "0" zusammen mit der Adresse auf den Leitungen AD0 ... A15 erzeugt, was dazu führt, daß der Komparator 11 eine logische "0" an seinem Ausgang 26 erzeugt. Im Lesemodus bewirkt die resultierende Freigabe des Puffers 18 durch das Ausgangssignal des Gatters 20, daß dieser Puffer den logischen Zustand des Ausgangs Qn-1 des Zählers 17 in die Busleitungen AD0-AD7 und damit in den Mikrocomputer 1 schreibt, der so feststellen kann, welches dieser logische Zustand ist. Im Schreibmodus (der bei normalen Betrieb nur eintritt, wenn der genannte logische Zustand "1" ist; siehe unten) führt der Mikroprozessor 1 den Bitleitungen AD0... AD7 bei normalen Betrieb dasjenige der Bytes X und Y zu, das momentan dem Eingang 31 des Kornparators 10 vom Multiplexer 13 angeboten wird. Unter der Annahme, daß der Ausgang Qn-1 des Zählers tatsächlich logisch "1" aufweist, erzeugt der Komparator 10, der durch die seinem Eingang 36 vorn Gatter 21 zugefüte logische "0" eingetaktet wird, logisch "0" an seinem Ausgang 37. Diese logische "0" setzt den Inhalt des Zählers 17 auf Null und wird auch im Flipflop 15 gespeichert, das durch den Übergang in negativer Richtung am Ausgang des Gatters 21 getaktet wird. Beide Eingänge des Gatters 19 weisen deshalb logisch "0" auf, 50 daß die Rückstellsignale RST des Mikrocomputers 1 und der Flipflops 14 und 15 logisch "1" aufweisen, das heißt, daß kein Rückstellen dieser Komponenten stattfindet. Das Rückstellen des Zählers 17 führt dazu, daß der Pegel an seinem Ausgang Qn-1 sich von logisch "1" in logisch "0" verändert, und dieser Übergang schaltet das die Frequenz durch zwei teilende Flipflop 14 in seinen Ausgabezustand um, was dazu führt, daß der Multiplexer 13 das andere der Bytes X und Y dem Eingang 31 des Komparators 10 zuführt. Bei normalen Betrieb wird dafär gesorgt, daß, beim nächsten Mal, wenn der Mikroprozessor im Schreibmodus auf die Überwachung zugreift, dieses andere Byte den Bitleitungen AD0... AD7 zugefhürt wird, womit das gleiche Ergebnis, wie soeben beschrieben, erhalten wird. Die Bytes X und Y werden den Bitleitungen AD0 ... AD7 abwechselnd für aufeinanderfolgende Zugriffe auf die Überwachung im Schreibmodus zugeführt, wobei der Eingang 30 des Komparators 10 dazu einen acht Bit breiten Eingang für ein Rückstellsignal für den Zähler 17 bildet.
- Ein Rückstellsignal wird dem Mikrocomputer 1 und Flipflops 14 und 15 über das Gatter 19 zugeführt, wenn jeder der beiden Eingänge von Gatter 19 aus irgendeinem Grunde logisch "1" annimmt. Eine erste Möglichkeit, wie dies geschehen kann, ist, daß der Zähler 17 (der kontinuierlich von der Quelle 16 getaktet wird) nicht häufig genug zurückgestellt wird, um zu verhindern, daß sein Ausgang Qn für das höchstwertige Bit logisch "1" annimmt. Das durch den Mikrocomputer 1 implementierte Programm ist so eingerichtet, daß es Übenwachungsschreiboperationen in ausreichend kurzen Intervallen beinhaltet, um dafür zu sorgen, daß diese Situation bei normalem Betrieb nie eintritt, vorausgesetzt, daß jede solche Schreiboperation zu dem oben im unmittelbar vorangegangenen Absatz beschriebenen Ergebnis führt. Sollte die Programmimplementierung jedoch aus irgendeinem Grunde aussetzen oder fälschlicherweise mit einer Programmmschleife begonnen werden, die keine Überwachungsschreiboperation beinhaltet, dann dürfte einleuchten, daß der Ausgang Qn des Zählers 17 schließlich logisch "1" annimmt, wodurch der Mikrocomputer 1 über das Gatter 19 wie gewünscht zurückgestellt wird. Dies wäre natürlich auch bei den bekannten Überwachungsanordnungen der Fall. Die gezeigte Anordnung spricht jedoch auf bestimmte andere Fehlfunktionen des Systems an, wie im folgenden erklärt werden soll. Eine zweite Möglichkeit, wie einer der beiden Eingänge des Gatters 19 logisch "1" annehmen kann und wodurch der Mikrocomputer 1 zurückgestellt werden kann, ist, daß das Zweite Flipflop gesetzt wird. Das Flipflop 15 wird jedesmal getaktet, wenn die Überwachung im Schreibmodus adressiert wird, und wenn das korrekte Byte X oder Y dann nicht an den Bitleitungen AD0 ... AD7 anliegen sollte, so daß der Komparator 10 keine logische "0" an seinem Ausgang 37 abgeben kann, dann wird eine logische "1" in das Flipflop 15 getaktet, die an seinem Ausgang Q auftritt und somit dem NOR-Gatter 19 zugeführt wird, was dazu führt, daß dem Mikrocomputer 1 sofort ein Rückstellsignal zugeführt wird, das heißt, ohne daß darauf gewartet wird, daß der Ausgang Qn des Zählers 17 logisch "1" annimmt.
- An erster Stelle sei darauf hingewiesen, daß, außer daß der Mikocomputer in Reaktion auf einen Zählerüberlauf zurückgesetzt wird, in Figur 1 ein Rücksetzen des Mikrocomputers 1 auch direkt in Reaktion auf die Erzeugung eines anderen Byte als des korrekten Byte X oder Y durch den Mikrocomputer 1 auf den Adreß/Datenbitleitungen AD0 ... AD7 erfolgt, wenn die Überwachung im Schreibmodus adressiert wird, da das Flipflop 15 unter diesen Umständen gesetzt wird. Der Mikrocomputer 1 wird daher direkt zurückgestellt, wenn einer oder mehrere der Bitausgänge AD0... AD7 fehlerhaft funktionieren (und faktisch auch, wenn einer der Ausgänge A8 ... A15 fehlerhaft fünktioniert), und auch wenn der Mikrocomputer 1 fälschlicherweise mit einer Programmschleife beginnt, in der er nicht abwechselnd die Bytes X und Y crzeugt. Des weiteren kann der Mikrocomputer 1 so programmiert werden, daß er diese Bytes im RAM speichert und sie jedesmal, wenn sie benötigt werden, ausliest und das ausgelesene Byte neu schreibt. Ist dies der Fall, so verschafft die Überprüfungsanordnung eine überprüfung, ob der betreffende Teil des RAM aus irgendeinem Grunde fehlerhaft geworden ist, beispielsweise, wenn das Programm ein Überschreiben der betreffenden Speicherplätze veranlaßt, wie es in manchen Fehlersituationen vorkommen kann. Wenn dies eintreten sollte, wird automatisch ein Rückstellsignal für den Mikrocomputer erzeugt. Die abwechselnden Bytes X und Y können voneinander abgeleitet werden, jedes kann beispielsweise das Komplement des jeweils anderen sein. Ist dies der Fall, so wird nur eine einzige RAM-Speicherstelle benötigt, um sie zu speichern, wobei der Mikrocomputer dann so programmiert wird, daß er jedesmal, wenn X oder Y benötigt wird, auf diese Speicherstelle zugreift, deren Inhalt der Überwachung zuführt und das Byte> auf das zugegriffen wurde, in der gleichen Speicherstelle neu schreibt und zwischen jedem Paar aufeinanderfolgener Zugriffe das gespeicherte Byte in das andere umsetzt, während er weitere Programmschritte zwischen jeder solchen Umsetzungsoperation sowie den unmittelbar vorangehenden und unmittelbar folgenden Zugriffs/Zuführungsoperationen ausführt. Ist dies der Fall, so lauten die Bytes X und Y vorzugsweise 10101010 beziehungsweise 01010101, um eine Überprüfung der Kreuzkopplung zwischen benachbarten Bitleitungen der Bitleitungen AD0 .. AD7 zu verschaffen.
- An zweiter Stelle sei auf die Verbindung des Ausgangs Qn-1 des Zählers 17 für die zweithöchstwertigen Bits mit dem Eingang 42 des Komparators 10 (in dem der Pegel an diesem Ausgang mit der dem Eingang 43 zugeführten logischen "1" verglichen wird) verwiesen. Dies bedeutet, daß, wenn die Überwachung im Schreibmodus adressiert wird, dann, obwohl der Ausgang Qn-1 logisch "1" aufweist, der Komparator 10 kein Ausgangssignal mit logisch "0" abgibt, selbst der Mikrocomputer 1 dann das korrekte Byte X oder Y den Bitleitungen AD0 ...AD7 zuführt. Mit anderen Worten, wenn die Überwachung im Schreibmodus zu einem Zeitpunkt adressiert wird, zu dem der Ausgang Qn-1 des Zählers 17 logisch "0" aufweist, führt das Flipflop 15 dem Microcomputer 1 über das Gatter 19 ein Rückstellsignal zu. Dieses Merkmal kann eine weitere Überprofung der korrekten Implementierung des Programms im Mikrocomputer 1 verschaffen, weswegen die Ausgangspuffer 18 und die Möglichkeit zur Adressierung der Überwachungsanordnung im Läsemodus vorgesehen sind. Der Microcomputer 1 kann so programmiert werden, daß er die Überwachung periodisch im Lesemodus adressiert, um den logischen Zustand des Ausgangs Qn-1 des Zählers 17 festzustellen und so zu bestimmen, wann dieser Zustand sich von "0" in "1" verändert hat, und ein Flag zu setzen, wenn dies eingetreten ist. Die ebenfalls im Programm enthaltenen Schritte zur Adressierung im Schreibmodus können so eingerichtet sein, daß sie in Wirklichkeit nur stattfinden und dabei auch das Flag zurucksetzen, wenn das Flag tatsächlich zur betreffenden Zeit gesetzt wurde. Die Periodendauer des am Ausgang Qn- 1 erscheinenden Rechtecksignals ist natürlich bekannt; sie wird von der Ausgangsfrequenz des Gebers 16 und der Kapazität des Zählers 17 bestimmt. Die Frequenz der Schritte zur Adressierung im Lesemodus und das Intervall zwischen jedem dieser Schritte und dem nächsten Schritt zur Adressierung im Schreibmodus kann daher so gewählt werden, daß dafür gesorgt wird, daß bei normalen Betrieb jedesmal, wenn ein Schritt zur Adressierung im Schreibmodus erfolgt und wenn ein Flag gesetzt ist, das Signal am Ausgang Qn-1 weiterhin logisch "1" ist. (Die Bedingung hierfür ist, daß das Intervall zwischen jedem Paar von aufeinanderfolgenden Schritten zur Adressierung im Lesemodus plus dem Intervall zwischen dem zweiten dieser Schritte und dem nächsten Schritt zur Adressierung im Schreibmodus geringer sein muß als die halbe Periodendauer, die das Signal am Ausgang Qn-1 haben wiirde, wenn der Zähler 17 frei laufen könnte.) Falls im Rahmen dieser Einschränkung jeder Schritt zur Adressierung im Schreibmodus im Programm einen möglichst großen zeitlichen Abstand vom unmittelbar vorangehenden Schritt zur Adressierung im Lesesemodus hat, verringert dies die Wahrscheinlichkeit, daß, falls eine kurze Programmschleife, mit der der Mikrocomputer 1 begonnen hat, tatsächlich einen Schritt zur Adressierung der Überwachung im Schreibmodus beinhaltet, diese Programmschleife auch einen Schritt zur Adressierung der Überwachung im Lesemodus beinhaltet, die notwendig ist um sie zu aktivieren. Ein weiterer Vorteil der Überprüfung des Ausgangs Qn-1 und der Tatsache, daß nur zur Überwachung geschrieben wird, wenn der dortige Pegel sich von "0" in "1" verändert hat, ist, daß die Wiederholungsfrequenz der Schreiboperationen zur Überwachung automatisch so eingestellt wird, daß sie zwischen ein halb mal und einmal der Frequenz des Signals am Ausgang Qn-1 beträgt, wodurch es ermöglicht wird, diese Wiederholungsrate zu optimieren und sie weniger davon abhängig ist, welche Programmteile das Programm jedesmal, wenn es ausgeführt wird, wirklich ausführt.
- Ein Beispiel für die Teile des Programms, mit dem der Mikrocomputer programmiert werden kann, die für die vorliegende Erfindung relevant sind, ist in Figur 2 gezeigt, die die Form eines Ablauflans hat. In dieser Figur haben die verschiedenen Blöcke die folgenden Bedeutungen.
- 50 - Start. (Ein dem Rückstelleingang RST des Mikrocomputers in Figur 1 zugeführtes Rückstellsignal führt zu einer Rückkehr des Programm zu diesein Schritt.)
- 51 - Initialisieren, einschließlich Schreiben des Bytes X (siehe Beschreibung von Figur 1) in eine bestimmte Adresse AD im RAM und Seteen der Flags F1 und F2 auf logisch "0")
- 52 - Teil des Hauptprogramms.
- 53 - ist der Ausgang Qn-1 des Zählers 17 in Figur 1 logisch "1"?
- 54 - Flag F1 auf logisch "1" setzen,
- 55 - Teil des Hauptprogramms.
- 56- Ist Flag F12 logisch "1"?
- 57 - Inhalt von RAM-Adresse AD zur Überwachung schreiben.
- 58 - Flag F2 auf logisch "1" setzen. Flag F1 auf logisch "0" setzen.
- 59 - Teil des Hautprogramms.
- 60 - Ist Flag F2 logisch "1"?
- 61 - Innhalt der RAM-Adresse AD komplementieren.
- 62 - Hag F2 auf logisch "0" setzen.
- Nach START (Schritt 50) wird das Byte X in Schritt 51 in eine Stelle AD im RAM geschrieben, vorzugsweise eine Speicherstelle, die wahrscheinlich überschrieben wird, wenn das Programm fehlerhaft funktioniert. Außerdem wird ein Flag F1, das dazu verwendet wird anzuzeigen, wenn das Signal am Ausgang Qn-1 des Zählers 17 als logisch "1" identifiziert wurde, auf logisch "0" gesetzt, ebenso wie ein Flag F2, das dazu verwendet wird anzuzeigen, daß zur Überwachung geschrieben worden ist. Dann (Schritt 52) wird ein Teil des Hauptprogramms des Mikrocomputers ausgeführt. Es wird daiui in Schritt 53 geprüft, ob der Ausgang Qn-1 logisch "1" aufweist, wobei der Mikrocomputer 1 zuerst das Adreß-Byte Z an seinen Ausgängen AD0 ... AD7 und das Byte, auf das der Decoder 12 anspricht, an seinen Ausgängen A8... A15 erzeugt, und dann logisch "0" an seinem Ausgang RD (Lesemodus) erzeugt und das Ausgangssignal des so freigegebenen Puffers 18 an seinen Ausgängen/Eingängen AD0 .... AD7 liest. Wenn Qn-1 "1" (Y) aufweist, wird das Flag F1 in Schritt 54 auf "1" gesetzt, und in jedern anderen Fall wird dann in Block 55 ein Teil des Hauptprogramms ausgeführt. Danach wird in Schritt 56 festgestellt, ob das Flag F1 gesetzt ist, das heißt, ob in Schritt 53 festgestellt wurde, daß Qn-1 logisch "1" aufwies. Wenn es (Y) aufwies, wird der Inhalt der RAM-Adresse AD (anfänglich Byte X, beispielsweise 01010101) in Schritt 57 zur Überwachung geschrieben (und auch in die Adresse AD zurückgeschrieben), wobei der Mikrocomputer 1 zuerst an seinen Ausgängen AD0... AD7 das Adreß-Byte Z und an seinen Ausgängen A8 .. A15 das Byte erzeugt, auf das der Decoder 12 anspricht, und dann an seinem Ausgang WR (Schreibmodus) logisch "0" und an seinen Ausgängen AD0... AD7 das Byte X aus der RAM-Adresse AD erzeugt. Bei normalem Betrieb, wenn Schritt 57 erfolgt, weist der Ausgang Qn-1 weiterhin logisch "1" auf, was dazu führt, daß der Zähler 17 zurückgestellt wird und das Flipflop 14 umschaltet aber keine allgemeine Rückstellung erfolgt. Das Flag F1 wird zurückgesetzt, und das Flag F2 wird auf "1" gesetzt (Block 58), wodurch angezeigt wird, daß zur Überwachung geschrieben würde. Das Programm fährt dann mit Block 59 fort, so wie es dies auch direkt von Schritt 56 aus tun würde, wenn dort festgestellt wird, daß Flag F1 nicht gesetzt ist (N). Block 59 repräsentiert den nächsten Teil des Fauptprogramms, nach dem das Flag F2 überprüft wird (Schritt 60), um festzustellen, ob Schritt 57 tatsächlich statt gefunden hat. Ist dies der Fall (Y), wird das Byte in der RAM-Adresse AD komplementiert und in Schritt 61 neu geschrieben, so daß es zu Y wird, um dem neuen Zustand des Multiplexers 13 zu entsprechen, woraufhin Flag F2 in Schritt 62 zurückgesetzt wird und das Programm wieder zu Block 52 zurückkehrt, wie es dies direkt tun würde, wenn das Ergebiüs der Überprüfung 60 "Nein" (N) lauten würde.
- Damit der Ausgang Qn-1 des Zählers 17 weiterhin "1" aufweist, falls das Ergebnis der Überprüfung 53 "Ja" lautet wird bei Ausführung des Schrittes 57 dafür gesorgt, daß, unter der Voraussetzung, daß das System korrekt funktioniert, das Zeitintervall zwischen aufeinanderfolgenden Paaren von Überprüfungen 53 plus der Zeit bis zum nächsten Schritt 57, falls dieser tatsächlich ausgeführt wird, immer geringer ist als eine halbe Periodendauer des am Ausgang Qn-1 des Zählers 17 auftretenden Signals.
- Falls erforderlich kann ein Verzögerungselement (nicht gezeigt) am Ausgang des Gatters 69 in Figur 1 vorgesehen werden, um dafür zu sorgen, daß jedes dort abgegebene Rückstellsignal eine ausreichend lange Dauer hat, bevor der Zähler 17 oder das Flipflop 15, die es ausgelöst haben, selbst zurückgestellt werden.
- Es sei darauf hingewiesen, daß die Teile des in Figur 1 gezeigten Systems, die nicht zum Mikrocomputer 1 gebören, vorteilhafterweise alle auf dem gleichen Halbleiter-Chip integriert werden.
- Beim Lesen der vorliegenden Beschreibung dürften dem Fachmann andere Abwandlungen als möglich erscheinen. Solche Abwandlungen können andere bereits bekarinte Merkmale bezüglich Design, Herstellung und Verwendung von Systemen, Vorrichtungen und Teilen davon beinhalten, die anstatt oder zusätzlich zu den hier bereits beschriebenen Merkmalen verwendet werden können.
Claims (9)
1. Programmiertes digitales Datenverarbeitungssystem mit einer
Überwachungsschaltungsanordnung, die mit einem Rückstellsignaleingang gekoppelte
Zeitsteuerungsmittel umfaßt und zur Erzeugung eines Ausgangssignals in Reaktion auf eine
Überschreitung einer vorbestimmten Lange eines Intervalls zwischen
aufeinanderfolgenden Rückstellvorgängen der Zeitsteuerungsmittel vorgesehen ist, wobei das genannte
System so programmiert ist, daß es ein Hauptprogramm ausführt und vorbestimmte
Rückstellsignale in die genannte vorbestimmte Länge nicht überschreitenden Intervallen
an den genannten Rückstellsignaleingang liefert und dadurch die Zeitsteuerungsmittel
zurücksetzt und so eingerichtet ist, daß es auf die Erzeugung eines genannten
Ausgangssignals anspricht, indem es einen vorbestimmten Zustand annimmt, wobei jedes der
genannten Rückstellsignale die Form eines Mehrbitwortes mit einem vorbestimmten
Wert hat, der sich für aufeinanderfolgende Rückstellsignale in vorbestimmter Weise
verändert, und wobei die Anordnung so eingerichtet ist, daß sie auch ein genanntes
Ausgangssignal erzeugt, falls jedes dem Rückstellsignaleingang zugeführte Mehrbit-
Ruckstellsignal nicht den betreffenden vorbestimmten Wert aufweisen sollte, dadurch
ekennzeichnet, daß das System so programmiert ist, daß es während jedes Intervalls
zwischen der Zuführung der aufeinanderfolgenden genannten Rückstellsignale an den
genannten Rückstellsignaleingang den nächsten vorbestimmten Weit einem genannten
Mehrbitwort zur Übertragung als dem nächsten Rückstellsignal zuweist und daß es
weitere Hauptprogrammschritte zwischen jeder solchen Zuweisungsoperation und der
unmittelbar vorangehenden und unmittelbar folgenden Zuführung eines Rückstellsignals
ausführt.
2. System nach Anspruch 1, wobei der genannte vorbestimmte Wert sich für
aufeinanderfolgende Rückstellsignale entsprechend einer zyklischen Abfolge verändert.
3. System nach Anspruch 2, wobei die Abfolge aus zwei vorbestimmten
Werten besteht, von denen jeder das Komplement des anderen ist.
4. System nach Anspruch 3, wobei jedes Mehrbitwort ein Byte ist, das aus
abwechselnden "0"- und "1"-Werten besteht.
5. System nach einem der vorstehenden Ansprüche, wobei das Mehrbitwort
in einem Speicher mit wahlfreiem Zugriff gespeichert wird, aus dem es für jedes
genannte Rückstellsignal auf im Grunde zerstörungsfreie Art und Weise ausgelesen
wird.
6. System nach einem der vorstehenden Ansprüche, wobei jede
Zuweisungsoperation eine Berechnung des vorbestimmten Wertes des Mehrbitwortes zur
Übertragung als dem nächsten Rückstellsignal ausgehend von dem als dem unmittelbar
vorangehenden Rückstellsignal übertragenem Mehrbitwort umfaßt.
7. System nach einem der vorstehenden Ansprüche, wobei die
Überwachungsschaltungsanordnung so eingerichtet ist, daß sie direkt auf die Zuführung eines
Rückstellsignals ohne den betreffenden vorbestimmten Wert zum Rückstellsignaleingang
anspricht, indem die Überwachungsschaltungsanordnung ein genanntes Ausgangssignal
erzeugt.
8. System nach einem der vorstehenden Ansprüche, das so programmiert ist,
daß es die Überwachungsschaltungsanordnung jedesmal eintaktet, wenn ein
Rückstellsignal dem Rückstellsignaleingang zugeführt wird.
9. System nach einem der vorstehenden Ansprüche mit einem
programmierten Mikrocomputer, der mit einem externen Adreß-Latch ausgestattet ist, wobei das
Adreß-Latch und die Überwachungsschaltungsanordnung auf dem gleichen Halbleiter-
Chip integriert sind.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB08626197A GB2197507A (en) | 1986-11-03 | 1986-11-03 | Data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3750948D1 DE3750948D1 (de) | 1995-02-16 |
DE3750948T2 true DE3750948T2 (de) | 1995-08-03 |
Family
ID=10606705
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3750948T Expired - Fee Related DE3750948T2 (de) | 1986-11-03 | 1987-10-30 | Datenverarbeitungssystem mit watch-dog Schaltung. |
Country Status (7)
Country | Link |
---|---|
US (1) | US5073853A (de) |
EP (1) | EP0266836B1 (de) |
JP (1) | JP2755581B2 (de) |
AU (1) | AU604776B2 (de) |
DE (1) | DE3750948T2 (de) |
GB (1) | GB2197507A (de) |
NZ (1) | NZ222361A (de) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2658303B1 (fr) * | 1990-02-09 | 1992-06-19 | Neiman Sa | Dispositif de surveillance du fonctionnement d'un systeme a microprocesseur ou analogue. |
GB2241799B (en) * | 1990-03-08 | 1993-12-08 | Sony Corp | Supervision of microprocessors |
US5278976A (en) * | 1990-04-16 | 1994-01-11 | Rolm Company | Method for detecting infinite loops by setting a flag indicating execution of an idle task having lower priority than executing application tasks |
DE4039355C2 (de) * | 1990-12-10 | 1998-07-30 | Bosch Gmbh Robert | Vorrichtung zur Funktionsüberprüfung einer Watchdog-Schaltung |
JP2758742B2 (ja) * | 1991-07-19 | 1998-05-28 | 日本電気株式会社 | 誤動作検出方式 |
FR2692379B1 (fr) * | 1991-10-04 | 1996-08-14 | Aerospatiale Ste Nat Indle | Procede de detection et de passivation de pannes dans un systeme de traitement de donnees, et systeme de traitement de donnees adapte a sa mise en oeuvre |
US5341497A (en) * | 1991-10-16 | 1994-08-23 | Ohmeda Inc. | Method and apparatus for a computer system to detect program faults and permit recovery from such faults |
JP2658697B2 (ja) * | 1991-12-11 | 1997-09-30 | 富士通株式会社 | ウォッチ・ドック・タイマ回路 |
JPH0683652A (ja) * | 1992-08-31 | 1994-03-25 | Sharp Corp | マイクロコンピュ−タシステム |
JPH06168163A (ja) * | 1992-09-30 | 1994-06-14 | Nec Home Electron Ltd | Cpu監視方法及びcpu監視装置 |
JP3135772B2 (ja) * | 1993-12-27 | 2001-02-19 | アスコ株式会社 | 車両用安全装置 |
US5948606A (en) * | 1994-03-31 | 1999-09-07 | Eastman Kodak Company | Protective top layer and photographic products containing this top layer |
KR100311366B1 (ko) * | 1994-11-28 | 2002-02-19 | 구자홍 | 워치독타이머기능을갖는콘트롤러 |
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 |
US5673389A (en) * | 1995-08-31 | 1997-09-30 | Ford Motor Company | Methods and apparatus for resetting a monitored system using a gray code with alternating check bits |
US5745386A (en) * | 1995-09-25 | 1998-04-28 | International Business Machines Corporation | Timing diagram method for inputting logic design parameters to build a testcase for the logic diagram |
KR100252250B1 (ko) * | 1996-06-28 | 2000-04-15 | 윤종용 | 시스템복구장치 |
DE19627362C2 (de) * | 1996-07-06 | 1998-11-26 | Bosch Gmbh Robert | Schaltung zur Initialisierung und Überwachung eines Mikroprozessors |
DE59708459D1 (de) * | 1996-08-12 | 2002-11-14 | Papst Motoren Gmbh & Co Kg | Anordnung zur überwachung eines mikroprozessors |
DE19827430C2 (de) * | 1997-07-22 | 2001-07-12 | Siemens Ag | Überwachungsverfahren zur Erkennung von Endlosschleifen und blockierten Prozessen in einem Rechnersystem |
FR2771564B1 (fr) * | 1997-11-21 | 2000-02-11 | Sextant Avionique | Dispositif pour l'initialisation a la mise sous tension d'un circuit integre digital |
US6141774A (en) * | 1998-04-17 | 2000-10-31 | Infineon Technologies North America Corp. | Peripheral device with access control |
GB9911890D0 (en) * | 1999-05-22 | 1999-07-21 | Lucas Ind Plc | Method and apparatus for detecting a fault condition in a computer processor |
US6476996B1 (en) | 2000-02-15 | 2002-11-05 | Western Digital Technologies, Inc. | Disk drive comprising an actuator driver circuit for retracting a head independent of a servo microprocessor when a spindle speed fault mode is detected |
US6779066B2 (en) * | 2000-05-01 | 2004-08-17 | Matsushita Electric Industrial Co., Ltd. | Module having application-specific program stored therein |
KR100820789B1 (ko) * | 2001-04-06 | 2008-04-10 | 엘지전자 주식회사 | 실시간 기반 시스템 및 그의 모니터링 방법 |
US20060235655A1 (en) * | 2005-04-18 | 2006-10-19 | Qing Richard X | Method for monitoring function execution |
US8330502B2 (en) * | 2009-11-25 | 2012-12-11 | Freescale Semiconductor, Inc. | Systems and methods for detecting interference in an integrated circuit |
US9697065B1 (en) | 2016-03-09 | 2017-07-04 | Nxp Usa, Inc. | Systems and methods for managing reset |
US10157087B1 (en) | 2017-07-14 | 2018-12-18 | Nxp Usa, Inc. | Robust boot block design and architecture |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3919533A (en) * | 1974-11-08 | 1975-11-11 | Westinghouse Electric Corp | Electrical fault indicator |
DE2821882C2 (de) * | 1978-05-19 | 1983-01-20 | Philips Patentverwaltung Gmbh, 2000 Hamburg | Programmsteuereinheit mit Prüfmöglichkeit |
DE2946081C3 (de) * | 1979-11-15 | 1995-09-21 | Wabco Vermoegensverwaltung | Schaltungsanordnung zur Überwachung der Funktion eines Mikroprozessors |
GB2070302B (en) * | 1980-02-19 | 1985-02-13 | Omron Tateisi Electronics Co | Data communication system |
CA1160753A (en) * | 1980-08-20 | 1984-01-17 | David R. Boothman | Microprocessor watchdog system |
US4570217A (en) * | 1982-03-29 | 1986-02-11 | Allen Bruce S | Man machine interface |
US4538273A (en) * | 1982-11-12 | 1985-08-27 | Honeywell Inc. | Dual input watchdog timer |
JPS603045A (ja) * | 1983-06-20 | 1985-01-09 | Nec Corp | プログラムアドレス誤動作検出装置 |
US4594685A (en) * | 1983-06-24 | 1986-06-10 | General Signal Corporation | Watchdog timer |
JPS6039255A (ja) * | 1983-08-12 | 1985-03-01 | Mitsubishi Electric Corp | ウオツチドグタイマのリセツト回路 |
DE3343227A1 (de) * | 1983-11-30 | 1985-06-05 | Robert Bosch Gmbh, 7000 Stuttgart | Verfahren zur ueberwachung von elektronischen rechenbausteinen, insbesondere mikroprozessoren |
US4759952A (en) * | 1984-01-26 | 1988-07-26 | Learonal, Inc. | Process for printed circuit board manufacture |
JPS60193060A (ja) * | 1984-03-14 | 1985-10-01 | Mitsubishi Electric Corp | ウオツチドツグタイマ−装置 |
JPS60263235A (ja) * | 1984-06-12 | 1985-12-26 | Omron Tateisi Electronics Co | マイクロコンピユ−タシステム |
US4649537A (en) * | 1984-10-22 | 1987-03-10 | Westinghouse Electric Corp. | Random pattern lock and key fault detection scheme for microprocessor systems |
US4689766A (en) * | 1984-11-16 | 1987-08-25 | Zenith Electronics Corporation | System for resetting the operation of a signal processing device upon the failure of accessng a predetermined memory location within a predetermined time interval |
US4803682A (en) * | 1985-03-04 | 1989-02-07 | Sanyo Electric Co., Ltd. | Resetting system |
DK190785A (da) * | 1985-04-29 | 1986-10-30 | Nordiske Kabel Traad | Fremgangsmaade til overvaagning af en databehandlingsenhed, samt anlaegtil udoevelse af fremgangsmaaden |
DE3687015T2 (de) * | 1985-06-11 | 1993-04-15 | Nippon Electric Co | Zeitueberwachungsschaltung geeignet fuer gebrauch in mikrorechner. |
GB2177241B (en) * | 1985-07-05 | 1989-07-19 | Motorola Inc | Watchdog timer |
US4727549A (en) * | 1985-09-13 | 1988-02-23 | United Technologies Corporation | Watchdog activity monitor (WAM) for use wth high coverage processor self-test |
JPS62157953A (ja) * | 1985-12-28 | 1987-07-13 | Honda Motor Co Ltd | 異常検知機能を備えたマイクロコンピユ−タ |
JPH0795291B2 (ja) * | 1986-01-13 | 1995-10-11 | 沖電気工業株式会社 | ウオツチドツグタイマ |
GB2197508A (en) * | 1986-11-03 | 1988-05-18 | Philips Electronic Associated | Data processing system with watchdog |
JPS63118651U (de) * | 1987-01-28 | 1988-08-01 | ||
US4912708A (en) * | 1988-03-22 | 1990-03-27 | Siemens Transmission Systems, Inc. | Automatic microprocessor fault recovery system |
US5012435A (en) * | 1988-11-17 | 1991-04-30 | International Business Machines Corporation | Multiple event timer circuit |
-
1986
- 1986-11-03 GB GB08626197A patent/GB2197507A/en not_active Withdrawn
-
1987
- 1987-10-30 DE DE3750948T patent/DE3750948T2/de not_active Expired - Fee Related
- 1987-10-30 NZ NZ222361A patent/NZ222361A/xx unknown
- 1987-10-30 EP EP87202088A patent/EP0266836B1/de not_active Expired - Lifetime
- 1987-11-02 US US07/116,415 patent/US5073853A/en not_active Expired - Lifetime
- 1987-11-03 AU AU80617/87A patent/AU604776B2/en not_active Ceased
- 1987-11-04 JP JP62279004A patent/JP2755581B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0266836A3 (en) | 1990-05-16 |
NZ222361A (en) | 1990-06-26 |
EP0266836A2 (de) | 1988-05-11 |
AU8061787A (en) | 1988-05-05 |
GB8626197D0 (en) | 1986-12-03 |
US5073853A (en) | 1991-12-17 |
GB2197507A (en) | 1988-05-18 |
JPS63133238A (ja) | 1988-06-06 |
JP2755581B2 (ja) | 1998-05-20 |
EP0266836B1 (de) | 1995-01-04 |
DE3750948D1 (de) | 1995-02-16 |
AU604776B2 (en) | 1991-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3750948T2 (de) | Datenverarbeitungssystem mit watch-dog Schaltung. | |
DE3750949T2 (de) | Datenverarbeitungssystem mit watch-dog Schaltung. | |
DE69121382T2 (de) | Emulator zur Emulation eines verbindungsloses Mikrokontroller und Mikrokontroller zur Verwendung in einem solchen Emulator | |
DE68922261T2 (de) | Verfahren und Vorrichtung für die Datenübertragung zwischen mehreren Aufgaben in Datenverarbeitungssystemen. | |
DE68925466T2 (de) | Zeitgeberschaltung | |
DE3818546C2 (de) | ||
DE68919539T2 (de) | Datenverarbeitungssystem mit Zugriffsquellen von verschiedenem Durchsatz. | |
DE2721319A1 (de) | Einrichtung zur selbsttaetigen aenderung der prozessor/speicher-konfiguration | |
DE3700426A1 (de) | Ueberwachungszeitgeber | |
DE19649676A1 (de) | Peripherieeinheitwählsystem | |
DE2722124A1 (de) | Anordnung zum feststellen des prioritaetsranges in einem dv-system | |
DE2723707A1 (de) | Taktgeberschaltung | |
DE69028498T2 (de) | Datenübertragungssystem und -verfahren | |
DE3850514T2 (de) | Cachespeicher mit Treffervorhersagelogik. | |
EP0224707B1 (de) | Schaltungsanordnung zum selbsttätigen Überwachen mehrerer analoger elektrischer Signale | |
DE68916945T2 (de) | Synchronisierschaltung für Datenüberträge zwischen zwei mit unterschiedlicher Geschwindigkeit arbeitenden Geräten. | |
EP0050305A1 (de) | Einrichtung zur Steuerung des Zugriffes von Prozessoren auf eine Datenleitung | |
DE3789471T2 (de) | Mikrocomputer. | |
DE3814875A1 (de) | Logische verknuepfungseinrichtung und logisches verknuepfungsverfahren | |
EP0012185B1 (de) | Prüfschaltung für synchron arbeitende Taktgeber | |
DE4429764C2 (de) | Zeitgebereinrichtung für einen Mikrocomputer | |
DE2641700A1 (de) | Taktueberwachung in digitalsystemen | |
DE3700800A1 (de) | Einrichtung zur erzeugung eines fixpunktes in einem mikroprozessor | |
DE2633155A1 (de) | Einrichtung zur erzeugung zeitdefinierter steuersignale | |
DE3535215C2 (de) |
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: SIMOCO INTERNATIONAL LTD., CAMBRIDGE, GB |
|
8328 | Change in the person/name/address of the agent |
Free format text: HANSMANN, VOGESER & PARTNER, 81369 MUENCHEN |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: SEPURA LTD., CAMBRIDGE, GB |
|
8328 | Change in the person/name/address of the agent |
Representative=s name: HANSMANN & VOGESER, 81369 MUENCHEN |
|
8339 | Ceased/non-payment of the annual fee |