DEC Alpha 21264

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Alpha 21264 je plně 64bitový procesor architektury Alpha firmy DEC. Byl významným představitelem extrémně výkonných procesorů, které jsou optimalizovány pro nejnáročnější úkoly ve světě podnikových pracovních stanic a serverů. Byl uveden na trh v roce 1998 a postupně několikrát modernizován. Jeho výroba byla ukončena v roce 2003, kdy byl nahrazen čipem DEC Alpha 21364.

Stručná historie[editovat | editovat zdroj]

Dlouhodobý úspěch fenomenálního procesoru Digital Alpha začal celkem nenápadně v roce 1990. V roce 1992 firma Digital Equipment Corporation (DEC) oficiálně ohlásila nový typ RISC procesoru, který prezentovala jako prvního zástupce plně 64bitových procesorů architektury Alpha. Ve stejném roce byl také představen první počítač s procesorem Alpha 21064, který se poněkud záhadně nazýval Jensen.

Ze značné pozornosti odborného tisku a veřejnosti začala architektura Alpha výrazně profitovat v roce 1994, protože firma DEC uvedla na trh stolní počítač DECpc AXP 150. Tento počítač používal procesor Alpha 21064 AA (8+8 kB interní cache) s frekvencí 150 MHz. Menší slabinou počítače byla použitá sběrnice typu EISA, která nabízela propustnost 33 MB/s. Velmi rychle se však objevily dva mírně odlišné procesory: Alpha 21066 a Alpha 21068 s integrovanou sběrnicí PCI. Současně DEC ohlásil novou generaci procesorů – čip Alpha 21164. Špičkovým reprezentantem nového čipu se stala pracovní stanice Alphastation 500/500, která byla na trh uvedena v září 1996. Srdcem stanice byl čtyřcestný procesor Alpha 21164 (8 kB instrukční a 8 kB datové interní cache) s frekvencí 500 MHz spolu s 8 MB cache L2 paměti. Všechny komponenty stanice vydatně podporovala 64bitová PCI sběrnice s propustností 267 MB/s.

V současné době se však na trhu již prodávají AlphaServery s výrazně výkonnějšími procesory nové generace – Alpha 21264. Aktuální špičkový procesor s nový jménem EV6 se však od předchozí generace výrazně odlišuje.

Základní prvky architektury[editovat | editovat zdroj]

Přesné schéma procesoru DEC Alpha 21264

Procesor Alpha EV6 (21264) je vyroben na matrici šestivrstvou CMOS technologií 0,35 mikronu. V roce 2000 by měly nové procesory postupně dospět k technologii 0,25 a 0,18 mikronu, což umožní výrazně zvýšit výkon a snížit výrobní náklady. Procesor obsahuje celkem 15,9 miliónu tranzistorů (Alpha 21164 měla 9,3 miliónu tranzistorů). Jeho superskalární jádro dokáže zpracovávat až šest instrukcí během jediného taktu (čtyři instrukce jsou načteny do čtyř jednotek pro výpočet v pevné čárce a další dvě instrukce jsou prováděny dvěma jednotkami pro výpočet v plovoucí desetinné čárce).

Vývojový tým DEC kompletně změnil hierarchii vyrovnávacích cache pamětí. Nový čip má na první úrovni (L1) 64 kB instrukční a 64 kB datové cache pamětí. Cache druhé úrovně (L2) o velikosti 1 až 16 MB není sice přímo na čipu, ale je s ním propojena přes extrémně rychlou 128bitovou sběrnici. Velká interní cache nyní výrazně zvyšuje procento úspěšně zpracovaných dat s minimální režií. Další data přitom už čekají v obrovské sekundární cache paměti, aby mohla být okamžitě přesunuta do procesoru. Cache třetí úrovně (L3), kterou používá známý procesor AMD K6-III, není zatím nutná. V první verzi Alphy EV6 je L2 cache tvořena 200 MHz SRAM (Static RAM) čipy, jež dosahují propustnosti až 3,2 GB/s. V dalších verzích procesoru však najde zřejmě využití špičková technologie Dual Data Rate SRAM. Nové DDR-SRAM čipy s velmi vysokou frekvencí nabídnou procesoru impozantní propustnost 8 GB/s. Dnes se nejčastěji prodávají procesory s frekvencí 500, 525 a 575 MHz. Během krátké doby však budou k dispozici výkonnější čipy s frekvencemi 666 MHz a 775 MHz. Přitom v roce 1998 už DEC s tímto procesorem experimentálně dosáhl magické frekvence 1 GHz (1000 MHz). Enormní nárůst výpočetního výkonu na magické frekvenci však bude silně ovlivněn právě použitím DDR-SRAM čipů, které nebudou brzdit procesorové jádro.

Jednou z nejzajímavějších vlastností nové Alphy je dynamické vykonávání instrukcí mimo pořadí (out of order), které je pro celou architekturu Alpha úplnou novinkou. Procesor vykonávající instrukce mimo pořadí přeskupuje dynamicky instrukce programu tak, aby co nejlépe využil vlastní zdroje. Celá operace se přitom skládá ze tří navzájem propojených fází – předpověď skoků, analýza toku dat a spekulativní provádění. Tato hardwarové technologie byla obvykle součástí méně výkonných CISC procesorů (např. Intel Pentium Pro), protože jejich architektura byla více orientována na sofistikované odevzdávání instrukcí. Komplexní logika potřebná pro takové řízení procesoru je totiž v rozporu s požadavkem na velmi vysokou frekvenci. Až do nástupu Pentia II / AMD K6 platilo, že vysoká taktovací frekvence nepatří mezi absolutní priority CISC procesorů. Dnes ovšem panuje jiná situace. Přitom Alpha 21264 mění pravidla – pracuje s nezvyklou inteligencí (vůči předchozí generaci) a zůstává velmi rychlá.

Kritickým měřítkem úspěšnosti při zpracování instrukcí mimo pořadí je počet instrukcí, které procesor může přímo používat. Důvodem je fakt, že počet načtených instrukcí (šířka záběru) přímo ovlivňuje efektivitu rozhodování, poněvadž CPU vidí najednou větší část běžícího programu. To ovšem vyžaduje mnoho hardwarových zdrojů (logiku pro změnu instrukčního pořadí, pomocné registry pro uchování hodnot zastavených instrukcí apod.). Zatímco aktuální procesory firmy Intel (Pentium II, Pentium II Xeon) mohou manipulovat se 40 instrukcemi najednou, Alpha EV6 má před celou konkurencí drtivý náskok – dokáže v jednom okamžiku zpracovávat až 80 instrukcí. Za tímto náskokem stojí v pozadí sofistikované schéma procesorových registrů. Alpha obsahuje, stejně jako řada jiných RISC čipů, soubor 32 celočíselných (integer) a 32 plovoucích (floating-point) registrů, které jsou 64bitové. Kvůli zvýšení kapacity na manipulování s instrukcemi má procesor navíc 48 celočíselných a 40 plovoucích pomocných registrů, které slouží k úschově hodnot všech čekajících instrukcí. Po kompletním zpracování jedné instrukce se vybraný pomocný registr stane dočasně součástí sady (32 celočíselných + 32 plovoucích) regulérních registrů. V tomto okamžiku se hodnota registru stává oficiálně platnou součástí stavu a je viditelná pro aktuálně prováděný program.

Rychlost světla[editovat | editovat zdroj]

Při projektování procesoru Alpha EV6 musel vývojový tým vyřešit pozoruhodný problém. Ukázalo se totiž, že rychlost světla začíná zřetelně omezovat rychlost Alpha procesoru. Současné procesory s relativně běžnou frekvencí 500 MHz provedou jeden taktovací cyklus za dvě nanosekundy. Během tohoto extrémně krátkého okamžiku světelný paprsek uletí vzdálenost 60 cm. Při taktovací frekvenci 1000 MHz, která se brzy stane pro Alphu realitou, trvá cyklus procesoru pouze jednu nanosekundu, což nestačí ani fotonům – uletí jen kritických 30 cm.

Proto má Alpha 21264 duplicitní soubor 80 celočíselných registrů (32 normálních + 48 pomocných), což představuje celkem 160 celočíselných registrů. Přitom jsou čtyři celočíselné jednotky logicky rozděleny do dvou skupin (po dvou jednotkách). Každá skupina má vlastní soubor 80 celočíselných registrů a při změně hodnoty některého registru je tato změna okamžitě nakopírována do druhého souboru registrů. Uvedená operace sice vyžaduje jeden takt procesoru, ale zpracování instrukcí mimo pořadí dokáže toto zdržení kompenzovat.

Inteligentní větvení[editovat | editovat zdroj]

Při návrhu procesoru ovšem bylo nutné pamatovat na všechna potencionálně slabá místa při zpracovávání dat. Proto má Alpha 21264 také tři odhadovací mechanizmy větvení. První se nazývá lokální predikátor a zaměřuje se hlavně na lokální větvení. Druhý se nazývá globální predikátor a jeho úkolem je udržovat celkový přehled o naposledy použitých větveních. Třetí rozhodovací predikátor určuje, který odhad ze dvou předchozích predikátorů se nakonec použije. Tato trojice predikátorů si společně udržuje historii větvení ve čtyřech tabulkách, které na čipu zabírají asi 3,6 kB paměti. Dalších 6 kB paměti na čipu spotřebuje malý archiv odhadů predikce z instrukční cache paměti. Díky tomu se celková úspěšnost odhadů pohybuje kolem 95 procent.

Podpora multimédií[editovat | editovat zdroj]

V roce 1997 byl uveden na trh velmi zajímavý procesor Alpha 21164 PC. Jeho nominální výkon (až 2133 MIPS a 1066 MFLOPS) na špičkových frekvencích 400 a 533 MHz sice nestačil na běžné členy rodiny Alpha 21164, ale jeho hlavní zbraní byla cena. Cílem vývojového týmu bylo v jeho případě vytvořit nový špičkový procesor pro stolní PC počítače se systémem Windows NT, který by zároveň dokázal konkurovat technologii MMX firmy Intel. Integrální součástí nového procesoru, který byl široce podporován čipovou sadou Alpha 21174, se stala multimediální technologie MVI (Motion Video Instruction). Díky této technologii, kterou reprezentuje 5 nových instrukcí (PEER, MAX, MIN, PACK a UNPACK) pro celočíselné operace, došlo k dramatickému nárůstu výkonu v celé multimediální oblasti.

Vylepšená verze technologie MVI se následně stala velmi důležitým rysem procesoru Alpha EV6. Aktuální Alpha dokáže softwarově sama (bez hardwarových doplňků) v reálném čase dekódovat DVD video s použitím precizních standardů Dolby AC-3 (audio) a MPEG-2 (video). 21264 sice nedokáže zpracovávat MMX instrukce, ale má dvě jednotky pro výpočet v plovoucí desetinné čárce používající proudové zpracování (pipeline) a zajišťující propustnost minimálně 1,2 GigaFLOPS. V případě potřeby navíc mohou až čtyři celočíselné jednotky pomáhat při výpočtech v plovoucí desetinné čárce tak, že zpracovávají až dvě LOAD / STORE operace během jediného taktu jádra.

Procesor AMD Athlon vstupuje na scénu[editovat | editovat zdroj]

Velmi zajímavou skutečností je fakt, že I/O sběrnice procesoru 21264 je rychlejší než sběrnice cache paměti L2. V současné době tato sběrnice, která je řízena čipovou sadou Tsunami, pracuje s frekvencí 200 MHz. Počítá se však s tím, že v budoucnosti dosáhne sběrnice frekvence více než 400 MHz.

Pro běžného uživatele PC je však velmi důležité, že na stejnou sběrnici má licenci také firma AMD, která ho použila u právě dokončeného procesoru AMD Athlon. Procesor AMD Athlon, který je dostupný ve verzích s frekvencí 500, 550 a 600 MHz, je tedy určen pro zcela nové základní desky s architekturou Alpha EV6. Procesor se instaluje do slotu, který pouze fyzicky podobný Slotu 1 (procesory Pentium II a III), takže záměna procesorů možná není. Základní desky pro AMD Athlon (Alphu EV6) budou zřejmě vyrábět firmy AsusTech, Biostar, FIC, Gigabyte a Microstar.

Po upgradu BIOSu na těchto základních deskách bude možné si vybrat mezi procesorem AMD K7 a Alpha EV6. Pro AMD to znamená, že už má k dispozici rychlejší sběrnici než Pentium III. Pro Compaq (vlastníka společnosti DEC) to znamená, že procesory Alpha EV6 (21264) už mohou tvrdě zaútočit na Pentium III. Přitom Alpha EV6 dokáže svým výkonem ve Windows NT hladce deklasovat i Pentium III Xeon. Navíc firma Intel bude muset brzy čelit nové generaci procesorů – Alpha 21364.