- 68060
-
Der Motorola 68060 ist ein 32-Bit-Prozessor von Motorola. Er wurde 1994 als Nachfolger des Motorola 68040 veröffentlicht. Der 68060 ist der leistungsstärkste Prozessor der 680x0 Prozessorfamilie.
Inhaltsverzeichnis
Architektur
Der Motorola 68060 (meistens einfach nur 060 genannt, sprich null-sechzig) ist kein einfaches Redesign des 68040, sondern wurde komplett neu – basierend auf den Erfahrungen mit dem 68040 – entwickelt. Es wurde eine zweite Einheit für Ganzzahlberechnungen hinzugefügt und eine Erweiterung für Ganzzahl-Multiplikationen, die nur zwei Takte pro Multiplikation benötigt. Die Einheit für Gleitkommaberechnungen (FPU) wurde durch eine schnellere Variante ersetzt, dabei wurden einige Funktionen vom 68881/68882 nicht mit implementiert. Diese müssen durch eine Softwarebibliothek emuliert werden. Des Weiteren wurde eine Logik für Sprungvorhersagen (branch prediction) eingefügt. Der 68060 hat in etwa die zwei- bis dreifache Rechenleistung eines 68040 bei gleichem Takt. Das Designteam hinter dem 68060 wurde von Joe Circello geleitet.
Der 68060 hat eine dem Pentium ähnliche Architektur. Beide Prozessoren besitzen zwei superskalare in-order Pipelines. Jede Pipeline verfügt dabei jeweils über einen Befehlsdekoder. Der Dekoder zerlegt komplexe Maschinenbefehle in einfachere, bevor sie verarbeitet werden. Der eigentliche Unterschied zu dem Pentium liegt in der nicht superskalar ausgeführten Gleitkommaeinheit (FPU) des 68060. Daher erreicht der 68060 im Gleitkommabereich auch nur etwa ein Drittel der Geschwindigkeit eines Pentiums bei gleichem Takt. Im Gegensatz dazu sind die ganzzahligen Multiplikations- und Bitschiebeoperationen (bit shifting) wesentlich schneller. Der 68060 kann außerdem in der Adressierungs-Einheit einfache Befehle ausführen, er kann Resultate zwei Rechnenzyklen von der Adressierungslogik (ALU) zur Verfügung stellen. Für diese Optimierungen wurde eine Vielzahl an kompiliertem kommerziellem Code analysiert. Darüber hinaus verfügt der 68060 gemäß der Harvard-Architektur über zwei MMUs, eine für Daten- und eine für Instruktionen-Paging.
Der 68060 ist der erste und einzige Vertreter der 68000er-Familie der über Powermanagement-Funktionen verfügt. Die CPU ist in der Lage verschiedene Logikblöcke dynamisch je nach Auslastung herunter/herauf zu takten oder sie vollständig zu deaktivieren. Auf die Funktionen kann per Software Zugriff genommen werden.
Der 68060 war die letzte Entwicklung der Motorola 68000er-Familie. Motorola brach die Weiterentwicklung zugunsten ihrer PowerPC Prozessoren ab. Der 68060 wurde zuletzt in einigen späten Amiga-Modellen und dessen Turbokarten-Erweiterungen eingesetzt. Es gab auch einige Atari-ST-Abkömmlinge die ebenfalls von der letzten Generation Gebrauch machten. Der TOS-Kompatible Medusa Hades mit 68060 Prozessor, sowie die Erweiterungskarten CT60 und CT63 für den ATARI Falcon gehören dazu. Apple sowie ein Großteil der Unix-Welt stiegen nach dem 68040 auf RISC basierende Prozessoren um. Der 68060 wurde mit einer Geschwindigkeit von 50 MHz eingeführt (basierend auf Motorolas 0,6-µm-Herstellungsprozess). Spätere Modelle erfuhren eine Reduzierung der Struktrubreite auf 0,42-µm und konnten so mit 66 MHz, teilweise sogar mit 75 MHz betrieben werden. Einige der EC- und LC-Varianten wurden sogar mit 80 MHz oder gar 90 MHz betrieben. Die 0,42-µm-Prozessoren waren sehr selten, da sich Motorola auf seine PowerPC-Prozessoren konzentrierte.
Die Entwicklung des 68000er Kerns wurde von Motorola für embedded Zwecke weitergeführt. Der Kern wurde hierfür um zusätzliche Peripherie erweitert. Zusätzlich wurde die Komplexität reduziert, um den Stromverbrauch und die Herstellungskosten zu senken. Aus diesen Änderungen ging die Motorola Coldfire und Motorola Dragonball Familie hervor, die heute in vielen embedded Geräten (wie Mobiltelefone und PDAs) eingesetzt wird.
Geschichte
Die Prozessoren mit geraden Nummern (68000, 68020, 68040, 68060) waren für größere Änderungen an der Architektur vorgesehen. Die ungeraden Nummern (68010, 68030, 68050, 68070) waren dagegen für Architekturoptimierungen. Die 68050 und 68070 Prozessoren waren zwar geplant, wurden aber nie produziert.
Zum Beispiel: der Motorola 68010 (und auch der eigenartige 68012) waren ein 68000 mit Optimierungen für Schleifenoperationen und die Möglichkeit nach einem Seitenfehler (pagefault) eine Instruktion zu pausieren. Dies ermöglichte den Einsatz von virtuellem Speicher (virtual memory) unter dem Einsatz einer Speicherverwaltungseinheit (MMU). Ansonsten gab es keine weiteren Änderungen an der Architektur. Ähnlich war es auch bei dem 68030. Dieser war im Prinzip nur eine Die-Shrink Version des 68020, bei der die MMU und ein zusätzlicher Datencache (256 Byte) in die CPU integriert wurden. Den 68030 gab es mit einer Geschwindigkeit von bis zu 50 MHz.
Die Änderungen vom 68000/68010 zum 68020/68030 waren dagegen sehr umfangreich.
Varianten
- 68060 – vollständige CPU mit FPU und MMU
- 68LC060 – deaktivierte FPU, MMU vorhanden
- 68EC060 – FPU und MMU deaktiviert
Technische Merkmale
Arbeitsfrequenzen 50 MHz, 60 MHz, 66 MHz, 75 MHz Betriebsspannung - Vcore 3,3 V
- I/O 5 V
Arbeitstemperatur −40 °C bis 70 °C Herstellungsprozess static-CMOS 0,6 μm und später 0,42 μm Bauweise PGA 206 (kompatibel zum 68040), TBGA 304 31*31*1.7P1.27 Datenbus 32 Bit Adressbus 32 Bit Instructionset CISC (intern ähnlich der RISC-Arbeitsweise durch Zerlegung von Macro-Ops in Micro-Ops) Cache - 8kB DCache (4-fach assoziativ)
- 8kB ICache (4-fach assoziativ)
- 96 Byte FIFO Instruction Buffer
- 256 Entry Branch Cache
- 64 Entry ATC MMU Buffer (4-fach assoziativ)
Register - 8 für Adressoperationen
- 8 für Datenoperationen
Transistoren ~2.500.000 Performance - ~88 Mips @ 66 MHz
- ~110 Mips @ 75 MHz
- ~36 MFlops @ 66 MHz
Trivia
- es sollen auf 100/133 MHz übertaktete Varianten existieren (teilweise in Verbindung mit Wasserkühlung)
- LC und EC Varianten sind defekte CPUs bei denen die FPU- oder MMU-Logik zuviele Fehler aufweisen und deshalb deaktiviert wurden
- die Viper 1260 (eine Amiga 1200 Turbokarte) nutzte einen 68060 mit 50 MHz übertaktet auf 56 MHz
- die Apollo 1260 (eine Amiga 1200 Turbokarte) lässt sich mit einem 68060 Rev.6 bis 80 MHz takten
- die CT60 (eine ATARI Falcon Erweiterungskarte) erreicht mit Prozessoren der Rev.6 Taktraten von 90 MHz bis über 100 MHz.
Weblinks
Wikimedia Foundation.