Czterdzieści lat mikroprocesora MC68000

We wrześniu 2019 roku minęło 40 lat od opracowania przez firmę Motorola mikroprocesora MC68000, który dał początek całej serii pokrewnych układów, określanej jako MC68k. Cztery dekady, będące znacznym upływem czasu w życiu człowieka, to w zasadzie kilka epok w informatyce, która była już świadkiem kilku przełomów technologicznych. Zasłużony dla tej dziedziny techniki jubilat długo jednak utrzymał się na rynku, znajdując zresztą po dziś dzień zastosowania i to nie tylko w retrokomputerowej domenie.

alt

Mikroprocesor MC68000 w wariancie P10 o częstotliwości 10 MHz i w obudowie DIP64

MC68000 ma o tyle ciekawą architekturę, iż z punktu widzenia projektanta systemu komputerowego jest on 16-bitowy, podczas gdy z perspektywy programisty jest to w zasadzie 32-bitowy układ. Mikroprocesor ten ma 16-bitową szynę danych i 24-bitową szynę adresową, pozostając wewnętrznie 32-bitowy. To ostatnie stwierdzenie jest pewnym uproszczeniem, gdyż na liście rozkazów MC68000 są też komendy, operujące na krótszych od 32 bitów danych. W pełni 32-bitową jednostką był dopiero jeden z późniejszych przedstawicieli rodziny MC68k, jakim był MC68020 z 1984 r.

Wspomniane ograniczenia wynikały ze stanu technologii końca lat 70., która – jak można było wyczytać w artykule Mikroprocesory serii MC68000 w numerze 2/1987 Mikroklanu – nie pozwalała budować na jednej płytce krzemu mikroprocesora 32-bitowego. Mimo to właściwości opisywanego mikroprocesora, które obecnie mogłyby wzbudzać politowanie, na początku lat 80. wręcz przytłaczały producentów komputerów. Aby zaoszczędzić im kłopotów z projektowaniem systemów mikrokomputerowych z szerokimi i kosztownymi jak na owe czasy magistralami, na rynek został wprowadzony model MC68008. Wewnętrznie zasadniczo zgodny z poprzednikiem z 1979 r., miał on 8-bitową szynę danych, a jednocześnie okrojoną do 20 bitów szynę adresową.

Pojawienie się na rynku MC68000, co też faktycznie nastąpiło dopiero w lutym 1980 r., było wydarzeniem przełomowym przynajmniej z kilku względów. Wynikało ono z odwagi konstruktorów Motoroli, o czym też wspominał Adam Forycki w artykule Czemu wolę Motorolę, opublikowanym we wspomnianym wydaniu Mikroklanu. MC68000 został zaprojektowany jako nowy układ, z pewnym zapasem, dzięki czemu miał on być programowo zgodny z przyszłymi, już w pełni 32-bitowymi następcami. Podejście to było zgoła odmienne od tego, które zaprezentowała firma Intel w przypadku konkurencyjnego modelu 8086, protoplasty rodziny x86. Ten ostatni został bowiem zaprojektowany tak, aby zachować zgodność z architekturą wcześniejszego 8-bitowego układu 8080. Ceną kompatybilności z rozpowszechnioną już, aczkolwiek tworzoną według starszych założeń konstrukcją, był szereg ograniczeń, z którymi rodzina x86 jeszcze długo musiała się borykać.

Różnice w tych koncepcjach z pewnością dobrze utknęły w pamięci tym wszystkim, którzy mieli okazje programować w asemblerze rodzin obu tych mikroprocesorów. Programowanie na tak niskim poziomie było wręcz prawdziwą przyjemnością w przypadku MC68000, a to za sprawą wielu rejestrów jakie były do dyspozycji. Do tego dochodziło bogactwo możliwości adresowania oraz wszechstronna i długa lista rozkazów, wśród których były też nawet operacje działań arytmetycznych wykonywanych bezpośrednio na komórkach pamięci. Na tym tle praca programisty na modelach intelowskiej konkurencji, przynajmniej tych wczesnych, nie była zbyt wygodna. Ograniczenia, o których trzeba było w tym przypadku pamiętać, powodowały, że można było stracić z oczu istotę opracowywanego algorytmu, co też zresztą trafnie ujął przywołany uprzednio Adam Forycki.

Macintosh Plus

Macintosh Plus firmy Apple, w którym zastosowano MC68000. Mikroprocesory te znalazły się w wielu modelach komputerów, w tym także w rodzinach Atari ST i Commodore Amiga. Sukces rynkowy tych maszyn przyczynił się do spopularyzowania się systemów operacyjnych z graficznymi interfejsami użytkownika, zwanych jako GUI (ang. Graphical User Interface).

Udogodnienia, jakie niósł ze sobą MC68000, również w zakresie operowania grafiką i wykonywania podprogramów, szybko dostrzegł przemysł komputerowy. To właśnie ten mikroprocesor stanowił mózg komputera Apple Macintosh z 1984 r., którego przyjazny dla użytkownika system operacyjny, z pulpitem graficznym wykorzystującym ikony, rozwijane menu i pojawiające się okna, zmienił sposób postrzegania komputerów przez konsumentów. MC68000 stanowił też jednostką centralną wczesnych modeli z rodziny Commodore Amiga – w zasadzie pierwszych multimedialnych komputerów ze znakomitą jak na owe czasu grafiką i wyśmienitym dźwiękiem, a także w pełni wielozadaniowym systemem operacyjnym. Opisywany mikroprocesor znalazł też zastosowanie w popularnym Jackintoshu, czyli w komputerach kierowanej przez Jacka Tramiela firmy Atari z linii ST, szczególnie lubianej przez świat muzyki oraz małego DTP. MC68000 znalazł się też w owianych wręcz legendą i mało u nas znanych, choć imponujących pod względem możliwości, komputerach Sharp X68000, które podbiły rynek w Japonii, a także w maszynach Sun Microsystems, jak również w konsolach video, jak choćby Sega Mega Drive (Genesis). Co prawda już w drugiej połowie lat 80. firmy zaczęły przerzucać się na mikroprocesory 32-bitowe, w tym również te z rodziny MC68k, czego przykładem był Macintosh II z 1987 r., to jednak jeszcze na początku kolejnej dekady pojawiały się nowe modele sprzętu komputerowego, które na nim bazowały. Przykładem może być komputer Amiga 600, który debiutował w czerwcu 1992 r., a także konsola do gier Atari Jaguar z 1993 roku.

alt

MC68000 w wariancie FN8 z obudową PLCC68 na płycie głównej komputera Amiga 600

Z biegiem lat firma Motorola zaczęła odchodzić od rozwijania opartej na mikrokodzie (tzw. CISC) rodziny MC68k na rzecz architektury RISC, co też znalazło wyraz w nowszej linii MC88k oraz w opracowanej później wraz z Apple i IBM rodzinie PowerPC. Ostatnim mikroprocesorem z serii MC68k był model 68060, wprowadzony na rynek w 1994 r., który obecnie rzadko pojawia się na internetowych aukcjach stanowiąc przy tym kosztowny nabytek.

Z czasem też cały dział Motorola Inc., który przez ponad pół wieku zajmował się układami półprzewodnikowymi, został z tej firmy wydzielony w 2004 r. jako Freescale Semiconductor i sprzedany, stając się częścią NXP Semiconductors. Firmy te nie zrezygnowały z produkcji klasycznych modeli mikroprocesorów z rodziny MC68k, która dała też początek stosowanej w urządzeniach wbudowanych (tj. embedded systems) linii ColdFire. Co ciekawe, pewna grupa zapaleńców pokusiła się nawet o stworzenie kolejnego następcy MC68000, jakim jest Apollo Core 68080. Jak zapewniają twórcy tego projektu, wykonany w technologii FPGA układ jest pod względem programowym całkowicie zgodny z MC68k, a do tego pozbawiony wad projektowych tej rodziny i wzbogacony o nowe właściwości, oferując przy tym dużo większą moc obliczeniową niż najszybszy MC68060.

Odnośnie samego MC68000, to mimo 40 lat nadal trzyma się on całkiem nieźle. Duża w tym też zasługa społeczności retrokomputerowej, za sprawą której nadal działa on w wielu przywracanych do działania oraz utrzymywanych komputerach, a także konsolach z przełomu lat 80. i 90. Nie można by było bowiem opisywać ówczesnej komputerowej epoki, nie wspominając o wspaniałych maszynach z tamtych czasów, napędzanych tym właśnie mikroprocesorem. Pojawiają się przy tym też nowe produkty bazujące na szacownym jubilacie, jak choćby karty turbo dla Amigi 500 z MC68000 taktowanym z częstotliwością 50 MHz, wręcz niewyobrażalną dla tego modelu komputera w czasach jego świetności.

MC68000P8 jako jednostka centralna (CPU) Amigi 500. Standardowo komputery te posiadały mikroprocesory taktowane częstotliwością wynoszącą ok. 7 MHz.

Z pewnością trudno też sobie przy tym wyobrazić, iż MC68000 był jednym z ostatnich tak zaawansowanych projektów komputerowych, opracowanych za pomocą tradycyjnej deski kreślarskiej, jak to ujęto w okolicznościowym artykule w IEEE Spectrum. Co ciekawe, serwis ten spekuluje też, iż gdyby nie znikoma możliwość podaży tego mikroprocesora w pierwszych miesiącach od jego debiutu, to być może właśnie on stanowiłby jednostkę centralną projektowanej przez zespół Philipa D. Estridge’a architektury PC, a świat zostałby być może zdominowany przez technologię Winola zamiast przez znany nam Wintel. Takie wizje, choć szczególnie atrakcyjne dla znawców tematu, są już jednak domeną komputerowej historii alternatywnej.

Ten wpis został opublikowany w kategorii Historia, Informatyka i oznaczony tagami , , , , , , , , , , , , . Dodaj zakładkę do bezpośredniego odnośnika.

Możliwość komentowania jest wyłączona.