Protsessor kaheksatuumaline armv7 3 GHz. ARM-i litsentsisaajad ja ligikaudsed litsentsikulud. Kokkuvõtteks

Hiljuti tundus juba küsimuse sõnastus mõeldamatu, kuid tehnoloogia areng ja turu veidrused on viinud olukorrani, kus reaalne konkurents on võimalik.

Üsna hiljuti tundus mõeldamatu juba küsimuse sõnastus: kas on üldse võimalik võrrelda "telefoni" protsessorit "personaalarvutites", serverites ja isegi superarvutites kasutatavate kiipidega? Vahepeal on tehnoloogia areng ja turuveidrused viinud olukorrani, kus eksperdid arutavad tõsiselt mitte ainult ARM-protsessorite ja x86 kiipide vahelise konkurentsi, vaid nendevahelise ägeda võitluse võimalust.

Kõigepealt defineerime mõisted ja tutvume potentsiaalsete rivaalidega.

x86 keskprotsessorid on mikroprotsessorid, mis toetavad samanimelist käsukomplekti ja millel on IA-32-st tuletatud mikroarhitektuur, see tähendab Inteli 32-bitine arhitektuur. Kiibid on üles ehitatud CISC arhitektuurile (Complex Instruction Set Computing, st koos täiskomplekt juhised"), milles iga käsk saab korraga teha mitu madala taseme toimingut.

Ajalooliselt pärineb x86 perekond 16-bitisest versioonist Inteli mudelid 8086, välja antud 1978. aastal. Need protsessorid muutusid 32-bitiseks alles 1985. aastal, kui võeti kasutusele esimene “386.”. 1989. aastal aasta Intel andis välja esimese skalaari (st ühe toimingu sooritamine ühe taktitsükli jooksul) kiibi i486 (80486), millel oli esimest korda sisseehitatud vahemälu ja ujukoma FPU. 1993. aastal esitletud Pentium protsessorid olid esimesed superskalaarid (see tähendab, et nad sooritavad mitu toimingut taktsageduse kohta) ja superpipeline (neil kiipidel oli kaks torujuhet).

Niisiis, kaasaegsed x86-ga ühilduvad kiibid on superskalaarsed superpipeline mikroprotsessorid, mis on ehitatud CISC arhitektuurile.

ARM-protsessorid on 32-bitised kiibid, mis põhinevad RISC (Reduced Instruction Set Computer) arhitektuuril, st vähendatud käsukomplektiga. See arhitektuur põhineb ideel suurendada jõudlust, maksimeerides juhiste lihtsustamist ja piirates nende pikkust.

ARM-protsessorite ajalugu sai alguse 1978. aastal, mil loodi Briti ettevõte Acorn Computers. Acorni kaubamärk tootis kohalikul turul mitmeid ülipopulaarseid personaalarvutite mudeleid, mis põhinesid kaheksabitistel MOS Tech 6502 kiipidel. Muide, sama protsessor leiti ka Apple I ja II ning Commodore PET-ist.

Kuid täiustatud mudeli 6510 tulekuga, mida hakati Commodore 64-sse paigaldama 1982. aastal, kaotas Acorni arvutite sari, sealhulgas populaarne hariduslik BBC Micro, tähtsuse. See ajendas Acorni omanikke looma oma 6502 arhitektuuril põhinevat protsessorit, mis võimaldaks neil konkureerida võrdsetel tingimustel IBM PC-klassi masinatega.

Esimene tootmismudel ARM2, mis töötati välja projekti Acorn RISC Machine raames, ilmus 1986. aastal ja sellest sai sel ajal kõige lihtsam ja odavam 32-bitine protsessor: sellel polnud mitte ainult vahemälu, mis oli tavapärane tol ajal, aga ka mikroprogramme: erinevalt CISC-protsessoritest täideti mikrokoodi nagu iga teinegi masina kood, teisendades selle lihtsateks juhisteks. ARM2 stants koosnes 30 000 transistorist ja see kompaktne disain jäi alles iseloomulik tunnus sellest perekonnast: ARM6-l on ainult 5000 transistorit rohkem.

Erinevalt Intelist või AMD-st ei tooda ARM protsessoreid ise, eelistades müüa litsentse teistele. Selliste litsentsidega ettevõtete hulgas on samad Intel ja AMD, aga ka VIA Technologies, IBM, NVIDIA, Nintendo, Texas Instruments, Freescale, Qualcomm ja Samsung. Suunatav fakt: kui AMD, teine ​​ettevõte x86 protsessorite turul, tähistas 2009. aastal oma 500 miljoninda CPU väljaandmist, siis ainuüksi 2009. aastal tarniti turule peaaegu kolm miljardit ARM-protsessorit!

Kaasaegsed ARM-protsessorid on superskalaarsed superpipeline-kiibid, mis on ehitatud RISC-arhitektuurile.

Nende kahe määratluse järgi otsustades on peaaegu ainus formaalne erinevus ARM-i ja x86 perekondade vahel RISC- ja CISC-mikroarhitektuurid. Seda ei saa aga enam pidada põhimõtteliseks erinevuseks: alates i486DX modifikatsioonist hakkasid x86 kiibid välja nägema rohkem RISC protsessorite moodi. Alates sellest põlvkonnast näitavad mikroskeemid, säilitades samal ajal ühilduvuse kõigi eelmiste käsukomplektidega, maksimaalset jõudlust ainult piiratud komplektiga lihtsad juhised, mis näeb kahtlaselt välja nagu RISC-juhiste komplekt. Seetõttu võib tänapäeva x86-t julgelt pidada RISC-tuumadega CISC-protsessoriteks: kiibile ehitatud riistvaratõlk dekodeerib keerukad CISC-käsud lihtsate sisemiste RISC-käskude komplektiks. Kuigi iga CISC-käsu saab jaotada mitmeks RISC-käsuks, suurendab viimase täitmise kiirus oluliselt jõudlust. Lisaks ei tohiks me unustada tänapäevaste kiipide superskalaarsust ja superpipeliningut.

Teine erinevus on palju olulisem: lõviosa x86-st on universaalsed protsessorid, mis on "riputatud" mitmesuguste erinevate plokkide ja moodulitega, mis on loodud edukalt toime tulema peaaegu kõigi ülesannetega - alates veebis surfamisest ja töötlemisest tekstifailid enne video kodeerimist kõrgresolutsiooniga ja töötage koos kolmemõõtmeline graafika. Nutitelefonides ja muudes kasutamiseks mõeldud ARM-kiipide jaoks kaasaskantavad seadmed, täiesti erinevad eesmärgid ja võimalused.

Milleks siis sellised erinevad tooted jagada? Muidugi on naeruväärne võrrelda neljatuumaline i5 ja "telefon" Qualcomm MSM7201A, mis leidub HTC Dreami ja Hero kommunikaatorites, kuid on skaalasid, kus ARM-i ja i86 turud kattuvad tänapäeval. Need on ühelt poolt uusimad ARM-kiibid, nagu Cortex-A8 (ARMv7-A arhitektuur) ja teiselt poolt madalpinge x86-klassi protsessorid. Intel Atom. Cortex-A8 baasil moodne õuna tablett iPad ja Intel Atom toidavad enamikku netbookidest.

Nendel kiipidel on veel üks oluline üldine omadus: Mõlemad protsessorid töötavad käskude järjestikuse täitmise põhimõttel, samas kui enamik x86 protsessoreid on rivist väljas. See ahel on loodud maksimaalse jõudluse saavutamiseks voolutarbimise vati kohta, kõrvaldades moodulid, mis vastutavad käskude ebakorrapärase täitmise eest.

Atomil on ka Cortex-A8-st mitmeid põhimõttelisi erinevusi. Esiteks toetavad peaaegu kõik selle perekonna kiibid Hyper-Threading paralleelarvutustehnoloogiat, mis võimaldab teil esitada ühte füüsiline tuum nagu kaks virtuaalset. See on väga oluline eelis, mis suurendab oluliselt tootlikkust, ja mitte ainult suhteliselt harvaesinevates rakendustes. mitme keermega rakendused, aga ka I/O-süsteemide intensiivse kasutamisega käskude täitmisel. Näiteks laadib Hyper-Threadinguga Atom Windowsi märgatavalt kiiremini kui võrreldav ühetuumaline VIA Nano ilma seda režiimi toetamata.

Atomi ja Cortex-A8 jõudluse praktilise võrdluse viis läbi OpenSourceMarki ja miniBenchi testpakettide autor ning SiSoftware Sandra üks kaasautoritest Van Smith. Testisime masinaid, mis põhinevad protsessoritel Atom N450, Freescale i.MX515 (Cortex-A8), VIA Nano L3050 ja võrdluseks Bartoni tuumal mobiilil Athlon XP-M. Kuna lähtepunktiks võeti 800 MHz taktsagedusega Cortex-A8 karakteristikud, vähendati VIA Nano ja Athoni töösagedusi samale väärtusele ning Atomil 1000 MHz (edasi vähendamine ei olnud võimalik ). Samal ajal on Cortex-A8-l endiselt mitu ilmselgelt nõrgad kohad: aeglase 32-bitise DDR2-200 mälu ja enam kui tagasihoidliku integreeritud graafika tugi maksimaalse eraldusvõimega 1024 x 768 kuueteistkümnebitise värvisügavusega. Kõik testid viidi läbi töötavates süsteemides Ubuntu süsteemid 9.04 Linux.

Testi tulemused osutusid enam kui huvitavaks: Cortex-A8 näitas täisarvulistes arvutustes üsna konkurentsivõimelist jõudlust konkurentidega võrreldes oluliselt väiksema energiatarbimisega. Ootuspäraselt osutusid ebaõnnestumisteks ainult mälu ribalaiuse ja ujukomaarvutuste testid, ARM-kiipide traditsiooniline “Achilleuse kanna”. Pikka aega puudusid ARM-protsessoritel üldiselt FPU moodulid ja kuigi Cortex-A8-l on kaks sellist moodulit (Neon 32-bit SP ja VFP), siis nende võimsusest ilmselgelt ei piisa. Ujukomaarvutused on 3D mängud, teaduslik modelleerimine ning teatud tüüpi video- ja helitöötlus ning kodeerimine. Nii et kui ARM-protsessorite tootjad sihivad tõesti netbooki, nettopi ja tahvelarvuti niši, peavad nad FPU jõudlust märkimisväärselt parandama. Kõikide testide üksikasjalikud tulemused leiate siit (http://www.brightsideofnews.com/news/2010/4/7/the-coming-war-arm-versus-x86.aspx).

Kas peaksime ootama võitlust nii erinevate ja nii sarnaste ARM-i ja x86 protsessorite perekondade vahel? Seni on massimeelelahutusrakenduste jõudluse osas "relvad" oluliselt madalamad isegi "aatomitest". Väljavaated on siiski julgustavad: uusim Cortex-A9 arhitektuur on loodud ühe kuni nelja tuumaga protsessorite loomiseks ja ARM Limitedi sõnul on need ujukoma jõudlust oluliselt parandanud. Esimesed Cortex-A9-l põhinevad kiibid – NVIDIA Tegra 2 – on kahetuumalised kiibid, mille graafikatuum toetab Full HD 1080p videot ja kolmemõõtmelist graafikat koos tarkvara liides OpenGL ES 2.0. Selliste omadustega tahvelarvuti või netbook suudab hõlpsasti konkureerida mis tahes Atomi-põhise seadmega. Lisame siia erakordse efektiivsuse, mis tähendab pikka aku tööiga. Nii võib Apple iPadist saada ARM-kiipide ja x86-protsessorite vahelise võitluse alguse sümbol omal alal.

ARM-protsessor on mobiilne protsessor nutitelefonidele ja tahvelarvutitele.

See tabel näitab kõiki praegu teadaolevaid ARM-protsessoreid. ARM-protsessorite tabel täieneb ja täiendatakse uute mudelite ilmumisel. See tabel kasutab CPU ja GPU jõudluse hindamiseks tingimuslikku süsteemi. ARM-protsessori jõudluse andmeid võeti kõige rohkem erinevatest allikatest põhinevad peamiselt selliste testide tulemustel nagu: PassMark, Antutu, GFXBench.

Me ei pretendeeri absoluutsele täpsusele. Absoluutselt täpselt reastage ja hinnata ARM-protsessorite jõudlust võimatu, sel lihtsal põhjusel, et igal neist on mõnes mõttes eelised, kuid mõnes mõttes jääb see teistest ARM-protsessoritest maha. ARM-protsessorite tabel võimaldab teil näha, hinnata ja, mis kõige tähtsam, võrrelda erinevaid SoC-sid (System-On-Chip) lahendusi. Meie tabelit kasutades saate võrrelda mobiilseid protsessoreid ja piisab, kui täpselt teada saada, kuidas teie tulevase (või praeguse) nutitelefoni või tahvelarvuti ARM-süda on paigutatud.

Siin oleme võrrelnud ARM-protsessoreid. Vaatasime ja võrdlesime CPU ja GPU jõudlust erinevates SoC-des (Süsteem kiibil). Kuid lugejal võib tekkida mitu küsimust: kus kasutatakse ARM-protsessoreid? Mis on ARM-protsessor? Mille poolest ARM arhitektuur erineb x86 protsessoritest? Proovime seda kõike mõista, laskumata liiga detailidesse.

Esiteks määratleme terminoloogia. ARM on arhitektuuri nimi ja samal ajal selle arendamist juhtiva ettevõtte nimi. Lühend ARM tähistab (Advanced RISC Machine või Acorn RISC Machine), mida võib tõlkida järgmiselt: täiustatud RISC masin. ARM arhitektuurühendab 32- ja 64-bitiste mikroprotsessorituumade perekonna, mille on välja töötanud ja litsentsinud ARM Limited. Tahaksin kohe märkida, et ARM Limited ettevõte tegeleb eranditult tuumade ja neile mõeldud tööriistade (silumistööriistad, kompilaatorid jne) arendamisega, kuid mitte protsessorite endi tootmisega. Ettevõte ARM Limited müüb ARM-protsessorite tootmise litsentse kolmandatele isikutele. Siin on osaline nimekiri ettevõtetest, kellel on täna litsents ARM-protsessorite tootmiseks: AMD, Atmel, Altera, Cirrus Logic, Intel, Marvell, NXP, Samsung, LG, MediaTek, Qualcomm, Sony Ericsson, Texas Instruments, nVidia, Freescale... ja paljud teised.

Mõned ettevõtted, kes on saanud litsentsi ARM-protsessorite tootmiseks, loovad oma tuumade versioonid, mis põhinevad ARM-i arhitektuuril. Näitena võime nimetada: DEC StrongARM, Freescale i.MX, Intel XScale, NVIDIA Tegra, ST-Ericsson Nomadik, Qualcomm Snapdragon, Texas Instruments OMAP, Samsung Hummingbird, LG H13, Apple A4/A5/A6 ja HiSilicon K3.

Täna töötavad nad ARM-põhiste protsessoritega peaaegu igasugune elektroonika: pihuarvuti, mobiiltelefonid ja nutitelefonid, digipleierid, kaasaskantavad mängukonsoolid, kalkulaatorid, välised kõvakettad ja ruuterid. Need kõik sisaldavad ARM-i tuuma, nii et võime seda öelda ARM- mobiilsed protsessorid nutitelefonide jaoks ja tabletid.

ARM protsessor esindab a SoC või "süsteem kiibil". SoC-süsteem või "süsteem kiibil" võib ühes kiibis sisaldada lisaks protsessorile endale ka muid osi täisväärtuslik arvuti. See on mälukontroller, I/O-pordi kontroller ja graafika tuum ja geopositsioneerimissüsteem (GPS). See võib sisaldada ka 3G-moodulit ja palju muud.

Kui arvestada eraldi ARM-protsessorite perekonda, näiteks Cortex-A9 (või mõnda muud), siis ei saa öelda, et ühe perekonna kõigil protsessoritel on sama jõudlus või kõik need on varustatud GPS moodul. Kõik need parameetrid sõltuvad tugevalt kiibi tootjast ning sellest, mida ja kuidas ta otsustas oma tootes rakendada.

Mis vahe on ARM-i ja X86 protsessoritel?? RISC (Reduced Instruction Set Computer) arhitektuur ise eeldab vähendatud juhiste kogumit. Mis viib vastavalt väga mõõduka energiatarbimiseni. Lõppude lõpuks on mis tahes ARM-kiibi sees palju vähem transistore kui selle x86-liinil. Ärge unustage, et SoC-süsteemis asuvad kõik välisseadmed ühes kiibis, mis võimaldab ARM-protsessoril olla veelgi energiasäästlikum. ARM-i arhitektuur loodi algselt ainult täisarvuliste operatsioonide arvutamiseks, erinevalt x86-st, mis võib töötada ujukomaarvutuste või FPU-ga. Neid kahte arhitektuuri on võimatu selgelt võrrelda. Mõnes mõttes on ARM-il eelis. Ja kuskil on vastupidi. Kui proovite vastata küsimusele ühe fraasiga: mis vahe on ARM-i ja X86 protsessoritel, siis on vastus järgmine: ARM-protsessor ei tea käskude arvu, mida x86-protsessor teab. Ja need, kes teavad, näevad välja palju lühemad. Sellel on nii oma plussid kui miinused. Olgu kuidas on, viimasel ajal viitab kõik sellele, et ARM-protsessorid hakkavad aeglaselt, kuid kindlalt järele jõudma ja mõnes mõttes isegi ületama tavalisi x86 protsessoreid. Paljud kuulutavad avalikult, et ARM-protsessorid asendavad peagi koduarvutite segmendis x86 platvormi. Nagu me juba teame, loobusid mitmed maailmakuulsad ettevõtted 2013. aastal täielikult netbookide edasisest tootmisest tahvelarvutite kasuks. Noh, mis tegelikult saab, seda näitab aeg.

Jälgime juba turul saadaolevaid ARM-protsessoreid.

Vastus on suurema funktsionaalse ohutusega rakenduste jaoks. Kõrval vähemalt tuumad ARM Cortex-R Selleks kasutatakse Texas Instrumentsi suure jõudlusega "reaalajas" mikrokontrollereid.


Kuigi Cortex-R protsessorid ühilduvad Cortex-A ja Cortex-M protsessoritega peaaegu täielikult juhiste komplekti poolest, on nende vahel siiski olulisi erinevusi. Eelkõige pakub Cortex-R tuum suuremat jõudlust kui Cortex-M, suutes samal ajal teha deterministlikke toiminguid, mida Cortex-A rakendusprotsessorites on raske saavutada. Nii et jõudluse poolest jääb Cortex-R Cortex-M ja Cortex-A vahele, kuid samas saab seda kasutada nii mikrokontrollerites kui protsessorites.


Cortex-R tuum on üles ehitatud Harvardi arhitektuurile ja tagab kõrge taktsageduse tänu 8-astmelisele torujuhtmele ja superskalaarsele käskude täitmisele. Riistvara SIMD juhised võimaldavad suure jõudlusega digitaalset signaalitöötlust ja meediumitöötlust. Cortex-M-il on ka jõudlust parandavad funktsioonid, nagu juhiste eellaadija, haru ennustaja ja riistvarajagaja. Sellised arhitektuursed komponendid aitavad Cortex-R4 ja Cortex-R5 protsessoritel saavutada suur jõudlus jõudlus DMIPS/MHz. Teine huvitav omadus Cortex-R tuumadel on IEEE-754-ga ühilduv ujukoma konveier, mis toetab nii ühe täpsusega (32-bitine) kui ka topelttäpsusega (64-bitine) vorminguid ning töötab paralleelselt fikseeritud punktiga konveieriga.



Kui madala latentsusajaga mälu on protsessoriga tihedalt ühendatud, reageeritakse reaalajas toimuvatele sündmustele võimalikult kiiresti ja katkestuste käsitlemine toimub nii kiiresti kui võimalik. Need võimalused koos Cortex-R-i tuuma suure jõudluse ja determinismiga aitavad vastata reaalajas rakenduste nõudmistele, mis nõuavad ka funktsionaalset ohutust.


Kui töötate seadmete ohutuse ja töökindluse valdkonnas, olete ilmselt kuulnud programmeeritavate seadmete funktsionaalsest ohutusest. elektroonilised osad, ja esimene standard, mis võib meelde tulla, on IEC 61508. See on suur rahvusvaheline ohutusstandard, mis on kehtinud umbes 20 aastat ja mida järgivad paljud tööstusharud. Funktsionaalne ohutus on ette nähtud transpordis (lennundus, raudtee ja autotööstus), tööstuses, meditsiinis, taastuvenergias ja muudes valdkondades. Need tööstusharud on välja töötanud oma ohutusstandardid või kohandanud rahvusvahelisi standardeid, nagu IEC 61508. Eraldi tuleb märkida, et autotööstus võttis 2012. aastal vastu oma funktsionaalse ohutusstandardi ISO 26262.


Niisiis, mis on Cortex-R-i funktsionaalse ohutuse seisukohast head? Esiteks ainulaadsed konfiguratsioonifunktsioonid, mis võimaldavad vigu parandada. Need funktsioonid on suvandid, mille ARM on otse kernelisse sisse ehitanud, sealhulgas vigade tuvastamine ja parandamine, siini- ja L1-mälukaitse, kasutaja- ja privilegeeritud töörežiimid. tarkvara mälukaitsemooduliga (MPU) ja kahetuumalise lukustusastme (DCLS) konfiguratsiooni toega.


Mis on DCLS ja miks seda vaja on? Kui olete tarkvarainsener, kes töötab projekti kallal, mis nõuab usaldusväärset ja ohutu töö seadmed, siis muudab DCLS teie elu palju lihtsamaks. See on eriti kasulik, kui kasutate ühes tuumas esinevate vigade diagnoosimiseks kahte mikrokontrollerit või kahte sõltumatut tuuma.


Sõltumatu tuumaga töötamisel on paar spetsiifilist probleemi. Esiteks peate kirjutama "lisa" koodi iga mikrokontrolleri jaoks, mis jälgib teist mikrokontrollerit. Teiseks peate nüüd muutma selle koodi oma mooduli põhiosaks süsteemi turvalisus, see tähendab, et peate tagama selle koodi iga rea ​​töökindluse ja turvalisuse edasine töö. DCLS-iga muutub see "lisa" kood ja vajadus selle kaitsmiseks minevikku. Muidugi peab arendaja ikkagi kirjutama palju rida turvalisusega seotud koodi, kuid see mehhanism teeb ta elu ikka lihtsamaks.


Arusaadavuse hõlbustamiseks võib DCLS-i mehhanismi pidada põhiprotsessori ja kinnitusmooduli kombinatsiooniks. Programmeerija seisukohast ei erine sellise süsteemi programmeerimine tavapärase ühetuumalise mikrokontrolleri programmeerimisest. Teine tuum, see tähendab kinnitusmoodul, täidab koos võrdlusloogikaga nii ülalkirjeldatud “lisa” koodi tööd kui ka palju muud. Võrdlusloogika suudab tuvastada vea mõne protsessoritsükli jooksul, samas kui diskreetsel tuumal võib selleks kuluda sadu või isegi tuhandeid tsükleid. Seetõttu tuvastab DCLS palju kiiremini vigu ja võib säästa väärtuslikku aega usaldusväärse koodi väljatöötamisel.

Esimesed ARM-kiibid ilmusid kolm aastakümmet tagasi tänu Briti ettevõtte Acorn Computers (nüüd ARM Limited) pingutustele, kuid pikka aega olid oma kuulsamate vendade – x86 protsessorite – varjus. Kõik pöördus pea peale IT-tööstuse üleminekuga arvutijärgsesse ajastusse, mil ei valitsenud enam arvutid, vaid mobiilsed vidinad.

ARM-i arhitektuuri omadused

Võib-olla tasub alustada sellest, et praegu kasutatavas x86 protsessori arhitektuuris Intel ja AMD, kasutatakse CISC (Complex Instruction Set Computer) käsukomplekti, kuigi mitte puhtal kujul. Seega dekodeeritakse suur hulk keerulisi käske, mis on pikka aega olnud CISC tunnuseks, esmalt lihtsateks ja alles seejärel töödeldakse. On selge, et kogu see tegevusahel võtab palju energiat.

Energiasäästlik alternatiiv on ARM-i arhitektuurikiibid, millel on RISC (Reduced Instruction Set Computer) käsukomplekt. Selle eeliseks on esialgu väike komplekt lihtsad käsud, mida töödeldakse minimaalse pingutusega. Sellest tulenevalt eksisteerivad olmeelektroonika turul rahumeelselt (tegelikult mitte just väga rahumeelselt) koos kaks protsessoriarhitektuuri – x86 ja ARM, millest igaühel on omad plussid ja miinused.


X86 arhitektuur on universaalsemaks ülesannete osas, millega see hakkama saab, sealhulgas isegi ressursimahukate ülesannetega, nagu fotode, muusika ja video redigeerimine, samuti andmete krüptimine ja tihendamine. ARM-i arhitektuur omakorda "väljub" äärmiselt madala energiatarbimise ja üldiselt piisav jõudlus tänapäeval kõige olulisematel eesmärkidel: veebilehtede joonistamiseks ja meediasisu esitamiseks.


ARM Limited ärimudel

Praegu tegeleb ARM Limited ainult võrdlusprotsessorite arhitektuuride arendamisega ja nende litsentsimisega. Konkreetsete kiibimudelite loomine ja nende hilisem masstootmine on ARM-i litsentsiomanike töö, mida on väga palju. Nende hulgas on vaid kitsastes ringkondades tuntud ettevõtteid nagu STMicroelectronics, HiSilicon ja Atmel, aga ka IT-hiiglasi, kelle nimed on tuntud – Samsung, NVIDIA ja Qualcomm. KOOS täielik nimekiri litsentsisaajate ettevõtted leiate ARM Limitedi ametliku veebisaidi vastavalt lehelt.


Nii suur litsentsisaajate arv on eelkõige tingitud ARM-protsessorite rakenduste rohkusest ning mobiilividinad on vaid jäämäe tipp. Manussüsteemides, võrguseadmetes ja mõõteriistades kasutatakse odavaid ja energiatõhusaid kiipe. Makseterminalid, välised 3G modemid ja sportlikud pulsikellad– kõik need seadmed põhinevad ARM-protsessori arhitektuuril.


Analüütikute sõnul teenib ARM Limited ise iga toodetud kiibi eest 0,067 dollarit autoritasu. Aga see on väga keskmine summa, sest omahinnaga uusim mitmetuumalised protsessorid märkimisväärselt parem kui pärandarhitektuuri ühetuumalised kiibid.

Ühe kiibiga süsteem

Tehnilisest küljest ei ole ARM-arhitektuuri kiipide protsessoriteks kutsumine täiesti õige, sest lisaks ühele või mitmele arvutustuumale sisaldavad need mitmeid seotud komponente. Sobivam sisse sel juhul on terminid single-chip system ja system-on-a-chip (inglise keelest system on a chip).

Seega sisaldavad nutitelefonide ja tahvelarvutite uusimad ühekiibilised süsteemid kontrollerit muutmälu, graafikakiirend, videodekooder, helikodek ja valikulised traadita side moodulid. Väga spetsiifilised kiibid võivad sisaldada täiendavaid kontrollereid, millega suhelda välisseadmed, näiteks andurid.


Ühe kiibiga süsteemi üksikuid komponente saab arendada kas otse ARM Limited või kolmandate osapoolte ettevõtted. Selle ilmekaks näiteks on graafikakiirendid, mida lisaks ARM Limitedile (Mali graafika) arendavad Qualcomm (Adreno graafika) ja NVIDIA (GeForce ULP graafika).

Unustada ei tasu ka firmat Imagination Technologies, mis peale PowerVR graafikakiirendite disainimise midagi muud ei tee. Kuid peaaegu pool on tema omanik globaalsel turul mobiilne graafika: Apple'i ja Amazoni vidinad, tahvelarvutid Samsung Galaxy Tab 2 ja ka odavad nutitelefonid põhineb MTK protsessoritel.

Aegunud põlvkonnad kiibid

Moraalselt vananenud, kuid siiski laialt levinud protsessoriarhitektuurid on ARM9 ja ARM11, mis kuuluvad vastavalt ARMv5 ja ARMv6 perekondadesse.

ARM9. ARM9 kiibid võivad ulatuda kella sagedus 400 MHz ja tõenäoliselt on need teie sisemusse installitud juhtmevaba ruuter ja vana, kuid siiski töökindel mobiiltelefon nagu Sony Ericsson K750i ja Nokia 6300. ARM9 kiipide jaoks on kriitilise tähtsusega Jazelle juhend, mis võimaldab mugavalt töötada Java rakendustega (Opera Mini, Jimm, Foliant jne).

ARM11. ARM protsessorid 11 võib kiidelda ARM9-ga võrreldes laiendatud juhiste komplekti ja palju kõrgema taktsagedusega (kuni 1 GHz), kuigi ka nende võimsusest ei piisa tänapäevaste ülesannete jaoks. Madala energiatarbimise ja mitte vähem olulise maksumuse tõttu kasutatakse ARM11 kiipe siiski nutitelefonides algtaseme: Samsung Galaxy Pocket ja Nokia 500.

Tänapäevased kiipide põlvkonnad

Kõik enam-vähem uued ARM-arhitektuuri kiibid kuuluvad ARMv7 perekonda, mille lipulaevade esindajad on jõudnud juba kaheksa tuumani ja üle 2 GHz taktsageduseni. Otse ARM Limitedi poolt välja töötatud protsessori tuumad kuuluvad Cortexi sarja ja enamik ühekiibiliste süsteemide tootjaid kasutab neid ilma oluliste muudatusteta. Ainult Qualcomm ja Apple on loonud oma modifikatsioonid ARMv7 baasil – esimene nimetas oma loomingut Scorpioniks ja Kraitiks ning teine ​​– Swiftiks.


ARM Cortex-A8. Ajalooliselt oli ARMv7 perekonna esimene protsessorituum Cortex-A8, mis oli aluseks sellistele oma aja kuulsatele SoC-dele nagu Apple A4 (iPhone 4 ja iPad) ja Samsung Hummingbird (Samsung Galaxy S ja Galaxy Tab). See näitab umbes kaks korda rohkem suur jõudlus võrreldes eelmise ARM11-ga. Lisaks sai Cortex-A8 tuum NEON kaasprotsessori kõrge eraldusvõimega video töötlemiseks ja toe Adobe pistikprogramm Välklamp.

Tõsi, kõik see mõjutas negatiivselt Cortex-A8 energiatarbimist, mis on oluliselt suurem kui ARM11 oma. Vaatamata sellele, et ARM Cortex-A8 kiipe kasutatakse endiselt eelarvelistes tahvelarvutites (Allwiner Boxchip A10 ühe kiibi süsteem), on nende päevad turul ilmselt loetud.

ARM Cortex-A9. Pärast Cortex-A8 tutvustas ARM Limited uue põlvkonna kiipe - Cortex-A9, mis on nüüdseks kõige levinum ja hõivab keskmise hinnaniši. Cortex-A9 tuumade jõudlus on Cortex-A8-ga võrreldes tõusnud ligikaudu kolm korda, samuti on võimalik neid kahte või isegi nelja ühele kiibile kombineerida.

NEON-i kaasprotsessor on muutunud valikuliseks: NVIDIA kaotas selle oma Tegra 2 ühekiibilises süsteemis, otsustades selle vabastada rohkem ruumi graafikakiirendi jaoks. Tõsi, midagi head sellest ei tulnud, sest enamik videopleieri rakendusi toetus ikka ajaproovitud NEONile.


Just Cortex-A9 “valitsemise” ajal ilmusid ARM Limitedi pakutud big.LITTLE kontseptsiooni esimesed teostused, mille kohaselt peaksid ühekiibilistes süsteemides olema nii võimsad kui nõrgad, kuid energiasäästlikud protsessorituumad. Big.LITTLE kontseptsiooni esimene teostus oli NVIDIA Tegra 3 süsteem-kiibil nelja Cortex-A9 tuumaga (kuni 1,7 GHz) ja viienda energiasäästliku kaastuumaga (500 MHz) lihtsate taustaülesannete täitmiseks.

ARM Cortex-A5 ja Cortex-A7. Cortex-A5 ja Cortex-A7 protsessorituumade kavandamisel taotles ARM Limited sama eesmärki – saavutada kompromiss ARM11 minimaalse energiatarbimise ja Cortex-A8 vastuvõetava jõudluse vahel. Nad ei ole unustanud võimalust ühendada kaks või neli südamikku - mitmetuumalised Cortex-A5 ja Cortex-A7 kiibid ilmuvad järk-järgult müügile (Qualcomm MSM8625 ja MTK 6589).


ARM Cortex-A15. Protsessori tuumad Cortex-A15-st sai Cortex-A9 loogiline jätk - selle tulemusel õnnestus ARM-i arhitektuurikiipe esimest korda ajaloos jõudluses umbkaudselt võrrelda Intel Atomiga ja see on juba suur edu. Pole asjata, et kanooniline Nõuded süsteemile Ubuntu Touch OS-i versioonile, kus on näidatud täielik multitegumtöötlus kahetuumaline protsessor ARM Cortex-A15 või sarnane Intel Atom.


Peagi jõuavad müügile arvukad NVIDIA Tegra 4-l põhinevad vidinad nelja ARM Cortex-A15 tuuma ja viienda Cortex-A7 tuumaga. NVIDIA järel võttis Samsung kasutusele big.LITTLE kontseptsiooni: "südamega" Galaxy nutitelefon S4 on Exynos 5 Octa kiip, millel on neli Cortex-A15 südamikku ja sama palju energiasäästlikke Cortex-A7 südamikke.


Tuleviku väljavaated

Cortex-A15 kiipidel põhinevad mobiilividinad pole veel müügile ilmunud, kuid peamised suundumused ARM-i arhitektuuri edasiarendamisel on juba teada. ARM Limited on juba ametlikult tutvustanud järgmist ARMv8 protsessorite perekonda, mille esindajad on tingimata 64-bitised. Avatud uus ajastu RISC-protsessorite Cortex-A53 ja Cortex-A57 tuumad: esimene on energiasäästlik ja teine ​​suure jõudlusega, kuid mõlemad on võimelised töötama suure hulga RAM-iga.

Tarbeelektroonika tootjad pole ARMv8 protsessorite perekonna vastu veel erilist huvi tundnud, kuid silmapiiril on uued litsentsisaajad, kes plaanivad tuua ARM-kiibid serveriturg: AMD ja Calxeda. Idee on uuenduslik, kuid sellel on õigus elule: samad NVIDIA Tesla graafikakiirendid, mis koosnevad suur number lihtsad tuumad on serverilahendustena oma tõhusust praktikas tõestanud.

Tänapäeval on kaks kõige populaarsemat protsessori arhitektuuri. See on x86, mis töötati välja 80ndatel ja mida kasutatakse personaalarvutid ja ARM - kaasaegsem, mis võimaldab muuta protsessorid väiksemaks ja ökonoomsemaks. Seda kasutatakse enamikes mobiilseadmetes või tahvelarvutites.

Mõlemal arhitektuuril on oma plussid ja miinused, samuti kasutusvaldkonnad, kuid on ka ühiseid jooni. Paljud eksperdid ütlevad, et ARM on tulevik, kuid sellel on siiski mõned puudused, mida x86-l pole. Meie tänases artiklis vaatleme, kuidas käe arhitektuur erineb x86-st. Vaatame põhimõttelisi erinevusi ARM-i ja x86 vahel ning proovime ka kindlaks teha, kumb on parem.

Protsessor on mis tahes põhikomponent arvutusseade, olgu selleks siis nutitelefon või arvuti. Selle jõudlus määrab, kui kiiresti seade töötab ja kui kaua see akutoitel töötab. Lihtsamalt öeldes on protsessori arhitektuur käskude kogum, mida saab kasutada programmide koostamiseks ja mida rakendatakse riistvara tase kasutades teatud protsessori transistoride kombinatsioone. Need võimaldavad programmidel suhelda riistvaraga ja määrata, kuidas andmeid mällu üle kanda ja mälust lugeda.

Peal Sel hetkel Arhitektuure on kahte tüüpi: CISC (Complex Instruction Set Computing) ja RISC (Reduced Instruction Set Computing). Esimene eeldab, et protsessor rakendab juhiseid kõigil juhtudel, teine, RISC, seab arendajatele ülesandeks luua protsessor koos tööks vajalike minimaalsete juhiste komplektiga. RISC juhised on olemas väiksem suurus ja veel lihtsam.

x86 arhitektuur

Protsessori x86 arhitektuur töötati välja 1978. aastal ja ilmus esmakordselt Inteli protsessorites ning on CISC tüüpi. Selle nimi on võetud selle arhitektuuriga esimese protsessori mudelist - Intel 8086. Aja jooksul hakkasid parema alternatiivi puudumisel seda arhitektuuri toetama ka teised protsessoritootjad, näiteks AMD. Nüüd on see standard lauaarvutid, sülearvutid, netbookid, serverid ja muud sarnased seadmed. Kuid mõnikord kasutatakse tahvelarvutites x86 protsessoreid, see on üsna tavaline praktika.

Esimene Intel 8086 protsessor oli 16-bitise mahuga, seejärel 2000. aastal ilmus 32-bitise arhitektuuriga protsessor ja veelgi hiljem ilmus 64-bitine arhitektuur. Arutasime seda üksikasjalikult eraldi artiklis. Selle aja jooksul on arhitektuur väga palju arenenud, lisandunud on uued juhiste komplektid ja laiendused, mis võivad protsessori jõudlust tunduvalt tõsta.

x86-l on mitmeid olulisi puudusi. Esiteks on see käskude keerukus, nende segadus, mis tekkis pika arenguloo tõttu. Teiseks tarbivad sellised protsessorid liiga palju energiat ja toodavad seetõttu palju soojust. x86 insenerid valisid algselt maksimaalse jõudluse saavutamise tee ja kiirus nõuab ressursse. Enne kui vaatame arm x86 erinevusi, räägime ARM-i arhitektuurist.

ARM arhitektuur

Seda arhitektuuri tutvustati veidi hiljem x86 taga – 1985. aastal. Selle töötas välja kuulus Briti firma Acorn, seejärel kandis see arhitektuur nime Arcon Risk Machine ja kuulus RISC tüüpi, kuid siis ilmus selle täiustatud versioon Advanted RISC Machine, mis on nüüdseks tuntud kui ARM.

Seda arhitektuuri arendades võtsid insenerid eesmärgiks kõrvaldada kõik x86 puudused ning luua täiesti uus ja tõhusaim arhitektuur. ARM kiibid vastu võetud minimaalne energiatarve Ja madal hind, kuid neil oli x86-ga võrreldes kehv jõudlus, nii et need ei saavutanud algselt personaalarvutites erilist populaarsust.

Erinevalt x86-st püüdsid arendajad esialgu hankida minimaalsed kulud ressursside osas on neil vähem protsessorikäske, vähem transistore, aga vastavalt ka vähem igasuguseid lisafunktsioonid. Aga selleks viimased aastad ARM-protsessorite jõudlus on paranenud. Seda arvesse võttes ja madal energiatarve aastal hakati neid väga laialdaselt kasutama mobiilseadmed, nagu tahvelarvutid ja nutitelefonid.

Erinevused ARM-i ja x86 vahel

Ja nüüd, kui oleme vaadanud nende arhitektuuride arengulugu ja nende põhimõttelisi erinevusi, teeme seda üksikasjalik võrdlus ARM ja x86, tuginedes nende erinevatele omadustele, et teha kindlaks, kumb on parem, ja paremini mõista nende erinevusi.

Tootmine

Tootmine x86 vs arm on erinev. Ainult kaks ettevõtet toodavad x86 protsessoreid: Intel ja AMD. Algselt oli see üks ettevõte, aga see on hoopis teine ​​lugu. Ainult neil ettevõtetel on õigus selliseid protsessoreid toota, mis tähendab, et ainult nemad kontrollivad infrastruktuuri arendamise suunda.

ARM töötab väga erinevalt. ARM-i arendav ettevõte ei anna midagi välja. Nad annavad lihtsalt loa sellise arhitektuuriga protsessorite arendamiseks ja tootjad saavad teha mida iganes, näiteks toota konkreetseid kiipe vajalike moodulitega.

Juhiste arv

Need on peamised erinevused armi ja x86 arhitektuuri vahel. x86 protsessorid arenesid kiiresti võimsamaks ja produktiivsemaks. Arendajad on lisanud suure hulga protsessori juhiseid ja seal on rohkem kui lihtsalt põhikomplekt, ja seal on päris palju käske, milleta saaks hakkama. Algselt tehti seda selleks, et vähendada kettal olevate programmide poolt hõivatud mälumahtu. Samuti on välja töötatud palju kaitse- ja virtualiseerimisvõimalusi, optimeerimist ja palju muud. Kõik see nõuab täiendavaid transistore ja energiat.

ARM on lihtsam. Protsessori juhiseid on siin palju vähem, ainult neid, mida operatsioonisüsteem vajab ja mida tegelikult kasutatakse. Kui võrrelda x86, siis seal kasutatakse ainult 30% kõigist võimalikud juhised. Neid on lihtsam õppida, kui otsustate programme käsitsi kirjutada, ja nende rakendamiseks on vaja vähem transistore.

Energiatarve

Eelmisest lõigust selgub veel üks järeldus. Mida rohkem transistore on plaadil, seda suurem on selle pindala ja energiakulu ning tõsi on ka vastupidi.

x86 protsessorid tarbivad palju rohkem energiat kui ARM. Kuid energiatarbimist mõjutab ka transistori enda suurus. Näiteks Intel i7 protsessor tarbib 47 vatti ja iga ARM-i nutitelefoni protsessor ei tarbi rohkem kui 3 vatti. Kui varem toodeti tahvleid ühe elemendi suurusega 80 nm, siis Intel saavutas selle vähendamise 22 nm-ni ja sel aastal suutsid teadlased luua tahvli, mille elemendi suurus oli 1 nanomeeter. See vähendab oluliselt energiatarbimist ilma jõudlust kaotamata.

Viimastel aastatel on x86 protsessorite energiakulu väga palju vähenenud, näiteks uued protsessorid Intel Haswell võib akutoitel kauem vastu pidada. Nüüd on vahe arm vs x86 vahel järk-järgult kadumas.

Soojuse hajumine

Transistoride arv mõjutab teist parameetrit - soojuse teket. Kaasaegsed seadmed ei suuda kogu energiat muundada tõhus tegevus, osa sellest hajub soojusena. Plaatide efektiivsus on sama, mis tähendab, et mida vähem transistore ja mida väiksem on nende suurus, seda vähem soojust protsessor tekitab. Siin ei teki enam küsimust, kas ARM või x86 toodab vähem soojust.

Protsessori jõudlus

ARM polnud algselt loodud maksimaalse jõudluse saavutamiseks, siin paistab x86 silma. See on osaliselt tingitud väiksemast transistoride arvust. Kuid viimasel ajal on ARM-protsessorite jõudlus kasvanud ja neid saab juba täielikult kasutada sülearvutites või serverites.

järeldused

Selles artiklis vaatlesime, kuidas ARM erineb x86-st. Erinevused on üsna tõsised. Kuid viimasel ajal on piir mõlema arhitektuuri vahel hägustunud. ARM-protsessorid muutuvad tootlikumaks ja kiiremaks ning x86-protsessorid hakkavad tänu plaadi konstruktsioonielemendi suuruse vähenemisele tarbima vähem energiat ja tootma vähem soojust. ARM-protsessoreid leiab juba serveritest ja sülearvutitest ning x86 tahvelarvutitest ja nutitelefonidest.

Mida arvate nendest x86-st ja ARM-ist? Mis tehnoloogia on teie arvates tulevik? Kirjuta kommentaaridesse! Muideks, .

ARM-i arhitektuuri arendamise video lõpetuseks: