Hardware pro trochu znalé – díl VIII. – 64bitové procesory rodiny x86

Série článků s titulem Hardware pro trochu znalé je určena všem, kteří se hardwarové problematice nevěnují naplno, nebo těm, kterým něco uniklo či některé věci zapomněli. Osmý díl je věnován srdci počítačů, procesorům, resp. procesorům 64bitovým z rodiny x86.
Série článků s titulem Hardware pro trochu znalé je určena všem, kteří se hardwarové problematice nevěnují naplno, nebo těm, kterým něco uniklo či některé věci zapomněli. Osmý díl je věnován srdci počítačů, procesorům, resp. procesorům 64bitovým z rodiny x86.

Tento díl bude neustále narážet na tzv. adresování, tak si nejdřív vysvětlíme (nebo zopakujeme, jak pro koho) co to je. Stejně jako jednotlivé byty v panelovém domě mají číslo patra a číslo bytu, tak i RAM paměť má číslo datového 8bitového slova (Byte). V počítači jsou všechna čísla ve dvojkové soustavě, proto i adresa bajtu je daná číslem ve dvojkové soustavě.

Jak dlouhé adresové slovo umožňuje jak velký adresový prostor?

délka adresového slova adresový prostor (B) adresový prostor (MB) adresový prostor (GB) adresový prostor (TB)
8 256 0,00024414 0,00 0,0000000002
16 65 536 0,0625 0,00 0,0000000596
24 16 777 216 16 0,015625 0,000015
32 4 294 967 296 4 096 4 0,00390625
40 1 099 511 627 776 1 048 576 1 024 1
48 281 474 976 710 656 268 435 456 262 144 256
56 72 057 594 037 927 900 68 719 476 736 67 108 864 65 536
64 18 446 744 073 709 600 000 17 592 186 044 416 17 179 869 184 16 777 216

Původní 16bitové slovo pro přímé adresování procesorů x86 bylo rozšířeno u procesorů 386 na 32 bitů. Tato délka umožňovala přímo adresovat 2 na 32 bajtů neboli 4 GB. V době procesorů řady 386 to bylo neskutečně mnoho. Postupem času se zvyšovaly požadavky a tak se velmi záhy zjistilo, že odsadit celou kapacitu 4 GB není tak velký problém. Přímé adresování většího prostoru ovšem nebylo možné. Proto se začalo uvažovat o rozšíření dosavadního adresového prostoru na 64 bitů adresového slova.

Firma Intel spolu s firmou Hewlett Packard kdysi v roce 1995 oznámily začátek společného projektu s názvem IA-64. Ten měl vytvořit společného následníka dvou doposud neslučitelných platforem – původně CISC platformy x86 procesorů firmy Intel a původně RISC procesorů PA-RISC firmy HP. Výsledný procesor nesl dlouhou dobu kódový název Merced, ovšem v současné době je tento procesor znám pod jménem Itanium. Tento procesor má mít novou instrukční sadu zvanou EPIC. Jde o zbrusu novou instrukční sadu, která je nekompatibilní s x86 sadou. Instrukce x86 však procesor vykonávat bude. Jeho následníkem bude procesor s kódovým názvem McKinley.

Schéma procesoru Intel Itanium

Schéma procesoru Intel Itanium

Co znamená IA-64 pro Hewlett Packard?

Podle posledních map vývoje procesorů firmy HP vypadá projekt IA-64 jen jako jedna skupina procesorů tohoto výrobce. V dubnu roku 2000 například firma Hewlett Packard oznámila vývoj nového procesoru PA8700, který navazuje na rodinu procesorů PA-RISC. Jeho takt bude 800 MHz a bude mít 64bitovou architekturu. Bude uveden zhruba půl roku po uvedení prvního procesoru IA-64 (tedy Itania). Pro firmu Hewlett Packard případný neúspěch projektu IA-64 neučiní zničující čáru přes rozpočet, protože 64bitovou architekturu již má a evidentně ji nehodná opustit.

Co znamená IA-64 pro Intel?

Jedním slovem – budoucnost. Firma Intel vkládá do IA-64 projektu obrovské naděje i peníze. Dokonce byl zřízen fond na podporu programů pro tuto platformu. Významným softwarovým vývojářům byl poskytnut počítač s procesorem Intel Itanium, aby bylo možné vyvíjet přímo na cílové platformě.

Firma AMD přišla se svým návrhem 64bitové platformy s názvem x86-64 o mnoho let později v porovnání s Intelem (10. srpna 2000), ovšem její plány jsou rozdílné jak svým charakterem, tak časovými plány. Firma AMD se definitivně oddělila od původní architektury firmy Intel a vydala se vlastní cestou. Nová 64bitová verze procesoru AMD odpovídá naznačenému směru. Procesor s kódovým názvem Hammer (nebo též Sledge Hammer) je připravován na konec roku 2001 (tedy rok po uvedení 64bitové platformy firmy Intel).

Procesory x86-64 budou vlastně nadstavbou stávajících 32bitových procesorů. Obdobu lze najít v 32bitové nástavbě, která se přidala k procesoru 80286 a vznikl tak procesor 80386. Nyní je situace o to jednodušší, že procesor 286 neměl plno potřebných vedlejších částí, které nyní v procesoru existují (např. management). Proto není rozdíl mezi stávajícími architekturou procesorů firmy AMD a x86-64 tak velký. Musíme si uvědomit, že 64bitové instrukce se v počítačích již několik let používají v podobě instrukčních sad MMX, 3D-Now! a SSE.

Odkazy na nejdůležitější stránky

AMD x86-64
adresa popis
http://www.x86-64.org/ server pro podporu Linuxu
http://www.amd.com/products/cpg/64bit/overview.html příručka pro programátory (přímo od AMD)
Intel IA-64
adresa popis
http://www.ia64.org/ stránka s nedokumentovanými instrukcemi (Patryk Zadarnowski)
http://developer.intel.com/design/ia-64/ hlavní stránka IA-64 firmy Intel - vývoj
http://www.ia-64.hp.com/ firemní stránka o IA-64 firmy Hewlett Packard
http://devresource.hp.com/devresource/Topics/IA64/IA64.html firemní stránka o IA-64 firmy Hewlett Packard - vývoj
http://www.linuxia64.org/ server pro podporu Linuxu
http://dig64.org/ příručka pro tvůrce IA-64 serverů
http://www.hitachi.co.jp/Prod/comp/OSD/pc/ha8000/tech/IA-64/IA-64sve.html stránka o IA-64 serverech firmy Hitachi
http://www.projectmonterey.com/ projekt Monterey (Intel, IBM, SCO)
http://www.epc.co.uk/ia64.html překladače pro IA-64
http://www.microsoft.com/hwdev/64bitWindows/ Microsoft o svých 64bitových Windows

Jaké jsou podstatné rozdíly mezi oběma směry (tedy mezi IA-64 a x86-64)?

Po softwarové stránce je nejpodstatnější vzájemná nekompatibilita obou 64bitových procesorů na 64bitové úrovni. Obě platformy jsou shodné jen tím, že obě si dokáží poradit se současnými 32bitovými x86 programy, ovšem tím jejich shoda končí. Firma AMD spoléhá na naprostou kompatibilitu se současným kódem a 64bitovou část bere jen jako rozšíření registrů (a dalších příslušných částí) z původních 32 na 64 bitů. Nový procesor Hammer tudíž má být i pro stávající programy poměrně rychlý.

Platforma IA-64 chce udělat tlustou čáru za x86 instrukční sadou, proto jsou nové procesory od základu nové (tedy včetně instrukční sady). Kompatibilita se současnými x86 instrukcemi je vlastně jen pro ty, kteří budou chtít spustit současné programy, ovšem za cenu nižšího výkonu. Tvůrci IA-64 platformy předpokládají, že se na těchto strojích budou používat pokud možno pouze 64bitové aplikace, napsané přímo v novém instrukčním kódu platformy IA-64.

Dvě cesty, dvě verze budoucnosti

Firma Intel jako vůdce IA-64 platformy volí cestu podpory velkých softwarových firem. Jeden gigant za druhým oznamuje svou vizi budoucnosti svých programů na IA-64 platformě. Týká se to jak programů, tak i operačních systémů (nejen Microsoftu, ale překvapivě i Solaris bude existovat ve verzi pro IA-64 platformu). Pro zajímavost – podporu IA-64 oznámila Firma Microsoft již 18. září 1996. Tato platforma ale byla odložena již tolikrát, že v části odborné veřejnosti budí nedůvěru.

Firma AMD se svou vizí 64bitové budoucnosti přichází na poslední chvíli, proto musí těžit z oblastí, které Intel neobsadil. Stejně jako jsou výrobky AMD alternativou a představiteli nástroje ke zničení dosavadního monopolu (jak mnozí vidí firmu Intel), je operační systém Linux ve všech svých verzích a se všemi svými programy chápán jako velká zbraň proti nadvládě Microsoftu a všeho, co tato firma v očích mnohých uživatelích představuje. Toto spojení evidentně zabírá, takže jedna verze Linuxu za druhou vytváří vývojové prostředí či emulátor x86-64 procesoru.

Závěr jednou větou – šance IA-64 stoupají s rychlostí 64bitových programů této platformy, šance x86-64 stoupají s rychlostí x86 kódu a s jednoduchostí přechodu.

Diskuze (9) Další článek: Canon DM-MV3 MC - Technické parametry

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , , ,