ARM

Wikipedia
Loikkaa: valikkoon, hakuun
Tämä artikkeli käsittelee mikroprosessoriarkkitehtuuria. Lyhenne ARM voi tarkoittaa myös Animal Rights Militiaa. ARM on myös Armenian maatunnus.

ARM (lyhenne sanoista Advanced RISC Machines) on 32-bittinen mikroprosessoriarkkitehtuuri, jonka kehitti brittiläinen tietokonevalmistaja Acorn 1980-luvun puolivälissä. ARM on pitkäikäisimpiä RISC-arkkitehtuureja ja nykyisin suosittu etenkin kämmenmikrojen, matkapuhelimien ja sulautettujen järjestelmien suorittimissa. Se on maailman eniten valmistettu 32-bittinen suoritinarkkitehtuuri: alkuvuodesta 2007 ARM-suorittimia oli valmistettu viisi miljardia kappaletta, ja mm. 90 % matkapuhelimista käyttää niitä.[1][2]

ARM soveltuu pienikokoisiin laitteisiin hyvin, koska sen voi toteuttaa suhteellisen vähäisellä logiikkamäärällä tehokkuuteensa nähden. Esimerkiksi ARM2:ssa oli vain noin 30 000 transistoria, mutta se oli silti nopeampi kuin samalla kellotaajuudella ajettu Motorola 68000, jossa transistoreja oli noin 68 000. Pienestä koostaan huolimatta ARM-prosessorit ovat varteenotettavia prosessoreita, koska ne voivat sisältää esimerkiksi muistinhallintayksikön, joka mahdollistaa kehittyneiden käyttöjärjestelmien ajamisen.

Acornista erkaantunut ARM Holdings ei enää valmista ARM-suorittimia, vaan on keskittynyt vain niiden suunnittelemiseen ja myy niiden valmistusoikeuksia useille muille yrityksille kuten Samsungille, Texas Instrumentsille (katso OMAP) ja Motorolalle (katso DragonBall MX).

ARM-käskykannan ominaisuuksia[muokkaa | muokkaa wikitekstiä]

ARM-käskykanta on RISC-tyyppinen, eli sen käskyt ovat melko yksinkertaisia ja symmetrisiä. Operaatiot tehdään rekisterien välillä. Muistia käsittelevät vain muistinlataus- ja tallennuskäskyt. ARM sisältää kuitenkin myös joukon RISC-kantaa ilmaisuvoimaisempia käskyjä, kuten käskyt pinon käyttämiseen. Lisäksi normaaleihin aritmeettisiin käskyihin voidaan liittää toisen parametrin bittien siirto (shiftaus). Miltei jokainen käsky voi olla ehdollinen, eli käsky voidaan joko suorittaa tai olla suorittamatta riippuen jonkun ehtorekisterin arvosta. Sen avulla voidaan välttää osa ohjelmakoodin ehdollisista haarautumisista, millä saadaan pidettyä suorittimen liukuhihnat täynnä ja parannettua välimuistin osumatarkkuutta, mikä parantaa suorituskykyä.

Normaalit ARM-käskyt ovat 32 bitin mittaisia. Uusissa ARM-prosessoreissa on myös toinen toimintatila, Thumb, jossa käskyt ovat 16 bitin mittaisia. Tällöin ohjelmamuistia sekä ohjelmamuistin ja prosessorin välistä muistiväylää tarvitaan vähemmän. Thumb-moodissa prosessorin toiminta on rajoittunutta: esimerkiksi vapaasti käytettävien rekisterien määrä on rajoitettu kahdeksaan, eikä muiden kuin hyppykäskyjen suoritus voi olla ehdollista.

Yleiskäyttöisiä rekistereitä ARMissa on 16 kappaletta, mikä on melko vähän RISC-prosessorille.

ARM-suoritinytimiä[muokkaa | muokkaa wikitekstiä]

  • ARM1 (1985), prototyyppi
  • ARM2 (1986), jota käytettiin Acorn Archimedes -mikrotietokoneissa
  • ARM6 (1991), jota käytettiin Apple Newton -PDA-laitteessa
  • ARM7, jota käytettiin muun muassa GameBoy Advancessa
  • StrongARM, jota valmisti aluksi DEC, ja jonka valmistusoikeudet myytiin sittemmin Intelille
  • Intel XScale
  • ARM9, joka on mm. hyvin monessa PDA:ssa käytetyn OMAP1xxx-piirin sisällä
  • ARM11, löytyy mm. OMAP2xxx-piirin sisältä.
  • Cortex A8, sisältää haarautumisenennustuksen, käytössä mm. iPhone 3GS:ssä ja Nokia N900ssa.
  • Cortex A9, ensimmäinen käskyjä uudelleenjärjestelevä ARM-suoritin. Löytyy mm. nvidian Tegra 2 -piirin sisältä.
  • Cortex A5, uusi pienempi ja vähävirtaisempi malli

Lähteet[muokkaa | muokkaa wikitekstiä]

Aiheesta muualla[muokkaa | muokkaa wikitekstiä]