Предназначение процессора ARM Cortex-R. Чем архитектура ARM отличается от x86

16.07.2019

В наше время существует две самые популярные архитектуры процессоров. Это x86, которая была разработана еще 80х годах и используется в персональных компьютерах и ARM - более современная, которая позволяет сделать процессоры меньше и экономнее. Она используется в большинстве мобильных устройств или планшетов.

Обе архитектуры имеют свои плюсы и минусы, а также сферы применения, но есть и общие черты. Многие специалисты говорят, что за ARM будущее, но у нее остаются некоторые недостатки, которых нет в x86. В нашей сегодняшней статье мы рассмотрим чем архитектура arm отличается от x86. Рассмотрим принципиальные отличия ARM или x86, а также попытаемся определить что лучше.

Процессор - это основной компонент любого вычислительного устройства, будь то смартфон или компьютер. От его производительности зависит то, насколько быстро будет работать устройство и сколько оно сможет работать от батареи. Если говорить просто, то архитектура процессора - это набор инструкций, которые могут использоваться при составлении программ и реализованы на аппаратном уровне с помощью определенных сочетаний транзисторов процессора. Именно они позволяют программам взаимодействовать с аппаратным обеспечением и определяют каким образом будут передаваться данные в память и считываться оттуда.

На данный момент существуют два типа архитектур: CISC (Complex Instruction Set Computing) и RISC (Reduced Instruction Set Computing). Первая предполагает, что в процессоре будут реализованы инструкции на все случаи жизни, вторая, RISC - ставит перед разработчиками задачу создания процессора с набором минимально необходимых для работы команд. Инструкции RISC имеют меньший размер и более просты.

Архитектура x86

Архитектура процессора x86 была разработана в 1978 году и впервые появилась в процессорах компании Intel и относится к типу CISC. Ее название взято от модели первого процессора с этой архитектурой - Intel 8086. Со временем, за неимением лучшей альтернативы эту архитектуру начали поддерживать и другие производители процессоров, например, AMD. Сейчас она является стандартом для настольных компьютеров, ноутбуков, нетбуков, серверов и других подобных устройств. Но также иногда процессоры x86 применяются в планшетах, это довольно привычная практика.

Первый процессор Intel 8086 имел разрядность 16 бит, далее в 2000 годах вышел процессор 32 битной архитектуры, и еще позже появилась архитектура 64 бит. Мы подробно рассматривали в отдельной статье. За это время архитектура очень сильно развилась были добавлены новые наборы инструкций и расширения, которые позволяют очень сильно увеличить производительность работы процессора.

В x86 есть несколько существенных недостатков. Во-первых - это сложность команд, их запутанность, которая возникла из-за длинной истории развития. Во-вторых, такие процессоры потребляют слишком много энергии и из-за этого выделяют много теплоты. Инженеры x86 изначально пошли по пути получения максимальной производительности, а скорость требует ресурсов. Перед тем, как рассмотреть отличия arm x86, поговорим об архитектуре ARM.

Архитектура ARM

Эта архитектура была представлена чуть позже за x86 - в 1985 году. Она была разработана известной в Британии компанией Acorn, тогда эта архитектура называлась Arcon Risk Machine и принадлежала к типу RISC, но затем была выпущена ее улучшенная версия Advanted RISC Machine, которая сейчас и известна как ARM.

При разработке этой архитектуры инженеры ставили перед собой цель устранить все недостатки x86 и создать совершенно новую и максимально эффективную архитектуру. ARM чипы получили минимальное энергопотребление и низкую цену, но имели низкую производительность работы по сравнению с x86, поэтому изначально они не завоевали большой популярности на персональных компьютерах.

В отличие от x86, разработчики изначально пытались получить минимальные затраты на ресурсы, они имеют меньше инструкций процессора, меньше транзисторов, но и соответственно меньше всяких дополнительных возможностей. Но за последние годы производительность процессоров ARM улучшалась. Учитывая это, и низкое энергопотребление они начали очень широко применяться в мобильных устройствах, таких как планшеты и смартфоны.

Отличия ARM и x86

А теперь, когда мы рассмотрели историю развития этих архитектур и их принципиальные отличия, давайте сделаем подробное сравнение ARM и x86, по различным их характеристикам, чтобы определить что лучше и более точно понять в чем их разница.

Производство

Производство x86 vs arm отличается. Процессоры x86 производят только две компании Intel и AMD. Изначально эта была одна компания, но это совсем другая история. Право на выпуск таких процессоров есть только у этих компаний, а это значит, что и направлением развития инфраструктуры будут управлять только они.

ARM работает совсем по-другому. Компания, разрабатывающая ARM, не выпускает ничего. Они просто выдают разрешение на разработку процессоров этой архитектуры, а уже производители могут делать все, что им нужно, например, выпускать специфические чипы с нужными им модулями.

Количество инструкций

Это главные различия архитектуры arm и x86. Процессоры x86 развивались стремительно, как более мощные и производительные. Разработчики добавили большое количество инструкций процессора, причем здесь есть не просто базовый набор, а достаточно много команд, без которых можно было бы обойтись. Изначально это делалось чтобы уменьшить объем памяти занимаемый программами на диске. Также было разработано много вариантов защит и виртуализаций, оптимизаций и многое другое. Все это требует дополнительных транзисторов и энергии.

ARM более прост. Здесь намного меньше инструкций процессора, только те, которые нужны операционной системе и реально используются. Если сравнивать x86, то там используется только 30% от всех возможных инструкций. Их проще выучить, если вы решили писать программы вручную, а также для их реализации нужно меньше транзисторов.

Потребление энергии

Из предыдущего пункта выплывает еще один вывод. Чем больше транзисторов на плате, тем больше ее площадь и потребление энергии, правильно и обратное.

Процессоры x86 потребляют намного больше энергии, чем ARM. Но на потребление энергии также влияет размер самого транзистора. Например, процессор Intel i7 потребляет 47 Ватт, а любой процессор ARM для смартфонов - не более 3 Ватт. Раньше выпускались платы с размером одного элемента 80 нм, затем Intel добилась уменьшения до 22 нм, а в этом году ученые получили возможность создать плату с размером элемента 1 нанометр. Это очень сильно уменьшит энергопотребление без потерь производительности.

За последние годы потребление энергии процессорами x86 очень сильно уменьшилось, например, новые процессоры Intel Haswell могут работать дольше от батареи. Сейчас разница arm vs x86 постепенно стирается.

Тепловыделение

Количество транзисторов влияет еще на один параметр - это выделение тепла. Современные устройства не могут преобразовывать всю энергию в эффективное действие, часть ее рассеивается в виде тепла. КПД плат одинаковый, а значит чем меньше транзисторов и чем меньше их размер - тем меньше тепла будет выделять процессор. Тут уже не возникает вопрос ARM или x86 будет выделять меньше теплоты.

Производительность процессоров

ARM изначально не были заточены для максимальной производительности, это область преуспевания x86. Отчасти этому причина меньше количество транзисторов. Но в последнее время производительность ARM процессоров растет, и они уже могут полноценно использоваться в ноутбуках или на серверах.

Выводы

В этой статье мы рассмотрели чем отличается ARM от x86. Отличия довольно серьезные. Но в последнее время грань между обоими архитектурами стирается. ARM процессоры становятся более производительными и быстрыми, а x86 благодаря уменьшению размера структурного элемента платы начинают потреблять меньше энергии и выделять меньше тепла. Уже можно встретить ARM процессор на серверах и в ноутбуках, а x86 на планшетах и в смартфонах.

А как вы относитесь к этим x86 и ARM? За какой технологией будущее по вашему мнению? Напишите в комментариях! Кстати, .

На завершение видео о развитии арихтектуры ARM:

Ответ - для приложений с повышенной функциональной безопасностью. По крайней мере ядра ARM Cortex-R в высокопроизводительных «реальновременных» микроконтроллерах компании Texas Instruments для этого и применяются.


Хотя процессоры Cortex-R практически полностью совместимы с процессорами Cortex-A и Cortex-M в плане набора инструкций, все-таки между ними есть существенные различия. В частности, ядро Cortex-R характеризуется более высокой производительностью по сравнению с Cortex-M, и в то же время оно может выполнять детерминированные операции, чего сложно добиться на процессорах приложений Cortex-A. Так что с точки зрения производительности Cortex-R располагается между Cortex-M и Cortex-A, но в то же время может применяться как в микроконтроллерах, так и в процессорах.


Ядро Cortex-R построено по гарвардской архитектуре и обеспечивает высокую тактовую частоту благодаря 8-ступенчатому конвейеру и суперскалярному выполнению инструкций. Аппаратные SIMD-инструкции позволяют осуществлять высокопроизводительную цифровую обработку сигналов и работу с медиа-данными. Кроме того, Cortex-M характеризуется такими увеличивающими производительность особенностями, как блок предвыборки инструкций, блок предсказания ветвлений и аппаратный делитель. Такие архитектурные компоненты помогают процессорам Cortex-R4 и Cortex-R5 достигнуть высоких показателей производительности DMIPS/МГц. Другой интересной особенностью ядра Cortex-R является то, что конвейер операций с плавающей точкой, совместимый со стандартом IEEE-754, поддерживает форматы как одинарной точности (32 бита), так и двойной точности (64 бита), и работает параллельно с конвейером операций над числами с фиксированной точкой.



Благодаря тесно связанной с процессором памяти с малой задержкой отклики на события реального времени происходят максимально быстро, также максимально быстро выполняется обработка прерываний. Эти возможности, а также высокая производительность и детерминизм ядра Cortex-R, позволяют соответствовать требованиям приложений реального времени, для которых также необходима функциональная безопасность.


Если вы работаете в отрасли, связанной с обеспечением безопасности и надежности устройств, то, наверно, слышали о функциональной безопасности программируемых электронных компонентов, и в первую очередь в голову может прийти стандарт IEC 61508. Это основной международный стандарт безопасности, существующий около 20 лет и соблюдаемый во многих отраслях. Функциональная безопасность предусматривается на транспорте (аэрокосмическая, железнодорожная и автомобильная отрасли), в промышленности, медицине, возобновляемой энергетике и других областях. В этих отраслях либо были разработаны собственные стандарты безопасности, либо были адаптированы международные стандарты, например, IEC 61508. Особо следует отметить, что в 2012 году в автомобильной промышленности был утвержден собственный стандарт функциональной безопасности ISO 26262.


Так, чем же хорош Cortex-R в плане функциональной безопасности? В первую очередь уникальными конфигурационными особенностями, позволяющими осуществлять коррекцию ошибок. Эти особенности являются опциями, которые компания ARM встроила прямо в ядро, и которые включают функции обнаружения и исправления ошибок, защищающие шины и системы памяти первого уровня, пользовательский и привилегированный режимы работы программного обеспечения с блоком защиты памяти (MPU) и поддержку конфигурации dual-core Lock Step (DCLS).


Что же такое DCLS и зачем оно нужно? Если вы инженер-программист и работаете над проектом, предусматривающим надежную и безопасную работу устройства, то DCLS сделает вашу жизнь намного проще. Это особенно полезно, если вы используете два микроконтроллера или два независимых ядра для диагностики ошибок в одном ядре.


При работе с независимым ядром имеется пара специфичных проблем. Во-первых, вам нужно писать «лишний» код для каждого микроконтроллера, который будет мониторить другой микроконтроллер. Во-вторых, теперь вам нужно сделать этот код основной частью вашего модуля системной безопасности, это означает, что вы должны в каждой строчке данного кода предусмотреть надежность и безопасность дальнейшей работы. Благодаря DCLS этот «лишний» код, а также необходимость его обезопасить уходят в прошлое. Конечно, разработчику все равно предстоит написать много строк связанного с безопасностью кода, но данный механизм все же позволяет облегчить ему жизнь.


Для простоты понимания механизм DCLS можно представить как сочетание основного процессора и проверочного модуля. С точки зрения программиста программирование такой системы не будет отличаться от программирования обычного одноядерного микроконтроллера. Второе ядро, то есть проверочный модуль, наряду с логикой сравнения выполняет работу описанного выше «лишнего» кода, а также много чего еще. Логика сравнения может обнаружить ошибку за несколько циклов процессора в то время, как дискретное ядро может потратить на это сотни или даже тысячи циклов. Поэтому DCLS гораздо быстрее в деле обнаружения ошибок и может сэкономить драгоценное время при разработке надежного кода.

Процессоры ARM – что это такое и «с чем их едят». Появление на рынке производительных мобильных процессоров во многом стало настоящим революционным прорывом. Можно сказать, впервые у x86-архитектуры появился весомый конкурент, который если на первых этапах и занимал только лишь соседствующую нишу, то уже сегодня начинает всерьез теснить позиции долгожителя компьютерной индустрии.

Но в чем же отличие? Что такое архитектура ARM и чем она отличается от x86? В последней, используемой в процессорах Intel и AMD, применяется набор CISC-команд. Обработка на их основе очень функциональна, открывает просторы для программистов и разработчиков железа, но требует немалого количества энергоресурсов. Суть CISC, грубо говоря, заключается в том, что каждая поступаемая команда декодируется в простейший элемент и только потом обрабатывается.

В ARM все иначе. Она действует на основе RISC-команд, которые уже содержат готовый набор простейших элементов. Это уменьшает процессорную гибкость, но в разы увеличивается скорость обработки данных, и соответственно, уменьшает энергозатраты такого процессора.

Отсюда и получается, что x86 – это универсальная архитектура, пригодная для решения многих задач, в то время как ARM требует более тонкой заточки железа и возможности такой архитектуры несколько более ограничены. Однако возможности ARM становятся все более масштабными. Уже сейчас такие процессоры пригодны для стандартной офисной работы, воспроизведения медиа-контента, работы в интернете.

ARM быстро развивается, чему способствует и тот факт, что над данной технологией по франчайзингу трудятся десятки конкурентных брендов, в то время как над x86-архитектурой трудятся всего две корпорации, представители которых едва ли не прямо говорят о том, что в сегменте застой… а про ARM такого не скажешь.

Говоря о том, что такое чипы ARM следует отметить такой момент, как комплексность предлагаемых современных мобильных систем. ARM – это не просто один процессор. Как правило, в него входят: контроллер оперативной памяти, графический ускоритель, видеодекодер, аудиоокодек и опционально модули беспроводной связи. Такая система называется однокристальной. Другими словами, ARM – это чип на чипе.

На сегодняшний день ARM насчитывают несколько процессорных поколений:

ARM9 . Чипы ARM9 могут достигать тактовой частоты 400 МГц. Эти чипы морально устарели, но по прежнему пользуются спросом. Например, в беспроводных маршрутизаторах и терминалах оплаты. Набор простых команд такого чипа позволяет с легкостью запускать многие Java-приложения.

ARM11 . Процессоры ARM11 могут похвастаться более полным набором простых команд, расширяющих их функционал и высокой тактовой частотой (вплоть до 1 ГГц). Благодаря невысокому энергопотреблению и низкой себестоимости чипы ARM11 до сих пор применяются в смартфонах начального уровня.

ARMv7. Современные чипы архитектуры ARM принадлежат к семейству ARMv7, флагманские представители которого уже достигли отметки в восемь ядер и тактовой частоты свыше 2 ГГц. Разработанные непосредственно ARM Limited процессорные ядра принадлежат к линейке Cortex и большинство производителей однокристальных систем используют их без существенных изменений.

ARM Cortex-A8. Исторически первым процессорным ядром семейства ARMv7 было Cortex-A8, которое легло в основу таких известных SoC своего времени как Apple A4 (iPhone 4 и iPad) и Samsung Hummingbird (Samsung Galaxy S и Galaxy Tab). Оно демонстрирует примерно вдвое более высокую производительность по сравнению с предшествующим ARM11, и увы, более высокое энергопотребление, что делает данный чип ныне крайне непопулярным.

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

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 в системных требования к версии ОС Ubuntu Touch с полноценной многозадачностью указала двухъядерный процессор ARM Cortex-A15 или аналогичный Intel Atom.

Чипы ARM ждет великое будущее. Количество команд, частота работы, количество ядер активно растут, а энергопотребление продолжает оставаться на низком уровне. В будущем чипы ARM станут пригодными для полноформатной многозадачности, ныне свойственной лишь x86-системам. Однако, даже с условиями нынешнего вектора развития, говорить о том, что сегмент потребительской электроники полностью перейдет на чипы ARM – пока рано. И дело здесь, прежде всего, в цене. Стоимость мобильных чипов растет с геометрической прогрессией, в то время, как x86 продолжает дешеветь. Именно фактор цены наряду с разницей в функциональности, которая несколько будет преодолена, и складывается вполне понятный прогноз того, что развитые ARM-системы не скоро одержат безоговорочную победу в гонке за своего потребителя…

Подавляющее большинство современных гаджетов используют процессоры на архитектуре ARM, разработкой которой занимается одноимённая компания ARM Limited. Что интересно, компания сама не производит процессоры, а только лицензирует свои технологии для сторонних производителей чипов. Помимо этого, компания также разрабатывает процессорные ядра Cortex и графические ускорители Mali, которых мы обязательно коснёмся в этом материале.

Компания ARM, фактически, является монополистом в своей области, и подавляющее большинство современных смартфонов и планшетов на различных мобильных операционных системах используют процессоры именно на архитектуре ARM. Производители чипов лицензируют у ARM отдельные ядра, наборы инструкций и сопутствующие технологии, причём стоимость лицензий значительно разнится в зависимости от типа процессорных ядер (это могут быть как маломощные бюджетные решения, так и ультрасовременные четырёхъядерные и даже восьмиядерные чипы) и дополнительных компонентов. Годовой отчёт о прибыли ARM Limited за 2006 год показал выручку в 161 миллион долларов за лицензирование около 2,5 миллиардов процессоров (в 2011 году этот показатель составил уже 7,9 млрд), что означает примерно 0,067 долларов за один чип. Впрочем, по озвученной выше причине, это очень усреднённый показатель из-за разницы в ценах на различные лицензии, и с тех пор прибыль компании должна была вырасти многократно.

В настоящее время ARM-процессоры имеют очень широкое распространение. Чипы на этой архитектуре используются повсюду, вплоть до серверов, но чаще всего ARM можно встретить во встраиваемых и мобильных системах, начиная с контроллеров для жёстких дисков и заканчивая современными смартфонами, планшетами и прочими гаджетами.

ARM разрабатывает несколько семейств ядер, которые используются для различных задач. К примеру, процессоры, основанные на Cortex-Mx и Cortex-Rx (где “х” — цифра или число, обозначающее точный номер ядра) используются во встраиваемых системах и даже бытовых устройствах, к примеру, роутерах или принтерах.

Подробно на них мы останавливаться не будем, ведь нас, в первую очередь, интересует семейство Cortex-Ax — чипы с такими ядрами используются в наиболее производительных устройствах, в том числе смартфонах, планшетах и игровых консолях. ARM постоянно работает над новыми ядрами из линейки Cortex-Ax, но на момент написания этой статьи в смартфонах используются следующие из них:

Cortex-A5;
Cortex-A7;
Cortex-A8;
Cortex-A9;
Cortex-A12;
Cortex-A15;
Cortex-A53;

Чем больше цифра — тем выше производительность процессора и, соответственно, дороже класс устройств, в которых он используется. Впрочем, стоит отметить, что это правило соблюдается не всегда: к примеру, чипы на ядрах Cortex-A7 имеют большую производительность, нежели на Cortex-A8. Тем не менее, если процессоры на Cortex-A5 уже считаются чуть ли не устаревшими и почти не используются в современных устройствах, то CPU на Cortex-A15 можно найти во флагманских коммуникаторах и планшетах. Не так давно ARM официально объявила о разработке новых, более мощных и, одновременно, энергоэффективных ядер Cortex-A53 и Cortex-A57, которые будут объединены на одном чипе с применением технологии ARM big.LITTLE и поддерживать набор команд ARMv8 (“версию архитектуры”), но в настоящее время они не применяются в массовых потребительских устройствах. Большинство чипов с ядрами Cortex могут быть многоядерными, и в современных топовых смартфонах повсеместное распространение получили четырёхъядерные процессоры.

Крупные производители смартфонов и планшетов обычно используют процессоры известных чипмейкеров вроде Qualcomm или собственные решения, которые уже успели стать довольно популярными (к примеру, Samsung и её семейство чипсетов Exynos), но среди технических характеристик гаджетов большинства небольших компаний зачастую можно встретить описание вроде “процессор на Cortex-A7 с тактовой частотой 1 ГГц” или “двухъядерный Cortex-A7 с частотой 1 ГГц”, которое обычному пользователю ничего не скажет. Для того, чтобы разобраться, в чём заключаются отличия таких ядер между собой, остановимся на основных.

Cortex-A5

Ядро Cortex-A5 используются в недорогих процессорах для наиболее бюджетных устройств. Такие устройства предназначены только для выполнения ограниченного круга задач и запуска простых приложений, но совершенно не рассчитаны на ресурсоёмкие программы и, тем более, игры. В качестве примера гаджета с процессором на Cortex-A5 можно назвать Highscreen Blast, который получил чип Qualcomm Snapdragon S4 Play MSM8225, содержащий два ядра Cortex-A5 с тактовой частотой 1,2 ГГц.

Cortex-A7

Процессоры на Cortex-A7 являются более мощными, чем чипы Cortex-A5, а кроме того, больше распространены. Такие чипы выполняются по 28-нанометровому техпроцессу и имеют большой кэш второго уровня до 4 мегабайт. Ядра Cortex-A7 встречаются, преимущественно, в бюджетных смартфонах и недорогих устройствах среднего сегмента вроде iconBIT Mercury Quad, а также, в качестве исключения, в Samsung Galaxy S IV GT-i9500 с процессором Exynos 5 Octa — этот чипсет при выполнении нетребовательных задач использует энергосберегающий четырёхъядерный процессор на Cortex-A7.

Cortex-A8

Ядро Cortex-A8 не так распространено, как его “соседи”, Cortex-A7 и Cortex-A9, но всё же используется в различных гаджетах начального уровня. Рабочая тактовая частота чипов на Cortex-A8 может составлять от 600 МГц до 1 ГГц, но иногда производители разгоняют процессоры и до более высоких частот. Особенностью ядра Cortex-A8 является отсутствие поддержки многоядерных конфигураций (то есть, процессоры на этих ядрах могут быть только одноядерными), а выполняются они по 65-нанометровому техпроцессу, который уже считается устаревшим.

Сortex-A9

Ещё пару лет назад ядра Cortex-A9 считались топовым решением и использовались как в традиционных одноядерных, так и более мощных двухъядерных чипах, например Nvidia Tegra 2 и Texas Instruments OMAP4. В настоящее время процессоры на Cortex-A9, выполненные по 40-нанометровому техпроцессу не теряют популярность и используются во многих смартфонах среднего сегмента. Рабочая частота таких процессоров может составлять от 1 до 2 и более гигагерц, но обычно она ограничивается 1,2-1,5 ГГц.

Cortex-A12

В июне 2013 года компания ARM официально представила ядро Cortex-A12, которое выполняется по новому 28-нанометровому техпроцессу и призвано заменить ядра Cortex-A9 в смартфонах среднего сегмента. Разработчик обещает увеличение производительности на 40% по сравнению с Cortex-A9, а кроме того, ядра Cortex-A12 смогут участвовать в архитектуре ARM big.LITTLE в качестве производительных вместе с энергосберегающими Cortex-A7, что позволит производителям создавать недорогие восьмиядерные чипы. Правда,на момент написания статьи всё это только в планах, и массовое производство чипов на Cortex-A12 ещё не налажено, хотя компания RockChip уже объявила о своём намерении выпустить четырёхъядерный процессор на Cortex-A12 с частотой 1,8 ГГц.

Cortex-A15

На 2013 год ядро Cortex-A15 и его производные является топовым решением и используется в чипах флагманских коммуникаторах различных производителей. Среди новых процессоров, выполненных по 28-нм техпроцессу и основанных на Cortex-A15 — Samsung Exynos 5 Octa и Nvidia Tegra 4, а также это ядро нередко выступает платформой для модификаций других производителей. Например, последний процессор компании Apple A6X использует ядра Swift, которые являются модификацией Cortex-A15. Чипы на Cortex-A15 способны работать на частоте 1,5-2,5 ГГц, а поддержка множества стандартов сторонних компаний и возможность адресовать до 1 ТБ физической памяти делает возможным применение таких процессоров в компьютерах (как тут не вспомнить мини-компьютер размером с банковскую карту Raspberry Pi).

Cortex-A50 series

В первой половине 2013 года ARM представила новую линейку чипов, которая получила название Cortex-A50 series. Ядра этой линейки будут выполнены по новой версии архитектуры, ARMv8, и поддерживать новые наборы команд, а также станут 64-битными. Переход на новую разрядность потребует оптимизации мобильных операционных систем и приложений, но, разумеется, сохранится поддержка десятков тысяч 32-битных приложений. Первой на 64-битную архитектуру перешла компания Apple. Последние устройства компании, например, iPhone 5S, работают на именно таком ARM-процессоре Apple A7. Примечательно, что он не использует ядра Cortex – они заменены на собственные ядра производителя под названием Swift. Одна из очевидных причин необходимости перехода к 64-битным процессорам — поддержка более 4 ГБ оперативной памяти, а, кроме того, возможность оперировать при вычислении намного большими числами. Конечно, пока это актуально, в первую очередь, для серверов и ПК, но мы не удивимся, если через несколько лет на рынке появятся смартфоны и планшеты с таким объёмом ОЗУ. На сегодняшний день о планах по выпуску чипов на новой архитектуре и смартфонов с их использованием ничего не известно, но, вероятно, именно такие процессоры и получат флагманы в 2014 году, о чём уже заявила компания Samsung.

Cortex-A53

Открывает серию ядро Cortex-A53, которое будет прямым “наследником” Cortex-A9. Процессоры на Cortex-A53 заметно превосходят чипы на Cortex-A9 в производительности, но, при этом, сохраняется низкое энергопотребление. Такие процессоры могут быть использованы как по одиночке, так и в конфигурации ARM big.LITTLE, будучи объединенными на одном чипсете с процессором на Cortex-A57

Процессоры на Cortex-A57, которые будут выполнены по 20-нанометровому техпроцессу, должны стать самыми мощными ARM-процессорами в ближайшем будущем. Новое ядро значительно превосходит своего предшественника, Cortex-A15 по различным параметрам производительности (сравнение вы можете видеть выше), и, по словам ARM, которая всерьёз нацелена на рынок ПК, станет выгодным решением для обычных компьютеров (включая лэптопы), а не только мобильных устройств.

В качестве высокотехнологичного решения проблемы энергопотребления современных процессоров ARM предлагает технологию big.LITTLE, суть которой заключается в объединении на одном чипе ядер различных типов, как правило, одинакового количества энергосберегающих и высокопроизводительных.

Существует три схемы работы ядер различного типа на одном чипе: big.LITTLE (миграция между кластерами), big.LITTLE IKS (миграция между ядрами) и big.LITTLE MP (гетерогенный мультипроцессинг).

big.LITTLE (миграция между кластерами)

Первым чипсетом на архитектуре ARM big.LITTLE стал процесссор Samsung Exynos 5 Octa. В нём используется оригинальная схема big.LITTLE “4+4”, что означает объединение в два кластера (отсюда и название схемы) на одном кристалле четырёх высокопроизводительных ядер Cortex-A15 для ресурсоёмких приложений и игр и четырёх энергосберегающих ядер Cortex-A7 для повседневной работы с большинством программ, причём в один момент времени могут работать ядра только одного типа. Переключение между группами ядер происходит практически мгновенно и незаметно для пользователя в полностью автоматическом режиме.

Более сложная реализация архитектуры big.LITTLE — объединение нескольких реальных ядер (как правило двух) в одно виртуальное, управляемое ядром операционной системы, которое решает, какие задействовать ядра — энергоэффективные или производительные. Разумеется, виртуальных ядер также несколько — на иллюстрации приведен пример схемы IKS, где в каждом из четырёх виртуальных ядер находятся по одному ядру Cortex-A7 и Cortex-A15.

Схема big.LITTLE MP является наиболее “продвинутой” — в ней каждое ядро является независимым и может включаться ядром ОС по необходимости. Это значит, что если используются четыре ядра Cortex-A7 и столько же ядер Cortex-A15, в чипсете, построенном на архитектуре ARM big.LITTLE MP, смогут работать одновременно все 8 ядер, даже несмотря на то, что они разных типов. Одним из первых процессоров такого типа стал восьмиядерный чип компании , который может работать на тактовой частоте 2 ГГц, а также записывать и воспроизводить видео в разрешении UltraHD.

Будущее

По имеющейся на данный момент информации, в ближайшее время ARM совместно с другими компаниями планирует наладить выпуск big.LITTLE чипов следующего поколения, которые будут использовать новые ядра Cortex-A53 и Cortex-A57. Кроме того, бюджетные процессоры на ARM big.LITTLE собирается выпускать китайский производитель MediaTek, которые будут работать по схеме “2+2”, то есть, использовать две группы по два ядра.

Помимо процессоров, ARM также разрабатывает и графические ускорители семейства Mali. Подобно процессорам, графические ускорители характеризуются множеством параметров, например, уровнем сглаживания, интерфейсом шины, кэшем (сверхбыстрая память, используемая для повышения скорости работы) и количеством “графических ядер” (хотя, как мы писали в прошлой статье, этот показатель, несмотря на похожесть с термином, использующимся при описании CPU, практически не влияет на производительность при сравнении двух GPU).

Первым графическим ускорителем ARM стал ныне неиспользуемый Mali 55, который был использован в сенсорном телефоне LG Renoir (да-да, самом обычном сотовом телефоне). GPU не использовался в играх — только для отрисовки интерфейса, и обладал примитивными по нынешним меркам характеристиками, но именно он стал “родоначальником” серии Mali.

С тех пор прогресс шагнул далеко вперёд, и сейчас немалое значение имеют поддерживаемые API и игровые стандарты. К примеру, поддержка OpenGL ES 3.0 сейчас заявлена только в самых мощных процессорах вроде Qualcomm Snapdragon 600 и 800, а, если говорить о продукции ARM, то стандарт поддерживают такие ускорители, как Mali-T604 (именно он стал первым графическим процессором ARM, выполненным на новой микроархитектуре Midgard), Mali-T624, Mali-T628, Mali-T678 и некоторые другие близкие к ним по характеристикам чипы. Тот или иной GPU, как правило, тесно связан с ядром, но, тем не менее, указывается отдельно, а, значит, если вам важно качество графики в играх, то имеет смысл посмотреть на название ускорителя в спецификациях смартфона или планшета.

Есть у ARM в линейке и графические ускорители для смартфонов среднего сегмента, наиболее распространёнными среди которых являются Mali-400 MP и Mali-450 MP, которые отличаются от своих старших братьев сравнительно небольшой производительностью и ограниченным набором API и поддерживаемых стандартов. Несмотря на это, указанные GPU продолжают использоваться в новых смартфонах, к примеру, Zopo ZP998, который получил графический ускоритель Mali-450 MP4 (улучшенную модификацию Mali-450 MP) вдобавок к восьмиядерному процессору MTK6592.

Предположительно, в конце 2014 года должны появиться смартфоны с новейшими графическими ускорителями ARM: Mali-T720, Mali-T760 и Mali-T760 MP, которые были представлены в октябре 2013 года. Mali-T720 должен стать новым GPU для недорогих смартфонов и первым графическим процессором этого сегмента с поддержкой Open GL ES 3.0. Mali-T760, в свою очередь, станет одним из наиболее мощных мобильных графических ускорителей: по заявленным характеристикам, GPU имеет 16 вычислительных ядер и обладает поистине огромной вычислительной мощностью, 326 Гфлопс, но, в то же время, в четыре раза меньшим энергопотреблением, чем упомянутый выше Mali-T604.

Роль CPU и GPU от ARM на рынке

Несмотря на то, что компания ARM является автором и разработчиком одноимённой архитектуры, которая, повторимся, сейчас используется в подавляющем большинстве мобильных процессоров, её решения в виде ядер и графических ускорителей не пользуются популярностью у крупных производителей смартфонов. К примеру, справедливо считается, что флагманские коммуникаторы на Android OS должны иметь процессор Snapdragon с ядрами Krait и графический ускоритель Adreno от Qualcomm, чипсеты этой же компании используются в смартфонах на Windows Phone, а некоторые производители гаджетов, к примеру, Apple, разрабатывают собственные ядра. Почему же в настоящее время сложилась именно такая ситуация?

Возможно, часть причин может лежать глубже, но одна из них — отсутствие чёткого позиционирования CPU и GPU от ARM среди продуктов других компаний, вследствие чего разработки компании воспринимаются как базовые компоненты для использования в устройствах B-брендов, недорогих смартфонах и создания на их основе более зрелых решений. К примеру, компания Qualcomm почти на каждой своей презентации повторяет, что одной из её главных целей при создании новых процессоров является уменьшение энергопотребления, а её ядра Krait, будучи доработанными ядрами Cortex, стабильно показывают более высокие результаты по производительности. Аналогичное утверждение справедливо и для чипсетов Nvidia, которые ориентированы на игры, ну а что касается процессоров Exynos от Samsung и A-серии от Apple, то они имеют свой рынок за счёт установки в смартфоны этих же компаний.

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

Заключение

Микропроцессоры на архитектуре ARM успешно завоевали рынок мобильных устройств благодаря низкому энергопотреблению и сравнительно большой вычислительной мощности. Раньше с ARM конкурировали другие RISC-архитектуры, например, MIPS, но сейчас у неё остался только один серьёзный конкурент — компания Intel с архитектурой x86, которая, к слову, хотя и активно борется за свою долю рынка, пока не воспринимается ни потребителями, ни большинством производителей всерьёз, особенно при фактическом отсутствии флагманов на ней (Lenovo K900 сейчас уже не может конкурировать с последними топовыми смартфонами на ARM-процессорах).

ARM процессор - мобильный процессор для смартфонов и планшетов.

В этой таблице представлены все известные на сегодняшний день ARM процессоры. Таблица ARM процессоров будет дополнятся и модернизироваться по мере появления новых моделей. В данной таблице используется условная система оценки производительности CPU и GPU. Данные о производительности ARM процессоров были взяты из самых разных источников, в основном исходя из результатов таких тестов, как: PassMark , Antutu , GFXBench .

Мы не претендуем на абсолютную точность. Абсолютно точно ранжировать и оценить производительность ARM процессоров невозможно, по той простой причине, что каждый из них, в чем-то имеет преимущества, а в чем-то отстает от других ARM процессоров. Таблица ARM процессоров позволяет увидеть, оценить и, главное, сравнить различные SoC (System-On-Chip) решения. Воспользовавшись нашей таблицей, Вы сможете сравнить мобильные процессора и достаточно точно узнать, как позиционируется ARM-сердце Вашего будущего (или настоящего) смартфона или планшета.

Вот мы провели сравнение ARM процессоров. Посмотрели и сравнили производительность CPU и GPU в различных SoC (System-оn-Chip). Но у читателя может возникнуть несколько вопросов: Где используются ARM процессора? Что такое ARM процессор? Чем отличается архитектура ARM от x86 процессоров? Попробуем разобраться во всем этом, не сильно углубляясь в подробности.

Для начала определимся с терминологией. ARM - это название архитектуры и одновременно название компании, ведущей ее разработку. Аббревиатура ARM расшифровывается как (Advanced RISC Machine или Acorn RISC Machine), что можно перевести как: усовершенствованная RISC-машина. ARM архитектура объединяет в себе семейство как 32, так и 64-разрядных микропроцессорных ядер, разработанных и лицензируемых компанией ARM Limited. Сразу хочется отметить, что компания ARM Limited занимается сугубо разработкой ядер и инструментария для них (средства отладки, компиляторы и т.д), но никак не производством самих процессоров. Компания ARM Limited продает лицензии на производство ARM процессоров сторонним фирмам. Вот неполный список компаний, получивших лицензию на производство ARM процессоров сегодня: AMD, Atmel, Altera, Cirrus Logic, Intel, Marvell, NXP, Samsung, LG, MediaTek, Qualcomm, Sony Ericsson, Texas Instruments, nVidia, Freescale ... и многие другие.

Некоторые компании, получившие лицензию на выпуск ARM процессоров, создают собственные варианты ядер на базе ARM архитектуры. Как пример можно назвать: DEC StrongARM, Freescale i.MX, Intel XScale, NVIDIA Tegra, ST-Ericsson Nomadik, Qualcomm Snapdragon, Texas Instruments OMAP, Samsung Hummingbird, LG H13, Apple A4/A5/A6 и HiSilicon K3.

На базе ARM процессоров сегодня работают фактически любая электроника: КПК, мобильные телефоны и смартфоны , цифровые плееры, портативные игровые консоли, калькуляторы, внешние жесткие диски и маршрутизаторы. Все они содержат в себе ARM-ядро, поэтому можно сказать, что ARM - мобильные процессоры для смартфонов и планшетов.

ARM процессор представляет из себя SoC , или "систему на чипе". SoC система, или "система на чипе", может содержать в одном кристалле, помимо самого CPU, и остальные части полноценного компьютера. Это и контроллер памяти, и контроллер портов ввода-вывода, и графическое ядро, и система геопозиционирования (GPS). В нем может находится и 3G модуль, а также многое другое.

Если рассматривать отдельное семейство ARM процессоров, допустим Cortex-A9 (или любое другое), нельзя сказать, что все процессоры одного семейства имеют одинаковую производительность или все снабжены GPS модулем. Все эти параметры сильно зависят от производителя чипа и того, что и как он решил реализовать в своем продукте.

Чем же отличается ARM от X86 процессоров ? Сама по себе RISC (Reduced Instruction Set Computer) архитектура подразумевает под собой уменьшенный набор команд. Что соответственно ведет к очень умеренному энергопотреблению. Ведь внутри любого ARM чипа находится гораздо меньше транзисторов, чем у его собрата из х86 линейки. Не забываем, что в SoC-системе все периферийные устройства находится внутри одной микросхемы, что позволяет ARM процессору быть еще более экономным в плане энергопотребления. ARM архитектура изначально была предназначена для вычисления только целочисленных операций, в отличии от х86, которые умеют работать с вычислениями с плавающей запятой или FPU. Нельзя однозначно сравнивать эти две архитектуры. В чем-то преимущество будет за ARM. А где-то и наоборот. Если попробовать ответить одной фразой на вопрос: в чем разница между ARMи X86 процессорами, то ответ будет таким: ARM процессор незнает того количества команд, которые знает х86 процессор. А те, что знает, выглядят гораздо короче. В этом его как плюсы, так и минусы. Как бы там ни было, в последнее время все говорит о том, что ARM процессора начинают медленно, но уверенно догонять, а кое в чем и перегонять обычные х86. Многие открыто заявляют о том, что в скором времени ARM процессоры заменят х86 платформу в сегменте домашних ПК. Как мы уже , в 2013 году уже несколько компаний с мировым именем полностью отказались от дальнейшего выпуска нетбуков в пользу планшетных пк. Ну а что будет на самом деле, время покажет.

Мы же будем отслеживать уже имеющиеся на рынке ARM процессоры.