A very long instruction word (nagyon hosszú utasításszó) kifejezés, röviden VLIW, egy olyan számítógép- és processzortervezési filozófia elnevezése, amely az utasításszintű párhuzamosságot (instruction-level parallelism, ILP) igyekszik kihasználni a számítási teljesítmény növelése érdekében. A VLIW felépítésű processzor lehetővé teszi a programok számára, hogy explicit módon meghatározzák a párhuzamosan végrehajtandó utasításokat, míg a hagyományos központi feldolgozóegységek többnyire szekvenciálisan végrehajtandó utasításokkal megadott programokat hajtanak végre.
Egy olyan processzor, amely egymás után hajtja végre a feladatokat (nem futószalag szerint), energiát pazarol és lassan működik. A teljesítményt növelni lehet különböző allépések egyidejű végrehajtásával (ez a futószalag), vagy több utasítás egyidejű végrehajtásával, mint ahogy ez a szuperskalár gépeknél történik. További gyorsulást lehet még elérni úgy, hogy az utasításokat nem a programkódban szereplő sorrendben futtatjuk le, hanem eltérő sorrendben. Ezt nevezik soron kívüli végrehajtásnak.
Előnyök és hátrányok Elméletileg a VLIW megközelítésnek jelentősen egyszerűsítenie kellene a processzor mikroarchitektúráját, a számítási eszközök elosztásának feladatát a fordítóprogramra hárítva. Mivel nincsenek nagy és összetett csomópontok, várható, hogy ez csökkenti a mikroarchitektúra összetettségét és növeli az energiahatékonyságot. A gyakorlatban azonban ez nem mindig valósul meg. A hosszú utasítások következménye, hogy sok architekturális regiszterre van szükség, mivel nagyszámú közbenső számítási eredményt kell tárolni, és ennek eredményeként a magok összetettek lesznek, annak ellenére, hogy az elvvel éppen ezt akarták kerülni.
Ugyanakkor a VLIW kódja alacsony sűrűségű. A tétlen eszközökhöz tartozó nagyszámú üres utasítás miatt a VLIW processzorokhoz készült programok sokkal hosszabbak lehetnek, mint a hasonló programok a hagyományos architektúrákon.
A VLIW architektúra egy programozó számára meglehetősen egzotikusnak és szokatlannak tűnik. A komplex belső kódfüggőségek miatt a VLIW architektúrák gépi kód szintű manuális programozása rendkívül nehézkes, így a fordítóprogram optimalizálására kell hagyatkozni.
VLIW implementációk Mikroprocesszorok, digitális jelprocesszorok Intel i860, az első egycsipes VLIW megvalósítás, 1989 SHARC DSP, 1994-től Texas Instruments TMS320, C6000 sorozatú DSP-k, 1997 ST200 processzorcsalád, a HP és STMicroelectronics közös tervezése, 2000-től Transmeta Crusoe, Transmeta Efficeon, 2000, 2004 IA-64 architektúra, Intel Itanium, 2001–2020 Elbrusz 2000 és az Elbrusz család többi tagja, 2005 ~ 2007
Jegyzetek
Források – az architektúrát bevezető publikáció , Többprocesszoros számítástechnikai rendszerek felépítésének kérdései – egy korábbi szovjet publikáció
– 8. fejezet, a VLIW és EPIC architektúrákról
További információk Paper That Introduced VLIWs ISCA "Best Papers" Retrospective On Paper That Introduced VLIWs VLIW and Embedded Processing
Kategória:Informatika Kategória:Számítógép-osztályok Kategória:Utasításkészlet-architektúrák