телевизори. Конзоли. Проектори и аксесоари. Технологии. Цифрова телевизия

Сравнителен анализ на микроконтролери с ARM ядро. Как ARM архитектурата се различава от x86 Cortex - най-модерната ARM

Със сигурност всеки от вас се чудеше: какво е ARM? Често можете да чуете това съкращение, когато говорите за процесор на устройство. И понякога не всеки разбира напълно същността му.

Нека кажем веднага, че ARM е компания, но ARM е и процесорна архитектура, разработена от ARM.

ARM процесорът е CPU, базиран на RISC архитектурата, разработена от Acorn Computers през 80-те години на миналия век и в момента разработена от Advanced RISC Machines, оттук и съкращението "ARM". Освен това съкращението ARM във връзка директно с процесорната архитектура означава Acorn RISC Machine. С други думи, има две значения на съкращението ARM.

Advanced RISC Machines е базирана в Обединеното кралство компания, която разработва, проектира и лицензира ARM процесорни архитектури. ARM разработва метод за изграждане на ARM процесори и компании като , Apple и Samsung разработват своите процесори, базирани на ARM. В момента почти всички устройства, които са малки по размер и оборудвани с батерия, имат процесори, изградени на ARM архитектура.

Има няколко вида процесорна архитектура: CISC, RISC, MISC. Първият се отличава с голям набор от инструкции, тоест CISC е проектиран да работи със сложни инструкции с различна дължина. RISC, от друга страна, има намален набор от инструкции, които имат един формат и просто кодиране.

За да разберете разликата, представете си, че вашият персонален компютър има AMD или Intel процесор с CISC архитектура. CISC процесорите генерират повече от MIPS (милион инструкции за секунда, т.е. броят на специфичните инструкции, изпълнени от процесора за една секунда).

RICS процесорите имат по-малко транзистори, което им позволява да консумират по-малко енергия. Намаленият брой инструкции позволява проектиране на опростени микросхеми. Намаленият размер на чипа води до по-малък размер на матрицата, което позволява повече компоненти да бъдат опаковани върху процесора, което прави ARM процесорите по-малки и много по-енергийно ефективни.

Архитектурата ARM е идеална за смартфони, за които консумацията на енергия е основното нещо, докато по отношение на производителността ARM процесорите, разбира се, са значително по-ниски от топ решенията на Intel и AMD. В същото време ARM процесорите не могат да се нарекат слаби. ARM поддържа както 32-битова, така и 64-битова архитектура, има и поддръжка за хардуерна виртуализация и разширено управление на захранването.

Основният параметър при оценката на ARM процесорите е съотношението на производителността към консумацията на енергия; тук ARM процесорите се представят по-добре от, например, x86 процесор от Intel, базиран на CISC архитектура.

По този начин, в случай на суперкомпютри, ще бъде по-привлекателно да се използват един милион ARM процесори вместо хиляда x86 процесора.

Въз основа на материали от androidcentral

Всеки, който се интересува от мобилни технологии със сигурност е чувал името ARM. Мнозина разбират това съкращение като вид процесор за смартфони и таблети, други поясняват, че това изобщо не е процесор, а неговата архитектура. И със сигурност малко хора са се заровили в историята на появата на ARM. В тази статия ще се опитаме да разберем всички тези нюанси и да ви кажем защо модерните джаджи се нуждаят от ARM процесори.

Кратка екскурзия в историята

Когато търсите „ARM“, Wikipedia дава две значения на това съкращение: Acorn RISC машина и Advanced RISC машини. Да започнем по ред. През 80-те години на миналия век във Великобритания е основана Acorn Computers, която започва своята дейност със създаването на персонални компютри. По това време Acorn е наричан още „британската ябълка“. Решаващ период за компанията настъпва в края на 80-те години, когато нейният главен инженер се възползва от решението на двама възпитаници на местен университет да предложат нов тип процесорна архитектура с намален набор от инструкции (RISC). Така се появява първият компютър, базиран на процесора Acorn Risc Machine. Успехът не закъсня. През 1990 г. британците сключиха споразумение с Apple и скоро започнаха работа по нова версия на чипсета. Екипът за разработка в крайна сметка формира компания, наречена Advanced RISC Machines, вдъхновена от процесора. Чиповете с новата архитектура също станаха известни като Advanced Risc Machine или накратко ARM.

От 1998 г. Advanced Risc Machine става известна като ARM Limited. В момента компанията не се занимава с производство и продажба на собствени процесори. Основната и единствена дейност на ARM Limited е разработването на технологии и продажбата на лицензи на различни компании за използване на ARM архитектурата. Някои производители купуват лиценз за готови ядра, други купуват така наречения „архитектурен лиценз“, за да произвеждат процесори със собствени ядра. Сред такива компании са Apple, Samsung, Qualcomm, nVidia, HiSilicon и др. Според някои доклади ARM Limited печели $0,067 от всеки такъв процесор. Тази цифра е средна и също остаряла. Всяка година има все повече и повече ядра в чипсетите, а новите многоядрени процесори превъзхождат остарелите модели по цена.

Технически характеристики на ARM чиповете

Съществуват два типа съвременни процесорни архитектури: CISC(Complex Instruction Set Computing) и RISC(Изчисляване с намален набор от инструкции). Архитектурата CISC включва семейството процесори x86 (Intel и AMD), а архитектурата RISC включва семейството ARM. Основната формална разлика между RISC и CISC и съответно x86 от ARM е намаленият набор от инструкции, използван в RISC процесорите. Например, всяка инструкция в CISC архитектура се трансформира в няколко RISC инструкции. Освен това RISC процесорите използват по-малко транзистори и по този начин консумират по-малко енергия.

Основният приоритет на ARM процесорите е съотношението на производителността към консумацията на енергия. ARM има по-високо съотношение производителност на ват от x86. Можете да получите мощността, от която се нуждаете, от 24 x86 ядра или от стотици малки ARM ядра с ниска мощност. Разбира се, дори най-мощният процесор, базиран на ARM архитектура, никога няма да бъде сравним по мощност с Intel Core i7. Но същият Intel Core i7 се нуждае от активна система за охлаждане и никога няма да се побере в калъф за телефон. Тук ARM няма конкуренция. От една страна, това изглежда като атрактивна опция за изграждане на суперкомпютър, използващ милион ARM процесори вместо хиляда x86 процесора. От друга страна, двете архитектури не могат да се сравняват еднозначно. В някои отношения ARM ще има предимство, а в други x86 ще има предимство.

Въпреки това, наричането на чипове с архитектура ARM процесори не е напълно правилно. Освен няколко процесорни ядра, те включват и други компоненти. Най-подходящият термин би бил „единичен чип“ или „система на чип“ (SoC). Съвременните едночипови системи за мобилни устройства включват RAM контролер, графичен ускорител, видео декодер, аудио кодек и модули за безжична комуникация. Както бе споменато по-рано, отделните компоненти на чипсета могат да бъдат разработени от производители на трети страни. Най-яркият пример за това са графичните ядра, които освен от ARM Limited (Mali graphics) са разработени от Qualcomm (Adreno), NVIDIA (GeForce ULP) и Imagination Technologies (PowerVR).


На практика това изглежда така. Повечето бюджетни мобилни устройства с Android идват с чипсети, произведени от компанията MediaTek, който почти неизменно следва инструкциите на ARM Limited и ги допълва с Cortex-A ядра и Mali графики (по-рядко PowerVR).


A-марките често използват произведени чипсети за своите водещи устройства Qualcomm. Между другото, най-новите чипове Qualcomm Snapdragon (,) са оборудвани с напълно персонализирани Kryo ядра за централния процесор и Adreno за графичния ускорител.

Относно Ябълка, след това за iPhone и iPad компанията използва собствени чипове от A-серия с графичен ускорител PowerVR, които се произвеждат от трети страни. По този начин той има 64-битов четириядрен процесор A10 Fusion и графичен процесор PowerVR GT7600.


Архитектурата на семейството процесори се счита за подходяща към момента на писане ARMv8. Той беше първият, който използва 64-битов набор от инструкции и поддържа повече от 4 GB RAM. Архитектурата ARMv8 е обратно съвместима с 32-битови приложения. Най-ефективното и най-мощно процесорно ядро, разработено от ARM Limited, е в момента Cortex-A73, и повечето производители на SoC го използват непроменен.


Cortex-A73 осигурява 30% по-висока производителност от Cortex-A72 и поддържа пълната гама от ARMv8 архитектура. Максималната честота на ядрото на процесора е 2,8 GHz.

Обхват на използване на ARM

Най-голямата слава на ARM дойде от разработването на мобилни устройства. В навечерието на масовото производство на смартфони и друго преносимо оборудване, енергийно ефективните процесори бяха полезни. Кулминацията на развитието на ARM Limited беше през 2007 г., когато британската компания поднови партньорството си с Apple, а известно време по-късно екипът от Купертино представи първия си iPhone с процесор, базиран на ARM архитектура. Впоследствие едночипова система, базирана на ARM архитектура, стана непроменен компонент на почти всички смартфони на пазара.


Портфолиото на ARM Limited не се ограничава само до ядра от семейството Cortex-A. Всъщност има три серии процесорни ядра под марката Cortex, които са обозначени с буквите A, R, M. Семейство ядра Cortex-A, както вече знаем, е най-мощният. Те се използват главно в смартфони, таблети, телевизионни декодери, сателитни приемници, автомобилни системи и роботика. Процесорни ядра Cortex-Rоптимизирани за изпълнение на задачи с висока производителност в реално време, така че такива чипове се намират в медицинско оборудване, автономни системи за сигурност и носители за съхранение. Основната задача на семейството Кортекс-Ме простота и ниска цена. Технически това са най-слабите процесорни ядра с най-ниска консумация на енергия. Процесорите, базирани на такива ядра, се използват почти навсякъде, където се изисква минимална мощност и ниска цена от устройство: сензори, контролери, аларми, дисплеи, смарт часовници и друго оборудване.

Като цяло повечето съвременни устройства от малки до големи, които изискват процесор, използват ARM чипове. Огромен плюс е фактът, че ARM архитектурата се поддържа от много операционни системи на платформата Linux (включително Android и Chrome OS), iOS и Windows (Windows Phone).

Пазарна конкуренция и бъдещи перспективи

Струва си да се признае, че в момента ARM няма сериозни конкуренти. И като цяло това се дължи на факта, че ARM Limited направи правилния избор в определен момент. Но в самото начало на своето пътуване компанията произвежда процесори за компютри и дори се опитва да се конкурира с Intel. След като ARM Limited промени посоката на дейността си, тя също имаше труден период. Тогава софтуерният монополист, представляван от Microsoft, след като сключи споразумение за партньорство с Intel, не остави шанс на други производители, включително ARM Limited - Windows OS просто не работи на системи с ARM процесори. Без значение колко парадоксално може да звучи, но сега ситуацията може да се промени драматично и Windows OS е готова да поддържа процесори на тази архитектура.


В резултат на успеха на ARM чиповете, Intel се опита да създаде конкурентен процесор и навлезе на пазара с чип Intel Atom. Отне й много повече време, за да направи това, отколкото на ARM Limited. Чипсетът влезе в производство през 2011 г., но, както се казва, влакът вече е напуснал. Intel Atom е CISC процесор с x86 архитектура. Инженерите на компанията са постигнали по-ниска консумация на енергия, отколкото в ARM, но в момента разнообразие от мобилен софтуер има лоша адаптация към x86 архитектурата.


Миналата година Intel се отказа от няколко ключови решения в по-нататъшното развитие на мобилните системи. По същество компания за мобилни устройства, тъй като те станаха нерентабилни. Единственият голям производител, който оборудва своите смартфони с чипсети Intel Atom, беше ASUS. Въпреки това Intel Atom все още се използва широко в нетбуци, неттопи и други преносими устройства.

Позицията на ARM Limited на пазара е уникална. В момента почти всички производители използват неговите разработки. Компанията обаче няма собствени фабрики. Това не му пречи да стои наравно с Intel и AMD. Историята на ARM включва още един интересен факт. Възможно е сега ARM технологията да принадлежи на Apple, която беше в основата на формирането на ARM Limited. По ирония на съдбата през 1998 г. жителите на Купертино, преживяващи времена на криза, продадоха своя дял. Сега Apple е принудена, заедно с други компании, да купи лиценз за ARM процесорите, използвани в iPhone и iPad.

В днешно време ARM процесорите са способни да изпълняват сериозни задачи. В близко бъдеще те ще бъдат използвани в сървъри, по-специално центровете за данни на Facebook и PayPal вече имат такива решения. В ерата на развитието на Интернет на нещата (IoT) и интелигентните домашни устройства ARM чиповете станаха още по-търсени. Така че най-интересните неща тепърва предстоят за ARM.

Поради непрекъснато увеличаващия се брой приложения, които поставят повишени изисквания към производителността на обработката на данни, възниква тенденция на нарастващо търсене на 32-битови. микроконтролери. Това заключение е направено от маркетинговата компания Semico, която прогнозира 2-кратно преобладаване на 32-битов пазарен капацитет. микроконтролери над 8 и 16 бита. през 2007г. В тази връзка целта на настоящата статия е да представи общите тенденции в развитието на един от най-разпространените 32-битови. ARM ядра и дайте сравнителна оценка на микроконтролери, базирани на тях от най-достъпните производители на пазарите на ОНД.

Общ преглед на архитектурата на ARM

Ядрото на микроконтролера ARM е разработено от едноименната английска компания, основана през 1990 г. Името ARM идва от "Advanced RISC Machines". Трябва да се отбележи, че компанията е специализирана само в разработването на микропроцесорни ядра и периферни устройства, докато не разполага с производствени мощности за производство на микроконтролери. ARM доставя дизайна си в електронен вид, от който клиентите проектират свои собствени микроконтролери. Клиентите на компанията включват над 60 компании за производство на полупроводници, сред които са популярни производители на пазара на полупроводникови компоненти в страните от ОНД като Altera, Analog Devices, Atmel, Cirrus Logic, Fujitsu, MagnaChip (Hynix), Intel, Motorola, National Semiconductor , Philips, ST Microelectronics и Texas Instruments.

В момента ARM архитектурата заема водеща позиция и покрива 75% от 32-битовия пазар. вградени RISC микропроцесори. Преобладаването на това ядро ​​се обяснява с неговата стандартизация, която позволява на разработчика да използва по-гъвкаво както своите собствени, така и софтуерни разработки на трети страни, както при преминаване към ново процесорно ядро ​​на ARM, така и при мигриране между различни видове ARM микроконтролери.

В момента има шест разработени основни семейства (вижте Фигура 1): ARM7™, ARM9™, ARM9E™, ARM10™, ARM11™ и SecurCore™. Семействата XScale™ и StrongARM® също са разработени съвместно с Intel.

Няколко разширения могат да бъдат интегрирани като допълнение към ARM архитектурата:

  • Thumb® - 16-битов набор от инструкции, който подобрява ефективността на използването на програмната памет;
  • DSP - набор от аритметични инструкции за цифрова обработка на сигнала;
  • Jazelle™ - разширение за хардуерно директно изпълнение на Java инструкции;
  • Media - разширение за 2-4 пъти скорост на обработка на аудио и видео сигнали.


Фигура 1. ARM процесорни ядра

Рекордните нива, които ARM архитектурата е преминала, са скорости от над 1 GHz и специфична консумация от 1 μW/MHz. В зависимост от предназначението си ARM процесорите се разделят на три групи (виж Фигура 2):

  • Процесори за операционна система с отворена платформа за приложения за безжична комуникация, изображения и потребителска електроника.
  • Процесори за вградени операционни системи в реално време за съхранение, индустриални, автомобилни и мрежови приложения.
  • Система за защита на данни за смарт карти и SIM карти.

0,18 µm (0,13 µm)
Ядро Кеш-памет Площ, mm 2 Специфична консумация mW/MHz Честота, MHz
ARM7TDMI - 0,53 (0,26) 0.24 (0,06) 100 (133)
ARM7TDMI-S - 0,62 (0,32) 0,39 (0,11) 80-100 (100-133)
SC100 - 0,50 0.21 80
SC200 - 0,70 0.30 110
ARM7EJ-S - 1,25 (0,65) 0,45 (0,16) 80-100 (100-133)
ARM946E-S 8k + 8k 5,8 (3,25) 0,9 (0,45) 150-170 (180-210)
ARM966E-S 16k+16k TCM 4,0 (2,25) 0,65 (0,4) 180-200 (220-250)
ARM1026EJ-S 8k + 8k 7,5 (4,2) 1,15 (0,5) 190-210 (266-325)
ARM1136J(F)-S 16k/16k+ 16/16k TCM - (8,2; 9,6) 1,30 (0,4) 250-270 (333-400)

Фигура 2. Технически данни за процесорни ядра
VSE - вътрешносхемен емулатор, RT - реално време, DSP - цифров сигнален процесор, SIMD - множество данни в една инструкция, TCM - плътно свързана памет (кеш), ETM - вградени макроклетки за проследяване, VIC - векторизиран контролер за прекъсване, ASB , AHB - видове вътрешни гуми

Обещанието на ARM ядрото става очевидно след революционното съобщение от Atmel на конференцията за разработчици на ARM микроконтролери, която се проведе в Санта Клара (САЩ) през октомври 2004 г. Същността на съобщението беше намерението на Atmel да произвежда 32-битови. AT91SAM7S микроконтролери с цена 8 бита, насочени към 8 бита. приложения за разширяване на функционалността на обработката на информация, като същевременно поддържа конкурентната им цена на същото ниво.

Комплект инструкции за палец

32-битов ARM процесорите поддържат предишните 16 бита. развитие чрез поддръжка на набора от инструкции Thumb. Използване на 16-битов инструкциите могат да спестят до 35% памет в сравнение с еквивалентни 32-битови. код, като същевременно запазва всички предимства на 32-битовия. системи, например достъп до паметта с 32-бит. адресно пространство.

SIMD технология

Технологията SIMD (множество данни в една инструкция) се използва в медийното разширение и е насочена към увеличаване на скоростта на обработка на данни в приложения, които изискват ниска консумация на енергия. SIMD разширенията са оптимизирани за широк набор от софтуер, вкл. аудио/видео кодеци, където ви позволяват да увеличите скоростта на обработка 4 пъти.

DSP набор от инструкции

Много приложения поставят повишени изисквания към скоростта на обработка на сигнала в реално време. Традиционно в такива ситуации разработчиците прибягват до използването на цифров сигнален процесор (DSP), което увеличава консумацията на енергия и цената както на самата разработка, така и на крайното устройство. За да премахнат тези недостатъци, редица ARM процесори интегрират DSP инструкции, които изпълняват 16-битови. и 32-битов аритметични операции.

Технология Jazelle®

Технологията ARM Jazelle е насочена към приложения, които поддържат езика за програмиране Java. Той предлага уникална комбинация от висока производителност, ниска системна цена и изисквания за ниска консумация на енергия, които не могат да бъдат постигнати едновременно с помощта на копроцесор или специален Java процесор.

Технологията ARM Jazelle е разширение към 32-bit. RISC архитектура, която позволява на ARM процесора да изпълнява Java код в хардуера. В същото време с помощта на ARM архитектурата се постига ненадмината скорост на изпълнение на Java код. Така разработчиците имат възможност свободно да внедряват Java приложения, вкл. операционни системи и код на приложения на един процесор.

Понастоящем технологията Jazelle е интегрирана в следните ARM процесори: ARM1176JZ(F)-S, ARM1136J(F)-S, ARM1026EJ-S, ARM926EJ-S и ARM7EJ-S.

Традиционните ARM процесори поддържат 2 набора инструкции: режимът ARM поддържа 32-битови инструкции, а режимът Thumb компресира най-популярните инструкции до 16-битови. формат. Технологията Jazelle разширява тази концепция чрез добавяне на трети набор от инструкции на Java, който е активиран в нов режим на Java.

Интелигентна технология за управление на енергията

Една от основните задачи, които разработчиците на преносими устройства (например смартфони, персонални цифрови асистенти и аудио/видео плейъри) решават, е оптимизирането на консумацията на енергия, което позволява подобряване на характеристиките на производителността на готовото устройство чрез удължаване на живота на батерията или намаляване на размера на устройството.

Традиционен метод за намаляване на потреблението на енергия е използването на икономични режими на работа, например празен ход или заспиване, които се различават по дълбочината на деактивиране на вътрешните елементи. По правило активният режим на работа на такава система е проектиран за най-лошите условия на работа и се характеризира с максимално натоварване, като по този начин неоправдано намалява живота на батерията. По този начин, за да оптимизират допълнително консумацията на енергия от батерията, разработчиците обръщат специално внимание на управлението на енергията в активен режим.

За да се улесни този процес, технологията Intelligent Energy Manager (IEM) е разработена за ARM процесори. Тази технология е комбинация от хардуерни и софтуерни компоненти, които работят заедно за извършване на динамично мащабиране на мощността.

Същността на метода за динамично управление на захранващото напрежение се основава на израза на консумацията на енергия на CMOS процесорите:

където P е общата консумация на енергия, C е комутираният капацитет, fc е честотата на процесора, е захранващото напрежение, е токът на утечка в статичен режим. От израза следва, че честотата и захранващото напрежение могат да се променят, за да се регулира консумацията на енергия.

Намаляването на честотата за намаляване на консумацията на енергия се използва широко в микроконтролери и системи на чипове (PSoC), но този метод няма недостатъка да намалява производителността. Методът за динамично управление на захранващото напрежение се основава на промяна на захранващото напрежение, но ако възможностите за настройка са изчерпани, тогава се използва допълнителен метод за регулиране на честотата на процесора.

Микроконтролери, базирани на ARM архитектура

Таблица 1 представя общи сравнителни характеристики на микроконтролери ARM от най-известните и достъпни производители: Analog Device, Atmel, Philips Semiconductors и Texas Instruments, а таблица 2 представя техните технически данни по-подробно.

Таблица 1. Сравнение на микроконтролери ARM от различни производители според основните характеристики

TMS 470 (Texas Instruments) AT91 (Atmel) Микро конвертор (AD) LPC2000 (Philips)
Система:
  • ARM7TDMI ядро
  • Външният делител на часовника (ECD) ви позволява да тактувате външно устройство на желаната честота
  • Ядро ARM7TDMI/ARM920T
  • Допълнителен вграден калибриран RC осцилатор
  • DMA за обмен на данни между периферни устройства и памет значително облекчава процесора
  • Отделна синхронизация за включване/изключване за всяка периферия (250 µA, ако всички са изключени)
  • Вграден стабилизатор 1.8V
  • ARM7TDMI ядро
  • Вграден калибриран RC осцилатор (± 3%)
  • ARM7TDMI-S ядро ​​(малко по-лоша специфична консумация в сравнение с ARM7TDMI)
  • Версии за температурен диапазон -40…+105°C
  • Памет:
  • Флаш памет до 1 MB
  • Модул за защита на паметта (MSM)
  • Икономична статична RAM (например AT91M40800 при 40 MHz с външна RAM (12ns) консумира 120 mA, а AT91R40807 с вътрешна RAM при същите условия консумира 50 mA).
  • Флаш програма/памет за данни до 62 kB със съхранение на данни до 100 години и издръжливост от 100 хиляди цикъла запис/изтриване
  • Флаш памет със 128 бита интерфейс на ускорител за работа на 60 MHz
  • Аналогови периферни устройства:
  • Мултибуферен ADC: - 10 бита, 16 канала, 1.75 µs (запаметяване на проби, преобразуване); - възможност за организиране на групи от канали; - модели за програмиране: съвместимост с ADC TMS470R1X и буфериране на резултата от преобразуването (FIFO); - режими на работа: преобразуване, калибриране (търсене на средната точка на грешката на отместването на ADC); - самотестиране (проверка за повреди на аналогови входове); изключвам - три DDP канала; - стартиране на трансформацията, вкл. група, по външно събитие или таймер; - пинове за указване на двете граници на преобразуване (пинове ADREFHI и ADREFLO).
  • Вграден температурен сензор (± 3°C)
  • 12-битов ADC - 1 милион преобразуватели в секунда - асиметричен или пълен диференциален режим
  • 12-битов DAC - изходен сигнал: напрежение - опционален изходен буферен усилвател; - пълно захранване (rail-to-rail)
  • Компаратор (K) - 2 входа и изход са свързани към щифтовете на микросхемата
  • 10-битов мултиплексиран ADC: - време за преобразуване 2,44 μs (400 хиляди преобразувания в секунда) - обхват на преобразуване 0...3V - задейства се от външен сигнал или таймер
  • Цифрови периферни устройства:
  • Висококачествен таймер (HET): - набор от 21 специализирани инструкции за управление на таймера; - специализирана предварително дефинирана таймерна микромашина, свързана с входно-изходни линии.
  • Хардуерен ъглов генератор (HWAG) за решаване на проблеми с управлението на двигателя: - съвместна работа с NO
  • Часовник за реално време с отделен вход за резервно захранване
  • Периодичен интервален таймер (PIT) за генериране на синхронизирани във времето прекъсвания
  • Програмируема логическа матрица - два блока, свързващи 16 входа и 14 изхода - 2-входов логически елемент с всяка определена функция за преобразуване
  • Трифазен 16-битов PWM генератор за управление на инвертори/двигатели - антифазни изходи на всяка фаза с регулируема пауза без припокриване - регулируема PWM честота
  • 32-битов таймери (канали за улавяне на граници и канали за сравнение), PWM модул (6 изхода), часовник в реално време
  • Интерфейси:
  • Серийни интерфейси от 2-ри клас (C2SIa и C2SIb) - приемане и предаване на данни в мулти-главна мрежа; - комуникация на TMS470R1Vx с външни аналогови интерфейсни микросхеми; - буфериране, откриване на грешки и счупвания, калибриране и др.
  • CAN контролери - стандартни (SCC): пощенска кутия за 16 съобщения; - високо качество (HECC): пощенска кутия за 32 съобщения.
  • Интерфейс с DSP - свързва TMS470R1x и TMS320C54x DSP мегамодул
  • Модул за разширение на шина (EBM): - поддръжка на 8 или 16 бита. външна памет; - I/O функция с общо предназначение, ако не се използва външна шина
  • USB 2.0 интерфейс
  • Интерфейс за външна памет с конфигурируеми изходи за избор на външни чипове
  • Контролер за високоскоростно програмиране: - Режими на серийно и паралелно флаш програмиране
  • Интерфейси за флаш карти (RM9200)
  • Стандартни серийни интерфейси (UART, SPI, I2C)
  • 16C550 съвместим UART - поддържа модемни сигнали на един от UART
  • Конфигурируем интерфейс за външна памет с 4 банки и 8/16/32 ширина на данните
  • Таблица 2. Технически данни за микроконтролери ARM от Atmel, Analog Device, Texas Instruments, Philips Semiconductors

    Име Ядро Кадър памет Периферни устройства I/O Макс. h-ta, MHz
    Flash, kbyte RAM, kbytes Таймер ADC, канал/бит SPI/U(S)APP/ I2C USB Dev/Host МОГА други
    Микроконтролери от семейството TMS470 от Texas Instruments
    TMS470R1A64 ARM7TDMI 80 LQFP 64 4 13 8/10 2/2/- - 2 C2SI 40 48
    ARM7TDMI 100 LQFP 128 8 16 16/10 2/2/- - 1 C2SI 50 48
    ARM7TDMI 100 LQFP 256 12 16 16/10 2/2/- - 1 C2SI 50 48
    ARM7TDMI 100/144 LQFP 288 16 12 12/10 2/2/1 - 2 C2SI, DDP, EBM, MSM 93 48
    ARM7TDMI 144 ЗКФП 512 32 32 16/10 2/2/- - 2 РАП 87 60
    ARM7TDMI 144 ЗКФП 768 48 32 16/10 5/2/- - 3 РАП 87 60
    TMS470R1A1024 ARM7TDMI 144 ЗКФП 1024 64 12 12/10 5/2/1 - 2 DMA, EBM, MSM 93 60
    Atmel AT91 ARM Thumb Family
    ARM7TDMI QFP100 - 8 3 -/2/- EBI 32 40
    ARM7TDMI QFP100 - 256 3 -/2/- EBI 32 70
    ARM7TDMI BGA121 512 256 3 -/2/- EBI 32 70
    ARM7TDMI BGA121 2048 256 3 -/2/- EBI 32 70
    ARM7TDMI QFP144
    BGA144
    - 8 6 2/2/- EBI, PIT, RTT 54 33
    ARM7TDMI QFP176
    BGA176
    - 8 6 8/10 1/3/- EBI, RTC, 2x10 rub. DAC 58 33
    ARM7TDMI QFP100 256 96 6 1/4/1 1/- SSC, PIT, RTC, RTT 63 66
    ARM7TDMI BGA256 1 16 3 1/2/- EBI, вътр. SDRAM, 2xEthernet 48 36
    ARM7TDMI QFP144 - 4 9 8/10 1/3/- EBI, 4 PWM, CAN 49 40
    ARM7TDMI QFP176 - 16 10 16/10 1/2/- 4 EBI 57 30
    ARM7TDMI QFP100 256 32 9 16/10 2/4/1 1/- 1 8 PWM, RTT, PIT, RC-генер., SSC, MCI 62 60
    ARM7TDMI QFP48 32 8 3 8/10 1/1/1 21 55
    ARM7TDMI QFP64 64 16 3 8/10 1/2/1 1/- 4 PWM, RTT, PIT, RC ген., SSC 32 55
    ARM7TDMI QFP64 128 32 3 8/10 1/2/1 1/- 4 PWM, RTT, PIT, RC ген., SSC 32 55
    ARM7TDMI QFP64 256 64 3 8/10 1/2/1 1/- 4 PWM, RTT, PIT, RC ген., SSC 32 55
    ARM7TDMI QFP100 128 32 3 8/10 1/2/1 1/- 1 4 PWM, RTT, PIT, RC-генер., SSC, Ethernet 60 55
    ARM920T QFP208
    BGA256
    128 16 6 1/4/1 1/2 EBI, RTC, RTT, PIT, SDRAM, 3xSSC, MCI, Ethernet 94 180
    AT91SAM9261 ARM7TDMI BGA217 32 160 3 3/3/1 1/2 EBI, RTT, PIT, int.SDRAM, 3xSSC, MCI 96 200
    Семейство микроконтролери на аналогови устройства MicroConverter
    ARM7TDMI CP-40 62 8 5/12 1/1/2 4 x 12p DAC, K, PLM 14 45
    ARM7TDMI CP-40 62 8 8/12 1/1/2 2 x 12p DAC, K, PLM 13 45
    ARM7TDMI CP-40 62 8 10/12 1/1/2 K, PLM 13 45
    ARM7TDMI CP-64 62 8 10/12 1/1/2 2 x 12p DAC, 3ph. PWM, K, PLM 30 45
    ARM7TDMI CP-64 62 8 12/12 1/1/2 3f. PWM, K, PLM 30 45
    ARM7TDMI ST-80 62 8 12/12 1/1/2 4 x 12p.DAC, 3-фазен PWM, K, PLM 40 45
    ARM7TDMI ST-80 62 8 16/12 1/1/2 3f. PWM, K, PLM 40 45
    Микроконтролери от семейството LPC2000 от Philips Semiconductors
    ARM7TDMI-S LQFP48 128 16 4 1/2/1 6 канал ШИМ 32 60
    ARM7TDMI-S LQFP48 128 32 4 1/2/1 6 канал ШИМ 32 60
    ARM7TDMI-S LQFP48 128 64 4 1/2/1 6 канал ШИМ 32 60
    ARM7TDMI-S LQFP64 128 16 4 4/10 2/2/1 6 канал ШИМ 46 60
    ARM7TDMI-S LQFP64 128 16 4 4/10 2/2/1 6 канал ШИМ 46 60
    ARM7TDMI-S LQFP64 256 16 4 4/10 2/2/1 6 канал ШИМ 46 60
    ARM7TDMI-S LQFP64 256 16 4 4/10 2/2/1 6 канал ШИМ 46 60
    2/2/1 6 канал ШИМ 112 60
    ARM7TDMI-S LQFP144 256 16 4 8/10 2/2/1 2 6 канал ШИМ 112 60
    ARM7TDMI-S LQFP144 256 16 4 8/10 2/2/1 4 6 канал ШИМ 112 60

    Въпреки използването на общо ядро ​​ARM7TDMI в повечето микроконтролери, микроконтролерите от различни производители имат доста ясен портрет. Analog Device е безспорен лидер в аналоговата периферия, разполагайки в арсенала си с 12-битови. 1 MHz клас ADC и DAC. В тази насока забележимо изостава Atmel, който в развитието на отделни ADC вече преодоля бариерата от 2 GHz, но интегрира приличен ADC в 32-bit. микроконтролер, не можах. Въпреки това, този недостатък на микроконтролерите на Atmel надвишава тяхната „приятелска насоченост“ (при използване на вграден RC осцилатор и стабилизатор ще е необходимо само едно захранващо напрежение за стартиране на микроконтролера), ефективност и най-важното - ниска цена. Сред разгледаните микроконтролери, микроконтролерите Atmel са единствените, които съдържат USB интерфейс. Микроконтролерите TI се характеризират с излишна представителност при умерена цена. Когато работите с микроконтролери TMS470, можете да сте сигурни в достатъчността на периферните ресурси. Микроконтролерите LPC2000 (Philips) могат да се нарекат златната среда според разглежданите критерии. Те се отличават с наличието на UART, изработен в традицията на Philips и който е съвместим със стандартния 16C550 UART, а също така има модемен интерфейс и хардуерен режим на управление на комуникацията с FIFO буфериране. Сред микроконтролерите Philips ARM можете да намерите представители за разширен температурен диапазон от -40...+105°C.

    32-битов микроконтролери с алтернативни ядра

    Когато става въпрос за 32-битов. микроконтролери, би било несправедливо да не споменаваме други 32-битови. алтернативи на ARM ядрото. В това отношение трябва да подчертаем FR ядрото от Fujitsu и M68000/M68300 от Motorola.

    FR ядрото се използва в голямо разнообразие от микроконтролери (над 40) в множество фамилии и разполага с 16-битов режим на набор от инструкции за оптимизиране на използването на програмната памет с минимално влошаване на производителността, което е идентично с ARM ядрото. Размерът на ROM и RAM достига до 512 KB, в зависимост от типа се поддържат различни стандартни периферни устройства, вкл. 10-битов ADC, 12-битов PWM, CAN интерфейс, UART и т.н. Точно както в случая с микроконтролерите ARM, микроконтролерите, базирани на ядрото FR, се отличават с общите традиции, които разработчикът определя и които са разпознаваеми в цялата линия микроконтролери. В случая на Fujitsu това е хардуерна поддръжка за endianism, хардуерна функция за търсене на битове, много канали от същия тип периферни устройства и вход за прекъсване без маскиране. Много микроконтролери имат доста приличен 10-битов интегриран в тях. ADC (време за преобразуване 1,7 µs) и DAC (0,9 µs). Семейството FRLite постави рекорд за специфична консумация на енергия от 1mA/MHz. Семейството FR 65E има максимална производителност, с тактова честота до 66 MHz.

    32-битов Микроконтролерите Motorola се характеризират с изпълнението им от набор от стандартни функционални модули. Семейството микроконтролери 68300 включва: 32-битов процесор (CPU32), модули с вътрешна памет, интерфейсен модул за системна интеграция (SIM), сериен интерфейсен модул (QSM), модул за обработка на време (TPU) или модул за време (GPT). ), аналогово-цифров преобразувател (ADC) и редица други. Модулите са свързани помежду си чрез междумодулна шина. Процесорът CPU32, използван в семейството микроконтролери 68300, е подобен в основните си функции на 32-битовия микропроцесор MC68020 от семейството 68000. За използване в комуникационни системи се произвеждат микроконтролери, които съдържат комуникационен процесорен модул RISC, който има набор от специални инструменти за обмен на данни. Такива комуникационни контролери (68360, 68302, 68356) също са част от семейството 68300. Характеристика на процесора CPU32 е неговата работа с 16-битова шина за данни и 24-битова адресна шина (адресируема памет 16 MB), а Основният архитектурен принцип на функциониране на процесорите от семейство 68000 е разделянето на техните ресурси и възможности в зависимост от класа задачи, които се решават. Това предполага изпълнението на два класа задачи: управление на работата на самата микропроцесорна система с помощта на системен софтуер (операционна система - супервайзор) и решаване на приложни проблеми на потребителя. Това води до режими на работа: режим на надзорник или потребителски режим. В зависимост от режима, когато се изпълняват програми, се разрешава достъп до всички или част от ресурсите на микроконтролера. Режимът Supervisor позволява изпълнение на всякакви инструкции, изпълнявани от процесора и достъп до всички регистри. В потребителски режим е забранено изпълнението на редица команди и достъпът до определени регистри, за да се ограничи възможността за такива промени в състоянието на системата, които биха могли да попречат на изпълнението на други програми или да нарушат режима на работа на процесора, зададен от супервайзора. Силен аргумент за избора на микроконтролери на Motorola е високата популярност на семейството M68000 в даден момент и софтуерната съвместимост на M68000 и по-модерните микроконтролери M68300, което позволява използването на съществуващи софтуерни разработки в нови разработки, като по този начин намалява времето за проектиране.

    • Безспорното предимство на ядрото ARM е неговата стандартизация, която ви позволява да използвате софтуер от други съвместими микроконтролери, да имате по-голям достъп до инструменти за проектиране или по-лесно да мигрирате между микроконтролери.
    • Въпреки използването на едно и също ARM ядро ​​в микроконтролери от различни производители, всеки от тях все още има своя собствена идентичност, което се постига чрез оригиналната „рецепта“ на периферните устройства и заемането на водещи позиции в някои видове периферни устройства, например за Аналогово устройство това са цифрово-аналогови преобразуватели.
    • ARM ядрата имат представителна номенклатура и динамика на развитие, но от сравнението следва, че основно микроконтролерите, базирани на ядрото ARM7TDMI, са достъпни за широката публика. Това може да се обясни например с факта, че основната област на потребление на микроконтролери ARM са битови, офисни и потребителски електронни устройства и оборудване, които, за съжаление, се произвеждат главно от чуждестранни OEM производители.
    • Пазарът на 32-битови микроконтролери има голям капацитет, който динамично ще се увеличава през следващите години, следователно можем само да проследим борбата на производителите на микроконтролери за дял от този пазар, да следваме съобщенията и да успеем да овладеем новите технологии.

    Литература

    1. Дж. Уилбринк. Улесняване на миграцията от 8-битови към 32-битови микроконтролери/Atmel Corporation -2004.
    2. „Atmel представя първия в света под$3 ARM7 флаш микроконтролер“, новини на Atmel от 10/19/04, www.atmel.com.
    3. Листовка за процесорните ядра//Справка: ARM DOI 0111-4/05.03, Издаден: май 2003 г.
    4. Материали на сайта www.arm.com

    Първите ARM чипове се появиха преди три десетилетия благодарение на усилията на британската компания Acorn Computers (сега ARM Limited), но дълго време останаха в сянката на по-известните си братя - x86 процесорите. Всичко се обърна с главата надолу с прехода на ИТ индустрията към посткомпютърната ера, когато мобилните джаджи, а не персоналните компютри, започнаха да управляват.

    Може би си струва да започнем с факта, че процесорната архитектура x86, която в момента се използва от Intel и AMD, използва набора от инструкции CISC (Complex Instruction Set Computer), макар и не в неговата чиста форма. По този начин голям брой сложни команди, които отдавна са отличителен белег на CISC, първо се декодират в прости и едва след това се обработват. Ясно е, че цялата тази верига от действия отнема много енергия.

    Енергийно ефективна алтернатива са чиповете с архитектура ARM с набор от инструкции RISC (Reduced Instruction Set Computer). Предимството му е първоначално малък набор от прости команди, които се обработват с минимални усилия. В резултат на това две процесорни архитектури - x86 и ARM - съжителстват мирно (всъщност не много мирно) на пазара на потребителска електроника, всяка от които има своите предимства и недостатъци.


    Архитектурата x86 се позиционира като по-универсална по отношение на задачите, с които може да се справя, включително дори ресурсоемки като редактиране на снимки, музика и видео, както и криптиране и компресиране на данни. На свой ред, ARM архитектурата превъзхожда благодарение на изключително ниската си консумация на енергия и като цяло достатъчна производителност за най-важните цели днес: изобразяване на уеб страници и възпроизвеждане на медийно съдържание.


    Бизнес модел на ARM Limited

    В момента ARM Limited се занимава само с разработването на референтни процесорни архитектури и тяхното лицензиране. Създаването на конкретни модели чипове и последващото им масово производство е работа на лицензополучателите на ARM, които са много. Сред тях има известни само в тесни кръгове компании като STMicroelectronics, HiSilicon и Atmel, както и ИТ гиганти, чиито имена са известни - Samsung, NVIDIA и Qualcomm. Пълният списък на компаниите лицензополучатели може да бъде намерен на съответната страница на официалния уебсайт на ARM Limited.


    Такъв голям брой лицензополучатели се дължи главно на изобилието от приложения за ARM процесори, а мобилните джаджи са само върхът на айсберга. Евтините и енергийно ефективни чипове се използват във вградени системи, мрежово оборудване и инструменти. Платежни терминали, външни 3G модеми и спортни монитори за сърдечен ритъм - всички тези устройства са базирани на процесорна архитектура ARM.


    Според анализаторите самата ARM Limited печели $0,067 под формата на авторски права за всеки произведен чип. Но това е много средна сума, тъй като цената на най-новите многоядрени процесори е значително по-висока от едноядрените чипове с остаряла архитектура.

    Едночипова система

    От техническа гледна точка, наричането на чипове с архитектура ARM процесори не е напълно правилно, тъй като в допълнение към едно или повече изчислителни ядра, те включват редица свързани компоненти. По-подходящи в случая са термините едночипова система и система върху чип (от англ. system on a chip).

    Така най-новите едночипови системи за смартфони и таблетни компютри включват RAM контролер, графичен ускорител, видео декодер, аудио кодек и допълнителни модули за безжична комуникация. Високоспециализираните чипове могат да включват допълнителни контролери за взаимодействие с периферни устройства като сензори.


    Индивидуалните компоненти на едночипова система могат да бъдат разработени или директно от ARM Limited, или от компании на трети страни. Ярък пример за това са графичните ускорители, които освен ARM Limited (Mali graphics) се разработват от Qualcomm (Adreno graphics) и NVIDIA (GeForce ULP graphics).

    Не трябва да забравяме и компанията Imagination Technologies, която не прави нищо друго освен да проектира графични ускорители PowerVR. Но притежава почти половината от световния пазар на мобилна графика: джаджи на Apple и Amazon, таблети Samsung Galaxy Tab 2, както и евтини смартфони, базирани на процесори MTK.

    Остарели поколения чипове

    Морално остарели, но все още широко използвани процесорни архитектури са ARM9 и ARM11, които принадлежат съответно към семействата ARMv5 и ARMv6.

    ARM9. ARM9 чиповете могат да достигнат тактова честота от 400 MHz и най-вероятно са това, което се намира във вашия безжичен рутер и по-стари, но все още надеждни мобилни телефони като Sony Ericsson K750i и Nokia 6300. Критичен за ARM9 чиповете е наборът от инструкции Jazelle, който позволява удобна работа с Java приложения (Opera Mini, Jimm, Foliant и др.).

    ARM11. Процесорите ARM11 се отличават с разширен набор от инструкции в сравнение с ARM9 и много по-висока тактова честота (до 1 GHz), въпреки че тяхната мощност също не е достатъчна за съвременни задачи. Въпреки това, поради ниската консумация на енергия и, не по-малко важно, цената, чиповете ARM11 все още се използват в смартфони от начално ниво: Samsung Galaxy Pocket и Nokia 500.

    Модерни поколения чипове

    Всички повече или по-малко нови чипове с архитектура ARM принадлежат към семейството ARMv7, чиито водещи представители вече са достигнали осем ядра и тактова честота над 2 GHz. Процесорните ядра, разработени директно от ARM Limited, принадлежат към линията Cortex и повечето производители на едночипови системи ги използват без значителни промени. Само Qualcomm и Apple са създали свои собствени модификации, базирани на ARMv7 - първият е нарекъл своите творения Scorpion и Krait, а вторият - Swift.


    ARM Cortex-A8.Исторически погледнато, първото процесорно ядро ​​от фамилията ARMv7 беше Cortex-A8, което формира основата за такива известни SoC за времето си като Apple A4 (iPhone 4 и iPad) и Samsung Hummingbird (Samsung Galaxy S и Galaxy Tab). Той демонстрира приблизително два пъти по-висока производителност в сравнение с предшественика ARM11. В допълнение, ядрото Cortex-A8 получи копроцесор NEON за обработка на видео с висока разделителна способност и поддръжка на приставката Adobe Flash.

    Вярно, всичко това се отрази негативно на консумацията на енергия на Cortex-A8, която е значително по-висока от тази на ARM11. Въпреки факта, че чиповете ARM Cortex-A8 все още се използват в бюджетни таблети (система с един чип Allwiner Boxchip A10), дните им на пазара очевидно са преброени.

    ARM Cortex-A9.След Cortex-A8, ARM Limited представи ново поколение чипове - Cortex-A9, който вече е най-разпространеният и заема средна ценова ниша. Производителността на ядрата Cortex-A9 се е увеличила приблизително три пъти в сравнение с Cortex-A8, а също така е възможно да се комбинират две или дори четири от тях на един чип.

    Копроцесорът NEON стана незадължителен: NVIDIA го премахна в своята едночипова система Tegra 2, решавайки да освободи повече място за графичния ускорител. Вярно, нищо добро не излезе от това, защото повечето приложения за видео плейъри все още разчитаха на изпитания във времето NEON.


    По време на „царуването“ на Cortex-A9 се появиха първите реализации на концепцията big.LITTLE, предложена от ARM Limited, според която едночиповите системи трябва да имат както мощни, така и слаби, но енергийно ефективни процесорни ядра. Първото внедряване на концепцията big.LITTLE беше системата-върху-чипа NVIDIA Tegra 3 с четири ядра Cortex-A9 (до 1,7 GHz) и пето енергоефективно придружаващо ядро ​​(500 MHz) за изпълнение на прости фонови задачи.

    ARM Cortex-A5 и Cortex-A7.При проектирането на процесорните ядра Cortex-A5 и Cortex-A7 ARM Limited преследва една и съща цел - да постигне компромис между минималната консумация на енергия на ARM11 и приемливата производителност на Cortex-A8. Те не са забравили за възможността за комбиниране на две или четири ядра - многоядрените чипове Cortex-A5 и Cortex-A7 постепенно се появяват в продажба (Qualcomm MSM8625 и MTK 6589).


    ARM Cortex-A15.Процесорните ядра Cortex-A15 станаха логично продължение на Cortex-A9 - в резултат на това за първи път в историята чиповете с архитектура ARM успяха да бъдат приблизително сравними по производителност с Intel Atom и това вече е голям успех. Не напразно Canonical посочи двуядрен процесор ARM Cortex-A15 или подобен Intel Atom в системните изисквания за версията на Ubuntu Touch OS с пълна многозадачност.


    Много скоро ще бъдат пуснати в продажба множество джаджи, базирани на NVIDIA Tegra 4 с четири ядра ARM Cortex-A15 и пето придружаващо ядро ​​Cortex-A7. След NVIDIA концепцията big.LITTLE беше подета от Samsung: „сърцето“ на смартфона Galaxy S4 беше чипът Exynos 5 Octa с четири ядра Cortex-A15 и същия брой енергийно ефективни ядра Cortex-A7.


    Бъдещи перспективи

    Мобилните джаджи, базирани на чипове Cortex-A15, все още не са се появили в продажба, но основните тенденции в по-нататъшното развитие на ARM архитектурата вече са известни. ARM Limited вече официално представи следващото семейство процесори ARMv8, чиито представители задължително ще бъдат 64-битови. Ядрата Cortex-A53 и Cortex-A57 откриват нова ера на RISC процесорите: първото е енергийно ефективно, второто е с висока производителност, но и двете могат да работят с големи количества RAM.

    Производителите на потребителска електроника все още не са се заинтересували особено от фамилията процесори ARMv8, но на хоризонта се появяват нови лицензополучатели, които планират да пуснат ARM чипове на сървърния пазар: AMD и Calxeda. Идеята е иновативна, но има право на живот: същите графични ускорители NVIDIA Tesla, състоящи се от голям брой прости ядра, са доказали своята ефективност на практика като сървърни решения.

    Компютърният свят се променя бързо. Настолните компютри загубиха първото място в класацията по продажби от лаптопите и са на път да отстъпят пазара на таблети и други мобилни устройства. Преди 10 години ценяхме чистите мегахерци, истинската мощност и производителност. Сега, за да завладее пазара, процесорът трябва да бъде не само бърз, но и икономичен. Много хора вярват, че ARM е архитектурата на 21 век. Така е?

    Ново - добре забравено старо

    Журналистите, следвайки хората от ARM PR, често представят тази архитектура като нещо напълно ново, което трябва да погребе побелелите x86.

    Всъщност ARM и x86, на базата на които са изградени процесорите Intel, AMD и VIA, инсталирани в лаптопи и настолни компютри, са почти на същата възраст. Първият x86 чип е пуснат през 1978 г. Проектът ARM официално стартира през 1983 г., но се основава на разработки, извършени почти едновременно със създаването на x86.


    Първите ARM впечатлиха експертите със своята елегантност, но с относително ниската си производителност не можаха да завладеят пазар, който изискваше високи скорости и не обръщаше внимание на ефективността. Трябваше да съществуват определени условия, за да скочи популярността на ARM.

    В началото на осемдесетте и деветдесетте години, със сравнително евтиното си масло, бяха търсени огромни SUV с мощни 6-литрови двигатели. Малко хора се интересуваха от електрически автомобили. Но в наше време, когато един барел петрол струва повече от 100 долара, големи коли с енергоемки двигатели са необходими само на богатите, останалите бързат да преминат към икономични автомобили. Подобно нещо се случи с ARM. Когато възникна въпросът за мобилността и ефективността, архитектурата се оказа много търсена.

    "Рисков" процесор

    ARM е RISC архитектура. Той използва намален набор от команди – RISC (компютър с намален набор от инструкции). Този тип архитектура се появява в края на седемдесетте години, приблизително по същото време, когато Intel предлага своя x86.


    Докато експериментират с различни компилатори и процесори за микрокод, инженерите забелязват, че в някои случаи поредици от прости команди се изпълняват по-бързо от една сложна операция. Беше решено да се създаде архитектура, която да включва работа с ограничен набор от прости инструкции, чието декодиране и изпълнение ще отнеме минимум време.


    Един от първите проекти за RISC процесор е осъществен от група студенти и преподаватели в университета Бъркли през 1981 г. Точно по това време британската компания Acorn се изправи пред предизвикателството на времето. Той произвеждаше образователни компютри BBC Micro, базирани на процесора 6502, които бяха много популярни в Мъгливия Албион.Но скоро тези домашни компютри започнаха да губят от по-модерните машини. Acorn имаше риск да загуби пазара. Инженерите на компанията, след като се запознаха със студентската работа върху RISC процесори, решиха, че създаването на собствен чип ще бъде доста просто. През 1983 г. стартира проектът Acorn RISC Machine, който по-късно става ARM. Три години по-късно е пуснат първият процесор.

    Първо ARM

    Той беше изключително прост. Първите ARM чипове дори нямаха инструкции за умножение и деление, които бяха представени от набор от по-прости инструкции. Друга особеност на чиповете бяха принципите на работа с паметта: всички операции с данни могат да се извършват само в регистри. В същото време процесорът работеше с така наречения регистров прозорец, тоест можеше да има достъп само до част от всички налични регистри, които бяха предимно универсални и тяхната работа зависеше от режима, в който се намираше процесорът. Това направи възможно изоставянето на кеша в първите версии на ARM.

    В допълнение, чрез опростяване на наборите от инструкции, разработчиците на архитектура успяха да се справят без редица други блокове. Например, първите ARM напълно липсваха микрокод, както и единица с плаваща запетая (FPU). Общият брой на транзисторите в първия ARM беше 30 000. В подобни x86 имаше няколко пъти или дори с порядък повече. Допълнителна икономия на енергия се постига чрез условно изпълнение на команди. Тоест, тази или онази операция ще бъде извършена, ако има съответен факт в регистъра. Това помага на процесора да избегне „ненужни движения“. Всички инструкции се изпълняват последователно. В резултат на това ARM загуби производителност, но не значително, като същевременно спечели значително консумация на енергия.

    Основните принципи на архитектурата остават същите като в първия ARM: работа с данни само в регистри, намален набор от инструкции, минимум допълнителни модули. Всичко това осигурява на архитектурата ниска консумация на енергия и относително висока производителност.

    За да увеличи това, ARM въведе няколко допълнителни набора инструкции през последните години. Наред с класическия ARM има Thumb, Thumb 2, Jazelle. Последният е предназначен да ускори изпълнението на Java код.

    Cortex - най-модерната ARM

    Cortex – модерни архитектури за мобилни устройства, вградени системи и микроконтролери. Съответно процесорите се обозначават като Cortex-A, вградените – Cortex-R и микроконтролерите – Cortex-M. Всички те са изградени на ARMv7 архитектура.

    Най-модерната и мощна архитектура в линията ARM е Cortex-A15. Предполага се, че на негова база ще се произвеждат предимно дву- или четириядрени модели. Cortex-A15 от всички предишни ARM е най-близо до x86 по отношение на броя и качеството на блоковете.


    Cortex-A15 се основава на процесорни ядра, оборудвани с FPU модул и набор от NEON SIMD инструкции, предназначени да ускорят обработката на мултимедийни данни. Ядрата имат 13-етапен конвейер, поддържат изпълнение на инструкции в свободен ред и ARM-базирана виртуализация.

    Cortex-A15 поддържа усъвършенствана система за адресиране на паметта. ARM остава 32-битова архитектура, но инженерите на компанията са се научили да конвертират 64-битово или друго усъвършенствано адресиране в 32-битово, удобно за процесора. Технологията се нарича Long Physical Address Extensions. Благодарение на него Cortex-A15 теоретично може да адресира до 1 TB памет.

    Всяко ядро ​​е оборудвано с кеш от първо ниво. Освен това има до 4 MB разпределен L2 кеш с ниска латентност. Процесорът е оборудван със 128-битова кохерентна шина, която може да се използва за комуникация с други устройства и периферни устройства.

    Ядрата, които са в основата на Cortex-A15, са разработка на Cortex-A9. Те имат подобна структура.


    Cortex-A9, за разлика от Cortex-A15, може да се произвежда както в многоядрена, така и в едноядрена версия. Максималната честота е 2,0 GHz, Cortex-A15 предполага възможността за създаване на чипове, работещи на честота от 2,5 GHz. Базираните на него чипове ще се произвеждат по 40 nm и по-тънки технически процеси. Cortex-A9 се произвежда по 65 и 40 nm технологични процеси.

    Cortex-A9, подобно на Cortex-A15, е предназначен за използване във високопроизводителни смартфони и таблети, но не е подходящ за по-сериозни приложения, например в сървъри. Само Cortex-A15 има хардуерна виртуализация, разширено адресиране на паметта. Освен това наборът от инструкции NEON Advanced SIMD и FPU са по избор в Cortex-A9, докато са задължителни в Cortex-A15.

    Cortex-A8 постепенно ще изчезне от сцената в бъдеще, но засега този едноядрен вариант ще намери приложение в бюджетните смартфони. Евтиното решение, вариращо от 600 MHz до 1 GHz, осигурява балансирана архитектура. Има FPU модул и поддържа първата версия на SIMD NEON. Cortex-A8 предполага един технологичен процес - 65 nm.

    ARM от предишни поколения


    Процесорите ARM11 са доста разпространени на мобилния пазар. Те са изградени на базата на архитектурата ARMv6 и нейните модификации. Характеризира се с 8-9-степенни конвейери, поддръжка на Jazelle, която спомага за ускоряване на обработката на Java код, инструкции за SIMD поток, Thumb-2.

    Процесорите XScale, ARM10E, ARM9E са базирани на архитектурата ARMv5 и нейните модификации. Максималната дължина на конвейера е 6 етапа, Thumb, Jazelle DBX, Enhanced DSP. XScale чиповете имат кеш от второ ниво. Процесорите са били използвани в смартфони от средата на 2000-те, днес те могат да бъдат намерени в някои евтини мобилни телефони.


    ARM9TDMI, ARM8, StrongARM - представители на ARMv4, който има 3-5 етапен конвейер и поддържа Thumb. ARMv4, например, може да се намери в първите класически iPod.

    ARM6 и ARM7 принадлежат към ARMv3. В тази архитектура за първи път се появи модулът FPU; беше реализирано 32-битово адресиране на паметта, а не 26-битово, както в първите примери на архитектурата. ARMv2 и ARMv1 бяха технически 32-битови чипове, но в действителност работеха активно само с 26-битово адресно пространство. Кешът се появи за първи път в ARMv2.

    Името им е легион

    Първоначално Acorn нямаше намерение да стане играч на пазара на процесори. Задачата на проекта ARM беше да създаде чип от собствено производство за производство на компютри - именно създаването на персонални компютри Acorn смяташе за основен бизнес.


    ARM еволюира от група за разработка в компания благодарение на Apple. През 1990 г. Apple, заедно с VLSI и Acorn, започват да разработват евтин процесор за първия джобен компютър, Newton. За тези цели беше създадена отделна компания, която получи името на вътрешния проект Acorn - ARM.

    С участието на Apple е създаден процесор ARM6, който е най-близък до съвременните чипове от английски разработчик. В същото време DEC успя да патентова архитектурата ARM6 и започна да произвежда чипове под марката StrongARM. Няколко години по-късно технологията беше прехвърлена на Intel като част от друг патентен спор. Микропроцесорният гигант създаде свой собствен аналог - процесорът XScale, базиран на ARM. Но в средата на предишното десетилетие Intel се отърва от този „неосновен актив“, фокусирайки се изключително върху x86. XScale премина в ръцете на Marvell, която вече лицензира ARM.

    Първоначално ARM, която беше нова за света, не можеше да произвежда процесори. Ръководството му избра друг начин за правене на пари. Архитектурата на ARM беше проста и гъвкава. Първоначално ядрото дори нямаше кеш, така че впоследствие допълнителни модули, включително FPU, контролери не бяха тясно интегрирани в процесора, а бяха, така да се каже, прикрепени към основата.

    Съответно, ARM се сдоби с интелигентен дизайнер, който позволи на технологично напреднали компании да създават процесори или микроконтролери, които да отговарят на техните нужди. Това става с помощта на така наречените копроцесори, които могат да разширят стандартната функционалност. Общо архитектурата поддържа до 16 копроцесора (номера от 0 до 15), но номер 15 е запазен за копроцесора, който изпълнява функциите за управление на кеша и паметта.

    Периферните устройства се свързват към ARM чипа, като картографират своите регистри към пространството на паметта на процесора или копроцесора. Например, чипът за обработка на изображения може да се състои от сравнително просто ядро, базирано на ARM7TDMI, и копроцесор, който осигурява декодиране на HDTV сигнал.


    ARM започна да лицензира своята архитектура. Други компании вече го прилагат в силиций, включително Texas Instruments, Marvell, Qualcomm, Freescale, но също така и напълно неосновни като Samsung, Nokia, Nintendo или Canon.

    Липсата на собствени фабрики, както и впечатляващите лицензионни такси, позволиха на ARM да бъде по-гъвкав в разработването на нови версии на архитектурата. Компанията ги опече като топъл хляб, навлизайки в нови ниши. В допълнение към смартфоните и таблетите, архитектурата се използва в специализирани процесори, например в GPS навигатори, цифрови фотоапарати и видеокамери. На негова база се създават индустриални контролери и други чипове за вградени системи.

    Системата за лицензиране на ARM е истински хипермаркет за микроелектроника. Компанията лицензира не само нови, но и наследени архитектури. Последният може да се използва за създаване на микроконтролери или чипове за евтини устройства. Разбира се, нивото на лицензионните такси зависи от степента на новост и сложност на архитектурния вариант, който представлява интерес за производителя. Традиционно техническите процеси, за които ARM разработва процесори, изостават с 1-2 стъпки от тези, които се считат за подходящи за x86. Високата енергийна ефективност на архитектурата я прави по-малко зависима от прехода към нови технологични стандарти. Intel и AMD се стремят да правят по-тънки чипове, за да увеличат честотите и броя на ядрата, като същевременно поддържат физическия размер и консумацията на енергия. ARM по своята същност има по-ниски изисквания за мощност и също така осигурява по-високи нива на производителност на ват.

    Характеристики на процесори NVIDIA, TI, Qualcomm, Marvell

    Чрез лицензирането на ARM наляво и надясно разработчиците засилиха позицията на своята архитектура за сметка на компетенциите на своите партньори. Класически пример в случая е NVIDIA Tegra. Тази линия системи на чип е базирана на ARM архитектура, но NVIDIA вече има свои много сериозни разработки в областта на 3D графиката и системната логика.


    ARM дава на своите лицензодатели широка свобода на преценка за препроектиране на архитектурата. Съответно инженерите на NVIDIA успяха да комбинират в Tegra силните страни на ARM (CPU computing) и собствените си продукти - работа с триизмерна графика и т.н. В резултат Tegra има най-високата 3D производителност за своя клас процесори. Те са с 25-30% по-бързи от PowerVR, използван от Samsung и Texas Instruments, и са почти два пъти по-бързи от Adreno, разработен от Qualcomm.

    Други производители на процесори, базирани на ARM архитектурата, укрепват определени допълнителни блокове и подобряват чиповете, за да постигнат по-високи честоти и производителност.


    Например, Qualcomm не използва референтния дизайн на ARM. Инженерите на компанията са го преработили сериозно и са го нарекли Scorpio – той е в основата на чиповете Snapdragon. Дизайнът е частично преработен, за да поеме по-сложни технически процеси от тези, предоставени от стандартния IP ARM. В резултат на това първите Snapdragon бяха произведени на 45 nm, което им осигури по-високи честоти. А новото поколение на тези процесори с декларирани 2,5 GHz може дори да стане най-бързият сред аналозите, базирани на ARM Cortex-A9. Qualcomm използва и собствено графично ядро ​​Adreno, създадено на базата на разработки, закупени от AMD. Така че в известен смисъл Snapdragon и Tegra са врагове на генетично ниво.


    При създаването на Hummingbird Samsung също пое по пътя на оптимизиране на архитектурата. Корейците, заедно с компанията Intrinsity, промениха логиката, като по този начин намалиха броя на инструкциите, необходими за извършване на определени операции. Така успяхме да спечелим 5-10% от производителността. Освен това бяха добавени динамичен L2 кеш и мултимедийно разширение ARM NEON. Корейците използваха PowerVR SGX540 като графичен модул.


    Texas Instruments в новата си серия OMAP, базирана на архитектурата ARM Cortex-A, добави специален IVA модул, отговорен за ускоряване на обработката на изображения. Тя ви позволява бързо да обработвате данни, идващи от сензора към вградената камера. В допълнение, той е свързан с ISP и помага при видео ускорение. OMAP също използва PowerVR графики.


    Apple A4 има голям 512 KB кеш, използва PowerVR графика, а самото ARM ядро ​​е изградено върху вариант на архитектурата, преработена от Samsung.


    Двуядреният Apple A5, който дебютира в iPad 2 в началото на 2011 г., е базиран на архитектурата ARM Cortex-A9, точно като тази, оптимизирана преди това от Samsung. В сравнение с A4, новият чип има двойно повече кеш памет от второ ниво - тя е увеличена до 1 MB. Процесорът съдържа двуканален RAM контролер и има подобрено видео устройство. В резултат на това той се представя два пъти по-добре от Apple A4 при някои задачи.

    Marvell предлага чипове, базирани на собствената си архитектура Sheeva, която при по-внимателно разглеждане се оказва хибрид на XScale, закупен някога от Intel, и ARM. Тези чипове имат по-голямо количество кеш памет в сравнение с аналозите и са оборудвани със специален мултимедиен модул.

    В момента лицензополучателите на ARM произвеждат само чипове, базирани на архитектурата ARM Cortex-A9. В същото време, въпреки че ви позволява да създавате четириядрени варианти, NVIDIA, Apple, Texas Instruments и други все още са ограничени до модели с едно или две ядра. Освен това чиповете работят на честоти до 1,5 GHz. Cortex-A9 ви позволява да правите процесори с 2 GHz, но отново производителите не се опитват бързо да увеличат честотите - в края на краищата засега на пазара ще има достатъчно двуядрени процесори на 1,5 GHz.

    Процесорите, базирани на Cortex-A15, трябва да станат наистина многоядрени, но дори и да бъдат обявени, те са само на хартия. Появата им в силиций трябва да се очаква през следващата година.

    Модерни ARM лицензополучатели процесори, базирани на Cortex-A9:


    x86 е основният претендент

    x86 е представител на CISC архитектурите. Те използват пълния набор от команди. Една инструкция в този случай изпълнява няколко операции на ниско ниво. Програмният код, за разлика от ARM, е по-компактен, но не се изпълнява толкова бързо и изисква повече ресурси. Освен това от самото начало x86 бяха оборудвани с всички необходими блокове, което предполагаше както тяхната гъвкавост, така и лакомия. Допълнителна енергия беше изразходвана за безусловно, паралелно изпълнение на команди. Това ви позволява да постигнете предимство в скоростта, но някои операции се извършват напразно, защото не отговарят на предишните условия.

    Това бяха класическите x86, но започвайки с 80486, Intel де факто създаде вътрешно RISC ядро, което изпълнява CISC инструкции, преди това разложени на по-прости инструкции. Съвременните процесори Intel и AMD имат еднакъв дизайн.

    Windows 8 и ARM

    ARM и x86 днес се различават преди по-малко от 30 години, но все още се основават на различни принципи, което ги разделя в различни ниши на пазара на процесори. Архитектурите може би никога нямаше да се пресекат, ако самият компютър не се беше променил.

    Мобилността и рентабилността са на първо място и повече внимание се обръща на смартфоните и таблетите. Apple прави много пари от мобилни джаджи и свързаната с тях инфраструктура. Microsoft не иска да изостава и вече втора година се опитва да се наложи на пазара на таблети. Google е доста успешен.

    Настолният компютър се превръща предимно в работен инструмент, нишата на домашния компютър е заета от таблети и специализирани устройства. В тези условия Microsoft ще предприеме безпрецедентна стъпка. . Все още не е напълно ясно до какво ще доведе това. Ще получим две версии на операционната система или една, която ще работи и с двете архитектури. Поддръжката на ARM на Microsoft ще убие ли x86 или не?


    Все още има малко информация. Microsoft демонстрира Windows 8, работещ на устройство с ARM процесор по време на CES 2011. Стив Балмър показа, че на платформата ARM с помощта на Windows можете да гледате видеоклипове, да работите с изображения, да сърфирате в Интернет - Internet Explorer дори работи с хардуерно ускорение - свържете USB- устройства, печат на документи. Най-важното в тази демонстрация беше наличието на Microsoft Office, работещ на ARM без участието на виртуална машина. На презентацията бяха показани три джаджи, базирани на процесори от Qualcomm, Texas Instruments и NVIDIA. Windows имаше стандартна обвивка „седем“, но представители на Microsoft обявиха ново, преработено системно ядро.

    Windows обаче не е само операционна система, създадена от инженерите на Microsoft, но и милиони програми. Някои софтуери са критични за хората в много професии. Например пакетът Adobe CS. Ще поддържа ли компанията ARM-Windows версия на софтуера или новото ядро ​​ще позволи на Photoshop и други популярни приложения да работят на компютри с NVIDIA Tegra или други подобни чипове без допълнителни модификации на кода?

    Освен това възниква въпросът с видеокартите. В днешно време видеокартите за лаптопи се правят чрез оптимизиране на консумацията на енергия на настолните графични чипове - архитектурно са еднакви. В същото време сега видеокартата е нещо като „компютър в компютъра“ - има собствена ултра-бърза RAM и собствен изчислителен чип, който значително превъзхожда конвенционалните процесори при специфични задачи. От само себе си се разбира, че приложенията, които работят с 3D графики, са подходящо оптимизирани за тях. Да, и различни програми за редактиране на видео и графични редактори (по-специално Photoshop от версия CS4), а наскоро и браузъри използват хардуерно ускорение с помощта на графични процесори.

    Разбира се, в Android, MeeGo, BlackBerry OS, iOS и други мобилни системи е направена необходимата оптимизация за различните мобилни (по-точно ултрамобилни) ускорители на пазара. Те обаче не се поддържат в Windows. Драйверите, разбира се, ще бъдат написани (и вече са написани - процесорите от серията Intel Atom Z500 идват с чипсет, който интегрира графичното ядро ​​на PowerVR SGX 535 „смартфон“), но оптимизацията на приложенията за тях може да закъснее, ако изобщо .

    Очевидно „ARM на работния плот“ няма да се хване. Може би в системи с ниска мощност, на които ще имат достъп до интернет и ще гледат филми. На неттопите като цяло. Така че ARM засега се опитва само да се прицели в нишата, която заема Intel Atom и където AMD сега активно преследва със своята платформа Brazos. И тя, очевидно, частично ще успее. Освен ако и двете процесорни компании не измислят нещо много конкурентно.

    На някои места Intel Atom и ARM вече се конкурират. Те се използват за създаване на мрежово съхранение на данни и сървъри с ниска мощност, които могат да обслужват малък офис или апартамент. Има и няколко търговски проекта на клъстери, базирани на рентабилни чипове на Intel. Характеристиките на новите процесори, базирани на ARM Cortex-A9, позволяват използването им за поддръжка на инфраструктура. Така след няколко години може да получим ARM сървъри или ARM-NAS за малки локални мрежи и не може да се изключи появата на уеб сървъри с ниска мощност.

    Първи спаринг

    Основният конкурент на ARM от страна на x86 е Intel Atom и сега можем да добавим . Сравнението на x86 и ARM беше извършено от Ван Смит, който създаде OpenSourceMark, тестовите пакети miniBench и един от съавторите на SiSoftware Sandra. Atom N450, Freescale i.MX515 (Cortex-A8), VIA Nano L3050 взеха участие в „надпреварата“. Честотите на x86 чиповете бяха намалени, но те все още имаха предимство поради по-модерната памет.

    Резултатите се оказаха много интересни. Чипът ARM се оказа толкова бърз, колкото и неговите конкуренти в целочислените операции, като същевременно консумира по-малко енергия. Тук няма нищо изненадващо. Първоначално архитектурата беше едновременно доста бърза и икономична. В операциите с плаваща запетая ARM беше по-нисък от x86. Традиционно мощният FPU модул, открит в чиповете на Intel и AMD, оказа влияние тук. Нека си припомним, че се появи в ARM сравнително наскоро. Задачите, които попадат на FPU, заемат значително място в живота на съвременния потребител - това са игри, видео и аудио кодиране и други операции за стрийминг. Разбира се, тестовете, проведени от Ван Смит, вече не са толкова актуални днес. ARM значително засили слабостите на своята архитектура във версиите на Cortex-A9 и особено Cortex-A15, които например вече могат да изпълняват инструкции безусловно, паралелизирайки решаването на проблеми.

    Перспективи за ARM

    И така, коя архитектура трябва да изберете в крайна сметка, ARM или x86? Най-правилно би било да заложите и на двете. Днес живеем в условия на преформатиране на компютърния пазар. През 2008 г. се предричаше светло бъдеще на нетбуците. Евтините компактни лаптопи трябваше да станат основният компютър за повечето потребители, особено на фона на световната криза. Но тогава икономиката започна да се възстановява и се появи iPad. Сега таблетите са обявени за крале на пазара. Таблетът обаче е добър като конзола за забавление, но не е много удобен за работа, главно поради сензорното въвеждане - писането на тази статия на iPad би било много трудно и отнема много време. Ще издържат ли таблетите изпитанието на времето? Може би след няколко години ще измислим нова играчка.

    Но все пак в мобилния сегмент, където не се изисква висока производителност и активността на потребителите е ограничена главно до забавление и не е свързана с работа, ARM изглежда за предпочитане пред x86. Те осигуряват приемливо ниво на производителност, както и дълъг живот на батерията. Опитите на Intel да осъществи Atom засега са неуспешни. ARM поставя нов стандарт за производителност на ват. Най-вероятно ARM ще има успех в компактните мобилни джаджи. Те също могат да станат лидери на пазара на нетбуци, но тук всичко зависи не толкова от разработчиците на процесори, колкото от Microsoft и Google. Ако първият внедрява нормална поддръжка на ARM в Windows 8, а вторият довежда до изпълнение Chrome OS. Досега смартбуците, предложени от Qualcomm, не са стигнали до пазара. Нетбуците, базирани на x86, оцеляха.

    Според ARM, пробив в тази посока трябва да направи архитектурата Cortex-A15. Компанията препоръчва базирани на него дву- и четириядрени процесори с честота 1,0-2,0 GHz за системи за домашно забавление, които ще комбинират медиен плейър, 3D телевизор и интернет терминал. Четириядрените чипове с честота 1,5-2,5 GHz могат да станат основата на домашни и уеб сървъри. И накрая, най-амбициозният случай на използване на Cortex-A15 е безжичната мрежова инфраструктура. Тук могат да се използват чипове с четири или повече ядра и честота 1,5-2,5 GHz.

    Но засега това са само планове. Cortex-A15 беше представен от ARM през септември миналата година. Cortex-A9 беше показан от компанията през октомври 2007 г., две години по-късно компанията представи варианта A9 с възможност за повишаване на честотата на чиповете до 2.0 GHz. За сравнение, NVIDIA Tegra 2 - едно от най-популярните решения, базирани на Cortex-A9 - беше пусната едва през януари миналата година. Е, потребителите успяха да докоснат първите джаджи, базирани на него след още шест месеца.

    Сегментът на работните компютри и високопроизводителните решения ще останат с x86. Това няма да означава смърт на архитектурата, но в парично изражение Intel и AMD трябва да се подготвят за загубата на част от приходите, които ще отидат при производителите на ARM процесори.



    Свързани публикации