Cyrix 6x86

A Wikipédiából, a szabad enciklopédiából
Cyrix 6x86-P166

A Cyrix 6x86 (kódnevén M1) egy hatodik generációs, 32 bites x86-kompatibilis mikroprocesszor, amelyet a Cyrix tervezett és az IBM és az SGS-Thomson gyártott, első kibocsátása 1996-ban történt.

Architektúra[szerkesztés | forrásszöveg szerkesztése]

A Cyrix 6x86 mikroarchitektúra egyszerűsített blokkvázlata

A 6x86 szuperskalár és szuperfutószalagos felépítés, regiszterátnevezést, spekulatív végrehajtást, sorrenden kívüli végrehajtást végez és megszünteti az adatfüggőségeket. Érdekes módon továbbra is natív x86 végrehajtást és szokásos mikrokódot használ, mint a Centaur Technology Winchip processzor, miközben a konkurens Intel és AMD már bevezette a dinamikus kódfordítást, amely az x86 kódot mikroutasításokra fordítja, a Pentium Pro és K5 modellekben.

A belső gyorsítótárakat tekintve, a processzor egy 16 KiB méretű elsődleges CPU gyorsítótárral rendelkezik. Intel P54C Pentium foglalatba illeszthető. A felépítés annyiban egyedi, hogy rendelkezik egy „0-dik szintű” 256 bájtos scratchpad gyorsítótárral is, ami nem fordul elő a többi x86-os kialakításban. Hat trükkös teljesítményszintje van: PR 90+, PR 120+, PR 133+, PR 150+, PR 166+ és PR 200+. Ezek a teljesítményszintek nem felelnek meg a csipek órajelének (például, a PR 133+ 110 MHz-en fut, a PR 166+ 133 MHz-en, stb.).

A 6x86 és 6x86L nem voltak teljesen kompatibilisek az Intel P5 Pentium utasításkészletével és nem rendelkeztek multiprocesszoros képességgel. Emiatt a csip 80486-osként azonosította magát és letiltotta a CPUID utasítás használatát alapértelmezésben. A CPUID támogatás pár lépéssel engedélyezhető: elsőként engedélyezni kell a kiterjesztett CCR regisztereket, majd a CCR4 7. bitjét beállítani. A teljes Pentium P5 kompatibilitás hiánya problémákat okozott néhány alkalmazásban, mert a programozók egyre inkább alkalmazni kezdték a Pentium P5-specifikus utasításokat. Néhány cég javításokat is kiadott a termékeihez, hogy azok hibátlanul működjenek a 6x86-os processzorral is.

A 6x86-os első generációja melegedési problémákkal küszködött, amit főleg a korabeli x86 CPU-kénál nagyobb hőkibocsátás okozott, és az, hogy a számítógépépítők néha nem látták el a gépeiket a megfelelő hűtéssel. A processzorok csúcs hőkibocsátása 25 watt körül járt (pl. az AMD K6-é), míg a Pentium P5 15 W körüli hulladékhőt produkált csúcsüzemben. Az előbbi két érték azonban csak töredéke a néhány évvel későbbi nagyteljesítményű processzorok hőtermelésének.

Átdolgozott magok[szerkesztés | forrásszöveg szerkesztése]

Egy IBM 6x86MX PR200 CPU socket 7 aljzatba illeszkedő 321 tűs csatlakozómátrixa (a processzor alulról)
IBM címkével árult Cyrix 6x86L 133 MHz

A később kibocsájtott 6x86L (kódnevén M1L) processzorral igyekezte orvosolni a hőtermelési problémákat a Cyrix; a L a kisfogyasztású (low-power) jelölése. A javított gyártási technológiák lehetővé tették az alacsonyabb magfeszültség (Vcore) használatát. Csakúgy, mint a Pentium MMX, a 6x86L is elosztott feszültségszabályozott energiabeviteli hálózattal rendelkezik, amelyben a be/kimeneti rendszer és a CPU mag különböző feszültségeket kap. A 6x86 egy másik kiadása, a 6x86MX, MMX utasításkészlet-kompatibilitást kapott, ebben mutatkozott be az EMMI utasításkészlet, és az elsődleges gyorsítótár mérete négyszeresére, 64 KiB-ra nőtt. Ennek a csipnek a későbbi modelljeit MII jelöléssel forgalmazták, a Pentium II processzorral való verseny egyik esélynövelő intézkedéseként.

Teljesítmény[szerkesztés | forrásszöveg szerkesztése]

Cyrix 6x86MX 150MHz.
IBM 6x86MX 133MHz.

A szakértők, kissé tévesen, úgy gondolták, hogy a 6x86 tervezési célja az volt, hogy kiemelkedően jól teljesítsen a kor üzletorientált / üzleti alkalmazásokat célzó teljesítménytesztjeiben leginkább Ziff-Davis-féle Winstone benchmark-ban,[1] azonban a processzor tervezésénél a cél kizárólag egy nagyteljesítményű platform létrehozása volt az üzleti alkalmazások számára.

A valóságban, annak ellenére, hogy Intel-féle megfelelőinél lényegesen gyorsabb az azonos órajelű összehasonlításokban, több tesztben gyengébb teljesítményt mutatott, ami példázza a korabeli teljesítménymérési sémák hiányosságait is. A Winstone különböző sebességteszteket futtatott, számos népszerű alkalmazást felhasználva. Ez volt az egyik vezető teljesítményteszt a 90-es évek évek közepén, és néhány vezető magazin, pl. a Computer Shopper és a PC Magazine, is felhasználta a rendszerértékelés döntő tényezőjeként.

A Cyrix a PR rating (Performance Rating) értékeket használta, hogy processzorainak teljesítményét összevesse az Intel P5 (P55C előtti) Pentium processzorral, mivel a 6x86 alacsonyabb órajelütemen lekörözte / teljesítményben felülmúlta a magasabb órajelű Pentium P5-öt. Például, a 133 MHz-es 6x86 jobb teljesítményt nyújt, mint a Pentium P5 166 MHz-en, és ennek eredményeképpen a Cyrix úgy reklámozhatta a 133 MHz-es csipet, mint ami egyenértékű egy Pentium P5 166 MHz-essel. A PR értékelésre azért is szükség volt, mert a 6x86-os nem tudott a Pentium P5-höz hasonló magas órajeleket elérni és azonos gyártási hozamokat fenntartani, tehát kritikus fontosságú volt, hogy a fogyasztók gondolkodásában az alacsonyabb órajeleket egyenértékűnek állítsák be. A PR értékelés végső soron nem ábrázolta teljesen őszintén a 6x86 teljesítményét.

Míg a 6x86-os integer-teljesítménye jelentősen magasabb volt a Pentium P5-énél, lebegőpontos teljesítménye inkább középszerű volt – a 486-os FPU teljesítményének 2-szerese és 4-szerese közötti, órajelciklusonként (a művelettől és pontosságtól függően). A 6x86-ban található lebegőpontos egység nagyrészt ugyanazokon a terveken alapult, mint ami a Cyrix korábbi nagyteljesítményű 8087/80287/80387-kompatibilis koprocesszorainak alapját képezte, ami igen gyors volt a maga idejében – a Cyrix FPU sokkal gyorsabb volt, mint a 80387, sőt még a 80486 FPU-nál is gyorsabb volt. Azonban még így is meglehetősen lassabb volt, mint az új és teljesen áttervezett Pentium P5 és a P6 architektúrájú Pentium Pro-Pentium III FPU-k. A 6x86-os fejlesztésének idején az alkalmazások többsége (irodai alkalmazáscsomag és játékok) csaknem teljesen egész műveleteken alapult (az említett programok szinte kizárólag egész műveleteket tartalmaztak, hiszen az irodai programokban nincs szükség lebegőpontos műveletekre, a pénzügyi számítások is kiválóan elvégezhetők fixpontos adatokkal. A játékoknál kicsit más a helyzet, de ezeknél sincs szükség tudományos pontosságra, és elsődleges szempont a gyorsaság). A tervezők felmérték ezen alkalmazások jövőjét és a legvalószínűbb utasítások optimalizálására koncentráltak. Tehát a csip teljesítményének optimalizálása során a CPU-ban feltehetően legnagyobb mértékben alkalmazott utasítások, a tervezők meglátása szerint az integer / fixpontos végrehajtás erőforrásai kapták a legtöbb tranzisztor-költségvetést.

A Pentium P5 népszerűsége miatt sok szoftverfejlesztő kézzel optimalizálta az assembly nyelvű kódot, hogy kihasználhassák a Pentium P5 szorosan futószalagos és alacsonyabb késleltetésű FPU-ját. Például, a várva várt Quake, az első technikailag is 3 dimenziós FPS olyan, magasan optimalizált assembly kódot használt, amelyet szinte teljes egészében a Pentium P5 FPU-jához írtak. Ennek eredményeként a Pentium P5 processzoron a játék látványosan jobban futott, mint a többi CPU-n (avagy a Pentium P5 jobb teljesítményt nyújtott ennél a játéknál, mint a többi). A 6x86-os (és az AMD K6) szerencséjére, sok játék továbbra is integer utasításokon alapult, a csipek teljes élettartama alatt.

Cyrix MII[szerkesztés | forrásszöveg szerkesztése]

250 MHz-es Cyrix MII

A 6x86 utódja – az MII – túl későn került piacra, és nem volt túl jól skálázható az órajel terén az akkoriban alkalmazott gyártási eljárásokkal. Az AMD K5-öshöz hasonló csipként a Cyrix 6x86 kialakításban sokkal inkább az órajelütemenkénti integer teljesítményre összpontosítottak, mint az órajel skálázhatóságára, és ez később stratégiai hibának bizonyult. Emiatt történt, hogy az azonos órajelen nyújtott jobb teljesítménye ellenére a 6x86 és az MII az alsókategóriás piacra szorult, mint az AMD K6, és és az Intel P6-os Pentium II mindig megelőzte az órajelben. A 6x86-os és az MII-es korábbi generációs „486 osztályú” lebegőpontos egysége és integer utasításvégrehajtó egysége, amely legfeljebb a P6 és K6 csipekkel képes tartani a lépést, azt jelentette, hogy a Cyrix már nem képes versenyezni a teljesítmény terén.

Jegyzetek[szerkesztés | forrásszöveg szerkesztése]

Fordítás[szerkesztés | forrásszöveg szerkesztése]

Ez a szócikk részben vagy egészben a Cyrix 6x86 című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel.

Források[szerkesztés | forrásszöveg szerkesztése]

További információk[szerkesztés | forrásszöveg szerkesztése]

Kapcsolódó szócikkek[szerkesztés | forrásszöveg szerkesztése]