DE3856049T2 - Gerät und Verfahren zur Signalisierung eines dateninduzierten Zustandes - Google Patents
Gerät und Verfahren zur Signalisierung eines dateninduzierten ZustandesInfo
- Publication number
- DE3856049T2 DE3856049T2 DE3856049T DE3856049T DE3856049T2 DE 3856049 T2 DE3856049 T2 DE 3856049T2 DE 3856049 T DE3856049 T DE 3856049T DE 3856049 T DE3856049 T DE 3856049T DE 3856049 T2 DE3856049 T2 DE 3856049T2
- Authority
- DE
- Germany
- Prior art keywords
- instruction
- error
- processor
- status flag
- storing
- 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
Links
- 238000000034 method Methods 0.000 title claims description 26
- 230000011664 signaling Effects 0.000 title 1
- 238000012545 processing Methods 0.000 claims description 57
- 238000012360 testing method Methods 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 8
- 230000001143 conditioned effect Effects 0.000 claims description 5
- 230000003750 conditioning effect Effects 0.000 claims 2
- 230000000977 initiatory effect Effects 0.000 claims 1
- 239000013598 vector Substances 0.000 description 15
- 238000013500 data storage Methods 0.000 description 5
- 238000007667 floating Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- SFRVOKMRHPQYGE-UHFFFAOYSA-N 1-(9h-fluoren-9-yl)ethyl carbonochloridate Chemical compound C1=CC=C2C(C(OC(Cl)=O)C)C3=CC=CC=C3C2=C1 SFRVOKMRHPQYGE-UHFFFAOYSA-N 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012956 testing procedure Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30094—Condition code generation, e.g. Carry, Zero flag
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0721—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3005—Arrangements for executing specific machine instructions to perform operations for flow control
- G06F9/30058—Conditional branch instructions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Description
- Die Erfindung bezieht sich im allgemeinen auf Datenverarbeitungssysteme und im besonderen auf ein Verfahren in einem Datenverarbeitungssystem zum effizienten Aufrufen eines steuerprogramms aufgrund eines vorgegebenen Signals an einer besonderen Registerstelle.
- Da Datenverarbeitungssysteme größer und komplexer geworden sind, ist es immer schwerer geworden, Fehler im Programm zu identifizieren. Der ungültige Speicherverweis bleibt einer der am meisten verbreiteten Programmierfehler durch Lesen oder Schreiben einer ungültigen Adresse. Für ein Datenfeld A(i,j) kann z. B. die Anforderung 0 < i,j < 99 gelten. Trotzdem kann es vorkommen, daß ein Index (eine Adresse) außerhalb dieses Bereiches benutzt wird. Auch tritt der ungültige Speicherverweis meistens dann auf, wenn die Adresse, auf die verwiesen wird, Teil eines Datenfeldes ist. Deshalb ist es während der Programmausführung wichtig, daß Datenfeldadressen getestet werden, um sicherzugehen, daß sie innerhalb der Grenzen des Datenfeldes liegen. Bisher wurde das Programm mit einem zusätzlichen Code ausgestattet, um die Datenfeldadressen zu testen und, wenn ein Fehler angetroffen wurde, ein geeignetes, darauf ansprechendes Unterprogramm aufzurufen. Der zusätzliche Code zum Testen der Datenfeldadressen führte zu Programmen, die im Umfang stark angewachsen waren und entsprechend langsamer abliefen.
- Das Problem des Testens der Datenfeldadressen ist Teil eines allgemeineren Problems des Testens eines Booleschen Werts und des Erzeugens einer Ablaufunterbrechung, wenn das Ergebnis FALSCH ist. Andere Anwendungen enthalten zusätzlich zum Testen der Datenfeldadressen eine Programmbestimmung, das Testen der Prozedurrückkehrzustände bei korrektem und bei fehlerhaftem Verlauf und weitere Boolesche Tests, die ablaufende Prozeduren bei inakzeptabler Programmgröße (Umfang des Programmcodes) und/oder ineffizienter Programmausführung zur Folge haben.
- Es wurde ein Bedarf an einem Verfahren empfunden, das die Programmausführung beschleunigen und den Programmcode (Programmgröße) verringern kann, so daß ein Programm zum Testen der Datenfeldadressen Boolesche Werte testen und eine Ausnahmeregel anwenden kann, wenn der Boolesche Wert FALSCH ist.
- Im "MC68020 32-bit microprocessor user's manual", 2. Ausgabe, Motorola Inc., ist eine "durch Zustandscode bedingter Programmsprung" genannte Operation offenbart, bei der ein Prozeß eine abweichende Verarbeitung startet, wenn eine bestimmter Zustand WAHR ist. Wenn der bestimmte Zustand WAHR ist, wird eine Vektornummer als Bezugnahme auf den Programmsprung-Ausnahmeregelvektor generiert und ein Stapel-Programmzähler zeigt auf den nächsten Befehl. Wenn der bestimmte Zustand FALSCH ist, wird keine Operation durchgeführt und die Ausführung wird mit dem nächsten sequentiellen Befehl fortgesetzt. Die Ausnahmeregelvektoren sind Speicherzeiger, die durch den Prozessor benutzt werden, um die Adressen der Routinen abzurufen, die verschiedene Ausnahmeregeln verarbeiten, was einen beträchtlichen Organisationsaufwand für die Verarbeitung erfordert.
- In der EP-0130381 ist ein Verfahren offenbart, bei dem bitbedingte Befehle innerhalb eines Maschinenzyklus des Hostsystems vollständig ausgeführt werden. Die Befehle enthalten ein Feld zur Anzeige eines Registers, ein Bit in diesem Register, das geprüft wird, und Daten zum Festlegen der Adresse des nächsten Befehls, der auszuführen ist, wenn der bedingte Test erfolgreich ist.
- Es ist eine Aufgabe der vorliegenden Erfindung, eine verbesserte Datenverarbeitungseinheit zu schaffen.
- Es ist ein Merkmal der vorliegenden Erfindung, ein verbessertes Verfahren zu schaffen, das aufgrund eines vorgegebenen Signals an einer bestimmten Registerstelle ein Steuerprogramm effizient aufruft.
- Es ist ein weiteres Merkmal der vorliegenden Erfindung, einen durch das niederwertige Bit bedingten Fehlerbefehl bereitzustellen, wobei das Vorhandensein eines Signals in dem Registerfeld für das niederwertige Bit die Erfassung eines falschen Booleschen Werts anzeigt.
- Es ist ein weiteres Merkmal der vorliegenden Erfindung, einen Booleschen Zustand zu prüfen, indem das Vorhandensein des besonderen Bits an einer Registerstelle festgestellt wird.
- Die obenerwähnten und weitere Aufgaben werden gemäß der vorliegenden Erfindung dadurch gelöst, daß ein Datenverarbeitungssystem mit einem durch das gelöschte, niederwertige Bit bedingten Fehlerbefehl (FLEC-Befehl) ausgestattet wird. Vor dem Ausführen dieses Befehls wird eine Vergleichsoperation durchgeführt, die einen Booleschen Wert erzeugt. Die Vergleichsoperation setzt oder löscht das niederwertige Bit in einem bestimmten Skalar-Register in Abhängigkeit vom Wert der Vergleichsoperation. Durch den FLBC-Befehl wird das ausgewählte Register geprüft, und wenn ein darin gespeicherter Boolescher Wert als FALSCH bestimmt wird, wird einem Fehlersteuerprogramm das Vorhandensein eines Fehlerzustands signalisiert. Dieser Befehl macht eine Verzweigung über eine Codesequenz, die zu einem Aufruf eines Fehlerunterprogramms zur Spezifikation des aus dem Booleschen Wert FALSCH resultierenden Zustands führt, überflüssig. In der zweckmäßigen Ausführungsform ist der FLBC-Befehl so gewählt, daß ein Feld des Befehls benutzt werden kann, um Informationen für das Fehlersteuerprogramm weiterzuleiten. Dieser Befehl führt zu einer kürzeren Ausführungszeit (keine Verzweigung über einen Aufruf von Unterprogrammen) und es wird weniger Programmcode für die Operation benötigt. Die Auswirkung dieses einzelnen Befehls auf die Programmausführungszeit ist minimal, wohingegen z. B. ein breitere Anwendung der Datenfeldadressenprüfung erzielt wird. Die Vorrichtung ist so beschaffen, daß sie für die Datenverarbeitungsausgabeeinheit eine Kopie des Register-Bits bereitstellt, so daß die Stelle des Register-Bits ohne Hilfe einer Ausführungseinheit geprüft werden kann.
- Diese und weitere Merkmale der vorliegenden Erfindung können durch die folgende Beschreibung und anhand der Zeichnung verstanden werden.
- Fig. 1A und Fig. 1B sind Beispiele für die Implementierung von Datenverarbeitungssystemen, die für eine Anwendung der vorliegenden Erfindung geeignet sind.
- Fig. 2 ist ein Beispiel einer Zentraleinheit, die für eine Anwendung der vorliegenden Erfindung geeignet ist.
- Fig. 3 ist ein Beispiel für das Verfahren zum Testen von Datenfeldverweisen nach dem Stand der Technik.
- Fig. 4 zeigt das Testen von Datenfeldverweisen gemäß der vorliegenden Erfindung.
- Fig. 5A zeigt, wie die Informationen, die eine Indentifikation des Zustands ermöglichen, der die Ablaufunterbrechung verursacht, im Stapelspeicher des Datenverarbeitungssystems als Anwort auf eine Ablaufunterbrechung abgelegt sind.
- Fig. 5B ist ein veranschaulichendes Format für den FLBC- Befehl.
- Fig. 6 zeigt die Vorrichtung, die zur Indentifikation des Zustandssignals benutzt wird.
- In Fig. 1A und Fig. 1B werden zwei exemplarische Konfigurationen von Datenverarbeitungssystemen gezeigt, die für eine Anwendung der vorliegenden Erfindung geeignet sind. In Fig. 1A ist die Zentraleinheit (#1) 11 mit dem Systembus 19 verbunden. Es können auch weitere Zentraleinheiten (z. B. #N) 12 mit dem System gekoppelt sein. Die Zentraleinheit(en) 11 (bis 12) verarbeiten Daten entsprechend der Struktur der Zentraleinheit(en) in Verbindung mit Zentraleinheit-Steuerprogrammen, wobei die Steuerprogramme aus Befehlen bestehen, die in der Hauptspeichereinheit 15 resident sind. Nichtresidente Daten und Befehle werden üblicherweise in Massenspeichereinheiten abgelegt und über den Systembus 19 von und zu der Hauptspeichereinheit 15 übertragen. Die Eingabe/Ausgabe-Einheit(en) (#1) 16 (bis (#M) 17) koppelt (koppeln) Einrichtungen wie z. B. Massenspeichereinheiten, Benutzerendgeräteinrichtungen und Kommunikationseinrichtungen mittels des Systembusses 19 an das Datenverarbeitungssystem. Die Massenspeichereinheiten speichern Daten und Befehle, die von der (oder den) Datenverarbeitungseinheit(en) benötigt werden. Sätze von Daten und/oder Befehlen, die üblicherweise als Seiten von Daten und/oder Befehlen bezeichnet und zum Betrieb der Zentraleinheiten 11 benötigt werden, werden von den Massenspeichereinheiten, die relativ hohe Zugriffszeiten besitzen, zur Hauptspeichereinheit übertragen, zu der die Zentraleinheit einen relativ schnellen Zugriff hat. Das busorientierte System besitzt einen Vorteil dadurch, daß das System relativ leicht zu rekonfigurieren ist, es besitzt jedoch den Nachteil, daß jede Systemkomponente eine Steuervorrichtung benötigt, um eine Schnittstelle mit dem Systembus zu schaffen. In Fig. iB ist als nächstes ein Datenverarbeitungssystem gezeigt, bei dem die Zentraleinheit(en) 11 (bis 12) und die Eingabe/Ausgabe-Einheit(en) 16 (bis 17) mit der Hauptspeichereinheit 15 über eine Speichersteuereinheit 14 verbunden ist (sind), wobei die Speichersteuereinheit 14 sowohl den Systembus 19 als auch die Steuerfunktionen, die durch die einzelnen Datenverarbeitungssystemkomponenten der in Fig. 1A gezeigten busorientierten Datenverarbeitungs konfiguration ausgeübt werden, ersetzt. Die Speichersteuereinheit 14 sorgt für eine zentrale Steuerung und Anzeige des Daten- und Befehlstransfers, was effizienter als bei der busorientierten Konfiguration nach Fig. 1 sein kann, jedoch einen Verlust an Flexibilität bedeutet.
- In Fig. 2 ist ein Blockschaltplan einer exemplarischen Zentraleinheit gezeigt, die für die Anwendung der vorliegenden Erfindung geeignet ist. Die Ausgabeeinheit 22 ist verantwortlich für das Bereitstellen der (decodierten) Befehle für mehrere spezialisierte Ausführungseinheiten, die aus einer Skalaroperation-Adreßerzeugungseinheit 24, aus wenigstens einer Ausführungseinheit (#1) 25 (bis Ausführungseinheit (#Q) 26) und einer Vektoroperation- Einheit 28 besteht, wobei die Vektoroperation-Einheit 28 eine Vektoroperation-Verarbeitungseinheit 28A, eine Vektoroperation-Adreßerzeugungseinheit 28B und Vektoroperation-Register 28C enthält. Die durch die Ausführungseinheiten verarbeiteten Daten werden üblicherweise aus den Skalar-Registern 23 oder den Vektor-Registern 28C geholt. Die resultierenden Daten der Ausführungseinheiten werden in den Skalar-Registern 23, den Vektor-Registern 28C oder der Cache-Datenspeichereinheit 27 gespeichert. Die Cache-Datenspeichereinheit 27 kann als eine Cache-Datenspeichereinheit gesehen werden, die als Schnittstelle zwischen der Hauptspeichereinheit 15 und der Zentraleinheit 11 dient. (In Fig. 2 ist gezeigt, daß die Cache-Datenspeichereinheit 27 direkt mit der Hauptspeichereinheit 15 gekoppelt ist. Wie in Fig. 1A und Fig. 1B dargestellt ist, kann die verwirklichte Kopplung dazwischenliegende Datenverarbeitungsvorrichtungen enthalten.) Die Ausgabeeinheit 22 enthält eine Vorrichtung zum Bestimmen, welche Ausführungseinheit die ausgewählten Daten verarbeiten soll und wann die ausgewählte Ausführungseinheit für das Verarbeiten der Daten verfügbar ist. Das letztere Merkmal enthält die Nachprüfung, daß die Zielspeicherstelle zum Speichern der verarbeiteten Daten verfügbar ist. Die Cache-Befehlsspeichereinheit 21 speichert die Befehle, die decodiert und durch die Ausgabeeinheit an die geeignete Ausführungseinheit geschickt werden. Die Ausgabeeinheit 22 besitzt eine Vorrichtung, die die Verarbeitungsoperationen der Ausführungseinheiten zu maximieren sucht. So schließt die Ausgabeeinheit 22 eine Vorabbefehls-Vorrichtung und Algorithmen, die dafür sorgen, daß der geeignete Befehl (einschließlich irgendeines Verzweigungsbefehls) für die Ausgabeeinheit 22, wenn nötig, verfügbar ist. Die unterschiedlichen Ausführungseinheiten sind spezialisierte Verarbeitungseinrichtungen zur Behandlung bestimmter Klassen von Verarbeitungsoperationen, was durch die Skalaroperation-Adreßerzeugungseinheit 24 und die Vektoroperation-Einheit 28 angedeutet wird. Zum Beispiel kann eine Ausführungseinheit so beschaffen sein, daß sie Gleitkomma-Operationen oder arithmetische Operationen etc. ausführt. Der Ausgabeeinheit 22 sind Skalar-Register 23 zugeordnet, die die erforderlichen Daten zur Programmausführung oder zur Aufbereitung eines Datensatzes der Datenverarbeitungsoperation speichern können. Zum Beispiel ist ein Register das Befehlszählregister, das die (virtuelle) Adresse des nächsten zu verarbeitenden Befehls in der Befehlssequenz des ablaufenden Programms speichert. Die Skalaroperation- Adreßerzeugungseinheit 24 wird eingesetzt, um die virtuellen Adressen in physikalische Stellen der Hauptspeichereinheit 15 zu konvertieren. Die Ausgabeeinheit 22 ist auch verantwortlich für das Wiederanfordern der Daten von den Ausführungseinheiten in der korrekten Reihenfolge, wenn die Ausführungseinheiten die Befehle mit unterschiedlicher Geschwindigkeit verarbeiten.
- In Fig. 3 ist als nächstes die Prozedur dargestellt, mit der gemäß dem Stand der Technik ein Boolescher Zustand geprüft und darauf reagiert wird, wenn ein ungültiger Datenfeldindex (eine ungültige Datenfeldadresse) vorliegt. In Schritt 301 wird ein Datenfeldindex berechnet. In Schritt 302 wird der berechnete Datenfeldindex mit den Grenzen für alle Datenfeldindizes verglichen, und wenn der Index nicht innerhalb der erlaubten Grenzen liegt, wird die Stelle des niederwertigen Bits eines besonderen Registers gelöscht (d. h. dort wird ein logisches "0"-Signal gespeichert). In Schritt 303 wird die Stelle des niederwertigen Bits eines besonderen Registers geprüft, um zu bestimmen, ob dort ein logisches "1"-Signal gespeichert ist. Wenn dort kein logisches "1"-Signal gespeichert ist (d. h. die Stelle des niederwertigen Bits gelöscht ist), wird in Schritt 304 ein Unterprogramm aufgerufen, um auf den Zustand zu reagieren. Nachdem auf den Fehlerzustand reagiert wurde oder wenn in der Stelle des niederwertigen Bits ein logisches "1"-Signal gespeichert ist, wird der Programmablauffortgesetzt.
- In Fig. 4 ist (wie in Fig. 3) die Prozedur dargestellt, mit der gemäß der vorliegenden Erfindung ein Boolescher Zustand geprüft und darauf reagiert wird, wenn eine Datenfeldindex-Prüfroutine vorliegt. In Schritt 401 wird der Datenfeldindex berechnet. In Schritt 402 wird ein Vergleich durchgeführt, um zu bestimmen, ob der Index innerhalb der Grenzen für Datenfeldindizes liegt, und wenn der Index nicht innerhalb der erlaubten Grenzen liegt, wird eine logische '0' in der Stelle des niederwertigen Bits eines besonderen Registers gespeichert. In Schritt 403 wird der durch das gelöschte, niederwertige Bit bedingte Fehlerbefehl (FLBC-Befehl) ausgeführt. Wenn die Stelle des niederwertigen Bits des besonderen Registers gelöscht ist (d. h. wenn dort ein logisches "0"-Signal gespeichert ist), wird ein Fehler signalisiert und in Schritt 404 ein darauf ansprechendes Unterprogramm ausgeführt. Wenn die Stelle des niederwertigen Bits des besonderen Registers eine in Schritt 403 oder nach Beendigung des in Schritt 404 ansprechenden Unterprogramms dort gespeicherte logische '1' aufweist, wird in Schritt 405 der Programmablauffortgesetzt.
- Wie als nächstes in Fig. 5A gezeigt ist, speichert, wenn der Fehlerzustand signalisiert wird, die (z. B. durch eine Vorrichtung oder einen speziellen Betriebsmodus der zweckmäßigen Ausführungsform implementierte) auf den Fehlerzustand reagierende Einrichtung des Datenverarbeitungssystems Informationen im Stapelspeicher der Datenverarbeitungseinheit, die es einer Steuerprogrammroutine ermöglichen, die Ursache des Datenfeldverweisfehlers zu lokalisieren. In der zweckmäßigen Ausführungsform wird der fehischlagende Befehl 501 in einem Feld (um die codierten Informationen bezüglich des Fehlers, die bei der zweckmäßigen Ausführungsform im Befehl selbst enthalten sind, zu bewahren), der Prozessorstatus im Feld 502 und die virtuelle Adresse des durch das gelöschte, niederwertige Bit bedingten Fehlerbefehls (FLBC-Befehls) im Feld 503 gespeichert. Das Prozessorstatusfeld enthält Statusinformationen wie z. B. die Interrupt-Ebene, das Vektorbefehl-Freigabesignal, den Vektor-Wiederanlaufrahmen, den momentanen Ausführungsmodus des Betriebssignals und ein Anzeigefeld des virtuellen Rechners.
- In Fig. 5B ist ein exemplarisches Format eines durch das gelöschte, niederwertige Bit bedingten Fehlerbefehls (FLBC-Befehls) gezeigt. Im Feld 510 kennzeichnet das Operationscode-Feld (für die Ausgabeeinheit 22) den auszuführenden Befehl (z. B. FLBC). Als Antwort aktiviert die Ausgabeeinheit 22 die Vorrichtung zur Ausführung des Befehls. Das Feld 511 spezifiziert für die Ausgabeeinheit 22 das Register, dessen Boolescher Zustand (z. B. FLBC) untersucht werden soll. Das Feld 512 liefert Informationen, z. B. eine Adresse, die es dem Datenverarbeitungssystem ermöglichen, auf den durch den Befehl signalisierten, spezifischen Fehlerzustand zu antworten.
- In Fig. 6 ist die zweckmäßige Ausführungsform einer Vorrichtung zur Erfassung des Zustandssignals dargestellt. Jedem Skalar-Register im Registerblock 230 der Skalar-Registereinheit 23 ist ein drei Bit breites Summenregister in dem Registerblock 229 der Ausgabeeinheit 22 zugeordnet. Eine Bit-Stelle der drei Bits zeigt an, daß alle zugeordneten Register im Registerblock 230 mit einer Null belegt sind. Die zweite Bit-Stelle gibt das Vorzeichen der Daten in den zugeordneten Registern an. Und die dritte Bit-Stelle enthält den gleichen Bit- Wert, der in der niedrigstwertigen Registerstelle im zugeordneten Register des Registerblocks 230 gespeichert ist. Eine Signalerfassungseinheit 228 ist so beschaffen, daß irgendeine der Bit-Stellen des zugeordneten Summenregisters abgefragt werden kann. Als Antwort auf einen Befehl, z. B. FLBC, kann somit das Signal in dem identifizierten Register identifiziert und der Fehlerzustand bei Bedarf signalisiert werden.
- Die Zentraleinheit mit Pipeline-Ausführungseinheiten nach Fig. 2 unterliegt, in der zweckmäßigen Ausführungsform implementiert, einigen Einschränkungen, jedoch können auch anders entworfene Implementierungen die vorliegende Erfindung einsetzen. Die Zentraleinheit enthält mehrere Ausführungseinheiten, von denen jede für die Ausführung einer Klasse von Befehlen angepaßt ist. Beispielsweise steuert eine Ausführungseinheit, die Skalar-Adreßerzeugungseinheit 24, die Übertragung der Gruppe der logischen Signale zwischen der Zentraleinheit und der Hauptspeichereinheit, d. h. sie führt die skalaren Lade/Speicher-Befehle aus. Eine Ausführungseinheit ist angepaßt, um Daten-Schiebeoperationen auszuführen, eine, um Gleitkomma-Addier/Subtrahier-Operationen, eine, um Gleitkomma- Muliplizier-Operationen und eine, um Gleitkomma-Dividierperationen auszuführen. Die spezialisierten Ausführungseinheiten können, müssen aber nicht notwendigerweise in Pipeline-Konfiguration implementiert sein. Die weiteren Merkmale der Zentraleinheit sind folgende. Der Befehl in der momentan abzuarbeitenden Befehlssequenz wird von der Cache-Befehlsspeichereinheit 21 an die Ausgabeeinheit 22 übertragen. In der Ausgabeeinheit wird der Befehl in seine Bestandteile zerlegt, und daraus werden die datenabhängigen Steuersignale und Adreßsignale erzeugt. Bevor jedoch ein Befehl ausgeführt werden (z. B. abgeschickt werden) kann, müssen einigen Randbedingungen erfüllt werden. Alle Quell- und Zielregister des Befehls müssen verfügbar sein, d. h. es darf keine Schreib- Operation für ein benötigtes Register ausstehen. Der Datenübertragungsweg des Registers für das Schreiben muß für den künftigen Zyklus, in dem dieser Befehl die verarbeiteten Größen speichern soll, verfügbar sein. Die Ausführungseinheit, die für die Verarbeitung des Befehls benötigt wird, muß für die Dauer der Ausführung verfügbar sein, um die Operation durchzuführen zu können. Hinsichtlich der Vektoroperation-Einheit ist eine Ausführungseinheit für die Dauer der Vektoroperation reserviert. Wenn ein Lade/Speicher-Befehl für den Speicher einen Cache-Speichereinheit-Nichttreffer erkennt, bewirkt der Belegt-Merker der Lade/Speicher-Einheit, daß die nachfolgenden Lade/Speicher-Befehle zurückgehalten werden, bis die fehlende Cache-Speicher-Nichttrefferantwort abgeschlossen ist. Wird ein Befehl ausgegeben, so werden das Zielregister und der Schreibzyklus für den Datenübertragungsweg für das Ergebnis reserviert. Während des Aufbaus der Operanden werden alle befehlsunabhängigen Registeradressen erzeugt, die Operanden eingelesen und gespeichert und die datenunabhängigen Steuersignale erzeugt. Die Befehlsoperanden und die Steuersignale werden zur Ausführung an die zugeordneten Ausführungseinheiten weitergeleitet. Das durch die Ausführungseinheit erzeugte Ergebnis wird nach Bedarf in den Registerdateien oder in der Cache-Datenspeichereinheit 27 abgelegt. Wenn ein Befehl abgeschickt wird, kann das Verarbeitungsergebnis für einige Maschinenzyklen nicht verfügbar sein. Inzwischen kann im nächsten Maschinenzyklus der nächste Befehl decodiert und ausgegeben werden, sofern die erforderlichen Ausgabebedingungen erfüllt sind. Somit werden die Befehle in der normalen Befehlssequenz decodiert und ausgegeben, jedoch können die Ergebnisse aufgrund der unterschiedlichen Befehlsausführungszeiten der Ausführungseinheiten in verschiedener Reihenfolge gespeichert werden. Dieses Speichern in anderer Reihenfolge macht die Behandlung von Ablaufunterbrechungen und das Wiederholen fehlschlagender Befehle kompliziert. Jedoch sind diese Ereignisse relativ selten und das Speichern in anderer Reihenfolge birgt Ausführungs- und Hardwarevorteile
- Bei einem Vergleich von Fig. 3 mit Fig. 4 sind die ersten zwei Schritte 301 und 302 nach Fig. 3 die gleichen wie die ersten zwei Schritte 401 und 402 nach Fig. 4. Nach dem Stand der Technik erfordert der Schritt 303 einen logischen Vergleich der Stelle des niederwertigen Bits des besonderen Registers mit einem Bezugswert. Dies beinhaltet üblicherweise eine bedingte Verzweigung über einen Unterprogrammaufruf, wodurch der effiziente, sequentielle Ablauf der Befehlsausführung unterbrochen wird. Bedingte Verzweigungsprozeduren bringen bei Hochleistungs-Datenverarbeitungssystemen einen hohen Mehraufwand an Leistung mit sich. Durch das Vergleichen prüft der FLBC-Befehl das Vorhandensein eines Fehlerzustands und der nächste sequentielle Befehl kann ohne Verzögerung ausgeführt werden, falls kein Fehlerzustand aufgetreten ist. Das Vorhandensein eines durch diesen Befehl identifizierten Fehlerzustands bewirkt, daß das Steuerprogramm Informationen im Stapelspeicher ablegt, was dem Programm zur Behandlung der Ablaufunterbrechung ermöglicht, den Ursprung des Fehlerzustands zu identifizieren.
- Dieser Befehlstypus, d. h. der durch das gelöschte, niederwertige Bit bedingte Fehlerbefehl (FLBC-Befehl), kann auch benutzt werden, um den Programmausführungsstatus zu prüfen, wenn er im Zusammenhang mit Programmierkonventionen verwendet wird. Wenn ein Programm korrekt abläuft, wird ein Boolescher Wert WAHR (d. h. "1") zurückgegeben, und wenn ein Fehler entdeckt wurde, ein Boolescher Wert FALSCH (d. h. "0") zurückgegeben. Der Fehlerzustand kann durch den FLBC-Befehl geprüft werden.
- In der zweckmäßigen Ausführungsform schicken die Ausführungseinheiten die Zustandssignale (aus Schritt 403) getrennt und zur gleichen Zeit, in der die gesamten Größen zum Skalar-Register 23 zurückgeschickt werden, an die zugeordneten Zustands- oder Summenregister 229. Die Summenregister erlauben eine sofortige Bestimmung des an der besonderen Stelle des besonderen Registers gespeicherten Signals.
- Auch wenn die Stelle des niederwertigen Bits des besonderen Registers in dem FLBC-Befehl verwendet wird, wird Fachleuten deutlich, daß irgendeine spezifizierte Registerstelle benutzt werden kann, um die Zustandsinformation zu übermitteln und einen Fehlerzustand zu signalisieren. Es wird ebenso deutlich, daß die zugrundeliegende Vorrichtung benutzt werden kann, um ähnliche Funktionen zu implementieren wie z. B. einen durch "Register-gleichnull" bedingten Fehlerzustand oder einen durch "Registernegativ" bedingten Fehlerzustand.
- Die vorangehende Beschreibung soll die Funktionsweise der zweckmäßigen Ausführungsform veranschaulichen und ist nicht in dem Sinn auszulegen, den Umfang der Erfindung einzuschränken. Der Umfang der Erfindung wird nur durch die folgenden Ansprüche begrenzt. Aus der vorangehenden Beschreibung werden den Fachleuten viele Varianten deutlich, die ebenfalls durch den in den beigefügten Ansprüchen definierten Umfang der Erfindung abgedeckt sind.
Claims (16)
1. Verfahren zum Steuern eines Prozessors in einem
digitalen Datenverarbeitungssystem, wenn er Befehle in
einem Befehlsstrom verarbeitet, mit den folgenden
Schritten:
während des Verarbeitens eines besonderen Befehls
in dem Befehlsstrom Erzeugen eines Zustandsmerkers mit
einem von mehreren möglichen Zuständen, der auf der
Grundlage vorgegebener Regeln zum Identifizieren eines
Fehlerzustands angibt, ob im Zusammenhang mit der
Verarbeitung des besonderen Befehls ein Fehlerzustand
vorliegt, und Speichern des Zustandsmerkers an einer
vorgegebenen Stelle im internen Datenspeicher des Prozessors,
die durch die Verarbeitung von Befehlen, die in dem
Befehlsstrom dem besonderen Befehl nachfolgen, nicht
verändert wird; und
zu einem beliebigen Zeitpunkt nach der Erzeugung
des Zustandsmerkers Ausführen eines
Fehlererfassungsbefehls, der den Zustand des gespeicherten Zustandsmerkers
prüft und entweder:
(a) als Antwort auf einen das Vorliegen eines
Fehlerzustands angebenden ersten Zustand des
Zustandsmerkers die Ausführung einer
Fehlerverarbeitungsbefehlssequenz einleitet und nach Abschluß der Ausführung der
Fehlerverarbeitungssequenz die Ausführung des nächsten
sequentiellen Befehls, der dem ausgeführten
Fehlererfassungsbefehl folgt, einleitet; oder
(b) als Antwort auf einen keinen Fehlerzustand
angebenden zweiten Zustand des Zustandsmerkers die
Ausführung des nächsten sequentiellen Befehls, der dem
ausgeführten Fehlererfassungsbefehl im Befehlsstrom
folgt, einleitet, so daß der Befehlsstrom in
sequentieller Reihenfolge verarbeitet wird, wenn kein Fehlerzustand
erfaßt wird.
2. Verfahren nach Anspruch 1, bei dem der Befehl im
Befehlsstrom auf eine Adresse Bezug nimmt; und bei dem
der Zustandsmerker, der angibt, ob ein Fehlerzustand
vorliegt, ein Zustandsmerker ist, der angibt, ob die
Adresse, auf die Bezug genommen wird, außerhalb eines
vorgegebenen Bereichs liegt und deshalb ein Fehlerzustand
vorliegt.
3. Verfahren nach Anspruch 1 oder 2, bei dem der
Ausführungsschritt nach dem Prüfen des Zustands des
gespeicherten Zustandsmerkers und vor der Ausführung
einer Fehlerverarbeitungsbefehlssequenz den Schritt des
Speicherns eines Fehlerrahmens in einem Stapel zur
Verwendung für die Identifizierung des Fehlerzustands
umfaßt.
4. Verfahren nach Anspruch 3, bei dem der
Fehlerrahmen-Speicherschritt die Schritte des Speicherns einer auf
den besonderen Befehl zeigenden Adresse, des Speicherns
einer Prozessorstatusidentifizierung und des Speicherns
einer Adresse des Fehlererfassungsbefehls, der den
Zustandsmerker konditioniert hat, umfaßt.
5. Digitaler Datenprozessor zum Verarbeiten von
Befehlen in einem Befehlsstrom, wobei die Befehle den
Befehlsstrom bilden, wobei der Prozessor enthält;
A. eine Zustandsbefehl-Ausführungseinrichtung,
die während der Verarbeitung eines besonderen Befehls im
Befehlsstrom einen Zustandsmerker mit einem von mehreren
möglichen Zuständen erzeugt, der auf der Grundlage
vorgegebener Regeln zum Identifizieren eines Fehlerzustands
angibt, ob im Zusammenhang mit der Verarbeitung des
besonderen Befehls ein Fehlerzustand vorliegt, und den
Zustandsmerker an einer besonderen Stelle im internen
Datenspeicher des Prozessors speichert, die durch die
Verarbeitung von Befehlen, die im Befehlsstrom dem
besonderen Befehl nachfolgen, nicht verändert wird; und
B. eine
Fehlererfassungsbefehl-Ausführungseinrichtung, die zu jedem beliebigen Zeitpunkt nach der
Erzeugung des Zustandsmerkers auf den
Fehlererfassungsbefehl anspricht, der im Befehlsstrom nach dem besonderen
Befehl auftritt, um den Zustand des gespeicherten
Zustandsmerkers zu prüfen und um als Antwort auf den das
Vorliegen eines Fehlerzustands angebenden Zustandsmerker
die Ausführung einer Fehlerverarbeitungsbefehlssequenz
einzuleiten und dann, wenn die Ausführung der
Fehlerverarbeitungsbefehlssequenz abgeschlossen ist, die
Ausführung des nächsten sequentiellen Befehls, der dem
ausgeführten Fehlererfassungsbefehl folgt, einzuleiten, oder
um andernfalls den Prozessor freizugeben, damit er als
Antwort auf einen weiteren Zustand des Zustandsmerkers,
der kein Vorliegen eines Fehlers angibt, den nächsten
sequentiellen Befehl ausführt, der im Befehlsstrom dem
ausgeführten Fehlererfassungsbefehl folgt, so daß der
Befehlsstrom in sequentieller Reihenfolge verarbeitet
wird, wenn kein Fehlerzustand erfaßt wird.
6. Prozessor nach Anspruch 5, in dem die den
Befehlsstrom umfassenden Befehle einen Zustandsbefehlstyp
und einen Fehlerbefehl enthalten und in dem der
Zustandsmerker, der das Vorliegen eines Fehlerzustands angibt,
durch die Erzeugungsausführungseinrichtung während der
Verarbeitung eines Befehls des Zustandsbefehlstyps im
Befehlsstrom erzeugt wird.
7. Prozessor nach Anspruch 5, in dem der im
Befehlsstrom verarbeitete Befehl auf eine Adresse Bezug
nimmt und in dem der Zustandsmerker ein Zustandsmerker
ist, der angibt, ob die Adresse, auf die Bezug genommen
wird, außerhalb eines vorgegebenen Bereichs liegt und
somit ein Fehlerzustand vorliegt.
8. Prozessor nach Anspruch 6 oder 7, in dem die
Fehlererfassungsbefehl-Ausführungseinrichtung einen
Fehlerrahmen in einem Stapel speichert, um ihn nach dem
Prüfen des Zustands des Zustandsmerkers und vor der
Ausführung einer Fehlerbefehlssequenz zum Identifizieren
des Zustands zu verwenden.
9. Prozessor nach Anspruch 8, in dem der
Fehlerrahmen eine auf den Befehl zeigende Adresse, eine
Prozessorstatusidentifizierung und eine Adresse eines Befehls, der
den Zustandsmerker konditionierte, enthält.
10. Prozessor nach Anspruch 6 oder 7, ferner mit
mehreren Registern, wovon ein vorgegebenes den
Zustandsmerker enthält, wobei die
Zustandsbefehlsausführungseinrichtung ein vorgegebenes Bit im vorgegebenen Register
konditioniert und die Fehlerbefehlsausführungseinrichtung
das vorgegebene Bit in dem vorgegebenen Register prüft,
um festzustellen, ob ein Fehlerzustand vorliegt.
11. Prozessor nach Anspruch 5 oder 6 oder 7, ferner
mit: (i) mehreren Registern, wovon eines den
Zustandsmerker enthält, wobei die
Zustandsbefehlsausführungseinrichtung ein vorgegebenes Bit in dem vorgegebenen Register
konditioniert und (ii) einem Protokollregister wenigstens
für das ein ausgewähltes Bit enthaltende vorgegebene
Register, das den Zustand des vorgegebenen Bits
identifiziert, wobei die Fehlerbefehlsausführungseinrichtung das
ausgewählte Bit im Protokollregister prüft, um
festzustellen, ob ein Fehlerzustand vorliegt.
12. Prozessor nach Anspruch 5 oder 8, in dem die
vorgegebene Stelle im Datenspeicher des Prozessors ein
skalares Speicherregister bildet, das einer von einem
Prozessor-Arbeitsspeicher oder von einem Arbeitsspeicher-
Cache getrennten Befehlsausgabeeinheit des Prozessors
zugeordnet ist.
13. Verfahren nach Anspruch 1 oder 4, bei dem der
Schritt des Erzeugens und Speicherns den Schritt des
Speicherns des im Datenspeicher des Prozessors
befindlichen Zustandsmerkers in einem skalaren Speicherregister
enthält, das einer von einem Prozessor-Arbeitsspeicher
oder von einem Arbeitsspeicher-Cache getrennten
Befehlsausgabeeinheit des Prozessors zugeordnet ist.
14. Verfahren nach Anspruch 13, bei dem der Schritt
des Ausführens des Fehlererfassungsbefehls, der den
Zustand des gespeicherten Zustandsmerkers prüft, in der
Befehlsausgabeeinheit des Prozessors ausgeführt wird; und
wobei das Verfahren ferner den Schritt des Spezifizierens
eines besonderen Skalarregisters enthält, das den
Zustandsmerker speichert, der vom Fehlererfassungsbefehl
auf einen Fehlerzustand untersucht werden soll.
15. Verfahren nach Anspruch 1, bei dem der Schritt
des Einleitens der Ausführung einer
Fehlerverarbeitungsbefehlssequenz vor der Ausführung der
Fehlerverarbeitungsbefehlssequenz das Speichern eines Fehlerrahmens in
einem Stapel zur Verwendung bei der Identifizierung
umfaßt, mit den Schritten: (i) Speichern einer Adresse,
die auf den Befehl im Stapel zeigt; (ii) Speichern einer
Prozessorstatusidentifizierung im Stapel; und (iii)
Speichern einer Adresse eines Befehls, der den
Zustandsmerker im Stapel konditionierte.
16. Digitaler Datenprozessor nach Anspruch 5, in dem
der besondere Befehl ein Befehl des Zustandsbefehlstyps
ist, der ein vorgegebenes Bit in einem vorgegebenen von
mehreren Registern des Prozessors konditioniert, und in
dem die Fehlererfassungsbefehls-Ausführungseinrichtung
enthält:
eine Fehlerzustandseinrichtung zum Prüfen des
vorgegebenen Bits im vorgegebenen Register, um
festzustellen, ob ein Fehlerzustand vorliegt, wobei die
Fehlerzustandseinrichtung auf den einen Fehlerzustand
angebenden Zustandsmerker anspricht, mit:
einer Stapelspeichereinrichtung zum Speichern
eines Fehlerrahmens im Stapel zur Verwendung bei der
Identifizierung des Zustands, mit: (i) einer Einrichtung
zum Speichern einer Adresse, die auf den Befehl im Stapel
zeigt; (ii) einer Einrichtung zum Speichern einer
Prozessorstatusidentifizierung im Stapel; und (iii) einer
Einrichtung zum Speichern einer Adresse eines Befehls,
der den Zustandsmerker im Stapel konditionierte.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US6928587A | 1987-07-01 | 1987-07-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3856049D1 DE3856049D1 (de) | 1997-11-27 |
DE3856049T2 true DE3856049T2 (de) | 1998-05-07 |
Family
ID=22087945
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3856049T Expired - Lifetime DE3856049T2 (de) | 1987-07-01 | 1988-06-30 | Gerät und Verfahren zur Signalisierung eines dateninduzierten Zustandes |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP0297890B1 (de) |
JP (1) | JP2626675B2 (de) |
KR (1) | KR970004510B1 (de) |
CN (1) | CN1013903B (de) |
AU (1) | AU626264B2 (de) |
BR (1) | BR8803379A (de) |
CA (1) | CA1303745C (de) |
DE (1) | DE3856049T2 (de) |
IN (1) | IN169637B (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7079775B2 (en) | 2001-02-05 | 2006-07-18 | Finisar Corporation | Integrated memory mapped controller circuit for fiber optics transceiver |
US7346809B2 (en) * | 2004-08-05 | 2008-03-18 | International Business Machines Corporation | Bootable post crash analysis environment |
US10248488B2 (en) | 2015-12-29 | 2019-04-02 | Intel Corporation | Fault tolerance and detection by replication of input data and evaluating a packed data execution result |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4334268A (en) * | 1979-05-01 | 1982-06-08 | Motorola, Inc. | Microcomputer with branch on bit set/clear instructions |
JPS6014338A (ja) * | 1983-06-30 | 1985-01-24 | インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション | 計算機システムにおける分岐機構 |
-
1988
- 1988-06-28 IN IN529/CAL/88A patent/IN169637B/en unknown
- 1988-06-30 EP EP88305988A patent/EP0297890B1/de not_active Expired - Lifetime
- 1988-06-30 DE DE3856049T patent/DE3856049T2/de not_active Expired - Lifetime
- 1988-06-30 CA CA000570920A patent/CA1303745C/en not_active Expired - Fee Related
- 1988-07-01 BR BR8803379A patent/BR8803379A/pt not_active Application Discontinuation
- 1988-07-01 CN CN88104662A patent/CN1013903B/zh not_active Expired
- 1988-07-01 AU AU18639/88A patent/AU626264B2/en not_active Ceased
- 1988-07-01 JP JP63164822A patent/JP2626675B2/ja not_active Expired - Fee Related
- 1988-07-01 KR KR88008151A patent/KR970004510B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
EP0297890A2 (de) | 1989-01-04 |
EP0297890B1 (de) | 1997-10-22 |
KR890002758A (ko) | 1989-04-11 |
AU626264B2 (en) | 1992-07-30 |
CA1303745C (en) | 1992-06-16 |
KR970004510B1 (en) | 1997-03-28 |
CN1031286A (zh) | 1989-02-22 |
AU1863988A (en) | 1989-01-05 |
EP0297890A3 (de) | 1990-07-11 |
JP2626675B2 (ja) | 1997-07-02 |
BR8803379A (pt) | 1989-01-24 |
CN1013903B (zh) | 1991-09-11 |
DE3856049D1 (de) | 1997-11-27 |
JPS6488748A (en) | 1989-04-03 |
IN169637B (de) | 1991-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4313594C2 (de) | Mikroprozessor | |
DE3587277T2 (de) | System fuer die umgehungssteuerung beim pipelinebetrieb eines computers. | |
DE60224774T2 (de) | Datenverarbeitungssystem mit Lese-, Änderungs- und Schreibeinheit | |
DE3851488T2 (de) | Registerverwaltungssystem mit Ausführung von Befehlen in Unordnung in einem Computerprozessor. | |
DE3685863T2 (de) | Rechnersystem zur steuerung virtueller maschinen. | |
DE69932066T2 (de) | Mechanismus zur "store-to-load forwarding" | |
DE4329336C2 (de) | Einrichtung und Verfahren zur Identifizierung eines Computer-Mikroprozessors | |
DE68927492T2 (de) | Verfahren und Vorrichtung zur gleichzeitigen Verteilung von Befehlen an mehrere funktionelle Einheiten | |
DE3685876T2 (de) | Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher. | |
DE69738188T2 (de) | Verfahren und apparat für eine erhöhte genauigkeit bei der verzweigungsvorhersage in einem superskalaren mirkroprozessor | |
DE68924546T2 (de) | Verfahren und Vorrichtung zur Ausführung von Befehlen für ein Vektorverarbeitungssystem. | |
DE69030931T2 (de) | Mehrfachsequenzprozessorsystem | |
DE2714805A1 (de) | Datenverarbeitungssystem | |
DE2244402A1 (de) | Datenverarbeitungsanlage | |
DE4206062A1 (de) | Pipelineverarbeitung von instruktionen | |
DE19983098B4 (de) | Mehrfach-Bitanzeige zur Behandlung von Schreib-nach-Schreib-Fehlern und zur Eliminierung von Bypass-Komparatoren | |
DE19729618A1 (de) | Mikroprozessor und Mehrprozessorsystem | |
DE3854853T2 (de) | Datenprozessor mit erweiterten Operationsfunktionen | |
DE68924883T2 (de) | Mikroprozessor mit Befehlspipeline. | |
DE3650578T2 (de) | Informationsverarbeitungssystem mit einer Steuerschaltung zum Abwarten einer Registererneuerung und einem Aufnahmemittel des zu erneuernden Registers | |
DE3750311T2 (de) | Gerät und Verfahren zur Übertragung zwischen Prozessoren. | |
DE3421737C2 (de) | Vorrichtung zur Ermittlung einer Überlappung von Operanden | |
DE68926701T2 (de) | Datenverarbeitungsgerät zur parallelen Dekodierung und parallelen Ausführung von Befehlen mit variabler Wortlänge | |
DE2611975A1 (de) | Dv-system mit einer einrichtung zur zuordnung von prozessen zu einem prozessor auf einer prioritaetsbasis | |
DE68924507T2 (de) | Verfahren und Gerät zur Markierung von Emulationsanalysezuständen. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8328 | Change in the person/name/address of the agent |
Free format text: GRUENECKER, KINKELDEY, STOCKMAIR & SCHWANHAEUSSER, 80538 MUENCHEN |