9. Második generációs (széles) szuperskalár processzorok Flashcards
Jellemzők
Dinamikus utasítás ütemezés
o Pufferelt utasítás kibocsátás
o Sorrenden kívüli betöltés
Regiszter átnevezéssel kiküszöbölik az álfüggőségeket! Ezáltal megszűnik az álfüggőségek
miatt szűk kibocsátási keresztmetszet
A VE-ek többszörözésével kiküszöbölik az erőforrásfüggőségeket
A valós adatfüggőségek blokkolnak, de a dinamikus elágazásbecslés részben kezeli
Dinamikus elágazásbecslés: spekulatív becslés 90-95% pontossággal (1, 2, 3 történetbites)
Kifinomult, kibővített gyorsítótár és elágazási alrendszerek
Kibocsátási ráta: RISC-nél kb. 4 db., CISC-nél kb. 3 db. utasítás / órajelciklus
pl.: Pentium Pro
Dinamikus ütemezés
Más néven várakoztatás vagy pufferelt utasítás kibocsátás (beépített várakoztató állomások használata » rejtett regiszterekből áll és a VE-k és a decode-olók közé került beépítésre). Az ütemezés lehet sorrenden kívüli.
Elve (RISC): [nem Neumann, hanem Stréber modell!]
kép23
Az első rész (F, D, és Issue [kibocsátás]) nominális rátával tud működni, mivel nincs függőségvizsgálat. Az államások felé történő kiküldés sorrendben, míg a függőségvizsgálat utáni sorrenden kívül történik.
3 utasítás / ciklus tudja feltölteni a várakoztató állomasokat.
Regiszter átnevezés (piszkozat regiszter)
Az ál-adatfüggőségek kiküszöbölése miatt van rá szükség. A valósak részben blokkolnak.
Lényege: a CPU minden egyes célregiszterhez allokál egy átnevezési regisztert. Ha megszűnik a
függőség akkor az eredményeket visszaírja az architektúrális regiszter megfelelő helyére.
Eredménye: több lesz a független utasítás, mert nem az architektúrális regiszterben tárol mindent.
Szükséges hozzá: egy átnevezési logika (extra hardver)
kép24
Végrehajtási modell (RISC)
Tipikusan 4 utasítás széles
Állapotok (állapot bitek):
o 0: operandus nem áll rendelkezésre
o 1: az operandus rendelkezésre áll és kiküldhető
RISC kibocsátási ráta (utasítás/órajelciklus)
4
CISC kibocsátási ráta (utasítás/órajelciklus)
4
RISC kiküldési ráta (utasítás/órajelciklus)
5-8
CISC kiküldési ráta (utasítás/órajelciklus)
3
Utasításfelépítés: (A0,1: állapot bitek)
MK OP1 OP2 A0 OP3 A1
Példa: Intel Pentium Pro (mádosik generációs szuperskalár) alaptulajdonságok
CISC processzor (RISC a dekódolási fázisban)
FX futószalag (RISC és 14 fokozatú)
Központi várakoztató állomás: 20 bejegyzés (FX és FP utasítások egyben tárolva.)
ROB (ReOrder Buffer, a szigorú soros konzisztencia betartásáért, illetve regiszter átnevezést is
végez)
o A kezdetjelző mutató a belépési pont.
o A külső peremen az architekturális regészterkészletek
találhatóak, a belsőn pedig az átnevezési regiszterek.
1. A használatával a kiírás sorrendben történik.
2. Egy CISC utasításhoz tartozó RISC utasítások csak
egyben írhatóak ki
3. Spekulatív állapotban lévő utasítás nem írható ki.
kép25
Példa: Intel Pentium Pro (mádosik generációs szuperskalár) lehívás (fetch)
128 bites blokkokban történik » utasítás cache
o ezeket az utasítás részleteket először utasítás határra kell illeszteni (meg kell keresni
az utasítás végét. » CISC esetén változó utasításhossz)
Példa: Intel Pentium Pro (mádosik generációs szuperskalár) dekódolás (D), átalakítás
Ciklusonként max. 3 db. utasítás dekódolása lehetséges RISC műveletekké.
D1: max. 4 RISC utasítássá alakítja át a CISC utasításokat RISC-é.
D2, D3: egyszerű dekódolók (egy CISC utasítást egy RISC utasítássá tud átalakítani [pl.:+, -])
MIS: 4-nél több RISC utasítássá dekódol
Minden létrehozott RISC utasítás azonos hosszúságú, formátumú és 128 bites. Ezek egy várakoztató sorba kerülnek (Regiszter képző tábla utasítás ablak), ami hat bejegyzéses (max. 6 db. RISC utasítás / ciklus) Várakozó állomás 20 bejegyzésből áll.
Végrehajtási modell
kép26