DE69902070T2 - Unterbrechungsverarbeitung - Google Patents

Unterbrechungsverarbeitung

Info

Publication number
DE69902070T2
DE69902070T2 DE69902070T DE69902070T DE69902070T2 DE 69902070 T2 DE69902070 T2 DE 69902070T2 DE 69902070 T DE69902070 T DE 69902070T DE 69902070 T DE69902070 T DE 69902070T DE 69902070 T2 DE69902070 T2 DE 69902070T2
Authority
DE
Germany
Prior art keywords
instruction
address
interrupt
information
processing
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
DE69902070T
Other languages
English (en)
Other versions
DE69902070D1 (de
Inventor
Takao Yamamoto
Koji Zaiki
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.)
Panasonic Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Application granted granted Critical
Publication of DE69902070D1 publication Critical patent/DE69902070D1/de
Publication of DE69902070T2 publication Critical patent/DE69902070T2/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Description

    Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft einen Prozessor und insbesondere einen Prozessor, welcher in der Lage ist, die Ausführung von in einem Hauptspeicher gespeicherten Befehlen und die Unterbrechungs-(Interrupt)-Verarbeitung zu steuern.
  • Hintergrund der Erfindung
  • Gegenwärtig wenden die meisten Computer eine Neumann-Architektur an, bei welcher ein Programm wie Daten in einem Speicher gespeichert ist und das Programm wird aus dem Speicher ausgelesen und ausgeführt. Allgemein wird ein Neumann-Computer als ein Computersystem verwirklicht, welches einen Computer mit einem Prozessor wie einer CPU (zentrale Verarbeitungseinheit) zum Steuern der Ausführung des Programmes und einen Hauptspeicher zum vorübergehenden Speichern des Programms oder der Daten, E/A- (Eingabe/Ausgabe)-Anordnungen zum Ausführen von E/A-Vorgängen, einen Hilfs-(zweiten)-Speicher zum Speichern des Programms oder der Daten für einen langen Zeitabschnitt und Ähnliches enthält.
  • Wenn das Programm unter der Steuerung des Prozessors ausgeführt wird, wird ein in dem Programm enthaltener Befehl wie "Operation" oder "Übertragung" aus dem Hauptspeicher gelesen und die Befehls-Verarbeitung wie Operation oder Übertragung eines Steuerungssignals zum Ansprechen jedes Teils des Computers zum Ausführen einer Übertragungsverarbeitung oder Ähnlichem gemäß dem Befehl wird ausgeführt. Der Prozessor enthält einen Programmzähler zum Bestimmen von Bereichen in dem Hauptspeicher, wo auszuführende Befehle gespeichert werden, ein Befehlsregister zum Speichern der Befehle, und Ähnliches. Grundsätzlich liest der Prozessor die Befehle sequenziell und führt die Verarbeitung der Befehle aus.
  • Als ein Beispiel einer in dem Prozessor verwendeten Technik zum Verwirklichen der Hochgeschwindigkeits-Verarbeitung gibt es die "Pipeline- Verarbeitung". Wie oben beschrieben, werden grundlegend die Befehle sequenziell gelesen und ausgeführt. In dem Prozessor wird die Verarbeitung in mehreren Stufen ausgeführt, einschließlich Holen eines Befehls, Dekodieren eines Befehls, Ausführen eines Befehls, Ausgeben von Verarbeitungsergebnissen und Ähnlichem. Bei der Pipeline-Verarbeitung wird die Verarbeitung in jeder Stufe parallel ausgeführt, um eine Hochgeschwindigkeits-Verarbeitung zu verwirklichen. Bei der sequenziellen Verarbeitung kann eine Verarbeitung eines nachfolgenden Befehls nicht begonnen werden, bis ein Befehl einer Verarbeitung in mehreren Stufen unterworfen ist, während bei der Pipeline- Verarbeitung eine Verarbeitung des nachfolgenden Befehls beginnt, ohne auf den Abschluss der Verarbeitung des Befehls zu warten, was eine Hochgeschwindigkeits-Verarbeitung ermöglicht. Aus diesem Grund nutzen die meisten gegenwärtig verwendeten Prozessoren die Pipeline-Verarbeitung.
  • Noch detaillierter wird bei der Pipeline-Verarbeitung ein Befehl geholt und dann wird ein nachfolgender Befehl geholt, während die Verarbeitung des geholten Befehls in nachfolgenden Stufen ausgeführt wird, wobei die Verarbeitung als eine "Vorab-Holen-Verarbeitung" bezeichnet wird. Daher weist der Prozessor einen Speicherbereich für den gerade ausgeführten Befehl und einen Speicherbereich für den vorab zu holenden Befehl auf. Der vorab zu holende Befehl ist grundlegend bestimmt gemäß der Reihenfolge der in dem Programm enthaltenen Befehle. Wenn die Befehle sequenziell vorab geholt werden, besteht eine Wahrscheinlichkeit, dass die Pipeline-Verarbeitung nicht geeignet ausgeführt werden kann, wenn "Springen" oder "Verzweigen" in dem Programm enthalten ist. Um die Vorab-Holen-Verarbeitung geeignet auszuführen, wurde ein Verzweigungs-Vorhersageverfahren entwickelt.
  • Verschiedene Unterbrechungen treten häufig in dem Computersystem auf. Eine wichtige Aufgabe des Prozessors ist es, die Verarbeitung dieser Unterbrechungen zu steuern. Die Unterbrechung tritt auf, wenn eine Anforderung von dem Peripheriegerät wie einem E/A-Gerät abgegeben wird, oder wenn eine inkorrekte Verarbeitung bei der Ausführung des Programms ausgeführt wird und verlangt, dass sie mit Priorität verarbeitet wird, auch wenn ein bestimmtes Programm ausgeführt wird. Wenn die Unterbrechung auftritt, wird die ausgeführte Verarbeitung (Programm) unterbrochen und eine andere Verarbeitung entsprechend der Unterbrechung wird ausgeführt. Dies wird als eine Unterbrechungs-(Interrupt)-Verarbeitung bezeichnet.
  • Wenn ein Timer oder ein externes Gerät ein Unterbrechungs- Anforderungssignal zu dem Prozessor ausgibt oder wenn eine Unterbrechungs-Anforderung bei der Ausführung des Programms ausgegeben wird, speichert der Prozessor vorübergehend das ausgeführte Programm und führt dann ein Verarbeitungsprogramm als Reaktion auf das Unterbrechungs- Anforderungssignal aus. Nach Abschluss der Unterbrechungs-Verarbeitung nimmt der Prozessor die Verarbeitung des Programms dort wieder auf, wo es unterbrochen wurde.
  • Fig. 7 ist ein Steuerungs-(Ausführungs)-Ablaufdiagramm zum Erläutern der Steuerung der durch einen im Stand der Technik bekannten Mehrzweckprozessor ausgeführten Unterbrechungs-Verarbeitung. Die gleiche Figur zeigt Speicher-Zustände des Hauptspeichers, welcher Bereiche 701-703 aufweist. Der Bereich 701 enthält eine Prozedur (Programm) zur Unterbrechungs- Verarbeitung, der Bereich 702 enthält eine Prozedur zum Ausführen der Verarbeitung für einen festgelegten Unterbrechungs-Grund und der Bereich 703 enthält ein allgemeines Programm wie ein Anwendungsprogramm. Die in dem Bereich 701 gespeicherte Prozedur beinhaltet ein Untersuchen des Unterbrechungs-Grundes. Die Speicherbereiche in dem Hauptspeicher sind durch Adressen eindeutig festgelegt.
  • Die gleiche Figur zeigt ebenfalls, wie der bekannte Mehrzweckprozessor die Steuerung ausführt, wenn die Unterbrechung auftritt, während ein in dem Mehrzweckprogramm enthaltener Befehl 1a verarbeitet wird. In diesem Fall führt der Prozessor die Prozedur für die Unterbrechungs-Verarbeitung in einem festgelegten Bereich in dem Hauptspeicher aus, um den Unterbrechungs-Grund zu analysieren und führt dann die Verarbeitung für den Unterbrechungs-Grund aus.
  • Wie in Fig. 7 gezeigt, verarbeitet der Prozessor, wenn die Unterbrechung auftritt, während der in einem durch eine Adresse n festgelegten Bereich gespeicherte Befehl 1a ausgeführt wird, in dem Steuerungsablauf P701, einen Befehl 2a, gespeichert in einem durch eine Adresse AAAA festgelegten Bereich, welche den Kopf des Bereiches 701 angibt. Dann führt der Prozessor in dem Steuerungsablauf P702a den Befehl 2b aus und führt dann sequenziell die folgenden Befehle aus. Als Ergebnis davon analysiert der Prozessor den Unterbrechungs-Grund an dem Punkt des Befehls 2k und erhält dadurch eine Anfangsadresse eines Bereiches, welcher die Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund enthält. In diesem Fall ist die Prozedur in einem Bereich beginnend an der Adresse XXXX gespeichert. In dem Steuerungsablauf P702b führt der Prozessor einen Befehl 3a, gespeichert in dem bei der Adresse XXXX angeordneten Bereich, aus und führt sequenziell die folgenden Befehle aus.
  • Fig. 8 ist ein Zeitdiagramm, welches den Zustand des bekannten Prozessors zeigt, welcher eine derartige Verarbeitung ausführt. In der Figur sind Befehlsadressen gezeigt, die anzeigen, wo auszuführende Befehle gespeichert sind, und gegenwärtig ausgeführte Befehle mit entsprechendem Timing.
  • Zum Zeitpunkt t0 wird die den Speicherbereich für den Befehl 1a anzeigende Adresse n als' Befehlsadresse erhalten und der Befehl 1a wird ausgeführt. Wenn "Auftreten der Unterbrechung" zu diesem Zeitpunkt, zum Zeitpunkt t1, zu dem Prozessor gesendet wird, wird die Adressen AAAA, welche den Speicherbereich für den Befehl 2a anzeigt, d. h., der Befehl am Kopf der Prozedur für die Unterbrechungs-Verarbeitung, als Befehlsadresse erhalten und der Befehl 2a wird ausgeführt. Zum Zeitpunkt t2 wird der dem Befehl 2a nachfolgende Befehl 2b ausgeführt. Die folgenden Befehle werden sequenziell ausgeführt und zum Zeitpunkt tk wird der Unterbrechungs-Grund analysiert und dadurch wird die Adresse am Kopf der Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund erhalten. Zum Zeitpunkt tk + 1 wird die Befehlsadresse XXXX erhalten und dadurch wird der Befehl 3a am Kopf der Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund ausgeführt.
  • In einigen Fällen wird das Computersystem erweitert durch Ausbauen peripherer Geräte oder Hinzufügen von Anwendungsprogrammen. Die Erweiterung des Systems resultiert häufig in der Zunahme von Unterbrechungs-Gründen. Wenn die Unterbrechung auftritt, führt der bekannte Mehrzweckprozessor die Prozedur zur Unterbrechungs-Verarbeitung aus, welche in einem festen Speicherbereich gespeichert ist, um den Unterbrechungs-Grund zu untersuchen und führt dann eine Verarbeitung des Unterbrechungs-Grundes aus. Wenn die Unterbrechungs-Gründe zunehmen, können Sie daher flexibel durch Hinzufügen der Prozedur zum Analysieren derselben und der Prozedur zum Ausführen der Verarbeitung derselben gehandhabt werden.
  • Der Mehrzweckprozessor holt jedoch stets die Befehle in der festen Prozedur und führt sie aus, um den Unterbrechungs-Grund zu untersuchen, bevor er eine Verarbeitung für den Unterbrechungs-Grund ausführt. Die Analyse- Verarbeitung erfordert allgemein einige Schritte und dadurch kann die Unterbrechung nicht schnell gehandhabt werden. Als eine Lösung dafür führen einige bekannte Prozessoren die Unterbrechungs-Verarbeitung in der folgenden Weise aus, um eine Hochgeschwindigkeits-Verarbeitung zu verwirklichen.
  • Fig. 9 ist eine Darstellung zum Erläutern eines Prozessors, welcher eine Hochgeschwindigkeits-Verarbeitung gemäß dem Stand der Technik ausführt, und zeigt ein Beispiel des obigen Prozessors basierend auf einer Beschreibung eines von Hitachi Co. hergestellten Microcontrollers SH-3. In Fig. 9 umfasst der Prozessor ein Vektor-Basisregister 901, ein Ereignisregister 902 und einen Hauptspeicher 903, welcher Prozeduren zum Ausführen der Verarbeitung für entsprechende Unterbrechungs-Gründe enthält. Das Vektor- Basisregister 901 hält eine Vektor-Basis, welche eine Referenzadresse anzeigt. Das Ereignisregister 902 hält einen Unterbrechungs-Grund, wenn eine Unterbrechung auftritt. Der Hauptspeicher 903 enthält eine Unterbrechungs- Verarbeitung 1 für einen "Unterbrechungs-Grund 1", Unterbrechungs- Verarbeitung 2 für einen "Unterbrechungs-Grund 2", . . .
  • Bei dem bekannten Prozessor, welcher eine Hochgeschwindigkeits- Verarbeitung ausführt, ist die Prozedur für jede Unterbrechungs-Verarbeitung in einem bei einer Adresse (die eine Anfangsposition eines Bereiches angebende Adresse) beginnenden Bereich gespeichert, berechnet aus einer Referenzadresse und einem Offset-Wert. Um genau zu sein ist die Prozedur zur Unterbrechungs-Verarbeitung 1 in einem Bereich gespeichert, der an einer Adresse beginnt, erhalten durch Addieren der Referenzadresse (Basis) und eines Offset-Wertes 1 (Offset 1) und die Prozedur zur Unterbrechungs- Verarbeitung 2 ist in einem Bereich gespeichert beginnend bei einer Adresse, erhalten durch Addieren der Referenzadresse (Basis) und eines Offset-Wertes 2 (Offset 2).
  • Als der Offset-Wert wird ein durch Hardware als ein Ergebnis des Auftretens der Unterbrechung erhaltener Vektor-Offset-Wert verwendet. Z. B. wird in einem System, welches einen Satz aus einer logischen Adresse und einer physikalischen Adresse durch die Verwendung eines Übersetzungs-Seitenblick- Puffers (TLB) zwischenspeichert, welches einen virtuellen Hochgeschwindigkeits-Speicher-Verwaltungs-Mechanismus verwirklicht, wenn kein Treffer in einem Zwischenspeicher auftritt, einen TLB-Fehler anzeigendes "0x 00000400" erhalten. Die durch Addieren des als den Offset-Wert erhaltenen Wertes zu der Referenzadresse (Basis) erhaltene Adresse wird als die Anfangsadresse verwendet, um die Prozedur zum Ausführen der Verarbeitung für den Zwischenspeicher-Fehler auszuführen.
  • Wenn die Unterbrechung bei dem obigen Prozessor auftritt, wird der durch Hardware erhaltene Unterbrechungs-Grund in dem Ereignisregister 902 gespeichert. Der Prozessor addiert den von dem Vektor-Basisregister 901 gehaltenen, die Referenzadresse anzeigenden Basiswert zu dem von dem Unterbrechungs-Grund, welcher in dem Ereignisregister 902 gehalten ist, erhaltenen Vektor-Offset-Wert zum Erhalten der Anfangsadresse der Unterbrechungs-Verarbeitung. Dann wird eine der Unterbrechungs-Verarbeitungen 1, 2, ... für den Unterbrechungs-Grund ausgeführt.
  • In dem obigen Prozessor ist es möglich, die verstrichene Zeit von dem Auftreten der Unterbrechung bis zum Ausführen der Unterbrechungs-Verarbeitung zu verringern, da die Prozedur zum Analysieren des Unterbrechungs-Grundes verteilt werden kann, anders als bei dem Mehrzweckprozessor.
  • Obwohl der bekannte Mehrzweckprozessor zur flexiblen Handhabung zunehmender Unterbrechungs-Gründe resultierend aus einer Systemerweiterung, wie oben beschrieben, in der Lage ist, benötigt er die feste Prozedur zur Unterbrechungs-Verarbeitung zum Analysieren des Unterbrechungs-Grundes und daher kann die Unterbrechung nicht schnell gehandhabt werden.
  • Im Gegensatz dazu ist der eine Hochgeschwindigkeits-Verarbeitung ausführende Prozessor gemäß dem Stand der Technik in der Lage, die Speicherposition der Prozedur zur Unterbrechungs-Verarbeitung für einen einzelnen Unterbrechungs-Grund schnell zu erhalten und dadurch eine Hochgeschwindigkeits-Verarbeitung zu ermöglichen. Der Prozessor speichert jedoch Befehle oder Informationen gemäß einem einzigartigen Verfahren und ist daher nicht vollständig kompatibel mit dem Mehrzweckprozessor. Daher ist das Problem mit dem Computersystem, welches diesen Prozessor verwendet, dass es das für den Mehrzweckprozessor entwickelte Programm nicht verwenden kann und nicht einfach erweitert werden kann, verglichen mit dem den Mehrzweckprozessor verwendenden System.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung, einen Prozessor anzugeben, welcher kompatibel zu einem bekannten Mehrzweckprozessor ist und in der Lage ist, eine Hochgeschwindigkeits-Unterbrechungs-Verarbeitung auszuführen, während er sich selbst an die Systemerweiterungs-Flexibilität anpasst.
  • Andere Aufgaben und Vorteile der Erfindung werden aus der detaillierten Beschreibung erkennbar, welche folgt. Die detaillierte Beschreibung und, die beschriebenen, besonderen Ausführungsformen werden nur zur Darstellung angegeben und zahlreiche Ergänzungen und Modifikationen innerhalb des Geistes und Umfangs der Erfindung werden für den Durchschnittsfachmann aus der detaillierten Beschreibung erkennbar.
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung umfasst ein Prozessor zum Steuern der Ausführung von in einem Hauptspeicher gespeicherten Befehlen und zur Unterbrechungs-Verarbeitung: eine Unterbrechungs- Verarbeitungs-Steuerungseinrichtung, welche eine Unterbrechungs- Anforderung akzeptiert, eine akzeptierte Unterbrechung analysiert, um einen Unterbrechungs-Grund zu erhalten, und Informationen erzeugt, welche eine Speicherposition einer Prozedur zum Verarbeiten des Unterbrechungs- Grundes in dem Hauptspeicher angibt; eine Sonder-Adress-Halteeinrichtung, welche eine erste, aus der durch die Unterbrechungs-Verarbeitungs- Steuerungseinrichtung erzeugten Information erhaltene Adressinformation hält; und eine Befehlsausführungs-Steuerungseinrichtung, welche bestimmt, ob die von der Sonder-Adress-Halteeinrichtung gehaltene erste Adressinformation als Information zu verwenden ist, welche eine Speicherposition eines auszuführenden Befehls angibt oder nicht, und die Ausführung des Befehls gemäß einem Bestimmungsergebnis steuert. Dadurch wird gemäß der Bestimmung durch die Befehlsausführungs-Steuerungseinrichtung und durch die Verwendung durch die Sonder-Adress-Halteeinrichtung gehaltenen ersten Adressinformation die Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund schnell ausgeführt.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung gibt bei einem Prozessor gemäß dem ersten Aspekt die Unterbrechungs-Verarbeitungs- Steuerungseinrichtung die Unterbrechungs-Anforderung anzeigende Informationen zu der Befehlsausführungs-Steuerungseinrichtung aus, und die Befehlsausführungs-Steuerungseinrichtung erzeugt eine Information, welche eine Speicherposition einer vorbestimmten Prozedur in dem Hauptspeicher angeben und die Ausführung des Befehls steuert, wenn sie die die Unterbrechungs-Anforderung anzeigende Information empfängt, so dass die erzeugte Information als die Speicherposition des auszuführenden Befehls anzeigende Information verwendet wird. Dadurch kann die vorbestimmte Prozedur ausgeführt werden.
  • Gemäß einem dritten Aspekt der vorliegenden Erfindung umfasst ein Prozessor gemäß dem ersten oder zweiten Aspekt eine Einrichtung zum Halten einer Speicherpositions-Information eines nachfolgenden. Befehls, welche eine Speicherposition eines nachfolgend auszuführenden Befehls in dem Hauptspeicher anzeigende Information erzeugt und die erzeugte Information als zweite Adressinformation hält, wobei die Befehlsausführungs- Steuerungseinrichtung die Ausführung des Befehls steuert, so dass entweder die erste Adressinformation oder die zweite Adressinformation als die Information verwendet wird, welche die Speicherposition des auszuführenden Befehls angibt. Dadurch kann der nachfolgende Befehl ausgeführt werden.
  • Gemäß einem vierten Aspekt der vorliegenden Erfindung beinhaltet bei einem Prozessor gemäß dem ersten Aspekt die Unterbrechungs-Verarbeitungs- Steuerungseinrichtung eine Einrichtung zum Halten von Speicherpositions- Informationen von Prozeduren, welche Entsprechungen zwischen den Unterbrechungs-Gründen anzeigende Information hält, erhalten durch Analyse, und die Speicherposition der Prozeduren zum Verarbeiten der entsprechenden Unterbrechungs-Gründe in dem Hauptspeicher. Dadurch wird die Speicherpositions-Information aus der durch die Einrichtung zum Halten der Speicherpositions-Information von Prozeduren gehaltenen Information erzeugt.
  • Gemäß einem fünften Aspekt der vorliegenden Erfindung kann bei einem Prozessor gemäß dem vierten Aspekt die durch die Einrichtung zum Halten von Speicherpositions-Informationen von Prozeduren gehaltene Information von einem Benutzer eingestellt werden. Dadurch wird gemäß einer Einstellung durch den Benutzer die Speicherpositions-Information erzeugt.
  • Gemäß einem sechsten Aspekt der vorliegenden Erfindung beinhaltet bei einem. Prozessor gemäß dem ersten Aspekt die Sonder-Adress- Halteeinrichtung eine Referenzadress-Informations-Halteeinrichtung zum Halten einer Referenzadress-Information, welche die Speicherposition in dem Hauptspeicher angibt. Dadurch wird die Speicherpositions-Information durch Addition unter Verwendung der Referenzadress-Information erzeugt.
  • Gemäß einem siebten Aspekt der vorliegenden Erfindung addiert bei einem Prozessor gemäß dem sechsten Aspekt die Sonder-Adress-Halteeinrichtung die durch die Unterbrechungs-Verarbeitungs-Steuerungseinrichtung erzeugte Information zu der Referenzadress-Information, um die erste Adressinformation zu erzeugen. Dadurch wird die Speicherpositions-Information erzeugt durch Addition unter Verwendung der Referenzadress-Information.
  • Gemäß einem achten Aspekt der vorliegenden Erfindung kann bei einem Prozessor gemäß dem sechsten oder siebten Aspekt die von der Referenzadress-Informations-Halteeinrichtung gehaltene Information von einem Benutzer eingestellt werden. Dadurch wird die Speicherpositions-Information gemäß der Einstellung durch einen Benutzer erzeugt.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Fig. 1 ist ein Blockschaltbild, welches einen Prozessor gemäß einer ersten Ausführungsform der vorliegenden Erfindung zeigt.
  • Fig. 2 ist ein Flussdiagramm zum Erläutern einer Prozedur zur Unterbrechungs-Verarbeitung, ausgeführt durch den Prozessor der ersten Ausführungsform.
  • Fig. 3 ist ein Zeitdiagramm, welches den Zustand der duch den Prozessor der ersten Ausführungsfort ausgeführten Unterbrechungs-Verarbeitung zeigt.
  • Fig. 4 ist ein Blockschaltbild, welches einen Prozessor gemäß einer zweiten Ausführungsform der vorliegenden Erfindung zeigt.
  • Fig. 5 ist ein Blockschaltbild, welches einen inneren Aufbau einer Eintritts- Adresstabellen-Halteeinheit zeigt, enthalten in dem Prozessor der zweiten Ausführungsform.
  • Fig. 6 ist ein Blockschaltbild, welches einen Prozessor gemäß einer dritten Ausführungsform der vorliegenden Erfindung zeigt.
  • Fig. 7 ist ein Flussdiagramm, welches eine Prozedur zur Unterbrechungs- Verarbeitung zeigt, ausgeführt durch einen Mehrzweckprozessor gemäß dem Stand der Technik.
  • Fig. 8 ist ein Zeitdiagramm, welches eine Unterbrechungs-Verarbeitung zeigt, ausgeführt durch den bekannten Mehrzweckprozessor.
  • Fig. 9 ist eine Darstellung zum Erläutern der Unterbrechungs-Verarbeitung, ausgeführt durch einen verbesserten, bekannten Prozessor.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGS- FORMEN Ausführungsform 1
  • Ein Prozessor gemäß einer ersten Ausführungsform der vorliegenden Erfindung ist angepasst, um eine Eingangsadresse der Unterbrechungs- Verarbeitung zu halten, um dadurch eine Hochgeschwindigkeits-Verarbeitung zu verwirklichen.
  • Fig. 1 ist ein Blockschaltbild, welches den Prozessor gemäß der ersten Ausführungsform der vorliegenden Erfindung zeigt. In Fig. 1 umfasst ein Prozes sor 100 der ersten Ausführungsform eine Befehlsausführungs- Steuerungseinheit 101, eine Befehls-Halteeinheit 102, eine Unterbrechungs- Ausführungs-Steuerungseinheit 103, eine Eingangsadressen-Halteeinheit 106, einen Vorab-Hol-Adresszähler 107, einen Auswähler 108 und eine Befehlsadress-Halteeinheit 109, und ist an eine periphere Funktionseinheit 104 angeschlossen, welche mit peripheren Geräten und einem Hauptspeicher 105 kommuniziert, um Programme oder Daten zu speichern. In diesem dargestellten Beispiel werden eine Befehlsausführungs-Einheit, ein bei der Ausführung von Befehlen verwendetes Register und Ähnliches übergangen.
  • Die Befehlsausführungs-Steuerungseinheit 101 interpretiert (dekodiert) den durch die Befehls-Halteeinheit 102 gehaltenen Befehl und führt den Befehl aus, d. h., steuert die Operation oder Informationsübertragung. Auch wenn die Unterbrechung auftritt, bestimmt die Steuerungseinheit 101 gemäß dem Interpretations-(Dekodierungs)-Ergebnis des durch die Befehls-Halteeinheit 102 gehaltenen Befehls, ob eine durch die später erwähnte Eingangsadress- Halteeinheit 106 gehaltene Adresse zu verwenden ist oder nicht.
  • Mit anderen Worten wirkt die Befehlsausführungs-Steuerungseinheit 101 als Befehlsausführungs-Steuerungseinheit, welche bestimmt, ob die von der Sonder-Adress-Halteeinrichtung (Eingangsadress-Halteeinrichtung 106) gehaltene erste Adressinformation (Eingangsadresse) Information ist, welche die Speicherposition des auszuführenden Befehls anzeigt oder nicht.
  • Die Befehls-Halteeinheit 102 holt einen auszuführenden Befehl aus dem Hauptspeicher 105 und hält den Befehl, während er entsprechend der Steuerung der Befehlsausführungs-Steuerungseinheit 101 ausgeführt wird. Wenn die Unterbrechungs-Ausführungs-Steuerungseinheit 103 ein Signal zum Senden "Auftreten einer Unterbrechung" von der peripheren Funktions-Einheit 104 oder der Befehlsausführungs-Steuerungseinheit 101 empfängt, erzeugt sie ein Signal zum Steuern der Unterbrechungs-Verarbeitung und gibt das Signal zu der Befehlsausführungs-Steuerungseinheit 101 und der Eingangsadress- Halteeinheit 106 aus.
  • Mit anderen Worten wirkt die Unterbrechungs-Ausführungs-Steuerungseinheit 103 als Einrichtung zum Steuern der Unterbrechungs-Verarbeitung, welche eine Unterbrechungs-Anforderung akzeptiert, die akzeptierte Unterbrechung analysiert, um einen Unterbrechungs-Grund zu erhalten und erzeugt eine Information, welche eine Position eines Bereichs in dem Hauptspeicher angibt, wo eine Prozedur zum ausführen der Verarbeitung für den Unterbrechungs- Grund gespeichert ist.
  • Die periphere Funktionseinheit 104 steuert einen Informationsaustausch zwischen peripheren Geräten (nicht dargestellt), wie Eingabe/Ausgabe-Geräten oder einem externen Speicher und dem Prozessor 100. Der Hauptspeicher 105 wird verwirklicht durch die Verwendung eines Hochgeschwindigkeits- Speichers wie eines Halbleiterspeichers und speichert in dem Programm enthaltene Befehle und zu verarbeitende Daten.
  • Die Eingangsadress-Halteeinheit 106 hält von der Unterbrechungs- Ausführungs-Steuerungseinheit 103 als Eingangsadresse ausgegebene Informationen. Der Vorab-Hol-Adresszähler 107 hält eine Vorab-Hol-Adresse, welche eine Position eines Bereiches in dem Hauptspeicher 105 angibt, wo ein vorab zu holender Befehl gespeichert ist. Der Auswähler 108 wählt eine der durch die Befehlsausführungs-Steuerungseinheit 101, die Eingangsadress-Halteeinheit 106 und den Vorab-Hol-Adresszähler 107 unter Steuerung der Befehlsausführungs-Steuerungseinheit 101 gelieferten Adressen aus und gibt die ausgewählte Adresse zu der Befehlsadress-Halteeinheit 109 aus. Die Befehlsadress-Halteeinheit 109 hält die von dem Auswähler 108 ausgegebene Adresse als eine Adresse des auszuführenden Befehls und gibt ein die Adresse für den Hauptspeicher 105 anzeigendes Signal aus, welcher den in dem durch die Adresse bestimmten Bereich gespeicherten Befehl zu der Befehls-Halteeinheit 102 ausgibt.
  • Mit anderen Worten wirkt die Eingangsadress-Halteeinheit 106 als eine Einrichtung zum Halten einer bestimmten Adresse, welche die durch die Unterbrechungs-Ausführungs-Steuerungseinheit 103 erzeugte und von derselben als eine erste Adressinformation (Eingangsadresse) ausgegebene Informationen hält. Der Vorab-Hol-Adresszähler 107 wirkt als eine Einrichtung zum Halten nachfolgender Speicherpositions-Information, welche Information hält, welche die Position des Bereichs in dem Hauptspeicher angibt, an welcher ein nachfolgend auszuführender Befehl gespeichert ist, als eine zweite Adressinformation (Vorab-Hol-Adresse).
  • Fig. 2 ist eine Darstellung, welche den Speicherzustand von Befehlen und die Prozedur zur Unterbrechungs-Verarbeitung oder Steuerung des Prozessors 100 zeigt. In Fig. 2 sind eine Prozedur zum Analysieren der Unterbrechung, eine Prozedur zum Ausführen der Verarbeitung für einen bestimmten Unterbrechungs-Grund und ein allgemeines Programm wie ein Anwendungsprogramm in Bereichen 201, 202 und 203 in der Hauptspeicher-Einheit 105 gespeichert. Diese Speicherbereiche sind durch Adressen eindeutig bestimmt. Befehle 2a, 3a und 1a sind in den oberen Abschnittender Bereichen 201, 202 und 203 gespeichert, bestimmt durch Adressen AAAA, XXXX und n. Fig. 3 ist ein Zeitdiagramm, welches den Zustand des Prozessors 100 zeigt, wenn er eine Unterbrechungs-Verarbeitung ausführt.
  • Nachfolgend wird eine Beschreibung der Ausführung der in dem Hauptspeicher 105 gespeicherten Befehle gegeben, welche durch den Prozessor 105 ausgeführt werden, der aufgebaut ist, wie in Fig. 1 gezeigt. Zwei Fälle, das heißt "A. Keine Unterbrechung" und "B. Auftreten einer Unterbrechung" werden erläutert.
  • A. Keine Unterbrechung
  • Wenn das in dem in Fig. 2 gezeigten Bereich 203 in dem Hauptspeicher 105 gespeicherte allgemeine Programm ausgeführt wird, wird der erste Befehl 1a ausgeführt. In Fig. 1 wiederum gibt die Befehlsausführungs- Steueruhgseinheit 101 zum Beginnen der Programmausführung ein Signal S155 und ein Auswahl-Anweisungs-Signal S156 zu dem Auswähler 108 aus. Das Signal S155 gibt eine erste Befehlsadresse an und das Auswahl- Anweisungs-Signal S156 wird zum Anweisen des Auswählers 108 zum Auswählen des Signals S155 verwendet. Gemäß dem Auswahl-Anweisungs- Signal S156 gibt der Auswähler 108 ein Auswahl-Adresssignal S159 basierend auf dem Signal S155 zu der Befehlsadress-Halteeinheit 109 aus: In diesem Fall gibt das Adresssignal S159 die Adresse "n" an, zum Bestimmen des in Fig. 2 gezeigten Speicherbereichs, in welchem der Befehl 1a gespeichert ist.
  • Die Befehlsadress-Haiteeinheit 109 gibt ein Adress-Anweisungs-Signal S160 aus, welches die Adresse "n" für den Hauptspeicher 105 angibt, welcher den in dem durch die Adresse "n" bestimmten Bereich gespeicherten Befehl zu der Befehls-Halteeinheit 102 ausgibt. Das Adress-Anweisungs-Signal S160 wird ebenfalls zu dem Vorab-Hol-Adresszähler 107 ausgegeben. Der Vorab-Hol- Adresszähler 107 erzeugt die Vorab-Hol-Adresse zum Bestimmen des Bereiches, in welchem der vorab zu holende Befehl gespeichert ist, gemäß der durch das Adress-Anweisungs-Signal S160 angegebenen Adresse und gibt das die Vorab-Hol-Adresse angebende Vorab-Hol-Adresssignal S158 zu dem Auswähler 108 aus. Der Vorab-Hol-Adresszähler 107 addiert die durch das Adress-Anweisungs-Signal S160 angegebene Adresse zu einem vorbestimmten Wert zum Erzeugen der Adresse zum Bestimmen des Bereichs, in welchem der nachfolgende Befehl gespeichert ist, ohne die Verwendung des Verzweigungs-Vorhersage-Verfahrens oder Ähnlichem. Der Vorab-Hol- Adresszähler 107 gibt das die Adresse zum Bestimmen des Speicherbereiches des Befehls 1b, gezeigt in Fig. 2, anzeigende Vorab-Hol-Adresssignal S158 zu dem Auswähler 108 aus.
  • Die Befehls-Halteeinheit 102 hält den in dem bei der Adresse n des Hauptspeichers 105 platzierten Bereich gespeicherten Befehl 1a. Die Befehlsausführungs-Steuerungseinheit 101 analysiert den durch die Befehls-Halteeinheit 102 gehaltenen Befehl 1a und steuert der Ausführung des Befehls 1a. Wenn der Befehl 1a gleichförmig ausgeführt wird und keine Unterbrechung auftritt, gibt die Befehlsausführungs-Steuerungseinheit 101 das Auswahl-Anweisungs Signal S156 zum Anweisen des Auswählers 108 zum Auswählen des von dem Vorab-Hol-Adresszähler 107 ausgegebenen Vorab-Hol-Adresssignals S158 aus.
  • Gemäß dem Auswahl-Anweisungs-Signal S156 gibt der Auswähler 108 das die Adresse des vorab zu holenden Befehls 1b angebende Auswahl- Adresssignal S159 zu der Befehlsadress-Halteeinheit 109 aus. In diesem Fall gibt das Adresssignal S159 die Adresse zum Bestimmen des Bereichs an, in welchem der Befehl 1b gespeichert ist. Gesteuert durch den Prozessor 100 wird der nachfolgende Befehl 1b vorab geholt, während der Befehl 1a ausgeführt wird.
  • B. Auftreten einer Unterbrechung
  • Wie vorstehend erwähnt, treten Unterbrechungen auf Grund verschiedener Faktoren auf. Es gibt zwei Arten von Unterbrechungen, das heißt, eine Unterbrechung mit einem Ursprung außerhalb des Prozessors und eine Unterbrechung mit einem Ursprung innerhalb des Prozessors. Die Unterbrechung mit einem Ursprung außerhalb des Prozessors, nämlich der peripheren Geräte, ist die Unterbrechung, welche auftritt, wenn eine Bestimmung durch den Benutzer unter Verwendung einer Maus oder Tastatur vorgenommen wird, oder wenn eine Anweisung zur Informations-Übertragung von dem externen Speicher, Kommunikations-Ausstattung, einem Netzwerk und Ähnlichem vorhanden sind. Diese Unterbrechung wird durch die periphere Funktionseinheit 104 zum Überwachen und Steuern der peripheren Geräte akzeptiert, welche ein Unterbrechungssignal S152 erzeugt und dasselbe zu der in dem Prozessor 100 enthaltenen Unterbrechungs-Ausführungs-Steuerungseinheit 103 ausgibt. Beim Empfang des Signals S152 führt die Steuerungseinheit 103 eine Unterbrechungs-Verarbeitung aus.
  • Andererseits ist die mit einem Ursprung im Inneren des Prozessors auftretende Unterbrechung die Unterbrechung, welche auftritt, wenn ein Befehl für eine ungeeignete Operation gegeben wird, oder wenn ein Befehl zum Schreiben an eine falsche Adresse des Hauptspeichers gegeben oder ausgeführt wird. Diese Unterbrechung, welche in der Befehlsausführungs-Einheit (nicht dargestellt) auftritt, wird durch die Befehlsausführungs-Steuerungseinheit 101 überwacht. Wenn die Steuerungseinheit 101 die Unterbrechung erfasst, gibt sie ein Unterbrechungs-Signal S151 zu der Unterbrechungs-Ausführungs- Steuerungseinheit 103 aus. Mit Empfangen dieses Signals S151 führt die Steuerungseinheit 103 eine Unterbrechungs-Verarbeitung aus.
  • Die Unterbrechungs-Ausführungs-Steuerungseinheit 103 hat eine Fähigkeit, den Unterbrechungs-Grund zu analysieren, und eine Fähigkeit, die Speicherposition der Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund zu bestimmen. Wenn das Unterbrechungs-Signal S151 oder S152 in die Unterbrechungs-Ausführungs-Steuerungseinheit 103 von der Befehlsausführungs-Steuerungseinheit 101 oder der peripheren Funktionseinheit 104 eingegeben wird, analysiert sie das Signal zum Bestimmen des Unterbre chungs-Grundes und erzeugt ein die Position des Bereiches anzeigendes Signal, in welchem die Prozedur zum Ausführen der Verarbeitung des Unterbrechungs-Grundes gespeichert ist. Die Steuerungseinheit 103 erzeugt ein Signal S154, welches den Unterbrechungs-Grund anzeigt, und gibt dasselbe zu der Befehlsausführungs-Steuerungseinheit aus und gibt ein Adresssignal S153, welches die Speicherposition der Prozedur angibt, zu der Eingangsadress-Halteeinheit 106 aus. Die Eingangsadress-Halteeinheit 106 hält die durch das Adresssignal S153 als die Eingangsadresse angegebene Adresse und gibt ein Eingangsadresssignal S157, welches die Eingangsadresse anzeigt, zu dem Auswähler 108 aus.
  • Wenn der Befehlsausführungs-Steuerungseinheit 101 das Unterbrechungs- Signal S154 zugeführt wird, erzeugt sie das Signal S155, welches die Adresse "AAAA" als die Anfangsposition der Prozedur zum Analysieren der Unterbrechung anzeigt und gibt das Signal S155 zu dem Auswähler 108 aus und weist den Auswähler 108 an, das Signal S155 durch die Verwendung des Auswahl- Anweisungssignals S156 auszuwählen. Dadurch gibt der Auswähler 108 das Auswahl-Adresssignal S159, welches die Adresse "AAAA" anzeigt, zu der Befehlsadress-Halteeinheit 109 aus.
  • Die Befehlsadress-Halteeinheit 109 gibt das Adress-Anweisungssignal S160 zu dem Hauptspeicher 105 aus. Gemäß dem Signal S170 wird der in dem durch die Adresse "AAAA" bestimmten Bereich des Hauptspeichers 105 gespeicherte Befehl 2a durch die Befehls-Halteeinheit 102 gehalten. Wie in dem Fall, in welchem keine Unterbrechung auftritt, wird das den Bereich anzeigende Vorab-Hol-Adresssignal S158, in welchem der nachfolgende Befehl 2b gespeichert ist, durch den Vorab-Hol-Zähler 107 erzeugt und zu dem Auswähler 108 ausgegeben.
  • Die Befehlsausführungs-Steuerungseinheit 101 dekodiert den durch die Befehls-Halteeinheit 102 gehaltenen Befehl und bestimmt gemäß dem dekodierten Befehl, ob das von der Eingangsadress-Halteeinheit 106 ausgegebene Eingangsadresssignal S157 als das die Speicherposition des nachfolgend auszuführenden Befehls anzeigende Signal verwendet wird oder nicht. Die Befehlsausführungs-Steuerungseinheit 101 erzeugt das Auswahl- Anweisungssignal S156 gemäß dem Bestimmungsergebnis und gibt das Sig nal S156 zu dem Auswähler 108 aus. Dadurch wählt der Auswähler 108 das Eingangsadresssignal S157 oder das Vorab-Hol-Adresssignal S158 aus.
  • Eine Beschreibung wird gegeben von "B-1. Operation unter Verwendung des Eingangsadresssignals" und "B-2. Operation ohne Verwendung des Eingangsadresssignals".
  • "B-1. Operation unter Verwendung des Eingangsadresssignals"
  • Die Befehlsausführungs-Steuerungseinheit 101 gibt das Auswahl- Anweisungs-Signal S156 zum Anweisen des Auswählers 108 zum Auswählen des Eingangsadresssignals S157 zu dem Auswähler 108 aus, welcher das Eingangsadresssignal S157, ausgegeben von der Eingangsadress- Halteeinheit 106, zu der Befehlsadress-Halteeinheit 109 als das Auswahl- Adresssignal S159 ausgibt. Die Prozedur einer solchen Verarbeitung wird durch den in Fig. 2 gezeigten Ablauf und das in Fig. 3 gezeigte Zeitdiagramm beschrieben.
  • Zum Zeitpunkt t0 (Fig. 3) wird die Adresse "n" durch die Befehlsadress- Halteeinheit 102 (Fig. 1) gehalten und die Unterbrechung tritt auf, während der Befehl 1a (in dem allgemeinen Programm enthaltener Befehl), gespeichert in dem durch die Adresse "n" bestimmten Bereich des Hauptspeichers 105 (Fig. 2) ausgeführt wird. Die Unterbrechung ist, wie oben erwähnt, entweder die Unterbrechung mit einem Ursprung außerhalb des Prozessors oder innerhalb des Prozessors, obwohl die gleiche Unterbrechungs-Verarbeitung ausgeführt wird, nachdem das Signal S151 oder S152 in die Unterbrechungs- Ausführungs-Steuerungseinheit 103 eingegeben ist.
  • Die Unterbrechungs-Ausführungs-Steuerungseinheit 103 gibt das das "Auftreten der Unterbrechung" anzeigende Signal S154 zu der Befehlsausführungs- Steuerungseinheit 101 aus, welche das Signal S155 zu dem Auswähler 108 ausgibt. Das Signal S155 zeigt die Adresse als die Anfangsposition des Bereiches an, in welchem die Prozedur zum Analysieren der Unterbrechung gespeichert ist. Wie in Fig. 2 gezeigt, zeigt das Signal S155 die Adresse "AAAA" an, da die Prozedur in dem Bereich 201 beginnend bei der Adresse AAAA gespeichert ist, und gemäß dem Signal S156 gibt der Auswähler 108 das die Adresse "AAAA" anzeigende Signal zu der Befehlsadress-Halteeinheit 109 aus, um darin gehalten zu werden.
  • Die Unterbrechungs-Ausführungs-Steuerungseinheit 103 gibt das Adresssignal S153 zu der Eingangsadress-Halteeinheit 106 aus. Hier wird angenommen, dass das in die Steuerungseinheit 103 eingegebene Signal das TLB- Fehler anzeigende "0x 00000400" ist und die Prozedur zum Ausführen einer Verarbeitung des TLB-Fehlers ist in dem Bereich 202 (Fig. 2) des Hauptspeichers 105 gespeichert, deren erster Befehl (Befehl 3a) in dem durch die Adresse "XXXX" bestimmten Bereich gespeichert ist. Die Unterbrechungs- Ausführungs-Steuerungseinheit 103 gibt das die Adresse "XXXX" anzeigende Signal, welches durch die Eingangsadress-Halteeinheit 106 als die Eingangsadresse gehalten wird, aus.
  • Die oben beschriebene Operation wird entlang dem in Fig. 2 gezeigten Steuerungsablauf P201 ausgeführt und der auszuführende Befehl wechselt von dem Befehl 1a, gespeichert in dem bei der Adresse n angeordneten Bereich, welcher ausgeführt wird, wenn die Unterbrechung auftritt, zu dem Befehl 2a, gespeichert in dem bei der Adresse AAAA angeordneten Bereich. Wenn die Unterbrechung zum Zeitpunkt t0 auftritt, hält die Befehlsadress- Halteeinheit 109 ebenso, wie in Fig. 3 gezeigt, die Adresse AAAA und die Befehlsausführungs-Steuerungseinheit 101 führt den Befehl 2a aus, gespeichert in dem bei der Adresse AAAA des Hauptspeichers 105 angeordneten Bereich. Zum Zeitpunkt t1 hält die Eingangsadress-Halteeinheit 106 die Adresse "XXXX", ausgegeben von der Unterbrechungs-Ausführungs- Steuerungseinheit 103 als die Eingangsadresse.
  • Danach wählt der Auswähler gemäß dem Auswahl-Anweisungssignal S156 von der Befehlsausführungs-Steuerungseinheit 101 das Eingangsadresssignal S157 aus und gibt dasselbe zu der Befehlsadress-Halteeinheit 109 aus. Daher hält die Befehlsadress-Halteeinheit 109 zum Zeitpunkt t2 die Adresse XXXX und die Befehlsausführungs-Steuerungseinheit 101 führt den in dem bei der Adresse XXXX angeordneten Bereich gespeicherten Befehl 3a aus. Diese Operation wird entlang des Steuerungsablaufs P202, gezeigt in Fig. 2, ausgeführt und der auszuführende Befehl wechselt von dem Befehl 2a, gespeichert in dem bei der Adresse AAAA angeordneten Bereich, welcher ausge führt wird, zu dem Befehl 3a, gespeichert in dem bei der Adresse XXXX angeordneten Bereich. Nach dem Zeitpunkt t2 wird die Prozedur zum Ausführen in der Verarbeitung für den TLB-Fehler ausgeführt, gespeichert in dem in Fig. 2 gezeigten Bereich 202.
  • B-2. Operation ohne Verwendung des Eingangsadresssignals
  • Die Befehlsausführungs-Steuerungseinheit 101 gibt das Auswahl-Anweisungssignal S156 zu dem Auswähler 108 aus. Gemäß dem Auswahl- Anweisungssignal S156 wählt der Auswähler 108 das Vorab-Hol-Adresssignal S158 aus. Der Auswähler 108 wählt das von dem Vorab-Hol-Adresszähler 107 ausgegebene Vorab-Hol-Adresssignäl S158 aus und gibt das Adresssignal S159 zu der Befehlsadress-Halteeinheit 109 aus. Da das Vorab-Hol- Adresssignal die Speicherposition des dem in Fig. 2 gezeigten Befehl 2a nachfolgenden Befehls 2b angibt, wird der Befehl 2b nach der Ausführung des Befehls 2a ausgeführt. Daher ist die Prozedur für eine solche Verarbeitung vergleichbar mit derjenigen durch den Mehrzweckprozessor gemäß dem Stand der Technik (siehe Fig. 7 und 8) ausgeführten.
  • Das Auswahl-Anweisungssignal S156 wird von der Befehlsausführungs- Steuerungseinheit 101 gemäß der folgenden Entscheidung ausgegeben. Die Befehlsausführungs-Steuerungseinheit 101 bestimmt, ob der von der Befehls- Halteeinheit 102 gehaltene Befehl 2a ein "Sprung"-Befehl ist. Wenn sie bestimmt, dass der Befehl 2a der Sprung-Befehl ist, gibt die Steuerungseinheit 101 das Auswahl-Anweisungssignal S156 aus, welches den Auswähler 108 anweist, das Eingangsadresssignal auszuwählen, oder anderenfalls gibt die Steuerungseinheit 101 das Signal S156 aus, welches den Auswähler 108 anweist, das Vorab-Hol-Adresssignal statt des Eingangsadresssignals auszuwählen.
  • Wenn der Befehl 2a der Sprung-Befehl ist, wird eine Verzweigungsadresse gehalten. In diesem Fall ermöglicht daher das Verzweigen zu der durch das Eingangsadresssignal angezeigten Adresse die B-1-Verarbeitung. Wenn der Befehl 2a nicht der Sprung-Befehl ist, ist umgekehrt die Verzweigungsadresse nicht gespeichert oder die Verzweigungsadresse ist gespeichert aber der Sprung muss nicht ausgeführt werden (wenn nur ein Unterbrechungs-Grund vorhanden ist und eine Prozedur für den Unterbrechungs-Grund ausgeführt wird). In solchen Fällen wird die B-2-Verarbeitung ausgeführt ohne die Verwendung des Eingangsadresssignals.
  • Somit beinhaltet der Prozessor 100 gemäß der ersten Ausführungsform die Befehlsausführungs-Steuerungseinheit 101, die Unterbrechungs-Ausführungs- Steuerungseinheit 103, die Eingangsadress-Halteeinheit 106 und den Auswähler 108, wobei bei Akzeptieren der Unterbrechung die Unterbrechungs- Ausführungs-Steuerungseinheit 103 den Unterbrechungs-Grund bestimmt und das Signal erzeugt, welches den Bereich angibt, in welchem die Prozedur zum Ausführen der Verarbeitung für den bestimmten Unterbrechungs-Grund gespeichert ist, die Eingangsadress-Halteeinheit 106 hält die durch dieses Signal angegebene Adresse als die Eingangsadresse und der Auswähler 108 wählt die Eingangsadresse gemäß der Anweisung der Befehlsausführungs- Steuerungseinheit 101 aus, wodurch die Prozedur zur Unterbrechungs-Verarbeitung mit einer hohen Geschwindigkeit ausgeführt werden kann. Zusätzlich kann die durch den bekannten Mehrzweckprozessor ausgeführte Prozedur zur Unterbrechungs-Verarbeitung gemäß der Anweisung der Befehlsausführungs-Steuerungseinheit 101 und Auswahl des Auswählers 108 ausgeführt werden. Als ein Ergebnis kann der Prozessor der vorliegenden Erfindung das für den Mehrzweckprozessor entwickelte Programm verwenden und kann sich selbst flexibel und einfach wie der Mehrzweckprozessor an eine Erweiterung anpassen.
  • Ausführungsform 2
  • Ein Prozessor gemäß einer zweiten Ausführungsform der vorliegenden Erfindung ist ausgebildet, um eine Eingangsadresse wie bei der ersten Ausführungsform zu halten, und weist eine Eingangsadress-Tabelle auf, welche Eingangsadressen enthält.
  • Fig. 4 ist ein Blockschaltbild, welches die Konstruktion des Prozessors der zweiten Ausführungsform zeigt. In Fig. 4 umfasst ein Prozessor 400 der zweiten Ausführungsform eine Befehlsausführungs-Steuerungseinheit 401, eine Befehls-Halteeinheit 402, eine Unterbrechungs-Ausführungs- Steuerungseinheit 403, eine Eingangsadress-Halteeinrichtung 406, einen.
  • Vorab-Hol-Adresszähler 407, einen Auswähler 408 und eine Befehlsadress- Halteeinheit 409 und ist an eine periphere Funktionseinheit 404 angeschlossen, welche mit peripheren Geräten kommuniziert, und einen Hauptspeicher 405 zum vorübergehenden Speichern von Programmen oder Daten.
  • Die Unterbrechungs-Ausführungs-Steuerungseinheit 403 umfasst eine Unterbrechungs-Steuerungseinheit 4031 und eine Eingangsadress-Tabellen- Halteeinheit 4032. Die Unterbrechungs-Steuerungseinheit 4031 erzeugt ein Signal zum Steuern der Unterbrechungs-Verarbeitung und gibt das Signal zu der Befehlsausführungs-Steuerungseinheit 401 und der Eingangsadress- Tabellen-Halteeinheit 4032 aus, wenn sie das "Auftreten einer Unterbrechung" anzeigende Signal von der peripheren Funktionseinheit 404 oder der Befehlsausführungs-Steuerungseinheit 401 empfängt. Beim Empfang des Signals von der Unterbrechungs-Steuerungseinheit 4031 erhält die Eingangsadress- Halteeinheit 4032 eine Eingangsadresse des eingegebenen Signals mit Bezug auf die darin enthaltene Eingangsadress-Tabelle und gibt die Eingangsadresse zu der Eingangsadress-Halteeinheit 406 aus. Die Eingangsadress- Halteeinheit 406 hält die von der Eingangsadress-Tabellen-Halteeinheit 4032 ausgegebene Eingangsadressen.
  • Mit anderen Worten beinhaltet die Unterbrechungs-Ausführungs- Steuerungseinheit 403, welche als eine Einrichtung zum Steuern der Unterbrechungs-Verarbeitung wirkt, eine Eingangsadress-Tabellen- Halteeinrichtung 4032, welche als Einrichtung zum Halten von Speicherpositions-Informationen der Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund wirkt, welche den Bereich in dem Hauptspeicher hält, in welchem die Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund gespeichert ist (als die Eingangsadress-Tabelle).
  • Die Befehlsausführungs-Steuerungseinheit 401, die Befehls-Halteeinheit 402, die periphere Funktionseinheit 404, die Hauptspeichereinheit 405, der Vorab- Hol-Adresszähler 407, der Auswähler 408 und die Befehlsadress-Halteeinheit 409 sind identisch mit den Einheiten 101, 102, 104, 105, 107, 108 und 109 der ersten Ausführungsform.
  • Fig. 5 ist ein Blockschaltbild, welches eine interne Struktur der Eingangsadress-Tabellen-Halteeinheit 4032 zeigt. Wie in Fig. 5 gezeigt, umfasst die Eingangsadress-Tabellen-Halteeinheit 4032 einen Dekodierer 501 und eine Eingangsadress-Tabelle 502. Der Dekodierer 501 dekodiert das von der Unterbrechungs-Steuerungseinheit 4031 gelieferte Signal zum Erhalten einer Unterbrechungs-Anforderungsnummer. Die Eingangsadress-Tabellen- Halteeinheit 4032 findet eine Eingangsadresse der von dem Dekodierer 501 erhaltenen Unterbrechungs-Anforderungsnummer anhand der Eingangsadress-Tabelle 502. Die Eingangsadress-Tabelle 502 enthält Eingangsadressen von Bereichen, welche Prozeduren zum Ausführen der Verarbeitung für die Unterbrechungs-Gründe enthalten, welche durch entsprechende Unterbrechungs-Anforderungsnummern eingegeben werden und kann durch den Benutzer eingestellt werden.
  • Nachfolgend wird eine Beschreibung der Wirkungsweise des so aufgebauten Prozessors der zweiten Ausführungsform gegeben. Die von dem Prozessor ausgeführte Operation, wenn keine Unterbrechung auftritt, ist identisch mit der Operation bei "A. Keine Unterbrechung" der ersten Ausführungsform. Wenn andererseits die Unterbrechung auftritt, wird die Operation wie folgt ausgeführt.
  • Wenn eine Unterbrechung mit einem Ursprung in den peripheren Geräten auftritt oder eine Unterbrechung mit einem Ursprung im inneren des Prozessors auftritt, liefert die periphere Funktionseinheit 404 oder die Befehlsausführungs-Steuerungseinheit 401 ein Signal S452 oder S451, welches "Auftreten einer Unterbrechung" anzeigt, zu der Unterbrechungs-Ausführungs-Steuerungseinheit 403, der Unterbrechungs-Steuerungseinheit 4031, welche das Signal S451 oder S452 akzeptiert. Die Unterbrechungs-Steuerungseinheit 4031 gibt ein "Unterbrechung" anzeigendes Signal S454 zu der Unterbrechungs-Ausführungs-Steuerungseinheit 401 und ein "Unterbrechung" anzeigendes Signal S453a und zu der Eingangsadress-Tabellen-Halteeinheit 4032 aus.
  • In der in Fig. 5 gezeigten Eingangsadress-Tabellen-Halteeinheit 4032 empfängt der Dekodierer 501 das Signal S453a und dekodiert dasselbe, um die Unterbrechungs-Anforderungsnummer zu erhalten. Dann wird die Eingangs adresse der Unterbrechungs-Anforderungsnummer aus der Eingangsadress- Haltetabelle 502 gelesen und ein die Eingangsadresse angebendes Signal S453b wird zu der Eingangsadress-Halteeinheit 406 ausgegeben.
  • Es sei angenommen, dass "0x 00000400", welches einen TLB-Fehler anzeigt, als das Signal S453a in den Dekodierer 501 eingegeben wird. Der Dekodierer 501 dekodiert das Signal S453a zum Erhalten einer voreingestellten Unterbrechungs-Anforderungsnummer "2". Aus der Eingangsadress-Tabelle 502 wird die Eingangsadresse "XXXX" der Unterbrechungs-Anforderungsnummer 2 erhalten. Das die Eingangsadresse "XXXX" anzeigende Signal S453b wird zu der Eingangsadress-Halteeinheit 406 ausgegeben.
  • Wie bei der ersten Ausführungsform ist der Speicherzustand des Hauptspeichers 405, wie in Fig. 2 gezeigt. In dem bei der Adresse "XXXX" beginnenden Bereich 202 gespeicherte Befehle 3a, 3b, ... sind die Prozedur zum Ausführen der Verarbeitung für, den TLB-Fehler. Die Operation der Eingangsadress-Halteeinheit 406 nach Halten der "XXXX" anzeigenden Eingangsadresse ist identisch mit derjenigen der ersten Ausführungsform. Insbesondere werden der Befehl 3a und die folgenden Befehle ausgeführt, wodurch die Unterbrechungs-Verarbeitung ausgeführt wird.
  • Somit beinhaltet gemäß der zweiten Ausführungsform der Prozessor 400 der zweiten Ausführungsform die Befehlsausführungs-Steuerungseinheit 401, die Unterbrechungs-Ausführungs-Steuerungseinheit 403, die Eingangsadress- Halteeinheit 406 und den Auswähler 408, wodurch der Prozessor eine Hochgeschwindigkeits-Verarbeitung verwirklicht, während die Kompatibilität mit dem Mehrzweckprozessor wie in der ersten Ausführungsform beibehalten wird. Zusätzlich beinhaltet die Unterbrechungs-Ausführungs- Steuerungseinheit 403 die Eingangsadress-Tabellen-Halteeinheit 4032 mit der Eingangsadress-Tabelle, welche durch den Benutzer eingestellt werden kann. Als ein Ergebnis kann der Bereich der Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund beliebig eingestellt und geändert werden und dadurch kann das System flexibel konstruiert sein.
  • Ausführungsform 3
  • Ein Prozessor gemäß einer dritten Ausführungsform der vorliegenden Erfindung ist ausgebildet, um eine Eingangsadresse wie bei der ersten Ausführungsform zu halten und eine Basisadresse zum Erhalten der Eingangsadresse zu halten.
  • Fig. 6 ist ein Blockschaltbild, welches den Prozessor der dritten Ausführungsform zeigt. In Fig. 6 umfasst ein Prozessor 600 der dritten Ausführungsform eine Befehlsausführungs-Steuerungseinheit 601, eine Befehls-Halteeinheit 602, eine Unterbrechungs-Ausführungs-Steuerungseinheit 603, eine Eingangsadress-Halteeinheit 606, einen Vorab-Hol-Adresszähler 607, einen Auswähler 608 und eine Befehlsadress-Halteeinheit 609 und ist an eine periphere Funktionseinheit 604 angeschlossen, welche mit peripheren Geräten kommuniziert, und einen Hauptspeicher 605 zum vorübergehenden Speichern von Programmen oder Daten. Bei dem Prozessor der dritten Ausführungsform beinhaltet die Eingangsadress-Halteeinheit 606 eine Basisadress- Halteeinrichtung 6061.
  • Die Basisadress-Halteeinrichtung 6061 hält eine Basisadresse, welche von dem Benutzer eingestellt werden kann. Die Eingangsadress-Halteeinheit 606 verwendet ein von der Unterbrechungs-Ausführungs-Steuerungseinheit 603 ausgegebenes Signal und die von der Basisadress-Halteeinrichtung 6061 gehaltene Basisadresse zum Erzeugen der Eingangsadresse.
  • Mit anderen Worten beinhaltet die Eingangsadress-Halteeinheit 606, welche als eine Sonder-Adress-Halteeinrichtung wirkt, die Basisadress- Halteeinrichtung 6061, welche als Referenzadress-Informations- Halteeinrichtung wirkt, welche die zum Bestimmen der Speicherposition des Hauptspeichers verwendete Referenzadress-Information (Basisadresse) hält.
  • Die Befehlsausführungs-Steuerungseinheit 601, die Befehls-Halteeinheit 602, die Unterbrechungs-Ausführungs-Steuerungseinheit 603, die periphere Funktionseinheit 604, die Hauptspeichereinheit 605, der Vorab-Hol-Adresszähler 607, der Auswähler 608 und die Befehlsadress-Halteeinheit 609 sind identisch mit den Einheiten 101, 102, 103, 104, 105, 107, 108 und 109 der ersten Ausführungsform.
  • Nachfolgend wird eine Beschreibung der Wirkungsweise des so aufgebauten Prozessors der dritten Ausführungsform gegeben. Die von dem Prozessor ausgeführte Operation, wenn keine Unterbrechung auftritt, ist identisch mit der Operation bei "A. Keine Unterbrechung" der ersten Ausführungsform. Wenn andererseits die Unterbrechung auftritt, wird eine Operation ausgeführt wie folgt.
  • Wenn eine Unterbrechung mit dem Ursprung in den peripheren Geräten auftritt oder eine Unterbrechung mit ihrem Ursprung innerhalb des Prozessors auftritt, liefert die periphere Funktionseinheit 604 oder die Befehlsausführungs- Steuerungseinheit 601 ein Signal S652 oder S651, welches "Auftreten einer Unterbrechung " anzeigt, zu der Unterbrechungs-Ausführungs- Steuerungseinheit 603, welche ein "Unterbrechung" anzeigendes Signal S654 zu der Befehlsausführungs-Steuerungseinheit 601 und ein Adresssignal S653 zu der Eingangsadress-Halteeinheit 606 ausgibt.
  • Die Eingangsadress-Halteeinheit 606 erhält einen Wert, welcher die von der Basisadress-Halteeinrichtung 6061 gemäß einem von der Befehlsausführungs-Steuerungseinheit 601 gelieferten Steuerungssignal S663 gehaltene Basisadresse anzeigt. Die Eingangsadress-Halteeinheit 606 addiert den die erhaltene Adresse anzeigenden Wert zu einem durch das Adresssignal S653 angegebenen Wert und hält einen Additionsergebnis als die Eingangsadresse.
  • Unter der Annahme, dass das Adresssignal S653 die Adresse "XXXX" anzeigt und der die Basisadresse anzeigende Wert "0" ist, ist die durch Addition erhaltene Eingangsadresse "XXXX", welche von der Eingangsadress-Halteeinheit 606 gehalten wird. Die Operation der Eingangsadress-Halteeinheit 606 nach Halten der Eingangsadresse ist identisch mit derjenigen der ersten Ausführungsform. Insbesondere werden der Befehl 3a und die folgenden Befehle ausgeführt, wodurch die Unterbrechungs-Verarbeitung ausgeführt wird.
  • Es wird weiterhin angenommen, dass die den Befehl 3a und die folgenden Befehle umfassende Prozedur, gespeichert in dem in Fig. 2 gezeigten, bei der Adresse "XXXX" beginnenden Bereich 202, zu einem anderen Bereich des Hauptspeichers 105 verschoben wird. Wenn ein die Differenz zwischen einer Anfangsadresse eines anderen Bereichs und der Anfangsadresse "XXXX" des Bereichs 202 anzeigender Wert "B" ist, muss der Benutzer nur den von der Basisadress-Halteeinrichtung 6061 gehaltenen Wert von "0" zu "B" ändern. Dadurch kann die Unterbrechungs-Verarbeitung ebenso schnell ausgeführt werden.
  • Somit beinhaltet der Prozessor gemäß der dritten Ausführungsform die Befehlsausführungs-Steuerungseinheit 601, die Unterbrechungs-Ausführungs- Steuerungseinheit 603, die Eingangsadress-Halteeinheit 606 und den Auswähler 608, wodurch der Prozessor eine Hochgeschwindigkeits-Verarbeitung verwirklicht, während die Kompatibilität mit dem Mehrzweckprozessor wie bei der ersten Ausführungsform erhalten bleibt. Zusätzlich beinhaltet die Eingangsadress-Halteeinheit 606 die Basisadress-Halteeinheit 6061 zum Erzeugen der Eingangsadresse durch die Verwendung der Basisadresse, welche durch den Benutzer eingestellt werden kann. Wenn der Speicherbereich der Prozedur zum Ausführen der Verarbeitung für den Unterbrechungs-Grund geändert werden soll, kann dies daher einfach gehandhabt werden. Das heißt, das System kann flexibel erweitert oder geändert werden.

Claims (10)

1. Prozessor (100, 400) zum Steuern der Ausführung von in einem Hauptspeicher (105, 405) gespeicherten Befehlen und zur Unterbrechungs-Verarbeitung, mit:
einer Unterbrechungs-Verarbeitungs-Steuerungseinrichtung (103, 403), welche eine Unterbrechungs-Anforderung akzeptiert, eine akzeptierte Unterbrechung analysiert, um einen Unterbrechungs-Grund zu erhalten, und Information erzeugt, welche eine Speicherposition einer Prozedur zum Verarbeiten des Unterbrechungs-Grundes in dem Hauptspeicher angibt;
einer Sonder-Adress-Halteeinrichtung (106, 406), welche eine erste, aus der durch die Unterbrechungs-Verarbeitungs-Steuerungseinrichtung erzeugten Information erhaltene Adressinformation hält; und
einer Befehlsausführungs-Steuerungseinrichtung (101, 401), welche bestimmt, ob die von der Sonder-Adress-Halteeinrichtung gehaltene erste Adressinformation als Information zu verwenden ist, welche eine Speicherposition eines auszuführenden Befehls angibt oder nicht, und die Ausführung des Befehls gemäß einem Bestimmungsergebnis steuert.
2. Prozessor nach Anspruch 1, bei welchem
die Unterbrechungs-Verarbeitungs-Steuerungseinrichtung die Unterbrechungs- Anforderung anzeigende Informationen zu der Befehlsausführungs- Steuerungseinrichtung ausgibt, und
die Befehlsausführungs-Steuerungseinrichtung Informationen erzeugt, welche eine Speicherposition einer vorbestimmten Prozedur in dem Hauptspeicher angeben und die Ausführung des Befehls steuert, wenn sie die die Unterbrechungs- Anforderung anzeigende Information empfängt, so dass die erzeugte Information als die Speicherposition des auszuführenden Befehls anzeigende Information verwendet wird.
3. Prozessor nach Anspruch 1, mit:
einer Einrichtung zum Halten einer Speicherpositions-Information eines nachfolgenden Befehls (109, 409), welche eine Speicherposition eines nachfolgend auszuführenden Befehls in dem Hauptspeicher anzeigende Information erzeugt und die erzeugte Information als zweite Adressinformation hält, wobei
die Befehlsausführungs-Steuerungseinrichtung die Ausführung des Befehls steuert, so dass entweder die erste Adressinformation oder die zweite Adressinformation als die Information verwendet wird, welche die Speicherposition des auszuführenden Befehls angibt.
4. Prozessor nach Anspruch 2, mit:
einer Einrichtung zum Halten einer Speicherpositions-Information eines nachfolgenden Befehls (109, 409), welche eine Speicherposition eines nachfolgend auszuführenden Befehls in dem Hauptspeicher anzeigende Information erzeugt und die erzeugte Information als zweite Adressinformation hält, wobei
die Befehlsausführungs-Steuerungseinrichtung die Ausführung des Befehls steuert, so dass entweder die erste Adressinformation oder die zweite Adressinformation als die Information verwendet wird, welche die Speicherposition des auszuführenden Befehls angibt.
5. Prozessor nach Anspruch 1, bei welchem die Unterbrechungs-Verarbeitungs-Steuerungseinrichtung eine Einrichtung zum Halten von Speicherpositions-Informationen von Prozeduren (40, 32) beinhaltet, welche Entsprechungen zwischen den Unterbrechungs-Gründen anzeigende Informationen hält, erhalten durch Analyse, und die Speicherposition der Prozeduren zum Verarbeiten der entsprechenden Unterbrechungs-Gründe in dem Hauptspeicher.
6. Prozessor nach Anspruch 5, bei welchem die durch die Einrichtung zum Halten von Speicherpositions-Informationen von Prozeduren gehaltene Information von einem Benutzer eingestellt werden kann.
7. Prozessor nach Anspruch 1, bei welchem die Sonder-Adress-Halteeinrichtung eine Referenzadress-Informations-Halteeinrichtung zum Halten einer Referenzadress-Information enthält, welche die Speicherposition in dem Hauptspeicher angibt.
8. Prozessor nach Anspruch 7, bei welchem die Sonder-Adress-Halteeinrichtung die durch die Unterbrechungs- Verarbeitungs-Steuerungseinrichtung erzeugte Information zu der Referenzadress-Information addiert, um die erste Adressinformation zu erzeugen.
9. Prozessor nach Anspruch 7, bei welchem die von der Referenzadress-Informations-Halteeinrichtung gehaltene Information von einem Benutzer eingestellt werden kann.
10. Prozessor nach Anspruch 8, bei welchem die von der Referenzadress-Informations-Halteeinrichtung gehaltene Information von einem Benutzer eingestellt werden kann.
DE69902070T 1998-04-24 1999-03-31 Unterbrechungsverarbeitung Expired - Lifetime DE69902070T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11552298 1998-04-24

Publications (2)

Publication Number Publication Date
DE69902070D1 DE69902070D1 (de) 2002-08-14
DE69902070T2 true DE69902070T2 (de) 2003-02-27

Family

ID=14664619

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69902070T Expired - Lifetime DE69902070T2 (de) 1998-04-24 1999-03-31 Unterbrechungsverarbeitung

Country Status (3)

Country Link
US (1) US6292866B1 (de)
EP (1) EP0952527B1 (de)
DE (1) DE69902070T2 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020184566A1 (en) 2001-06-01 2002-12-05 Michael Catherwood Register pointer trap
US7024663B2 (en) * 2002-07-10 2006-04-04 Micron Technology, Inc. Method and system for generating object code to facilitate predictive memory retrieval
US6954836B2 (en) 2002-07-11 2005-10-11 Micron Technology, Inc. System and method for processor with predictive memory retrieval assist
US7415557B2 (en) 2006-06-06 2008-08-19 Honeywell International Inc. Methods and system for providing low latency and scalable interrupt collection
ES2642043T3 (es) 2006-09-19 2017-11-15 Kci Licensing, Inc. Sistema de tratamiento con presión reducida que tiene posibilidades de despeje de obstrucción y protección de presión de doble zona
US8366690B2 (en) 2006-09-19 2013-02-05 Kci Licensing, Inc. System and method for determining a fill status of a canister of fluid in a reduced pressure treatment system
US7876546B2 (en) 2006-09-19 2011-01-25 Kci Licensing Inc. Component module for a reduced pressure treatment system
US8061360B2 (en) 2006-09-19 2011-11-22 Kci Licensing, Inc. System and method for locating fluid leaks at a drape of a reduced pressure delivery system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4100865A (en) * 1977-03-21 1978-07-18 The Singer Company Programmable sewing machine operable in a plurality of modes
JPS61157948A (ja) * 1984-12-28 1986-07-17 Matsushita Electric Ind Co Ltd 割込み要因解析装置
JPH01229332A (ja) 1988-03-09 1989-09-13 Nec Ic Microcomput Syst Ltd 情報処理装置
DE68923864T2 (de) * 1989-04-19 1996-05-02 Ibm Anordnung zur Speicher- und Peripherie-Bausteinauswahl.
JP3003968B2 (ja) 1991-05-01 2000-01-31 インターナショナル・ビジネス・マシーンズ・コーポレイション 割込み処理プログラム選択装置及び処理方法
JPH0553830A (ja) * 1991-08-27 1993-03-05 Nec Corp 割込み制御回路
JPH05241853A (ja) * 1992-02-28 1993-09-21 Fuji Electric Co Ltd プログラマブルコントローラ

Also Published As

Publication number Publication date
US6292866B1 (en) 2001-09-18
EP0952527B1 (de) 2002-07-10
DE69902070D1 (de) 2002-08-14
EP0952527A2 (de) 1999-10-27
EP0952527A3 (de) 1999-11-10

Similar Documents

Publication Publication Date Title
DE69032812T2 (de) Vorrichtung und Verfahren zur parallelen Verarbeitung
DE68928812T2 (de) Vorrichtung zur Auflösung von einer variablen Anzahl von möglichen Speicherzugriffskonflikten in einem Pipeline-Rechnersystem und Verfahren dazu
DE3685863T2 (de) Rechnersystem zur steuerung virtueller maschinen.
DE69826418T2 (de) Anordnung zum Abtasten mehrerer Instruktionen in einer Prozessorpipeline
DE69819849T2 (de) Anordnung zum willkürlichen Abtasten von Instruktionen in einer Prozessorpipeline
DE3785897T2 (de) Steuervorrichtung zum vorabruf von befehlen.
DE69031139T2 (de) Verfahren und Vorrichtung zum Ordnen und in Warteschlangesetzen mehrerer Speicherzugriffsanforderungen
DE69704166T2 (de) Mikroprozessor zur befehlsübersetzung von einem ersten befehlssatz zu einem zweiten befehlssatz, speicherung und ausführung der übersetzten befehle
DE68919069T2 (de) Verfahren und Gerät zur Fehlererkennung und -korrektur in einem nach dem überlappten Steuerungsverfahren arbeitenden Rechnersystem.
DE68927492T2 (de) Verfahren und Vorrichtung zur gleichzeitigen Verteilung von Befehlen an mehrere funktionelle Einheiten
DE68928677T2 (de) Verfahren und digitaler Computer zur Vorverarbeitung mehrerer Befehle
DE69225750T2 (de) Datenverarbeitungssystem mit internem Befehlspufferspeicher
DE69032334T2 (de) Virtuelles Computersystem mit Ein-/Ausgabeunterbrechungssteuerung
DE69031991T2 (de) Verfahren und Gerät zur Beschleunigung von Verzweigungsbefehlen
DE68918754T2 (de) Datenverarbeitungsgerät mit selektivem Befehlsvorausholen.
DE69331448T2 (de) Dataprozessor mit einem Cachespeicher
DE69932066T2 (de) Mechanismus zur "store-to-load forwarding"
DE102004013676B4 (de) Schaltung in einem Prozessor zur Steuerung einer iterativen Ausführung einer Gruppe von Programmanweisungen
DE69624158T2 (de) Superskalarer Prozessor mit mehreren Registerblöcken und Erzeugung von spekulativen Antwortadressen
DE69806564T2 (de) Verfahren zur Schätzung von Statistiken der Eigenschaften von Speichersysteminteraktionen zwischen Kontexten in einem Rechnersystem
DE69031183T2 (de) Verfahren und Anordnung zur Kontrolle der Umwandlung virtueller Adressen in physikalische Adressen in einem Computersystem
DE3801361A1 (de) Verfahren und einrichtung zum detektieren und fuer die spezialbehandlung von memory-mapped eingabe/ausgabereferenzen in einem pipelinemikroprozessor
DE69130757T2 (de) Ausführungsvorrichtung für bedingte Verzweigungsbefehle
DE19855806A1 (de) Vorrichtung und Verfahren zum Durchführen von Unterprogrammaufruf- und Rücksprungoperationen
DE3933849A1 (de) Prozessorgesteuerte schnittstelle

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: PANASONIC CORP., KADOMA, OSAKA, JP