DE19983589B4 - Hochfrequenz-Pipeline-Entkopplungswarteschlangengestaltung - Google Patents

Hochfrequenz-Pipeline-Entkopplungswarteschlangengestaltung Download PDF

Info

Publication number
DE19983589B4
DE19983589B4 DE19983589T DE19983589T DE19983589B4 DE 19983589 B4 DE19983589 B4 DE 19983589B4 DE 19983589 T DE19983589 T DE 19983589T DE 19983589 T DE19983589 T DE 19983589T DE 19983589 B4 DE19983589 B4 DE 19983589B4
Authority
DE
Germany
Prior art keywords
read
write
signal
processor
queue
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE19983589T
Other languages
English (en)
Other versions
DE19983589T1 (de
Inventor
Sriram Sunnyvale Bhamidipati
Kushagra V. Sunnyvale Vaid
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.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE19983589T1 publication Critical patent/DE19983589T1/de
Application granted granted Critical
Publication of DE19983589B4 publication Critical patent/DE19983589B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline, look ahead using instruction pipelines
    • G06F9/3871Asynchronous instruction pipeline, e.g. using handshake signals between stages

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)

Abstract

Verfahren zum Beschleunigen der Verarbeitung einer Vielzahl von Befehlen in einem Prozessor, wobei das Verfahren die Schritte umfaßt:
a. Bereitstellen einer Mehrzahl von Pipelineeinheiten (502) zum Verarbeiten einer Vielzahl von Befehlen, wobei jede der Mehrzahl von Pipeline-Einheiten eine Mehrzahl von Pipelinestufen (300, 302, 304, 308) aufweist; und
b. Bereitstellen einer entkoppelnden Warteschlange (306) zum Entkoppeln wenigstens einer der Pipelinestufen (304) von einer anderen (308), wobei die entkoppelnde Warteschlange sowohl Lese- als auch Schreiboperationen aus der bzw. in die Warteschlange innerhalb eines einzigen Taktzyklus (900) des Prozessors unterstützt, indem die Warteschlange einander nicht überlappende Lese- bzw. Schreibsignale in dem Taktzyklus erzeugt, wobei die Leseoperation während des aktiven Lesesignals und die Schreiboperation während des aktiven Schreibsignals stattfindet.

Description

  • Diese Erfindung bezieht sich auf ein Verfahren zum Beschleunigen der Verarbeitung einer Vielzahl von Befehlen in einem Prozessor mit mehreren Pipelinestufen, von denen wenigstens zwei durch eine Warteschlange entkoppelt sind sowie auf einen Prozessor mit mehreren jeweils mehrere Pipelinestufen aufweisenden Pipelineeinheiten und wenigstens einer Warteschlange, die zwischen zwei Pipelinestufen angeordnet ist und diese entkoppelt.
  • Prozessorkonstrukteure haben stets versucht, die Zeitdauer zu verringern, die ein Prozessor benötigt, um ein Programm auszuführen. Eine Technik zur Erhöhung der Leistung eines Prozessors besteht darin, daß die beim Ausführen mehrerer Befehle involvierten Schritte sich einander überlappen. Diese Technik ist als Pipeline-Verschachtelung bekannt. Jeder Schritt in der Pipeline oder jede Pipelinestufe schließt einen Teil eines Befehls ab. Von den Pipelinestufen ist jeweils eine mit einer nächsten verbunden, so daß sie eine Pipeline bilden, wobei die Befehle an einem Ende eintreten, die Stufen entlang verarbeitet werden und am anderen Ende die Pipeline verlassen. Da die Pipeline-Verschachtelung eine Parallelität zwischen den Befehlen in einem sequentiellen Befehlsstrom ausnutzt, erbringt sie eine Verringerung der durchschnittlichen Ausführungszeit pro Befehl.
  • Da die Befehlsausführung in den verschiedenen Pipelinestufen bei verschiedenen Geschwindigkeiten voranschreitet, umfaßt eines der Verfahren das Einfügen von Warteschlangen in die Pipeline zum Entkoppeln dieser Pipelinestufen, um die optimale Leistung einer Pipeline zu sichern. Diese Lösung ist beispielweise aus dem US-Patent Nr. 5,325,495 bekannt. Wenn beispielsweise eine Warteschlange zwischen einer Abrufstufe und einer Decodierstufe einer Pipeline eingefügt wird, kann ein Prozessor die Befehle in der Abrufstufe lesen und sie in der eingefügten Warteschlange speichern. Statt auf die Ausgabe der Ab rufstufe zu warten, kann der Prozessor Befehle direkt aus der Warteschlange gewinnen und mit deren Decodierstufe fortfahren. Im Ergebnis wurden die Ausführung der Abrufstufe und der Decodierstufe entkoppelt. Mit anderen Worten, die beiden Stufen können ihre jeweiligen Aufgaben unabhängig voneinander ausführen.
  • Obwohl der beschriebene Entkopplungswarteschlangenmechanismus die Leistung einer Pipeline verbessert, können seine Beschränkungen die fortgesetzten Konstruktionsbemühungen, Prozessoren zu beschleunigen, noch behindern. In dem Maße, wie ein Prozessor seine Pipelinestufen weiter aufspaltet und seine Taktgeschwindigkeit erhöht, können die Dauer der Einrichtzeit (Setup Time) der Entkopplungswarteschlange und ihre Verzögerung zum Ausführen entweder einer Lese- oder einer Schreiboperation angesichts eines abnehmenden Taktzyklus untragbar lang werden. Wenn ein derartiger Overhead gleich dem Taktzyklus des Prozessors wird, ist keine weitere Pipeline-Verschachtelung bei der Verbesserung der Leistung eines Prozessors nützlich.
  • Aufgabe der Erfindung ist es, ein verbessertes Verfahren und einen verbesserten Prozessor zum Beschleunigen der Verarbeitung einer Vielzahl von Befehlen zu schaffen, wobei gleichzeitig Overheads hinsichtlich der Einrichtzeit und der Zeiten für Lese- und Schreiboperationen an der Warteschlange vermieden werden.
  • Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den Merkmalen des Anspruchs 1, einen Prozessor mit den Merkmalen des Anspruchs 7 sowie ein Computersystem mit den Merkmalen des Anspruchs 14 gelöst.
  • Der Prozessor weist eine Mehrzahl von Pipeline-Einheiten auf, um eine Vielzahl von Befehlen zu verarbeiten. Jede der Pipeline-Einheiten weist mehrere Pipelinestufen auf. Ferner wird eine sich selbst taktende (self-timed) Warteschlange bereitgestellt, um wenigstens eine der erwähnten Pipelinestufen von einer anderen zu entkoppeln, wobei die sich selbst taktende Warteschlange sowohl Lese- als auch Schreiboperationen innerhalb eines einzigen Taktzyklus des Prozessors unterstützt.
  • Vorteilhafte und/oder bevorzugte Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
  • Die vorliegende Erfindung wird beispielhaft und in nicht einschränkender Weise anhand der Figuren der begleitenden Zeichnungen veranschaulicht, in welchen gleiche Bezugszeichen auf ähnliche Elemente verweisen und in welchen:
  • 1 eine herkömmliche Pipeline zur Verarbeitung von Befehlen veranschaulicht.
  • 2 veranschaulicht die Sequenz zur Verarbeitung von Befehlen gemäß der Pipeline in 1.
  • 3 veranschaulicht eine Blockdarstellung einer speziellen Anwendung der vorliegenden Erfindung.
  • 4 veranschaulicht eine Blockdarstellung eines Ausführungsbeispiels der vorliegenden Erfindung.
  • 5 veranschaulicht eine Mehrzweckcomputersystemarchitektur.
  • 6 veranschaulicht ein Ablaufdiagramm für eine Steuerlogikeinheit eines Ausführungsbeispiels der vorliegenden Erfindung.
  • 7 veranschaulicht ein Ablaufdiagramm für die Schreibzeiger- und Lesezeigermanipulation der Steuerlogikeinheit der vorliegenden Erfindung.
  • 8a veranschaulicht ein Beispiel, bei dem der Schreibzeiger und der Lesezeiger auf denselben Eintrag in der Datenspeichereinheit der vorliegenden Erfindung zeigen.
  • 8b veranschaulicht ein Beispiel in der Datenspeichereinheit der vorliegenden Erfindung, bei dem der Lesezeiger umgelaufen (wrapped around) ist und der WR-Modus aktiviert wird.
  • 8c veranschaulicht ein Beispiel in der Datenspeichereinheit der vorliegenden Erfindung, bei dem der Schreibzeiger umgelaufen und der RW-Modus aktiviert ist.
  • 9 veranschaulicht ein Zeitdiagramm des Erzeugens eines Schreibsignals und eines Lesesignals innerhalb eines Prozessortaktzyklus.
  • DETAILLIERTE BESCHREIBUNG
  • Es werden ein Verfahren und eine Einrichtung zum Beschleunigen der Verarbeitung einer Vielzahl von Befehlen in einem Prozessor beschrieben. In der folgenden Beschreibung werden zahlreiche spezielle Details angegeben, wie beispielsweise eine Steuerlogikeinheit, eine Datenspeichereinheit und Zeitgabeerzeugungseinheit, etc., um ein besseres Verständnis der vorliegenden Erfindung zu erreichen. Für einen Durchschnittsfachmann ist es jedoch klar, daß die Erfindung auch ohne diese speziellen Details ausgeführt werden kann. An anderen Stellen werden gut bekannte Elemente und Theorien, wie beispielsweise das Prozessordesign, Registersatz, Pipeline, Einrichtzeit, etc., nicht besonders detailliert erörtert, um ein unnötiges Verdecken der vorliegenden Erfindung zu vermeiden.
  • 1 veranschaulicht eine herkömmliche Pipeline zum Verarbeiten von Befehlen. Die Verarbeitung solcher Befehle besteht aus vier Stufen: Befehlsabruf 100 (mit F bezeichnet), Befehlsdecodierung 102 (mit D bezeichnet), Operandenadressenberechnung 104 (mit A bezeichnet) und Ausführung/Operandenabruf/Operandenspeicherung 106 (mit X bezeichnet). Jede dieser Schritte wird zu einer Pipelinestufe und führt zu dem in 2 gezeigten Ausführungsmuster. Während jeder Befehl noch vier Taktzyklen benötigt, führt die Hardware während jedes Taktzyklus jeweils irgendeinen Teil von vier unterschiedlichen Befehlen aus. Obwohl die Pipeline-Verschachtelung nicht die Ausführungszeit eines einzelnen Befehls verringert, erhöht sie die Anzahl der Befehle, die pro Zeiteinheit abgeschlossen werden.
  • Nachdem kurz die herkömmlichen Pipeline-Prinzipien erörtert worden sind, veranschaulicht 3 eine Blockdarstel lung einer speziellen Anwendung der vorliegenden Erfindung. Für einen Durchschnittsfachmann ist es klar, wie die Blockdarstellung auf andere Pipelinestufen in einem Prozessor angewendet wird. Zusätzlich veranschaulicht 4 eine Blockdarstellung eines Ausführungsbeispiels der vorliegenden Erfindung. Die Blockdarstellung kann in verschiedenen Arten von Prozessoren innerhalb unterschiedlicher Mehrzweckcomputersysteme implementiert werden. Ein derartiges Computersystem ist in 5 veranschaulicht.
  • Diese Computersystemarchitektur umfaßt einen Prozessor 500 mit einer die vorliegende Erfindung enthaltenden Pipeline-Einheit 502 zum Verarbeiten von Audio-, Video- und Dateninformationen, der mit einem Buselement 504 zum Austauschen von Informationen gekoppelt ist, einen mit dem Buselement 504 gekoppelten Speicher 506 mit wahlfreiem Zugriff zum Speichern statischer Informationen und von Befehlen für den Prozessor 500, eine mit dem Buselement 504 gekoppelte Datenspeichereinrichtung 512, wie beispielsweise eine Magnetplatte und ein Plattenlaufwerk, zum Speichern eines Betriebssystems 516 und von Informationen und Befehlen, ein mit dem Buselement 504 gekoppeltes lesbares Medium 514, wie beispielsweise eine Diskette oder eine CD, zum Wiedergewinnen von Informationen und Befehlen für den Prozessor 500, eine mit dem Buselement 504 gekoppelte Anzeigeeinrichtung 508 zum Anzeigen von Informationen an den Computerbenutzer und eine mit dem Buselement 504 gekoppelte alphanumerische oder andere herkömmliche Eingabeeinrichtung 510 zum Übermitteln von Informationen und Befehlsauswahlen an den Prozessor 500.
  • Betriebsweise der vorliegenden Erfindung
  • Die vorliegende Erfindung ist ein Verfahren und eine Einrichtung zum Beschleunigen der Verarbeitung einer Vielzahl von Befehlen in einem Prozessor. Insbesondere entkoppelt die vorliegende Erfindung nicht nur eine Pipelinestufe in einer Pipeline-Einheit eines Prozessors von einer anderen, sie unterstützt darüber hinaus sowohl Lese- als auch Schreiboperationen aus demselben Datenspeicherort innerhalb eines einzigen Taktzyklus des Prozessors. Darüber hinaus erzeugt die vorliegende Erfindung ihr eigenes nichtüberlappendes Lese- und Schreibsignal, um die richtigen Lese- und Schreiboperationen auszulösen. Diese Lese- und Schreibsignale bleiben für eine Mindestdauer aktiv, um die gewünschten Operationen abzuschließen und um die Einrichtzeit-Anforderungen einer nachfolgenden Logikstufe zu erfüllen. Die Erfindung enthält darüber hinaus eine Logik zum Bestimmen der effektivsten Sequenz zum Ausführen der Lese- und Schreiboperationen.
  • Eine Anwendung der Erfindung ist ein Mehrzweckcomputersystem, das auf speziellen Komponenten arbeitet, wie sie in 3 veranschaulicht sind. Insbesondere werden ausgewählte Pipelinestufen in der Pipeline-Einheit 502 in Verbindung mit der vorliegenden Erfindung verwendet, um die Funktionalität der Entkopplungswarteschlange 306 zu demonstrieren. Nachdem das Betriebssystem 516 auf der Datenspeichereinrichtung 512 Befehle entweder von der Datenspeichereinrichtung 512 oder dem lesbaren Medium 514 lädt, richtet es außerdem die erforderliche Umgebung für die Ausführung der Befehle ein. Die Befehle für den Prozessor 500 werden typischerweise in einem Speicher 506 mit wahlfreiem Zugriff gespeichert.
  • Block 300 liest Befehle variabler Länge aus dem Speicher. Dann führt der Block 302 ein Rotieren und Ausrichten dieser gelesenen Informationen aufgrund der aus der Vor-Decodierung des Blocks 304 abgeleiteten Anzahl von Bytes durch. Die Blöcke 300, 302 und 304 können zusammen als Pipelinestufe F 100 betrachtet werden, wie sie in 1 gezeigt ist. Da die Entkopplungswarteschlange 306 Ausgaben aus dem Block 304 speichert, braucht die Befehlsdecodiereinheit 308 oder Pipelinestufe D 102 in 1 nicht auf den Abschluß der Pipelinestufe F 100 zu warten. Stattdessen kann die Befehlsdecodiereinheit 308 fortfahren, indem sie die gespeicherten Befehle aus der Entkopplungswarteschlange 306 verarbeitet. Mit anderen Worten, die Operationen der Pipelinestufe F 100 und der Pipelinestufe D 102 wurden durch Verwendung der Entkopplungswarteschlange 306 entkoppelt.
  • Es sei betont, daß, obwohl spezielle Pipelinestufen verwendet wurden, um die vorliegende Erfindung zu beschreiben, die Erfindung in anderen Pipelinestufen ohne Überschreitung ihres Umfangs enthalten sein kann. Beispielsweise kann die Entkopplungswarteschlange 306 zwischen die Pipelinestufe D 102 und die Pipelinestufe A 104 eingefügt werden. Darüber hinaus ist es für den Durchschnittsfachmann klar, daß die vorliegende Erfindung auf mehr als die vier in 1 veranschaulichten Pipelinestufen angewendet werden kann oder auf mehrere Pipelines innerhalb eines Prozessors sowie auf mehrere Prozessoren innerhalb des Beispielcomputersystems gemäß 5, ohne vom Umfang der vorliegenden Erfindung abzuweichen.
  • Der Mechanismus der Entkopplungswarteschlange 306 in 3 ist genauer in 4 dargelegt. Insbesondere enthält die Entkopplungswarteschlange 306 eine Steuerlogikeinheit 400, eine Zeitgabe- oder Takt-Erzeugungseinheit 402 und eine Datenspeichereinheit 404. Bei einem Ausführungsbeispiel der vorliegenden Erfindung ist die Datenspeichereinheit 404 ein Registersatz.
  • 4 und 6 veranschaulichen ein Ausführungsbeispiel der Steuerlogikeinheit 400. In Übereinstimmung mit ihrer externen Eingabe 406 und ihren internen Zeigerberechnungen erzeugt die Steuerlogikeinheit 400 ein Steuersignal 410, um den gewünschten Lese- und Schreibmodus für die Entkopplungswarteschlange 306 anzuzeigen. Insbesondere beginnt die Steuerlogikeinheit 400, indem sie die Zeitgabeerzeugungseinheit 402 auf den Schreiboperation-zuerst-Leseoperation-später-Modus (als WR-Modus bezeichnet) im Schritt 600 einrichtet. Wenn die Steuerlogikeinheit 400 den Ort oder Speicherplatz in der Datenspeichereinheit 404 zum Einschreiben eingehender Daten 412 oder zum Lesen auslaufender Daten 414 berechnet, hält die Steuerlogikeinheit 400 unabhängige Schreib- und Lesezeiger aufrecht, um die berechneten Orte zu verfolgen.
  • Auf der Grundlage der Werte dieser beiden Zeiger oder des Werts ihrer externen Eingabe 406 bestimmt die Steuerlogikeinheit 400 im Schritt 602, ob die Datenspeichereinheit 404 ausreichend Kapazität aufweist, um das Aufnehmen eingehender Daten 412 fortzusetzen. Wenn der Schreibzeiger und der Lesezeiger eine volle Datenspeichereinheit 404 anzeigen oder wenn der externe Eingang 406 ein Steckenbleiben (stall) in der vorhergehenden Pipelinestufe anzeigt, gibt die Steuerlogikeinheit 400 im Schritt 604 ein Steuersignal 410 an die Zeitgabeerzeugungseinheit 402 aus, damit diese in den Leseoperation-zuerst-Schreiboperation-später-Modus (als RW-Modus bezeichnet) umschaltet. Anderenfalls wird der WR-Modus fortgesetzt.
  • Auf eine ähnliche Weise überprüft die Steuerlogikeinheit 400 auf der Grundlage der Schreibzeiger- und Lesezeigerwerte im Schritt 606, ob die Leseoperationen an auslaufenden Daten 414 die Datenspeichereinheit 404 entleert (depleted) haben. In Abhängigkeit vom Ausgang des Schritts 606 und vom aktuellen Zustand der Steuerlogikeinheit 400 wechselt entweder der RW-Modus zurück in den WR-Modus oder bleibt der Zustand, RW-Modus oder WR-Modus, unverändert.
  • In Verbindung mit den in den 8a, 8b und 8c gezeigten Beispielen und der in 4 gezeigten Blockdarstellung veranschaulicht 7 die erörterten Lesezeiger- und Schreibzeigeroperationen näher. Im Schritt 700 zeigen bei Verwendung einer Datenspeichereinheit 404 mit fünf Einträgen, wie sie in 8a gezeigt ist, der Lesezeiger 800 (als RP 800 bezeichnet) und der Schreibzeiger 802 (als WP 802 bezeichnet) anfänglich auf denselben ersten Eintrag, und die Steuerlogikeinheit 400 beginnt mit dem WR-Modus. Wenn eingehende Daten 412 in die Datenspeichereinheit 404 eintreten, wird WP 802 im Schritt 702 inkrementiert. In ähnlicher Weise wird dann, wenn auslaufende Daten 414 die Datenspeichereinheit 404 verlassen, RP 800 im Schritt 702 ebenfalls inkrementiert. wenn einer der Zeiger das Ende der Datenspeichereinheit 404 oder den Eintrag 5 erreicht, läuft der Zeiger um und beginnt beim Eintrag 1 von vorn.
  • 8b demonstriert ein mögliches Szenarium, bei dem RP 800 umgelaufen ist und die Datenspeichereinheit 404 leer ist. Insbesondere dann, wenn WP 802 vom Eintrag 1 zum Eintrag 5 vorgerückt und wieder zum Eintrag 2 umgelaufen ist und wenn RP 800 ebenfalls auf ähnliche Weise vorgerückt wurde, wurden sämtliche eingehenden Daten 412, die bereits in die Datenspeichereinheit 404 eingeschrieben wurden, als auslaufende Daten 414 ausgelesen. Wenn im Schritt 704 RP 800 und WP 802 auf denselben Eintrag 2 verweisen und im Schritt 706 festgestellt worden ist, daß RP 800 umgelaufen ist, wird der WR-Modus im Schritt 710 fortgesetzt. Mit anderen Worten, Schreiboperationen müssen zunächst stattfinden, bevor irgendwelche weiteren Leseoperationen erfolgen können. Wenn die Schreiboperation ausgeführt wird, wird WP 802 zum Eintrag 2 vorgerückt, während RP 800 beim Eintrag 2 verbleibt.
  • Andererseits bietet 8c ein alternatives Szenarium, bei dem die Datenspeichereinheit 404 voll ist. Analog der vorhergehenden Diskussion wird dann, wenn RP 800 und WP 802 im Schritt 704 auf denselben Eintrag verweisen und von WP 802 im Schritt 708 festgestellt wird, daß er umgelaufen ist, der WR-Modus in den RW-Modus im Schritt 712 geändert. Genauer gesagt, müssen dann Leseoperationen vor irgendwelchen nachfolgenden Schreiboperationen auftreten, da die Datenspeichereinheit 404 keine weiteren eingehenden Daten akzeptieren kann. Wenn die Leseoperation ausgeführt wird, wird RP 800 auf den Eintrag 3 inkrementiert, während WP 802 beim Eintrag 2 verbleibt.
  • Obwohl Details in einem Ausführungsbeispiel der vorliegenden Erfindung verwendet wurden, um einen bestimmten Modusumschaltmechanismus und Operationen einer Steuerlogikeinheit 400 zu beschreiben, ist es für einen Durchschnitts fachmann klar, daß andere Verfahren verwendet werden können, um dieselben Ziele zu erreichen, ohne vom Umfang der Erfindung abzuweichen. Beispielsweise kann die Modusumschaltintelligenz Teil der Datenspeichereinheit 404 sein. Darüber hinaus könnte in Erwägung gezogen werden, daß die in den 6 und 7 veranschaulichten logischen Schritte in abweichenden Reihenfolgen angeordnet werden können und aber noch die gleichen Ergebnisse hervorbringen. Beispielsweise könnten der Schritt 606 und der Schritt 602 in 6 oder der Schritt 706 und der Schritt 708 in 7 mit geringfügigen Modifikationen ausgetauscht werden, ohne den Ausgang zu beeinflussen.
  • Nachdem die Interaktionen zwischen den verschiedenen Komponenten in der Entkopplungswarteschlange 306 beschrieben worden sind, veranschaulicht 4 in Verbindung mit 9 die Operationen der Zeitgabe- oder Takt-Erzeugungseinheit 402. In Übereinstimmung mit dem Steuersignal 410 aus der Steuerlogikeinheit 400 erzeugt die Zeitgabeerzeugungseinheit 402 ein entsprechendes Signal an die Datenspeichereinheit 404, um die Schreib- und Leseoperationen der Datenspeichereinheit 404 zu initiieren. Beispielsweise dann, wenn das Steuersignal 410 den WR-Modus anzeigt, löst die ansteigende Flanke des Prozessortakts 416 ein Schreibsignal 418 aus. Wenn andererseits das Steuersignal 410 den RW-Modus anzeigt, löst die ansteigende Flanke des Prozessortakts 416 ein Lesesignal 420 aus.
  • Innerhalb der Dauer 900 eines einzigen Prozessortaktzyklus wird dann, wenn das Steuersignal 410 einen WR-Modus anzeigt, ein nicht-überlappendes Schreibsignal 418 für eine Dauer 902, wie sie in 9 gezeigt ist, aktiv. Während dieser Zeit schließt die von dem Schreibsignal 418 ausgelöste Schreiboperation das Schreiben der eingehenden Daten 412 in die Datenspeichereinheit 404 ab. Nach dem Abschluß ihrer Schreiboperation gibt die Datenspeichereinheit 404 ein Abschlußsignal 422 an die Zeitgabeerzeugungseinheit 402 aus. An diesem Punkt fällt die Taktflanke des Schreibsignals 418 ab und löst ein nachfolgendes nicht-überlappendes Lesesignal 420 aus. Nach einer gewissen Verzögerung von einer Dauer 912 wird das Lesesignal 420 an die Datenspeichereinheit 404 gesendet, um seine zugehörige Leseoperation auszulösen. Ähnlich dem Schreibsignal 418 bleibt das Lesesignal 420 aktiv, bis die Leseoperation abgeschlossen ist. Zusätzlich bleibt es ebenfalls aktiv für eine Dauer 906, um irgendwelche Mindest-Einrichtzeit-Anforderungen einer nachfolgenden Logikstufe zu befriedigen. Im Ergebnis kann die nachfolgende Logikstufe sofort Gebrauch von der verbleibenden Zeit, der Dauer 908, machen, um irgendwelche erforderlichen Operationen auszuführen.
  • Ähnliche Prinzipien gelten, wenn das Steuersignal 410 einen RW-Modus anzeigt; an Stelle eines für eine Dauer 902 aktiv bleibenden nicht-überlappenden Schreibsignals 418 bleibt ein nicht-überlappendes Lesesignal 420 während dieser Zeit aktiv. Das nicht-überlappende Schreibsignal 418 wird von der fallenden Taktflanke des Lesesignals 420 ausgelöst und bleibt für eine Dauer 904 aktiv.
  • Wie demonstriert worden ist, unterstützt die vorliegende Erfindung sowohl eine Leseoperation als auch eine Schreiboperation innerhalb eines Prozessortaktzyklus. Da darüber hinaus die Operationen einander nicht überlappen, kann die Leseoperation aus einem Eintrag in der Datenspeichereinheit 404 lesen und die Schreiboperation kann in denselben Eintrag einschreiben. Verwenden wir 8a als Veranschaulichung, die Leseoperation kann zunächst Daten aus dem Eintrag 1 lesen, und die Schreiboperation kann dann in demselben Prozessortaktzyklus in den Eintrag 1 einschreiben.
  • Somit wurden ein Verfahren und eine Einrichtung zum Beschleunigen der Verarbeitung einer Vielzahl von Befehlen in einem Prozessor offenbart. Obwohl die vorliegende Erfindung insbesondere unter Bezugnahme auf die Figuren beschrieben worden ist, ist es für einen Durchschnittsfachmann klar, daß die vorliegende Erfindung in einer beliebigen Anzahl von Systemen mit Prozessoren, welche eine Pipelinefunktionalität bereitstellen, erscheinen kann. Es ist ferner vorgesehen, daß viele Änderungen und Modifikationen von einem Fachmann vorgenommen werden können, ohne vom Geist und Umfang der vorliegenden Erfindung abzuweichen.

Claims (14)

  1. Verfahren zum Beschleunigen der Verarbeitung einer Vielzahl von Befehlen in einem Prozessor, wobei das Verfahren die Schritte umfaßt: a. Bereitstellen einer Mehrzahl von Pipelineeinheiten (502) zum Verarbeiten einer Vielzahl von Befehlen, wobei jede der Mehrzahl von Pipeline-Einheiten eine Mehrzahl von Pipelinestufen (300, 302, 304, 308) aufweist; und b. Bereitstellen einer entkoppelnden Warteschlange (306) zum Entkoppeln wenigstens einer der Pipelinestufen (304) von einer anderen (308), wobei die entkoppelnde Warteschlange sowohl Lese- als auch Schreiboperationen aus der bzw. in die Warteschlange innerhalb eines einzigen Taktzyklus (900) des Prozessors unterstützt, indem die Warteschlange einander nicht überlappende Lese- bzw. Schreibsignale in dem Taktzyklus erzeugt, wobei die Leseoperation während des aktiven Lesesignals und die Schreiboperation während des aktiven Schreibsignals stattfindet.
  2. Verfahren nach Anspruch 1, wobei die Warteschlange (306) eine Steuerlogikeinheit (400), eine Zeitgabeerzeugungseinheit (402) und eine Datenspeichereinheit(404) aufweist und wobei die Zeitgabeerzeugungseinheit (402) das nicht-überlappende Schreibsignal (418) zum Auslösen der Schreiboperation innerhalb des einzigen Taktzyklus erzeugt; das nicht-überlappende Lesesignal (420) zum Auslösen der Leseoperation innerhalb desselben einzigen Taktzyklus erzeugt; und sichert, daß das Schreib- und das Lesesignal für eine Mindestdauer (902; 904) aktiv bleiben, so daß sie die zugehörige Schreib- bzw. Leseoperation abschließen und die Ein richtzeitanforderungen einer nachfolgenden Logikstufe erfüllen.
  3. Verfahren nach Anspruch 2, wobei die Reihenfolge der Durchführung der Schreiboperation und der Leseoperation in dem Taktzyklus austauschbar ist, so daß entweder die Leseoperation der Schreiboperation folgt oder die Schreiboperation der Leseoperation folgt.
  4. Verfahren nach einem der Ansprüche 1 bis 3, wobei die Schreib- und Leseoperationen an demselben Eintrag der Warteschlange durchgeführt werden können.
  5. Verfahren nach Anspruch 3, wobei die Steuerlogikeinheit die Reihenfolge der Schreib- und Leseoperationen bestimmt; und die Zeitgabeerzeugungseinheit instruiert, die Schreib- und Lesesignale (418, 420) entsprechend der Reihenfolge zu erzeugen.
  6. Verfahren nach Anspruch 2, wobei die Zeitgabeerzeugungseinheit ein erstes Signal (902) erzeugt, welches entweder das Schreibsignal oder das Lesesignal ist, und ein zweites Signal (904), welches entweder das Schreibsignal oder das Lesesignal ist, wobei das erste Signal (902) von einer ansteigenden Flanke eines Taktsignals des Prozessors ausgelöst wird; und das zweite Signal (904) von einer abfallenden Flanke des ersten Signals ausgelöst wird.
  7. Prozessor, aufweisend: eine Mehrzahl von Pipeline-Einheiten (502) zum Verarbeiten einer Vielzahl von Befehlen, wobei jede der Mehrzahl von Pipeline-Einheiten (502) eine Mehrzahl von Pipelinestufen (300, 302, 304, 308) aufweist; und eine entkoppelnde Warteschlange (306) zum Entkoppeln wenigstens einer der Pipelinestufen (304) von einer anderen (308), wobei die entkoppelnde Warteschlange sowohl Lese- als auch Schreiboperationen aus der bzw. in die Warteschlange innerhalb eines einzigen Taktzyklus (900) des Prozessors unterstützt, indem eine Zeitgabeerzeugungseinheit (402) der Warteschlange einander nicht überlappende Lese- bzw. Schreibsignale in dem Taktzyklus erzeugt und an eine Datenspeichereinheit (404) der Warteschlange ausgibt, wobei die Leseoperation während des aktiven Lesesignals und die Schreiboperation während des aktiven Schreibsignals stattfindet.
  8. Prozessor nach Anspruch 7, wobei die Zeitgabeerzeugungseinheit (402) das nicht-überlappende Schreibsignal (418) zum Auslösen der Schreiboperation innerhalb des einzigen Taktzyklus erzeugt; das nicht-überlappende Lesesignal (420) zum Auslösen der Leseoperation innerhalb desselben einzigen Taktzyklus erzeugt; und sichert, daß das Schreib- und das Lesesignal (418, 420) für eine Mindestdauer (902, 904) aktiv bleiben, um die zugehörige Lese- und Schreiboperation abzuschließen und eine Einrichtzeitanforderung einer nachfolgenden Logikstufe (308) zu erfüllen.
  9. Prozessor nach Anspruch 8, wobei die Reihenfolge der Durchführung der Schreib- und Leseoperationen in dem Taktzyklus austauschbar ist.
  10. Prozessor nach Anspruch 7, wobei die Schreib- und Leseoperationen an demselben Eintrag der Datenspeichereinheit (404) durchgeführt werden können.
  11. Prozessor nach Anspruch 9, wobei eine Steuerlogikeinheit (400) die Reihenfolge der Schreib- und Leseoperationen bestimmt; und mit der Zeitgabeerzeugungseinheit gekoppelt ist, um diese zu instruieren, die Schreib- und Lesesignale gemäß der Reihenfolge zu erzeugen.
  12. Prozessor nach Anspruch 8, wobei die Zeitgabeerzeugungseinheit (402) ein erstes Signal, entweder das Schreibsignal oder das Lesesignal, und ein zweites Signal, entweder das Schreibsignal oder das Lesesignal, erzeugt, wobei das erste Signal (902) von einer ansteigenden Flanke eines Taktsignals des Prozessors ausgelöst wird; und das zweite Signal (904) von einer abfallenden Flanke des ersten Signals ausgelöst wird.
  13. Prozessor nach Anspruch 7, wobei die Datenspeichereinheit ein Registersatz ist.
  14. Computersystem, aufweisend: einen Prozessor nach einem der Ansprüche 7 bis 13; und ein Buselement, das eine Speichereinrichtung und den Prozessor koppelt, wobei die Speichereinrichtung ein Betriebssystem enthält.
DE19983589T 1998-09-24 1999-09-20 Hochfrequenz-Pipeline-Entkopplungswarteschlangengestaltung Expired - Fee Related DE19983589B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/160,364 1998-09-24
US09/160,364 US6112295A (en) 1998-09-24 1998-09-24 High frequency pipeline decoupling queue with non-overlapping read and write signals within a single clock cycle
PCT/US1999/021864 WO2000017744A1 (en) 1998-09-24 1999-09-20 High frequency pipeline decoupling queue design

Publications (2)

Publication Number Publication Date
DE19983589T1 DE19983589T1 (de) 2001-08-09
DE19983589B4 true DE19983589B4 (de) 2005-01-27

Family

ID=22576577

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19983589T Expired - Fee Related DE19983589B4 (de) 1998-09-24 1999-09-20 Hochfrequenz-Pipeline-Entkopplungswarteschlangengestaltung

Country Status (6)

Country Link
US (1) US6112295A (de)
CN (1) CN1158598C (de)
AU (1) AU6055199A (de)
DE (1) DE19983589B4 (de)
GB (1) GB2357874B (de)
WO (1) WO2000017744A1 (de)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7058793B1 (en) * 1999-12-20 2006-06-06 Unisys Corporation Pipeline controller for providing independent execution between the preliminary and advanced stages of a synchronous pipeline
SG108240A1 (en) * 2000-02-23 2005-01-28 Ntt Docomo Inc Multi-carrier cdma radio transmitting method and apparatus, and channel estimation method and apparatus for multi-carrier cdma radio transmitting system
US8082401B2 (en) * 2009-03-25 2011-12-20 Qualcomm Incorporated Self-timing for a multi-ported memory system
JP2011090592A (ja) * 2009-10-26 2011-05-06 Sony Corp 情報処理装置とその命令デコーダ
US10163479B2 (en) 2015-08-14 2018-12-25 Spin Transfer Technologies, Inc. Method and apparatus for bipolar memory write-verify
US10446210B2 (en) 2016-09-27 2019-10-15 Spin Memory, Inc. Memory instruction pipeline with a pre-read stage for a write operation for reducing power consumption in a memory device that uses dynamic redundancy registers
US10192601B2 (en) * 2016-09-27 2019-01-29 Spin Transfer Technologies, Inc. Memory instruction pipeline with an additional write stage in a memory device that uses dynamic redundancy registers
US11119910B2 (en) 2016-09-27 2021-09-14 Spin Memory, Inc. Heuristics for selecting subsegments for entry in and entry out operations in an error cache system with coarse and fine grain segments
US11119936B2 (en) 2016-09-27 2021-09-14 Spin Memory, Inc. Error cache system with coarse and fine segments for power optimization
US10818331B2 (en) 2016-09-27 2020-10-27 Spin Memory, Inc. Multi-chip module for MRAM devices with levels of dynamic redundancy registers
US10360964B2 (en) 2016-09-27 2019-07-23 Spin Memory, Inc. Method of writing contents in memory during a power up sequence using a dynamic redundancy register in a memory device
US10192602B2 (en) 2016-09-27 2019-01-29 Spin Transfer Technologies, Inc. Smart cache design to prevent overflow for a memory device with a dynamic redundancy register
US10437491B2 (en) 2016-09-27 2019-10-08 Spin Memory, Inc. Method of processing incomplete memory operations in a memory device during a power up sequence and a power down sequence using a dynamic redundancy register
US10460781B2 (en) 2016-09-27 2019-10-29 Spin Memory, Inc. Memory device with a dual Y-multiplexer structure for performing two simultaneous operations on the same row of a memory bank
US11151042B2 (en) 2016-09-27 2021-10-19 Integrated Silicon Solution, (Cayman) Inc. Error cache segmentation for power reduction
US10437723B2 (en) 2016-09-27 2019-10-08 Spin Memory, Inc. Method of flushing the contents of a dynamic redundancy register to a secure storage area during a power down in a memory device
US10628316B2 (en) 2016-09-27 2020-04-21 Spin Memory, Inc. Memory device with a plurality of memory banks where each memory bank is associated with a corresponding memory instruction pipeline and a dynamic redundancy register
US10546625B2 (en) 2016-09-27 2020-01-28 Spin Memory, Inc. Method of optimizing write voltage based on error buffer occupancy
US10366774B2 (en) 2016-09-27 2019-07-30 Spin Memory, Inc. Device with dynamic redundancy registers
US10656994B2 (en) 2017-10-24 2020-05-19 Spin Memory, Inc. Over-voltage write operation of tunnel magnet-resistance (“TMR”) memory device and correcting failure bits therefrom by using on-the-fly bit failure detection and bit redundancy remapping techniques
US10489245B2 (en) 2017-10-24 2019-11-26 Spin Memory, Inc. Forcing stuck bits, waterfall bits, shunt bits and low TMR bits to short during testing and using on-the-fly bit failure detection and bit redundancy remapping techniques to correct them
US10529439B2 (en) 2017-10-24 2020-01-07 Spin Memory, Inc. On-the-fly bit failure detection and bit redundancy remapping techniques to correct for fixed bit defects
US10481976B2 (en) 2017-10-24 2019-11-19 Spin Memory, Inc. Forcing bits as bad to widen the window between the distributions of acceptable high and low resistive bits thereby lowering the margin and increasing the speed of the sense amplifiers
US10811594B2 (en) 2017-12-28 2020-10-20 Spin Memory, Inc. Process for hard mask development for MRAM pillar formation using photolithography
US10424726B2 (en) 2017-12-28 2019-09-24 Spin Memory, Inc. Process for improving photoresist pillar adhesion during MRAM fabrication
US10516094B2 (en) 2017-12-28 2019-12-24 Spin Memory, Inc. Process for creating dense pillars using multiple exposures for MRAM fabrication
US10395711B2 (en) 2017-12-28 2019-08-27 Spin Memory, Inc. Perpendicular source and bit lines for an MRAM array
US10395712B2 (en) 2017-12-28 2019-08-27 Spin Memory, Inc. Memory array with horizontal source line and sacrificial bitline per virtual source
US10360962B1 (en) 2017-12-28 2019-07-23 Spin Memory, Inc. Memory array with individually trimmable sense amplifiers
US10891997B2 (en) 2017-12-28 2021-01-12 Spin Memory, Inc. Memory array with horizontal source line and a virtual source line
US10367139B2 (en) 2017-12-29 2019-07-30 Spin Memory, Inc. Methods of manufacturing magnetic tunnel junction devices
US10424723B2 (en) 2017-12-29 2019-09-24 Spin Memory, Inc. Magnetic tunnel junction devices including an optimization layer
US10784439B2 (en) 2017-12-29 2020-09-22 Spin Memory, Inc. Precessional spin current magnetic tunnel junction devices and methods of manufacture
US10840439B2 (en) 2017-12-29 2020-11-17 Spin Memory, Inc. Magnetic tunnel junction (MTJ) fabrication methods and systems
US10546624B2 (en) 2017-12-29 2020-01-28 Spin Memory, Inc. Multi-port random access memory
US10886330B2 (en) 2017-12-29 2021-01-05 Spin Memory, Inc. Memory device having overlapping magnetic tunnel junctions in compliance with a reference pitch
US10840436B2 (en) 2017-12-29 2020-11-17 Spin Memory, Inc. Perpendicular magnetic anisotropy interface tunnel junction devices and methods of manufacture
US10438995B2 (en) 2018-01-08 2019-10-08 Spin Memory, Inc. Devices including magnetic tunnel junctions integrated with selectors
US10438996B2 (en) 2018-01-08 2019-10-08 Spin Memory, Inc. Methods of fabricating magnetic tunnel junctions integrated with selectors
US10446744B2 (en) 2018-03-08 2019-10-15 Spin Memory, Inc. Magnetic tunnel junction wafer adaptor used in magnetic annealing furnace and method of using the same
US10784437B2 (en) 2018-03-23 2020-09-22 Spin Memory, Inc. Three-dimensional arrays with MTJ devices including a free magnetic trench layer and a planar reference magnetic layer
US20190296228A1 (en) 2018-03-23 2019-09-26 Spin Transfer Technologies, Inc. Three-Dimensional Arrays with Magnetic Tunnel Junction Devices Including an Annular Free Magnetic Layer and a Planar Reference Magnetic Layer
US11107974B2 (en) 2018-03-23 2021-08-31 Spin Memory, Inc. Magnetic tunnel junction devices including a free magnetic trench layer and a planar reference magnetic layer
US11107978B2 (en) 2018-03-23 2021-08-31 Spin Memory, Inc. Methods of manufacturing three-dimensional arrays with MTJ devices including a free magnetic trench layer and a planar reference magnetic layer
US10411185B1 (en) 2018-05-30 2019-09-10 Spin Memory, Inc. Process for creating a high density magnetic tunnel junction array test platform
US10600478B2 (en) 2018-07-06 2020-03-24 Spin Memory, Inc. Multi-bit cell read-out techniques for MRAM cells with mixed pinned magnetization orientations
US10593396B2 (en) 2018-07-06 2020-03-17 Spin Memory, Inc. Multi-bit cell read-out techniques for MRAM cells with mixed pinned magnetization orientations
US10692569B2 (en) 2018-07-06 2020-06-23 Spin Memory, Inc. Read-out techniques for multi-bit cells
US10559338B2 (en) 2018-07-06 2020-02-11 Spin Memory, Inc. Multi-bit cell read-out techniques
US10650875B2 (en) 2018-08-21 2020-05-12 Spin Memory, Inc. System for a wide temperature range nonvolatile memory
US11114136B2 (en) * 2018-08-21 2021-09-07 Marcon International Inc Circuit, system, and method for reading memory-based digital identification devices in parallel
US10699761B2 (en) 2018-09-18 2020-06-30 Spin Memory, Inc. Word line decoder memory architecture
US11621293B2 (en) 2018-10-01 2023-04-04 Integrated Silicon Solution, (Cayman) Inc. Multi terminal device stack systems and methods
US10971680B2 (en) 2018-10-01 2021-04-06 Spin Memory, Inc. Multi terminal device stack formation methods
US11107979B2 (en) 2018-12-28 2021-08-31 Spin Memory, Inc. Patterned silicide structures and methods of manufacture
JP2022143544A (ja) * 2021-03-17 2022-10-03 富士通株式会社 演算処理装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325495A (en) * 1991-06-28 1994-06-28 Digital Equipment Corporation Reducing stall delay in pipelined computer system using queue between pipeline stages

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4058773A (en) * 1976-03-15 1977-11-15 Burroughs Corporation Asynchronous self timed queue
KR0123239B1 (ko) * 1994-07-06 1997-11-26 김주용 선입선출방식(fifo) 메모리
US5956748A (en) * 1997-01-30 1999-09-21 Xilinx, Inc. Asynchronous, dual-port, RAM-based FIFO with bi-directional address synchronization
US5918034A (en) * 1997-06-27 1999-06-29 Sun Microsystems, Inc. Method for decoupling pipeline stages
US5961615A (en) * 1997-12-31 1999-10-05 Intel Corporation Method and apparatus for queuing data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5325495A (en) * 1991-06-28 1994-06-28 Digital Equipment Corporation Reducing stall delay in pipelined computer system using queue between pipeline stages

Also Published As

Publication number Publication date
DE19983589T1 (de) 2001-08-09
WO2000017744A1 (en) 2000-03-30
US6112295A (en) 2000-08-29
GB2357874B (en) 2003-05-28
GB0106055D0 (en) 2001-05-02
CN1320238A (zh) 2001-10-31
AU6055199A (en) 2000-04-10
CN1158598C (zh) 2004-07-21
GB2357874A (en) 2001-07-04

Similar Documents

Publication Publication Date Title
DE19983589B4 (de) Hochfrequenz-Pipeline-Entkopplungswarteschlangengestaltung
DE19580990C2 (de) Verfahren und Einrichtung zum Ausführen verzögerter Transaktionen
DE10085375B4 (de) Verfahren und Einrichtung für einen pipeline-verschachtelten Multi-Thread-Befehlsdecodierer
DE19983330B4 (de) Computerprozessor mit einem Wiederholsystem mit einem Stufungsabschnitt zum getakteten Verzögern und Verfahren zum Verarbeiten eines Befehls in einem solchen Prozessor
DE69636861T2 (de) Mikroprozessor mit Lade-/Speicheroperation zu/von mehreren Registern
DE19914210B4 (de) Verfahren und Prozessor für eine gestaffelte Ausführung einer Anweisung
DE4222776C2 (de) Parallelverarbeitungseinheit und Verfahren zum Ausführen von Befehlen
DE19882486B4 (de) Synchroner, nicht-flüchtiger Seitenmodus-Speicher
DE112005002416B4 (de) Prozessor und System mit einer sowie Verfahren für eine Frequenz- und Spannungsskalierungsarchitektur
DE3914265C2 (de)
DE2555963C2 (de) Einrichtung zur Funktionsmodifizierung
DE60033994T2 (de) Verfahren und System zur Ausgabe an und zum Ordnen von Befehlen in einem Festplattenlaufwerk
DE3424962C2 (de)
DE19506435C2 (de) Verfahren und Einrichtung zum Vermeiden von Rückschreibkonflikten zwischen einen gemeinsamen Rückschreibpfad verwendenden Ausführungseinheiten
DE19506990A1 (de) Einrichtung zur Datenumleitung in einem Prozessor mit mehreren Ausführungseinheiten
DE19983098B4 (de) Mehrfach-Bitanzeige zur Behandlung von Schreib-nach-Schreib-Fehlern und zur Eliminierung von Bypass-Komparatoren
DE2234867A1 (de) Anordnung in datenverarbeitungsanlagen zum steuern der verarbeitung zweier voneinander unabhaengiger programme
DE4018481C2 (de)
DE69922238T2 (de) Mechanismus zur blockierung von ladeoperationen auf adressengeneration von speicherbefehlen und universeller abhängigkeitsvektor
DE19945993B4 (de) Plattenschreibvollendungssystem
DE4216905A1 (de) Superskalarprozessor
DE4403917A1 (de) Vorrichtung zum Berechnen einer Besetzungszählung
DE2813080A1 (de) Einrichtung zur speicheradressierung
DE19526008A1 (de) Vertikal partitionierter, primärer Befehls-Cache-Speicher
DE10084982B4 (de) Steuern einer Burst-Sequenz in synchronen Speichern

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110401