David Schirrmeister 6bbd1deb0f update
2024-05-22 11:25:28 +02:00

4.1 KiB

Klassifikation

Eigenschaften von Prozessoren

Klassifizierung gemäß Operandenstruktur

Stackarchitektur

  • Stacks werden unabhängig von der jeweiligen Architektur verwendet
    • bei Unterprogrammaufrufen und Prarameterübergaben
  • Call-Befehl
    • pusht Rücksprungadresse und ggf. Registerstati
  • Return
    • popt Werte wieder
  • image_257.png

image_254.png

Akkumulator Architektur

  • Ausgezeichnetes Register: Akku(mulator) (ehem. ACC)
  • LOAD und STORE wirken nur auf Akku
    • expliziter Operand, an jeder Operation beteiligt
      • jede Operation braucht nur eine Adresse
  • Sehr kompaktes Befehlsformat
    • image_255.png
  • image_256.png

Register-Register-Architektur

  • RISC (LOAD-STORE-Architektur)
    • alle Operationen greifen nur auf Register zu
      • 32-512 Register verfügbar
    • nur LOAD und STORE greifen auf Speicher zu
  • Einfaches Befehlsformat fester Länge
    • image_258.png
  • alle Instruktionen brauchen in etwa gleich lange
  • image_259.png

Register-Speicher-Architektur

  • CISC (Mischung von Akkumulator- und Load-Store-Architektur)
  • Operationen greifen auf Register und/oder Speicher zu
  • Befehlsformat variabler Länge
    • mächtige Befehle
    • image_260.png
  • stark unterschiedliche Zeiten für Instruktionsausführung
  • image_261.png

Klassifizierung gemäß Busaufbau

Vergleich Harvard- / von Neumann Architektur

Bussysteme

  • Systembus = Datenbus, Adressbus, Kontrollbus, Bus zur elektrischen Versorgung der Komponenten
    • teilweise zstzl. I/O-Bus
  • image_262.png

Klassifizierung gemäß Befehlssätzen

Orthogonale Befehlssätze

Wenn Opcode, Adressierungsart und Datentyp beliebig kombiniert werden können

Vorteile Nachteile
Vereinfacht Nutzung der verfügbaren Instruktionen Sehr umfangreiche Befehlssätze

CISC Kriterien

  • Befehle unterschiedlicher Länge von 1-17 Byte
    • Speichereffizienz
    • komplexe Befehlskodierung
  • Komplexer Befehlssatz
    • Anpassung an Compiler
    • Hochsprachenkonstrukte im Assembler
      • Erleichterung der Assemblerprogrammierung
    • Mächtige Befehle
      • kurze Programme

RISC Prinzipien

  • Grundlegendes Design-Prinzip
    • Einfachheit
  • Befehle gleicher Länge (meist 32 Bit)
  • Abarbeiten mit gleicher Taktzahl
    • erlaubt Befehlspipelines
  • Eingeschränkter Befehlssatz (32-128 Befehle)
  • Explizite Lade/Speicher-Befehle (Load-Store-Architektur)
  • 3-Adress-Befehle
  • Delayed Branches

Klassifizierung gemäß Speicherorganisation

Little/Big Endian

4-Adress-Befehle

image_263.png

  • Allgemeinste Form für Befehlsformat
  • next_i = Adresse des nächsten Befehls
  • schwierig zu programmieren
  • wird für Microcode verwendet (CISC Mikroprogramme)

3-Adress-Befehle

image_264.png

  • Standard bei RISC Prozessoren (bspw. ARM 32 Bit)
  • 3 Adressen benötigen Platz
    • Format ist erst ab 32-Bit-Befehlssatz sinnvoll
  • nächste Befehlsadresse implizit
    • Sprungbefehle können implizites Verhalten ändern

2-Adress-Befehle

image_265.png

  • Standardformat für 8 und 16-Bit-Mikroprozessoren
  • Format für Intel Prozessoren
  • RISC-Prozessoren mit komprimierten Befehlssatz nutzen ebenfalls das Format
    • bspw. ARM Thumb, MIPS

1-Adress-Befehle

image_266.png

  • Zielregister ist implizit und wird ACC genannt
  • wird im MU0-Design benutzt
  • Hohe Befehlsdichte
    • geringe Flexibilität

0-Adress-Befehle

image_267.png

  • Beide Operanden und das Ziel sind implizit
  • Befehlssatz nur für Stackarchitektur möglich
    • weitere Befehle mit Operanden zum Speichern / Laden nötig
  • verwendet in Java Virtual Machine

Einordnung Prozessoren

image_268.png