You are on page 1of 117

Számítógép architektúrák előadás

nappali tagozat féléves tematika

1. Munkavédelem, történeti 8. Kódolás, memória, SSD


áttekintés, alapfogalmak 9. Memóriakezelés
2. A processzorokról 10. Beágyazott rendszerek, vékony
3. Hűtés és grafika kliens megoldások, IoT
4. Chipset, sínrendszerek, portok, 11. Mobil eszközök: tabletek,
bemeneti eszközök, nyomtatás okostelefonok, netbook-ok,
5. Megjelenítés, monitorok ebook olvasók
6. Mágneses adattárolás 12. Számítógépvírusok,
7. Optikai/magnetooptikai vírusvédelmek
adattárolás 13. Adattömörítés, 3D

1
Számítógép architektúrák
2. Előadás
A processzor

Az előadások anyaga elérhető


az Ilias-on

2
A processzor
Főbb jellemzői:
• Órajel frekvencia:
az alaplapon található órajel-generátor állítja elő.
Megmutatja, hogy másodpercenként hány elemi
műveletet kezdhet a processzor
• Sínszélesség (busz szélesség):
Az egyszerre elküldhető adat-bitek száma
• Műveleti sebesség:
(MIPS = Millions of Instruction Per Second):
A végrehajtott utasítások száma másodpercenként
3
TDP (Thermal Design Power/Point)
• Az Intel definíciója az, hogy a TDP az a maximális hő-mennyiség
amit a processzor termelhet nyilvánosan elér-hető szoftverek normál
üzemmódú futtatásával. Ez nem zárja ki azt, hogy bizonyos
esetekben a hőfejlődés ne lépje túl ezt az értéket, ekkor azonban a
"Thermal Monitor" szolgáltatás közbeavatkozik (leállítja a
processzort vagy lecsökkenti a frekvenciáját).

• Az AMD definíciója a megengedett maximális processzor-


hőmérsékleten a felvehető maximális áram és a maximális feszültség
együttesével számol, ami garantálja, hogy soha nem haladhatja meg a
tényleges hőtermelés a TDP-t (sőt, el sem érheti azt).

4
Típus Év Tranz. Mikr. Órajel Sín MIPS
(MHz) (bit)
8080 1974 6.000 6 2 MHz 8 0.64
8088 1979 29.000 3 5 MHz 16 /8 0.33
80286 1982 134.000 1.5 6 MHz 16 1
80386 1985 275.000 1.5 16 MHz 32 5
80486 1989 1.200.000 1 25 MHz 32 20
Pentium 1993 3.100.000 0.8 60 MHz 32/64 100
Pentium II 1997 7.500.000 0.35 233 MHz 32/64 ~300
Pentium III 1999 9.500.000 0.25 450 MHz 32/64 ~510
Pentium 4 2000 42.000.000 0.18 1.5 GHz 32/64 ~1700
Phenom II X6 2010 904.000.000 45 nm 3,2 GHz 64/128 ~68000
Intel Core I7 2010 1,17 32 nm 3,3 GHz 64/128 ~147000
i980 milliárd
5
Moore törvény (1965 óta)
Az integrált áramkörökben lévő tranzisztorok száma (ezáltal durván a
számítási teljesítménye) nagyjából kétévente (eredetileg 18 havonta)
megduplázódik.

Az utóbbi években már nehéznek tűnt a betartása, de valamilyen


technológiai újításnak köszönhetően továbbra is érvényes.

6
Pentium II Pentium Pro

Pentium III Pentium 4

7
8
A processzorok fejlesztése során számos, az architektúrát érintő
újítást vezettek be a teljesítmény fokozása érdekében. Ilyen
 
 az utasítások előre beolvasása (pre-fetching).
 
A program végrehajtása során a következő végrehajtandó utasítás
nagy valószínűséggel az éppen végrehajtott utasítást követő utasítás a
memóriában. Az utasítás végrehajtása közben a következő utasítás
már beolvasható és a gyorsító (cache) tárban tárolható.

9
Futószalag elv (Pipelining)
A processzor mikroarchitektúráját érintő technika. Az utasítás
végrehajtását egymást követő elemi műveletek sorozatára bontja,
melyek a processzor különböző erőforrásait veszik igénybe. Tehát a
processzor az elemi műveletek számától függően egyszerre több
utasítás különböző fázisainak végrehajtásán dolgozik.
Egy-egy utasítás végrehajtásához szükséges idő ugyanannyi marad, de
gyakrabban fejeződik be egy-egy utasítás végrehajtása.

10
11
Superpipeline

A superpipeline-elvű megvalósításnál a Pentium futószalagjának


hosszát 5-ről 14 lépcsősre fejlesztették (a Pentium 3-ban 10, a
Pentium 4-ben 20, majd 31 lépcsős futószalag található), ezzel
elérték, hogy a feldolgozás (utasítás behívás, dekódolás és regiszter
behívás, végrehajtás, eredmény visszaírás) több lépcsőben hajtódjon
végre. Minél több lépcsős a futószalag, azaz minél egyszerűbb
részegységekből épül fel, annál magasabbra emelhető az órajel.

12
Elágazás előrejelzés
branch prediction, vagy
spekulatív végrehajtás
A futószalag elven működő processzorok elkezdik a következő
utasítás végrehajtását, mielőtt befejeződne az előző. Az elágazás
előrejelzés olyan technika, amely a program eddigi futásából
megkísérli megjósolni a következő utasítást egy elágazásnál (ma már
~90%-os sikerrel) és ennek eredménye alapján folytatódik a
végrehajtás abban a reményben, hogy az előrejelzés jó volt. Ha jó
volt, akkor a CPU sok-sok ciklusnyi időt takarított meg, ha nem, a
megkezdett következő utasítás(ok) végrehajtását abba kell hagyni, a
processzor állapotát vissza kell állítani, majd kénytelen a másik ágon
újrakezdeni a végrehajtást, ami a futószalag hossza miatt nagy kiesést
jelent.

13
Soron kívüli (out-of-order) végrehajtás
A korszerű processzorok több műveletvégző egységgel rendel-
keznek, amelyek egyszerre több utasítás aritmetikai/logikai műveletét
hajtják végre. A műveletvégző egységek jobb kihasználása érdekében
a processzorok a fordítóprogram által generált utasítás sorrendet
megváltoztathatják. Ha egyes utasítások számára az operandusok
még nem állnak készen, a műveleti végeredmények kivárják, hogy a
programkódban előttük található, de később operandushoz jutott
utasítások eredményeit átvegyék a regiszterek. Közben a programban
„később lévő” utasítások végrehajtódhatnak, ha minden adatuk már
elérhető. Ez csökkenti a futószalag-várakozásokat, és magasabb
órajelek elérését teszi lehetővé.

14
Utasítás cache (gyorsítótár)
A cache a processzorban vagy közvetlen közelében lévő kis
kapacitású, gyors működésű memória, amely a végrehajtott
utasításokat tárolja. Ha a program végrehajtás során az
utasítások ismételten végrehajtódnak (pl. ciklusok), a
processzor az utasítást már a cache-ből veszi, nem a lassúbb
működésű főtárból.

15
Szuperskalár működés
 A processzor azon képessége, hogy egyszerre több utasítást is képes
végrehajtani. A Pentium processzor például 2 végrehajtó futósza-
laggal (pipeline) rendelkezik, így a szuperskalár szintje 2. A Pentium
Pro 3 utasítást hajt végre órajel-ciklusonként, így a szuperskalár
szintje 3.

16
Hyper-Threading (Intel)
Több programszál párhuzamos végrehajtása.
A Hyper-Threading technológiával rendelkező processzorok úgy
jelennek meg a programok számára, mint több logikai egység.
Az operációs rendszer és a feladatok mint két-két különálló logikai
egységet programozhatnak, majd a processzor végrehajtja a két
logikai egység feladatait, ez a programok számára mint valódi
párhuzamos végrehajtás fog látszani.

17
HyperTransport 3.0 (AMD)
A kezdeti 200 megahertzes buszsebességhez képest már 2,6
gigahertzes sebességgel kommunikálhat a processzor a számítógép
többi alkatrészével, azaz irányonként 20,8 GB/s-os sávszélességgel
rendelkezik.
Több magos rendszereknél az összekapcsolt processzorok
belelátnak egymás memóriájába.

18
Gyorsítótár (cache)
A gyorsítótár egy nagy sebességű memória a CPU és a főtár (RAM)
között.
A főmemória DRAM technológiával készül, amely viszonylag lassú
működésű (az elérési ideje nagy).
A processzornak várakoznia kell ("wait state") a memóriából érkező
adatra vagy utasításra, vagy hogy az eredmény beíródjon a
memóriába.

19
• Ha a processzornak utasításra/adatra van szüksége, előbb a gyors
működésű cache-ben keresi. Ha nem találja, akkor fordul a
főmemóriához, majd a beolvasott utasítást/adatot a cache-ben is
elhelyezi.
• A cache lehetővé teszi, hogy a processzor teljes sebességgel
dolgozzon (zero wait state).
• A cache set-ekre (blokkokra) van osztva, ezek a blokkok pedig n
darab cache-vonalat (cellát) tartalmaznak. Az adott számú
memóriablokkhoz hozzárendelődik egy cache-blokk, így az adott
memóriablokkból n darab cím tárolható el a cache-blokkban.

20
2121
Level 1. és Level 2. cache
Az 1. szintű cache jellemzői:
 igen gyors működésű (10 nanosec),
 a processzor várakozó állapot nélkül eléri a tartalmát,a
processzorral egy tokban helyezke-dik el,
 mérete 4-64 KB.

22
A processzor először az 1. szintű cache-ben keres. Ha nem találja a
keresett adatot, akkor fordul a 2. szintű cache-hez (régen az
alaplapon helyezkedett el, jelenleg már egy tokban a processzorral).
A 2. szintű cache nagyobb (128 KB-8 MB) , és lassúbb működésű
(20-30 nanosec.), mint az 1. szintű cache (ma már ez is a processzor
órajelén fut). Ha a második szintű cache-ben sincs meg a keresett
című memória rekesz tartalma, akkor fordul a processzor a
főmemórához (~60 nanosec.).

23
Visszaírás módjai
Egy program utasításai nem íródnak felül. Ezért az utasítás cache
tartalma csak akkor változik, ha egy végrehajtandó utasítás nincs bent
a cache-ben, és be kell hozni a főtárból. Ekkor természetesen a cache-
ből egy régóta nem használt tételt törölni kell.

24
Az adat cache tartalma a memória kiírás során frissül. A memóriába
íráskor a processzor (cache-hit esetén) a cache-ben változtatja meg az
adatot.
A cache és a főtár konzisztenciáját biztosítani kell, ezért a
megváltozott adatot a főtárba is ki kell írni.

25
Két módszer van:
• Write through (memória átírás)
• Write back (memória kiírás)

A memória átírás módszer a cache-bejegyzést és a főtárat


egyidejűleg frissíti, míg a memória kiírás módszer a főtárat csak
akkor frissíti, ha a cache- bejegyzés helyére új adat kerül.

26
Már az ezredfordulón látszott, hogy az órajelet nem lehet a
végtelenségig emelni, bár a Pentium 4 bevezeté-sével még az Intel
abban bízott, hogy a 10 gigahertz elérhető. Aztán a négy gigahertz
felé közeledve olyan problémák léptek fel, amilyenekről korábban
nem is tudtak a mérnökök.

Új megoldást kellett keresni.

Ha nem tudjuk tovább növelni a processzor teljesítményét, építsünk


be kettőt.

Ennek megfelelően jöttek a két- és többmagos chipek.

27
28
29
30
Kétmagos processzorok
• Intel Pentium D, vagy Pentium Extreme Edition
2,8 - 3,2 GHz, 2x16 KB L1, 2x1 MB L2, nem támogatja a Hyper-
Threading technológiát, két Pentium 4-es core volt "összedrótozva„

• Intel Core 2 Duo


feleannyit fogyaszt, miközben hetven százalékkal gyorsabb, mint az
előd Pentium D;
a teljesítmény nem csak az órajeltől, hanem az órajelenként
végrehajtott utasítások számától is függ (végre rájött az Intel is; az
Intel 2000-től 2005-ig azt állította, hogy csakis a megahertzek
számítanak)

31
Intel Core 2 Duo
A Core mikroarchitektúra öt legfőbb újítása a következő:
• Intel Wide Dynamic Execution
• Intel Advanced Digital Media Boost
• Intel Advanced Smart Cache
• Intel Smart Memory Access
• Intel Intelligent Power Capability

32
Intel Wide Dynamic Execution

A Dynamic Execution (dinamikus végrehajtás) olyan technikák kom-


binációja (többszörös elágazásbecslés, adatfolyamelemzés,
spekulatív végrehajtás), melyet az Intel anno a P6-ban mutatott be
(Pentium Pro).
A Core esetében az Intel ezt a részegységet ismét továbbfejlesztette,
így megszületett a Wide Dynamic Execution. Ez órajelen-ként több
utasítás végrehajtását teszi lehetővé, aminek hatására gyorsul a vég-
rehajtás sebessége és javul a fogyasztási mutató. Az Intel Mobile és
NetBurst mikroarchitektúra (és az AMD K8 is) egy időben három
x86-os utasítás végrehajtására/dekódolására képes, ezzel szemben a
Core már négyet (egyes esetekben ötöt) tud elvégezni. Ennek
következtében azonos órajeleket feltételezve a Core gyorsabb, mint
az előzőleg felsorolt architektúrák. A hatékonyság további növelése
érdekében még pontosabb lett az elágazásbecslő és nagyobbak lettek
az utasításpufferek is. A Pentium III 10 lépcsős és a Pentium 4
(Northwood) 20, illetve 31 (Prescott) lépcsős futószalagjával
ellentétben a Core-ban 14 lépcsős pipeline-ok találhatóak.
33
Intel Advanced Digital Media Boost
A továbbfejlesztett digitális médiagyorsítás azokkal az utasítás-
készletekkel foglalkozik, melyeket ezidáig Streaming SIMD Ex-
tension (SSE) néven ismertünk. Ezek az utasítások az olyan fela-
datok elvégzésében vállalnak szerepet, mint pl. videó-, zene- vagy
képszerkesztés, kódolások, konvertálások és minden olyan program,
melyek kihasználják az SSE-utasításkészletek által felkínált lehető-
ségeket. Ezek a 64 vagy 128 bites integer és lebegőpontos
operandusok csökkentik az összes végrehajtandó utasítás számát
(egy vektorban vagy tömbben eltárolt összes adaton egyszerre haj-
tódik végre egy utasítás), így növekszik a teljesítmény. Az előző
CPU-generációknál egyetlen 128 bites SSE utasítás végrehajtásához
két órajelciklusra volt szükség, hiszen ezek az egységek csak 64
bites feldolgozásra lettek felkészítve. Ezzel szemben a Core a 128
bites SSE operandusokkal már egyetlen órajelciklus alatt végez, ami
a korábbi processzorokhoz képest kétszeres gyorsulást jelent, ameny-
nyiben 128 bites SSE utasításokkal dolgozik a proceszszor (64 bites
utasítások esetén a Core 4, az AMD K8 pedig 3 kalkulációval tud
végezni órajelenként).

34
Intel Advanced Smart Cache
A továbbfejlesztett intelligens gyorsítótár nem más, mint a Core
processzorokban található megosztott, továbbfejlesztett gyorsítótár
"beceneve". Intelligens (smart) elnevezését annak köszönheti, hogy a
Core-ban a másodlagos gyorsítótáron a két processzormag megosztozik.
Az Intel úgy fejlesztette ki az L2 cache-t, hogy ahhoz a két mag bármikor
hozzáférjen, tehát a Core esetében már nem a rendszerbuszt terheli a két
cache közötti adatforgalom. Ez a megoldás egyrészt csökkenti az
adatokhoz való hozzáférés idejét (csökkenti a késleltetést), másrészt
hatékonyabbá teszi a helykihasználást, hiszen nem kell duplikálni az
adatokat ahhoz, hogy mindkét processzormag számára elérhető legyen.
A Core processzorok modelltől függően összesen 2 vagy 4 MB L2
cache-en osztoznak, ezt a végrehajtó egységek dinamikusan osztják fel
egymás között, tehát erősen többszálú alkalmazások esetében a fentebb
vázolt pozitívumokban részesülünk, a gyorsítótár attól függően kerül
felosztásra, hogy az egyes végrehajtó egységek milyen gyakran
szeretnének hozzáférni a gyorsítótárban található adatokhoz. Ugyanakkor
az egyszálon végrehajtott alkalmazások során az egyik processzormag
abban a megtiszteltetésben részesülhet, hogy egyedüliként használhatja
akár az egész másodszintű gyorsítótárat (ha a másiknak éppen nincs rá
szüksége).
35
Intel Smart Memory Access

Az intelligens memóriaelérés két új technológiát takar.


Az egyik az Advanced Pre-fetch, amely továbbfejlesztett előbehívást
jelent. A prefetcher-ek detektálják az alkalmazások adatmozgatási
sémáit, és a gyakran igényelt adatokat gyorsabban elérhetővé teszik
(beteszik a cache-be), ezzel csökkentve a memóriakésleltetést.

A Core processzorokban összesen 8 prefetcher található (magonként


4), 2-2 db az L1 és L2 gyorsítótárban. A prefetcherek folyamatosan
figyelik, hogy mikor milyen adatokra van szükség, és ennek megfe-
lelően irányítják az adatforgalmat.

36
Intel Smart Memory Access
• Az Advanced Pre-fetchen kívül a Smart Memory Access-t egy tovább-
fejlesztett Memory Disambiguation (egyértelműsítés) nevezetű techno-
lógiával is felvértezték, amely a soron kívüli (out-of-order) algoritmu-
sok írási és olvasási hatékonyságát próbálja meg növelni azáltal, hogy a
LOAD műveleteket a STORE-ok elé helyezi. Erre azért van szükség,
mert nem lehet tudni, hogy az egymást követő LOAD és STORE mű-
veletek függenek-e egymástól (azaz ugyanazon memóriacímre/regisz-
terre/stb. hivatkoznak-e). A Core architektúra elődeihez mérten akár
30-40%-kal is gyorsabb lehet abban az esetben, ha az algoritmus jól
"jósolt", és az adatok közötti függőségben ez a "kavar" nem okoz
galibát később (vagyis a LOAD utasítással előretöltött adattól a később
meghívásra kerülő STORE nem függ). Ha viszont a művelet nem
végződik sikeresen, a Memory Disambiguation detektálja a problémát,
visszatölti az eredeti adatokat és újraindítja a kódot.
• A Memory Disambiguation a továbbfejlesztett előbehívóival tud haté-
kony lenni, utóbbi ugyanis képes előre megjósolni, hogy milyen
adatokra lesz szükség a későbbiekben, ami pont kapóra jön a Memory
Disambiguation számára. Ez a páros jelentősen képes növelni a
processzor és a memória közti kommunikáció hatékonyságát.
37
Intel Intelligent Power Capability
Az intelligens energia-vezérlés olyan tulajdonságok gyűjtőneve,
melyek a hőtermelés kordában tartásáért felelősek.
Ultra fine-grained Power Control (precíz energiavezérlés): a
processzormagok kihasználatlan részei egyszerűen leállhatnak,
miközben a mag más részei még dolgoznak.
Split Buses: a processzormagok és a belső adatbuszok feloszthatóak
több kisebb részegységre, melyeket így egymástól elkülönülve tud
vezérelni (ki-be kapcsolni) egy vezérlőáramkör.
Platformization of Power Management Architecture, három részből
tevődik össze:
PSI-2 vagyis Power Status Indicator (mobil CPU-k): a processzor jelzi a
rendszer felé a terhelést, így együttesen képesek optimalizálni a
feszültségszabályzó áramkör és a leadott teljesítmény hatékonysági mutatóit.
DTS (Digital Thermal Sensor): a processzorban immár nem egy, hanem több
hőszenzor található, melyek a processzor minden egyes részén külön-külön
felügyelik a hőmérsékletet.
PECI Interface (Platform Environment Control): a processzor képes egy
külön erre a célra tervezett chipen keresztül a hőmérséklettől függően
szabályozni a rendszer többi elemét is.
38
AMD Athlon 64 X2
2,2 – 2,4 GHz, 2x64 KB L1, 2x1
MB L2, a processzorok össze
vannak kötve. A System Request
Interface szolgál a két processzor
közvetlen kommunikációjára, míg
a Crossbar Switch kommunikál a
két mag számára közös
erőforrásokkal.
A Pentium D-nek ezen műveletek
elvégzéséhez a rendszerbuszra
van szüksége (lassabb).

39
Négymagos processzorok I.
• Intel Core 2 Quad (2006 ősz)
4x 32 KB L1, 2x 4 MB L2 cache.

• Az Intel fogott két darab kétmagos Core 2


Duo csipet, és közös tokozásba pakolta őket.

• A Core 2 Quad két fele ennek megfelelően


sokkal lassabban kommunikál egymással,
mint egy valódi négymagos processzor részei
tennék.

• A két Duo chip Front Side Bus – on keresztül


kommunikál egymással (lassú, 1333 MHz).
40
Négymagos processzorok II.
Az AMD a tökéletes megoldáson kezdett el dolgozni: négy mag
egybecsomagolva, villámgyors kommunikációval. K10, asztali
processzor változata a Phenom.

41
42
A K10-et, melyet nem a nulláról indulva alakítottak ki, hanem nagyon
sok tekintetben a K8 bevált megoldá-sait vitték tovább.
Az új generációs AMD processzor a K8 architektúrával
összehasonlítva a következő alapvető újdonságokat tartalmazza: natív
(monolitikus) négymagos felépítés, továbbfejlesztett előbehívás,
elágazásbecslés és gyorsítótárak, 128 bites adatfeldolgozás, harmad-
szintű gyorsítótár (L3 cache), kibővített címfordítási pufferek (TLB),
sideband stack optimizer, magasabb FPU-teljesítmény, SSE4a
utasításkészlet támogatása (core 2 duo „csak” a SSE3-at ismeri), 2 x
64 bites memóriavezérlő, HyperTransport 3.0, finomított ener-
giagazdálkodás és továbbfejlesztett virtualizáció.

43
• A K10 az AMD első négymagos processzora, mely úgy-mond natív
módon négymagos, ami annyit jelent, hogy egy szíliciumlapkán
található mind a négy mag.
• Ezzel szemben az Intel megoldása (Kentsfield, Yorkfield,
Clovertown, Harpertown) két darab kétmagos lapkát köt össze
egyetlen tokozásban.
• A K10 65 nm-es csíkszélességen készül; 463 millió tranzisztorból
épül fel, mérete pedig 285 mm2.
• A K10 összesen 4 x 128 kB L1 és 4 x 512 kB L2 cache-t, illetve 2
MB L3 cache-t tartalmaz (összesen 4608 kB), szemben a
Kentsfielddel, mely 4 x 64 kB L1 és 2 x 4 MB megosztott L2 tárral,
azaz összesen 8348 kB cache-sel rendelkezik (a Yorkfielden már 2 x
6 MB L2 cache található).

44
A K10 memóriavezérlője immár két egymástól független 64 bites
vonalon bonyolítja az adatforgalmat, szemben a K8 128 bites (dual-
channel) megoldásával. Ez azt jelenti, hogy lehetővé válik az írási,
illetve olvasási műveletek egy idő-ben történő végrehajtása, illetve
mindkét csatorna saját me-móriaterülettel rendelkezik, azaz egyazon
időben kétszer annyi adat válik hozzáférhetővé a processzor számára,
igaz, feleakkora sávszélesség mellett, de erősen többszálas végre-
hajtásnál (főleg egy négymagos processzor esetében) ez a
megvalósítás tűnik nyerőnek (Intelnél adott órajel alatt az
adat/cím/utasítás-folyam egyszerre csak egy irányba mo-zoghat.
Természetesen az adatok egy időben ide-oda szeretnének vándorolni,
így az a tény, hogy egyidejűleg csak egy irányba mehetnek, igencsak
visszafoghatja az új Intel pro-cesszorokat).

45
46
A K10-ben debütál egy memóriaírási kéréseket gyűjtő átmeneti tároló
is. Erre azért volt szükség, mert míg a (Xeonok által használt)
FB-DIMM memóriák az írási és olvasási műveleteket képesek egy
időben végrehajtani, addig a K8 memóriavezérlője ezt nem tudja.
Ha tehát a memóriavezérlő felé érkezik egy nagy adag írási és olva-
sási kérés, akkor ezeket kénytelen egyenként végrehajtani, rengeteg
időt elpazarolva a váltásokra.
Ezzel szemben a K10-ben található átmeneti tároló begyűjti az írási
kéréseket (eközben az olvasási műveletek folyamatosan végrehajtód-
nak), majd egy pontot átlépve a memóriavezérlő az összes felgyülem-
lett írási kérést végrehajtja, ezzel megspórolva az írás/olvasás
váltások idejét.

47
Az adatfeldolgozás az utasítás előbehívásával (prefetch) kezdődik,
ahol a K10 szintén számos újítást vonultat fel. Az előbehívás során az
x86-os utasítások az elsőszintű (L1) utasításcache-ből a dekódoló
egységekhez érkeznek, amiből a K7/K8/K10 összesen kettővel
rendelkezik. A K10-nél a cache-szervezésben és az elágazásbecslés-
ben is komoly változtatásokat eszközöltek.
Az elágazás-előrejelző puffer kibővült egy 512 férőhelyes indirekt
előrejelzővel (amely a többirányú elágazások (switch, case) végered-
ményére tippel), és megduplázódott, 24 férőhelyesre bővül a
visszatérési címverem mérete (Return Address Stack), amelyben a
közeli és távoli hívások címei tárolódnak.
Változott az első- és másodszintű gyorsítótár is: az egyes processzor-
magok két-két adatelőbehívóval (prefetcher) rendelkeznek (lapkán-
ként összesen nyolc), melyek immár közvetlenül az L1 adatcache-be
(késleltetése 3 ciklusidő) írják az adatokat, szemben a K8-cal, amely
az L2 cache-be dolgozott (ez persze lassabb, késleltetése 9 ciklusidő).
Ha az L1 cache megtelik, akkor a legrégebben használt adat az L2
cache-be kerül (exclusive cache). 48
Az L1 utasítás- és adatcache mérete nem változott, de a TLB-ket opti-
malizálták, és nyolc bejegyzéssel bővültek is (40-ről 48-ra). A TLB, azaz
Translation Look-aside Buffer egy olyan gyorsítótár, amelyben virtuális
memóriacímekhez tartozó fizikai memóriacímek tárolódnak. Az operációs
rendszerek a virtuális memóriával gazdálkodnak, ezért a processzor a vir-
tuális címek alapján tudja megcímezni a fizikai memóriát. Minél több be-
jegyzés fér el a TLB-ben, a CPU annál gyorsabban fér hozzá az adatokhoz.
Az L1 utasítás- és adatcache szélessége is megváltozott, az utasításcache
immár ciklusonként két 128 bites utasítás küldésére, illetve fogadására ké-
pes, szemben a K8 kétszer 64 bites sebességével, és az adatcache is
duplájára gyorsult: immár két 128 bites loadot vagy két 64 bites store-t
támogat.
Az L1 és L2 cache közti útvonal szélessége szintén megduplázódott (128
bitről 256 bitre), a másodszintű gyorsítótár mérete pedig magonként 512
kB-ban fixálódott, a TLB itt is optimalizáláson esett keresztül, illetve az
adatcache kibővült nyolc 1 GB-os bejegyzéssel (nagyméretű adatokkal
dolgozó adatbázis- és HPC-alkalmazásoknál jelent majd előnyt).

49
Érdekesség, hogy az adatmozgás útvonala a K10-ben az x86-os CPU-knál
megszokott sorrend fordítottja. Ez azt jelenti, hogy a memóriából az adatok
közvetlenül az L1 cache-be kerülnek, majd onnan az L2-be és az L3-ba. A
másodszintű gyorsítótár úgymond „victim”, vagyis csak az L1 cache-ből
kikerülő adatokat találjuk meg benne. Amikor egy L2 cache-ben megtalál-
ható adatra van szükség, akkor az átkerül az L1 cache-be, és törlődik az L2
cache-ből.
Az egyik legszembetűnőbb változás az L3 cache megjelenése: a harmad-
szintű gyorsítótár megosztott a négy mag között (tehát mindegyik hozzáfér).
Az L3 cache az L2-höz hasonlóan victim cache, tehát csak az L2 cache-ből
„kitett” adatokat tartalmazza, és majdnem teljesen exkluzív, de vannak olyan
esetek is, amikor inkluzívként működik: amikor egy adat az L3 cache-ből
átkerült az L1 gyorsítótárba (az L2 mindig kimarad), az adott adatok attól
függően törlődnek vagy nem törlődnek onnan, hogy ahhoz egy vagy több
processzormag akar-e hozzáférni. Ha egy, akkor az adat törlődik a cache-
ből, ha több, akkor megmarad.
Az L3 cache szerverek esetén előnyős nagy adatbáziskéréseknél.

50
Hárommagos Phenom

Ezek a processzorok valójában a CPU-gyártástechnológia


sajátosságaiból adódó „melléktermékek”. Azaz nagy részük azokat
az eredetileg négy CPU-magot tartalmazó szilícium-lapokat kapja
majd, melyek elbuktak a minőségellenőrzés bizonyos fázisaiban,
ugyanakkor a négyből három processzormag még munkára fogható.

51
Hatmagos Intel processzor

52
Intel V8

• Az Intel V8 két Xeon X5365 processzorral érkezett. Ezek


négymagos, 3 GHz-en futó, 333 MHz-es FSB-vel (1333 MHz
QPB) és 8 MB másodszintű gyorsítótárral rendelkező szerver-
processzorok.

• A Xeon X5365 asztali megfelelője a Core 2 Extreme QX6850,


mely hasonló tulajdonságokkal rendelkezik, de nem támogatja
a többprocesszoros működést.

53
AMD Phenom II

A Barcelona és a Shanghai, vörössel kiemelve a harmadszintű gyorsí-


tótár.
54
AMD Phenom II

55
AMD Phenom II
A K10.5-alapú processzorok első és legszembetűnőbb tulajdonsága (a meg-
emelt órajeleket leszámítva) a 6 MB-ra növelt harmadszintű gyorsítótár.
Némileg átalakították a memóriavezérlőt: az új család memóriavezérlője a
DDR2-es memóriákon túl már a DDR3-as szabványt is támogatja.
Az AMD-féle K10.5-ben bemutatkozó "Smart Cache, cache flush on halt"
lehetővé teszi, hogy a gyorsítótárakban található információkat csak azokból
a gyorsítótárakból olvashassa ki a processzor, melyek éppen működésben
vannak, azaz egy adat megkeresése során egyik processzort sem "ébresztik"
fel feleslegesen, már amennyiben az előtte leállt, mert nincs használatban. A
leálló processzorok első- és másodszintű gyorsítótárjában található
információk a "halt" stádium meghívása során átmásolódnak a harmadszintű
gyorstárba, így a processzorokat később "nyugiban" lehet hagyni, ami
természetesen fontos szempont az energiahatékonyság szempontjából.

56
AMD Phenom II

Egy mag meghibásodása


még nem gond, ezt ugyanis
letiltása után még mindig el
lehet adni Phenom II X3-
ként.
A Phenom II X2 (Callisto)
bevezetése pedig még
mindig jobb megoldás, mint
a hibás chipek kukázása.

57
6 magos AMD Istambul

58
Intel Core i7
Az Intel tikk-takk névre keresztelt taktikája azt jelenti, hogy a páros
években bemutatkozik egy új architektúra (ez a takk), a páratlan
években pedig megjelenik a piacon ennek az alacsonyabb csíkszé-
lességen gyártott változata (ez a tikk).
2006-ban az Intel előhozakodott a Core architektúrával (Merom).
2007-ben bemutatta a Core 45 nm csíkszélességen gyártott változa-tát,
a Penrynt.
2008-ban megjelent a Nehalem, mely egy új fejlesztés. Azt az Intel
nem tagadja, hogy az új generáció alapja a Core architektúra, amely a
Pentium M-ből fejlődött ki, ennek elődje pedig a Pentium 3 lehet-ne,
ami az 1995-ös Pentium Pro jelentős átalakuláson keresztülment
változata.

59
Kérdés: mit változtattak meg a Core-on a Nehalem
(Intel Core i7) processzor fejlesztésekor?
 Szokás szerint növelték az adott mennyiségű fogyasztásra vetített
órajelenként elérhető teljesítményt.
 Modulárisan felépülő architektúra, ahol a komponensekből köny-
nyedén építhető össze egy-egy erősebb-gyengébb CPU.
 Az egyes rendszerkomponensek összekötéséért felelős adatbuszok
leváltásra kerültek, mostantól nincs már FSB.
 Integrált memóriavezérlő megjelenése.
 Alaposan megváltozott a cache-hierarchia, megjelent a
harmadszin-tű gyorsítótár.
 Újra megjelenik az SMT, azaz a Hyper-Threading technológia.
 Dinamikusan kezelt processzormagok, programszálak, gyorsítótá-
rak, interfészek és fogyasztás.
 A SIMD-utasításkészletek kibővítése.
60
Intel Core i7 processzor felépítése

61
Az Intel Core i7 két főbb részre osztható:
A magra és minden egyébre, ami azon kívül esik (core és uncore).
A mag felépítésben és működésben a legutóbbi Core 2-t, a Penrynt
követi, így maradt a széles utasításdekódoló, a mindössze 2 lép-
csőfokkal megtoldott, de még így is rövid futószalag (16 lépcsős).
Intel processzorhoz a szokások szerint új utasításkészlet-
kiegészítés is társul, mégpedig az SSE 4.2, ami 7 új utasítást ad a
szoftverfejlesztők kezébe.
Egy részük az XML, illetve szövegfeldolgozásra specializálódott,
továbbá tartalmaz speciális területekre fókuszáló, különböző
mintafelismerő instrukciókat is (pl. kézírás felismerés, arcfelismerés,
génkutatás stb.).

62
A Nehalem processzor hasonlóan nagy újdonsága az LSD (Loop
Stream Detector) újratervezése.
Ez az egység képes arra, hogy a programokban lévő ciklusok
végrehajtását gyorsítsa fel nagyságrendekkel. Az új magnál az LSD
egység az utasításdekódolás után helyezkedik el a sorban, így
mikroutasításokkal képes dolgozni, vagyis egy ciklus végrehajtása-
kor a teljes dekódoláshoz használt rész lekapcsolható, amivel sok
energia megspórolható. Az x86-os makroutasítások fúzióján is
javítottak, már nem csupán a 32 bites, de a 64 bites utasításokat is
képes összefűzni a dekódoló, és több olyan ideális eset is előfor-
dulhat, amikor egy mag akár öt utasítást is dekódol, végrehajt és
eredményeiket elmenti.

63
Ezt az új felépítést a cache hierarchia átformálása is segíti. A cache-
hierarchia is jelentős átalakuláson ment keresztül.
A harmadszintű gyorsítótár megjelenése újdonság: 8 MB méretű,
megosztott a processzormagok között és inkluzív, azaz az összes L1 és
L2 gyorsítótárban megtalálható infor-mációt tárolja: az Intel szerint ez
sokkal jobb megoldás, mint az AMD által alkalmazott exkluzív cache,
mert így az adatkeresgéléshez szükséges forgalom csökkenthető, így a
kihasználható terület viszont kisebb. Az L3 cache-ben való keresgélést
cache-cellánként négy "core valid" bit segíti, melyek megmutatják,
hogy a keresett információ megtalál-ható-e valamelyik gyorsítótárban
vagy sem.

64
A Core i7-nél ismét találkozunk a Hyper-Threading technológiával.
Ez a fejlesztés alkalmas arra, hogy a valójában 4 magos Core i7
processzort a rendszer felé 8 magosnak mutassa.
A Pentium 4-nél már használt SMT (Simultaneous Multi-Threading),
ami megfelelő alkalmazások esetén akár 10–18%-ot is gyorsított a
rendszer működésén, ezúttal sokkal kifinomultabb megvalósítást
kapott, ahogy a szoftvertámogatottság is sokkal jobb, mint évekkel
ezelőtt.
A HTT újraélesztésével kiaknázható a radikálisan megnövekedett
sávszélesség és a nagyobb belső bufferek, a rendkívül gyors utasítás-
végrehajtók pedig közel 100%-os kihasználtsággal futhatnak. Ez a
megoldás a jelenlegi négy mag esetén jelentősen javítja a
processzor hatékonyságát, ami a PC teljesítményét akár 20%-kal is
növelheti.

65
A Nehalem az első olyan Intel processzor, amely pont-pont összeköttetésen
keresztül kommunikál a rendszer többi elemével, ez pedig a QuickPath
Interconnect (QPI). Ez a megvalósítás ismerős, hiszen az AMD már a K8-tól
kezdve egy ehhez hasonló linket használ (HyperTransport). Hatalmas
előrelépés a Front Side Bus (FSB) és ezzel együtt a processzoroldali QPB
(Quad Pumped Bus) megszüntetése ami eddig az északi hidat kötötte
össze a processzorral. Ez rendkívül szűk keresztmetszet volt, hiszen ezen a
maximálisan 12,8 GB/s-os csatornán kellett a memóriavezérlővel és egyben
az egész rendszerrel tartania a CPU-nak a kapcsolatot.
A Core i7-ben a tokon belülre az Uncore részbe költözött a háromcsatornás
DDR3 memóriavezérlő, így az új CPU-nak a rendszerrel való kapcsolatra (az
északi hídhoz) teljes, 25,6 GB/s-os sávszélességgel áll rendelkezésére a
QPI (QuickPath InterConnect) busz. Ennek köszönhetően a CPU közvetlenül
és dedikáltan, 25,6 GB/s-os sebességen éri el a háromcsatornás, DDR3
rendszermemóriát, miközben a rendszerrel is ekkora sebességel kommuni-
kálhat.

66
Ez nagyban hasonlít az azonos sávszélességet biztosító, AMD Phenomnál
is használt Hyper Transport 3.1-re. Az olcsóbb 1156 lábú Core i5-ös
CPU-knál már csak kétcsatornás DDR3 vezérlőt alkalmaz az Intel, ám
még ez is sokkal gyorsabb, mint Core 2-es elődje. Az integrált
memóriavezérlő nem csupán a QPI busz tehermentesítése miatt nagyszerű
újdonság, de a rendszermemóriát is közelebb hozta a processzormaghoz.
Az LGA1366-os Core i7-be háromcsatornás DDR3 memóriavezérlőt
szereltek, ami maximálisan 25,6 GB/s-os sebességre képes – ez pedig a
többszöröse a Core 2 rendszereknél használt északi hídba integrált
memóriakontrollerének.
Aki Core i7-re vált, nem csupán új alaplapot és CPU-t kénytelen majd
venni, de a háromcsatornás kiépítés miatt DDR3-as modulból is hármat
kell vásárolnia, így 3, 6 vagy 12 GB memória lesz gépében. Ennek
kihasználásához pedig váltania kell a Windows 64 bites változatára.

67
68
69
70
A Nehalem másik nagy újdonsága a fejlett
energiagazdálkodás.
Minden mag, és a magon kívüli rész saját feszültségszinttel és frek-
vencián üzemelhet a terheltség függvényében, így magonként alvó
üzemmódba kapcsolható a CPU. Ezt javítja az EIST (Enhanced
Intel SpeedStep: dinamikus órajel-szabályozás) Turbo módja.

Amennyiben a CPU fogyasztása nem éri el a maximálisan


megengedett TDP értéket, a CPU növeli eggyel az órajelszorzót, így a
CPU 133 MHz-cel gyor-sabban üzemel. Ha egy-két magot terhel túl a
program, a CPU akár kettővel is növeli a szorzót, feltéve, hogy a
maximális fogyasztás nem haladja meg az előírtakat.

A Turbo mód legnagyobb erőssége, hogy mindehhez semmiféle szoft-


veres támogatás, segédprogram vagy különleges beállítás nem szük-
séges, a CPU mindezt hardveresen vezérli.
71
72
Mivel a Core i7 CPU egymástól függetlenül vezérli a processzor-
magokat elképzelhető, hogy miközben egyik mag alszik, a másik
három dolgozhat, de az is előfordulhat, hogy csak egy magot terhel le
az aktuálisan futó, egy programszálra optimalizált program. Ekkor a
processzor vezérlése akár kettővel is megemelheti a szorzót, ami 266
MHz-cel növeli az órajelet. Mivel azonban a többi mag alvásba kap-
csolt, a processzor nem fogyaszt többet a megengedettnél, nem termel
több hőt, és garantáltan nem fagy le.
A mélyalvási üzemmódban az egyes magok tökéletesen lekapcsolód-
nak a rendszerről, nem fogyasztanak semmiféle áramot, így hasz-
nálaton kívül a teljes fogyasztás is jelentősen lecsökken.

73
A rugalmas, core-uncore felépítésnek köszönhetően egy tokba
annyi magot zsúfolhatnak a fejlesztők, amennyit a gyártástechnológia
megenged (jelenleg nyolcat), és ehhez hasonlóan szabható az uncore
is. Lesz olyan uncore-ral szerelt modell, amiben csak duplacsatornás
DDR3 vezérlő van, viszont kap egy integrált GPU-t, szerverekhez
pedig négycsatornás FB-DIMM memória kontrollert és több QPI
kapcsolatot építhetnek be.

74
Core i5, i3 jelzésű Intel processzorok
• 32 nm-es gyártástechnológia.
• 45 nm-es csíkszélességű GMCH (Graphics Memory Controller HUB)
vezérlőchip, mely a memóriavezérlőt, a PCI Express vezérlőt, vala-mint
az integrált grafikus magot rejti.
• A Core i5 jelzésű Clarkdale processzorok újdonsága az AES utasítás-
készlet, mely hat új instrukciót kínál az AES algoritmusok gyorsabb
feldolgozására.
• A központi lapka két processzormagot tartalmaz, melyek egy-egy
256 kB-os L2, valamint egy 4 MB-os megosztott L3 gyorsítótárat
használnak, és támogatják a Hyper-Threading, illetve a Turbo Boost
technológiát.
• Az Arrandale kódnéven futó mobil processzoroknál a Turbo Boost
technológia az integrált grafikus magra is ki lesz terjesztve, aminek
köszönhetően a rendszer automatikusan az igényekhez állítja be magát.

75
Turbo L3 Hyper- GPU Fogyasztá
Típus Órajel
Boost cache Thread. órajel s

Core i5-670 4 MB 733 MHz 73 W TDP


3,46 GHz 3,73 GHz van

Core i5-661 3,33 GHz 3,6 GHz 4 MB van 900 MHz 87 W TDP
Core i5-660
3,33 GHz 3,6 GHz 4 MB van 733 MHz 73 W TDP

Core i5-650 4 MB
3,2 GHz 3,46 GHz van 733 MHz 73 W TDP

Core i3-540 3,06 GHz nincs 4 MB van 733 MHz 73 W TDP


Core i3-530 2,93 GHz nincs 4 MB van 733 MHz 73 W TDP

76
A GMCH vezérlő és a központi lapka

77
78
A GMCH vezérlőlapka kétcsatornás DDR3-as memóriavezérlővel
rendelkezik, továbbá 16 PCI Express 2.0-s csatornát képes kezelni.
Az integrált grafikus mag az előző generációs GMA X4500HD
rendszerhez viszonyítva jelentős újításokat vonultat fel, emiatt az
Intel mostantól HD Graphics néven kezeli az egységet.
A teljesen megújult setup motor mostantól a központi processzor
segítsége nélkül is képes az információk megfelelő feldolgozására,
továbbá a rendszer támogatja az AMD Fast Z Clear és Hierarchical Z
néven bejegyzett eljárásait is. Az előbbi technika rendkívül gyorsan
használhatóvá teszi a mélységpuffert anélkül, hogy erőforrást
pazarolna az előző képkockára vonatkozó adatok törlésére, míg az
utóbbi elgondolás a képpontok leképzése előtt végrehajtandó
Z-tesztet gyorsítja fel egy másodlagos mélységpuffer bevezetésével.
A számításokat 12 darab shader processzor végzi, a grafikus mag a
DirectX 10-es és az OpenGL 2.1-es API-kkal kompatibilis.
79
Intel hexa-core processzor, a Core i7-980X
Extreme Edition
32 nm-es csíkszélesség
Egy részegységekben 50%-kal kibővített, hatmagos, Lynnfield-alapú
Core i7-es
Hat db 256 KB másodszintű, illetve 12 MB harmadszintű gyorsítótár
A Hyper-Threading technológia révén összesen 12 szálat képes
egyszerre kezelni.
1,17 milliárd tranzisztorból épül fel, a mag mérete mégis kisebb (248
mm²), mint a 45 nm-en gyártott Core i7-esé (263 mm²).
A 32nm-es csíkszélesség miatt a hatmagos processzor annyit vagy ke-
vesebbet fogyaszt, mint a 45 nm-es, négymagos.

80
81
A nyolcmagos Nehalem-EX

82
A hatmagos AMD Phenom II X6
Negatívumok:
 45 nm-es csíkszélesség
 az AMD úgymond „hozzáillesztett" két további processzormagot a
Phenom II X4 maghoz, és ebből lett az X6.
 A CPU-n belül a harmadszintű gyorsítótár mérete változatlan maradt,
op-timális esetben 6 MB.
 A gyorsítótár órajele sem változott, továbbra is 2 GHz, ami már a
négy-magos X4-et is sokszor visszafogta.
 Nem változott az északi híd vezérlőlogikájának az órajele sem, ez az
L3 cache-sel egyetemben 2 GHz-en jár.
 A két "odatapasztott" CPU-magtól az adatoknak hosszabb utat kell
meg-tennie a harmadszintű gyorsítótárig, mint a másik négytől.
 A HyperTransport-link sebessége, ami a külvilággal való kapcsolattar-
tásban játszik kulcsszerepet, szintén változatlan maradt.
 Az AMD a memóriavezérlőhöz sem nyúlt hozzá, mivel akkor másik
foglalat lett volna szükséges.
83
AMD Phenom II X6 AMD Phenom II X4

84
A hatmagos AMD Phenom II X6
Pozitívumok:
 Fogyasztása azonos a négymagos Phenom II X4-el.
 AMD Turbo Core névre keresztelt technológiája megjelenése, mely
érzékeli, hogy hány processzormag dolgozik, és ettől függően állítja be
az egyes magok órajelét. Ha mind a hat mag dolgozik, akkor az
alapórajel érvényesül, ez pl. az 1055T esetében 2,8 GHz. Ha viszont
csak egy, kettő vagy három mag dolgozik, akkor ennek a három
magnak az órajele felugorhat egy előre meghatározott szintre, ami 400
vagy 500 MHz többletet jelent típustól függően, a többi „alvó" mag
pedig 800 MHz-en ketyeg, tehát nem kapcsolja le a kihasználatlan
magokat, csak az órajelüket és a feszültségüket csökkenti. Ugyanakkor
a használt három mag órajelén felül a feszültségüket is megemeli, így
képes a meghatározott TDP-kereten belül maradni. (Az Intel Turbo
Boostja teljes, 4 vagy 6-magos terhelés mellett is megemeli az órajelet,
kevesebb erőforrást igénylő esetekben pedig tovább emeli a szorzót
egy bizonyos szintig, ugyanakkor a feszültséghez nem nyúl hozzá, és a
kihasználatlan processzorokat képes teljesen lekapcsolni). 85
Intel Sandy Bridge (2011)
2011 elején (2010 helyett) újabb takk-állomáshoz érkezett az Intel, amikor
egy új architektúrát jelentet meg, és a mostani a Sandy Bridge nevet kapta. A
Sandy Bridge alapjában véve a korábbi két- és négy-magos Core i3/i5/i7
processzorok leváltására érkezett.
Továbbra is 32 nm-es a gyártástechnológia.

86
A Sandy Bridge az első olyan asztali processzor, amely a CPU-magokon
felül egy GPU-t is tartalmaz.
A korábbi Core i3/i5 is tartalmaz GPU-t, de ezeken a GPU egy különálló
lapkán található a tokban.
Ennek köszönhetően egyes részegységek vezérlése egyszerűbb, és
gyorsabb az adatkommunikáció, ebből következően magasabb a
teljesítmény.
A GPU és a CPU összekötéséért felelős útvonal eltűnik, tehát csökken a
fogyasztás és a gyártási költség is.
Az egy lapkán elterülő CPU-magok és a GPU együttesen használhatják a
harmadszintű gyorsítótárat. Mivel ezt a processzormagok asztali
környezetben ritkán használják, ezért a GPU sebességét komolyan meg
tudja növelni.
A CPU egyes részegységei (magok, GPU, L3 cache, memóriavezérlő)
között egy körforgalmi adatbusz (ring bus) található, ezen utaznak az
adatok így biztosítva minden egyes részegység számára az azonos idejű
hozzáférést.
87
A front-end, az utasításbehívást és dekódolást végző rész kiegészült egy,
a Pentium 4-esnél megjelent trace-cache-szerű tárral, amely a már dekó-
dolt mikroutasítások (Uop) eltárolására képes. Ez kb. 1500 mikroutasí-
tást képes tárolni: előnye akkor jelenik meg, ha a behívás (fetch) során
egy már a Uop-cache-ben található utasításra kerülne a sor, akkor azt
nem kell újra dekódolni, tehát lekapcsolható a front-end rész, ezzel
gyorsul a parancsok végrehajtása, és energiát is meg lehet takarítani.
Továbbfejlesztették az elágazásbecslést is egy kicsit, mint minden
korábbi architektúránál.

88
Megnövelték a ROB (Re-Order Buffer) méretét, valamint beillesztettek
mögé két fizikai regiszterfájlt (egy FP és egy Int) is. A ROB alapvetően az
utasítások sorrendjét állítja vissza az eredeti állapotba, miután az OoO-
feldolgozás (Out of Order) megtörtént, ugyanis ebben tárolódnak az egyes
műveletek végeredményei. A két regiszterfájl bevezetésére a Sandy Bridge-
ben bemutatkozó AVX (Advanced Vector Extensions) SIMD-utasításkészlet
miatt volt szükség, amely 256-bit széles utasítások feldolgozását lehetővé
teszi.

Az AVX alapvetően a
lebegőpontos feldolgozás
gyorsítására lett kifejlesztve,
és lehetővé teszi a
háromoperandusos
műveletvégzést, tehát az
a:=a+b helyett immár
használhatjuk a c:=a+b
formát
89
A lebegőpontos teljesítmény megfelelő szélességű back-enddel használható
ki igazán. A Sandy Bridge minden egyes 256-bites AVX utasítást egyetlen
Uop-ként hajt végre, az új végrehajtók pedig lehetővé teszik, hogy
órajelenként egy 256-bites FP szorzást, egy 256-bites FP összeadást és egy
256-bites eltolást (shuffle) hajtson végre. Az utasítások végrehajtása után a
Load és Store gyorstárak lépnek működésbe.
A Nehalem Load és
Store gyorstárait,
amelyek vagy csak
loadot vagy csak store-t
voltak képesek tárolni,
felváltotta két
szimmetrikus tár,
amelyek a Load és a
Store utasításokat is
képesek végrehajtani.

90
Turbo Boost 2.0
Beállítható az a fogyasztási keretet, amelyen belül megemelkedhet a
CPU-magok órajele, sőt akár egy kis időre túl is lépheti.
Ezen kívül az új Turbo Boost a GPU-órajelét a CPU-magok órajelétől
függetlenül vezérli, ha a CPU kevésbé terhelt, akkor a grafikus mag
órajele jobban megemelkedik.

91
Az integrált GPU (IGP)
A HD Graphics 3000-ben tizenkettő, a 2000-ben pedig hat, úgynevezett EU,
azaz feldolgozó egység (Execution Unit) található.
Újdonság az Intel InTru 3D, ami a 3D-s Blu-ray filmek lejátszását teszi
lehetővé.
Ehhez szükség van egy HDMI 1.4-es interfésszel szerelt tévére, és a H67-es
lapkakészletere, ami kezeli az FDI buszt.
A processzormagok és az IGP egy gyűrűs adatbuszon kapcsolódik a L3
gyorsítótárhoz egy-egy kétirányú megálló segítségével. Az adott mag által
igényelt adatok mindig a legrövidebb úton jutnak el a célhoz, vagyis a
késleltetés állandóan minimális lesz.
Mivel a harmadszintű gyorsítótárat az integrált grafikus mag is eléri és jóval
több adattal dolgozik, mint a processzormagok együttvéve, ez azt jelenti,
hogy akár teljes tárterületet teleírhatja adattal, ami rengeteg problémát
eredményezhet. Ezért a Sandy Bridge grafikus magjának a driver képes
megadni, hogy bizonyos alkalmazások ne írjanak a harmadszintű
gyorsítótárba, illetve hogy a driver a grafikus magnak csak a gyorsítótár egy
meghatározott részét rendelje hozzá.
92
Hibás a Sandy Bridge CPU-khoz tervezett vezérlőhid (2011 január)

Egy szoftveres úton javíthatatlan hiba miatt visszahívták az összes


leszállított 6-os szériába tartozó vezérlőlapkát.
A probléma a SATA-vezérlőben volt található. Egy ideig jól
működ-tek a csatlakoztatott meghajtók, de idővel a teljesítményük
fokoza-tosan csökkent, bizonyos idő eltelte után jelentősen
csökkentve a teljes számítógép sebességét. Az információk szerint
csak a 3 Gbps-os SATA portok rendelkeztek ezzel a hibával.

93
AMD Llano APU

Az AMD egy új kategóriát hozott létre a processzorok között, melyet


az eddig jól megszokott CPU (Central Processing Unit, azaz központi
végrehajtóegység) helyett APU-nak (Accelerated Processing Unit, az-
az gyorsított végrehajtóegység) nevez.
Az integrált GPU számítási kapacitását általános számításokra is fel
lehet használni, bizonyos esetekben lényegesen kedvezőbb teljesít-
mény/fogyasztás mutatók elérése mellett.
Az Intel Sandy Bridge GPU-jának számítási teljesítményét nem lehet
általános számításokra felhasználni, azaz csak a képi megjelenítés
gyorsítható általa.
32nm-es gyártástechnológia

94
A magok számának növelése eléggé tranzisztorigényes megoldás, emellett
probléma, hogy a többmagos processzorok programozása ne-hézkes, mely a
magok számának növelésével csak még nehezebbé. Ez oda vezet, hogy az
extra magok beépítése a teljesítményt nem növeli számottevően a megfelelő
szoftverek hiányában.

95
A Llano lapka egyelőre összesen négy darab CPU magot tartalmaz és
egy méretes GPU-t. Emellett egy összesen 24 sávból álló PCI Express
vezérlő is integrálásra került, mely mellől nem maradt el az integrált,
maximum DDR3-1866 szabványú memóriát támogató IMC.

96
A GPU öt darab
shader tömbbel
rendelkezik, ezzel
összesen 400 shader
processzort tartalmaz.
A lassabb verziókat a
diszkrét GPU-k
esetében már jól
bevett gyakorlat
szerint a tömbök
letiltásával hozzák
létre.

97
Az UVD motor frissítése révén megjelenik a harmadik generációs
UVD 3. Ez a motor kezeli a H.264/AVC, az MPEG-2/4, a VC-1, a
DivX és az XviD videók gyorsítását egészen Ultra HD felbontásig.

A GPU támogatja a DirectX 11-es, az OpenGL 4.1-es, az OpenCL


1.1-es, az OpenGL ES 2.0-s, valamint a DirectCompute 5.0-s API-t.
Képes a Direct2D és a DirectWrite felhasználásával a weboldalak
megjelenítését gyorsítani. Támogatja a WebGL-t is, ami a böngésző-
ablakban futó há-romdimenziós animáció gyorsítását teszi lehetővé,
illetve a flash animá-ciók gyorsítása sem jelent problémát.
A Dual Graphics névre hallgató technológia támogatása a Hybrid
Cross-Fire utódjának tekinthető. Ezzel az APU-ban található grafikus
processzor számítási teljesítménye egy extra GPU-t tartalmazó
diszkrét kártyával még tovább növelhető.

98
A memóriavezérlés
A dedikált 128 bites interfész helyett immáron az APU egyetlen 128
bites memóriavezérlőjére csatlakozik rá egy saját, GMC nevű egység
segítségével. Ennek értelmében a GPU osztozik a CPU-magokkal a
rendelkezésre álló, DDR3-1866 szabványú memória esetén 29,8 GB/s
maximális sávszélességen. Miközben egy Redwood-alapú, GDDR5
szabványú, 4 GHz-es effektív frekvencián működő memóriával
szerelt HD 5670 ennek több mint duplájával, 64 GB/s sávszélesség-
gel gazdálkodhat önállóan.
A GPU saját dedikált kapcsolatot kapott az integrált memóriavezér-
lőhöz (Garlic bus), így bár a GPU saját memóriaként a rendszerme-
mória egy szeletét használja, amihez a már említett GMC-n keresztül
fér hozzá, logikailag ezt a szeletet autonóm módon kezeli. Ez azért
érdekes, mert míg a CPU által kezelt memória-hozzáférések szigorú
előírások szerint (sorrendiség = koherencia) történnek, a GPU a saját
memóriaolvasásait és írásait meglehetősen szabadon átrendezheti,
ezzel növelve hatékonyságát. 99
A CPU és a GPU kommunikációja

Ennek meggyorsítására létrehoztak köztük egy közvetlen buszt is


(Onion bus). Eddig a CPU által kezelt memória, valamint a diszkrét
vagy a chipsetbe integrált GPU saját memóriája között idáig egy PCI
Express kapcsolat volt, illetve HyperTransport-link, amin keresztül
folyhatott a kommunikáció. Most már sokkal egyszerűbben hozzá
tudnak férni egymás memóriájához.
A CPU közvetlenül az Onion buszon keresztül tudja megküldeni a
GPU-nak szánt adatokat, amely aztán kiírja azt a Garlic buszon
keresztül saját memóriájába; mindezt kb. 8 GB/s sebességgel, míg a
PCI Expressen keresztül ez eddig ~ 6 GB/s-on történt.
A CPU olvashatja is a GPU memóriáját, viszont ez már lassabb, mivel
az olvasások előtt jeleznie kell a GPU felé, hogy az fejezze be a még
függőben lévő memóriaírásait, ezután lehet csak olvasni a GPU-
memória tartalmát biztonságosan.
100
A GPU saját memóriáján kívül (a driver hozzárendelt virtuálismemó-
ria-kezeléssel) hozzáférhet a rendszermemória többi részéhez is
közvetlenül, ilyenkor viszont figyelembe kell vennie, hogy a kért
memóriatartalom akár valamely mag L1/L2 cache-ében is lehet, így
minden ilyen kérést továbbítani kell először a magokhoz. Erre az
Onion buszt használja szintén. Ha valamelyik cache-ben van a kért
adat, akkor közvetlenül onnan kapja meg, így nem kell a
rendszermemóriához fordulnia.

Mindez azt eredményezi, hogy CPU által kezelt rendszermemória és a


GPU saját memóriája közötti adatmásolások/adatduplázások nagy
része feleslegessé válik, hiszen az egyik fél által feldolgozott kész
adatokat a másik közvetlenül felhasználhatja további számításaihoz,
felszabadítva ezzel a memóriavezérlő által biztosított 29,8 GB/s
maximális memória-sávszélesség egy részét.
101
Az alacsony fogyasztás elérése érdekében (elsődlegesen mobilgépek-
be szánt processzor) egy digitális energiagazdálkodási modul is beé-
pítésre került, mely folyamatosan monitorozza a főbb részegységek
hőmérsék-letét és terhelését.
Ez a K10 idejében bevezetésre került rendszer továbbfejlesztése.
Amelyik egységre éppen nincs szükség és a tervezésből adódóan
alkalmas erre, azt elaltatja a rendszer.
Ez a Smart Fetch technológia továbbfejlesztése, amely az inaktívvá
vált magok esetében azok L1 és L2 tárainak tartalmát képes volt
kiírni az L3 cache-be, majd lekapcsolni azokat.
A Llano nem tartalmaz L3 cache-t, ezért a rendszer lefoglal 16 MB
rendszermemóriát az L1 és L2 esetleges ideiglenes ürítéséhez.
Az adott mag ily módon való lekapcsolása után már csak elenyésző
áramfelvétellel kell számolni.

102
A korábbi Turbo Core technológia megkapta a 2.0-s verziószámot.

A Llano nem a pillanatnyi áramfelvétellel és hőmérséklettel kalkulál,


hanem az aktuális terheléssel.

Minden egyes lehetséges magi aktivitáshoz (melyek száma 100 körül


van) hozzárendeltek egy fogyasztási mutatót, ami alapján az energia-
gazdálkodási modul képes pontosan kiszámolni az éppen aktuális
fogyasztást, hogy az minden esetben az éppen szóban forgó modell
TDP keretének figyelembe vétele mellett optimálisan működjön. A
rendszer ennek megfelelően szabályozza az órajelet és a feszültséget is.

103
Amikor a GPU csak minimális terhelésnek van kitéve (pl. a Windows
asztal nézegetése), akkor a grafikus rész számára fixen fenntartott
keretet a CPU-magok kaphatják meg tehát órajelüket (akár mind a
négy magét egyszerre) fel lehet emelni akár a legmagasabb szintre is.

104
Amikor GPU keményen számol valamit, de mégsem tölti ki teljesen a
hozzárendelt keretet. Ilyenkor a még fennmaradó fogyasztási keretet
megkaphatják a magok, és ha például a négy közül az adott alkalmazás
csak kettőt használ, akkor azok órajelét fel lehet emelni, miközben a
másik kettőt addig le lehet kapcsolni.

105
Amikor a GPU minimális terhelésnek van kitéve (például egy DVD
film lejátszása), de eközben az összes mag teljes terhelésen számol
valamit, akkor a CPU-magok kapják meg a GPU TDP keretének nagy
részét.

106
Amikor az összes CPU-mag és a GPU is teljesen aktív a GPU kapja a
nagyobb prioritást, és a CPU magoknak a maradék keretből kell
gazdál-kodniuk. Ilyenkor már az APU hőmérsékletet is figyelembe
veszi a rendszer, hogy semmilyen esetben se lépje túl a TDP keretet
az aktuális fogyasztás. Ennek érdekében ideiglenesen akár lejjebb is
veheti a magok órajelét és feszültségét a vezérlő.

107
Az IBM z196 jelzésű processzora
Négy darab, 5,2 GHz-es órajelen üzemelő, out of order elvű magot
tartalmaz, vagyis az utasítások sorrendtől független végrehajtása
biztosított.
45 nm-es gyártástechnológiáján készülő processzor 1,4 milliárd
tranzisztort tartalmaz, és 512 mm²-es kiterjedéssel rendelkezik.
Az egyes magok 64 kB-os utasítás, 128 kB-os adat, valamint 1,5 MB-
os másodlagos gyorsítótárat használnak, míg a közös harmadszintű
gyorsítótár 24 MB-os kapacitást kínál.
Az Enterprise 196 szerver összesen 24 darab ilyen processzort tartal-
mazhat, így a rendszer négy modulra osztható fel és L4 gyorsítótárat
is alkalmaz, ami 192 MB-os kapacitást kínál, a memória mérete
maximum 3 TB lehet. A szerver másodpercenként 50 milliárd művelet
elvégzésére alkalmas.

108
Az ARM Cortex-A15 processzorok (2012-ben)
A főleg okostelefonokban és tabletekben helyet kapó rendszerek
nagyon jó teljesítményt kínálnak hihetetlenül alacsony fogyasztási
mutatók mellett.
Az ARM a rendszert a gyártópartnerek 32 és 28 nm-es gyártástechno-
lógiáihoz igazítja, sőt alkalmazható lesz kisebb csíkszélesség mellett
is.
Az órajel esetében a 2,5 GHz-es határ van megcélozva, így a jelenlegi
Cortex-A9 MPCore teljesítményének ötszöröse is elérhető a
fogyasztási mutatók közel azonos szintje mellett.
Az új generációs megoldás maximum négy processzormag beépítését
teszi lehetővé.
Újdonság lesz a hardveres virtualizáció támogatása, ami majd a rend-
kívül alacsony fogyasztású szerverek esetében lehet hasznos
tulajdonság. 109
Intel Atom processzor
Egyszerűbb felépítésű, mint a nagyobb Core 2 chipek, így lassabb ugyan
valamivel, de sokkal kevesebbet fogyaszt.
A Silverthorne mindössze 25 mm2 alapterületű, 47 millió tranzisztorból áll,
TDP értéke típustól függően 0,6 és 2,5 watt között alakul, órajele 1,8 GHz-ig
skálázódik. A lapka köré épülő platform Menlow kódnéven fut, és
tartalmazza a chipsetben helyet foglaló memóriavezérlőt, grafikus magot,
továbbá a vezeték nélküli hálózati vezérlőt is.
Az Atom minden olyan számítógépben helyet kaphat, melyeknél nem fontos
a komoly számítási teljesítmény, mivel főként internetezésre vagy más
hálózati alkalmazások futtatására szánják őket, MID-ek (Mobile Internet
Devices) és az UMPC-k (Ultra-Mobile PC). Az efféle olcsó hordozható
eszközöket el is keresztelték netbookoknak, míg asztali változataikat
nettopoknak.
Az Intel ezzel új kategóriát teremtett.
110
Az Atom processzor mellé kellett egy megfelelő chipset is, amely
tartalmazza a grafikai magot, a memóriavezérlőt, valamint a
meghajtó, USB és a többi vezérlést. Az egyik (SCH - System
Controller Hub) a DirectX 9 GMA 500 nevű grafikus részt foglalta
magában, amely segítségével a H.264/MPEG-4 AVC kódolású
anyagok lejátszása is támogatottá vált.

A 130 nanométeres technológiával legyártott megoldás mérete 86


mm² lett, amely több mint háromszorosa a Silverthorne lapkáénak.
Érdekes-ség, hogy az egyetlen chipes dizájn SATA vezérlő helyett
csak egyetlen PATA portot kapott, és a memóriavezérlő mindössze 1
GB DDR2-533 szabványú memóriát volt képes kezelni.

111
112
2009 legvégén az Intel beköltöztette a CPU lapkájába a teljes északi hidat.
Az egycsatornás memóriavezérlő által támogatott memóriatípus továbbra is
a DDR2, de bizonyos modellek mellé már a DDR3-800 szabványú modulok
is párosíthatóak. A chip tartalmazza a HD hangkodeket, továbbá négy darab
PCI Express csatornáról, valamint a SATA 3 Gbps, illetve a 2.0-s verziójú
USB portokat is kezeli. Az integrált grafikus mag csak az MPEG-2
kódolású anyagokat képes hardveresen gyorsítani, azaz H.264 és VC-1
továbbra sem lett támogatott
113
Az Intel az Atom processzornál más stratégiát választott: minél keve-
sebb tranzisztor felhasználásával alkotni mikroprocesszort úgy, hogy
annak kihasználtsága a lehető legnagyobb legyen. A teljesítmény terén
alacsony elvárást támasztottak.
Kihagyták az összes soron kívüli végrehajtáshoz szükséges logikát a
processzorból, így az az utasításokat a programsorrendnek megfelelően
(in-order) hajtja végre.
Egyetlen futószalagot hoztak létre a processzorban. Minden utasítás
végigmegy minden lépcsőn, közben elvégezve a betöltést, a számítást
és a tárolást. Optimális esetben minden lépcsőfokon tartózkodik egy-
egy utasítás, és órajelenként továbblép a következőre. A futószalag úgy
épül fel, hogy a lehető legtöbbféle utasítást ki tudja szolgálni, eléggé
meg-nyúlik, soklépcsős lesz: az Atom futószalagja 16 állomásból áll,
ami hosszabb, mint pl. a Core 2-é. Egy-egy hosszabb művelet (például
ha a beolvasandó adat nincs az L1 cache-ben, akkor annak betöltése az
L2-ből vagy a memóriából) hosszabb-rövidebb időre megállíthatja a
futósza-lagot, tehát egyetlen utasítás miatt nem tud továbblépni a többi
sem.
114
115
Ezt a problémát többféle módon kezelték a tervezők:
Két pipeline-t tettek egymás mellé, ez – ugyan az utasítások nem
előzhetik meg egymást, – lehetővé teszi, hogy sok esetben 2 egymást
közvetlenül követő utasítás végrehajtása egyszerre történjen, ha azok
függetlenek egymástól.
A hosszú pipeline miatt, hatékony elágazásbecslő logikát is beépítettek,
hogy az utasításbetöltésnek ne kelljen megvárnia az ugró utasítások ki-
számítását.
Újra alkalmazták a Hyper-Threading technológiát, így a két pipeline-t
két programszál etetheti: a két szál utasításai biztosan függetlenek
egymástól, az esetek nagy részében végrehajtható mindkettőből 1-1
utasítás párhuzamosan.
Ha az egyik szál végrehajtása megáll például egy L1-tévesztés miatt,
akkor a kért adat megérkezéséig a másik szál teljesen kisajátíthatja
mindkét futószalagot.
Ezért Atomnál a kétszálas végrehajtásnál akár 70-80%-os gyorsulást
lehet tapasztalni az egyszálas futtatáshoz képest, míg a többi Hyper-
Threadinggel ellátott CPU-nál ez csak 20-25% körül tetőzik.
116
Az AMD processzorok a K8-as sorozattól a crossbaron keresztül
kommunikálnak egymással, a crossbar pedig adott órajelen jár: a K8
esetében a CPU órajelén (a K10-ben ez változik), illetve lehetőleg minél
közelebb a CPU órajeléhez, tehát egy nagyon gyors, minimális
késleltetésű összeköttetésről van szó. Az Intel processzorai ezzel
szemben a rendszerbuszt használják (Intel Core 2-ig).
Lássunk egy példát: a közös tok alatt található CPU1/2-es mag elküldi
xy adatot a CPU2/1-es magnak a rendszerbuszon keresztül, ehhez a
chipsetet is igénybe veszi, ami nagyon lassú az AMD megoldásához
képest. A másik dolog a memóriavezérlés: a K8 processzorok
megjelenése óta a memória-vezérlésért a CPU felel, aminek a
következménye a rendkívül kis késleltetés.
Az Intel processzorok ismét csak a rendszerbuszon és a chipseten
keresztül kénytelenek az adatokat lekérni, ezt a hátrányt a Core a
processzorban megtalálható igen hatékony előbehívókkal (prefetch)
próbálja ellensúlyozni.
117

You might also like