Berkeley RISC
# Berkeley RISC

Das Projekt Berkeley RISC war in den Jahren 1980 bis 1984 an der University of California, Berkeley ein im Auftrag der Defense Advanced Research Projects Agency (DARPA) staatlich durchgeführtes Forschungsprojekt unter der Leitung von David A. Patterson zur Entwicklung von RISC-basierenden (Reduced Instruction Set Computer) Prozessorarchitekturen. Aus dem Projekt und dessen Ergebnissen entwickelten sich in Folge kommerzielle RISC-Mikroprozessorfamilien wie Sun SPARC und AMD Am29000. Spätere Prozessorarchitekturen wie DEC Alpha und die ARM-Architektur wurden stark von den Ergebnissen beeinflusst.

## Allgemeines

Die Idee des Projektes basierte auf der Beobachtung, dass die meisten Maschinenprogramme nur einen Bruchteil der in CISC-Architekturen (Complex Instruction Set Computer) verfügbaren Hardware verwenden. Die Beschränkung auf wenige und einfache Maschinenbefehle im Rahmen von RISC ermöglicht ein einfacheres und schnelleres Chipdesign bei weitgehend gleichbleibend leistungsfähiger Software.

Die erste Projektlinie wurde als RISC I, auch als Gold bezeichnet, startete 1980 und war als Seminar zu dem Thema VLSI-Design ausgelegt. Erste Ergebnisse wurden 1981 publiziert. Der RISC-I-Modellprozessor bestand aus 44.500 Transistoren und konnte 31 Maschinenbefehle in 78 Registern zu je 32 Bit verarbeiten. Die Kontroll- und Steuereinheit des RISC I nahm nur rund 6 % der Chipfläche in Anspruch, während damalige CISC-Prozessoren rund 50 % der Chipfläche für die Steuereinheit benötigten.

Die zweite parallel gestartete Projektlinie RISC II, auch als Blue bezeichnet, verlief langsamer bis zum Projektende. Durch den langsameren Verlauf konnten Verbesserungen gegenüber RISC I realisiert werden, unter anderem eine Pipeline und erweiterter Registersatz bei gleichzeitiger Reduktion der Chipgröße auf 39.000 Transistoren. Weiters wurde ein neuartiger englisch Instruction-Format Expander integriert, welcher es erlaubte bestimmte Maschinenbefehle im externen Speicher von 32 Bit auf 16 Bit zu verkürzen, wobei dieser Maschinenbefehle intern auf die vollen 32 Bit erweitert wurden. Dadurch konnte eine bessere Codedichte im Speicher erreicht werden. Die Ideen dazu fanden unter anderem bei dem Thumb-Befehlssatz der ARM-Prozessoren spätere Anwendung.

