Processzor típusok áttekintése

 

K5 | K6 | K6-2 3D | K6-III | Athlon | Duron | Thunderbird

 

 

Az Intel és az AMD a 286-os óta folyamatosan együtt dolgozott, az együttműködés akkor ért véget amikor az AMD a saját 386-osaival letörte az Intel árait.

Az AMD saját tervezésű processzorai:

K5: 1996 március


1995-ben jelent meg az AMD ötödik generációs, Pentium kompatibilis processzora, a K5-öt, de a tényleges, nagy tömegű gyártás majdnem egy évet késett. Ebben szerepet játszott az is hogy a K5 az AMD első Intel-től függetlenül fejlesztett processzora. A két vég a 286-os óta folyamatosan együtt dolgozott, az együttműködés akkor ért véget amikor az AMD a saját 386-osaival letörte az Intel árait.
A késésnek azonban volt néhány előnye is. A K5-öst amely 4,3 millió tranzisztorból áll 0.5 mikrométeres technikával kezdték el gyártani, de hamarosan áttértek a 0.35 mikrométeres technológiára. A K5-ös akárcsak a Pentium után következő Intel processzorok, az x86-utasításkészlet processzoron belüli lefordításával teszi hatékonyabbá az utasítás-végrehajtást, növelve ezzel a teljesítményt.
Az összetett változó hosszúságú x86-utasítások egyszerű fix méretű az AMD által ROPs-nak nevezett (RISC operations) utasításokká való lefordítása egy RISC CPU-mag és a RISC technológiában lehetséges módszerek alkalmazását. Ezek közé tartozik a szuperskaláris működés (ehhez a K5 hat önálló végrehajtócsővel rendelkezik) és az utasítások fizikai sorrendtől eltérő végrehajtása.

Főbb tulajdonságai:
RISC alapú belso felépítés.
5 szintű csővonal, mellyel akár 5 utasítás is végrehajtható órajelenként.
16 Kbyte dupla portos, négyutas asszociatív utasítás előrejelzővel ellátott utasítás cache.
8 Kbyte-os dupla soros négy bankkal, négyutas asszociatív adat cache.
Teljesen spekulatív utasítás végrehajtás.
Dinamikus, cache orientált 1 Kbyte-os ugrási előrejelzés. Ha ez téves, akkor a processzor csupán 3 órajelnyi időt veszít.
Integrált, nagy teljesítményu lebegőpontos feldolgozó egység.
Órajel vezérlő PPL (Phase Locked Loop, fáziszárt hurok) felhasználásával.
3.3V-os működés és System Management Mode (SMM, rendszer felügyeleti mód) az alacsony fogyasztás eléréséhez.
64 bites, Pentium kompatibilis 296 lábú SPGA tokozásban.
Kompatibilis a Pentium rendszerekkel.


K6: 1997 április


Az AMD a K5-ös processzor kifejlesztése után szeretett volna egy olyan stabil, megbízható processzort, melynek teljesítménye felveszi a Pentium Pro processzorral a versenyt. Így megszületett a K6, mely az AMD első hatodik generációs processzora. A K6 egy tovább bővített belső felépítésű processzor, mely az x86-os utasításokat emulálva hajtja végre. A teljesítménynövekedést okozó belső felépítésbeli tulajdonságok a következők:
Az integrált első szintű cache méretét 64 Kbyte-ra növelték, melyből 32 Kbyte-ot az adatok, 32 Kbyte-ot pedig az utasítások átmeneti tárolására használható.
Négy x86 utasítás dekódert tartalmaz, melynek teljesítménye összehasonlítható a Pentium II és a Pentium Pro teljesítményével.
8192 elemű tömböt tartalmaz az ugrási előrejelzések számára, míg más processzorok ennek maximum 1/8-át használják.
Hat végrehajtó egység, mely lehetővé teszi hat egész adattal végzett művelet elvégzését párhuzamosan.
MMX utasításkészlet. Az x86-os utasításkészletet kiegészítették az 57 MMX utasítással , mely a multimédiás műveletek elvégzését gyorsabbá teszi.


K6-2 3D: 1998 május

A processzor jelentős belső változtatásokat tartalmaz. Ezek leginkább a 3D-s grafika megjelenésének a gyorsítását szolgálják, és jól kiegészítik az erre a célra készült célhardvereket. Az egyre gyorsabb 3D-s kártyákkal felszerelt rendszerekben szűk keresztmetszetet jelentett a lassú lebegőpontos számítási teljesítmény. Ezt váltja fel a K6-2, itt egy lépésben több művelet eredményét szolgáltatja a processzor, de az eredmények már lebegőpontosak is lehetnek.
A processzor 0,25 mikronos technológiával készült, 3,3 V-ot igényel, 266 MHz vagy afeletti sebességet tesz lehetővé, a sínfrekvencia 66 Mhz-ről 100 Mhz-re emelkedik, ami 1,5-szeres gyorsulást eredményez a memória és a másodszintű cache elérésében. Így csökken az áramfelvétel, és az üzemi hőmérséklet. A tranzisztorok száma 9,3 millió.
Az AMD az MMX adattípusait kiegészítette egy újjal, amely a packed float nevet viseli. Ez a 64 bites MMX regiszterbe két 32 bites lebegőpontos értéket csomagol. Ezek a 32 bites értékek eleget tesznek az IEEE 754-es szabványnak azzal a megszorítással, hogy az aritmetikai műveleteknél csak a legközelebbi számhoz való kerekítést, a lebegőpontos-egész és egész-lebegőpontos konverziónál csak a csonkolásos kerekítést lehet használni.
Az AMD K6-ban bevezetett 21 új utasítás közül 17 ilyen típusú adatokkal végez műveletet. Ezek mnemonikjai azt az elvet követik, hogy az első két betű "PF" - packed float - utána a művelet szokásos rövidítése következik: ADD, SUB, MUL, stb. Az utasítások maximum kétoperandusosak - ez az x86-os processzorokban megszokott korlát. A műveletekhez használt regiszterek megegyeznek az MMX-hez használtakkal. A 17 új utasításból kettő packed floatból packed dwordbe és visszakonvertál (PF2ID, PI2FD). Három az alapműveleteket végzi (PFADD, PFSUB, PFMUL). Egy az operandusokon belül az össze (PFACC), egy a kivonást fordított operandusokkal végzi (PFSUBR), három különböző összehasonlításokat tesz lehetővé (PFCMPEQ, PFCMPGT, PFCMPGE), kettő a minimum és maximum függvényeket valósítja meg (PFMIN, PFMAX). A maradék öt utasítás viszont egészen rendkívüli módon teszi lehetővé az osztást és a reciprok gyökvonást. A PFRCP az egyik forrásoperandus reciprokát kikeresi egy olyan ROM-táblázatból, amelynek mantisszája legalább 15 helyes bitet tartalmaz. Ha ezek után közvetlenül a PFRCPIT1 és a PFRCPIT2 utasítást használjuk, amelyek a matematikából ismert Newton-Raphson-módszer segítségével tovább pontosítják az eredményt, akkor 6 ciklus alatt a reciprokot, ezt a számlálókkal szorozva (PFMUL) két teljes hányadost 8 ciklusnyi idő alatt meg lehet kapni. Ha ehhez hozzávesszük, hogy a szorzást és az iterálást végző végrehajtó egység pipeline rendszerű, akkor kiderül, hogy 12 órajel alatt 4 egyszeres pontosságú lebegőpontos osztás eredményét meg lehet kapni úgy, hogy ebben már az operandusok első szintű cache-ből való betöltése is benne van. Összehasonlításul: a Pentium Pro és a Pentium II. 17 ciklus alatt produkál egyetlen ilyen pontosságú osztást, operandusbetöltés nélkül.
A reciprok gyökvonás hasonló módszerrel végezhető: a PFRSQRT szintén egy ROM-táblázatból vesz egy 15 bites közelítő értéket, ezt egy PFMUL-lal megszorozva, PFSQIT1 és PFRCPIT2 utasításpárral pontosítva10 ciklus alatt lehet megkapni egy 32 bit pontosságú reciprok gyökvonás eredményét, operandusbetöltéssel együtt. E megoldásoknak megvan az az előnye, hogy ha az eredményeket elég 4 tizedesjegy pontosságig kiszámítani, akkor nem is kell végrehajtani az iteratív lépéseket, elég a ROM-táblázathoz fordulni. Ilyenkor a reciprokképzés és a reciprok gyökvonás 2 ciklusig tartó műveletre egyszerűsödik. Az AMD új processzora további két utasítással az egészeket használó MMX-utasításkészlettel bővíti ki. A PAVGUSB a packed byte operandusok számtani közepeit számolja ki, a PMULHRW pedig abban különbözik a PMULHW utasítástól, hogy az eredményt nem csonkolással, hanem kerekítéssel adja meg. Az MMX nagy problémája, hogy mivel fizikailag ugyanazokat a regisztereket használja, mint az x87, minden MMX rutin végrehajtása után végre kell hajtani az EMMS utasítást. Minden átkapcsolás több tucat ciklusnyi elvesztegetett időt jelent. Ennek az időnek mintegy a felét meg lehet takarítani, ha az új FEMMS utasítást használjuk az EMMS helyett az MMX, illetve 3DNow! rutin végén. Ha nemcsak a rutin végén, hanem az elején is használjuk, további időt lehet vele nyerni.
A 21. új utasítás a modern processzorok egy régóta élő problémájára nyújt megoldást. Ha a cache-ben nem található meg a következő utasításhoz szükséges adat, akkor a processzor hosszú ideig nem tesz mást, csak vár a hiányzó operandusra. Ennek az az oka, hogy a megfizethető árú memóriák sebessége nem nőtt olyan iramban, mint a processzoroké.
Ezt a több tucat ciklusnyi várakozást megelőzendő az AMD bevezette a PREFETCH utasítást. Ennek az utasításnak az a hatása, hogy az operandusként megadott memóriacímen levő 32 byte-ot a processzor minden részétől függetlenül beolvassa az adatcache-be. Ezzel elérhető, hogy az adatok már azelőtt a processzorba kerüljenek, mielőtt az azokra vonatkozó konkrét igény felmerülne. Ennek az utasításnak az alkalmazása nem kötődik sem a 3Dnow!-hoz, sem az MMX-hez. Bárhol fel lehet használni, ahol a memória sebessége korlátozná a program futását.
A K6 hagyományos verziói egy ciklus alatt csak egy MMX-utasítást tudtak dekódolni, illetve végrehajtani. Ennek megváltozása jelenti a 3Dnow! egy további jelentős újítását: a CISC MMX-utasítások dekódolása korlátozások nélkül ciklusonként kettőre rúg. Mivel az AMD speciális utasításait végrehajtó szorzó-és összeadóegység egymástól függetlenül működik és mindkettő pipeline rendszerű, a 3D-s grafikában leggyakrabban használt művelet, a 4x1-es vektor szorzását a 4x4-es transzformációs mátrixszal a K6-2 átlagosan 16 ciklus alatt végzi el.

 


K6-III: 1999 február

k6III.gif (15467 bytes)Az AMD K6-III messze a leggyorsabb Socket 7-es proci volt. 256 KB-os L2 cache-e éppen a duplája volt a K6-2+-nak. Az 500 MHz-es változatot a gyártó a hivatalos start után szinte azonnal vissza is vonta.Teljesítményét tekintve a K-6 III/500 messze jobb volt, mint a Pentium II/450. A tranzisztorok száma 21,3 millió volt, a holeadás pedig 29,3 W.

 

 

 

 

Athlon: 1999 június ( eredetileg K7-es, végleges nevén Athlon  )


Az Athlonok - a K6-III-asok utódai. Az AMD ezen új generációs processzorok sem követte az Intelt a támogatott foglalatok terén, és egy teljesen új, abszolút független architektúrát fejlesztettek ki az Athlonok támogatására - ez volt a Slot A (később Socket A). Az új CPU-k sikere nem csak az AMD-n, de az alapgyártókon is múlott. Végül persze mindenki belátta, hogy kihagyott ziccer lenne nem támogatni az új processzorokatkat. Az Athlonok teljesítménye ugyanis félelmetes volt már megjelenésük idejében, a 0,25 mikronos korszakban is: az abszolút újdonságként bevezetett háromutas FPU a 128kB L1 és 256kB L2 cache, valamint a már ekkor realizálódó (a mai napig használatban lévő EV6-os protokollnak köszönhető) 200/266 MHz-es rendszerbusz sebesség (ami a processzor 100/133MHz-es FSB-jének megduplázásával jöhetett létre) megtette hatását. Az Athlonok kétszer annyi tranzisztort tartalmaztak, mint az aktuális PIII-asok, ennek ellenére az AMD állítása szerint nem az adott órajelen elérhető minél nagyobb számítási teljesítményre optimalizálták a CPU-t, hanem a minél magasabb órajelre. ezt alátámasztotta az a tény is, hogy az 1GHz-es álomhatárt az AMD érte el először, akkor, amikor az Intel még csak 866MHz-nél tartott a PIII-asaival. Azóta ilyen téren a viszony megfordult a két cég között.

 

Duron: 2000 június

duronElső ránézésre az AMD ezzel az alacsonykategóriás gépekbe szánt "butított" processzorral ugyanazt az üzletpolitikát vette át, melyet az Intel folytatott a Celeronnal. Valójában azonban a cég saját régi "profijához" tért vissza vele, hiszen az Athlonnal belépett ugyan a " nagykategóriás" versenybe, azonban ha visszaemlékezünk a K6-II, K6-III-as processzorokkal mindig az olcsó gépeket célozták meg. A Duron nem sok mindenben különbözik az Athlontól. Ugyanolyan 128kB L1 cache dolgozik benne, hasonló, 1,75 voltkörüli magfeszültséget igényel, ismeri az éppen aktuális 3Dnow! (az AMD saját fejlesztésű SIMD készlete), MMX és újabban az SSE utasításkészletet is. A különbség a másodszintű gyorsítótár 64kB-ra csökkentett méretében és a 100MHz-ben maximalizált FSB-ben nyilvánul meg (az Athlonoknál a "b" megjelöléssel piacra dobott processzorok voltak csak ilyenek, leggyorsabb képviselőjük 13x100MHz-ig bírta a gyorsulást, ez volt az Athlon 1300b - a "c" jelűek 133MHz-esek). Kezdeti időkben a Duronok egyszerűen lemosták 66MHz-es FSB-re kárhoztatott Celeronokat, s ez a különbség akkor sem változott sokat, amikor az Intel végre 100MHz-essé tette low-end processzorjainak FSB-jét - ebben az időszakban ugyanis megjelentek az új generációs, Spitfire magoat leváltó, Morgan-alakú Duronok.

 

Thunderbird: 2000 június

tunder.gif (13862 bytes)
A Thunderbird chipek 750 MHz és 1,4 GHz frekvenciatartományban mutatkoztak be. Jellemzőjük a CPU chipre integrált 64-128 KB-os L1 és a 256 KB L2 gyorsítótár.