11. VLIW (Very Long Instruction Word) processzorok Flashcards
Jellemzői
Az ILP CPU-k revolúciós fejdlődési iránya
o és egyben lehetőségeinek vége! (marad ezen kívűl a szál, illetve folyamat szint)
o Azért revolúcuós, mert másképp működik mint az azt megelőző szuperkalár
processzorok, ezért nem is kompatibilis az azokra írt programokkal.
Térbeli és időbeli párhuzamosítás
A függőségeket a (optimalizáló) fordítóprogram kezeli (szoftveres/statikus függőségkezelés)
o a CPU a compiler által párhuzamosított kódot kap végrehajtásra
Új utasítás forma: egy több, független utasítást tartalmazó utasításszó: (akár 1024 bit)
o előfeltétele a függőségek előzetes lekezelése („függőségmentesség”), illetve a
hatékony utasítás ütemezés!
Utasításmezők: 1-1 mező 1-1 VE-et vezérel (1 ut. több mezőt vesz igénybe, úgy több VE-et.)
8 db. új, 128 bites regiszter (az OS kezeli őket, IEEE FP használata)
(FUN FACT: 13 év után először vezet be új regisztereket az Intel)
kép27
Fejlődés
’80-as évek: (korai/széles VLIW-ek) 10-20db.VE utasításszóhossz: 256 – 1027 bit 7 - 28 db. utasítás / szó Nem terjedt el, mert nehéz volt hozzá compilert írni.
’90-es évek: (késői/keskeny VLIW-ek)
4-8db.VE
utasításszóhossz: 100 – 128 bit
4-8db.utasítás/szó
kiváló digitális jelfeldolgozásra
fordítási időben történő szoftveres ütemezéssel
egyszerűbb architektura (több hely a regisztereknek, VE-eknek, gyorsítótáraknak).
Előnyök a szuperskalár processzorokkal szemben
azonos fokú párhuzamosság mellett, jóval egyszerűbb felépítés
azonos komplexitás esetén is, nagyobb feldolgozási sebesség » nem a hardver végzi a
függőségek ellenőrzését
Hátrányok a szuperskalár processzorokkal szemben
a statikus ütemezés, vagyis a fordító a legnagyobb hátránya (túl bonyolult):
o ez kezeli az összes függőséget
o nagyon pontosan kell ismernie a fizikai architektúrát, például:
- a VE-ek típusát és számát
- a VE-ek ismétlési, késleltetési idejét
- a gyorsítótárak betöltési idejét, késleltetését stb.
o elvárt az agresszív párhuzamosítsás (ciklusonként elegendő számú párhuzamosan végrehajtható utasítást megtalálása)
o nagyon nehéz mindennek megfelelő compilert írni! Ha változtatnak az architektúrán, akkor változtatni kell a compileren is. > minden hardverre külön compiller.
új a fizikai és utasításkészlet architektúra (ISA: Instruction Set Architecture)
magas költségek, sok ráfordítandó idő
nem kompatibilis az előző architektúrákkal, például az x86-al sem.
Alkalmazási területek
Digitális jelfeldolgozás, multimédia
Szerverrendszerek
Notebookok („Transmeta” mikroprocesszorok VLIW maggal, alacsony energiaigénnyel)
EPIC (Explicitly Parallel Instruction Computing): [az Intel és a HP szerelemgyereke]
(lehető legtöbb utasítás fusson párhuzamosan, még ha egy részük felesleges is)