# MU6-Rechner
## Harvard-Architektur
- Trennung von Daten und Befehlsbus
  - In einem Takt können Daten geholt/geschrieben und ein Befehl geholt werden
  - Durchsatz wird deutlich erhöht
- Adressregister erhält einen Addierer, um Blocktransfers von Daten zu ermöglichen
- Zurückschreiben der letzten Adresse in ein Register erfordert Zugriff auf C-Bus

## Vergleich Harvard- / [Von-Neumann-Architektur](Prozessorkonzepte.md#von-neumann-rechner-speicherprogrammierter-rechner)

| Harvard                                                   | Von Neumann                            |
|-----------------------------------------------------------|----------------------------------------|
| je ein Befehls- und Datenbus                              | Nur ein Bus für Befehle und Daten      |
| schnellerer gleichzeitiger Zugriff auf Programm und Daten | Kein Programm Fetch bei Datenzugriffen |
| ![image_149.png](image_149.png)                           | ![image_150.png](image_150.png)        |

## Datenpfad mit Harvard-Architektur
![image_151.png](image_151.png)
- Barrelshift-Einheit der ARM-Prozessoren im B-Bus hier nicht eingezeichnet
- I-MEM = Speicher für Programme / Cache
- D-MEM = Speicher für Daten / Cache
## MU6-Architektur
- Wichtigste Änderung: Trennung von Instruktions- und Datenspeicher
- Da PC immer Instruktionsadresse vorgibt
  - PC und Instruktions-Adressregister (IADR) sind identisch
  - PC taucht im Registerfile noch auf
    - sein Wert kann auf A- / B-Bus gelegt werden
- Werte im Instruktionregister können für [ALU-Operationen](MU4-5Rechner.md#mu5-verbesserte-alu) verwendet werden
- Man könnte Takte sparen
  - WENN Dout und Din nicht Register, sondern ein direkter Zugriff möglich