Kategorien
Dies ist eine alte Version des Dokuments!
Die Motorola 68000er-Familie, auch als 680×0 oder m68k bzw. 68k bezeichnet, ist eine Serie von CISC-Mikroprozessoren der Firma Motorola.
Eingesetzt wurden Prozessoren dieser Familie in vielen Heimcomputern wie dem Atari ST, Amiga oder Apple Macintosh, in Servern beispielsweise von Apollo, Hewlett Packard oder Sun Microsystems, aber auch in Spielekonsolen wie dem Atari Jaguar oder Sega Mega Drive. Im Bereich eingebetteter Systeme sind Abkömmlinge dieser Familie (683xx) bis heute im Einsatz.
Alle Prozessoren dieser Serie haben einen einfachen aber mächtigen Befehlssatz mit vielen Adressierungsarten und Operandengrößen von 8, 16 und 32-Bit. Es existiert beispielsweise der Datentransferbefehl „move“, der als echter Zweiadressbefehl ein Datum von einer Speicherstelle zur anderen kopieren kann, ohne dabei den Umweg über ein CPU-Register zu gehen. Die Byte-Reihenfolge der 68k Familie ist Big-Endian.
http://www.cpu-collection.de/?tn=1&l0=cl&l1=68040
Successor to the Motorola 68030 and followed by the 68060 - not 68050. There was no 68050. The even numbers (68000, 68020, 68060) were reserved for major revisions to the 680×0 core. The odd numbers (68010, 68030, 68050) were minor upgrades from the previous chip. For example, the Motorola 68010 was a Motorola 68000 with some minor enhancements and modifications to some user/superuser instruction assignments. The Motorola 68030 was a Motorola 68020 with an MMU and more minor enhancements. The 68050 would have been a 68040 with some bugs fixed, which didn't really warrant a new name so it was sold as a 68040.
The 68040 was the first 680×0 family member with an on-chip FPU. It also had split instruction and data caches. It was fully pipelined, with six stages.
The 68LC040 is a 68040 without a built-in math coprocessor (FPU), the 68EC040 a 68040 without a memory manager or built-in FPU.
Mitglieder der 68k-Familie
Übersicht über Amiga-Prozessoren:
--------------------------------------------------------------------------- | Feature | 68000 | 'EC000 | 68010 | 68020 | 68030 | 68040 | 68060 | --------------------------------------------------------------------------- | Data bus | 16 8/16 16 8/16/32 8/16/32 32 32 | | Addr bus | 23 23 23 32 32 32 32 | | Virtual memory | - - Yes Yes Yes Yes Yes | | Instruct Cache | - - 3 256 256 4096 8192 | | Data Cache | - - - - 256 4096 8192 | | Memory manager | <+ (68451 or 68851) +> 68851 Yes Yes Yes | | FPU interface | - - - 68881 or 68882 Internal FPU | | built-in FPU | - - - - - Yes Yes | | Burst Memory | - - - - Yes Yes Yes | | Bus Cycle type | <++++++++ asynchronous +++++++> both synchronous | | Data Bus Sizing| - - - Yes Yes use 68150 | | Power (watts) | 1.2 .13-.26 .13 1.75 2.6 4 - 6 3.9-4.9| | at frequency of| 8.0 8-16 8 ? ? 25-40 50-66 | ---------------------------------------------------------------------------
Die Serie beginnt 1979 mit dem Motorola 68000. Er besitzt intern 32-Bit-Register, einen mit 32-Bit adressierten linearen Adressraum, eine 16-Bit-ALU sowie einen 16-Bit-Datenbus. Nach außen hat er nur 24 Adressleitungen, real benutzbar sind also nicht 4 GB, sondern nur 16 MB Speicher.
Der Motorola 68008 ist eine Version des 68000 mit einem 8 Bit breiten Daten- und einem 20 Bit breiten Adressbus. Neben ihrer Verwendung als Hauptprozessor beispielsweise im Sinclair QL wurde diese CPU gerne als Controller in der Steuerungstechnik eingesetzt.
Wenig erfolgreich war der Motorola 68010, der einige Fehler des 68000 behob. Speziell wurde der Umgang mit Speicherzugriffsfehlern verbessert, was zur ordentlichen Unterstützung einer MMU notwendig war. Außerdem erhielt die Pipeline einen speziellen Modus, der kurze Schleifen aus zwei Befehlen deutlich beschleunigte, indem diese ohne wiederholtes Lesen der Befehle ausgeführt wurden.
Der Motorola 68012 war eine Variante des 68010 bei dem zusätzliche Adressleitungen die Adressierung von bis zu 2 GB Speicher erlaubten.
Mit dem Motorola 68020 wurde der Prozessor komplett auf 32-Bit umgestellt, verfügte erstmals über einen Cache für Instruktionen (Größe: 256 Byte) und konnte problemlos mit der FPU 68881 bzw. 68882 oder der MMU 68851 eingesetzt werden. Der preisgünstiger 68EC020 hatte jedoch nur 24 Adressleitungen herausgeführt.
Der Motorola 68030 erhielt eine integrierte programmierbare MMU, mit deren Hilfe Virtuelle Speicherverwaltung möglich wird, und getrennte Cachespeicher für Daten (256 Bytes) und Befehle (256 Bytes). Dem 68EC030 oder 68EC040 fehlte die interne MMU.
Die FPU wurde mit dem Motorola 68040 auf dem Chip integriert sowie der Level-1-Cache auf 4 KB vergrößert. Durch interne Taktverdoppelung bringt ein 68040 mit 25 MHz etwa die Integer-Rechenleistung eines mit 50 MHz getakteten 68030. Beim 68LC040 fehlte jedoch die FPU oder war wegen eines Defekts abgeschaltet.
Der Motorola 68060 bot eine deutliche Leistungsverbesserung gegenüber dem 68040; er ließ Taktfrequenzen von bis zu 75 MHz zu (erhältlich waren meist aber Taktfrequenzen von 50Mhz) und konnte dank „SuperScalar“ bis zu zwei Integerinstruktionen pro Takt ausführen. Er wurde aber hauptsächlich für eingebettete Anwendungen eingesetzt, da die Prozessoren von Intel aufgrund der wesentlich größeren Stückzahlen sehr viel günstiger waren, bei Servern nun hauptsächlich RISC-Prozessoren Verwendung fanden und mit dem PowerPC bereits ein markttechnischer Nachfolger im PC- und Workstation-Bereich zur Verfügung stand. Außer in einigen erweiterten Amiga-Computern und als eingebettetes System fand der Motorola 68060 praktisch keine Anwendung mehr.
Weiterentwicklungen mit verändertem und teilweise erweitertem Befehlssatz stellen die Motorola Coldfire und Motorola Dragonball Prozessoren dar, letztere kommen in den PDAs von Palm zum Einsatz.
Typische 68k-Betriebssysteme sind OS-9, AmigaOS, Atari-TOS, Mac OS, MiNT, Linux68k, NetBSD und OpenBSD.