Arhitectura ARM. În lupta pentru piața PC-urilor

ARMv6 și ARMv7 sunt generații ale arhitecturii de procesoare mobile a companiei ARM Limited bazat pe instrucțiuni pe 32 de biți.

Arhitectura ARM destul de comun pe o piață care anterior aparținea exclusiv procesoarelor desktop cu arhitecturi atât de populare precum Intel x86/64 și AMD64. Astăzi, datorită ARMv6 sau ARMv7, procesorul televizoarelor moderne, sistemelor home theater și a altor echipamente familiare poate incap in mana ta.

Principala nișă pentru arhitectura mobilă ARM a devenit smartphone-uri, tablete și alte dispozitive mobile similare. În zilele noastre, 95% dintre smartphone-uri rulează deja procesoare cu arhitectură ARM, precum și jumătate dintre televizoarele inteligente și 90% dintre hard disk-uri. Și datorită „supraviețuirii” lor la o singură încărcare a bateriei și a performanței acceptabile, dispozitivele cu procesoare cu arhitectură ARM la bord au înlocuit întreaga linie de „netbook-uri”, devenind tablete cu stații de andocare, ceea ce a oferit dispozitivului aproape o zi întreagă de lucru în loc de doar câteva ore ca înainte și a dat un oarecare salt în performanță datorită costului scăzut al procesoarelor în sine, prezenței soluțiilor multi-core și potențialului mare de overclocking.

Caracteristicile cheie ale acestor arhitecturi:

  • ARMv6 nu acceptă oficial Flash.(În orice caz, de la jumătatea anului 2012, Google a abandonat complet Flash pe platforma Android, așa că suportul pentru această tehnologie nu mai este relevant).
  • ARMv7 se găsește adesea în procesoarele mobile multi-core, în timp ce a șasea generație este limitată la un singur nucleu fizic și logic.
  • Aplicațiile create pentru ARMv7 au o greutate totală mai mare și necesită mai multă RAM dedicată decât programele similare care funcționează numai cu ARMv6.
  • Procesoarele ARMv7 sunt mai puternice decât generația anterioară.
  • Jocurile și programele dezvoltate pentru ARMv6 sunt compatibile cu ARMv7 în mod implicit, dar nu invers.
  • Faptul că una sau alta aplicație acceptă ARMv6 și ARMv7 în același timp nu înseamnă întotdeauna o performanță grafică îmbunătățită pe cea din urmă arhitectură. În acest caz, vă recomandăm să priviți către procesoarele de la Nvidia și Tegra. Au un magazin separat cu jucării cu detalii mai mari și alte bunătăți grafice care nu sunt disponibile pe niciun alt dispozitiv care nu rulează Tegra.
  • Frecvența standard ARMv7 a unor astfel de procesoare este de 1 GHz nominal și mai mare, ceea ce nu se poate spune despre ARMv6.
  • Jocuri pentru armv7 semnificativ mai mult decât sub armv6.
  • Multe aplicații populare de player video (cum ar fi armv6) necesită descărcarea și instalarea unui set suplimentar de codecuri pentru arhitecturile de procesor armv6 sau armv7, fără de care nu veți obține accelerarea hardware.

Întrebări frecvente - răspunsuri:

Vreau să descarc jocul, dar descrierea conține un avertisment că acest joc este compatibil doar cu ARMv7 sau are două versiuni separat atât pentru ARMv6, cât și, respectiv, ARMv7, ce ar trebui să descarc?

Aflați în orice mod cunoscut de dvs. numele exact al procesorului folosit în dispozitivul dvs., apoi găsiți-l pe o pagină special desemnată din Wikipedia și determinați versiunea arhitecturii utilizate; un exemplu bun de data aceasta vor fi procesoarele Snapdragon de la cunoscuta companie Qualcomm, a cărei pagină se află la următorul link:

După ce instalează o aplicație Android din resurse terțe, aceasta refuză să se lanseze, ce ar trebui să fac?

Asigurați-vă că versiunea sistemului dvs. de operare se potrivește cu versiunile Android compatibile ale acestei aplicații și, de asemenea, aflați ce generație de arhitectură ARM îi corespunde procesorul dvs. și, dacă este ARMv7 sau mai mare, atunci în 99,9% orice program sau joc relativ nou. trebuie cel puțin să pornească până la verificarea licenței, a unor caracteristici tehnice și a altor date de recunoaștere a dispozitivului, precum și date suplimentare de cache a aplicației, dacă este necesar.În plus, nu va strica să eliberați prematur RAM de la procesoarele active de fundal dacă spațiul liber este disponibil. nu îndeplinește cerințele minime ale unui anumit joc. Vă recomandăm să păstrați 256, sau mai bine 512 megaocteți de RAM liberă.

Găsiți astăzi telefoane armv7 mult mai ușor decât acum câțiva ani, pentru că... Această arhitectură cu microprocesor a ajuns deja în zona bugetară a pieței smartphone-urilor mobile, dar pentru proprietarii de „vechi” acest articol poate fi cu adevărat util.

Aici nu am postat lista curentă de dispozitive ale diferitelor versiuni de ARM, deoarece această listă este actualizată în mod constant și este pur și simplu imposibil să ținem evidența acesteia. Vă recomandăm să căutați imediat dispozitivul dvs. pe paginile Wikipedia dedicate unuia sau altuia procesor mobil.

Lumea computerelor se schimbă rapid. PC-urile desktop au pierdut primul loc în clasamentul vânzărilor în fața laptopurilor și sunt pe cale să ofere piața tabletelor și altor dispozitive mobile. Acum 10 ani prețuim megaherți puri, puterea adevărată și performanța. Acum, pentru a cuceri piața, procesorul trebuie să fie nu doar rapid, ci și economic. Mulți oameni cred că ARM este arhitectura secolului 21. E chiar asa?

Nou - bine uitat vechi

Jurnaliştii, urmărind oamenii ARM PR, prezintă adesea această arhitectură ca pe ceva complet nou, care ar trebui să îngroape x86-ul cărunt.

De fapt, ARM și x86, pe baza cărora sunt construite procesoarele Intel, AMD și VIA instalate în laptopuri și PC-uri desktop, au aproape aceeași vârstă. Primul cip x86 a fost lansat în 1978. Proiectul ARM a început oficial în 1983, dar s-a bazat pe dezvoltări care au fost realizate aproape simultan cu crearea x86.


Primele ARM-uri au impresionat specialiștii prin eleganța lor, dar cu performanța relativ scăzută nu au putut cuceri o piață care cerea viteze mari și nu acordă atenție eficienței. Anumite condiții trebuiau să existe pentru ca popularitatea ARM să crească vertiginos.

La începutul anilor opt și nouăzeci, cu uleiul lor relativ ieftin, SUV-urile uriașe cu motoare puternice de 6 litri erau la cerere. Puțini oameni au fost interesați de mașinile electrice. Dar în vremea noastră, când un baril de petrol costă mai mult de 100 de dolari, mașinile mari cu motoare consumatoare de putere sunt necesare doar bogaților; restul se grăbește să treacă la mașini economice. Un lucru similar s-a întâmplat cu ARM. Când a apărut problema mobilității și eficienței, arhitectura s-a dovedit a fi la mare căutare.

Procesor „de risc”.

ARM este o arhitectură RISC. Utilizează un set redus de comenzi – RISC (computer cu set de instrucțiuni redus). Acest tip de arhitectură a apărut la sfârșitul anilor șaptezeci, cam în aceeași perioadă în care Intel și-a oferit x86.


În timp ce experimentau cu diverse compilatoare și procesoare de microcoduri, inginerii au observat că, în unele cazuri, secvențele de comenzi simple au fost executate mai rapid decât o singură operație complexă. S-a decis crearea unei arhitecturi care să implice lucrul cu un set limitat de instrucțiuni simple, a căror decodare și execuție ar dura un timp minim.


Unul dintre primele proiecte de procesor RISC a fost realizat de un grup de studenți și profesori de la Universitatea din Berkeley în 1981. Chiar în acest moment, compania britanică Acorn s-a confruntat cu provocarea timpului. A produs computere educaționale BBC Micro bazate pe procesorul 6502, care erau foarte populare în Foggy Albion.Dar în curând aceste computere de acasă au început să piardă în fața mașinilor mai avansate. Ghinda risca să piardă piața. Inginerii companiei, după ce s-au familiarizat cu munca studenților la procesoarele RISC, au decis că crearea propriului cip ar fi destul de simplă. În 1983, a fost lansat proiectul Acorn RISC Machine, care mai târziu a devenit ARM. Trei ani mai târziu a fost lansat primul procesor.

Primul ARM

Era extrem de simplu. Primele cipuri ARM au lipsit chiar și instrucțiuni de înmulțire și împărțire, care erau reprezentate de un set de instrucțiuni mai simple. O altă caracteristică a cipurilor au fost principiile de lucru cu memorie: toate operațiunile cu date puteau fi efectuate numai în registre. În același timp, procesorul lucra cu așa-numita fereastră de registru, adică putea accesa doar o parte din toate registrele disponibile, care erau în principal universale, iar funcționarea lor depindea de modul în care era localizat procesorul. Acest lucru a făcut posibilă abandonarea memoriei cache în primele versiuni de ARM.

În plus, simplificând seturile de instrucțiuni, dezvoltatorii de arhitectură au putut să facă fără o serie de alte blocuri. De exemplu, primele ARM-uri nu aveau complet microcod, precum și o unitate în virgulă mobilă (FPU). Numărul total de tranzistori din primul ARM a fost de 30 000. În x86 similare au existat de mai multe ori, sau chiar de un ordin de mărime mai mult. Economii suplimentare de energie sunt realizate prin executarea condiționată a comenzilor. Adică cutare sau cutare operație se va efectua dacă există un fapt corespunzător în registru. Acest lucru ajută procesorul să evite „mișcările inutile”. Toate instrucțiunile sunt executate secvenţial. Drept urmare, ARM a pierdut în performanță, dar nu în mod semnificativ, în timp ce a câștigat semnificativ în consumul de energie.

Principiile de bază ale arhitecturii rămân aceleași ca în primul ARM: lucrul cu date doar în registre, un set redus de instrucțiuni, un minim de module suplimentare. Toate acestea asigură arhitecturii un consum redus de energie și performanțe relativ ridicate.

Pentru a crește acest lucru, ARM a introdus mai multe seturi de instrucțiuni suplimentare în ultimii ani. Alături de clasicul ARM, există Thumb, Thumb 2, Jazelle. Acesta din urmă este conceput pentru a accelera execuția codului Java.

Cortex - cel mai avansat ARM

Cortex – arhitecturi moderne pentru dispozitive mobile, sisteme încorporate și microcontrolere. În consecință, procesoarele sunt desemnate drept Cortex-A, încorporate – Cortex-R și microcontrolere – Cortex-M. Toate sunt construite pe arhitectura ARMv7.

Cea mai avansată și puternică arhitectură din linia ARM este Cortex-A15. Se presupune că pe baza acestuia vor fi produse în principal modele cu două sau patru nuclee. Cortex-A15 dintre toate ARM-urile anterioare este cel mai apropiat de x86 în ceea ce privește numărul și calitatea blocurilor.


Cortex-A15 se bazează pe nuclee de procesor echipate cu o unitate FPU și un set de instrucțiuni NEON SIMD concepute pentru a accelera procesarea datelor multimedia. Nucleele au o conductă în 13 etape, acceptă execuția de instrucțiuni la comandă gratuită și virtualizarea bazată pe ARM.

Cortex-A15 acceptă sistemul avansat de adresare cu memorie. ARM rămâne o arhitectură pe 32 de biți, dar inginerii companiei au învățat să convertească adresele de 64 de biți sau alte adrese avansate în 32 de biți ușor de utilizat pentru procesor. Tehnologia se numește Long Physical Address Extensions. Datorită acestuia, Cortex-A15 se poate adresa teoretic până la 1 TB de memorie.

Fiecare nucleu este echipat cu un cache de prim nivel. În plus, există până la 4 MB de cache L2 cu latență scăzută distribuită. Procesorul este echipat cu o magistrală coerentă pe 128 de biți, care poate fi folosită pentru a comunica cu alte unități și periferice.

Miezurile care stau la baza Cortex-A15 sunt o dezvoltare a lui Cortex-A9. Au o structură similară.


Cortex-A9, spre deosebire de Cortex-A15, poate fi produs atât în ​​versiuni multi-și single-core. Frecvența maximă este de 2,0 GHz, Cortex-A15 sugerează posibilitatea de a crea cipuri care funcționează la o frecvență de 2,5 GHz. Chips-urile pe baza acestuia vor fi fabricate folosind procese tehnice de 40 nm și mai subțiri. Cortex-A9 este produs în tehnologii de proces de 65 și 40 nm.

Cortex-A9, ca și Cortex-A15, este destinat utilizării în smartphone-uri și tablete de înaltă performanță, dar nu este potrivit pentru aplicații mai serioase, de exemplu, pe servere. Doar Cortex-A15 are virtualizare hardware, adresare avansată a memoriei. În plus, setul de instrucțiuni NEON Advanced SIMD și FPU sunt opționale în Cortex-A9, în timp ce sunt necesare în Cortex-A15.

Cortex-A8 va dispărea treptat de pe scenă în viitor, dar deocamdată această variantă single-core își va găsi utilizare în smartphone-urile bugetare. Soluția low-cost, variind de la 600 MHz la 1 GHz, oferă o arhitectură echilibrată. Are o unitate FPU și acceptă prima versiune SIMD NEON. Cortex-A8 presupune un singur proces tehnologic - 65 nm.

ARM generațiilor anterioare


Procesoarele ARM11 sunt destul de comune pe piața de telefonie mobilă. Sunt construite pe baza arhitecturii ARMv6 și a modificărilor acesteia. Se caracterizează prin conducte în 8-9 etape, suport Jazelle, care ajută la accelerarea procesării codului Java, instrucțiuni de flux SIMD, Thumb-2.

Procesoarele XScale, ARM10E, ARM9E se bazează pe arhitectura ARMv5 și pe modificările acesteia. Lungimea maximă a conductei este de 6 trepte, Thumb, Jazelle DBX, Enhanced DSP. Cipurile XScale au un cache de al doilea nivel. Procesoarele au fost folosite în smartphone-urile de la mijlocul anilor 2000; astăzi pot fi găsite în unele telefoane mobile ieftine.


ARM9TDMI, ARM8, StrongARM - reprezentanți ai ARMv4, care are o conductă în 3-5 etape și acceptă Thumb. ARMv4, de exemplu, ar putea fi găsit în primele iPod-uri clasice.

ARM6 și ARM7 aparțin ARMv3. În această arhitectură, a apărut pentru prima dată unitatea FPU; a fost implementată adresarea memoriei pe 32 de biți și nu pe 26 de biți, ca în primele exemple de arhitectură. ARMv2 și ARMv1 erau din punct de vedere tehnic cipuri de 32 de biți, dar, în realitate, funcționau doar în mod activ cu un spațiu de adrese de 26 de biți. Cache-ul a apărut pentru prima dată în ARMv2.

Numele lor este legiune

Acorn nu intenționa inițial să devină un jucător pe piața procesoarelor. Sarcina proiectului ARM a fost de a crea un cip de producție proprie pentru producția de computere - crearea de computere era pe care Acorn o considera principala afacere.


ARM a evoluat dintr-un grup de dezvoltare într-o companie datorită Apple. În 1990, Apple, împreună cu VLSI și Acorn, au început să dezvolte un procesor low-cost pentru primul computer de buzunar, Newton. În aceste scopuri, a fost creată o companie separată, care a primit numele proiectului intern Acorn - ARM.

Cu participarea Apple, a fost creat un procesor ARM6, care este cel mai apropiat de cipurile moderne de la un dezvoltator englez. În același timp, DEC a reușit să breveteze arhitectura ARM6 și a început să producă cipuri sub marca StrongARM. Câțiva ani mai târziu, tehnologia a fost transferată către Intel ca parte a unei alte dispute privind brevetele. Gigantul microprocesoarelor și-a creat propriul analog, procesorul XScale, bazat pe ARM. Dar la mijlocul deceniului precedent, Intel a scăpat de acest „activ non-core”, concentrându-se exclusiv pe x86. XScale a trecut în mâinile lui Marvell, care deja a licențiat ARM.

La început, ARM, care era nou în lume, nu a fost capabil să producă procesoare. Conducerea sa a ales un alt mod de a face bani. Arhitectura ARM a fost simplă și flexibilă. La început, nucleul nici măcar nu avea cache, așa că ulterior modulele suplimentare, inclusiv FPU, controlerele nu au fost strâns integrate în procesor, ci au fost, parcă, atașate la bază.

În consecință, ARM a pus mâna pe un designer inteligent care a permis companiilor avansate din punct de vedere tehnologic să creeze procesoare sau microcontrolere care să corespundă nevoilor lor. Acest lucru se face folosind așa-numitele coprocesoare, care pot extinde funcționalitatea standard. În total, arhitectura acceptă până la 16 coprocesoare (numerele de la 0 la 15), dar numărul 15 este rezervat coprocesorului care realizează funcții de gestionare a memoriei și a cache-ului.

Perifericele se conectează la cipul ARM, mapându-și registrele la spațiul de memorie al procesorului sau al coprocesorului. De exemplu, un cip de procesare a imaginii poate consta dintr-un nucleu relativ simplu bazat pe ARM7TDMI și un coprocesor care asigură decodarea semnalului HDTV.


ARM a început să își acorde licențe arhitectura. Alte companii l-au implementat deja în siliciu, printre care Texas Instruments, Marvell, Qualcomm, Freescale, dar și complet non-core precum Samsung, Nokia, Nintendo sau Canon.

Absența fabricilor proprii, precum și taxele impresionante de licențiere, au permis ARM să fie mai flexibil în dezvoltarea de noi versiuni ale arhitecturii. Compania le-a copt ca niște prăjituri calde, intrând în nișe noi. Pe lângă smartphone-uri și tablete, arhitectura este utilizată în procesoare specializate, de exemplu, în navigatoarele GPS, camerele digitale și camerele video. Pe baza acestuia sunt create controlere industriale și alte cipuri pentru sistemele încorporate.

Sistemul de licențiere ARM este un adevărat hipermarket de microelectronice. Compania acordă licențe nu numai arhitecturi noi, ci și vechi. Acesta din urmă poate fi folosit pentru a crea microcontrolere sau cipuri pentru dispozitive cu costuri reduse. Desigur, nivelul taxelor de licență depinde de gradul de noutate și complexitate al variantei de arhitectură de interes pentru producător. În mod tradițional, procesele tehnice pentru care ARM dezvoltă procesoare sunt cu 1-2 pași în urma celor considerate relevante pentru x86. Eficiența energetică ridicată a arhitecturii o face mai puțin dependentă de trecerea la noi standarde tehnologice. Intel și AMD se străduiesc să creeze cipuri mai subțiri pentru a crește frecvențele și numărul de nuclee, menținând în același timp dimensiunea fizică și consumul de energie. ARM are în mod inerent cerințe mai mici de putere și oferă, de asemenea, niveluri mai ridicate de performanță pe watt.

Caracteristici ale procesoarelor NVIDIA, TI, Qualcomm, Marvell

Prin licențierea ARM în stânga și în dreapta, dezvoltatorii și-au consolidat poziția arhitecturii lor în detrimentul competențelor partenerilor lor. Un exemplu clasic în acest caz este NVIDIA Tegra. Această linie de sisteme pe cip se bazează pe arhitectura ARM, dar NVIDIA a avut deja propriile sale dezvoltări foarte serioase în domeniul graficii 3D și al logicii sistemului.


ARM oferă licențiatorilor săi o largă discreție pentru a reproiecta arhitectura. În consecință, inginerii NVIDIA au putut combina în Tegra punctele forte ale ARM (CPU computing) și propriile produse - lucrând cu grafică tridimensională etc. Drept urmare, Tegra are cea mai mare performanță 3D pentru clasa sa de procesoare. Sunt cu 25-30% mai rapid decât PowerVR, folosit de Samsung și Texas Instruments, și sunt aproape de două ori mai rapid decât Adreno, dezvoltat de Qualcomm.

Alți producători de procesoare bazate pe arhitectura ARM consolidează anumite blocuri suplimentare și îmbunătățesc cipuri pentru a obține frecvențe și performanțe mai mari.


De exemplu, Qualcomm nu folosește designul de referință ARM. Inginerii companiei l-au refăcut serios și l-au numit Scorpio - este baza cipurilor Snapdragon. Designul a fost parțial reproiectat pentru a se adapta unor procese tehnice mai sofisticate decât cele furnizate de IP ARM standard. Drept urmare, primele Snapdragons au fost produse la 45 nm, ceea ce le-a oferit frecvențe mai mari. Iar noua generație a acestor procesoare cu 2,5 GHz declarat poate deveni chiar cea mai rapidă dintre analogii bazați pe ARM Cortex-A9. Qualcomm folosește și propriul nucleu grafic Adreno, creat pe baza dezvoltărilor achiziționate de la AMD. Deci, într-un fel, Snapdragon și Tegra sunt inamici la nivel genetic.


Când a creat Hummingbird, Samsung a urmat și calea optimizării arhitecturii. Coreenii, împreună cu compania Intrinsity, au schimbat logica, reducând astfel numărul de instrucțiuni necesare pentru a efectua anumite operațiuni. Astfel, am reușit să câștigăm 5-10% din productivitate. În plus, au fost adăugate un cache L2 dinamic și o extensie multimedia ARM NEON. Coreenii au folosit PowerVR SGX540 ca modul grafic.


Texas Instruments în noua sa serie OMAP bazată pe arhitectura ARM Cortex-A a adăugat un modul IVA special responsabil pentru accelerarea procesării imaginii. Vă permite să procesați rapid datele care vin de la senzor la camera încorporată. În plus, este conectat la ISP și ajută la accelerarea video. OMAP folosește și grafica PowerVR.


Apple A4 are un cache mare de 512 KB, folosește grafică PowerVR, iar nucleul ARM în sine este construit pe o variantă a arhitecturii reproiectate de Samsung.


Apple A5 dual-core, care a debutat pe iPad 2 la începutul lui 2011, se bazează pe arhitectura ARM Cortex-A9, la fel ca cea optimizată anterior de Samsung. În comparație cu A4, noul cip are dublul cantității de memorie cache de nivel al doilea - a fost mărit la 1 MB. Procesorul conține un controler RAM cu două canale și are o unitate video îmbunătățită. Drept urmare, funcționează de două ori mai bine decât Apple A4 în unele sarcini.

Marvell oferă cipuri bazate pe propria arhitectură Sheeva, care, la o inspecție mai atentă, se dovedește a fi un hibrid de XScale, odată achiziționat de la Intel, și ARM. Aceste cipuri au o cantitate mai mare de memorie cache în comparație cu analogii și sunt echipate cu un modul multimedia special.

În prezent, licențiații ARM produc doar cipuri bazate pe arhitectura ARM Cortex-A9. În același timp, deși vă permite să creați variante quad-core, NVIDIA, Apple, Texas Instruments și altele sunt încă limitate la modele cu unul sau două nuclee. În plus, cipurile funcționează la frecvențe de până la 1,5 GHz. Cortex-A9 vă permite să faceți procesoare de doi GHz, dar, din nou, producătorii nu încearcă să crească rapid frecvențele - până la urmă, deocamdată piața va avea suficiente procesoare dual-core la 1,5 GHz.

Procesoarele bazate pe Cortex-A15 ar trebui să devină cu adevărat multi-core, dar chiar dacă sunt anunțate, sunt doar pe hârtie. Apariția lor în siliciu ar trebui așteptată anul viitor.

Procesoare moderne de licențiere ARM bazate pe Cortex-A9:


x86 este principalul candidat

x86 este un reprezentant al arhitecturilor CISC. Ei folosesc setul complet de comenzi. O instrucțiune în acest caz efectuează mai multe operații de nivel scăzut. Codul programului, spre deosebire de ARM, este mai compact, dar nu se execută la fel de repede și necesită mai multe resurse. În plus, de la bun început, x86 au fost echipate cu toate blocurile necesare, ceea ce a implicat atât versatilitatea, cât și lăcomia. S-a cheltuit energie suplimentară pentru executarea necondiționată, paralelă a comenzilor. Acest lucru vă permite să obțineți un avantaj de viteză, dar unele operații sunt efectuate în zadar deoarece nu îndeplinesc condițiile anterioare.

Acestea erau x86-urile clasice, dar începând cu 80486, Intel a creat de facto un nucleu RISC intern care executa instrucțiuni CISC, descompuse anterior în instrucțiuni mai simple. Procesoarele moderne Intel și AMD au același design.

Windows 8 și ARM

ARM și x86 diferă astăzi cu mai puțin de 30 de ani în urmă, dar încă se bazează pe principii diferite, care le separă în nișe diferite ale pieței procesoarelor. Arhitecturile nu s-ar fi intersectat niciodată dacă computerul în sine nu s-ar fi schimbat.

Mobilitatea și eficiența costurilor au fost pe primul loc și s-a acordat mai multă atenție smartphone-urilor și tabletelor. Apple câștigă mulți bani din gadgeturile mobile și din infrastructura legată de acestea. Microsoft nu vrea să rămână în urmă și a încercat să câștige un loc pe piața tabletelor pentru al doilea an. Google are destul de mult succes.

PC-ul desktop devine în primul rând un instrument de lucru; nișa computerului de uz casnic este ocupată de tablete și dispozitive specializate. În aceste condiții, Microsoft urmează să facă un pas fără precedent. . Nu este încă pe deplin clar la ce va duce acest lucru. Vom obține două versiuni ale sistemului de operare sau una care va funcționa cu ambele arhitecturi. Suportul ARM de la Microsoft va ucide sau nu x86?


Există încă puține informații. Microsoft a demonstrat Windows 8 care rulează pe un dispozitiv cu procesor ARM în timpul CES 2011. Steve Ballmer a arătat că pe platforma ARM folosind Windows puteți viziona videoclipuri, lucra cu imagini, naviga pe Internet - Internet Explorer a funcționat chiar și cu accelerare hardware - conectați USB- dispozitive, imprimați documente. Cel mai important lucru despre acest demo a fost prezența Microsoft Office care rulează pe ARM fără participarea unei mașini virtuale. La prezentare au fost prezentate trei gadgeturi bazate pe procesoare de la Qualcomm, Texas Instruments și NVIDIA. Windows avea un shell standard „șapte”, dar reprezentanții Microsoft au anunțat un nucleu de sistem nou, reproiectat.

Cu toate acestea, Windows nu este doar un sistem de operare realizat de inginerii Microsoft, este și milioane de programe. Unele software sunt esențiale pentru oamenii din multe profesii. De exemplu, pachetul Adobe CS. Compania va suporta o versiune ARM-Windows a software-ului sau noul nucleu va permite Photoshop și alte aplicații populare să ruleze pe computere cu NVIDIA Tegra sau alte cipuri similare fără modificări suplimentare de cod?

În plus, întrebarea se pune și cu plăcile video. În zilele noastre, plăcile video pentru laptopuri sunt realizate prin optimizarea consumului de energie al cipurilor grafice desktop - sunt arhitectural la fel. În același timp, acum o placă video este ceva ca un „calculator într-un computer” - are propria sa RAM ultra-rapidă și propriul cip de calcul, care este semnificativ superior procesoarelor convenționale în sarcini specifice. Este de la sine înțeles că aplicațiile care funcționează cu grafică 3D au fost optimizate corespunzător pentru acestea. Da, și diverse programe de editare video și editori grafici (în special Photoshop din versiunea CS4), și mai recent, de asemenea, browserele folosesc accelerarea hardware folosind GPU-uri.

Desigur, în Android, MeeGo, BlackBerry OS, iOS și alte sisteme mobile s-a făcut optimizarea necesară pentru diversele acceleratoare mobile (mai precis, ultra-mobile) de pe piață. Cu toate acestea, acestea nu sunt acceptate în Windows. Driverele, desigur, vor fi scrise (și au fost deja scrise - procesoarele din seria Intel Atom Z500 vin cu un chipset care integrează nucleul grafic PowerVR SGX 535 „smartphone”), dar optimizarea aplicațiilor pentru ele poate întârzia, dacă este deloc. .

Evident, „ARM pe desktop” nu se va descurca cu adevărat. Poate în sisteme de putere redusă pe care vor accesa internetul și vor viziona filme. Pe netops în general. Deci, ARM încearcă până acum să țintească doar nișa pe care Intel Atom a ocupat-o și pe care AMD o urmărește acum în mod activ cu platforma sa Brazos. Și ea, se pare, va reuși parțial. Cu excepția cazului în care ambele companii de procesoare vin cu ceva foarte competitiv.

În unele locuri, Intel Atom și ARM sunt deja în competiție. Acestea sunt folosite pentru a crea stocare de date în rețea și servere de putere redusă care pot deservi un birou sau un apartament mic. Există, de asemenea, câteva proiecte comerciale de clustere bazate pe cipuri Intel rentabile. Caracteristicile noilor procesoare bazate pe ARM Cortex-A9 le permit să fie folosite pentru a susține infrastructura. Astfel, în câțiva ani s-ar putea să obținem servere ARM sau ARM-NAS pentru rețele locale mici, iar apariția serverelor web cu putere redusă nu poate fi exclusă.

Prima lupta

Principalul concurent al lui ARM din partea x86 este Intel Atom, iar acum putem adăuga . O comparație între x86 și ARM a fost realizată de Van Smith, care a creat OpenSourceMark, pachetele de testare miniBench și unul dintre co-autorii SiSoftware Sandra. La „cursă” au participat Atom N450, Freescale i.MX515 (Cortex-A8), VIA Nano L3050. Frecvențele cipurilor x86 au fost reduse, dar aveau totuși un avantaj datorită memoriei mai avansate.

Rezultatele s-au dovedit a fi foarte interesante. Cipul ARM s-a dovedit a fi la fel de rapid ca și concurenții săi în operațiuni cu numere întregi, consumând în același timp mai puțină energie. Nu este nimic surprinzător aici. Inițial, arhitectura a fost destul de rapidă și economică. În operațiunile cu virgulă mobilă, ARM a fost inferior x86. Unitatea FPU tradițională puternică găsită în cipurile Intel și AMD a avut un impact aici. Să ne amintim că a apărut în ARM relativ recent. Sarcinile care revin FPU ocupă un loc semnificativ în viața unui utilizator modern - acestea sunt jocurile, codificarea video și audio și alte operațiuni de streaming. Desigur, testele efectuate de Van Smith nu mai sunt atât de relevante astăzi. ARM și-a consolidat semnificativ punctele slabe ale arhitecturii sale în versiunile Cortex-A9 și în special Cortex-A15, care, de exemplu, poate executa deja instrucțiuni necondiționat, paralelizând rezolvarea problemelor.

Perspective pentru ARM

Deci, ce arhitectură ar trebui să alegi până la urmă, ARM sau x86? Cel mai corect ar fi să pariezi pe ambele. Astăzi trăim în condiții de reformatare a pieței calculatoarelor. În 2008, se prevedea că netbook-urile vor avea un viitor strălucit. Laptopurile compacte ieftine trebuiau să devină computerul principal pentru majoritatea utilizatorilor, mai ales pe fundalul crizei globale. Dar apoi economia a început să se redreseze și a apărut iPad-ul. Acum tabletele sunt declarați regii pieței. Cu toate acestea, tableta este bună ca o consolă de divertisment, dar nu foarte convenabilă pentru serviciu, în primul rând datorită introducerii tactile - scrierea acestui articol pe un iPad ar fi foarte dificilă și consumatoare de timp. Tabletele vor rezista testului timpului? Poate că peste câțiva ani vom veni cu o jucărie nouă.

Dar totuși, în segmentul mobil, unde performanța înaltă nu este necesară, iar activitatea utilizatorilor este limitată în principal la divertisment și nu este legată de muncă, ARM pare de preferat x86. Acestea oferă un nivel acceptabil de performanță, precum și o durată lungă de viață a bateriei. Încercările Intel de a aduce Atom până în prezent nu au avut succes. ARM stabilește un nou punct de referință pentru performanța pe watt. Cel mai probabil, ARM va avea succes în gadgeturile mobile compacte. Ei pot deveni și lideri pe piața netbook-urilor, dar aici totul depinde nu atât de dezvoltatorii de procesoare, cât de Microsoft și Google. Dacă primul implementează suportul ARM normal în Windows 8, iar al doilea aduce sistemul de operare Chrome la bun sfârșit. Până acum, smartbook-urile propuse de Qualcomm nu au ajuns pe piață. Netbook-urile bazate pe x86 au supraviețuit.

Potrivit ARM, o descoperire în această direcție ar trebui făcută de arhitectura Cortex-A15. Compania recomandă procesoare dual și quad-core bazate pe acesta cu o frecvență de 1,0-2,0 GHz pentru sistemele home entertainment care vor combina un media player, un televizor 3D și un terminal de internet. Cipurile quad-core cu o frecvență de 1,5-2,5 GHz pot deveni baza serverelor de acasă și web. În cele din urmă, cel mai ambițios caz de utilizare pentru Cortex-A15 este infrastructura de rețea wireless. Aici pot fi folosite cipuri cu patru sau mai multe nuclee și o frecvență de 1,5-2,5 GHz.

Dar deocamdată acestea sunt doar planuri. Cortex-A15 a fost introdus de ARM în septembrie anul trecut. Cortex-A9 a fost prezentat de companie în octombrie 2007, doi ani mai târziu compania a prezentat varianta A9 cu capacitatea de a crește frecvența cipurilor la 2,0 GHz. Spre comparație, NVIDIA Tegra 2 - una dintre cele mai populare soluții bazate pe Cortex-A9 - a fost lansat abia în ianuarie anul trecut. Ei bine, utilizatorii au putut atinge primele gadgeturi bazate pe acesta după încă șase luni.

Segmentul PC-urilor de lucru și soluțiile de înaltă performanță vor rămâne cu x86. Acest lucru nu va însemna moartea arhitecturii, dar în termeni monetari, Intel și AMD ar trebui să se pregătească pentru pierderea unei părți din venitul care va merge către producătorii de procesoare ARM.

În 2011, ARM Limited a anunțat o nouă familie de procesoare numită ARMv8. Și în 2013, Apple a lansat primul procesor ARMv8 - sistemul A7 cu un singur cip, care este utilizat în iPhone 5S, iPad Air și iPad mini Retina. Arhitectura ARMv8 a primit un set de instrucțiuni pe 64 de biți, dar acesta este departe de singurul său avantaj față de predecesorul său ARMv7. Citiți articolul despre cum sunt proiectate procesoarele ARMv8 pe 64 de biți și cum sunt.

Puteți citi despre istoria arhitecturii ARM, specificul activităților ARM Limited și generațiile de procesoare ARMv5, ARMv6 și ARMv7 în articol. Și despre modelele populare de cipuri ARMv7 produse de Qualcomm, NVIDIA, Samsung, Apple, MediaTek etc. sunt descrise în detaliu în articole și.

Inovații ARMv8

Arhitectura actualizată a familiei de procesoare ARMv8 a fost numită AArch64. A primit un set de instrucțiuni pe 64 de biți și abilitatea de a lucra cu o cantitate mare de RAM (4 GB sau mai mult). Desigur, este asigurată compatibilitatea cu aplicațiile pe 32 de biți (AArch32). Alte inovații importante ale ARMv8 au fost:

- 31 de registre de uz general, fiecare cu lungimea de 64 de biți, în timp ce SP și PC nu sunt registre de uz general. Cu cât este mai mare adâncimea de biți a registrelor, cu atât mai multe numere pot fi stocate în ele. Și cu cât numărul de registre este mai mare, cu atât mai multe date sunt plasate în ele în același timp. Ca rezultat, o cantitate mai mare de date poate fi procesată într-o singură instrucțiune și întreg algoritmul se va executa mai rapid;
— traducerea adreselor virtuale dintr-un format de 48 de biți funcționează folosind mecanisme LPAE împrumutate de la ARMv7;
— un nou set de instrucțiuni cu o lungime fixă. Instrucțiunile au dimensiunea de 32 de biți și multe sunt aceleași cu instrucțiunile AArch32, deși există mai puține instrucțiuni condiționate;
— numărul de registre de 128 de biți (compatibile cu registrele de 64 de biți) disponibile pentru coprocesoarele SIMD NEON și VFP a fost crescut de la 16 la 32 și au fost adăugate noi instrucțiuni criptografice AES și SHA. Setul de instrucțiuni SIMD NEON accelerează aplicațiile media și de procesare a semnalului. La rândul său, VFP este responsabil pentru calculele de putere redusă asupra numerelor în virgulă mobilă;
— suport pentru calcule privind numerele în virgulă mobilă cu precizie dublă și standardul IEEE 754, care este un format general acceptat pentru reprezentarea numerelor în virgulă mobilă utilizat în implementările software ale operațiilor aritmetice.

ARM Miezuri de referință limitate

Primele nuclee de procesor ARMv8 dezvoltate direct de ARM Limited au fost Cortex-A53 și A57. Nucleul A53 este o soluție mid-range cu o performanță de 2,3 DMIPS/MHz, care este aproximativ la jumătatea distanței dintre actualele Cortex-A7 (1,9 DMIPS/MHz) și A9 (2,5 DMIPS/MHz). În timp ce A57 ocupă segmentul superior, deoarece performanța sa (4,1 DMIPS/MHz) o depășește pe cea a ambelor flagship-uri pe 32 de biți: Cortex-A15 (3,5 DMIPS/MHz) și A17 (4 DMIPS/MHz).

Pe lângă licențierea nucleelor ​​de procesor de referință, ARM Limited vinde licențe extinse care permit producătorilor de cipuri să modifice arhitectura ARM la discreția lor. De exemplu, Apple, Qualcomm și NVIDIA au astfel de licențe. Prin urmare, nimic nu îi împiedică pe producătorii de procesoare să-și creeze propriile soluții bazate pe ARMv8, care sunt semnificativ diferite de referința Cortex-A53 și A57.


Apple A7

Primul și până acum singurul procesor ARM pe 64 de biți care este deja folosit în smartphone-uri și tablete este Apple A7. Este construit pe arhitectura Apple Cyclone, compatibilă cu ARMv8. Aceasta este a doua arhitectură de procesor dezvoltată intern a companiei; primul a fost Swift (cipuri A6 și A6X, familia ARMv7).

Sistemul A7 cu un singur cip are doar două nuclee de procesor (frecvență de până la 1,4 GHz), dar există un accelerator grafic PowerVR G6430 cu patru clustere de nuclee. Performanța cipului A7 în sarcinile dependente de procesor a crescut de aproximativ o dată și jumătate față de A6, în timp ce la diverse teste de grafică creșterea este de la două la trei ori.

Dar dispozitivele iOS nu au simțit încă capacitatea teoretică de a lucra cu o cantitate mare de RAM datorită arhitecturii pe 64 de biți a procesorului A7. iPhone 5s, iPad Air și iPad mini Retina au doar 1 GB RAM; și este puțin probabil ca în noua generație de dispozitive mobile Apple cantitatea de RAM să se dubleze mai mult.

Qualcomm Snapdragon 410, 610, 615, 808 și 810

După Apple, Qualcomm s-a grăbit să-și anunțe procesoarele ARM pe 64 de biți, cu cinci modele simultan. Adevărat, până acum niciunul dintre ele nu este folosit în smartphone-uri sau tablete comerciale. Cel mai probabil, epoca dispozitivelor Android pe 64 de biți va înflori la începutul lui 2015 la CES și MWC.

Sistemul Snapdragon 410 cu un singur cip (MSM8916) este cel mai tânăr din linia Qualcomm pe 64 de biți anunțată. Include patru nuclee Cortex-A53 cu o frecvență de 1,2 GHz, un accelerator grafic Adreno 306 și, cel mai interesant, un modul de navigație cu suport pentru GPS, GLONASS și chiar rețele de satelit chineze. Ei plănuiesc să folosească Snapdragon 410 în smartphone-uri ieftine bazate pe Android, Windows Phone și Firefox OS.

Aceleași patru nuclee Cortex-A53 ca și 410 conțin cipul Snapdragon 610 (MSM8936), doar că are grafică îmbunătățită Adreno 405. În timp ce Snapdragon 615 (MSM8939) este similar cu grafica 610, dar procesorul Cortex are nuclee de două ori. tot atâtea A53 – opt Cortex-A53.

Spre deosebire de modelele 410, 610, 615 realizate folosind o tehnologie de proces de 28 nm, cipurile Snapdragon 808 (MSM8992) și 810 (MSM8994) vor fi produse folosind tehnologia avansată de 20 nm. Ambele sunt construite conform schemei big.LITTLE: două (modelul 808) sau patru (810) nuclee Cortex-A57 puternice și patru Cortex-A53 eficiente din punct de vedere energetic. Grafica este furnizată de Adreno 418 și, respectiv, Adreno 430. În plus, vechiul Snapdragon 810 are un controler RAM LPDDR4 încorporat.

Dar întrebarea principală este: când exact va introduce Qualcomm propria arhitectură de procesor bazată pe ARMv8, așa cum a făcut cu Scorpion și Krait (ARMv7 modificat)?

MediaTek MT6732, MT6752, MT6795

Nici MediaTek nu a putut rămâne mult timp pe marginea cursei pe 64 de biți; în doar câțiva ani s-a transformat dintr-un mic producător de procesoare pentru clone de iPhone din China într-unul dintre cei mai mari producători de cipuri din lume, deși unul fără fabrică. Cu toate acestea, nici Apple și Qualcomm nu au propriile lor.

Sistemele MediaTek MT6732 și MT6752 cu un singur cip ar trebui să concureze cu cipurile Snapdragon 610 și 615. Au patru și opt nuclee de procesor Cortex-A53 (frecvență 1,5 și, respectiv, 2 GHz) și aceeași grafică Mali-T760 (dezvoltată de ARM Limited). Cipul MT6795 mai vechi a fost răspunsul la Snapdragon 810: arhitectură big.LITTLE, patru nuclee Cortex-A57 și A53 cu o frecvență de 2,2 GHz, precum și un accelerator grafic PowerVR G6200.

NVIDIA Tegra K1 (Proiect Denver)

NVIDIA a decis să-și convertească cipul Tegra K1 existent într-o arhitectură de procesor pe 64 de biți. Componenta sa grafică a fost deja poate cea mai bună dintre concurenții săi - GK20A cu 192 de nuclee Kepler, performanță de 365 GFLOPS și suport pentru standardele grafice pentru PC DirectX 11.2 și OpenGL 4.4 (și nu omologii lor mobile).

În loc de patru nuclee Cortex-A15 pe 32 de biți (plus un al cincilea nucleu eficient din punct de vedere energetic), sistemul actualizat Tegra K1 cu un singur cip va primi două nuclee compatibile ARMv8 ale arhitecturii proprietare NVIDIA Project Denver. Viteza procesorului va crește la 2,5 GHz, iar dimensiunea cache-ului va crește, de asemenea. Fapt distractiv: grafica Tegra K1 este de aproximativ cincizeci de ori mai puternică decât Tegra 2.

concluzii

Procesoarele cu arhitectură ARMv8 sunt capabile să proceseze mult mai multe date într-un singur ciclu de ceas. Acest lucru îmbunătățește atât performanța generală a procesorului, cât și performanța pe watt. Având în vedere limitările standardelor tehnologice (frecvența maximă admisă de ceas), trecerea la ARMv8 este singura modalitate posibilă de a crește performanța procesoarelor mobile fără a depăși limitele rezonabile de consum de energie și încălzire.

Desigur, doar acele aplicații pentru iOS și Android care sunt capabile să folosească toate resursele noilor procesoare vor beneficia de arhitectura ARMv8. Optimizarea programelor pentru o nouă arhitectură poate fi fie manuală, fie automată, la nivel de compilator.
Primul dispozitiv Android cu procesor ARM pe 64 de biți și 4 GB RAM este phableta Samsung Galaxy Note 4 (. Și al doilea, poate, va fi tableta din seria HTC.

Anterior, smartphone-urile foloseau doar arhitectura ARM, dar acum Intel este deja pe punctul de a produce în masă cipuri mobile cu arhitectură x86. Care este mai bun: ARM sau x86?

Introducere și concepte generale.

Arhitectura x86, care este acum folosită în aproape toate computerele, este arhitectura CISC. Aceasta înseamnă că astfel de procesoare vor avea următoarele proprietăți:

  • valoare nefixă a lungimii comenzii;
  • operațiile aritmetice sunt codificate într-o singură instrucțiune;
  • un număr mic de registre, fiecare îndeplinește o funcție strict definită.

ARM folosește o arhitectură RISC avansată. Principalele caracteristici ale acestei abordări sunt:

  • arhitectura de încărcare/magazin;
  • nici un suport pentru accesul la memorie neliniar (nu aliniat la cuvinte) (acceptat acum în procesoarele ARMv6 cu unele excepții);
  • fișier de registru uniform pe 16x32 de biți;
  • lungime fixă ​​a instrucțiunii (32 de biți) pentru a simplifica decodarea prin reducerea densității codului. Mai târziu, modul Thumb a crescut densitatea codului;
  • executie cu un singur ciclu.

Dacă încercați să rulați un program scris special pentru un set de comenzi ale unei arhitecturi pe alt procesor, este posibil să nu obțineți rezultatul dorit.

Puterea de calcul

Din punct de vedere istoric, arhitectura x86 a fost dezvoltată având în vedere puterea sporită. Fiecare nouă generație de procesoare a devenit semnificativ mai puternică, ceea ce a condus la creșterea rapidă a tehnologiei de calcul. Frecvența a crescut, procesul tehnologic a scăzut, iar structura procesorului în sine s-a îmbunătățit.

Pentru o lungă perioadă de timp, eficiența energetică a rămas o considerație secundară, în timp ce puterea a fost punctul central. Punctul de cotitură a avut loc nu cu mult timp în urmă, de la popularizarea laptopurilor.

Mașinile portabile trebuiau să aibă un timp de funcționare lung.

Dimpotrivă, arhitectura ARM a fost folosită inițial în dispozitivele portabile, ceea ce îi dădea un consum redus de energie și niveluri reduse de putere. În ultimii cinci ani a avut loc un progres în dezvoltare.

Telefoanele inteligente moderne necesită deja un nivel destul de ridicat de calcul și, de asemenea, trebuie să funcționeze pentru o perioadă suficientă de timp pe baterie.

Dacă comparăm indicatorii de eficiență energetică, procesoarele ARM au un indicator de 2 TDP (o valoare care indică cât de multă putere termică ar trebui proiectat să elimine sistemul de răcire al unui procesor sau al altui dispozitiv semiconductor. De exemplu, dacă un sistem de răcire a procesorului este proiectat pentru un TDP de 30 W, ar trebui să poată disipa 30 W de căldură în anumite „condiții normale”.), iar cele mai eficiente procesoare Atom sunt în jur de 5 TDP. Aceasta înseamnă că cele mai scăzute procesoare Intel necesită încă de două ori mai multă putere decât concurenții ARM.

Dacă vorbim despre performanță, x86 este clar înaintea ARM. Chiar dacă te uiți la , poți vedea că x86 single-core este mai rapid decât ARM dual-core. De asemenea, merită luat în considerare faptul că acesta este primul model de procesor Intel dintr-un eșantion de inginerie. Puterea suplimentară va crește doar.

Popularitate și licențiere

Intel este foarte gelos pe arhitectura sa x86, așa că nimeni, în afară de sine și AMD, poate produce procesoare x86.
Situația cu ARM este diferită. Oricine poate cumpăra o licență și își poate crea propriile procesoare, așa cum fac Qualcomm, Samsung, Apple, NVIDIA și alte companii. În prezent, AMD nu are de gând să lanseze procesoare mobile, așa că Intel va deveni monopol asupra procesoarelor x86 pentru smartphone-uri și tablete, ceea ce nu este foarte bun pentru dezvoltarea arhitecturii. Există o concurență serioasă pe piața ARM, ceea ce duce la îmbunătățiri ale produselor de la toți producătorii.

Pe de altă parte, marca Intel are o recunoaștere mai bună decât Qualcomm, Cortex etc. Prin urmare, un cumpărător care vine la magazin și vede inscripția „Intel inside” poate prefera acest dispozitiv concurenților.

Concluzie

La încheiere, de obicei se anunță câștigătorul, dar nu și în acest caz. Cred că arhitecturile x86 și ARM nu sunt în întregime corecte de comparat. Fiecare este bun la ceva. În viitor, utilizatorul va alege nu numai între sistemul de operare mobil, producător și calitatea componentelor individuale, ci și între arhitectura procesorului. Arhitecturile diferite sunt potrivite pentru scopuri diferite și acest lucru trebuie luat în considerare. Deși nu există încă teste de viață a bateriei Intel Medfield, ARM va fi înaintea acestui test. În același timp, ARM nu va ajunge din urmă cu x86 în ceea ce privește puterea pură.

Acțiune