AMD K10

Wikipediasta
Siirry navigaatioon Siirry hakuun
K10 arkkitehtuuri kaaviokuvana.

AMD 10h tai AMD K10 on AMD:n syksyllä 2007 julkaistun suoritinarkkitehtuurin koodinimi. K10 pohjautuu jossain määrin aiempaan Athlon 64:n ja Opteronin käyttämään K8-arkkitehtuuriin ja siten K7-arkkitehtuuriin (AMD Athlon), mutta se sisältää merkittäviä parannuksia. K10-pohjaisia suorittimia markkinoidaan työpöydille Phenom- ja palvelimiin Opteron-nimillä. Ensimmäiset K10-suorittimet valmistettiin 65 nanometrin valmistustekniikalla, ja ne toimivat AM2- ja Socket F -pohjaisilla Athlon 64- ja Opteron-emolevyillä, joskaan eivät aivan täydellä teholla. K10:n seuraajaksi tuli syksyllä 2011 julkaistu Bulldozer.

K10:n uudistuksia K8:aan nähden

[muokkaa | muokkaa wikitekstiä]

Ytimen suorituskykyä parantavia sisäisiä uudistuksia

[muokkaa | muokkaa wikitekstiä]

Täysin 128-bittinen SSE-tiedonsiirtopolku

[muokkaa | muokkaa wikitekstiä]

128-bittisin rekisterein toimivia SSE-käskyjä ei enää tarvitse pilkkoa kahteen osaan suoritusta varten, vaan ne voidaan suorittaa suoraan kerralla. Tämä kaksinkertaistaa teoreettisen multimedia- ja liukulukusuorituskyvyn. Käytännön suorituskykyero lienee hiukan pienempi.

Parannettu SSE-latauskäskyjen suoritus

[muokkaa | muokkaa wikitekstiä]

SSE-latauskäskyjen suoritusnopeus on parantunut huomattavasti; SSE-tiedonsiirtopolun leventämisen myötä myös muistintalletusyksiköt on levennetty 64 bitistä 128:aan bittiin. Lisäksi SSE-latauskäskyjä ei enää ajeta suorittimen ainoassa FSTORE-yksikössä, jonka takia niitä voidaan suorittaa rinnakkain kaksi, tai vaihtoehtoisesti suorittaa yksi 64-bittinen talletus- ja yksi 128-bittinen latausoperaatio rinnakkain.

Parempi muistitoimintojen uudelleenjärjestely

[muokkaa | muokkaa wikitekstiä]

K8-ytimen kyky uudelleenjärjestellä muistitoimintoja on melko rajallinen; se ei kyennyt uudelleenjärjestelemään latauskäskyjä keskenään, jos jommankumman osoite ei ollut tiedossa. Tämän takia se ei hyödy käskyjen uudelleenjärjestelystä yhtä paljoa kuin esimerkiksi Intelin nykyiset suorittimet. K10 osaa uudelleenjärjestellä latauskäskyjä keskenään, vaikka jommankumman osoite ei olisikaan tiedossa. Tämä parantaa erityisesti suorittimen kokonaislukusuorituskykyä.

K10 ei kuitenkaan ilmeisesti vieläkään osaa uudelleenjärjestellä latauskäskyjä talletuskäskyjen edelle Intel Core 2n tavoin ellei molempien osoite ole tiedossa, koska tällöin pitäisi varautua tilanteeseen, että osoitteet ovatkin samat, jolloin latauskäskyn pitääkin ladata talletetuskäskyn arvo eikä muistista saatua arvoa, ja liukuhihnan toiminta pitää pysäyttää, ja suorittimen liukuhihna käynnistää uudelleen oikealla latauskäskyn tuloksella.

Pinonhallintayksikkö

[muokkaa | muokkaa wikitekstiä]

Suorittimella on myös erityinen pinonhallintayksikkö, jonka tehtävänä on huolehtia pinopohjaisten muistiosoitteiden laskennasta ja pino-osoitteen päivittämisestä.

Pinonhallintayksikkö mahdollistaa paremman rinnakkaisuuden käskyjen välillä; Myös pino-osoitinta muuttavia käskyjä voidaan uudelleenjärjestellä, koska pinonhallintayksikkö huolehtii siitä, että jokaisella pinoa käyttävällä käskyllä on aina oikea pino-osoite. Pinonhallintayksikkö parantaa myös selvästi suorittimen kokonaislukusuorituskykyä.

Parempi haarautumisenennustus

[muokkaa | muokkaa wikitekstiä]

Haarautumisenennustuksen haarautumiskohdepuskureiden määrää on kasvatettu. Lisäksi suorittimelle on lisätty epäsuorien hyppyjen osoitteiden ennustuslogiikka.

Käskynpurkauksen parannukset

[muokkaa | muokkaa wikitekstiä]

L1-käskyvälimuistin ja käskynpurkauksen välisen puskurin koko on tuplattu. Lisäksi osa käskyistä, jotka K8-ytimillisillä suorittimilla piti purkaa hitaammalla vektoripurkuyksiköllä, voidaan K10:ssä purkaa nopeammilla purkuyksiköillä.

Nopeampi jakolaskuyksikkö

[muokkaa | muokkaa wikitekstiä]

Suorittimen jakolaskuyksikköä on parannettu siten että joillain lyhyillä syötteillä jakolaskukäsky valmistuu selvästi nopeammin kuin K8-suorittimilla.

Muita uudistuksia

[muokkaa | muokkaa wikitekstiä]

HyperTransport 3.0

[muokkaa | muokkaa wikitekstiä]

K10-pohjaisiin suorittimiin tuli HyperTransport-väylän 3.0-versio, mikä mahdollisti selvästi nopeamman tiedonsiirron suorittimen ja IO-laitteiden välillä sekä monisuoritinkokoonpanoissa eri suorittimien välillä. Tämän suorituskykyhyöty jäänee käytännössä pieneksi muissa kuin vähintään neljän suoritinpiirin monisuoritinkoneissa.

Mikäli emolevy ei tue uudempaa AM2+-väyläversiota suoritin toimii toimii vanhemmalla ja hitaammalla nopeudella. AM2-suoritinkannasta on käytetty termiä "AM2+"-kanta sellaisilla uusilla emolevyillä, jotka tukevat HyperTransport-tekniikan kolmosversiota.

Virransäästöparannukset

[muokkaa | muokkaa wikitekstiä]

K10-pohjaisilla suorittimilla voidaan eri ydinten kellotaajuuksia sekä toimintajännitteitä säätää toisistaan riippumatta. Näin säästyy virtaa tilanteissa, joissa yksi ydin toimii täydellä teholla toisten ollessa tekemättä mitään.

Muistiohjaimen parannukset

[muokkaa | muokkaa wikitekstiä]

Suorittimien muistiohjainta on parannettu. Kahden eri muistikanavan muistiohjaimet on eriytetty toisistaan siten että ne pystyvät toimimaan täysin itsenäisesti. Esimerkiksi toiseen kanavaan voidaan kirjoittaa samalla kun toista luetaan. Lisäksi muistiohjaimelle on lisätty oma tiedonesihakulogiikka, jonka avulla muistiohjain pyrkii hakemaan tietoa muistista jo ennen kuin suoritinydin sitä pyytää, jos ohjain huomaa toistuvan osoitekuvion. Aiemmilla suorittimilla tiedonesihakulogiikka oli vain suoritinytimessä itsessään, ei muistiohjaimessa.

Muistiohjaimen kirjoituspuskuriin on myös lisätty mahdollisuus vaihtaa tiedonkirjoitusjärjestystä fyysiseen muistiin, jotta muistiväylän tilanvaihdot saataisiin minimoitua.

K10-ytimisiä suorittimia

[muokkaa | muokkaa wikitekstiä]

Altair/Antares/Kuma

[muokkaa | muokkaa wikitekstiä]

Altair, Antares ja Kuma ovat koodinimiä K10-arkkitehtuurin perustuvalle kaksiydinsuoritinpiirille. Piiriin tullee 512 kiB L2-välimuistia suoritinydintä kohden sekä yhteinen 2 MiB L3-välimuisti. Suorittimet valmistetaan 65 nm prosessilla. Suorittimet julkaistaan loppuvuodesta 2008 [1].

Callisto/Regor

[muokkaa | muokkaa wikitekstiä]

Vuoden 2009 Computex messuilla AMD julkaisi Callisto koodinimellisen suorittimen. Suorittimessa on 512 kilotavun L2-välimuisti molemmilla suoritinytimillä[2] ja se toimii 3,1 GHz kellotaajuudella.[2] Ytimillä on yhteinen 6 MB kokoinen L3 välimuisti.[2] Suorittimen TDP arvo on 80 Wattia.[2]

Samoilla messuilla AMD julkaisi Regor koodinimellisen suorittimen jonka kellotaajuus on 3 GHz.[2] Suorittimen molemmilla ytimillä on 1 megatavun kokoinen L2-välimuisti.[2] Suorittimen TDP arvo on 65 wattia.[2]

Barcelona/Deerhound/Agena

[muokkaa | muokkaa wikitekstiä]

Barcelona, Deerhound ja Agena ovat koodinimiä AMD:n ensimmäisille neliytimisille suoritinpiireille. Ne julkaistiin 10. syyskuuta 2007.[3]. Näissä on jokaisessa suoritinytimessä 512 kiB L2-välimuisti sekä suoritinytimille yhteinen L3-välimuisti, ja nämä valmistetaan 65 nanometrin SOI-valmistustekniikalla.

Erona suorittimilla on ilmeisesti HyperTransport-linkkien määrä ja kanta; Barcelona toimii vain yhden suorittimen kokoonpanoissa, ja sitä markkinoidaan AMD Phenom X4 -nimellä. Deerhound toimii usean suorittimen kokoonpanoissa ja kantaa nimeä Opteron.

AMD demonstroi toimivaa Barcelona-suorittimen prototyyppiä 30. marraskuuta 2006.

Kesäkuussa 2009 AMD julkaisi kuusiytimellisen Istanbul-suorittimen joka on suunnattu palvelimiin.[4][5] Istanbul suunnattiin 2–8 suorittimen järjestelmiin.[4] Suorittimet valmistetaan 45 nm valmistusprosessilla ja ne perustuvat samoihin ytimiin joita on Shanghai-suorittimissa.[5] Istanbulin piisirussa on 904 miljoonaa transistoria[5] ja sen pinta-ala on 346 neliömillimetriä.[5] Suorittimen uusia ominaisuuksia ovat APML ja HT Assist.[5] Suorittimet käyttävät Socket F suoritinkantaa.[6]

Magny-Cours/San Marino/Lisbon

[muokkaa | muokkaa wikitekstiä]

Vuonna 2010 AMD julkaist 12-ytimen Magny-Cours-suorittimen.[4] Maqny cours on ensimmäinen Opteron 6000 -perheen suoritin.[4] Magny-cours kohdennettiin 2–4 suoritinkannan alustalle nimeltä Maranello.[4] Maranellossa oli nelikanavainen DDR3-muistiohjain, enimmillään 12 muistiliitintä per prosessorikanta ja nelinkertaisen HyperTransport 3.0 -määritelmän mukaiset linkit.[4] Vuonna 2011 AMD julkaisi 32 nanometrin prosessilla valmistettavat uuteen Bulldozer-arkkitehtuuriin perustuvat suorittimet.[4]

Yksi ja kaksiprosessorikantaisiin järjestelmiin julkaistiin San Marino -alusta, johon asentuivat Opteron 4000 -tuoteperheen suorittimet eli Lisbon-suorittimet.[4] Lisbonista julkaistiin 4–6 suoritinytimellä varustettuja malleja ja niiden ACP arvo vaihtelee 40–75 wattia.[4] San Marinoon perustuvissa järjestelmissä käytetään kaksikanavaista DDR3-muistiohjainta ja enimmillään neljä muistiliitintä prosessorikannalle.[4]

AMD:n Barcelona-palvelinprosessorista on kehitetty työpöytäkäyttöön prosessori, joka kantaa nimeä Phenom. Sen ominaisuuksiin kuuluu mm ylikellotusmahdollisuus jokaiselle ytimelle erikseen.

Phenomin julkaisemisen jälkeen siinä havaittiin ongelmia, eli ns. TLB-virhe prosessorin osoitemuunnospuskurissa. Virhe on sittemmin korjattu.

Aiheesta muualla

[muokkaa | muokkaa wikitekstiä]