DE19534637A1 - Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren - Google Patents

Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren

Info

Publication number
DE19534637A1
DE19534637A1 DE1995134637 DE19534637A DE19534637A1 DE 19534637 A1 DE19534637 A1 DE 19534637A1 DE 1995134637 DE1995134637 DE 1995134637 DE 19534637 A DE19534637 A DE 19534637A DE 19534637 A1 DE19534637 A1 DE 19534637A1
Authority
DE
Germany
Prior art keywords
parallel
executed
execution
instructions
data paths
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.)
Withdrawn
Application number
DE1995134637
Other languages
English (en)
Inventor
Winfried Gehrke
Klaus Gaedke
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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to DE1995134637 priority Critical patent/DE19534637A1/de
Publication of DE19534637A1 publication Critical patent/DE19534637A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • 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

Description

Die Erfindung betrifft ein Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren nach dem Oberbegriff des Anspruchs 1.
Prozessoren, die auf dem Prinzip der Fließbandverarbei­ tung basieren, führen eine Instruktion in mehreren Teil- Operationen, als Ausführungsstufen bezeichnet, aus, wobei die Anzahl der Ausführungsstufen und ihre Funktion vari­ ieren kann. Exemplarisch werden im folgenden die ge­ bräuchlichen Ausführungsstufen "Abruf", "Dekodieren", "Lesen", "Ausführen" und "Schreiben" zur Ausführung von Instruktionen angenommen. Da alle Status-Anzeigen der Prozessoren in der Ausführungsstufe "Ausführen" aktuali­ siert werden, benötigen die Ausführungsstufen bei Pro­ grammverzweigungungen drei Leerzyklen, ehe die Programm­ verarbeitung fortgesetzt werden kann. Dies kann bei Programmen, in denen eine Vielzahl von Programmverzwei­ gungungen auftreten, zu einer erhöhten Verarbeitungszeit führen.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren zur assoziativen Steuerung von Parallelprozessoren dahin­ gehend zu verbessern, daß die Verarbeitungszeit bei Pro­ grammverzweigungungen reduziert wird.
Diese Aufgabe wird bei einem Verfahren nach dem Oberbe­ griff des Anspruchs 1 durch die im Kennzeichen dieses An­ spruchs angegebenen Merkmale gelöst.
Bei dem erfindungsgemäßen Verfahren wird wenigstens die erste Ausführungsstufe für mehrere der parallel zugeführ­ ten Instruktionsströme parallel ausgeführt. Während oder nach der Ausführungsstufe, in der die für die Ausführung einer Programmverzweigung benötigten Teil-Operationen, z. B. die Bestimmung arithmetischer oder logischer Sta­ tusanzeigen, ausgeführt worden sind, kann die Programmab­ arbeitung früher fortgesetzt werden, da die aus zuführen­ den Instruktionen nach der ergebnisabhängigen Programm­ verzweigung bereits zur Verfügung stehen und nicht erst in Abhängigkeit des Ergebnisses abgerufen werden müssen. Die Entscheidung, welche Instruktionen ausgeführt werden, wird dadurch im Gegensatz zum Stand der Technik auf eine frühere Ausführungsstufe verlagert. Dadurch werden ein oder mehrere Leerzyklen weniger benötigt.
Nachfolgend wir die Erfindung anhand eines in der Zeich­ nung dargestellten Beispiels erläutert. Darin zeigen:
Fig. 1 ein Beispiel für mehrstufige Instruk­ tionsverarbeitung nach dem Fließband­ prinzip und
Fig. 2 eine verbesserte mehrstufige Instruk­ tionsverarbeitung bei assoziativer Steuerung.
Die Fig. 1 und 2 zeigen jeweils eine fünfstufige Instruktionsverarbeitung nach dem Fließbandprinzip, die in um jeweils einen Takt zeitlich versetzte Spuren darge­ stellt sind. Die fünfstufige Instruktionsverarbeitung um­ faßt bei diesem Beispiel die Teil-Operationen "Abruf" (Fetch), "Dekodieren" (Decode), "Lesen" (Read), "Ausfüh­ ren" (Execute) und "Schreiben" (Write). Fig. 1 zeigt die mehrstufige Instruktionsausführung eines Standard-Pro­ zessors. Wenn in der ersten Spur die Teil-Operation "Ausführen" durchgeführt wird und die Statusanzeigen des Prozessors gesetzt werden, kann bei einer Programm­ verzweigung die Programmabarbeitung erst nach drei Leer­ zyklen mit dem Befehl "Abruf" fortgesetzt werden.
Fig. 2 zeigt ein Beispiel für eine erfindungsgemäß ver­ besserte mehrstufige Instruktionsverarbeitung bei einem assoziativ gesteuertem Prozessor. Hier werden in den Aus­ führungsstufen "Abruf" (Fetch) und "Dekodieren" (Decode) die bei einer Programmverzweigung möglichen Instruktionen parallel verarbeitet. Wenn in der ersten Spur die Teil- Operation "Ausführen" durchgeführt wird und die Statusan­ zeigen des Prozessors gesetzt werden, kann bei einer Pro­ grammverzweigung die Programmabarbeitung bereits nach ei­ nem Leerzyklus mit der Teil-Operation "Lesen" fortgesetzt werden. Dies ist dadurch möglich, daß die Instruktionen bereits vorhanden sind und nicht erst abgerufen und deko­ diert werden müssen. Gegenüber Fig. 1 werden somit zwei Leerzyklen eingespart, wodurch bei datenabhängigen Pro­ grammverzweigungen eine erhebliche Reduktion der Rechen­ zeit erzielt wird.

Claims (2)

1. Verfahren zur assoziativen Steuerung von Parallel­ prozessoren mittels einer Steuerung, welche n-parallelen Datenpfaden m-parallele Instruktionsströme zuführt, wel­ che die in den Datenpfaden mehrstufig ausgeführten Opera­ tionen steuern, wobei die Entscheidung über die auszufüh­ renden Instruktionen in den Datenpfaden getroffen wird, dadurch gekennzeichnet, daß wenigstens die erste Ausfüh­ rungsstufe für mehrere der zugeführten Instruktionen pa­ rallel ausgeführt wird und die Entscheidung, ob eine der parallel zugeführten Instruktionen vollständig ausgeführt wird, innerhalb der parallel ausgeführten Ausführungsstu­ fen oder in der sich der letzten parallel ausgeführten Ausführungsstufe anschließende Ausführungsstufe getroffen wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß alle Ausführungsstufen vor der Ausführungsstufe, die das Auslesen der Operanden für die auszuführende Opera­ tion bewirkt, parallel ausgeführt werden und die Ent­ scheidung über die auszuführenden Instruktionen in den Datenpfaden in der Ausführungsstufe, die das Auslesen der Operanden bewirkt, oder der sich dieser Ausführungsstufe anschließenden Ausführungsstufe getroffen wird.
DE1995134637 1995-09-19 1995-09-19 Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren Withdrawn DE19534637A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1995134637 DE19534637A1 (de) 1995-09-19 1995-09-19 Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1995134637 DE19534637A1 (de) 1995-09-19 1995-09-19 Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren

Publications (1)

Publication Number Publication Date
DE19534637A1 true DE19534637A1 (de) 1997-03-20

Family

ID=7772511

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1995134637 Withdrawn DE19534637A1 (de) 1995-09-19 1995-09-19 Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren

Country Status (1)

Country Link
DE (1) DE19534637A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3842517A1 (de) * 1987-12-17 1989-06-29 Hitachi Ltd Pipeline-datenverarbeitungssystem

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3842517A1 (de) * 1987-12-17 1989-06-29 Hitachi Ltd Pipeline-datenverarbeitungssystem

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HWANG, K., BRIGGS, F.A.: Computer Architecture and Parallel Processing, New York (u.a.), McGraw-Hill Book Company, 1984, S., 187-193 *

Similar Documents

Publication Publication Date Title
EP0689694B1 (de) Verfahren zur maschinellen erzeugung von nebenläufig bearbeitbaren befehlsgruppen aus einem programm für superskalare mikroprozessoren
DE19983098B4 (de) Mehrfach-Bitanzeige zur Behandlung von Schreib-nach-Schreib-Fehlern und zur Eliminierung von Bypass-Komparatoren
DE4430195B4 (de) Verfahren zur Auswertung von Booleschen Ausdrücken
DE4434529A1 (de) Verfahren zum Verarbeiten eines Befehls mit Einsatzbedingung und Vorrichtung dazu
DE3307194C2 (de)
DE2617485A1 (de) Verfahren und schaltungsanordnung zur abarbeitung von mikrobefehlsfolgen in datenverarbeitungsanlagen
DE19534637A1 (de) Verfahren zur verbesserten assoziativen Steuerung von Parallelprozessoren
DE102005001679A1 (de) Mikroprozessor-Einrichtung, und Branch-Prediktions-Verfahren
DE2906685A1 (de) Instruktionsdecodierer
DE69836056T2 (de) Prozessor mit verringerter Zahl von bedingten Befehlen
DE10028064B4 (de) Computersystem mit ROM-Korrektureinheiten
DE10101949C1 (de) Datenverarbeitungsverfahren
DE19614480C2 (de) Addierwerk mit einer Vorermittlung der führenden Nullstellen und Verfahren
DE19549468C2 (de) Compiler
DE10206830B4 (de) Verfahren und Anordnung zur Zusammenführung von Daten aus parallelen Datenpfaden
DE3133742C2 (de) Zentraleinheit einer mikroprogrammierten digitalen Mehrbit-Rechenanlage
DE10332311B3 (de) Verfahren zur beschleunigten Ausführung eines Sprungbefehls
DE19945940C2 (de) Verfahren und Vorrichtung zur Bearbeitung bedingter Sprungbefehle in einem Prozessor mit PIPELINE-Rechnerarchitektur
EP0025952A2 (de) Schaltungsanordnung für einen Mikrocomputer mit Interpretorspeicher
DE19543880B4 (de) Verarbeitungseinrichtung, die in der Lage ist eine Anweisung spekulativ auszuführen
DE102020108131A1 (de) Verfahren zum Einführen von Redundanz, insbesondere für eine Sicherheitsprüfung von Instruktionen eines Programmcodes, zum Zeitpunkt des Kompilierens
DE19826826A1 (de) Verfahren zum Decodieren und Ausführen von Befehlen in einem RISC-Prozessor
DE19950784B4 (de) Verzweigungs-Vorhersagesystem für eine Befehlspipeline eines Computers und Verfahren zum Vorababfragen eines Befehlscodes während der Ausführung eines bedingten Sprungbefehls
EP0983545B1 (de) Risc-prozessor
DE19913377A1 (de) Mikroprozessor

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8130 Withdrawal