DE60130830T2 - Gerät und Verfahren zur Erzeugnung von Unterbrechungssignalen - Google Patents

Gerät und Verfahren zur Erzeugnung von Unterbrechungssignalen Download PDF

Info

Publication number
DE60130830T2
DE60130830T2 DE60130830T DE60130830T DE60130830T2 DE 60130830 T2 DE60130830 T2 DE 60130830T2 DE 60130830 T DE60130830 T DE 60130830T DE 60130830 T DE60130830 T DE 60130830T DE 60130830 T2 DE60130830 T2 DE 60130830T2
Authority
DE
Germany
Prior art keywords
interrupt
det
signal
output
input
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 - Lifetime
Application number
DE60130830T
Other languages
English (en)
Other versions
DE60130830D1 (de
Inventor
Yuji Suwa-shi Kawase
Satoru Suwa-shi Imai
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of DE60130830D1 publication Critical patent/DE60130830D1/de
Application granted granted Critical
Publication of DE60130830T2 publication Critical patent/DE60130830T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F03MACHINES OR ENGINES FOR LIQUIDS; WIND, SPRING, OR WEIGHT MOTORS; PRODUCING MECHANICAL POWER OR A REACTIVE PROPULSIVE THRUST, NOT OTHERWISE PROVIDED FOR
    • F03DWIND MOTORS
    • F03D3/00Wind motors with rotation axis substantially perpendicular to the air flow entering the rotor 
    • F03D3/06Rotors
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F03MACHINES OR ENGINES FOR LIQUIDS; WIND, SPRING, OR WEIGHT MOTORS; PRODUCING MECHANICAL POWER OR A REACTIVE PROPULSIVE THRUST, NOT OTHERWISE PROVIDED FOR
    • F03DWIND MOTORS
    • F03D3/00Wind motors with rotation axis substantially perpendicular to the air flow entering the rotor 
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F03MACHINES OR ENGINES FOR LIQUIDS; WIND, SPRING, OR WEIGHT MOTORS; PRODUCING MECHANICAL POWER OR A REACTIVE PROPULSIVE THRUST, NOT OTHERWISE PROVIDED FOR
    • F03DWIND MOTORS
    • F03D3/00Wind motors with rotation axis substantially perpendicular to the air flow entering the rotor 
    • F03D3/02Wind motors with rotation axis substantially perpendicular to the air flow entering the rotor  having a plurality of rotors
    • 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
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E10/00Energy generation through renewable energy sources
    • Y02E10/70Wind energy
    • Y02E10/74Wind turbines with rotation axis perpendicular to the wind direction

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Sustainable Energy (AREA)
  • Sustainable Development (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Selective Calling Equipment (AREA)
  • Power Sources (AREA)

Description

  • Die vorliegende Erfindung betrifft eine Vorrichtung und ein Verfahren zum Erzeugen eines Unterbrechungssignals (interrupt signal) für einen Hauptprozessor (CPU), wobei die Unterbrechung einer Programmausführung angefordert wird. Die Erfindung bezieht sich im Besonderen auf eine solche Vorrichtung und ein solches Verfahren, bei denen eine Reihe von Unterbrechungssignalen auf der Grundlage mehrerer Unterbrechungsanforderungen ausgegeben werden.
  • Viele elektronische Geräte jüngeren Datums weisen einen Energiesparmodus mit geringer Leistungsaufnahme (nachstehend als "Stromsparmodus" bezeichnet) auf, bei dem die Leistungsaufnahme zum Beispiel durch Reduzieren der Bildschirmhelligkeit verringert wird, wenn die Tastatur eine gewisse Zeit lang nicht benutzt wurde, und bzw. oder die Stromversorgung für eine Ein-/Ausgabeschnittstellenvorrichtung unterbrochen wird, wenn über einen gewissen Zeitraum kein Zugriff auf die Ein- oder Ausgabeschnittstelle erfolgte. Anzumerken ist, dass der "Stromsparmodus" so, wie er hierin verwendet wird, eine Betriebsart bedeutet, bei der nur einige Funktionen des Geräts noch aktiv sind, während andere deaktiviert sind. Das heißt, dass die Stromversorgung vorübergehend unterbrochen bzw. der Betrieb des größten Teils des Geräts eingestellt sind.
  • Außerdem schaltet der Stromsparmodus die Steuerung üblicherweise in den normalen Betriebszustand um, wenn zum Beispiel die Tastatur bedient oder ein Zugriffsanforderung für eine Ein-/Ausgabeschnittstelle empfangen wird, wobei die Stromversorgung dann für das gesamte Gerät wiederhergestellt wird.
  • Die Dokumente JP-A-8-249081 und JP-A-5-32018 geben, als Mittel zur effektiven Verringerung der Energieaufnahme, zum Beispiel ein Verfahren zum Überführen einer CPU mit hoher Leistungsaufnahme in einen Ruhemodus an. Hierbei ist zu beachten, dass ein Ruhemodus im Allgemeinen einen Zustand darstellt, bei dem der Taktgenerator der CPU angehalten ist, und nur an einigen der Anschlüsse dort anliegende Signale erkannt werden können, wie beispielsweise an den Anschlüsse für Unterbrechungsanforderungen (die CPU selbst ist nicht in der Lage, eine Betriebsroutine auszuführen). Der Ruhemodus bezeichnet einen Stromsparmodus, bei dem ein Zustand mit angehaltenem Taktgeber der CPU erreicht wird.
  • Die oben angegebenen Stand-der-Technik-Dokumente beschreiben Zustandsübergänge zwischen Betriebsarten, wie beispielsweise zwischen einer regulären Betriebsart und einem Ruhemodus. Sie klären jedoch nicht darüber auf, wie mehrere sich überlappende Unterbrechungsanforderungen beherrscht werden können oder später folgende Unterbrechungsanforderungen bearbeitet werden können, während ein von einer früheren Unterbrechungsanforderung ausgelöster Programmablauf noch abgearbeitet wird. Neben einer beständigen Erhöhung der funktionellen Komplexität müssen moderne elektronische Geräte auch zum Setzen und Bearbeiten einer großen Zahl von Unterbrechungsanforderungen in der Lage sein, beispielsweise um Zustandsänderungen zwischen einer regulären Betriebsart und einem Stromsparmodus oder zwischen verschiedenen Stromsparmodi einschließlich eines Ruhemodus zu bewirken. Es gibt sogar Anwendungen, bei denen Dutzende von Unterbrechungsanforderungen bearbeitet werden müssen.
  • Liegen mehrere und insbesondere dutzende von Unterbrechungsanforderungen vor, so hat die Prüfung, welche Unterbrechungsanforderungen an die CPU unter welchen Bedingungen weitergeleitet werden sollen, einen maßgeblichen Einfluss auf das Verhalten des Geräts, d. h. auf den effizienten und sachgemäßen Betrieb des Geräts. Eine 1:1-Beziehung zwischen den Unterbrechungsanforderungen und Unterbrechungssignalen ist oftmals nicht möglich, da die CPU nur eine beschränkte Zahl von Anschlüssen für Unterbrechungsanweisungen aufweist.
  • Abhängig von den Betriebsbedingungen kann es auch wünschenswert sein, die Prioritäten, mit denen die in Reaktion auf bestimmte Unterbrechungsanforderungen erzeugten Unterbrechungssignale von der CPU verarbeitet werden, zu ändern. Zum Beispiel könnte in manchen Fällen ein effizienterer Programmablauf erreicht werden, wenn den Unterbrechungsanforderungen, die eindeutig dem Ruhemodus zuzuordnen sind, eine hohe Priorität zugeteilt wird, sobald der Ruhemodus eintritt. Auch ein den Änderungen der Betriebsumgebung entsprechendes dynamisches Setzen oder Ändern der Priorität für die Bearbeitung der Unterbrechungsanforderungen kann nützlich sein. Beispielsweise eine Änderung der Priorität der Unterbrechungsanforderungen oder ein Deaktivieren einiger Unterbrechungsanforderungen als Reaktion auf einen fehlerhaften Zustand.
  • Unter welchen speziellen Bedingungen eine Unterbrechungsanweisung erzeugt und welche Priorität der Unterbrechungsanweisung zugeteilt werden wird, kann sich je nach Fehler oder einer anderen Ursache für die Unterbrechungsanweisung, sowie der Häufigkeit der Unterbrechungsanweisung ändern. Falls zum Beispiel bei der Stromversorgung ein Problem auftritt, kommt es darauf an, dass sofort eine genau bezeichnete Warnung ausgegeben wird und andere als notwendig erscheinende Maßnahmen ergriffen werden, wie beispielsweise das Abschaltend der Stromversorgung. Demgegenüber handelt es sich beim Entfernen eines Tintenbehälters aus einem Tintenstrahldrucker oder dem Öffnen einer Abdeckung, während sich die CPU des Druckers im Ruhemodus befindet, um Ereignisse von geringer Dringlichkeit. In Fallen wie diesen kann der Ruhemodus bis zur Bestätigung einer Betriebsanweisung aufrechterhalten werden. Der Betriebszustand kann wieder aufgenommen werden, wenn eine Unterbrechungsanforderung von größerer Wichtigkeit auftritt. Vorzugsweise ist daher die Möglichkeit einer flexiblen Änderung der Priorität des Unterbrechungssignals vorgesehen.
  • Wenn beim Abarbeiten einer Unterbrechungsanweisung ferner eine andere Unterbrechungsanforderung (derselben Priorität) an den selben Anschluss für Unterbrechungsanweisungen angelegt wird, wie er von der augenblicklich bearbeiteten Unterbrechungsanweisung verwendet wird, dann könnte die letztere Unterbrechungsanforderung ignoriert werden, wodurch ein wesentlicher Unterbrechungsvorgang nicht zur Ausführung käme.
  • Außerdem ist es möglich, die Priorität einer Unterbrechungsanforderung der Betriebsart des Geräts (je nachdem, ob sich die CPU zum Beispiel im Ruhemodus oder einer anderen Betriebsart befindet) entsprechend zu ändern. Um dies zu erreichen muss es jedoch möglich sein, die Priorität der Unterbrechungsanweisungen im Übergangsstadium während des Änderns der Betriebsart zu ändern. Welche Ereignisse (Zustandsänderungen) die CPU dazu veranlassen sollen, den regulären Betriebszustand einzunehmen, wird dem grundlegenden Konstruktionskonzept des Geräts und den im Gerät vorgesehenen Funktionen entsprechend unterschiedlich ausfallen. Ein großer Spielraum zum Setzen von Bedingungen für Unterbrechungsanweisungen ist daher wünschenswert.
  • Die Druckschrift US 5,530,875 A offenbart ein auf einem Prozessor basierendes System, bei dem sich mehrere Unterbrechungssignale einen gemeinsamen Anschluss für Unterbrechungsanweisungen am Prozessor teilen. Sobald ein Unterbrechungssignal an dem Anschluss anliegt, überprüft der Prozessor ein Statusregister für Unterbrechungsanweisungen, um zu herauszufinden, von welcher der Quellen für Unterbrechungsanweisungen das Unterbrechungssignal stammt. Um für eine Vielzahl von Unterbrechungsanweisungsquellen Prioritäten festzulegen, werden diese Unterbrechungsanweisungsquellen entsprechend den Betriebsbedingungen des Systems gruppiert. Die Zuordnung der Unterbrechungsanweisungsquellen zu Gruppen wird durch ein programmierbares Register erreicht, bei dem Merkerpositionen eines Statusregisters für Unterbrechungsanweisungen mit Merkerpositionen eines Gruppenstatusregisters verknüpft werden. Die Betriebsbedingung, auf der das Gruppieren der Unterbrechungsanweisungsquellen beruht, kann sich in der Bearbeitung einer bestimmten Unterbrechungsanweisung darstellen, auf deren Grundlage eine als nächstes zu erwartende Unterbrechungsanweisungsquelle einer Gruppe mit hoher Priorität zugeordnet wird.
  • Eine Vorrichtung zum Erzeugen eines Unterbrechungssignals gemäß dem Oberbegriff von Anspruch 1 und ein Verfahren gemäß dem Oberbegriff von Anspruch 5 sind aus der Druckschrift EP 0 316 138 A bekannt. Der darin beschriebene Stand der Technik betrifft eine Gruppierungsvorrichtung zur Anordnung von Eingangssignalen in Gruppen und bezieht sich im Besonderen auf eine Gruppierungsvorrichtung, die zwischen einem Hauptprozessor (CPU) und mehreren Ein-/Ausgabeschnittstelleneinheiten angeordnet ist, und mehrere von den Ein-/Ausgabeschnittstelleneinheiten ausgegebene Unterbrechungsanforderungen nach Unterbrechungsanweisungsebenen der CPU gruppiert. Die beschriebene Gruppierungsvorrichtung weist eine Registertabelle auf, um n Eingangssignale entsprechend der Registertabelle in m Gruppen einzuteilen. In einer Ausführungsform sind m und n als gleich groß offenbart.
  • Eine erste Aufgabe der Erfindung besteht in der Angabe einer Vorrichtung sowie eines Verfahrens zum Erzeugen eines Unterbrechungssignals, die ein statisches oder dynamisches Festlegen der Priorität des in Reaktion auf verschiedene Unterbrechungsanforderungen erzeugten Unterbrechungssignals ermöglichen.
  • Eine weitere Aufgabe der Erfindung besteht darin, eine solche Vorrichtung und eine solches Verfahren anzugeben, bei denen es möglich ist, eine Anzahl von Unterbrechungssignalen aus einer größeren Anzahl von Unterbrechungsanforderungen zu erzeugen.
  • Diese Aufgaben werden durch die in Anspruch 1 beanspruchte Vorrichtung und das in Anspruch 5 beanspruchte Verfahren gelöst. Bevorzugte Ausführungsformen der Erfindung sind Gegenstand der abhängigen Ansprüche.
  • Erfindungsgemäße Ausführungsformen können die Priorität von Unterbrechungssignalen ändern, die in Reaktion auf mehrfache Unterbrechungsanforderungen erzeugt werden, die ihrerseits Detektionssignale repräsentieren. Sie können, wenn während eines Unterbrechungsvorgangs ein Detektionssignal empfangen wird, eine zu dem Detektionssignal passende Unterbrechungsroutine ausführen, nachdem der aktuelle Unterbrechungsvorgang beendet ist. Hierdurch werden die oben beschriebenen Probleme des Stands der Technik gelöst.
  • Zu beachten ist, dass die Unterbrechungssignalpriorität so, wie sie hierin verwendet wird, der Anzahl der an der CPU verfügbaren Anschlüsse für Unterbrechungsanweisungen in der Weise entspricht, dass falls die CPU zum Beispiel vier Anschlüsse für Unterbrechungsanweisungen aufweist, den Unterbrechungssignalen maximal vier Prioritätsebenen zugeordnet werden können. Üblicherweise kann jedem Anschluss der CPU für Unterbrechungsanweisungen eine relativ zu den anderen Anschlüssen für Unterbrechungsanweisungen definierte Prioritätsebene zugewiesen werden. Erfindungsgemäße Ausführungsformen können die Priorität von Unterbrechungssignalen, die von einer Reihe von Unterbrechungsanforderungen erzeugt werden, welche jeweils Detektionssignale repräsentieren, entsprechend der Priorität der jeweiligen Unterbrechungsanforderung festlegen oder ändern und die Unterbrechungssignale in der Prioritätsreihenfolge den Anschlüssen für Unterbrechungsanweisungen zuordnen. Mit anderen Worten legen diese Ausführungsformen die Priorität der Unterbrechungssignale fest, die von einer Reihe von Detektionssignalen erzeugt wurden, wobei sie die Unterbrechungssignalpriorität ändern können.
  • Weitere Merkmale und Vorteile ergeben sich zusammen mit einem besseren Verständnis der Erfindung aus der folgenden Beschreibung bevorzugter Ausführungsbeispiele in Verbindung mit den beiliegenden Figuren, von denen
  • 1 eine erfindungsgemäße Ausführungsform einer Vorrichtung zum Erzeugen von Unterbrechungssignalen zeigt;
  • 2 eine bei einem Drucker verwendete Vorrichtung zum Erzeugen von Unterbrechungssignalen zeigt;
  • 3 einige Ereignisse auflistet, die zu einem Unterbrechungssignal führen, das die CPU dazu veranlasst von einem Ruhemodus in einen regulären Betriebszustand überzugehen;
  • 4 eine erste Ausführungsform einer Unterbrechungsanweisungsbearbeitung innerhalb der Vorrichtung zum Erzeugen von Unterbrechungssignalen zeigt;
  • 5 ein Beispiel für einen Signalverteiler zum Ändern der Priorität von Unterbrechungsanweisungen innerhalb der Unterbrechungsanweisungsbearbeitung zeigt;
  • 6 ein Funktionsblockschaltbild darstellt, das eine Ausführungsform eines für die vorliegende Erfindung geeigneten Unterbrechungsanweisungsdetektors zeigt;
  • 7 ein detaillierteres Funktionsblockschaltbild des Unterbrechungsanweisungsdetektors von 6 zeigt;
  • 8 ein Zeitdiagramm darstellt, das die Relation zwischen einem Zeittakt, einem Eingangssignal und einem Übereinstimmungssignal im Unterbrechungsanweisungsdetektor 20 von 6 zeigt;
  • 9 ein Funktionsblockschaltbild darstellt, das zur Beschreibung des Umschaltens eines Druckers oder eines ähnlichen Datenübertragungsgeräts 60 vom Ruhezustand in einen Betriebszustand unter Verwendung einer erfindungsgemäßen Vorrichtung zum Erzeugen eines Unterbrechungssignals dient;
  • 10 ein Funktionsblockschaltbild einer zweiten Ausführungsform eines für die vorliegende Erfindung geeigneten Unterbrechungsanweisungsdetektors darstellt;
  • 11 ein Funktionsblockteilschaltbild zur Erläuterung einer dritten Ausführungsform eines für die vorliegende Erfindung geeigneten Unterbrechungsanweisungsdetektors darstellt; und
  • 12 ein Zeitdiagramm darstellt, das zur Erläuterung der Funktionsweise des in 11 dargestellten Unterbrechungsanweisungsdetektors dient.
  • Ungeachtet dessen, dass die nachstehend beschriebenen Ausführungsformen der Erfindung auf einen Tintenstrahldrucker bezogen sind, ist es selbstverständlich, dass die Erfindung auch bei anderen elektronischen Geräten (nachfolgend einfach als Geräte bezeichnet) verwendet werden kann, welche von einer CPU gesteuert werden, die die von mehreren Unterbrechungsanforderungen herrührenden Unterbrechungsanweisungen bearbeitet.
  • Der Grundaufbau eines Druckers mit einer erfindungsgemäßen Vorrichtung zum Erzeugen eines Unterbrechungssignals wird zunächst unter Bezugnahme auf das in der 2 gezeigte Blockschaltbild beschrieben. Die in der 2 gezeigte CPU 1 weist eine Reihe von Betriebszuständen, einschließlich einem regulären Betriebszustand sowie einem Stromsparmodus bzw. Ruhemodus, auf. Ein Druckmechanismus 2, eine Schnittstelle 7, ein ROM 8 (Festwertspeicher) und ein RAM 9 (Direktzugriffsspeicher) sind mit der CPU 1 durch eine Busleitung 25 verbunden. Im ROM 8 und RAM 9 sind die CPU Steuerungssoftware (einschließlich der Firmware) und Daten gespeichert. Die CPU 1 steuert den Druckmechanismus 2, um entsprechend den von einem Host 50 über eine Schnittstelle 7 empfangenen Druckdaten und Druckanweisungen zu drucken. Der Druckmechanismus 2 umfasst einen Steuerschaltkreis 3 und, jeweils mit diesem verbunden, einen Druckkopf 4, einen Motor 5 und eine Tauchspule 6. Der Steuerschaltkreis 3 steuert diese anderen Teile gemäß den Anweisungen von der CPU 1.
  • Mit der CPU 1 ist ferner eine Vorrichtung 10 zum Erzeugen eines Unterbrechungssignals verbunden.
  • Die Vorrichtung 10 erzeugt ein Unterbrechungssignal in Reaktion auf einen Fehler oder eine andere Unterbrechungsanforderung, wobei sie das Unterbrechungssignal über die Unterbrechungssignalausgangsanschlüsse und über die Unterbrechungssignalleitung 26 an die Anschlüsse für Unterbrechungsanweisungen der CPU 1 ausgibt. Die Vorrichtung 10 ist so ausgebildet, dass sie auch dann, wenn sich die CPU 1 im Ruhemodus befindet, funktionstüchtig ist. Wenn an einem Anschluss für Unterbrechungsanweisungen der im Ruhemodus befindlichen CPU 1 ein Unterbrechungssignal anliegt, dann werden bestimmte Unterbrechungsroutinen zum Reaktivieren der CPU 1 ausgeführt, die sie in den regulären Betriebszustand zurückführen.
  • Die vorliegende Erfindung betrifft das Erzeugen von Unterbrechungssignalen für die CPU 1 und bezieht sich nicht auf Betriebszustände. Die Unterbrechungsanweisungen umfassen jedoch sowohl Ereignisse, die sich auf den Betriebszustand beziehen, als auch Ereignisse, die sich nicht auf den Betriebszustand des Geräts beziehen.
  • Nachdem über einen bestimmten Zeitraum keine Operationen ausgeführt wurden, geht die CPU als Mittel zur Verringerung der Leistungsaufnahme von einem regulären Betriebszustand in einen Ruhezustand über. Die Bedingungen für den Übergang zum Ruhemodus können abhängig von der Art und Verwendung des Geräts festgelegt werden. Die meisten Übergänge sind in der oben angegebenen Druckschrift JP-A-5-32018 ausführlich beschrieben. Da die vorliegende Erfindung mit dem Erzeugen von Unterbrechungssignalen befasst ist, werden die Übergänge von einem Betriebszustand in einen anderen nicht weiter erläutert.
  • Wenn während des Betriebs ein Fehler oder eine bestimmte andere Veränderung der Betriebsbedingungen auftritt, dann muss die CPU zur Behandlung der Veränderung eine Unterbrechungsroutine ausführen. Wenn zum Beispiel ein Problem mit der Stromversorgung auftritt, dann muss sofort ein spezieller Alarm ausgegeben und, falls nötig, müssen andere Maßnahmen, wie beispielsweise ein Abschalten der Stromversorgung, ergriffen werden. Beim Entfernen des Tintenbehälters oder beim öffnen der Abdeckung des Druckers müssen diesen besonderen Bedingungen entsprechende Routinen ausgeführt werden. Das ist auch dann der Fall, wenn sich die CPU 1 im Ruhemodus befindet. Wobei es dann aber auch erforderlich ist, die CPU 1 zunächst reaktivieren, sowie die CPU 1 in den regulären Betriebszustand zurückzuführen.
  • Welche Unterbrechungsroutinen als Reaktion auf bestimmte Änderungen der Betriebsbedingungen ausgeführt werden, und ob die CPU in den regulären Betriebszustand zurückgeführt wird, hängt vom grundlegenden Aufbaukonzept des Geräts und seinem Funktionsumfang ab. Man strebt daher an, dass für das Festlegen und Ändern von Unterbrechungsanforderungen sowie der Priorität der Unterbrechungsanforderungen ein großer Spielraum vorgesehen ist.
  • Bei dem in der 2 gezeigten Drucker werden Signale, die von einem Detektor 11 für Fehler an der Stromversorgung, einem Detektor 12 für den Öffnungszustand der Abdeckung, einem Papierdetektor 13 und einem Tintenleerstandsdetektor 14 stammen, an die Vorrichtung 10 übergeben. Wird zum Beispiel der Tintenbehälter entfernt, so muss ein Alarm ausgegeben werden, der anzeigt, dass der Tintenbehälter entfernt wurde, und der Betrieb muss so gesteuert werden, dass auch dann, wenn eine Druckanweisung erkannt wird, kein Druckvorgang eingeleitet wird. Wenn in der Stromversorgung eine Überspannung oder ein anderer Fehler auftritt, dann muss die Stromversorgung unmittelbar abgeschaltet oder eine andere Maßnahme ergriffen werden, damit andere Teile des Systems nicht beschädigt werden.
  • In der 3 sind einige der Ereignisse gezeigt, auf die hin an Eingangssignal an die Vorrichtung 10 zum Erzeugen eines der CPU zuzuführenden Unterbrechungssignals angelegt wird. Tritt eines dieser Ereignisse auf, während sich die CPU im Ruhemodus befindet, so muss ein Unterbrechungssignal erzeugt werden, um zunächst eine Unterbrechungsroutine zum Reaktivieren der CPU 1 aus dem Ruhemodus in den regulären Betriebszustand einzuleiten und dann die jeweilige Unterbrechungsroutine zur Bearbeitung der speziellen Unterbrechungsanforderung abzurufen. Tritt dasselbe Ereignis auf, während sich die CPU im normalen Betriebszustand befindet, so muss nur die letztere der Unterbrechungsroutinen aufgerufen werden.
  • Wie in der 3 gezeigt, berücksichtigen solche Ereignisse üblicherweise Probleme mit der Stromversorgung und Fehler, die von einem der vielen Detektoren oder Sensoren erkannt werden. Wie in der 3 außerdem gezeigt ist, stellen auch Betriebsanweisungen eines Benutzers Unterbrechungsanforderungen dar, beispielsweise das Drücken eines Papiervorschubschalters. Selbstverständlich kann es zusätzlich zu den in der 3 gezeigten Ereignissen auch noch andere und/oder zusätzliche Ereignisse, wie beispielsweise ein Zeitüberschreitungsanzeige von einem Überwachungszeitgeber (watchdog timer) geben, die eine Unterbrechungsroutine erfordern, welche bei unterschiedlichen Betriebszuständen der CPU ausgeführt werden kann. Es sei darauf hingewiesen, dass es sich bei einem Überwachungszeitgeber um einen Zeitgeber zum Erkennen eines außer Kontrolle Geratens der CPU handelt. Gerät die CPU außer Kontrolle, so hält eine Unterbrechungsroutine die CPU an und stößt eine andere Routine, wie beispielsweise einen Reset (Neustart), an. Außerdem könnte zum Beispiel, wie nachfolgend beschrieben werden wird, ein Unterbrechungssignal für einen Übergang vom Ruhemodus in den regulären Betriebszustand als Ergebnis dessen erzeugt werden, dass ein Host eine Reaktivierungsanweisung an das Gerät, das in dieser Ausführungsform von dem sich im Ruhemodus befindenden Drucker gebildet wird, ausgibt.
  • Eine erste Ausführungsform der Vorrichtung 10 zum Erzeugen eines Unterbrechungssignals ist nachstehend unter Bezugnahme auf die 1 beschrieben. Die von den Sensoren oder Detektoren stammenden Eingangssignale IN (IN-1 bis IN-n) werden in die entsprechenden Unterbrechungsanweisungsdetektoren 20 (wie beispielsweise in die Detektoren 11 bis 14 von 2) der Vorrichtung 10 eingespeist. Die Unterbrechungsanweisungsdetektoren 20 können so konfiguriert werden, dass sie bei Empfangen eines Eingangssignals IN ein Detektionssignal DET (DET-1 bis DET-n) entweder ohne Einschränkungen oder nur dann ausgeben, wenn das jeweilige Eingangssignal IN bestimmte Bedingungen erfüllt.
  • Die Detektionssignale werden an eine Unterbrechungsanweisungsbearbeitung 15 übergeben. Die Unterbrechungsanweisungsbearbeitung 15 gibt ein empfangenes Detektionssignal unter Befolgung vorgegebener Bedingungen in Form eines mit einer genau bezeichneten Priorität versehenen Unterbrechungssignals INT (INT-1 bis INT-n) aus. Die Unterbrechungsanweisungsbearbeitung ist so ausgebildet, dass die Priorität eines Unterbrechungssignals, das einem bestimmten Eingangssignal entspricht, willkürlich und unabhängig davon festgelegt werden kann, welches der Eingangssignale IN-1 bis IN-n an welchem der Unterbrechungsanweisungsdetektoren 20 anliegt. Und sie kann auch unabhängig von den physischen Verbindungen zwischen den Unterbrechungsanweisungsdetektoren 20 und der Unterbrechungsanweisungsbearbeitung 15 festgelegt werden.
  • Die Unterbrechungssignale INT werden über die Unterbrechungssignalleitung 26 an die Anschlüsse für Unterbrechungsanweisungen der CPU angelegt. Die CPU 1 bestimmt die Priorität für jeden der Anschlüsse für Unterbrechungsanweisungen und es werden der Anschlusspriorität entsprechende Unterbrechungsroutinen ausgeführt. Dadurch ist es möglich die Priorität, mit der ein bestimmtes Unterbrechungssignal weiterverarbeitet wird, durch die Wahl bzw. einen Wechsel des Anschlusses für Unterbrechungsanweisungen an der CPU 1, an den das Unterbrechungssignal angelegt wird, auszuwählen bzw. zu ändern. Die Unterbrechungsanweisungsbearbeitung 15 und die Unterbrechungsanweisungsdetektoren 20 empfangen von der CPU 1 über die Busleitung 25 Steuerungsdaten. Sie können so eingerichtet werden, dass sie Unterbrechungsanforderungen erkennen und die Priorität von Unterbrechungssignalen auf der Grundlage der empfangenen Steuerdaten festlegen oder ändern.
  • In der 4 ist eine erste Ausführungsform der Unterbrechungsanweisungsbearbeitung 15 gezeigt. Die Unterbrechungsanweisungsbearbeitung 15 dieser Ausführungsform umfasst eine Steuerung 17, einen Zustandsspeicher 18 und eine Signalverteilung 19. Die Detektionssignale DET werden in die Signalverteilung 19 eingegeben. Die Signalverteilung 19 kann von jeder Vorrichtung gebildet werden, die mehrere Eingangs- und Ausgangsanschlüsse aufweist und die ein Umschalten der Zuordnung der Eingangs- auf die Ausgangsanschlüsse ermöglicht. Die Funktion der Signalverteilung 19 ist die einer Einheit zum Festlegen bzw. Ändern von Prioritäten.
  • Ein Beispiel für eine Signalverteilung 19 ist in der 5 gezeigt. Die Signalverteilung 19 umfasst n Selektoren 19-1 bis 19-n. Da alle Selektoren 19-1 bis 19-n bezüglich Aufbau und Funktion identisch sind, beschränkt sich die ausführliche Darstellung bzw. nachfolgende Beschreibung auf den ersten Selektor. Alle Detektionssignale DET-1 bis DET-n werden gleichzeitig an alle Selektoren 19-1 bis 19-n angelegt.
  • Selektor 19-1 weist ein n-stufiges Selektionsregister 46 auf. Jede Stufe enthält ein Bit, d. h. für jedes der n Detektionssignale DET-1 bis DET-n wird ein Bit verwendet. Die Ausgänge der n Stufen des Selektionsregisters 46 werden jeweils an erste Eingänge von UND-Gattern A1 bis An angelegt. Die Detektionssignale werden an entsprechend zweite Eingänge der UND-Gatter angelegt. Im dargestellten Beispiel werden der Ausgang der ersten Stufe und das Detektionssignal DET-1 an das UND-Gatter A1 angelegt, der Ausgang der zweiten Stufe und das Detektionssignal DET-2 werden an das UND-Gatter A2, usw. angelegt. Die Ausgänge der UND-Gatter A1 bis An werden an entsprechende Eingänge eines ODER-Gatters 47 angelegt, das das Ausgangssignal des Selektors 19-1 liefert, d. h. das Unterbrechungssignal INT-1. Auch wenn dies in den Zeichnungen nicht dargestellt ist, kann der Signalverteilung je nach Bedarf ein als Ausgangsstufe der Vorrichtung 10 fungierender Signalformatierer nachgeschaltet sein, um ein gewünschtes Format, beispielsweise eine Impulsbreite, des Unterbrechungssignals sicherzustellen. Dies trifft auf alle in diesem Text beschriebenen Ausführungsformen zu.
  • Falls das Bit in einer der n Stufen des Selektionsregisters 46 den Wert 1 annimmt und in allen anderen Stufen 0 ist, dann wird nur das dem 1-Bit entsprechende UND-Gatter aktiviert, während alle anderen UND-Gatter deaktiviert sind. Eine 1:1 Korrelation zwischen den Eingangs- bzw. Detektionssignalen und den Unterbrechungssignalen kann durch Festlegen des Bits in den n Selektionsregistern der Selektoren 19-1 bis 19-n in der Weise erfolgen, dass in jedem Selektor ein anderes der n UND-Gatter aktiviert und alle anderen UND-Gatter deaktiviert sind. Selbstverständlich kann die Festlegung unter Beibehaltung der 1:1 Zuordnung einfach geändert werden, indem in allen Selektionsregisters 46 das jeweilige 1-Bit zu einer anderen Stufe verschoben wird. Dadurch ist es bei jedem der Eingangssignale möglich, den Anschluss für Unterbrechungsanweisungen, an den das entsprechende Unterbrechungssignal angelegt werden soll, (innerhalb der 1:1 Zuordnungsbeschränkung) auszuwählen und zu ändern. Da den unterschiedlichen Anschlüssen für die Unterbrechungssignale unterschiedliche Prioritäten zugewiesen sind, kann dadurch die Priorität eines Unterbrechungssignals einem jeweiligen Detektionssignal entsprechend ausgewählt (und geändert) werden.
  • Bei dem in der 5 gezeigten Beispiel ist im Selektor 19-1 nur das Bit der dritten Stufe des Selektionsregisters 46 auf 1 gesetzt. Das UND-Gatter A3 ist daher aktiviert, womit das ODER-Gatter 47 nur dann eine 1 ausgibt, wenn das Detektionssignal DET-3 anliegt. Daher wird von dem ersten Ausgangsanschluss der Signalverteilung 19 ein Signal in Reaktion auf das Detektionssignal DET-3 ausgegeben. Das Ausgangssignal des ersten Ausgangsanschlusses wird als Unterbrechungssignal INT-1 an den ersten Anschluss für Unterbrechungsanweisungen der CPU 1 angelegt, von dem hier angenommen wird, dass er die höchste Priorität von allen Anschlüssen für Unterbrechungsanweisungen aufweist.
  • Infolgedessen kann die Zuordnung zwischen den Eingangsanschlüssen (bzw. Eingangssignalen) und den Ausgangsanschlüssen (bzw. Ausgangssignalen) der Unterbrechungsanweisungsbearbeitung 15 durch vorheriges Festsetzen bestimmter Binärwerte (Worte) in dem Selektionsregister 46 festgelegt werden, wobei jeder Wert (jedes Wort) eine 1-Stelle und (n – 1) 0-Steilen enthält und wobei sich alle Werte voneinander unterscheiden. Die Voreinstellung bzw. Änderung des Selektionsregisters kann vorzugsweise extern vorgenommen werden. In 4 ist eine Konfiguration gezeigt, bei der die Einstellung über eine Steuerung 17 vorgenommen wird. Von der CPU 1 oder von einer Eingabevorrichtung, wie beispielsweise einer Bedienkonsole zum Setzen oder Ändern der Werte im Selektionsregister 46, wird ein bestimmtes Steuersignal an die Steuerung 17 gesandt. Hierbei muss angemerkt werden, dass die CPU 1 den Zustandsspeicher 18 und die Signalverteilung 19 über die Steuerung 17 ansteuert, indem sie an die Steuerung 17 über die Busleitung 25 geeignete Steuerdaten überträgt.
  • Wenn von der Unterbrechungsanweisungsbearbeitung 15 irgendein Detektionssignal DET empfangen wird, speichert der Zustandsspeicher 18 Informationen zu dessen Identifizierung. Die CPU 1 kann die Unterbrechungsanforderung, die während einer Unterbrechungsroutine ein Unterbrechungssignal verursacht hatte, bestätigen, indem es den Inhalt des Zustandsspeichers 18 ausliest.
  • Dadurch kann es die für diese Unterbrechungsanforderung geeignete Unterbrechungsroutine ausführen.
  • 6 ist ein Funktionsblockschaltbild, das eine erste Ausführungsform eines Unterbrechungsanweisungsdetektors 20 zur Verwendung in einer erfindungsgemäßen Vorrichtung 10 zeigt. Die Vorrichtung 10 zum Erzeugen eines Unterbrechungssignals weist, den n Eingangssignalen IN-1 bis IN-n entsprechend, insgesamt n Unterbrechungsanweisungsdetektoren 20 auf. Da alle n Unterbrechungsanweisungsdetektoren 20 denselben Aufbau aufweisen, zeigt 6 nur den inneren Aufbau von einem der Unterbrechungsanweisungsdetektoren 20, nämlich dem für das Eingangssignal IN-1. Ein Fall, bei dem einzelne der n Unterbrechungsanweisungsdetektoren davon abweichende Strukturen aufweisen, wird später erläutert.
  • In dieser ersten Ausführungsform weist der Unterbrechungsanweisungsdetektor 20 einen Mustergenerator 21, einen Mustervergleicher 22 und einen Detektionssignalgenerator 23 auf. Der Mustergenerator 21 erzeugt aus dem Eingangssignal, wie nachstehend ausführlicher erläutert werden wird, ein bestimmtes Signalmuster. Die Signalmustererzeugung des Mustergenerators 21 wird Bedingungen entsprechend gesteuert, die von der CPU über die Busleitung 25 gesetzt werden. Das von dem Mustergenerator erzeugte Signalmuster wird an den Mustervergleicher 22 ausgegeben.
  • Der Mustervergleicher 22 vergleicht das von dem Mustergenerator 21 erhaltene Signalmuster mit einem Referenzmuster. Die Daten, die das Referenzmuster repräsentieren, werden von der CPU 1 über die Busleitung 25 übersandt. Falls der Mustervergleicher zwischen dem Signalmuster und dem Referenzmuster eine Übereinstimmung feststellt, wird sowohl an den Detektionssignalgenerator als auch an das Zustandsspeicherregister 18 ein Übereinstimmungssignal ausgegeben. Wie nachstehend ausführlicher erläutert werden wird, kann dieser Mustervergleich als eine Art Filterung mit dem hauptsächlichen Zweck angesehen werden, relevante Eingangssignale in Form von Detektionssignalen weiterzuleiten und nicht relevante Eingangssignale wie beispielsweise Rauschen zu blockieren. Ohne diese Filterung könnte zum Beispiel ein Rauschen mit einem Eingangssignal verwechselt werden. In diesem Sinne stellt ein Übereinstimmungssignal ein Eingangssignal dar, das den Filter passiert hat.
  • Das Zustandsspeicherregister 18 speichert für jeden der n Unterbrechungsanweisungsdetektoren einen entsprechenden Merker (ein Bit), der in Erwiderung auf das Übereinstimmungssignal gesetzt wird. Die CPU 1 kann die Unterbrechungsanforderung identifizieren und den Zustand des Geräts bezüglich des aufgetretenen Fehlers bestätigen, indem sie den Inhalt dieses Zustandsspeicherregisters 18 in der nach dem Auftreten der Unterbrechungsanweisung ausgeführten Routine ausliest.
  • Der Detektionssignalgenerator 23 überprüft beim Empfangen eines Übereinstimmungssignals, ob an die Unterbrechungsanweisungsbearbeitung 15 ein Detektionssignal gesandt werden soll. Genauer gesagt wird das Detektionssignal nicht sofort nach Empfang eines Übereinstimmungssignals ausgegeben, sondern nur, wenn bestimmte Bedingungen erfüllt sind. Dahinter steht die Absicht, dass, wenn bei einem der Eingangssignale IN-1 bis IN-n ein Übereinstimmungssignal erhalten wird, der gegebene Ruhemodus nicht unterbrochen wird, sofern nicht auch anderen Bedingungen entsprochen wird. Wird kein Detektionssignal ausgegeben, dann wird an die CPU 1 auch kein Unterbrechungssignal angelegt. Die Tatsache, dass das Übereinstimmungssignal ausgegeben wurde, wird jedoch in dem Zustandsspeicheregister 18 gespeichert. Die CPU 1 kann beim Auftreten einer nachfolgenden Unterbrechungsanweisung daher bestätigen, dass ein nicht bearbeitetes Übereinstimmungssignal vorliegt und eine zu diesem Fehler passende Routine ausführen. Die Bedingungen, unter denen der Unterbrechungsanweisungsdetektor 20 auf ein Übereinstimmungssignal hin ein Detektionssignal erzeugt, können von der CPU 1 über die Busleitung 25 festgelegt werden. Sie können dem Konstruktionskonzept des jeweiligen elektronischen Geräts entsprechend frei bestimmt werden.
  • Wie oben beschrieben, kann die CPU 1 somit in freier Weise die Bedingungen zum Erzeugen eines Signalmusters aus einem Eingangssignal festlegen, das Referenzmuster festlegen und die Bedingungen zum Erzeugen eines Detektionssignals festlegen. Dadurch kann ein Unterbrechungsvorgang erreicht werden, der für die den tatsächlichen Betriebsumgebungen entsprechenden komplizierten Bedingungen und den Unterschieden in den Zeitskalen der Zustandsänderungen, bei denen das Gerät verwendet werden kann, geeignet ist.
  • In der 7 ist ein ausführlicheres Beispiel für diese erste Ausführungsform eines Unterbrechungsanweisungsdetektors 20 gezeigt. 7 wird zur Erläuterung von einer der Möglichkeiten der Mustererzeugung und des Mustervergleichs verwendet. Der Mustergenerator 21 weist wie in der 7 gezeigt einen Taktselektor 31 und ein Schieberegister 30 auf. Der Mustervergleicher weist einen Komparator 22a und einen Musterspeicher 22b zum Speichern des Referenzmusters auf. Der Detektionssignalgenerator 23 umfasst einen Zustandsänderungsdetektor 23a und ein Register 23b zum Festlegen von Unterbrechungsanweisungen.
  • Ein Frequenzteiler 37 unterteilt ein Eingangstaktsignal frequenzmäßig in mehrere Taktsignale unterschiedlicher Frequenzen. Diese werden in den Taktselektor 31 eingegeben, der einen der angelegten Takte auf der Grundlage einer Ausgabe von einem Taktselektionsdatenspeicher 32 auswählt. Indem so aus den vielen Taktsignalen ein bestimmtes Taktsignal ausgewählt wird, kann die für ein zu detektierendes Ereignis geeignete Taktfrequenz zum Erzeugen eines Signalmusters verwendet werden. Für unterschiedliche der n Unterbrechungsanweisungsdetektoren 20 können unterschiedliche Takte ausgewählt werden.
  • Welcher Takt, d. h. welche Frequenz verwendet wird, wird von der CPU 1 im Taktselektionsdatenspeicher 32 vorgegeben und kann von der CPU 1 falls erforderlich geändert werden. Des Weiteren ist der Frequenzteiler 37 außerhalb des Unterbrechungsanweisungsdetektors 20 angeordnet, so dass durch Vorsehen eines den Eingangssignalen IN-1 bis IN-n gemeinsamen Frequenzteilers 37 alle Unterbrechungsanweisungsdetektoren 20 mit dem Mehrfachtakt versorgt werden können.
  • Das Eingangssignal IN-1 wird an das Schieberegister 30 angelegt, das von dem wie oben erläutert ausgewählten Takt getaktet wird. Die Eingangsstufe des Schieberegisters 30 nimmt das Eingangssignal IN-1 auf und die Inhalte des gesamten Schieberegisters werden mit jedem Taktimpuls sequentiell verschoben. Auch wenn in 7 ein 4-stufiges Schieberegister gezeigt ist, können je nach Bedarf auch mehr oder weniger Stufen verwendet werden. Die Ausgangssignale von allen Stufen des Schieberegisters werden an den Komparator 22a in Form eines Signalmusters ausgegeben.
  • Komparator 22a vergleicht das zuvor in dem Musterspeicher 22b gespeicherte Referenzmuster mit dem vom Schieberegister 30 ausgegebenen Signalmuster und gibt, wenn eine Übereinstimmung festgestellt wird, ein Übereinstimmungssignal an das Zustandsspeicherregister 18 und an den Detektionssignalgenerator 23 aus. Der Zustandsänderungsdetektor 23a gibt ein Detektionssignal bei Übereinstimmung mit im Register 23b zum Festlegen von Unterbrechungsanweisungen gespeicherten Bedingungen aus. Das Speichern dieser Bedingungen im Register 23b zum Festlegen von Unterbrechungsanweisungen wird von der CPU 1 über die Busleitung 25 gesteuert.
  • Das Zeitdiagramm der 8 zeigt den (ausgewählten) Takt, das Eingangssignal IN-1, die Ausgangssignale der vier Schieberegisterstufen und das Übereinstimmungssignal. In diesem Beispiel ist das gespeicherte Referenzmuster 1110.
  • Es wird angenommen, dass das Eingangssignal IN-1 zu dem in der 8 dargestellten Zeitpunkt in den höheren Signalpegel übergeht, d. h. innerhalb der Impulsbreite eines mit 0 bezeichneten Taktimpulses. Ferner sei darauf verwiesen, dass das Schieberegister 30 flankengesteuert ist und seinen Inhalt daher bei jeder steigenden Flanke des Taktsignals sequentiell verschiebt. Da das Eingangssignal IN-1 an der steigenden Flanke des Taktimpulses 0 eine niedrigen Signalpegel aufweist, kann das Schieberegister 30 keine Änderung des Eingangssignals erkennen. Das Schieberegister 30 gibt zu diesem Zeitpunkt daher 0000 aus.
  • An der steigenden Flanke des nächsten Taktsignals, das ist das Taktsignal 1, geht die Stufe 1 des Schieberegisters 30 in den hohen Signalpegel über, da das Eingangssignal IN-1 einen hohen Signalpegel aufweist. Zu diesem Zeitpunkt ist das von dem Schieberegister 30 ausgegebene Signalmuster daher 1000.
  • An der steigenden Flanke des Taktsignals 2 ist der Signalpegel des Eingangssignals hoch, sodass die Stufe 1 somit im hohen Signalpegel verharrt und Stufe 2 in den hohen Signalpegel übergeht, woraus sich ein 1100 Signalmuster ergibt.
  • In derselben Weise gibt das Schieberegister 30 beim Taktimpuls 3 das Signalmuster 1110 aus. Das Signalmuster stimmt mit dem Referenzmuster 1110 überein, wodurch das Übereinstimmungssignal, wie ebenfalls in 8 gezeigt ist, zum Zeitpunkt eines Abtastsignals in den hohen Signalpegel übergeht.
  • Das Schieberegister 30 gibt das Signalmuster 1111 mit dem Taktimpuls 4 aus. Dieses stimmt nicht mit dem Referenzmuster überein, woraufhin das Übereinstimmungssignal abgebrochen wird. Mit dieser Konstruktion erreicht man folgende Vorteile:
    Zunächst kann ein durch Rauschen verursachter regelwidriger Betrieb verhindert werden, da kein Übereinstimmungssignal ausgegeben wird, außer wenn für eine bestimmte ununterbrochene Zeitspanne hindurch kein Signal eingegeben wird. Außerdem wird, wenn nur dann ein Übereinstimmungssignal ausgegeben wird, wenn eine Übereinstimmung mit dem Referenzmuster 1110 (oder mit einem anderen von 1111 verschiedenen Referenzmuster) besteht, das Übereinstimmungssignal nur solange ausgegeben, als auch dann eine Musterübereinstimmung vorliegt, wenn sich das Eingangssignal über einen verlängerten Zeitraum hinaus fortsetzt. Auf diese Weise kann eine kontinuierliche Signalausgabe verhindert werden.
  • Fall die Erzeugung von Unterbrechungssignalen unter anderen Bedingungen gesteuert werden soll, ist es jedoch auch möglich, die Ausgabe eines Übereinstimmungssignals selbst dann fortzusetzen, wenn eine Übereinstimmung nicht mehr länger feststellbar ist. Erreicht werden kann dies durch Speichern des Übereinstimmungssignals aus dem Komparator 22a in einem Signalspeicher, einer bistabilen Kippstufe, oder einer anderen Vorrichtung des Detektionssignalgenerators 23, wobei das Ausgangssignal dieser Vorrichtung als Übereinstimmungssignal verwendet wird.
  • Alternativ hierzu kann das Übereinstimmungssignal durch Setzen des Referenzmusters auf 1111 aufrechterhalten werden. In diesem Fall setzt sich das Übereinstimmungssignal so lange fort, als, wie es in der 8 unten dargestellt ist, das jeweilige Eingangssignal, nachdem alle Stufen des Schieberegisters in den oberen Signalpegel übergegangen sind, einen hohen Pegel aufweist. Ist das Referenzmuster auf 1111 gesetzt und wird das Übereinstimmungssignal kontinuierlich ausgegeben, dann endet die Ausgabe des Übereinstimmungssignals automatisch, wenn das jeweilige Eingangssignal nicht mehr länger vorhanden ist (einen niedrigen Pegel aufweist). Diese Konfiguration besitzt daher den zusätzlichen Vorteil, dass kein Neustart erforderlich ist, wie es bei einer wie oben angegebenen Verwendung eines Signalspeichers oder einer ähnlichen Vorrichtung nötig wäre.
  • Die oben erläuterte Musterübereinstimmungserkennung kann auch dafür verwendet werden, dass der Host 50 die CPU 1 dazu veranlasst, vom Ruhezustand in den regulären Betriebszustand überzuwechseln. Dies wird ferner unter Verweis auf die 9 beschrieben, worin ein Funktionsblockschaltbild der zugehörigen Konfiguration dargestellt ist.
  • In der 9 sind ein Host 50 und ein damit verbundenes Datenverarbeitungsgerät 60 (beispielsweise der Drucker von 2) gezeigt. Das Datenverarbeitungsgerät 60 weist eine erfindungsgemäße Vorrichtung 10 zum Erzeugen von Unterbrechungssignalen, einschließlich der zuvor beschriebenen n Unterbrechungsanweisungsdetektoren 20, auf. Einer dieser n Unterbrechungsanweisungsdetektoren weist den in der 7 gezeigten Aufbau auf und ist für das Reaktivieren der CPU durch den Host reserviert. Anders als die übrigen n – 1 Unterbrechungsanweisungsdetektoren empfängt dieser kein Eingangssignal von einem Sensor oder Detektor. Die übrigen n – 1 Unterbrechungsanweisungsdetektoren können, müssen aber nicht notwendigerweise den Aufbau von 7 aufweisen. Zur Vereinfachung und um die wesentlichen Punkte der folgenden Erläuterung verständlicher zu machen, ist der genaue Aufbau des Datenverarbeitungsgeräts 60 nicht in der 9 dargestellt. Es sei darauf hingewiesen, dass in dem Musterspeicher 22b des Unterbrechungsanweisungsdetektors 20 als Referenzmuster 1110 gespeichert ist.
  • Wenn der Host 50 die CPU 1 des Datenverarbeitungsgeräts 60 in den regulären Betriebszustand überführen will, dann sendet der Host 50 ein 1110-Bitmuster an das Datenverarbeitungsgerät 60. Der Pegelkonverter 27, der Protokollkonverter 28 und die Vorrichtung 10 des Datenverarbeitungsgeräts 60 setzen ihren Betrieb auch dann fort, wenn sich die CPU 1 im Ruhezustand befindet. Das vom Host 50 übersandte 1110-Bitmuster wird daher empfangen, durch den Pegelkonverter 27 und den Protokollkonverter 28 geleitet und in das Schieberegister 30 des Unterbrechungsanweisungsdetektors 20 eingegeben.
  • Da das Referenzmuster 1110 in dem Musterspeicher 22b gespeichert ist, gibt der Komparator 22a ein Übereinstimmungssignal aus. Daraufhin gibt der Detektionssignalgenerator 23 ein Detektionssignal an die Unterbrechungsanweisungsbearbeitung 15 aus. Auf der Grundlage dieses Detektionssignals erzeugt die Unterbrechungsanweisungsbearbeitung 15 ein Unterbrechungsanweisungssignal und übersendet dieses an den entsprechenden Anschluss für Unterbrechungsanweisungen an der CPU 1. Das Unterbrechungssignal veranlasst die CPU 1 daraufhin zum Übergang aus dem Ruhezustand in einen Betriebszustand. Daraufhin liest die in den regulären Betriebszustand übergegangene CPU 1 den Zustandsspeicher 18 aus, wobei sie der darin vorgefundenen Information entnehmen wird, dass kein kritischer Fehler aufgetreten ist, sondern der Host 50 um Aufmerksamkeit bittet.
  • Für einen Fachmann ist es selbstverständlich, dass verschiedene Einrichtungen verwendet werden können, um das 1110-Bitmuster des Hosts 50 in das Schieberegister 30 zu schreiben. Übliche Verfahren verwenden eine serielle Schnittstelle oder eine parallele Schnittstelle. Zunächst wird die Verwendung einer seriellen Schnittstelle beschrieben. Die empfangenen Daten werden vom Protokollkonverter 28 mit einem bestimmten Takt synchronisiert in Form von seriellen Daten an das Schieberegister 30 ausgegeben und mit dem vom Taktselektor 31 angelegten Schiebetakt des Registers in das Schieberegister 30 eingegeben. Der Taktselektor 31 wählt als Schiebetakt einen Takt aus, der mit dem (nicht in der Figur gezeigten) Synchronisationstakt der seriellen Daten synchronisiert ist. Wird eine parallele Schnittstelle verwendet, dann können die empfangenen Daten, zum Beispiel 1110, in Form von parallelen Daten direkt in das Schieberegister 30 eingegeben werden.
  • Als nächstes wird unter Verweis auf 10 eine zweite Ausführungsform eines Unterbrechungsanweisungsdetektors für eine erfindungsgemäße Vorrichtung beschrieben. 10 ist ein Funktionsblockschaltbild eines dieser Ausführungsform entsprechenden Unterbrechungsanweisungsdetektors 20.
  • Der Unterschied zwischen dem in der 10 und dem in der 8 dargestellten Unterbrechungsanweisungsdetektor besteht darin, dass der erstere zwischen dem Taktselektor 31 und dem Schieberegister 30 einen voreinstellbaren Frequenzteiler 38 aufweist. Dieser Aufbau ermöglicht die Reduzierung der Frequenz (Erhöhung der Periodendauer) des in das Schieberegisters 30 eingegebenen Takts um jeden beliebigen Faktor 1/N. Der Wert von N (es handelt sich um eine Ganzzahl) wird in einem Teilerspeicher 39 gespeichert und für den Frequenzteiler 38 vorgegeben. Die CPU 1 kann den in dem Teilerspeicher 39 gespeichert Wert N je nach Erfordernis ändern. Der Frequenz teiler 38 ist zusätzlich zum Frequenzteiler 37 vorgesehen, um die Flexibilität bezüglich der verfügbaren Schiebetaktfrequenzen zu erhöhen. Fälle, bei denen eine solche erhöhte Flexibilität von Nutzen ist, werden im Zusammenhang mit der nächsten Ausführungsform erläutert.
  • Als nächstes wird eine dritte Ausführungsform eines Unterbrechungsanweisungsdetektors zur Verwendung in einer erfindungsgemäßen Vorrichtung 10 unter Bezugnahme auf die 11 beschrieben. 11 stellt ein Funktionsblockschaltbild eines Unterbrechungsanweisungsdetektors 20 dar, der als Modifikation der ersten oder der zweiten Ausführungsform angesehen werden kann. Es wird darauf hingewiesen, dass die in der 11 nicht gezeigten Teile dieses Unterbrechungsanweisungsdetektors 20 dieselben Teile sind, wie die entsprechenden Teile der zuvor beschriebenen Ausführungsformen. Gegenüber den vorhergehenden Ausführungsformen weist der Unterbrechungsanweisungsdetektor 20 zusätzlich eine Übereinstimmungszähleinheit 40 auf, die einen 16-Bit Zähler, einen Zählervergleicher 42 und einen Zählwertspeicher 43 umfasst.
  • Bei dieser Ausführungsform wird das von dem Komparator 22a stammende Übereinstimmungssignal an den Aktivierungsanschluss En und an den Löschanschlusses CLR des Zählers angelegt. Dadurch setzt sich das Zählen solange fort, als das Übereinstimmungssignal ausgegeben wird. Verschwindet das Übereinstimmungssignal jedoch, dann wird der Zähler zurückgesetzt und nimmt das Zählen erst mit der Ausgabe des nächsten Übereinstimmungssignals auf. Diese Konfiguration greift dann, wenn bestimmt werden muss, ob das Übereinstimmungssignal über einen längeren, einen Schwellwert überschreitenden, Zeitraum kontinuierlich ausgegeben wird. Festzuhalten ist hierbei, dass auch wenn in dieser Ausführungsform ein 16-Bit Zähler 41 verwendet wird, bei Bedarf auch Zähler mit mehr oder weniger als 16 Bit verwendet werden können.
  • Der Zählervergleicher 42 vergleich den Zählwert des Zählers 41 mit dem von der CPU 1 in dem Zählwertspeicher 43 vorgegebenen Wert. Stimmen beide Werte überein, so wird an die Unterbrechungsanweisungsbearbeitung 15 eine Detektionssignal ausgegeben. Auf der Grundlage dieses Detektionssignals erzeugt die Unterbrechungsanweisungsbearbeitung 15 ein Unterbrechungssignal mit einer bestimmten Priorität und übersendet das resultierende Unterbrechungssignal an den entsprechenden Anschluss für Unterbrechungsanweisungen an der CPU 1. Bei Anlegen eines Unterbrechungssignals an den Anschluss für Unterbrechungsanweisungen wird die CPU aktiviert, bestätigt hierüber die Unterbrechungsanforderung und führt die erforderliche geeignete Routine aus, die von der im ROM 8 oder RAM 9 gespeicherten Unterbrechungsroutine gesteuert wird.
  • Der Unterbrechungsanweisungsdetektor 20 gemäß dieser dritten Ausführungsform greift dann, wenn ein Unterbrechungssignal unter der Bedingung erzeugt wird, dass ein Eingangssignal IN vorhanden ist, das länger als ein normales Signal andauert. Die Anzahl der Stufen im Schieberegister 30 müsste erhöht werden, wenn das Vorhandensein eines lang andauernden Eingangssignals unter Verwendung eines Takts von relativ kurzer Dauer detektiert werden müsste. Andererseits kann die Dauer der in den Mustergenerator eingegebenen Signale nicht gleichermaßen verlängert werden, da ein weiter Bereich von Eingangssignalen IN möglich ist. Zum Beispiel kann der Unterschied in den Dauern der als Unterbrechungsanforderungen zu detektierenden Signale einen Faktor von 1000 überschreiten (bei einem kurzen Signal könnte dessen Länge nur 20 μs betragen, bei einem langen Signal 20 ms oder mehr).
  • Falls die Länge der zu detektierenden Eingangssignale das 1000-fache der kürzesten zu detektierenden Signale betragen kann, ist es für den Frequenzteiler 37 nicht nur unpraktisch, für jede der jeweiligen Frequenzen ein Taktsignal zu erzeugen. Es ist darüber hinaus auch nicht mehr möglich, fehlerfreie Signalmuster zu erzeugen. Das Schieberegister 30 nimmt das Eingangssignal an der steigenden Flanke (alternativ könnte auch die fallende Flanke verwendet werden) des Schiebetakts auf. Wenn ein Eingangssignal daher während der Dauer eines Schiebetakts verschwindet, bei der nächsten steigenden Flanke aber wieder vorhanden ist, dann wird das Eingangssignal sequentiell verschoben, so als ob nichts geschehen wäre. Dadurch kann die Änderung des Eingangssignals nicht erkannt werden.
  • Die Möglichkeit, dass solche Probleme auftreten, nimmt mit zunehmend länger dauerndem Schiebetakt zu, so dass eine sehr lange Dauer des Schiebetaktsignals nicht wünschenswert erscheint. Dies trifft auch zu, wenn die Taktdauer durch den Frequenzteiler 38 im Unterbrechungsanweisungsdetektor 20 erhöht wird. Wird zum Vermeiden solcher Probleme ein Schiebetakt mit einer kurzen Periodendauer verwendet, dann benötigt das Schieberegister 30 des Mustergenerators 21 eine äußerst große Anzahl von Schiebestufen, um das Signalmuster bei einem langen Eingangssignal zu erzeugen.
  • Für Eingangssignale unterschiedlicher Länge können unterschiedliche Arten von Unterbrechungsanweisungsdetektoren 20 verwendet werden. Zum Beispiel wird zum Erkennen von Unterbrechungsanweisungen bei Eingangssignalen mit einer üblicherweise gebräuchlichen Länge ein Unterbrechungsanweisungsdetektor nach der ersten oder zweiten Ausführungsform verwendet. Und zum Erkennen von Unterbrechungsanweisungen bei Eingangssignalen, die insbesondere länger als diese anderen Eingangssignale sind, wird ein Unterbrechungsanweisungsdetektor nach der dritten Ausführungsform verwendet.
  • Nachfolgend wird der Zeitablauf zum Ausgeben des Detektionssignals an dem in der 11 gezeigten Unterbrechungsanweisungsdetektor 20 unter Verweis auf das Ablaufdiagramm von 12 beschrieben.
  • In diesem Beispiel zählt der 16-Bit Zähler 41 die Taktimpulse eines in der obersten Zeile von 12 gezeigten Takts B. Die Periode dieses Takts ist üblicherweise länger als die des Takts A, der an dem Schieberegister 30 zum Detektieren von besonders langen Eingangssignalen anliegt. Ändert sich der Pegel des Übereinstimmungssignals von einem niedrigen Wert auf einen hohen Wert, so nimmt der Pegel am Aktivierungsanschluss En des Zählers 41 einen hohen Wert an, womit das Zählen beginnt. Erreicht die Zählung im Zähler 41 einen Wert, der dem im Zählwertspeicher 43 gespeicherten Zählwert entspricht, so wird ein Zählwertübereinstimmungssignal ausgegeben. Dieses Zählwertübereinstimmungssignal kann anstelle des Übereinstimmungssignals von dem Komparator 22a an den Detektionssignalgenerator 23 angelegt werden. Es kann aber auch direkt als Detektionssignal verwendet werden.
  • Der Zähler 41 wird zurückgesetzt (untere Zeile von 12) und es wird kein Zählwertübereinstimmungssignal ausgegeben, falls der Komparator die Ausgabe des Übereinstimmungssignals beendet, bevor der Zähler 41 bis zu dem gespeicherten Zählwert hochgezählt hat (durch gepunktete Linien angedeutet). Daher wird auch kein Detektionssignal ausgegeben, und es erfolgt keine Unterbrechungsanweisung, wenn das Übereinstimmungssignal von dem Komparator 22a kürzer ist als die Zeitspanne, die der Zähler 41 zum Hochzählen auf den im Zählwertspeicher 43 gespeicherten Zählwert benötigt.

Claims (5)

  1. Vorrichtung zum Erzeugen eines Unterbrechungssignals, aufweisend: n Unterbrechungsanweisungs-Detektionseinheiten (20), von denen eine jede dazu ausgebildet ist, ein Detektionssignal (DET-1 bis DET-n) auf ein jeweiliges Eingangssignal (IN-1 bis IN-n) hin auszugeben, das eine Unterbrechungsanforderung repräsentiert; und eine Unterbrechungsanweisungsbearbeitungseinheit (15), wobei die Unterbrechungsanweisungsbearbeitungseinheit eine Mehrzahl von n Eingangsanschlüssen zum Empfangen der Detektionssignale (DET-1 bis DET-n) und eine Mehrzahl von n Ausgangsanschlüssen zur Ausgabe entsprechender Unterbrechungssignale an eine CPU (1) aufweist, und eine Signalverteilungseinrichtung (16; 19), die die Eingangsanschlüsse so mit den Ausgangsanschlüssen verbindet, dass eine vorgegebene aber änderbare Zuordnung zwischen den Eingangs- und den Ausgangsanschlüssen in der Weise aufgebaut wird, dass von einem Ausgangsanschluss ein Unterbrechungssignal (INT-1 bis INT-n) ausgegeben wird, wenn an dem diesem Ausgangsanschluss zugeordneten Eingangsanschluss ein Detektionssignal (DET-1 bis DET-n) anliegt; wobei die Signalverteilungseinrichtung (16; 19) dazu ausgebildet ist, eine Eins-zu-Eins-Zuordnung zwischen den Eingangs- und den Ausgangsanschlüssen einzurichten; dadurch gekennzeichnet, dass die Vorrichtung ferner aufweist: eine Überwachungseinrichtung, die dazu ausgebildet ist, die n Eingangsanschlüsse bezüglich des Auftretens von nachfolgenden Detektionssignalen (DET-1 bis DET-n) zu überwachen, nachdem ein Unterbrechungssignal (INT-1 bis INT-n) ausgegeben wurde und während die CPU (1) eine dem Unterbrechungssignal (INT-1 bis INT-n) entsprechende erste Unterbrechungsroutine ausführt; eine Speichereinrichtung, die auf die Überwachungseinrichtung anspricht und die dazu ausgebildet ist, jedes nachfolgende Detektionssignal (DET-1 bis DET-n) zu speichern; und eine Bestätigungseinrichtung, die ausgebildet ist, bei Beendigung der ersten Unterbrechungsroutine zu prüfen, ob in der Speichereinrichtung ein nachfolgendes Detektionssignal (DET-1 bis DET-n) gespeichert wurde.
  2. Vorrichtung nach Anspruch 1, bei der die Unterbrechungsanweisungsbearbeitungseinheit (15) einen Steueranschluss und eine Zuordnungseinstelleinrichtung (17) aufweist, die auf ein Steuersignal anspricht, das an dem Steueranschluss anliegt, um die Zuordnung zwischen den Eingangs- und den Ausgangsanschlüssen zu ändern.
  3. Vorrichtung nach Anspruch 1 oder 2, bei der die Unterbrechungsanweisungs-Detektionseinheiten (20) eine Detektionseinheit zum Erkennen eines Reaktivierungsereignisses für eine im Ruhemodus befindliche CPU (1) und zum Ausgeben eines entsprechenden Detektionssignals (DET-1 bis DET-n) umfassen.
  4. Vorrichtung nach Anspruch 2 oder 3, bei der die Zuordnung zwischen den Eingangs- und den Ausgangsanschlüssen zu jeder Zeit geändert werden kann, selbst dann, wenn die bezüglich einer Unterbrechungsanforderung überwachte Vorrichtung in Betrieb ist.
  5. Verfahren zum Erzeugen von Unterbrechungssignalen und zum Anlegen der Unterbrechungssignale (INT-1 bis INT-n) an eine CPU (1), wobei das Verfahren die Schritte umfasst: (a) Überwachen einer Mehrzahl von n Eingangsanschlüssen bezüglich des Auftretens von Detektionssignalen (DET-1 bis DET-n), die Unterbrechungsanforderungen repräsentieren, (b) Zuordnen eines jeden der n Eingangsanschlüsse zu einem von einer Vielzahl von Ausgangsanschlüssen, (c) Ausgeben eines Unterbrechungssignals (INT-1 bis INT-n) von einem der jeweiligen Ausgangsanschlüsse, wenn an einem dem Ausgangsanschluss zugeordneten Eingangsanschluss in Schritt (a) ein Detektionssignal (DET-1 bis DET-n) festgestellt wird, (d) Empfangen einer Zuordnungsänderungsanforderung, und (e) Ändern der Zuordnung zwischen den n Eingangsanschlüssen und den n Ausgangsanschlüssen in eine andere Zuordnung auf eine in Schritt (d) empfangene Anforderung hin; dadurch gekennzeichnet, dass Schritt (b) jedem der n Eingangsanschlüsse einen aus der Mehrzahl der n Ausgangsanschlüsse in einer Eins-zu-Eins-Zuordnung zuordnet; Schritt (e) die Eins-zu-Eins-Zuordnung zwischen den n Eingangsanschlüssen und den n Ausgangsanschlüssen auf eine in Schritt (d) empfangene Aufforderung hin in eine andere Eins-zu-Eins-Zuordnung ändert; und das Verfahren ferner die Schritte aufweist zum: (f) Überwachen der n Eingangsanschlüsse bezüglich des Auftretens von nachfolgenden Detektionssignalen (DET-1 bis DET-n), nachdem ein Unterbrechungssignal (INT-1 bis NT-n) ausgegeben wurde und während die CPU (1) eine dem Unterbrechungssignal (INT-1 bis INT-n) entsprechende erste Unterbrechungsroutine ausführt; (g) Speichern eines jeden nachfolgenden Detektionssignals (DET-1 bis DET-n), das in Schritt (f) detektiert wurde; und (h) Prüfen, ob in Schritt (g), wenn die erste Unterbrechungsroutine beendet ist, ein nachfolgendes Detektionssignal (DET-1 bis DET-n) gespeichert wurde, und (i) Wiederholen der Schritte (c), (f) und (g) bei dem nachfolgenden Detektionssignal (DET-1 bis DET-n), falls eines gespeichert wurde, und Fortsetzen des Verfahrens mit Schritt (a), falls kein nachfolgendes Detektionssignal (DET-1 bis DET-n) gespeichert wurde.
DE60130830T 2000-05-29 2001-04-30 Gerät und Verfahren zur Erzeugnung von Unterbrechungssignalen Expired - Lifetime DE60130830T2 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2000158349 2000-05-29
JP2000158349 2000-05-29
JP2001107368A JP2002055830A (ja) 2000-05-29 2001-04-05 割込信号生成装置及び割込信号の生成方法
JP2001107368 2001-04-05

Publications (2)

Publication Number Publication Date
DE60130830D1 DE60130830D1 (de) 2007-11-22
DE60130830T2 true DE60130830T2 (de) 2008-07-17

Family

ID=26592808

Family Applications (2)

Application Number Title Priority Date Filing Date
DE60139040T Expired - Lifetime DE60139040D1 (de) 2000-05-29 2001-04-30 Vorrichtung und Verfahren zur Erzeugung von Unterbrechungssignalen
DE60130830T Expired - Lifetime DE60130830T2 (de) 2000-05-29 2001-04-30 Gerät und Verfahren zur Erzeugnung von Unterbrechungssignalen

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE60139040T Expired - Lifetime DE60139040D1 (de) 2000-05-29 2001-04-30 Vorrichtung und Verfahren zur Erzeugung von Unterbrechungssignalen

Country Status (9)

Country Link
US (1) US6772260B2 (de)
EP (2) EP1160675B1 (de)
JP (1) JP2002055830A (de)
KR (2) KR100655985B1 (de)
CN (2) CN1308857C (de)
AT (2) ATE375558T1 (de)
CA (1) CA2345593C (de)
DE (2) DE60139040D1 (de)
HK (1) HK1042360B (de)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8210047B2 (en) 1996-01-23 2012-07-03 En-Gauge, Inc. Remote fire extinguisher station inspection
US7174783B2 (en) * 1996-01-23 2007-02-13 Mija Industries, Inc. Remote monitoring of fluid containers
US7117435B1 (en) 2000-06-21 2006-10-03 Microsoft Corporation Spreadsheet fields in text
DE10063936A1 (de) * 2000-12-20 2002-06-27 Thomson Brandt Gmbh Interrupt Controller für einen Mikroprozessor
KR20030004763A (ko) * 2001-07-06 2003-01-15 삼성전자 주식회사 인터럽트 처리장치
JP2004066133A (ja) * 2002-08-07 2004-03-04 Seiko Epson Corp 製造システム、その制御装置、制御方法、制御システム及び制御プログラム
US20040207864A1 (en) * 2003-04-18 2004-10-21 Combs Steven Donald Method for operating a printer and method for operating a printer controller
WO2004114132A1 (ja) * 2003-06-20 2004-12-29 Fujitsu Limited 割り込み制御方法、割り込み制御装置及び割り込み制御プログラム
US7093036B2 (en) * 2003-12-11 2006-08-15 International Business Machines Corporation Processor state aware interrupts from peripherals
US20080140890A1 (en) * 2004-02-27 2008-06-12 Koninklijke Philips Electronics N.V. Electronic Circuit Arrangement For Detecting a Failing Clock
TWI256591B (en) * 2004-08-11 2006-06-11 Benq Corp Method of reducing interrupts
US7026842B1 (en) * 2004-10-13 2006-04-11 Broadcom Corporation Method and apparatus for reliable pulse event detection
JP4727318B2 (ja) * 2005-06-23 2011-07-20 パイオニア株式会社 報知制御装置、そのシステム、その方法、そのプログラム、そのプログラムを記録した記録媒体、および、移動支援装置
JP4817834B2 (ja) * 2005-12-19 2011-11-16 ルネサスエレクトロニクス株式会社 割り込み制御装置及び割り込み制御方法
JP2007235614A (ja) * 2006-03-01 2007-09-13 Nec Corp 優先伝送システム、送信装置及び受信装置並びに制御プログラム
JP2008107914A (ja) * 2006-10-23 2008-05-08 Denso Corp マイクロコンピュータ、プログラム及び車両用電子制御装置
JP5200646B2 (ja) * 2007-05-01 2013-06-05 株式会社リコー 割込制御装置および画像処理装置
JP2008305209A (ja) * 2007-06-07 2008-12-18 Ricoh Co Ltd 情報処理装置と情報処理方法とプログラムとコンピュータ読み取り可能な記録媒体
CN101488100B (zh) * 2008-01-15 2012-02-22 上海海尔集成电路有限公司 中断系统实现方法及装置
US8981927B2 (en) 2008-02-13 2015-03-17 En-Gauge, Inc. Object Tracking with emergency equipment
US8749373B2 (en) 2008-02-13 2014-06-10 En-Gauge, Inc. Emergency equipment power sources
US7793025B2 (en) 2008-03-28 2010-09-07 Freescale Semiconductor, Inc. Hardware managed context sensitive interrupt priority level control
CN101299206B (zh) * 2008-06-24 2010-11-24 中兴通讯股份有限公司 一种实现中断采集的方法及装置
JP5077106B2 (ja) * 2008-07-03 2012-11-21 トヨタ自動車株式会社 電動機制御装置、制御方法
CN101751000B (zh) * 2008-12-04 2013-01-09 鸿富锦精密工业(深圳)有限公司 数控加工设备中断控制系统及其控制方法
JP5304210B2 (ja) * 2008-12-11 2013-10-02 株式会社オートネットワーク技術研究所 制御システム
US8843523B2 (en) * 2009-01-12 2014-09-23 Micron Technology, Inc. Devices, systems, and methods for communicating pattern matching results of a parallel pattern search engine
US8244947B2 (en) * 2009-02-20 2012-08-14 Qualcomm Incorporated Methods and apparatus for resource sharing in a programmable interrupt controller
JP2010224689A (ja) * 2009-03-19 2010-10-07 Nec Soft Ltd デバイス制御システム、情報処理装置及びデバイス制御方法
JP5432676B2 (ja) * 2009-11-18 2014-03-05 ルネサスエレクトロニクス株式会社 マイクロコンピュータ、ヒステリシスコンパレータ回路、及び電圧監視装置
JP5601710B2 (ja) * 2010-10-01 2014-10-08 ニチコン株式会社 異常検出システム
US9041534B2 (en) 2011-01-26 2015-05-26 En-Gauge, Inc. Fluid container resource management
JP5825887B2 (ja) 2011-07-05 2015-12-02 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
JP5938945B2 (ja) * 2012-02-29 2016-06-22 ブラザー工業株式会社 割り込み制御装置、画像処理装置
JP5389212B2 (ja) 2012-03-28 2014-01-15 株式会社東芝 再暗号文検証プログラム、再暗号化装置及び再暗号化システム
US9921981B2 (en) 2013-08-24 2018-03-20 Qualcomm Incorporated Method to minimize the number of IRQ lines from peripherals to one wire
JP5984790B2 (ja) * 2013-12-18 2016-09-06 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、記憶媒体およびプログラム
JP6478466B2 (ja) 2014-03-03 2019-03-06 キヤノン株式会社 読取装置
JP6355464B2 (ja) * 2014-07-22 2018-07-11 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびプログラム
KR20170065845A (ko) * 2015-12-04 2017-06-14 삼성전자주식회사 프로세서 및 제어 방법
KR102649324B1 (ko) 2016-05-19 2024-03-20 삼성전자주식회사 적응 인터럽트 제어를 수행하는 컴퓨터 시스템 및 그것의 인터럽트 제어 방법
KR101936565B1 (ko) * 2016-11-14 2019-01-09 엘에스산전 주식회사 인버터에서 인터럽트 제어방법
JP7021501B2 (ja) * 2017-10-26 2022-02-17 オムロン株式会社 データ取得方法およびデータ取得装置
CN108749339B (zh) * 2018-05-14 2019-12-24 北京华科恒润智能科技有限公司 一种墙体彩绘打印方法、装置及墙体彩绘机
CN111506531B (zh) * 2020-03-27 2023-06-02 上海赛昉科技有限公司 一种easy-master微码模块及其配置方法
CN112489713A (zh) * 2020-11-26 2021-03-12 昕原半导体(上海)有限公司 计数方法、计数电路、装置、设备及计算机存储介质
CN112416564A (zh) * 2021-01-25 2021-02-26 北京星际荣耀空间科技股份有限公司 一种中断处理方法及处理装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6118059A (ja) 1984-07-05 1986-01-25 Nec Corp メモリ回路
JPH0792782B2 (ja) * 1985-09-30 1995-10-09 富士通株式会社 処理実行システム
US4972312A (en) * 1985-11-04 1990-11-20 U.S. Philips Corporation Multiprocess computer and method for operating same having context switching in response to a peripheral interrupt
JPH01126751A (ja) * 1987-11-11 1989-05-18 Fujitsu Ltd グルーピング装置
JPH01290040A (ja) * 1988-05-18 1989-11-21 Fuji Electric Co Ltd ディジタル信号切換回路
US5396635A (en) * 1990-06-01 1995-03-07 Vadem Corporation Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system
JPH04213744A (ja) * 1990-12-10 1992-08-04 Nec Corp 割込み処理方式
JP3093342B2 (ja) * 1991-07-30 2000-10-03 キヤノン株式会社 省電力化のための方法及び印刷装置
US5581668A (en) 1991-07-30 1996-12-03 Canon Kabushiki Kaisha Method and apparatus for processing data
JPH0581040A (ja) * 1991-09-20 1993-04-02 Fujitsu Ltd コンピユータシステム
JPH06175867A (ja) * 1992-12-04 1994-06-24 Casio Comput Co Ltd 割込制御装置
US5530875A (en) * 1993-04-29 1996-06-25 Fujitsu Limited Grouping of interrupt sources for efficiency on the fly
JPH0713772A (ja) 1993-06-29 1995-01-17 Mitsubishi Electric Corp データ処理装置
JPH08249081A (ja) * 1995-03-09 1996-09-27 Hitachi Ltd 省電力制御方法及び装置
US5708819A (en) * 1995-10-10 1998-01-13 Standard Microsystems Corporation Process and apparatus for generating power management events in a computer system
JPH09251387A (ja) * 1996-03-18 1997-09-22 Sharp Corp 割り込み要求優先順位決定回路
JPH10333923A (ja) * 1997-06-03 1998-12-18 Kenwood Corp マイクロコンピュータの割込み制御回路
ATE280974T1 (de) * 1997-06-13 2004-11-15 Cit Alcatel Mehrfachunterbrechungsabwicklungsverfahren und - gerät
KR19990011284A (ko) * 1997-07-22 1999-02-18 구자홍 데이터 처리장치의 인터럽트 처리장치 및 방법
US6298410B1 (en) * 1997-12-31 2001-10-02 Intel Corporation Apparatus and method for initiating hardware priority management by software controlled register access
EP0943999A1 (de) * 1998-03-20 1999-09-22 International Business Machines Corporation Unterbrechungsmaskierer einer Unterbrechungsabwicklungsanordnung mit Detektion von Doppelflank-Unterbrechungsanforderungen
JP2000122963A (ja) * 1998-10-13 2000-04-28 Canon Inc 割り込み制御装置及び割り込み制御方法
KR100283146B1 (ko) * 1998-11-04 2001-03-02 구자홍 디에스피의 인터럽트 제어 장치

Also Published As

Publication number Publication date
KR100705895B1 (ko) 2007-04-10
EP1160675A2 (de) 2001-12-05
US6772260B2 (en) 2004-08-03
EP1696334B1 (de) 2009-06-17
HK1042360B (zh) 2006-09-08
CN1236392C (zh) 2006-01-11
EP1696334A3 (de) 2006-09-20
JP2002055830A (ja) 2002-02-20
CA2345593C (en) 2008-09-09
US20020002648A1 (en) 2002-01-03
CN1308857C (zh) 2007-04-04
ATE434219T1 (de) 2009-07-15
KR100655985B1 (ko) 2006-12-08
CA2345593A1 (en) 2001-11-29
HK1042360A1 (en) 2002-08-09
ATE375558T1 (de) 2007-10-15
DE60130830D1 (de) 2007-11-22
KR20010109077A (ko) 2001-12-08
EP1696334A2 (de) 2006-08-30
CN1551004A (zh) 2004-12-01
DE60139040D1 (de) 2009-07-30
EP1160675B1 (de) 2007-10-10
KR20060024008A (ko) 2006-03-15
CN1326146A (zh) 2001-12-12
EP1160675A3 (de) 2002-07-17

Similar Documents

Publication Publication Date Title
DE60130830T2 (de) Gerät und Verfahren zur Erzeugnung von Unterbrechungssignalen
EP0512240B1 (de) System zur Steuerung eines Kraftfahrzeuges
DE2658313C2 (de) Speicherprogrammierbare Steuerung
DE3429941C2 (de) Kommunikationssystem für Fahrzeugkörper
DE69019441T2 (de) Line Computer.
DE4317729A1 (de) Programmierbare Steuereinheit
DE102008064766B3 (de) Schaltungsanordnung und Verfahren zum Überwachen einer Versorgungsspannung
DE69423859T2 (de) Zeitüberwachungseinrichtung
DE102012023350B4 (de) Systeme, Schaltungen und ein Verfahren zum Erzeugen einer konfigurierbaren Rückmeldung
WO2005001690A2 (de) Verfahren zur überwachung des programmlaufs in einem mikro-computer
DE4421083C2 (de) Verfahren zur Überwachung einer seriellen Übertragung von digitalen Daten auf einer Ein-Draht-Multiplexverbindung zwischen untereinander kommunizierenden Signalverarbeitungsgeräten
WO2001079948A1 (de) System und verfahren zur überwachung einer einrichtung zum messen, steuern und regeln
DE102012111767B4 (de) Elektronische Steuereinheit und elektrische Servolenkvorrichtung
DE68919638T2 (de) Rechner mit unterbrechungsgesteuerter Taktgeschwindigkeit und Verfahren für seinen Betrieb.
DE102011051188B4 (de) Matrixadressiertes Anzeigesystem
DE19649577B4 (de) Kommunikationssystem
DE112019007853T5 (de) Steuereinrichtung
EP1283471B1 (de) Programmgesteuerte Einheit
DE3751374T2 (de) Verfahren und Mechanismus zum unabhängigen Sicherstellungsmodustransfer für digitale Steuerprozessoren.
DE112017002556T5 (de) Steuerungssystem
DE10347196B4 (de) Vorrichtung zur Überprüfung einer Schnittstelle
EP2338111B1 (de) Verfahren und vorrichtung zum testen eines rechnerkerns in einer mindestens zwei rechnerkerne aufweisenden recheneinheit
DE3731097A1 (de) Schaltungsanordnung zur ueberwachung einer einrichtung mit zwei mikroprozessoren, insbesondere einer kraftfahrzeug-elektronik
DE4303048C2 (de) Verfahren und Umschalteinrichtung zum Umschalten zwischen einem Betriebssystem und mindestens einem Reservesystem innerhalb redunant aufgebauten Schaltungen
EP0820615B1 (de) Anschaltung zur einkopplung von binären steuer- und meldesignalen in eine datenverarbeitungseinheit

Legal Events

Date Code Title Description
8364 No opposition during term of opposition