Historie Procesorů Od Počátku Až Do Dnešní Doby
Total Page:16
File Type:pdf, Size:1020Kb
Jiří Marchalín Historie procesorů od počátku až po současnost 2004 1 Mikroprocesor, srdce počítače, prošel od svého prvního uvedení na trh, bouřlivým vývojem. V průběhu vývoje od počátku k dnešním procesorům kráčely nohy vývojářů po různých cestách, ne všechny však vedly k cíli. Některé vývojové větve zanikly, jiné nesplnily účel, ke kterému byly vytvořeny a jiné se neopomenutelně zapsaly do počítačové historie. Toto je skromný výtah nejslavnějších procesorů z jejich nepřeberného množství. Záznamy o mikroprocesorech jsou řazeny chronologicky, tak jak byly postupně uváděny na trh. V průběhu vývoje mikroprocesorů výrobci postupně opouštěli staré technologie a přecházeli k novým, aby se krátce poté jiní výrobci vrátili k těmto opuštěným technologiím zpět. Mikroprocesory se dají jednoduše rozdělit do dvou základních skupin podle navržené architektury a to RISC a CISC. Jedná se víceméně o soubor pravidel a parametrů, které musí mikroprocesor splňovat, tedy o strategii a návrh. V poslední době se objevuje ještě určitá kombinace těchto architektur nazvaná "post-RISC" a také architektura EPIC. První z těchto architektur je tzv. Complex Instruction Set Computer (CISC). Základní charakteristikou je poměrně rozsáhlá instrukční sada stroje a její komplexnost. Na každý obtížnější problém, jako je například násobení dvou čísel, existuje zvláštní instrukce. Dalšími specifiky jsou vysoký počet adresovacích módů a proměnná délka instrukcí. Zastánci ostatních architektur považují tuto vlastnost za hlavní nevýhodu celé architektury. V současné době používá architekturu CISC pouze řada mikroprocesorů x86 firmy Intel. V minulých letech to byly mikroprocesory použité v platformách Amiga a Atari. Postupný úpadek architektury CISC způsobil hlavně výrazný pokles pamětí RAM z 5000USD za 1 MB v roce 1977 na nepatrný zlomek v současné době. Také postupný nárůst výkonu a sofistikovanější kompilátory přinesly pád této ze začátku slibné vývojové větvi. Další architektura je tzv. Reduced Instruction Set Computer (RISC). První návrh RISC procesoru byl roku 1974 představen Johnem Cockem z firmy IBM. Jednalo se o mikroprocesor IBM 801, který se nikdy nedostal do prodeje, ale představuje významnou událost ve vývoji mikroprocesorů. John Cock si všiml, že většina programátorů si k řešení konkrétního problému osvojí poměrně malou část instrukční sady. RISCový stroj proto obsahuje pouze malý počet jednoduchých instrukcí a je na programátorovi, jak se s nimi vypořádá. Všechny instrukce mají pevnou délku, v poslední době většinou 32 bitů. Všechny instrukce jsou jednoduché, tzn. žádná neprovádí více věcí najednou, narozdíl od komplexní instrukce v CISC. Omezená sada jednoduchých instrukcí a jejich pevná délka výrazně zrychlí práci procesoru, jak při dekódování instrukce tak při jejím načítání. To má za následek, že RISC procesor na stejné pracovní frekvenci je výrazně rychlejší než srovnatelný CISC procesor. Mezi RISCové procesory se řadí zejména ARM (Advanced RISC Machine/Acorn RISC Machine) a SPARC (Scalable Processor ARCihtecture). 2 Sekvence instrukcí pro násobení dvou čísel v pseudokódu CISC RISC MULTIPLY 3, 4 % instrukce vynásobí 3 a 4 LOAD R1, 3 % do registru 1 uloz 3 LOAD R2, 4 % do registru 2 uloz 4 MUL R1, R2 % R1 = R1 * R2 STORE R1, Mem % Mem = R1 Při pohledu na výsledný program se může zdát, že CISC je v mnohém výhodnější, ale právě přísné oddělení instrukcí pro vyzvednutí (LOAD) a uložení (STORE) redukuje práci procesoru na minimum. V momentě kdy je provedena instrukce MULTIPLY procesor vymaže obsahy registrů. Pokud jeden z operandů má být použit v dalším výpočtu, procesor musí data znovu nahrát z paměti do registrů. V RISC architektuře zůstává registr naplněn daty z předchozí operace do doby, než je registr potřeba. V poslední době se na trhu objevují mikroprocesory hlásící se ke kombinaci těchto architektur a to post-RISC. Mikroprocesory RISC dostaly komplexnější instrukční sady a CISC se staly výkonnějšími. Výsledkem je, že mnoho procesorů zůstává v zařazení CISC nebo RISC pouze s ohledem na jejich předchůdce ve stejné vývojové řadě. Příkladem může být PowerPC 601, které ačkoliv se jedná o RISCový mikroprocesor zpracovává více instrukcí než mikroprocesor Pentium firmy Intel, který je zařazen jako CISC. Proto Intel označuje své procesory od řady Pentium jako CRISC, což se dá vyložit jako Complex- Reduced Instruction Set, čili post-RISC. Naproti tomu procesory firmy AMD, používají architekturu RISC. To je také jeden z důvodů jejich větší rychlosti při stejné frekvenci s procesory Intel. Stále však zůstává zachována zpětná kompatibilita s procesory firmy Intel díky překladovým tabulkám instrukcí. EPIC (Explicitly Parallel Instruction Computing) nazývaná též „IA-64“ je zcela nová architektura speciálně určená pro 64 bitové procesory. Mikroprocesor s touto architekturou zpracovává instrukce paralelně, ale neobsahuje žádnou hardwarovou jednotku k detekci instrukcí, které je možné takto zpracovat. Jinými slovy je detekce paralelních instrukcí plně v rukou kompilátoru. Dalším jsou tzv. „Bundled Instructions“ (svazky instrukcí). Intrukce, které jsou prováděny společně jsou uloženy do jednoho dlouhého instrukčního slova pro rychlejší zpracování. Jedná se o tzv. LIW kódování („Long Instruction Word“). Každý takto vytvořený svazek obsahuje příznak („flag“), zda může být proveden paralelně, tento příznak nastavuje kompilátor. Postup vykonání svazků je plně v kompetenci mikroprocesoru. Výhodou je, že mikroprocesor neztrácí žádný čas určováním, která instrukce se může provést paralelně v superskalární architektuře. Nevýhodou je pak potřeba sofistikovanějšího kompilátoru. 3 70. léta 20. století Intel 4004 (1971) Vůbec první procesor v podobě jak ho známe dnes představila firma Intel roku 1971. Jednalo se o 4 bitový procesor s frekvencí 108kHz a názvem 4004. Obsahoval 2300 tranzistorů a jeho výkon odpovídal 0.06 MIPS. Byl zhotoven na objednávku japonské firmy Busicom, která jej implementovala do svých kalkulaček. Intel 4004 obsahoval 16 registrů o velikosti 4 bity. 45 jedno a dvou bitových instrukcí. 4 úrovňový adresový zásobník a 12 bitový programový čítač. Intel 4004 Intel 8008 (1972) Roku 1972 přišla firma Intel s rychlejším procesorem nazvaným 8008. Byl to již 8 bitový procesor pracující na frekvenci 200kHz. Uměl zpracovávat 50 instrukcí zpracovávajících data („data processing“). 8008 mohl adresovat 16 kB paměti, což se v roce 1972 jevilo jako enormně velký rozsah. Měl také šest 8 bitových registrů nazvaných B,C,D,E,H,L a 8 bitový akumulátor. Programový čítač měl 8 úrovní. Obě tato pole registrů byla implementována jako dynamický paměťový modul a procesor měl skrytou fázi oživení této paměti v průběhu vyzvedávání instrukcí. Intel 8008 Intel 8080 (1974) Roku 1974 byl vyroben nástupce 8008 a zároveň první procesor použitý v osobním počítači Intel 8080, konkrétně v počítači Altair 8800 firmy MITS. Obsahoval 4500 tranzistorů a rozvinutější paralelizaci úkonů. 4 Obsahoval 7 registrů (A-E, H,L a páry: BC, DE a HL, které mohly být kombinovány jako 16 bitové. Prodejní verze byla opatřena umělohmotným obalem k lepší ochraně procesoru před vnějšími vlivy. Intel 8080 Motorola 6800 (1975) Krátce po uvedení 8080 přišla se svým procesorem firma Motorola. Roku 1975 s modelem 6800. Uměl zpracovat 78 instrukcí, včetně poněkud mysteriózní sady nazvané „Halt and Catch fire“, jejíž počátky sahají až k IBM 360. Jednalo se o sadu instrukcí, které umožnily zvyšovat rychlost sběrnice až k její maximální hranici. Původně se jednalo o sadu instrukcí řídící testy sběrnic. U některých konfigurací mohlo dojít až k vyhoření sběrnice, odtud název této sady. Registry byly zanedbatelně malé, k dispozici byly pouze dva 8 bitové akumulátory a 16 bitový indexový registr. Motorola 6800 Fairchild F8 (1975) Jednoduchý 8 bitový procesor firmy Fairchild Semiconducor byl díky absenci adresové sběrnice, a tím i nízké ceně, přímo předurčen k úspěchu. Měl 8 bitový akumulátor a 64 osmi bitových registrů, tzv. „scratchpad RAM“ přístupných přes ISAR registr ve skupinách po osmi. Řešení umožnilo nepoužívat RAM pro malé programy. A zároveň umožnilo připojení druhého procesoru, kterým byl většinou F 3851. Fairchild F8 5 Intersil 6100 (1975) Jeden z velmi mála 12 bitových mikroprocesorů na trhu byl model od firmy Intersil navržený pro počítač PDP8 firmy DEC. Byla to přesná kopie PDP-8E a obsahovala stejnou instrukční sadu. První implementace pracovaly na frekvenci 4 MHz, pozdější řada A a C na 8 a 3.3 MHz. Obsahoval pouhé 3 registry, akumulátor, programový čítač a registr MQ. Každá instrukce četla akumulátor a registr MQ a zapisovala zpět do akumulátoru. Měl 12 bitovou adresovou sběrnici a omezení adresace RAM na pouhé 4 kB. Paměťová reference byla 7 bitová začínající od 0 nebo od adresy v programovém čítači. Zajímavostí tohoto procesoru byla absence zásobníku. Rutiny uložené v programovém čítači obsahovaly v prvním slově vlastní kód. Následník tohoto čipu, mikroprocesor 6102 (6120) přidal 3 adresové linky a velikost adresovatelné RAM se tak zvýšila na 32kB. Dále přibyly dva registry IFR, který obsahoval instrukci a DFR obsahující data. Intersil 6100 MOS Technology 6502 (1975) Osmi bitový procesor firmy MOS byl navržen jako přímá konkurence mikroprocesorů 6800 firmy Motorola a 8080 firmy Intel. Konkuroval hlavně cenou, která se v době vzniku pohybovala na 25$, zatímco oba konkurenční procesory stály 179$. V rámci konkurenčního boje se jejich cena posléze snížila na 79$. 6502 pracoval s malými časovými okamžiky kdy bylo zaručeno, že nedojde k přerušení a k požadavku na sběrnici. To ho předurčilo k domácímu použití.