Was ist eine Computer-CPU-Pipeline?

Cto Takoe Konvejer Cp Komp Utera



Eine CPU-Pipeline ist eine Reihe von Verarbeitungsstufen in der zentralen Verarbeitungseinheit (CPU) eines Computers. Die Stufen sind typischerweise Abrufen, Decodieren, Ausführen und Zurückschreiben. Die Pipeline ist ein grundlegendes Designelement der meisten CPUs und ihr Zweck ist es, die Leistung zu verbessern. Indem die Verarbeitung von Anweisungen in getrennte Stufen aufgeteilt wird, kann die CPU mehrere Anweisungen gleichzeitig verarbeiten. Dies wird als Parallelität oder parallele Verarbeitung bezeichnet und kann eine erhebliche Leistungssteigerung bedeuten. Dies geht jedoch auf Kosten einer erhöhten Komplexität und kann zu Verzögerungen (bekannt als Pipeline-Stalls) führen, wenn Anweisungen außer der Reihe ausgeführt werden müssen.



In diesem Beitrag erklären wir es Was ist eine Computerprozessor-Pipeline? . Die Central Processing Unit (kurz für Central Processing Unit) ist ein wichtiger Teil des Computers, der wie das Gehirn funktioniert. Und wir wissen es bereits. Aber was wir vielleicht nicht wissen, sind die Techniken, die die CPU effizient machen. Eine dieser Techniken ist Verrohrung . Wenn du wissen willst Was ist eine Pipeline-CPU und wie Pipelining die CPU-Leistung verbessert Dann lesen Sie diesen Beitrag.





Was ist eine Computer-CPU-Pipeline?





Was ist eine Computer-CPU-Pipeline?

In der Informatik ist eine Anweisung ein Befehl, der von einem Programm an den zentralen Prozessor gegeben wird. Es besteht aus Maschinensprachencode, den die CPU versteht und ausführt. Beispiel: |_+_| ist eine Anweisung, mit der die CPU angewiesen wird, Informationen im RAM zu speichern. Pipelining ist eine Technik bei der Entwicklung moderner Prozessoren verwendet. Das erhöht den gesamten Befehlsdurchsatz (Anzahl der pro Sekunde ausgeführten Anweisungen) durch Aufteilen der Anweisungen in Teilaufgaben, die die CPU parallel verarbeiten kann.



Teamviewer-Audio funktioniert nicht

Was ist ein Pipeline-Prozessor?

Eine Pipeline-CPU arbeitet nach dem Prinzip des Pipelining und zerlegt einen Satz von Anweisungen in eine Reihe von Teilaufgaben, wobei jede Teilaufgabe eine Operation ausführt. Die Pipeline hat 2 Endpunkte: Eingang und Ausgang . Zwischen diesen Enden werden mehrere Teilaufgaben so akkumuliert, dass der Ausgang der einen Teilaufgabe mit dem Eingang der nächsten Teilaufgabe verbunden ist. Daher führt die Pipeline-CPU gleichzeitig mehr als eine Teilaufgabe aus.

beste Twitter App für Windows 10

Grundstruktur der CPU-Pipeline

Lesen Sie auch: Erläuterung von Topologietypen in einem Computernetzwerk .



Wie verbessert Pipelining die Prozessorleistung?

Im Allgemeinen kann die CPU in den folgenden Fällen eine Anweisung unterbrechen. 4 Teilaufgaben (auf einer sehr einfachen Ebene):

  • Bringen – Anweisungen aus dem Speicher abrufen.
  • entziffern - Dekodierungsanweisungen.
  • Erfüllen - Ausführung von Weisungen.
  • Schreiben – Zurückschreiben des Ergebnisses in den Speicher.

Nun nehme an Die CPU hat einen dedizierten Block, um jede dieser Teilaufgaben auszuführen. . Während ein Block eine Teilaufgabe ausführt, befinden sich die restlichen CPU-Blöcke im Leerlauf und tun während dieser Zeit nichts. Das Pipelining nutzt diese Leerlaufeinheiten aus, indem es sie verwendet, um andere in der Warteschlange befindliche Befehle zu verarbeiten.

Lassen Sie uns dies anhand eines Beispiels verstehen. Sehen Sie sich die folgende Abbildung an:

jederzeit Videokonverter

Nicht-Pipeline-CPU vs. Pipeline-CPU

Die obige Abbildung zeigt, wie ein Satz von zwei Anweisungen in einer Umgebung ohne Pipeline-CPU und in einer Umgebung mit Pipeline-CPU ausgeführt wird. Wie Sie sehen können, benötigt eine CPU ohne Pipeline 8 Zyklen, um 2 Anweisungen auszuführen, während eine CPU mit Pipeline denselben Befehlssatz in nur 5 Zyklen ausführt.

Genau betrachtet verwendet die Pipeline-CPU ihren Fetch-Block, um die erste Unteraufgabe der zweiten Anweisung auszuführen, während ihr Decodierungsblock bereits die zweite Unteraufgabe der ersten Anweisung ausführt. Daher verwendet er den zweiten Block zur gleichen Zeit wie den ersten Block, der ansonsten in einer nicht-pipeline-Umgebung im Leerlauf wäre.

Das Erhöhen der Ausführungsgeschwindigkeit eines gegebenen Befehlssatzes erhöht daher die Geschwindigkeit des Prozessors. Und so verbessert Pipelining die Prozessoreffizienz. Wichtig hier zu beachten besteht darin, dass das Pipelining die Zeit, die der Prozessor benötigt, um eine Anweisung auszuführen, nicht verringert. Vielmehr erhöht es die Anzahl der Befehle, die die CPU gleichzeitig verarbeiten kann. Das Erhöhen der Anzahl von Subtasks bedeutet also nicht wirklich, dass eine Pipeline-CPU schneller ist als eine Nicht-Pipeline-CPU. Tatsächlich kann eine CPU ohne Pipeline weniger Zeit benötigen, um eine einzelne Anweisung auszuführen, als eine CPU mit Pipeline, abhängig von der Anzahl der beteiligten Pipeline-Stufen (Anzahl der Teilaufgaben).

Ich hoffe, die obige Erklärung macht deutlich, was die CPU-Pipeline eines Computers ist. Wenn Sie Zweifel haben, teilen Sie diese bitte im Kommentarbereich unten mit.

Google Wörterbuch Firefox

Verbessert Pipelining die Prozessorleistung?

Die Pipeline-Architektur erhöht die Anzahl der pro Prozessorzyklus verarbeiteten Befehle. Durch Erhöhen des Befehlsdurchsatzes wird die Gesamtleistung der CPU erhöht. Besteht der Befehlssatz jedoch aus komplexen Befehlen (z. B. Verzweigungsbefehlen), weiß die CPU nicht im Voraus, wo sie den nächsten Befehl lesen soll, und muss warten, bis der aktuelle Befehl vollständig ausgeführt wurde. In solchen Fällen bietet die Pipeline-Architektur möglicherweise keine CPU-Effizienz.

Verlängert Pipelining die Ausführungszeit?

Pipelining erhöht die Anzahl der Befehle, die gleichzeitig in jedem Taktzyklus ausgeführt werden. Dies verlängert jedoch nicht notwendigerweise die Zeit, die zum Ausführen einer einzelnen Anweisung benötigt wird. Zum Beispiel ist Pipelining nicht zum Ausführen von Verzweigungsbefehlen geeignet, was die sequentielle Ausführung auf einen anderen Pfad umleitet. Diese Desorganisation kann die Pipeline unterbrechen oder vollständig aufräumen, es sei denn, es werden geeignete Methoden eingeführt, um Probleme mit Zweigen zu lösen.

Weiterlesen: So begrenzen Sie die CPU-Auslastung für einen Prozess in Windows .

Was ist eine Computer-CPU-Pipeline?
Beliebte Beiträge