Tento článok je o modelovom označení. O mikroarchitektúre spoločnosti Intel pojednáva článok Intel Core (mikroarchitektúra).

Intel Core je architektúra spoločnosti Intel, ktorá vychádza zo staršieho typu procesoru Pentium M, respektíve Pentium 3. Predchádzajúci typ procesorov Pentium 4 s architektúrou NetBurst už nemohol ďalej konkurovať a tak musela prísť úplne iná architektúra. Táto architektúra bola zahrnutá v jedno, dvoj až štvorjadrových procesoroch.

Značka Core označuje mobilné dvojjadrové 32-bitové x86 procesory od Intelu odvodené z Pentium M mikroarchitektúry (prechodný krok medzi architektúrami Intel P6 a Core), ktorá sa objavila paralelne spolu s mikroarchitektúrou NetBurst (Intel P68) použitou v procesoroch Pentium 4 a bola predchodcom 64-bitovej Core mikroarchitektúry. Core pozostávala z dvoch vetiev: Duo (dvojjadrovej) a Solo (Duo s jedným vypnutým jadrom), ktorá nahradila značku Pentium M pre jednojadrové mobilné procesory.

Značka Core bola spustená 5. januára 2006 vydaním 32-bitového Yonah procesora – prvého mobilného (nízkoodberového) dvojjadrového procesora od Intelu. Jeho dvojjadro blízko pripomínalo dva prepojené Pentium M procesory zabalené v jednom kremíkovom čipe. Preto aj 32-bitová mikroarchitektúra procesorov označených ako Core – napriek svojmu názvu – mala viac spoločného s Pentium M procesormi než s nasledujúcimi 64-bitovými Core 2 procesormi. Napriek veľkej snahe Intelu o zmenu značky začínajúcej v januári 2006 boli niektoré počítače s Yonah jadrom stále predávané ako Pentium M.

Opis architektúry upraviť

Dekódovanie upraviť

Aby bolo možné dosiahnuť slušnej paralizácie výpočtov, bolo nutné sa pomerne komplexných inštrukcií (x86, x87…) programu zbaviť a zaviesť jednoduché primitívne malé povely, ktoré boli nazvané microOPs. Ďalším z dôvodov, prečo vznikli microOPs, je, že robia návrh výpočetnej jednotky jednoduchším. Ta potom môže pracovať na vyšších frekvenciách. Viac jednotiek na vyšších frekvenciách odvedie minimálne rovnako dobrú prácu ako jedna zložitá jednotka spracovávajúca priamo inštrukcie. Architektúra Core má k dispozícii štyri inštrukčné dekodéry.

Macro-fusion upraviť

Táto technika sa snaží o dekódovanie v programu s dvomi inštrukciami na jednu microOP, ktorá ich vystihne obe. V prípade Macro-fusion dôjde k zlúčeniu dvoch inštrukcií. Takto zlúčené inštrukcie potom prevezme jeden dekodér a vytvorí z nich jednu microOP.

MicroOPs fusion upraviť

Pokiaľ x86 inštrukcie vyžadujú dve operácie, dekóduje sa za normálnych okolností táto inštrukcia na dve microOPs. Tie potom putujú v pipeline spoločne. Fúzovanie microOPs vychádza z toho, že tieto dve microOPs je možné zlúčiť do jedného. Takto fúzovaná microOP skutočne zaberá iba jednu pozíciu v Reorder Bufferu.

Out-of-Order upraviť

Architektúra Core je, rovnako ako všetky dnešné procesory s pokročilým návrhom, tzv. Out-of-Order. Umožňuje teda spracovanie inštrukcií mimo v programe stanoveného poradia tak, aby sa čo najviac využilo dostupného výpočtového výkonu. Out-of-Order prebieha nasledovne: Preladenie do optimálneho poradia → vykonanie výpočtu → zoradenie späť do poradia

Zmeny v jednotkách upraviť

Zásadnou zmenou je, že jednotky pre počítanie s celými číslami (ALU) sú teraz plne 64bit. Core má od základu prerobené jednotky. Vďaka tomu nová architektúra poskytuje plnú podporu inštrukčnej sady AMD64. Mimo toho tieto jednotky zvládajú 64bit operáciu za jediný hodinový cyklus, teda podstatne rýchlejšie ako je tomu u všetkých ostatných architektúr.

Výpočtové jednotky upraviť

Pretože Core má širšiu pipeline o rýchlosti štyroch microOPs za cyklus, museli byť do návrhu pridané ďalšie výpočtové jednotky. Výpočtová časť tak tvoria 3 celočíselné skalárne jednotky (ALU), dve FPU s možnosťou vektorovania SSE inštrukcií pracujúcich s desatinnou čiarkou a 3 celočíselné SSE jednotky. Z nich niektoré sú špecializované a vedia operácie, ktoré iné nevedia.

Jednotky pre prácu s pamäťou upraviť

Okrem výpočtových jednotiek je pipeline architektúry Core tvorená tiež jednotkami pre načítanie a ukladanie informácií. Konkrétne sa tu nachádzajú 3 jednotky, pritom každá má svoj vlastný Issue Port. Celkove tak Core obsahuje celkom 6 Issue Portov, zatiaľ co Pentium M ich má 5 a NetBurst dokonca iba 4. Jedna jednotka sa stará o ukladanie dát, druhá o ukladanie adries a tretia o načítanie adries.

Cache upraviť

Procesory Conroe, Woodcrest a Merom, prvá generácia čipov architektúry Core, budú obsahovať dve úrovne pamäte cache.

Cache prvej úrovne sú rozdelené na dátovú a inštrukčnú časť.

Inštrukčná L1 cache má rovnakú veľkosť ako cache dátová – 32 kByte. Je umiestnená priamo pred dekodérmi a jej dátová šírka je 160 a viac bitov. Všetky cache pamäte sú spojené do unifikovanej cache pamäte druhej úrovne (tá teda obsahuje ako dáta, tak aj inštrukcie). Veľkosť tejto L2 cache je od 1 až po 12MB a v ďalšej generácii procesorov by sa mala ešte zväčšiť. Medzi L1 a L2 cache platí non-inclusive a zároveň non-exclusive hierarchia. To znamená, že L2 cache môže obsahovať niektoré dáta / inštrukcie obsiahnuté v L1 cache. Zároveň tu ale nie je požiadavka na duplikovanie všetkého. Tento režim je zo všetkých najlepší, pretože poskytuje dobrý výkon a zároveň neplytvá dátovým priestorom.

Dual-core a zdieľanie informácií upraviť

Core má na problém zo zdieľaním dát medzi jadrami hneď dve odpovede. Prvou je unifikovaná L2 cache obsahujúca dva porty, kde je každý pripojený k L1 cache jedného jadra. To teda znamená, že L2 cache je medzi oboma jadrami zdielaná. Pokiaľ jedno jadro zapisuje nejaké výsledky do pamäti RAM, tieto výsledky sa predtým zapíšu do pamäti L2 cache, kde čakajú na oneskorený zápis (režim write-back). Medzi tím, čo čakajú, ich môže použiť druhé jadro. Druhým spôsobom, je možnosť priameho prenesenia obsahu medzi dátovými L1 cache cez vnútornú zbernicu k tomuto účelu navrhnutú. Tento systém umožňuje, aby obe jadrá zdieľali obsah najčerstvejších informácií a to aj bez zápisu do L2 cache.

Hardwarový prefetch upraviť

Štandardne hardwarový prefetch dodáva dáta z pamäti RAM do L2 cache. U architektúry Core je tomu inak. Tu funguje predbežné načítanie dát nielen do L2, ale tiež priamo do L1 a to ako z RAM, tak tiež z L2. Procesor tak obsahuje viac hardwarových prefetcherov. Aby nedošlo k zahlteniu, sú tieto koordinované na základe aktuálnych požiadaviek – pokiaľ prvé jadro bude spracovávať dátove náročný výpočet a bude neustále žiadať dáta z pamäte, zatiaľ čo druhé jadro bude využité len málo, priradí hardwarový prefetch prioritu jadru prvému a bude dodávať dáta predovšetkým pre neho. Druhé jadro medzi tým počká. Teplotný manažment: Dôležitou súčasťou architektúry Core je optimalizácia s cieľom najvyššieho výkonu pri čo najnižšej spotrebe. Core vypína nepoužívané časti procesora. Štandardný stav je pritom vypnutý, takže presnejšie zapína tie časti, ktoré sú potrebné. Napájanie je u novej architektúry realizované s veľmi jemnými krokmi po 0.0125V pomocou sedembitového VID (Voltage Identification) kódu a to v rozmedzí 0.0125V až 1.5000V.

Stack management upraviť

Stack je v podstate akási pamäť, ktorá slúži k tomu, aby sa do nej ukladal obsah registrov, prípadne aby sa z nej obsah registrov obnovoval. Vďaka tomu je možné získať nejaký dátový priestor pre výpočty.

Front Side Bus, sockety upraviť

Procesory Conroe, Woodcrest a Merom použijú pre spojenie zo svetom už mnoho rokov overenú technológiu FSB (Front Side Bus) známu z NetBurstu. Tá umožňuje pri danej frekvencii preniesť za jeden hodinový cyklus dve adresy a štyri dáta. Rýchlosť FSB:800, 1066, 1333, 1666 MHz.

Conroe je určený pre stolné počítače a je pre socket LGA775, ale vyžaduje nové napájacie okruhy.

Merom je určený pre notebooky.

Woodcrest je určený pre servery a socket LGA771.

 
Procesor Intel Core Duo

Intel Core i upraviť

Intel Core rady i sú novodobé procesory od spoločnosti Intel. V dnešnej dobe (2010) sa rad "i" používa v každom type počítačov. Celkovo existujú 3 rady i3, i5, i7 pre Socket 1156 a rad i7 pre Socket 1366.

SOCKET 1156

  • Intel Core i3:
    • 530 Dual-Core 2.93 GHz
    • 540 Dual-Core 3.06 GHz
  • Intel Core i5:
    • 650 Dual-Core 3.20 GHz
    • 660 Dual-Core 3.33 GHz
    • 661 Dual-Core 3.33 GHz
    • 670 Dual-Core 3.46 GHz
    • 750 Quad=Core 2.66 GHz
  • Intel Core i7:
    • 860 2.80 GHz
    • 870 2.93 GHz

SOCKET 1366

  • Intel Core i7:
    • 920 Quad-Core 2.66 GHz
    • 950 Quad=Core 3.06 GHz
    • 975 Extreme Quad Core 3.33 GHz

Pozri aj upraviť

Externé odkazy upraviť