Procesory

Historia c.d. - Procesory 8-bitowe

Lata 70-te ubiegłego wieku to okres dominacji komputerów 8-bitowych. Co prawda w 1974 Intel miał już na rynku swój procesor o oznaczeniu 8080, niemniej pierwsze skrzypce w tamtym okresie grały procesory firm konkurencyjnych.


Jednym z tych procesorów była Motorola 6800 (nie mylić z jego następcą Motorola 68000!). Ten 8-bitowy procesor został wprowadzony na rynek kilka miesięcy po 8080 ale w gruncie rzeczy był do niego bardzo podobny. Oba procesory mogły zaadresować do 64kB pamięci, miały rejestry A i B o długości 8-bitów a rejestry stosu i programu o długości 16-bitów. Motorola 6800 prawdopodobnie jako pierwszy procesor miał rejestr indeksowy, który Intel zaimplementował w swoich procesorach dopiero 4 lata później. O jego sukcesie zdecydowała także dość prosta aplikacja, 6800 był zasilany tylko jednym napięciem +5V. Konkurencyjny 8080 wymagał trzech różnych potencjałów, o czym pisałem już we wcześniejszej części tekstu. CPU Motoroli był masowo używany jako główny procesor w tzw. komputerach kitach. Czyli komputerach, które składało się własnoręcznie, min. w bardzo znanym Altair 680. Pierwotne wersje 6800 były taktowane zegarem 1MHz, później produkowano także wersje taktowane nawet 2MHz.

Procesor zasłynął w środowisku programistów dzięki upublicznieniu jednej instrukcji oznaczonej mianem HCF (ang. Halt and Catch Fire - wstrzymaj egzekucję programu i stań w ogniu). Skrót HCF to ogólna nazwa nieudokumentowanych instrukcji języka maszynowego procesora, których wykonanie wiąże się z destrukcyjnymi efektami ubocznymi. Według popularnych miejskich legend takie instrukcje są obecne w wielu znanych systemach. W przypadku Motoroli 6800 wprowadzała ona procesor w specjalny tryb testu magistrali.

Spora część zespołu inżynierów projektujących Motorolę 6800 po konflikcie w firmie zmieniła pracodawcę na MOS Technology i pod ich skrzydłami rozpoczęła pracę nad kolejnymi procesorami. Pierwszym ich dzieckiem było MOS Technology 6501. Procesor, który mógł być używany jako bezpośredni zamiennik na płytach głównych zaprojektowanych dla Motoroli 6800, ale miał całkowicie inny zestaw instrukcji. Tj nie mógł uruchamiać programów dla 6800. Oczywiście Motorola momentalnie złożyła pozew do sądu przeciwko MOS Technology, który zakończył się ugodą na mocy której MOS zobowiązał się do zaprzestania produkcji 6501. Inżynierowie wrócili więc do deski kreślarskiej czego efektem było postanie procesora MOS Technology 6502. Jedyną zmianą w stosunku do 6501 był brak kompatybilności z płytami głównymi od Motorli 6800, poza tym procesory były identyczne.

MOS 6502 miał specyfikację bardzo podobną do większości procesorów z tej epoki. Wewnętrznie jest procesorem 8-bitowym, ale posiada szynę adresową o szerokości 16-bitów. Dzięki czemu potrafi adresować do 64kB pamięci. Efektywnej konstrukcji zawdzięcza także niezłą wydajność, ponieważ przy niezbyt wysokim taktowaniu sięgającym raptem 2 MHz potrafił być do 50% szybszy od konkurencyjnych konstrukcji. Procesor miał także bardzo przystępną jak na owe czasy cenę, bo raptem 25 dolarów, co ostatecznie przyczyniło do jego ogromnej popularności. Wystarczy wymienić popularniejsze komputery na nim bazujące: Apple I, Apple II, Comodore PET, Commodore 64, a także większość 8-bitowych komputerów Atari; modele 400, 800, 1200XL, 600XL, 800XL a także te najpopularniejsze 65XE, 130XE.

Kolejnym bardzo popularnym procesorem późnych lat 70-tych był Zilog Z80. Procesor zaprojektowany przez jednego z konstruktorów Intel 8080, został wprowadzany na rynek w 1976 roku. Z80 jest w zasadzie zlepkiem rozwiązań zaczerpniętych z najpopularniejszych procesorów tamtej epoki. Zilog Z80 ma zaimplementowany pełny zestaw instrukcji, rejestrów oraz przerwań procesora 8080, co czyni go z nim kompatybilnym na poziomie kodu.

Dodatkowo Z80 ma wiele własnych rozszerzeń w tym 80 nowych instrukcji, dwa rejestry indeksowe, zestaw nowych przerwań oraz uproszczony - podobny do tego z 8085 system zasilania, który wymaga tylko jednego napięcia +5V. Procesor był masowo klonowany przez wielu producentów (także w Polsce przez Elwro) przez co stał się podstawą ogromnej liczby komputerów szczególnie w krajach bloku wschodniego. Oryginalnie był taktowany zegarem 2.5 MHz, ale jego klony osiągały taktowanie nawet 20 MHz. Najpopularniejsze komputery używające tego procesora to cała rodzina ZX Spectrum, Amstrad CPC oraz Commodore 128. Wielu z naszych starczych czytelników miała na początku swojej kariery komputerowej maszynę wyposażoną w jeden z przedstawianych wyżej procesorów. Szczególnie popularne w Polsce były wszelkiego rodzaju "trumienki" czyli ZX Spectrum, później także Commodore 64 - który po dziś dzień utrzymuje rekord najlepiej sprzedającego się komputera osobistego. Sprzedano ich ponad 30mln sztuk!