ARM

Wikipedia

ARM (Advanced RISC Machines) on 32-bittinen mikroprosessoriarkkitehtuuri, jonka kehitti brittiläinen Acorn-tietokonevalmistaja 1980-luvun puolivälissä. ARM on pitkäikäisimpiä RISC-arkkitehtuureja ja nykyisin suosittu etenkin kämmenmikrojen, matkapuhelimien ja sulautettujen järjestelmien suorittimissa.

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

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

ARM on nykyään maailman eniten valmistettu 32-bittinen suoritinarkkitehtuuri; ARM-suorittemella varustettuja pienlaitteita valmistetaan paljon enemmän kuin PC-tietokoneissa käytettäviä x86-suorittimia

[muokkaa] ARM-käskykannan ominaisuuksia

ARM-käskykanta on RISC-tyyppinen, eli käskyt ovat melko yksinkertaisia ja symmetrisiä, ja operaatiot tehdään rekisterien välillä, muistia käsittelevät vain muistinlataus- ja talletuskäskyt.

ARM sisältää kuitenkin joukon hiukan muita RISC-prosessoreita ilmaisuvoimaisempia käskyjä, mm. käskyt pinon käyttämiseen.

Lisäksi normaaleihin aritmeettisiin käskyihin voidaan liittää toisen parametrin bittien shiftaus, eli yksi käsky voi koostua kahdesta operaatiosta, bittien shiftaus + toinen operaatio.

Miltei jokainen käsky voi olla ehdollinen, eli käsky voidaan joko suorittaa tai olla suorittamatta riippuen jonkun ehtorekisterin arvosta. Tämän avulla osasta ohjelmakoodin haarautumisista voidaan päästä eroon.

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

Normaalit ARM-käskyt vievät 32 bittiä tilaa, mutta uusissa ARM-prosessoreissa on myös toinen toimintatila, Thumb. Thumb-käskyt vievät kukin vain 16 bittiä tilaa, jolloin ohjelmamuistia ja täten myös muistikaistaa ohjelmamuistilta prosessorille tarvitaan vähemmän. Thumb-moodissa prosessorin toiminta on selvästi rajoitetumpaa, mm. vapaasti käytettävien rekisterien määrä on rajoitettu kahdeksaan, eikä muiden kuin hyppykäskyjen suoritus voi olla ehdollista.

[muokkaa] ARM-suorittimia

  • ARM1 (1985) - prototyyppi
  • ARM2 (1986) - käytetty Acorn Archimedes -mikrotietokoneissa
  • ARM6 (1991) - käytetty Apple Newton -PDA-laitteessa
  • ARM7TDMI - käytetty mm. Nintendon GameBoy Advancessa
  • StrongARM - valmistajana aluksi DEC, myöhemmin oikeudet myytiin Intelille
  • Intel XScale
  • ARM9 - löytyy mm. OMAP1xxx-piirien sisältä, joita käytetty hyvin monessa PDA-laitteessa sekä jossain kalliimmissa puhelimissa.