Не треба бркати са x86-64, 64-bit екстензија за x86 архитектуру. мини|260x260пиксел|Intel Itanium архитектура IA-64 (Такође познат као Intel Itanium архитектура) је архитектура Itanium породице 64-bit Интел-ових микропроцесора. Архитектура је настала на Хјулет-Пакарду (HP), а касније су је развијали HP и Intel.
Itanium архитектура је базирана на експлицитном паралелизаму на нивоу наредбе, у коме компајлер одређује које инструкције да се извршавају паралелно. Ово је у супротности са осталим суперскаларним архитектурама, које зависе од тога да ли процесор управља инструкцијским зависностима за време runtime-а. У свим Itanium моделима, до Tukwila (укључујући и њу), језгра извршавају до шест инструкција по тактном циклусу. Први Itanium процесор, назван Merced, је издат 2001.
. Itanium је четврта најкоришћенија микропроцесорска архитектура за enterprise-class системе, испред кога су x86-64, Power Architecture и SPARC.
Историја
Развој: 1989–2000 Године 1989. HP је схватио да архитектуре са смањеним скупом инструкција (RISC) долазе до границе процесирања од једне инструкције по циклусу. HP-ови истраживачи су истраживали нову архитектуру, касније названа EPIC, која је дозвољавала процесору да извршава више инструкција у сваком тактном циклусу. EPIC имплементира форму архитектуре јако дуге инструкцијске речи (VLIW), у којој једна инструкцијска реч садржи више инструкција. Са EPIC-ом, компајлер унапред одређује које инструкције могу да се извршавају у исто време, тако да микропроцесор једноставно извршава наредбе и нису му потребни компликовани механизми да одреде које инструкције могу да се извршавају паралелно. Овај приступ има два циља: да дозволи дубљу инспекцију кода за време компајлирања како би се увиделе додатне прилике за паралелна извршавања, и да упрости дизајн процесора и смањи енергетску потрошњу елиминисањем потребе за заказивањем кола за време runtime-а.
HP је веровао да више није економично за појединачне компаније као што је он да прави власничке микропроцесоре, тако да се удружио са Интел-ом 1994. да направе IA-64 архитектуру, које је изведена из EPIC. Интел је био вољан да уложи много у развој IA-64 јер је очекивао да ће крајњи микропроцесор да се користи код већине произвођача система за предузећа. HP и Intel су започели велики заједнички развој са циљем да заврше први производ, Merced, 1998. године.
Током развоја, Intel, HP, и индустријски аналитичарису су предвиђали да ће IA-64 доминирати у серверима, радним станицама, и напредним десктоповима, и евентуално заменити RISC и архитектуру рачунара са сложеним скупом инструкција (CISC) за све апликације опште употребе. Compaq и Silicon Graphics су одлучили да обуставе развој Alpha и MIPS архитектура и прешли су на IA-64.
Неколико група је правило оперативне системе за ову архитектуру, укључујући Microsoft Windows, Линукс, и Јуникс варијанте као што су HP-UX, Соларис, Tru64. јуникс, и Monterey/64 (задња три су обустављена пре него што су стигла на тржиште). До 1997. године било је очигледно да су IA-64 архитектура и компајлер много тежи да се имплементирају него што се у почетку мислило, а Merced је почео да се одлаже. Неки од техничких проблема су били веома велики број транзистора који је био потребан да подржи дугачке инструкцијске речи и велики кеш. Такође је било структурних проблема у пројекту, јер су та два тима имала другачије методологије и другачије приоритете. Пошто је Merced био први EPIC процесор, у развоју је било више проблема него што су тимови очекивали. Такође, EPIC концепт је зависио од способности компајлера које до сада нису никад биле имплементиране, тако да је било потребно више истраживања.
Интел је огласио официјелно име процесора, Itanium, 4. октобра 1999. године. У року од неколико сати, име Itanic је било измишљено у једној Јузнет групи. То је била референца на Титаник, "непотопљиви" брод који је потонуо 1912. године.
Itanium (Merced): 2001 Док је Itanium био избачен у јуну 2001. године, његове перформансе нису биле конкурентне са RISC и CISC процесорима.
Увиђајући да недостатак софтвера може бити озбиљан проблем у будућности, Интел је дао хиљаде ових раних система независним продавцима софтвера (ISVs) како би стимулисао развој. HP и Интел су довели следећу генерацију Itanium 2 процесора на тржиште годину дана касније.
Itanium 2: 2002–2010 лево|мини|180x180пиксел|Itanium 2 у 2003. Itanium 2 процесор је био избачен у 2002. Ослободио се пуно проблема у перформанси које је имао оригинални Itanium процесор. Ти проблеми су углавном били последица неефикасних меморијских подсистема.
У 2003. AMD је избацио Opteron, који је имплементирао 64-bit архитектуру (x86-64). Opteron је убрзано постајао присутнији у простору сервера за предузећа јер је дозвољавао лаку надоградњу са x86. Интел је одговорио на ово тиме што је имплементирао x86-64 у своје Xeon микропроцесоре 2004. године.
У новембру 2005. године главни Itanium сервер произвођачи су се удружили са Интелом и неколико продавца софтвера да створе Itanium Solutions Alliance да промовишу архитектуру у убрзају преношење софтвера.
Године 2006. Интел је завршио Montecito (продаван као Itanium 2 9000 серија), процесор са два језгра који је удвостручио перформансе и смањио енергетску потрошњу за око 20%.
Itanium 9300 (Tukwila): 2010 Itanium 9300 серија процесора, названа Tukwila, је издата 8. фебруара 2010. године са великим капацитетом перформанси и меморије.New Intel Itanium Offers Greater Performance, Memory Capacity, By: Jeffrey Burt, 2010-02-08, eWeek Tukwila је оригинално требало да се заврши у 2007. години.
Уређај користи 65 nm процес, укључује два до четири кеша са до 24 MB, Hyper-Threading технологију и интегрисане меморијске контролере. Имплементира double-device data correction (DDDC), који помаже да се поправе грешке у меморији. Tukwila такође имплементира Intel QuickPath Interconnect (QPI) који замењује Itanium архитектуру базирану на магистрали. Врх интерпроцесорског протока је 96 GB/s а врх меморијског протока је 34 GB/s. Са QuickPath-ом, процесор има ингетрисане меморијске контролере који директно повезују са меморијом, и коришћењем QPI интерфејса директно се повезују са осталим процесорима и I/O средиштима. QuickPath се такође користи и у Интел-овим процесорима који користе Nehalem микроархитектуру, што вероватно занчи да ће Tukwila и Nehalem моћи да користе исти чипсет. Tukwila инкорпорира четири меморијска контролера, од којих сваки подржава више DDR3 DIMMs преко посебног меморијског контролера, скоро исто као и Xeon процесори базирани на Nehalem, названи Beckton.
Itanium 9500 (Poulson): 2012 Itanium 9500 серија процесора, названа Poulson, је наследник Tukwila-е и садржи 8 језгара, има 12-широку архитектуру, multithreading побољшања, и нове инструкције које користе паралелизам, посебно при виртуелизацији. Poulson L3 величина кеша је 32 MB. L2 величина кеша је 6 MB, 512 I KB, 256 D KB по језгру. Величина калупа је 544 mm², што је мање од Tukwila-е (698.75 mm²).
На ISSCC 2011 Интел је представио папир који се зове, "32nm Itanium процесор који има 3,1 милијарду транзистора и ширину 12, за сервере који су критични за мисије." Гледајући Интел-ову историју откривања детаља о Itanium микропроцесорима на ISSCC, овај папир се вероватно односио на Poulson. Аналитичар David Kanter спекулише да ће Poulson користити нову микроархитектуру, са напреднијом формом multi-threading-а која користи до два thread-а, како би побољшао перформансе за радове са једним thread-ом и више thread-ова. Неке нове информације су издате на Hotchips конференцији. Нове информације представљају побољшања на multithreading-у, побољшања на еластичности (Instruction Replay RAS) и неколико нових инструкција (приоритет thread-ова, инструкције за integer-е, предобављање кеша и наговештај приступа подацима).
Архитектура Интел је обимно документовао Itanium инструкцијски сет и микроархитектуру, а техничка штампа је пружала прегледе. Архитектура се преименовала неколико пута током своје историје. HP ју је у почетку звао PA-WideWord. Интел ју је касније звао IA-64, а након тога Itanium Processor Architecture (IPA), а на крају се одлучио за Intel Itanium Architecture, али се и даље често ословљава као IA-64.
То је архитектура са 64-bit регистрима која је искључиво паралелна. Основна реч за податке је 64 бита и byte-адресабилна је. Простор за логичке адресе је 264 бајтова. Архитектура имплементира предвиђање, спекулације, и предвиђање гранања. Она користи хардверски механизам за преименовање регистра уместо једноставног снабдевања регистара "прозорима" (енг. register windowing) за прослеђивање параметра. Исти механизам се такође користи да се дозволи паралелно извршавање петљи. Спекулација, предвиђање, и преименовање су под контролом компајлера: свака инструкцијска реч садржи додатне битове за ово. Овај приступ је препознатљива карактеристика ове архитектуре.
Архитектура имплементира 128 integer регистра, 128 floating point регистра, 64 једнобитних предиката и осам регистра гранања. Floating point регистри су дугачки 82 бита како би се сачувала прецизност за међурезултате.
Извршавање инструкција Свака 128-bit инструкцијска реч садржи три инструкције и механизам добављања може да чита до две инструкцијске речи по тактном циклусу из L1 кеша у цевовод. Када компајлер може максимално да искористи ову способност, процесор може да извршава шест инструкција по тактном циклусу. Овакав процесор има тридесет функционалних јединица за извршавање у једанаест група. Свака јединица може да извршава специфичну подгрупу инструкцијског сета и свака јединица извршава једну инструкцију по тактном циклусу, осим ако се извршавање не зауставља док се чекају подаци. Не извршавају све јединице у групи исте подгрупе инструкцијског сета, али уобичајене инструкције могу да се извршавају у више јединица.
Групе извршних јединица укључују: Шест ALU-а за општу намену, две integer јединице, једна јединица за померање Четири јединице за кеш за податке Шест мултимедијалних јединица, две јединице за паралелно померање, једна за паралелно множење, једна за бројање популације Две 82-bit floating-point умножи–акумулирај јединице, две SIMD floating-point умножи–акумулирај јединице (свака по две 32-bit операције)Sharangpani, Harsh; Arora, Ken (2000). Три јединице за гранање Компајлер обично може да групише инструкције у групе од по шест инструкција. Групе могу да се извршавају истовремено. Пошто floating-point имплементирају умножи–акумулирај операције, једна floating point инструкције може да изврши рад од две инструкције ако апликација захтева множење које прати сабирање. Ово је веома често у научном процесовању. Када се то деси, процесор може да изврши четири FLOP-а по циклусу. На пример, 800 MHz Itanium је имао теоретску оцену од 3.2 GFLOPS, а најбржи Itanium 2 од 1.67 GHz је био оцењен са 6.67 GFLOPS.
Архитектура меморије Од 2002. до 2006. године Itanium 2 процесори су делили заједничку кеш хијерархију. Они су имали 16 KB инструкцијског кеша првог нивоа и 16 KB кеша података првог нивоа. L2 кеш је уједињен (инструкцијски и за податке) и има 256 KB. L3 кеш је такође уједињен и варирао је у величини од 1.5 MB до 24 MB. 256 KB L2 кеша садржи довољно логике да подржи семафор операције без узнемиравања главне аритметичко логичке јединице (ALU).
Главној меморији се приступа преко магистрале која иде до чипсета ван чипа. Itanium 2 магистрала се у почетку звала McKinley магистрала, али се данас ословљава као Itanium магистрала. Брзина магистрале се повећавала постепено како су излазили нови процесори. Магистрала је преносила 2×128 бита по тактном циклусу, тако да је 200 MHz McKinley магистрала преносила 6.4 GB/s, а 533 MHz Montecito магистрала је преносила 17.056 GB/s
Архитектонске промене