I N F O W A R EHammer: 64−bitové „kladivo“ od AMDLevel 2CacheL2 ECCL2 TagsL2 Tag ECCRegister systémovýchpoiadaviek (SRQ)Prepí<strong>na</strong>è (XBAR)Radiè pamäte a zberniceHyperTransportInštrukènýTLB1. stupeò dekodéra2. stupeò dekodéraDekodér8-miestnyplánovaèAGUAMD sa u nejaký èas s<strong>na</strong>í Intelu konkurova vovšetkých moných segmentoch mikroprocesorovéhotrhu. Po de<strong>sk</strong>topoch prišli <strong>na</strong> rad mikroprocesorypre notebooky. Tu sa však AMD Duronmi aAthlonmi zatia¾ nepodarilo <strong>na</strong>dviaza <strong>na</strong> èiastkovéúspechy platformy K6, i keï pod¾a posledných informáciísa situácia aj v tomto segmente miernezlepšuje. Iba prednedávnom sa AMD pustilo aj dosegmentu serverových mikroprocesorov. AthlonyMP sa však viac presadzujú v dvojprocesorovýchpracovných staniciach ako v serveroch. S Hammeroma <strong>na</strong>jmä jeho druhou verziou – Opteronom –by sa však situácia mala zmeni. AMD toti budeschopné po<strong>sk</strong>ytnú výrobcom systémov ucelený radmikroprocesorov, ktoré pokryjú poiadavky pouívate¾ov,poèí<strong>na</strong>júc de<strong>sk</strong>topmi a konèiac výkonnými64-bitovými servermi.64-bitovú platformu vzali v AMD ako vánu výzvu.Na rozdiel od iných spoloèností sa však nepustilido vývoja úplne novej architektúry, ale stavili<strong>na</strong> osvedèenú platformu x86. Toto rozhodnutie mô-e by pre niekoho zaujímavé, pretoe Intel, ktorývstúpil do sveta 64-bitových mikroprocesorov o nieèo<strong>sk</strong>ôr ako AMD, sa rozhodol vytvori úplne novúplatformu, ktorá nie je so svetom x86 nièím spojená.Jestvuje však celkom pragmatické zdôvodnenietohto prekvapujúceho rozhodnutia. V èase, keï vAMD vznikal projekt ôsmej generácie mikroprocesorov,bola spoloènos v èervených èíslach. A ani poúspechu, ktorý z<strong>na</strong>me<strong>na</strong>l Athlon, si firma nemôedovoli investova do vývoja také obrov<strong>sk</strong>é prostriedkyako neporov<strong>na</strong>te¾ne väèší Intel.KTO JE ZA HAMMEROM? Tím ¾udí pracujúcich<strong>na</strong> vývoji mikroprocesora má nieko¾ko stoviekèlenov, ktorých mená obyèajne ostávajú verejnostineznáme. Nám sa však aspoò èo-to podarilovypátra. Šéfom projektu vývoja mikroprocesorovHammer bol od poèiatku Dirk Meyer, ktorý sa vAMD podie¾al <strong>na</strong> vývoji architektúry K7. Svoje prvé<strong>sk</strong>úsenosti zí<strong>sk</strong>al vo vývojových tímoch spoloènostiDigital, kde sa zúèastòoval <strong>na</strong> vývoji mikroprocesorovAlpha 21264 a 21064. V súèasnosti u DirkMeyer pôsobí <strong>na</strong> poste viceprezidenta AMD. ezlomua èíslo jeden vo vývoji mikroprocesorov Hammerpo òom prevzal ïalší ostrie¾aný vývojár – FredWeber, ktorý sa v AMD podie¾al <strong>na</strong> vývoji mikroprocesorovK6 i Athlon a do AMD prišiel zo spoloènostiNexGen. Nesie podiel <strong>na</strong> vývoji K6 i Athlonu.Pochopite¾ne, v tíme pracujúcom <strong>na</strong> vývoji by sme<strong>na</strong>šli ešte nieko¾ko ¾udí, ktorí sa dlhé roky zaoberalivývojom mikroprocesorov tak v AMD, ako aj vNexGene èi Digitali, nedalo nám však nespomenúaspoò tieto dve <strong>na</strong>jvýz<strong>na</strong>mnejšie.SERVERY ALEBO DESKTOPY? OBOJE!Vývoj sa pod¾a neoficiálnych informácií zaèal v roku1997. Pä rokov je v histórii mikroprocesorovéhopriemyslu viac ako dlhý èas. Len si spomeòte, ko¾kogenerácií mikroprocesorov sme za ten èas „odloili“.Vývoj mikroprocesora sa podobá vývoju akéhoko¾vekiného zariadenia a vdy sa pracuje <strong>na</strong> nieko¾kýchvariantoch súbene. Rov<strong>na</strong>ko to bolo aj sHammermi. Pod¾a dostupných informácií sa pracovalo<strong>na</strong> troch variantoch tohto mikroprocesora, ktoréniesli oz<strong>na</strong>èenie K8-1a, K8-1b a K8-2. Jednotlivévarianty sa odlišovali nielen rozdielnym stupòompodpory 32 a 64-bitových aplikácií (K8-1a a K8-1b),ale aj implementáciou dvoch mikroprocesorovýchjadier (K8-2). V AMD sa <strong>na</strong>j<strong>sk</strong>ôr rozhodli preferovaverziu s jediným jadrom (dvojjadrová verzia K8-2,respektíve niektoré jej èasti sa azda uplatnia v budúcejgenerácii, <strong>na</strong> ktorej vývoji sa u pracuje). Prifinálnom rozhodovaní medzi rýdzim 64-bitovýmmikroprocesorom a 64-bitovým rozšírením 32-bitovejarchitektúry dostal prednos druhý variant. Hammersa teda viac ako <strong>na</strong> Alphu podobá <strong>na</strong> Athlon. Ajv tomto usporiadaní však prináša mnostvo inovatívnychprvkov. Okrem implementáce podpory 64-bitového kódu je teda Hammer (obe jeho verzie) plnohodnotným32-bitovým mikroprocesorom, ktorýje vïaka tomu nielen stopercentne spätne kompatibilnýs 32-bitovými aplikáciami, ale je v nich dokoncaaj výkonnejší ako jestvujúce mikroprocesory AMD.V porov<strong>na</strong>ní s Intelom a ich 64-bitovým Itaniom èiinými 64-bitovými mikroprocesoromi je to výz<strong>na</strong>mnýrozdiel. Všetky ostatné 64-bitové mikroprocesory totipodporujú 32-bitové aplikácie iba vïaka softvérovémuemulátoru, a preto je výkon v nich v porov<strong>na</strong>nís výkonom v 64-bitových aplikáciách degradovaný.Práve táto charakteristická èrta Hammerov bude mapre AMD pravdepodobne rozhodujúci výz<strong>na</strong>m.ARCHITEKTÚRA MIKROPROCESORA.U poh¾ad <strong>na</strong> prvú blokovú schému, znázoròujúcu<strong>na</strong>jhrubšie èlenenie mikroprocesorov rodiny Hammer,<strong>na</strong>z<strong>na</strong>èuje, preèo sa tento mikroprocesor povaujeza prelomový (a to nielen z poh¾adu AMD).Mikroprocesor je toti z h¾adi<strong>sk</strong>a obvodového èleneniamoné rozdeli <strong>na</strong> 6 blokov. Prvým je jadromikroprocesora, <strong>na</strong>sleduje rov<strong>na</strong>ko obvyklá dvojicasegmentov pamäte cache prvej úrovne (oddelenésegmenty pre údaje a inštrukcie) a pamä cachedruhej úrovne (obsah L1 i L2 je zabezpeèený prostredníctvomECC). Oba ostávajúce bloky – radièpamäte DDR a radiè zbernice HyperTransport – súu unikátnymi komponentmi. Jadro mikroprocesoraI keï <strong>na</strong>jväèšie zmeny, ktoré prinášajú mikroprocesoryHammer, sme u pomenovali, novinky sú ukrytéaj v jadre mikroprocesora. Jeho blokovú schémunájdete <strong>na</strong> obr. è. 2. V jadre mikroprocesora sa <strong>na</strong>chádzadevä výkonných jednotiek, tri aritmetickologickéjednotky (ALU), tri jednotky generovaniaadresy (AGU) a tri jednotky pre operácie s desatinnýmièíslami (FPU, zastúpené jednou jednotkouFADD, jednou jednotkou FMUL a jednou jednotkouInštrukèná L1 cacheJednotka výberu inštrukciíJednotka usporiadania inštrukcií1. stupeò dekodéra2. stupeò dekodéraJednotka reazenia inštrrukciíDekodér8-miestnyplánovaèDataTLB1. stupeò dekodéra2. stupeò dekodéraDekodér8-miestnyplánovaèLevel 1 Data Cache2k – ciele vetvení16k – tabu¾kavýsledkovvetveniaRAS a cie¾ovéadresy36-miestnyplánovaèALU AGU ALU AGU ALU FADD FMUL FMISCECCObr. 2100 PC REVUE 7/2002
I N F O W A R E200-333 MHz72-Bit Reg DDRPCI-X64 bits /100 Mhz800 MB / s HyperTransportAMDHammerAMD-8131 TMHyperTransport TMPCI-X TunnelAMD-8111 TMHyperTransportI/O HubUSB 1.0USB 2.0UB/MA 1003.2 GB / s HyperTransportAC973.2 GB / s HyperTransport32 bits /33 MhzLPCPCIFLASHSIOCODEC10/100 PhyAMDHammerAudio, Modem100 BaseT (R445)200-333 MHz72-Bit Reg DDRArchitektúradvojprocesorovéhosystémus mikroprocesormi64 – x86FMISC). Poèet i usporiadanie výkonných jednotieksú prakticky totoné s Athlonom XP. Ak sa vámpoèet výkonných jednotiek zdá nízky, vedzte, epredstavitelia AMD ho odôvodòujú <strong>sk</strong>utoènosou,e výkonné jednotky Athlonu ani konkurenènéhoPentia 4 nie sú v reálnej prevádzke nikdy vyaené<strong>na</strong> 100 %. Príèinou tohto stavu je nízka priepustnosúdajov medzi systémom a mikroprocesorom.Pod¾a AMD aj po jej zvýšení (vïaka integrácii radièapamäte a zbernice HyperTransport) bude tento poèetvýkonných jednotiek postaèova.Keïe súèasné mikroprocesory nevykonávajú programovýkód tak, ako bol vygenerovaný kompilátorom,ale vyuívajú dômyselné mechanizmy preusporiadaniainštrukcií a ich vykonávania mimo vopred stanovenéhoporadia, ktoré im umoòujú zvyšova výkon,neodmyslite¾nou súèasou kadého moderného mikroprocesoraje usporiadanie výkonných jednotiek, dekodérovkódu a pamätí do blokov <strong>na</strong>zvaných pipeline.Práve v nich sa <strong>sk</strong>rýva ïalšia zme<strong>na</strong>, ktorú v porov<strong>na</strong>nís Athlonom Hammer prináša. Nejde však orevoluènú zmenu. Kým pipeline Athlonu vyuívadesastupòový rozklad inštrukcie, v prípade Hammerastavili vývojári <strong>na</strong> dvanásstupòovú pipeline.V porov<strong>na</strong>ní s Pentiom 4 však nejde o iadny radikálnykrok (to disponuje 20-stupòovou pipeline).Plynulé „zásobovanie“ výkonných jednotiek inštrukciamizabezpeèuje trojica (Scheduler) s kapacitouosem záz<strong>na</strong>mov (jednotky ALU) a jeden „trojcestný“(Scheduler) s kapacitou 36 záz<strong>na</strong>mov. Údajepre tieto „zásobníky“ sa pripravujú v sústave zlo-enej z Feetch 2 Transit Pick, trojice dvojstupòovýchdekodérov jednotky zostavenia inštrukcií(Pack) a trojice dekodérov. Tento komplex je prostredníctvominštrukènej L1 cache „<strong>na</strong>pojený“ <strong>na</strong>inštrukèný TLB a (2k Branch Targets, 16k HistoryCounter, RAS a Target Address). Údaje <strong>na</strong> spracovaniezí<strong>sk</strong>avajú výkonné jednotky prostredníctvomúdajovej L1 cache. Zaujímavým prvkom je zjednoteniedåky pipeline pre ALU i FPU operácie. Kýmpipeline pre ALU bola predåená, presne opaène jeto v prípade FPU, ktorá má síce rov<strong>na</strong>kých dvanásstupòov ako tá pre ALU, ale v porov<strong>na</strong>ní s Athlonomje o tri stupne kratšia.Predåenie pipeline si, samozrejme, vyiadaloúpravy aj v oblasti predpovedania vetvenia kódu.Ak by toti mikroprocesor nedisponoval dostatoènespo¾ahlivým mechanizmom, mohlo by sa sta, edlhšia pipeline by mohla vies k zníeniu výkonu.Na tento úèel sú do jadra Hammeru implementovanéjednotky Branch Selection (realizuje výber inštrukcií,ktoré majú by vyko<strong>na</strong>né), Global HistoryCounter (GHC, zhromaïovanie informácií o históriivývoja vetvení) a Branch Target Address Calculator(BTAC). Práve posledne menovaná jednotka jeúplnou novinkou v architektúre jadra. V prípadepotreby jednotka BTAC umoòuje presne vypoèítavývoj danej vetvy programu. Vïaka tomuto jedineènémumechanizmu sa dajú úplne eliminova chybnépredpovede vetvenia. Pochopite¾ne, vyuitie tohtomechanizmu je optimálne iba v niektorých prípadoch(trvá pä hodinových cyklov). Na druhej stranetento mechanizmus jednoz<strong>na</strong>ène prekonáva schopnostijednotiek predpovedania vetvenia implementovanýchnielen v 32-bitových mikroprocesoroch,ale <strong>na</strong>príklad aj v 64-bitovom Itaniu. BufferyKeby sme porovnávali Hammer s Athlonom XP, doinštrukènej L1 cache pribudlo 16 nových bufferov,èím sa ich poèet zvýšil <strong>na</strong> 40 a vyrov<strong>na</strong>l sa poètuúdajových L1 bufferov. Ešte rozsiahlejšími zme<strong>na</strong>miprešli buffery L2 cache, ich poèet sa zdvojnásobil(z 256 <strong>na</strong> 512). Vïaka týmto úpravám sa zniujelatencia, a tak mikroprocesor menej èaká <strong>na</strong> údajepotrebné <strong>na</strong> svoju prácu. CacheÚdaje z bufferov a do nich sa dostávajú prostredníctvomL1 cache, jej ve¾kos je známa u dlhší èasa je <strong>na</strong>vlas rov<strong>na</strong>ká ako v prípade Athlonov - 64 KBpre údaje a rov<strong>na</strong>ké mnostvo pre inštrukcie, spoluteda 128 KB. Ove¾a zaujímavejšie je to v súvislosti sL2 cache. Pre ClawHammer to bude zrejme 256 KB,pre SledgeHammer (Opteron) pravdepodobne viac.I keï konkrétne hodnoty nie sú ešte ani zïalekapotvrdené, AMD vo svojich materiáloch uvádza, emaximál<strong>na</strong> ve¾kos L2 cache by mala by 1 MB. Integrovaný radiè pamäteKeï som po prvý raz pozeral <strong>na</strong> blokovú schémuHammera, nebol som si celkom istý, èi nejde o art.Integrácia radièa pamäte priamo do mikroprocesora,to je kúsok, <strong>na</strong> ktorý si v doposia¾ nik netrúfol.Ide o krok, ktorý v doterajšom ponímaní mikroprocesoramono bez zaváhania oz<strong>na</strong>èi za revoluèný.Mikroprocesoru prináša toto riešenie výz<strong>na</strong>mnézvýšenie priepustnosti údajov do pamäte, ktorá jepre mikroprocesor prístupná, èo sa rýchlosti týka,rov<strong>na</strong>ko ako cache tretej úrovne. Ïalšou neprehliadnute¾nouvýhodou je podstatné zjednodušeniepráce návrhárom systémov. Pochopite¾ne, kadástránka má dve mince, v prípade integrovaného radièapamäte je tou odvrátenou „pevná“ previazanoss vopred definovaným typom pamäte. S oh¾adom<strong>na</strong> <strong>sk</strong>utoènos, e v AMD u dávnejšie stavili<strong>na</strong> pamäte DDR, je pochopite¾né, e aj pri Hammeriostali verní tomuto typu pamätí. Pod¾a pôvodnejšpecifikácie mali prvé Hammery podporova pamäteDDR štandardu PC 1600, PC 2100 a PC 2700.V súèasnosti je takmer isté, e ClawHammer budeoptimalizovaný pre posledne zmienený typ pamätí.V tejto súvislosti sa, samozrejme, <strong>na</strong>tí<strong>sk</strong>a otázka,ako to bude s podporou novších pamäových štandardov.Pravda je taká, e tá v porov<strong>na</strong>ní s doterajšímizvyklosami nebude závislá od výrobcovèipových súprav, ale od výrobcu mikroprocesora aprípadná zme<strong>na</strong> si vyiada redizajn mikroprocesora.V podstate to však nie je problém, pretoe aj vsúèasnosti je bené, e k drobným úpravám jadiermikroprocesorov dochádza minimálne raz za polroka a to by malo <strong>na</strong> udranie tempa s výrobcamipamätí staèi.V radièi pamäte sa <strong>sk</strong>rýva aj jeden z rozdielovmedzi ClawHammerom a SledgeHammerom (Opteron).Kým prvý mikroprocesor bude vybavený jednokanálovýmradièom pamäte so šírkou údajovejzbernice 64 bitov, serverová verzia SledgeHammerbude disponova dvojkanálovým radièom s celkovoušírkou údajovej zbernice 128 bitov a podporou ECC.V <strong>na</strong>jvýkonnejšom variante (Opteron, DDR PC2700,frekvencia pamätí 333 MHz efektívne) je monédosiahnu teoretickú priepustnos 5,33 GB/s. Navyšetoto èíslo platí pre kadý mikroprocesor inštalovanýv systéme. Samozrejme, reál<strong>na</strong> priepustnosbude zrejme nišia. V súèasnosti sa toti reál<strong>na</strong>priepustnos systémov s DDR pamäami pohybuje<strong>na</strong> úrovni 50 % teoretickej, s oh¾adom <strong>na</strong> zmenyv architektúre systémov sa dá oèakáva zvýšenietejto hranice <strong>na</strong> 70 % (niektoré zdroje uvádzajú a80 %). Keby boli uvedené èísla reálne, Hammers DDR by disponoval 2,5× vyššou pamäovou priepustnosouako v súèasnosti <strong>na</strong>jvýkonnejšie systémys Pentiom 4 a RDRAM! HyperTransportÏalšou výz<strong>na</strong>mnou zmenou, ktorú mikroprocesoryHammer prinesú, je podpora zbernice HyperTrans-7/2002 PC REVUE 101