MIPS-Architektur

Die MIPS-Architektur (Microprocessor without interlocked pipeline stages, etwa "Mikroprozessor ohne Pipeline-Sperren") ist eine RISC-Prozessorarchitektur, die ab 1981 von John Hennessey und seinen Mitarbeitern an der Stanford Universität entwickelt wurde.
MIPS-Prozessoren wurden von Silicon Graphics in Unix-Workstations (z.B.: SGI Indigo2) und Unix-Servern (z.B.: SGI Origin 2000) eingesetzt. Früher boten auch andere Workstation-Hersteller wie z.B. die Digital Equipment Corporation (DEC) Maschinen mit MIPS-Prozessoren an. Beispielsweise bestückten Siemens bzw. SNI ihre Server der RM-Serie mit MIPS-Prozessoren der R4000, R5000 und R10000 Familie.
Es gab Versuche, MIPS-Prozessoren mit Hilfe der ECL-Technik zu beschleunigen. Man verwendete dazu den Typ Mips R6000, letztlich eine ECL-Variante des Mips R3000. Dieser Prozessortyp wurde in Computern des Typs CDC 4680 der Firma Control Data Corporation eingesetzt.
Ein Befehl in diesen Prozessoren wird in mehreren Stufen in einer Pipeline abgearbeitet, so dass mehrere Befehle in unterschiedlichen Bearbeitungsschritten (etwa Befehl holen, dekodieren, ausführen, Ergebnis rückschreiben) gleichzeitig im Prozessor sein können. Falls ein nachfolgender Befehl auf das Ergebnis eines vorangehenden angewiesen ist, muss dieser Befehl eventuell angehalten werden, bis dieses zur Verfügung steht. Dies wird normalerweise durch Sperren (Locks/Stalls) erreicht. Eine andere Möglichkeit der Verarbeitung solcher Datenhürden ist das sogenannte "Forwarding", bei dem die für den folgenden Befehl benötigten Rechenergebnisse direkt nach Berechnung zum nächsten Befehl geleitet werden, statt das Ende des aktuellen Befehlszyklus' abzuwarten.
Die MIPS-Architektur verzichtet auf solche Sperren und verlangt vom Assemblersprachenprogrammierer oder Compiler entsprechende Maßnahmen wie Umsortierung oder das Einfügen von NOP (No Operation)-Befehlen. Dadurch kann die Architektur einfach gehalten werden.
Ein weiterer Mechanismus, der zur Beschleunigung der MIPS-Architektur dient, ist das sogenannte Superpipelining. Im Gegensatz zu räumlich parallelen Architekturen (z.B.: VLIW-Prozessoren) wird hier eine zeitliche Parallelität der Befehlsabarbeitung durch Unterteilung der Befehlspipeline in mehr Stufen erreicht. So entsteht eine feinere Unterteilung des Fließbandes. Die Stufen der Pipeline haben auf diese Weise eine kürzere Durchlaufzeit und so kann die Taktrate erhöht werden. Superpipelining wurde erstmals in den MIPS R4000 Prozessor implementiert.
MIPS-Prozessoren werden häufig in Embedded Systemen eingesetzt. Dazu zählen z.B. Cisco-Router, BMW Navigationssysteme, Sony- und Nintendo-Spielkonsolen.
MIPS war ursprünglich eine 32-Bit Architektur, die später auf 64 Bit erweitert wurde. Die Architektur hatte Einfluss auf andere RISC-Prozessorarchitekturen, wie dem Sun SPARC, DECs Alpha-Prozessor und Hewlett-Packards PA-RISC.
Literatur
Das Standardwerk der MIPS-Architektur:
- David A. Patterson, John L. Hennessey, Computer Organization & Design, The Hardware / Software Interface, Morgan Kaufmann Publishers Inc., San Francisco, California 1997, 2nd edition, ISBN 1-558-60428-6
- David A. Patterson, John L. Hennessey, Computer Architecture - A Quantitative Approach, Morgan Kaufmann Publishers Inc., San Francisco, California 2003, 3rd edition, ISBN 1-55860-724-2
Weblinks
- MIPS Prozessoren: Bilder und Beschreibungen auf cpu-collection.de
- http://www.mips.com Site von MIPS Technologies, Inc.
Siehe auch: MIPS Computer Systems Inc., Nintendo 64, PlayStation