Motorola MC 68000 und MC 68010

Der 68000 wurde neben dem Amiga auch in Ataris ST, im Macintosh, Atari Jaguar, Sega Genesis/Mega Drive, zahllosen Spielautomaten und als Microcontroller für alle möglichen Druckertypen. Dadurch daß die 68000-Architektur so stark der DEC PDP-11 und der VAX ähnelte und sie eine gute Plattform für die Programmierung in der Sprache C darstellte war der 68000er sowie seine Nachfolger im UNIX-Bereich sehr beliebt.

MC68000

MC68000

Der 68000er Prozessor besitzt eine Adreßbreite von 24 Bit und eine Daten bzw. ALU-Breite von 16 Bit. Die Taktfrequenz liegt meist um 8 Mhz herum. Der Prozessor kann 16 Megabyte adressieren und besitzt 8 Datenregister, 8 Adreßregister (D0 - D7 bzw. A0 - A7), einen User-Stack bzw. Supervisor-Stack-Pointer (USP und SSP) und ein Register, das den internen Modus des Prozessors widerspiegelt. Die Zahl der Register ist groß genug um was damit anfangen zu können, aber immer noch klein genug damit man schnell auf Interrupts reagieren kann, die ein Sichern aller Register erfordern. Der Befehlssatz ist beinahe vollständig orthogonal, das heißt, fast alle Befehle beherrschen alle Adressiermodi.

Im Gegensatz zu etwa dem 8086 ist der 68000 intern bereits eine 32-Bit Architektur, die Umstellung auf volle 32 Bit (Daten und Adressbus, 68020) brachte fast keine Kompatibilitätsprobleme mit sich, und es waren auch keine Tricks möglich um den mit 32 Bit maximal adressierbaren Speicher von 4 GByte anzusprechen.

Der Prozessor kann, wie bereits angedeutet, in zwei Modi betrieben werden. Meist benutzt das Betriebssystem allein den Supervisor- Modus, da nur dort "gefährliche" (privilegierte) Befehle ausgeführt werden können, und alle anderen Programme den sog. User-Modus. Zusätzlich besitzt die CPU noch eine 1KByte große Vektortabelle, welche die Adressen auf 7 mögliche Interrupt-Routinen und einige Exception-Routinen (Ausnahmebehandlung) beinhaltet. Die Anfangsadresse der Tabelle bei diesem Prozessor ist IMMER Null. Ab dem MC68010 gibt es ein VBR-Register, über das sich die Anfangsadresse der Tabelle ändern läßt.

Der Prozessor unterstützt auch Direct-Memory-Access (DMA) welches die Übertragung von Daten zwischen externen Geräten und Systemspeicher ohne Prozessorbelastung beinhaltet. Er besitzt außerdem zwei Busse, einen synchronen und einen asynchronen. Der synchrone Bus dient zur Synchronisation mit anderen 8-Bit Bausteinen. Dadurch stand bei der Einführung der CPU eine Unmenge an Peripherie-Bausteinen zur Auswahl.

Der MC68008 ist die kleinere Version des MC68000. Er kann nur noch 1 MByte adressieren und besitzt auch nur noch einen 8-Bit- Datenbus, deshalb kam er in keinem Amiga zum Einsatz, dafür aber z.B. im Sinclair QL. Bei Longword- bzw. Word-Operationen braucht der MC68008 doppelt so lange wie der 68000er. Erhältlich ist er mit 8 und 10 Mhz Taktfrequenz.

68010

Beim MC68010 wurden einige Verbesserungen gegenüber dem MC68000 in der Architektur vorgenommen. Diese sind zwei neue Function-Code Register (privilegiert) mit denen er in der Lage ist, 4 lineare Speicherbereiche von je 16 MByte zu adressieren.

Ab dem MC68010 gibt es jetzt auch ein Vector-Base-Register (VBR), mit dem die Anfangsadresse der 1 KByte großen Vektortabelle verschoben werden kann. Außerdem unterstützt dieser Prozessor auch eine Virtuelle Speicherverwaltung (Siehe MC68551). Diese ermöglicht die Auslagerung von RAM-Speicher auf Massenspeicher (z.B. Festplatte). Dafür ist aber noch eine externe MMU (Memory Management Unit) erforderlich, die für diese CPU aber schwer zu bekommen ist. Deswegen lieber gleich zu einem MC68020 oder höher greifen. Die Geschwindigkeit ist gegenüber einem 68000er durch einen internen 6 Byte Mini-Cache und Befehlsoptimierung um 5% - 10% gesteigert worden. Er ist auch 100% pinkompatibel, so dass er (bei gleicher Taktfrequenz) gegen einen MC68000 ausgetauscht werden kann.

Der MC68012 wurde mangels Nachfrage seit 1989 nicht mehr hergestellt. Bis auf die Bauform (84poliges Pin Grid Array-Gehäuse - > viereckig) und einem gekürzten Adreßraum (2x2 MByte) ist er identisch mit dem MC68010.

Datenblatt: Motorola MC 68000 und MC 68010
Erscheinungsjahr : 1979
Ca. Neupreis : ?
Taktfrequenz : 8, 10, 12, 16 und 20 Mhz
Adreßbereich : 24 Bit (16 MByte)
Datenbusbreite : 16 Bit
Befehle : ?
Adressierungsmodi : ?
Register : - 8 Datenregister, 32 Bit
- 8 Adreßregister, 32 Bit
- Befehlszähler, 32 Bit
Datencache : Keiner
Instruktionscache : Keiner
Sprungcache : Keiner
Stromaufnahme : 5 V
Anzahl Pins : 64
Gehäuseformen : DIP (Dual Inline Package)
PGA (Pin Grid Array)
PLCC (Plastic Leaded Chip Carrier)
Transistoren : 68.000
Technologie : N-MOS
Strukturgröße : 3.500 nm (44 mm²)