Flynnsche Klassifikation & Prozessoren

In diesem Beitrag geht es um Prozessoren. Es gibt die Flynnsche Klassifikation, welche die Klassifikation von Rechnerarchitekturen nach Anzahl der gleichzeitig verarbeitenden Befehls- und Datenströme ist. Die Flynnsche Klassifikation ist also sehr gut passend zu Multikern-Prozessoren. Die Flynnsche Klassifikation ist auch üblich zur Klassifikation von Befehlssätzen.

Nun etwas zu den unterschiedlichen Klassifikationen:

SISD: Single Instruction, Single Data
SISD sind oft Einzelprozessorsystem, wie ursprünglich bei von Neumann beschrieben. Sie besitzen also nur eine sequentielle Verarbeitung und machen daher nichts gleichzeitig.

SIMD: Single Instruction, Multiple Data
Beim SIMD führt der Prozessor eine Operation gleichzeitig auf mehrere Daten aus. Dies ist üblich bei modernen Prozessoren. SIMD ist auch als Befehlssatzerweiterung implementierbar.

MIMD: Multiple Instruction, Multiple Data
MIMD ist typisch für Multikernprozessoren. Mehrere Prozessorkerne führen asynchron unterschiedliche Befehle auf unterschiedlichen Daten aus und haben gemeinsamen Speicher (Shared Memory) oder eigenen Speicher pro Prozessor (Distributed Memory).

MISD: Multiple Instruction, Single Data
MISD wird in der Praxis eher seltener benutzt und implementiert. Denn dIe selben Daten werden gleichzeitig von mehreren Prozessoren verarbeitet.

Kennwerte und Ziele von Prozessoren

Für die Performance ist zum einen das Ziel, die Takte pro Befehl (Clocks per Instruction, CPI) zu minimieren. Zum anderen ist es das Ziel, die Taktrate zu maximieren und die Zahl der Prozessorkerne zu erhöhen. Nebenläufig wird auch die Energieeffizienz und die Performance pro Watt erhöht. Es wird dabei natürlich auch versucht, den Preis so gering wie möglich zu halten.

Moore’s Law

Die „Moore Law“ besagt, das sich die Anzahl der Transistoren im Prozessor ca alle 2 Jahre verdoppelt. Der „Trend“ wurde 1965 von Grodon E. Moore (Mitgründer von Intel) vorhergesagt. Ursprünglich waren dies 18 Monate. Dieser Trend wird oft Missverstanden als Performance Versprechen, dies passte zwar auch lange Zeit, ist nun aber nicht mehr gegeben, da dies kein verlässliches Naturgesetz ist. Aktuell wird eine Verlangsamung der Verdoppelung auf 3 Jahre geschätzt.

Instruction Set Architecture (ISA)

ISA ist die Befehlssatzarchitektur des Prozessors und somit die Schnittstelle zwischen der Mikroarchitektur und de Maschinencode. Die Befehlssatzarchitektur bestimmt die Programmierschnittstelle des Prozessors. Diese sind typischerweise in Assembler aufgesetzt. Architekturen wären Beispielhaft AMD64, Intel64, diverse ARM Architekturen (oft auf Smartphones zu finden bsp. ARM-V7 im Cortex A7).

Sichtbare Struktur

Die sichtbare Struktur aus Sicht des Prozessors ist folgende:

  • Speicher: Register (als Operanden nutzbare Speicherstellen in der CPU, Speichermodell des Arbeitsspeicher)
  • Speichermodell des Arbeitsspeichers
  • Native Datentypen

Wichtige Klassifikationen

Nach Datenwortbreite

Die Klassifikation kann nach der Datenwortbreite bestimmt werden. Dabei spielen z.B. die Breite der Daten (in Bit), mit denen der Prozessor intern rechnen kann eine Rolle. Bei modernen Prozessoren ist dies meist 8, 16, 32 oder 64bit. Oft, aber nicht immer, wird auch die Breite des Adressraums zur Bestimmung der Klassifikation genutzt.

Nach Art des Befehlssatzes

Es gibt folgende Befehlssatzklassifikationen:

  • Complex Instruction Set Computer (CISC)
  • Reduced Instruction Set Computer (RISC)
  • Andere wie z.B Very Long Instruction Word (VLIW)

CISC
CISC ist ein großer Befehlssatz. Redundanten Befehle sorgen hier für erhöhten Komfort bei direkter Assemblerprogrammierung. Oft gibt es unterschiedliche Ausführungszeiten pro Befehl.

RISC
RISC ist ein kleiner Befehlssatz, daher gibt es nur einfache und schnelle Befehle in diesem Befehlssatz. Typischerweise sind dies Opcodes mit uniformen Format und ist daher insgesamt einfach zu implementieren. Anwendung findet RISC in allen neuen Architekturen. (Die meisten µC enthalten RISC-Prozessoren, Moderne CISC-Prozessoren sind intern als RISC implementiert (z.B. Intel i7). Aus Softwaresicht ist es dann ein CISC Prozessor. Die Programme konvertieren die Programme dann aber so, das sie als RISC laufen.

Marvin Sengera

Marvin Sengera

Hey! Ich bin Marvin Sengera, Inhaber der Internetagentur "Binärfabrik" aus Paderborn. Ich habe mein Bachelorstudium Informatik mit Schwerpunkt Industriespionage an der Hochschule Hamm Lippstadt abgeschlossen und absolviere derzeit meinen Master in Fachrichtung "Technical Entrepreneurship and Innovation". Ich beschäftige mich rund um die Themen Informatik, Innovation & Unternehmensgründung.

Das könnte Dich auch interessieren …

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.