6. Netburst architektúra Flashcards

1
Q

Netburst architektúra előzményei

A

Az 1990-es évek második felében a második generációs szuperskalároknál elérték az architektúra teljesítménybeli határait. Általános célú alkalmazásoknál nem volt több kimeríthető párhuzamosság utasítás szinten. A sebesség további fokozásához a következő módszerekkel keresték a megoldást:
- Új architektúrák. Például VLIW
- Párhuzamosság egyéb formái. Például szál vagy folyamat szintű párhuzamosság
- Frekvencia erőteljes növelése
Az Intelnél úgy gondolták, hogy legegyszerűbben a teljesítmény úgy tudják növelni, ha a frekvencia
növelésével próbálkoznak. Az akkori legfejlettebb architektúrájuk, a P6 (Pentium III alapja) nem volt
alkalmas 1333 MHz feletti működésre. A fejlesztés során a 10 GHz-es frekvencia elérését tűzték ki célul,
amihez egy új architektúrát kellett tervezniük. Ez lett a Netburst architektúra, amire a Pentium IV
processzorcsalád épült.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

A frekvencia növelésének forrásai

A
  • Gyártási csíkszélesség csökkentése, általában egy lépésben 0.7-szeresére csökkentik. Tehát fele akkora helyen fér el ugyan annyi tranzisztor mint korábban,
    tehát a tranzisztorok száma megduplázható (Moore-törvény)
  • Futószalag fokozatok hosszának csökkentése. Ennek egyik módja a fokozatok kisebb részekre bontása, viszont ekkor a fokozatok száma növekszik, így nő a párhuzamosan végrehajtott utasítások és a függőségek száma is -> csökkenhet a hatékonyság

Következményei:
A fajlagos teljesítmény, azaz az IPC (Intruction Per Cycle) csökken. Ez összességében nem jelenti viszont a teljesítmény csökkenését, mivel az órajel magasabb lett.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Netburst architektúra jellemzői

A
  • CISC architektúra (1-17 byte hosszú utasítások)
  • Belső RISC mag
  • Hosszabb futószalagok (több függőség, de magasabb frekvencia)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Netburst architektúra újdonságai

A
  • Execution Trace Cache
  • Hyper futószalag technológia
  • Enhanced Branch Prediction
  • Quad Data Rate Bus
  • Rapid Execution Engine
  • Replay System
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Execution Trace Cache

A

Az Execution Trace Cache az L1 utasítás cache-nek felel meg, de CISC helyett már dekódolt RISC utasításokat tartalmaz a végrehajtásuk feltételezett sorrendjében.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Hyper futószalag technológia

A

A futószalag lényege, hogy a dekódoló fokozat nincs benne. A dekódolás futószalagon kívül történik, azért, hogy az L1 cache-ben (Execution Trace Cache) már dekódolt utasítások szerepelhessenek. Mivel a CISC utasítások átalakítása lassú, akadályozta volna a nagy frekvenciás végrehajtást, ezért került külön a futószalagtól. Frekvencia növelés okán a korábbi 10-15 fokozathoz képest 20-31 fokozatot tartalmazott.
Hátránya, hogy hibás becslés esetén nagyobb a büntetés, több fokozatot kell törölni a futószalagból -> fajlagos teljesítmény csökkenés.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Enhanced Branch Prediction

A

A minél kevesebb hibás becslés kiküszöbölésére bevezettek egy továbbfejlesztett elágazásbecslő logikát. Ennek hatékonysága 94-97%-os volt. Pentium III-hoz képest körülbelül 33%-kal csökkent a hibás becslések száma.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Quad Data Rate Bus

A

egy új belső rendszerbusz, ami gyorsítja az adatelérést az L1 és L2 gyorsítótárak felé. A buszfrekvencia négyszeresén továbbítja az adatokat. Ennek eléréséhez kettő órajel generátort alkalmaz 90° fáziseltolással, valamint a felfutó és lefutó élen is történik adattovábbítás. Így órajelciklusonként négy adattovábbítás történik.
(KÉP JEGYZETBEN)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Rapid Execution Engine

A

A Rapid Execution Engine az egyszerű FX műveletek gyors végrehajtására szolgáló végrehajtó egység. Az órajel felfutó és lefutó élére is képes műveletvégzésre, így a végrehajtási idő fél ciklusra is csökkenhet. A gyorsaság érdekében kevesebb kaput tartalmaz, csak az alapműveletek elvégzésére képes. Ez olyan sikeres hatékonyság növekedést eredményezett, hogy később kettőt is építettek a processzorokba.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Replay System

A

A sok fokozatú futószalag sok függőséggel jár, ami az utasítások várakozását és kihasználatlanságot eredményezhet. Ennek megoldására az ütemező megbecsüli az utasítások végrehajtási idejét, így tudja, mennyi idő múlva fogja igényelni a bemenő operandust. Ezért a függő utasítást ennyi idővel a szükséges függőség teljesülése előtt kiküldi, hogy mire felhasználná a bemenő operandust, az már éppen előállt. Ha rossz volt a becslés és hamarabb szükség lenne a forrás operandusra, az utasítás a Replay Queue-ba kerül, ahonnan később újra kiküldésre kerül. Bár a hatékonyságot mindez csökkenti, elkerülhető vele a futószalag kiürülése, így biztosítja a végrehajtó egységek optimális kihasználását.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Netburst architektúra fejlődési korlátai

A

Fejlődési korlátok jelentek meg:
- disszipációs korlát (statikus és dinamikus) a frekvencia növekedésével
- ILP processzoroknál nem volt több kihasználható párhuzamosság
- párhuzamos buszok frekvencia korlátja

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Disszipációs korlát

A

Statikus disszipáció: Szivárgási áram exponenciális növekedése a frekvencia emelésével. A szivárgási áram azért jön létre, mert a tranzisztorokon akkor is folyik valamennyi áram, amikor az kikapcsolt állapotban van. A szivárgási áram fajtái:
- Gate -> Drain felé
- Source -> Drain felé
A szivárgási áram hőveszteséget (disszipációt) okoz. 3.8-4 GHz környékén bekövetkezett a hőkatasztrófa.
Ennek kezelése csak vízhűtéssel oldható meg, ami viszont nem gazdaságos. A statikus disszipáció kiszámítása:
Ds = V * Ileak
V a feszültség, Ileak pedig a szivárgási áram, ami a frekvencia növekedésével exponenciálisán nő.

Dinamikus disszipáció: az aktív tranzisztorokon átfolyó áram hőtermelése okozza.
Kiszámítása:
Dd = A * C * (V^2) * fc
ahol A az aktív kapuk részaránya, C a kapuk összesített elosztott kapacitása, V a tápfeszültség, fc pedig a magfrekvencia. Látszik, hogy a dinamikus disszipáció négyzetesen függ a feszültségtől, így a frekvencia növelése a feszültség csökkentésével ellensúlyozható.

Teljes disszipáció: a statikus és dinamikus disszipáció összege. A frekvencia növelésével egyre jelentősebbé vált a dinamikus disszipáció.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Párhuzamos buszok frekvencia korlátja
(Data Valid Window, Delay skew, Jitter, LVDS)

A

A buszokon logikai 0-k és 1-ek közlekednek. Annak, hogy az érzékelők ezeket a jeleket meg tudják különböztetni, időbeli és feszültségbeli feltételei vannak.
Data Valid Window: ahhoz, hogy az érzékelő egy jelet érvényesnek tekintsen, a jelnek egy bizonyos feszültség intervallumba kell esnie és egy bizonyos ideig fenn kell állnia. Ahhoz, hogy a jel érvényesnek legyen tekintve, nem kerülhet jelváltozás ebbe az ablakba.
(KÉP JEGYZETBEN)
Ez gátolja a feszültség csökkentésének lehetőségeit, mivel nagyon kis feszültség esetén kisebb zavarok is
azt eredményezhetik, hogy a jelet ne tekintse érvényesnek az érzékelő. Illetve kisebb feszültség esetén az élek meredeksége is csökken, és belelóghatnak az ablakba.
(KÉP JEGYZETBEN)

A frekvencia is csak bizonyos pontig növelhető:
* delay skew: Nagy frekvencián a párhuzamos vezetékeken érkező jelek elcsúszása egymástól
Ahol az átviteli sebesség megengedi inkább soros busz használata preferálandó.
* Jel visszaverődések, azaz reflexiók léphetnek fel. Kezelése hullám impedancia lezárással lehetséges.
* jitter: Fázisbizonytalanság jelenhet meg, azaz a zavarok elmossák a jelek felfutó és lefutó éleit, és zavarják a jelszintek stabil állapotát. Hatására beszűkülnek a tolerancia sávok.
* Okozói:
* vezetékek közti áthallás (szomszédos vezetékek zavaró jelei)
* zaj: külső vagy belső elektromágneses interferencia (EMI)

  • Megoldás:
    • egy része kiküszöbölhető soros busszal
    • LVDS (low voltage differential scaling): lényege, hogy a jelet két vezetéken két különböző feszültségszinten továbbítják. A logikai 0 és 1 rtékeket a feszültség különbségéhez rendelik. Például PCIe, QPI, DMI.

A feszültség növelésével viszont tovább növelhető a frekvencia, mivel a felfutási idő rövidebb lesz (meredekebb a felfutási szög), így könnyebb megfelelni az időbeli követelményeknek. A feszültség (fogyasztás) csökkentése és a frekvencia (teljesítmény) növelése tehát egymással ellentétesek, ezért a processzorok gyakran dinamikusan változtatják a feszültség és frekvencia értékeiket: alacsony terhelésen kis feszültség és frekvencia, nagy terhelésen magasabb feszültség és frekvencia.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Disszipáció csökkentés

A

DVFS (Dynamic Voltage and Frequency Scaling): Menet közben meghatározza, hogy az adott feladathoz milyen teljesítményre van szükség, majd ehhez igazítja a processzor feszültségét és frekvenciáját.
Működése:
1. szükséges teljesítmény meghatározása
2. frekvencia hozzáillesztése a szükséges teljesítményhez
3. órafrekvencia fenntartásához szükséges minimális feszültség beállítása
4. később kiegészült az AVS-sel (Adaptive Voltage Scaling)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly