( Ritter | 2020. 12. 06., v – 22:28 )

Ez azért nem ilyen egyszerű kérdés. Nemcsak azért van RISC mag a mai Intel és AMD processzorokban mert hatékonyabb a RISC. Régóta tarthatatlan lenne cpu teljesítmény növelése a megöröklött x86 CISC utasítások hardveres megtartásával. Anno nem igazán tervezték jövőbiztosra az x86 utasításkészletet. Vannak közöttük elég komplex, sok áramköri elemmel megvalósítható utasítások. Ezekhez bonyolult áramköri elemek kellenek, amiken egyszerűen "nem jutnak át időben az elektronok". A processzor órajelét mindig a leggyengébb láncszemre kell belőni. Olyan nem történhet, hogy bizonyos utasítások ne legyenek végrehajtva időben ha már bekerültek a végrehajtó egységbe. Szóvak ha ezekhez a bonyolult régi CISC utasításokhoz (nem mindegyik problémás természetesen) kellene igazodni akkor ma csak sokkal lassabb Intel processzorok létezhetnének. A megoldás már jó ideje, a komplex utasítások szétdarabolása több egyszerűbb utasítássá. Ettől még kívülről nézve a bonyolult CISC utasítás nem lesz végrehajtva egy órajel alatt, de nem is kell miatta lelassítani az egész processzort. 

Az régi RISC világban eleve okosabban lettek megválasztva az utasítások. A fenti probléma ott is előfordult azért, amire általában az volt a megoldás, hogy simán megszűntek a problémás utasítások. A hardveres 100% kompatibilitás nem volt szempont. Megoldották operációs rendszer szintjén. Az ARM, amit azért csak egy rész a RISC világának, nem szokott ilyet tenni. Leglaábbis nem olvastam arról, hogy az elmúlt évtizedben megszűntek volna ARM utasítások. Az ARM procik belső világát nem ismerem annyira mint az Intelét. De vagy tényleg nagyon okosan választották meg az ARM utasításokat, vagy pedig már ott is alkalmazzák az utasítások processzoron belüli szétdarabolását. 

A felvetésedre visszatérve azért nem működne az Intel processzorok belső utasításainak a közvetlen hozzáférése, mert azok nem fixek. Változnak néha. Ezt elég rosszul viselnék a fordítóprogramok fejlesztői, meg úgy általában mindenki aki Intelre kódokat fejleszt. Az Intel azért kényszerült az AMD64 használatára, mert a Microsoft kerek perec kijelentette nem fog két 64 bites PC architektúrát támogatni, és mivel az AMD volt az első ezért csak őket támogatja. Így az Intelnek dobnia kellett saját PC 64 bites megoldását, aminek egybként is hányattatott sorsa volt a cégen belül, mert Itaniumot a 64-bittel összecsomagolva akarták lenyomni a piac torkán. A régi x86 pedig szépen elsüllyedt volna a 32-bittel együtt. Csak az AMD csúnyán beleköpött az Intel 64-bites levesébe. 

És ha már az Itanium szóba került, pont a VLIW-es rendszerek, mint az Itanium vannak legközelebb ahhoz amit írtál. Ott még a RISC-nél is egyszerűbb hardveresen a CPU. Nincs reorder meg semmi más hardveres ügyeskedés. Az így megspórolt tranzisztorokat inkább extra regiszterekre használják meg gyorsabb processzoros végrehajtásra. VLIW-nél szoftver oldalon, elsősorban a fordítónak kell megoldania sok feladatot amit ma kívülről CISC és kívül-belül RISC processzorok hardveresen oldanak meg. Az Itanium csúnyán megbukott, főleg az optimális fordítók fejlesztése körüli problémák miatt. Pedig a VLIW mögötti elmélet egyáltalán nem ostobaság.