MC68000

Οικογενεια επεξεργαστων Motorola 680×0

vinieta-featureΉταν Σεπτέμβριος του 1979 όταν ο 16μπιτος επεξεργαστής της Motorola μπήκε στην αγορά. Ο Motorola 68000 ή MC68000 ήταν στην πραγματικότητα ένας 32μπιτος επεξεργαστής και μάλιστα από τους πρώτους της ιστορίας, μόνο που επειδή ο δίαυλός του, καθώς και τα περιφερειακά chips ήταν 16μπιτα, η Motorola τον παρουσίαζε ως 16μπιτο. Ούτως ή άλλως, αποτελούσε ένα σχεδιαστικό άλμα σε σχέση με τον 8μπιτο προκάτοχό του, τον Motorola 6800. Έναν επίσης ισχυρό -για την εποχή του- 8μπιτο επεξεργαστή που κυκλοφόρησε το 1974. Από τον 6800 προέκυψε πρακτικά και ο MOS 6502 ένα χρόνο αργότερα, από τους ίδιους τους μηχανικούς της Motorola που είχαν στο μεταξύ μετακινηθεί στην MOS Technology. Για την ιστορία, μαζί με τον Z80 της Zilog, ο MOS 6502 ήταν οι πιο διαδεδομένοι επεξεργαστές στους home computers των τελών της δεκαετίας του ’70 και των αρχών της δεκαετίας του ’80.

Motorola 6800 (1974): Ο πρώτος 8μπιτος επεξεργαστής της Motorola, προκάτοχος του 16/32μπιτου MC68000

Επιστρέφοντας στον MC68000, το 1979 οπότε κυκλοφόρησε, ήταν ένας από τους πιο ισχυρούς και μοντέρνους επεξεργαστές για προσωπικούς υπολογιστές. Ας μην ξεχνάμε ότι μόλις ένα χρόνο πριν έχει παρουσιαστεί ο 16μπιτος Intel 8086, που θα αποτελέσει τη βάση της αρχιτεκτονικής x86, πάνω στην οποία θα χτιστεί το πρότυπο του ΙΒΜ-PC το 1980-81. Ο επεξεργαστής της Motorola ήταν πιο μοντέρνος σχεδιαστικά και πιο ισχυρός από τον ανταγωνιστή της Intel. Ο MC68000 δεν παρείχε προς τα πίσω συμβατότητα με τον 6800, παρόλο που ο σχεδιασμός του αποτελεί μετεξέλιξη του 8μπιτου προκατόχου του. Τα μοντέρνα χαρακτηριστικά του και οι ισχύς του απαιτούσαν ένα σημαντικό αντίτιμο. Αυτό είχε σαν αποτέλεσμα, ο MC68000 να χρησιμοποιηθεί κατά βάση σε UNIX workstations (σ.σ. έγινε ιδιαίτερα αγαπητός στην κοινότητα του UNIX) και λίγα χρόνια αργότερα σε κορυφαία μοντέλα home και personal computers, όπως ο Apple Macintosh, η Amiga και ο Atari ST. O κυριότερος λόγος που αποτέλεσε βάση για συστήματα UNIX, είναι ότι η σχεδιαστική καταγωγή του MC68000 πηγαίνει στα 1970 και συγκεκριμένα στον minicomputer DEC PDP-11, όπου και πρωτοσχεδιάστηκε ο πυρήνας του UNIX.

Excel (Macintosh)
Στην καρδιά του διάσημου Macintosh βρισκόταν ο MC68000, ο πρώτος επεξεργαστής της οικογένειας MC68K της Motorola

O MC68000 ήταν ο πρώτος επεξεργαστής της σειράς MC680x0 ή MC68K. Μίας σειράς επεξεργαστών της Motorola που εξελισσόταν για 15 χρόνια, αποκτώντας έξι βασικές εκδόσεις και αρκετές περισσότερες υποεκδόσεις. Ο MC68000 παρέμεινε ο πιο διαδεδομένος επεξεργαστής της σειράς στους προσωπικούς υπολογιστές, καθώς τον υιοθετούσαν μοντέλα ακόμη και δέκα χρόνια μετά την κυκλοφορία του. Γενικώς, την σειρά MC68K αγκάλιασε η Apple, καθώς όλες οι εκδόσεις των επεξεργαστών της Motorola πέρασαν από τα πολυάριθμα μοντέλα Macintosh έως και τα μέσα της δεκαετίας του ’90. Επίσης, τη σειρά αξιοποίησε και η Sun στα workstations της, ενώ κάποια μοντέλα βρήκαν τη θέση τους ακόμη και σε παιχνιδομηχανές. Εξίσου επιτυχημένη πορεία είχαν σε ενσωματωμένη μορφή (embedded) σε διάφορες ηλεκτρονικές συσκευές, όπως εκτυπωτές και modem, όπου και εξακολουθούν να αξιοποιούνται για πολλά χρόνια.

Motorola 68000

MC68000

Ήδη από το πρώτο μέλος της οικογένειας, τον MC68000, ο πυρήνας του επεξεργαστή ήταν 32μπιτος. Τόσο οι καταχωρητές, όσο και οι μικροεντολές ήταν μήκους 32 bits και μόνο η επικοινωνία με τον «έξω κόσμο» περιοριζόταν στα 16 bits. Με τεχνολογία κατασκευής NMOS και 68.000 τρανζίστορ, ο MC68000 χρονιζόταν σε συχνότητες μεταξύ 8 και 20 MHz. Οι επιδόσεις ήταν αξιοζήλευτες για την εποχή και και ξεπερνούσαν τα 2,5 MIPS (εκατομμύρια εντολές το δευτερόλεπτο) στην έκδοση των 12 MHz.

Τα βασικότερα τεχνικά χαρακτηριστικά του MC68000 του 1979 είναι τα ακόλουθα:

  • Αρχιτεκτονική CISC (Complex Instruction Set Computer)
  • Τεχνολογία NMOS (CMOS στον MC68HC000), 68.000 τρανζίστορ
  • Οκτώ 32μπιτοι καταχωρητές δεδομένων γενικής χρήσης (D0-D7)
  • Οκτώ 32μπιτοι καταχωρητές διευθύνσεων μνήμης (A0-A7)
  • 16μπιτος εξωτερικός δίαυλος
  • 24 bit διευθυνσιοδότηση μνήμης (μέγιστη μνήμη 16 MB)
  • 56 μικροεντολες μήκους 16 – 32 bits
  • Ταση πυρήνα: 5 Volt

Ο MC68000 δεν διέθετε ούτε δυνατότητα αξιοποίησης εικονικής μνήμης (virtual memory), κάτι που θα έρθει με τον MC68010 το 1983, ούτε μονάδα διαχείρισης μνήμης (MMU). Το εν λόγω μοντέλο επεξεγαστή βρήκε τη θέση του σε πολύ σημαντικά μοντέλα προσωπικών υπολογιστών της δεκαετίας του ’80. Αρχικά αξιοποιήθηκε στους Lisa και Macintosh της Apple και στη συνέχεια έγινε βάση για τους πιο ισχυρούς 16μπιτους home computers της ίδιας δεκαετίας, την Amiga και τον Atari ST. Μία ειδική έκδοσή του, ο MC68008, δηλαδή ο MC68000 με 8μπιτο δίαυλο, αποτέλεσε την καρδιά του Sinclair QL, του πιο οικονομικά προσιτού personal computer της εποχής του. Επίσης χρησιμοποιήθηκαν στα UNIX workstations της Sun και της Apollo. Τέλος, ήταν ο ένας από τους δύο επεξεργαστές της παιχνιδομηχανής Sega Genesis, στην έκδοση MC68HC000 (CMOS).

ΥΠΟΕΚΔΟΣΕΙΣ MC68000

  • MC68008: Ειδική έκδοση του MC68000 με «κομμένο» δίαυλο στα 8 bits. Χρησιμοποιήθηκε στον Sinclair QL.
  • MC68HC000: CMOS τεχνολογίας με χαμηλότερη κατανάλωση ενέργειας. Κατασκευάστηκε το 1985 σε συνεργασία με τις Hitachi και Toshiba
  • MC68EC000: Φθηνότερη και πιο συμπαγής έκδοση, με 8μπιτο ή 16μπιτο δίαυλο, για embedded εφαρμογές

Motorola 68010

MC68010

Πρακτικά ο MC68010 δεν αποτελεί ξεχωριστό μοντέλο της οικογένειας MC68K, αλλά μία έκδοση του MC68000 (όπως ο MC68008). Τυπικά όμως, το 1983 οπότε κυκλοφόρησε, θεωρήθηκε διάδοχος του MC68000. Από πλευράς αρχιτεκτονικής ήταν μία σχεδόν πανομοιότυπη 16/32bit CPU με τον προκάτοχό του. Επιπλέον από εκείνον διέθετε δυνατότητα αξιοποίησης virtual memory καθώς και συνδυασμού με εξωτερική Μονάδα Διαχείρισης Μνήμης (MC68451). Μπορούσε να τοποθετηθεί στις μητρικές κάρτες του MC68000, αλλά δεν διέθετε 100% συμβατότητα με εκείνον. Το χαρακτηριστικό «loop mode» αποτελούσε μία πρώιμη μορφή ενσωματωμένης μνήμης cache, κάτι που προσέδιδε αύξηση επιδόσεων της τάξης του 10% σε αντίστοιχο χρονισμό.

Ο MC68010 είχε ελάχιστη διάδοση και μόνο σε κάποια UNIX workstations της AT&T, της HP και της Sun. Επίσης προσφέρθηκε σαν αναβάθμιση σε μοντέλα Amiga και Atari ST. Άλλωστε οι περισσότεροι κατασκευαστές περίμεναν το επόμενο μοντέλο, με ενσωματωμένη πλέον την MMU, που κυκλοφόρησε μόλις ένα χρόνο αργότερα.

Motorola 68020

MC68020

O MC68020 υπήρξε το πρώτο πλήρως 32μπιτο μέλος της οικογένειας MC680×0, σηματοδοτώντας την 2η γενιά της σειράς. Κυκλοφόρησε το 1984, σε πέντε βασικές εκδόσεις με ταχύτητες ρολογιού από 12 έως 33MHz. Η ενσωμάτωση, για πρώτη φορά, μνήμης cache των 256 bytes, ήταν αρκετή για να εκτοξεύσει τις επιδόσεις του, που στα 33 MHz άγγιζαν τα 9MIPS.

Από τεχνικής πλευράς, ο ΜC68020, όπως και ο προκάτοχός του, ήταν ένας 32μπιτος επεξεργαστής αρχιτεκτονικής CISC. Στα νέα χαρακτηριστικά του συμπεριλαμβάνεται η 32μπιτη αριθμητική και λογική μονάδα (ALU), το βελτιωμένο σετ 101 μικροεντολών και η δυνατότητα ελέγχου έως και 8 συνεπεξεργαστών. Ο επεξεργαστής αυτός της Motorola, διέθετε 15 συνολικά 32μπιτους καταχωρητές, ενώ μπορούσε να έχει πρόσβαση σε έως και 4GB μνήμης. Στην αγορά, οι MC68020/68EC020 γνώρισαν επιτυχία μέσα από μία σειρά υπολογιστών, όπως οι Macintosh II και LC, η Amiga 1200, αλλά και workstations όπως οι Sun 3 και η οικογένεια HP 9000/300.

ΥΠΟΕΚΔΟΣΕΙΣ MC68020

  • MC68EC020: Φθηνότερη έκδοση με “κομμένο” δίαυλο στα 24 bit. Παρέμεινε έως και τη δεκαετία του ’90 στο εσωτερικό πολλών εκτυπωτών λέιζερ, λόγω της ευέλικτης διευθυνσιοδότησής του.

Motorola 68030

MC68030

Ο δεύτερος πλήρως 32μπιτος επεξεργαστής της οικογένειας, ο MC68030, κυκλοφόρησε το Σεπτέμβριο του 1986. Από τεχνικής πλευράς, ο ΜC68030 πρακτικά μοιραζόταν τον ίδιο πυρήνα με τον MC68020, αλλά oι νεότερες κατασκευαστικές διαδικασίες επέτρεψαν τη συγκέντρωση περισσότερων τρανζίστορ στο εσωτερικό του. Η αύξηση αυτή, κατά 35% περίπου (275.000 από 200.000 τρανζίστορ) σημαίνει ότι στο εσωτερικό του MC68030 κατάφερε να βρει θέση και η MMU (Memory Management Unit). Ωστόσο, ούτε και τώρα συνοδεύεται από Μονάδα Κινητής Υποδιαστολής (FPU – Floating Point Unit) και ο επεξεργαστής μπορούσε να συνοδευτεί μόνο από εξωτερικό μαθηματικό συνεπεξεργαστή (MC68881 και MC68882). Τέλος, ο MC68030 αξιοποιούσε καλύτερα και ταχύτερα την ενσωματωμένη μνήμη cache που παρέμεινε στα 256 bytes.

Όλα τα παραπάνω έχουν σαν αποτέλεσμα την αύξηση των επιδόσεων κατά 30% περίπου (με αντίστοιχο χρονισμό) αν και η διαφορά εκτοξεύεται στις κορυφαίες εκδόσεις των MC68020 και MC68030 από 5,36 MIPS (στα 33 MHz) στα 18 MIPS (στα 50 MHz) αντίστοιχα. Για να γίνει όμως αυτό εφικτό θα πρέπει να χρησιμοποιηθεί μητρική με το νεότερο δίαυλο για τον MC68030 (σ.σ. ο επεξεργαστής μπορούσε να χρησιμοποιηθεί και στα mainboards του MC68020).

Ο MC68030 χρησιμοποιήθηκε σε συστήματα της Apple (Macintosh IIsi), τις Amiga 3000, το NeXT Computer, το Atari Falcon 030, καθώς και σε desktop workstations της Sun.

ΥΠΟΕΚΔΟΣΕΙΣ MC68030

  • MC68EC030: Φθηνότερη έκδοση χωρίς MMU και με μέγιστο χρονισμό τα 40 MHz. Xρησιμοποιήθηκε στην Amiga 4000.

Motorola 68040

MC68040

Ο MC68040, ο πρώτος υπερβαθμωτός (superscalar, 6 επιπέδων) επεξεργαστής της οικογένειας, σηματοδοτεί την τρίτη γενιά επεξεργαστων MC68K. Κυκλοφόρησε το 1991 και υπήρξε κι αυτός ένας πλήρως 32μπιτος επεξεργαστής, όπως και οι προκάτοχοί του, μόνο που τώρα ενσωμάτωνε και Μονάδα Διαχείρισης Μνήμης (MMU) και Μονάδα Κινητής Υποδιαστολής (FPU). Επίσης, η data cache σκαρφάλωσε στα 4 + 4 ΚΒ. Ο συνδυασμός όλων των προηγούμενων είχε ευεργετικό αποτέλεσμα στις επιδόσεις που εκτοξεύτηκαν στα 40 MIPS (στην έκδοση των 33 MHz), δηλαδή υπερτετραπλάσιες σε σχέση με το προηγούμενο μοντέλο MC68030 στην ίδια συχνότητα.

Παρά τα προωθημένα χαρακτηριστικά του, η διάδοση του MC68040 υπήρξε κατά πολύ μικρότερη σε σχέση με τα προηγούμενα μοντέλα της σειράς. Η κάμψη στις πωλήσεις έχει ήδη αρχίσει με τον MC68020, αλλά πλέον κρίνεται το παιχνίδι μεταξύ της οικογένειας MC68K και των x86 της Intel και της AMD. O 80486 που αποτελεί εκείνη την εποχή το ανταγωνιστικό x86 μοντέλο επεξεργαστή για προσωπικούς υπολογιστές, θα κατακλύσει την αγορά με τα συμβατά IBM-PC που κυριαρχούν στους προσωπικούς υπολογιστές. Στα τρία χρόνια της ζωής του εξόπλισε τις σειρές Quadra, Performa και Centris των Macintosh, την Amiga 4000T και τα workstations HP 9000/400.

ΥΠΟΕΚΔΟΣΕΙΣ MC68040

  • MC68LC040: Φθηνότερη έκδοση χωρίς FPU. Xρησιμοποιήθηκε σε κάποια μοντέλα Macintosh
  • MC68EC040: Φθηνότερη έκδοση χωρίς FPU και MMU για εφαρμογές embedded.

Motorola 68060

MC68060

Το τελευταίο και ισχυρότερο μέλος της οικογένειας MC68K, κυκλοφόρησε το 1994 και διέθετε πολλά παρόμοια χαρακτηριστικά με τον Pentium. Αντίστοιχης αρχιτεκτονικής με τον P5, ο MC68060 ήταν ένας υπερβαθμωτός 32μπιτος επεξεργαστής με ενσωματωμένες MMU και FPU. Με τη μνήμη cache να ανέρχεται στα 8 + 8 ΚΒ και τις συχνότητές του να φτάνουν τα 75 MHz, ο MC68060 έσπαγε το φράγμα των 100 MIPS. Oι πραγματικές επιδόσεις του (σε μικτές συνθήκες) ήταν ισάξιες ενός Pentium με αντίστοιχο χρονισμό, παρόλο που στις πιο απαιτητικές πράξεις κινητής υποδιαστολής ο επεξεργαστής της Motorola ήταν έως και τρεις φορές πιο αργός από εκείνον της Intel.

Ο MC68060 σημείωσε ακόμη μικρότερη εμπορική επιτυχία σε σχέση με τον προκάτοχό του και αξιοποιήθηκε από ελάχιστα μοντέλα υπολογιστών, όπως η Amiga 4000T και στον κλώνο της DraCo. Ωστόσο, σημείωσε αξιοπρόσεκτη διάδοση σε ενσωματωμένη μορφή (MC68EC060) ηλεκτρονικών συσκευών, μεταξύ των οποίων τηλεφωνικά κέντρα PBX και routers.

Ο MC68060 δεν μπορούσε να έχει καμία τύχη απέναντι στον Pentium. Ταυτόχρονα, οι κατασκευαστές UNIX workstations είχαν ήδη μεταβεί σε επεξεργαστές RISC αρχιτεκτονικής, κάτι που ούτως ή άλλως έπραξε και η Motorola ήδη από το 1991, συμπράττοντας με τις Apple και ΙΒΜ, στο πρόγραμμα ΑΙΜ, από όπου προέκυψαν οι επεξεργαστές Power PC.

ΥΠΟΕΚΔΟΣΕΙΣ MC68060

  • MC68LC060: Φθηνότερη έκδοση χωρίς FPU.
  • MC68EC060: Φθηνότερη έκδοση χωρίς FPU και MMU για embedded controllers.

ΟΙΚΟΓΕΝΕΙΑ ΕΠΕΞΕΡΓΑΣΤΩΝ MC680x0

MC68000 MC68010 MC68020
Έτος 1979 1983 1984
Τρανζιστορ 68.000 84.000 190.000
Συχνότητα 8-20MHz 8-16MHz 12-33ΜΗz
Δίαυλος 16bit 16bit 32bit
Καταχωρητές 32bit 32bit 32bit
Cache 3 bytes 256 bytes
MMU* MC68451 MC68851
FPU** MC68881
Επιδόσεις*** 2,5MIPS(12MHz) ~2,8MIPS(12MHz) 8,7MIPS(33MHz)
MC68030 MC68040 MC68060
Έτος 1987 1991 1994
Τρανζιστορ 273.000 1.170.000 2.500.000
Συχνότητα 16-50MHz 20-40MHz 50-75MHz
Δίαυλος 32bit 32bit 32bit
Καταχωρητές 32bit 32bit 32bit
Cache 256 bytes 4096 bytes 8192 bytes
MMU* NAI NAI NAI
FPU** MC68881 NAI NAI
Επιδόσεις*** 9MIPS(33MHz) 40MIPS(33MHz) 100MIPS(66MHz)

* MMU – Μονάδα Διαχείρισης Μνήμης (ΝΑΙ – Ενσωματωμένη)
** FPU – Μονάδα Κινητής Υποδιαστολής (ΝΑΙ – Ενσωματωμένη)
*** VAX MIPS (Millions Instructions Per Second)