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

Первые чипы ARM появились еще три десятилетия назад благодаря стараниям британской компании Acorn Computers (ныне ARM Limited), но долгое время пребывали в тени своих более именитых собратьев – процессоров архитектуры х86. Все перевернулось с ног на голову с переходом IT-индустрии в пост-компьютерную эпоху, когда балом стали править уже не ПК, а мобильные гаджеты.

Особенности архитектуры ARM

Начать стоит, пожалуй, с того, что в процессорной архитектуре x86, которую сейчас используют компании Intel и AMD, применяется набор команд CISC (Complex Instruction Set Computer), хоть и не в чистом виде. Так, большое количество сложных по своей структуре команд, что долгое время было отличительной чертой CISC, сначала декодируются в простые, и только затем обрабатываются. Понятное дело, на всю эту цепочку действий уходит немало энергии.

В качестве энергоэффективной альтернативы выступают чипы архитектуры ARM с набором команд RISC (Reduced Instruction Set Computer). Его преимущество в изначально небольшом наборе простых команд, которые обрабатываются с минимальными затратами. Как результат, сейчас на рынке потребительской электроники мирно (на самом деле, не очень мирно) уживаются две процессорные архитектуры – х86 и ARM, каждая из которых имеет свои преимущества и недостатки.


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


Бизнес-модель компании ARM Limited

Сейчас компания ARM Limited занимается лишь разработкой референсных процессорных архитектур и их лицензированием. Создание же конкретных моделей чипов и их последующее массовое производство – это уже дело лицензиатов ARM, которых насчитывается превеликое множество. Есть среди них как известные лишь в узких кругах компании вроде STMicroelectronics, HiSilicon и Atmel, так и IT-гиганты, имена которых у всех на слуху – Samsung, NVIDIA и Qualcomm. С полным списком компаний-лицензиатов можно ознакомиться на соответствующей странице официального сайта ARM Limited .


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


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

Однокристальная система

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

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


Отдельные компоненты однокристальной системы могут быть разработаны как непосредственно ARM Limited, так и сторонними компаниями. Ярким тому примером являются графические ускорители, разработкой которых помимо ARM Limited (графика Mali) занимаются Qualcomm (графика Adreno) и NVIDIA (графика GeForce ULP).

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

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

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

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

ARM11 . Процессоры ARM11 могут похвастаться расширенным по сравнению с ARM9 набором инструкций и куда более высокой тактовой частотой (вплоть до 1 ГГц), хотя для современных задач их мощности тоже не достаточно. Тем не менее, благодаря невысокому энергопотреблению и, что не менее важно, себестоимости, чипы ARM11 до сих пор применяются в смартфонах начального уровня: Samsung Galaxy Pocket и Nokia 500.

Современные поколения чипов

Все более-менее новые чипы архитектуры ARM принадлежат к семейству ARMv7, флагманские представители которого уже достигли отметки в восемь ядер и тактовой частоты свыше 2 ГГц. Разработанные непосредственно 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 появились первые реализации предложенной ARM Limited концепции big.LITTLE, согласно которой однокристальные системы должны иметь одновременно мощные и слабые, но энергоэффективные процессорные ядра. Первой реализацией концепции big.LITTLE стала система-на-чипе NVIDIA Tegra 3 с четырьмя ядрами Cortex-A9 (до 1,7 ГГц) и пятым энергоэффективным ядром-компаньоном (500 МГц) для выполнения простеньких фоновых задач.

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.


Очень скоро в продажу поступят многочисленные гаджеты на базе 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-разрядными. Открывают новую эпоху RISC-процессоров ядра Cortex-A53 и Cortex-A57: первое энергоэффективное, а второе высокопроизводительное, но оба способны работать с большими объемами оперативной памяти.

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

Еще совсем недавно (всего 10 лет назад) на рынке пользовательских процессоров было три архитектуры, и все они были более-менее неплохо разделены: ARM-процессоры ставились в мобильные устройства, где важно было время автономной работы, x86-процессоры ставились в устройства под управлением Windows, ну и в пику Intel Apple использовала в своих устройствах процессоры на архитектуре PowerPC (хотя мы знаем, что она все же «переползла» на x86). Но на сегодняшний момент на рынке пользовательских процессоров осталось всего две архитектуры - PowerPC выбыл из гонки, причем совсем недавно: последнее устройство на этой архитектуре, PlayStation 3, перестали производить всего пару недель назад. Более того - все больше утечек о том, что на ARM-процессорах можно будет запускать полноценную Windows, и с другой стороны - тот же Android отлично работает с х86-процессорами начиная с версии 4.0. То есть, как мы видим, разница между этими архитектурами все больше размывается в глазах пользователей, и в этой статье мы и выясним, почему так происходит.

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

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


Процессоры х86 построены на архитектуре CISC (Complex Instruction Set Computing, процессоры с полным набором инструкций) - это означает, что в процессоре реализовано максимальное число инструкций, что, с одной стороны, упрощает написание программ и уменьшает их вес, и другной стороны - процессор практически невозможно нагрузить на 100%.

Первым процессором на архитектуре х86 был Intel 8086 - это первый 16-битный процессор от Intel, работающий на частоте до 10 МГц и выпущенный в 1978 году. Процессор оказался крайне популярным и производился до 1990 года, а все последующие процессоры стали с делать с ним совместимые. Сначала эта совместимость показывалась в виде окончания названия процессора на 86, ну а в дальнейшем, с выходом Pentium, архитектуру решили назвать х86.

В 1985 году вышел процессор i386, который стал первым 32-битный процессором от Intel, а к 1989 году Intel выпустила первый скалярный процессор i486 - этот процессор умел выполнять одну операцию за такт. В дальнейшем, с выходом Pentium в 1993 году, процессоры от Intel стали суперскалярными, то есть научились делать несколько операций за один такт, и суперконвейерными - то есть имели два вычислительных конвейера. Но это было еще не все - по сути все процессоры Intel, начиная с i486DX, являются CISC-процессорами с RISC-ядром (Reduced Instruction Set Computer, процессоры с сокращённым набором инструкций): в микропроцессор встраивается аппаратный транслятор, который непосредственно перед исполнением преобразуют CISC-инструкции процессоров x86 в более простой набор внутренних инструкций RISC, при этом одна команда x86 может порождать несколько RISC-команд.

С тех пор особо ничего не поменялось - да, росло число конвейеров, росло число операций за такт, процессоры стали многоядерными и 64-битными, но до сих пор все решения от Intel и AMD являются суперконвейерными суперскалярными микропроцессорами, построенными на основе CISC-архитектуры с RISC-ядром.

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

Архитектура ARM появилась позже x86, в 1986 году с выходом процессора ARM2. Цель ее разработки была в максимальной оптимизации и уменьшения числа транзисторов - к примеру, под нагрузкой x86-процессор тогда использовал едва ли 30% от числа всех транзисторов, все другие банально простаивали. Поэтому ARM разработали собственный чип на RISC-архитектуре, который назвали ARM2 - он имел всего 30000 транзисторов (сравните с 275 тысячами транзисторов в актуальном тогда i386), и не имел как кэша (что в общем-то тогда было нормой для процессоров - кэш можно было докупить и поставить отдельно), но и микропрограммы как таковой - микрокод исполнялся как и любой другой машинный код, путём преобразования в простые инструкции:


В итоге из-за того, что число транзисторов в ARM-процессорах ощутимо меньше, чем в х86, мы и получаем, что их тепловыделение тоже ощутимо ниже. Но, с другой стороны, из-за упрощенной архитектуры и производительность у ARM тоже ощутимо ниже, чем у x86.

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

Итоги

В результате мы видим две крайности: x86 являются мощными решениями, обвешанными инструкциями, которые могут выполнять абсолютно любые задачи с хорошей скоростью. Но за это приходится платить увеличенным тепловыделением. ARM же - простые процессоры, у которых набор инструкций ощутимо меньше, поэтому выполнение многих серьезных задач на них не имеет особого смысла из-за медлительности процесса. Но при этом и тепловыделение низкое. Однако самое основное - обе архитектуры поддерживают RISC-инструкции, а значит что на обеих архитектурах можно запускать одинаковые ОС, что мы и видим в случае с Android, Linux и Windows, и это означает, что в будущем разница между х86 и 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 процессоры.

Британская корпорация ARM усовершенствовала гетерогенную вычислительную архитектуру ARM big.LITTLE , на которой основаны все ведущие микропроцессоры ARM начиная с Cortex-A7 (2011 год) - и вчера представила новую гетерогенную архитектуру DynamIQ big.LITTLE . На микросхемах выделено место для специальных аппаратных ускорителей приложений машинного обучения. Возможно, в будущем аппаратная поддержка нейросетей станет новым трендом среди разработчиков микропроцессоров и неотъемлемым качеством новых смартфонов.

Особенность архитектуры ARM big.LITTLE состоит в наличии процессорных ядер двух типов: относительно медленных, энергоэффективных (LITTLE) и относительно мощных и прожорливых (big). Обычно система активирует только один из двух типов ядер: только большие или только маленькие. Понятно, что фоновые задачи на смартфоне или другом устройстве удобно решать с маленькими ядрами, которые потребляют очень мало энергии. В случае необходимости процессор активирует мощные прожорливые ядра, которые в многопоточном режиме, работая сообща, демонстрируют особенно высокую производительность. В принципе, у всех ядер есть доступ к общей памяти, так что задачи можно ставить для выполнения на обоих типах ядер одновременно. То есть большие и маленькие будут переключаться на лету.

Подобная гетерогенная архитектура и переключение задач на лету с одного типа ядер на другой задуманы для создания динамического изменения мощности и энергопотребления процессора. Сама ARM заявляла, что в некоторых задачах та архитектура экономит до 75% энергии.

DynamIQ big.LITTLE - это эволюционный шаг вперёд. Новая архитектура позволяет задействовать разнообразные сочетания больших и малых ядер, которые раньше не были возможны. Например, 1+3, 2+4 или 1+7, или даже 2+4+2 (ядра трёх разных мощностей). Типичный смартфон будущего может иметь восьмиядерную систему на кристалле с двумя мощными ядрами, четырьмя средними и двумя низкопроизводительными ядрами для фонового режима.

С аппаратной поддержкой машинного обучения и ИИ разработчикам станут доступны новые специальные процессорные инструкции (например, вычисления с ограниченной точностью). ARM обещает , что в следующие три-пять лет процессоры Cortex-A на новой архитектуре обеспечат до 50-кратной прибавки производительности в приложениях ИИ, в сравнении с нынешними системами на базе Cortex-A73 и ещё дополнительную прибавку за счёт встроенных ускорителей на микросхеме. Специальный порт доступа с низкой задержкой между ЦП и акселераторами имеет 10-кратную производительность.

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

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

Кластеры DynamIQ практически неограниченного масштаба с общей памятью - это предложение создавать мощнейшие вычислительные системы самого разного назначения.

Дополнительную гибкость в динамической подстройке мощности/энергопотребления даст функция индивидуального изменения тактовой частоты отдельных процессоров в кластере из множества процессоров ARM. Разработчики из Кембриджа считают, что это особенно важно в шлемах виртуальной реальности, которые длительные периоды времени находятся в состоянии низкого энергопотребления. Переходы процессора в одно из трёх энергетических состояний (ON, OFF, SLEEP) осуществляются гораздо быстрее, автоматически на аппаратном уровне.

В конце концов, продвинутая архитектура DynamIQ позволяет строить более надёжные системы с дублированием функций, что повышает уровень безопасности в автономных системах, которым нужно реагировать на сбои. Например, это системы компьютерного зрения в беспилотных автомобилях - Advanced Driver Assistance Systems (ADAS). Когда один кластер ядер выходит из строя или ускоритель сбоит - другой кластер автоматически берёт его функции на себя.

Процессорную архитектуру ARM применяют по лицензии в своих чипах многие производители, в том числе Samsung, Qualcomm, Nvidia, Intel и Apple (iPhone, iPad). Между 2013 и 2017 годами в мире было продано более 50 млрд микрочипов на архитектуре ARM, и английские разработчики надеются, что в ближайшие четыре года это число удвоится до более 100 млрд.

Большинство устройств на процессорах ARM не нуждаются в активном охлаждении. Компания уверена, что с увеличением мощности этих систем и переходе на архитектуру DynamIQ всё останется по-прежнему.

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

Совсем недавно сама постановка вопроса казалась немыслимой: можно ли вообще сравнивать "телефонный" процессор с чипами, применяющимися в "персоналках", серверах и даже суперкомпьютерах? Между тем, развитие технологий и причуды рынка привели к ситуации, когда специалисты всерьёз обсуждают возможность даже не просто конкуренции между процессорами ARM и чипами x86, а яростной схватки между ними.

Прежде всего, определимся с понятиями и познакомимся с потенциальными соперниками.

Центральные процессоры x86 – это микропроцессоры, поддерживающие одноимённый набор инструкций и обладающие микроархитектурой, производной от IA-32, то есть Intel Architecture 32-бит. Чипы построены на основе архитектуры CISC (Complex Instruction Set Computing, то есть "с полным набором инструкций"), в которой каждая инструкция может выполнять сразу несколько низкоуровневых операций.

Исторически семейство x86 восходит к 16-разрядной модели Intel 8086, выпущенной в 1978 году. 32-битными эти процессоры стали лишь в 1985 году, когда был представлен первый "триста восемьдесят шестой". В 1989 году Intel выпустила первый скалярный (то есть выполняющий одну операцию за один такт) чип i486 (80486), в котором впервые появились встроенная кэш-память и блок вычислений с плавающей запятой FPU. Процессоры Pentium, представленные в 1993 году, стали первыми суперскалярными (то есть выполняющими несколько операций за такт) и суперконвейерными (в этих чипах было два конвейера).

Итак, современные x86-совместимые чипы – это суперскалярные суперконвейерные микропроцессоры, построенные на основе CISC-архитектуры.

ARM-процессоры – 32-битные чипы на базе архитектуры RISC (Reduced Instruction Set Computer), то есть с сокращённым набором команд. В основу этой архитектуры положена идея повышения быстродействия за счёт максимального упрощения инструкций и ограничения их длины.

История ARM-процессоров началась в том же 1978 году, когда была создана британская компания Acorn Computers. Под маркой Acorn выпускались несколько чрезвычайно популярных на местном рынке моделей персональных компьютеров на основе восьмибитных чипов MOS Tech 6502. Этот же ЦП, кстати, стоял в Apple I и II и Commodore PET.

Однако с появлением более совершенной модели 6510, которая в 1982 году стала устанавливаться в Commodore 64, линейка компьютеров Acorn, включая популярнейший образовательный BBC Micro, потеряла актуальность. Это подтолкнуло владельцев Acorn к созданию собственного процессора на базе архитектуры 6502, который позволил бы на равных конкурировать с машинами класса IBM PC.

Первая серийная модель ARM2, разработанная в рамках проекта Acorn RISC Machine, была выпущена в 1986 году и стала самым конструктивно простым и недорогим 32-битным процессором на тот момент: в нём отсутствовала не только кэш-память, что было нормой для чипов того времени, но и микропрограммы: в отличие от CISC-процессоров, микрокод исполнялся как и любой другой машинный код, путём преобразования в простые инструкции. Кристалл ARM2 состоял из 30000 транзисторов, и эта компактность конструкции осталась характерным признаком этого семейства: в ARM6 всего на 5000 транзисторов больше.

В отличие от Intel или AMD, ARM сама не занимается выпуском процессоров, предпочитая продавать лицензии другим. Среди компаний, располагающих такими лицензиями, есть те же Intel и AMD, а также VIA Technologies, IBM, NVIDIA, Nintendo, Texas Instruments, Freescale, Qualcomm и Samsung. Показательный факт: если AMD, вторая компания на рынке x86-процессоров, в 2009 году отметила выпуск своего 500-миллионного ЦП, то в одном только 2009 году на рынок было поставлено почти три миллиарда ARM-процессоров!

Современные ARM-процессоры – это суперскалярные суперконвейерные микросхемы, построенные на основе RISC-архитектуры.

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

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

Тогда что же делить столь разным продуктам? Конечно, нелепо сравнивать четырёхъядерный Core i5 и "телефонный" Qualcomm MSM7201A, стоящий в коммуникаторах HTC Dream и Hero, но есть масштабы, где рынки ARM и i86 перекрываются уже сегодня. Это, с одной стороны, такие новейшие чипы ARM, как Cortex-A8 (архитектура ARMv7-A), а с другой – низковольтные x86-процессоры класса Intel Atom. На основе Cortex-A8 построен модный планшет Apple iPad, а Intel Atom работают в подавляющем большинстве нетбуков.

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

Есть у Atom и несколько принципиальных отличий от Cortex-A8. Прежде всего, практически все микросхемы этого семейства поддерживают технологию параллельных вычислений Hyper-Threading, которая позволяет представить одно физическое ядро как два виртуальных. Это весьма существенное преимущество, заметно повышающее производительность, причём не только в относительно редких до сих пор многопоточных приложениях, но и при выполнении команд с интенсивным использованием систем ввода-вывода. К примеру, Atom с Hyper-Threading заметно быстрее загружает Windows, чем сравнимый с ним по возможностям одноядерный VIA Nano без поддержки такого режима.

Практическое сравнение производительности Atom и Cortex-A8 провёл Вэн Смит, автор тестовых пакетов OpenSourceMark, miniBench и один из соавторов SiSoftware Sandra. Тестировались машины на базе процессоров Atom N450, Freescale i.MX515 (Cortex-A8), VIA Nano L3050 и, для сравнения, на основе мобильного Athlon XP-M на ядре Barton. Поскольку за точку отсчёта были приняты характеристики Cortex-A8 с тактовой частотой 800 МГц, рабочие частоты VIA Nano и Athon были снижены до того же значения, а Atom – до 1000 МГц (дальнейшее снижение оказалось невозможным). При этом у Cortex-A8 осталось несколько заведомо слабых мест: поддержка медленной 32-битной памяти DDR2-200 и более чем скромная встроенная графика с максимальным разрешением 1024 на 768 при шестнадцатибитной глубине цвета. Все тесты проводились на системах под управлением операционной системы Ubuntu 9.04 Linux.

Результаты тестирования оказались более чем любопытными: Cortex-A8 продемонстрировал вполне конкурентоспособную производительность в целочисленных вычислениях при значительно более низком энергопотреблении по сравнению с соперниками. Ожидаемо провальными оказались лишь тесты на пропускную способность памяти и на вычисления с плавающей запятой – традиционной "ахиллесовой пятой" ARM-чипов. В течение продолжительного времени в ARM-процессорах вообще отсутствовали модули FPU и хотя в Cortex-A8 есть два таких модуля (Neon 32-бит SP и VFP), их мощности явно недостаточно. Вычисления с плавающей запятой – это и трёхмерные игры, и научное моделирование, и некоторые виды обработки и кодирования видео и звука. Так что если производители процессоров ARM действительно нацелились на нишу нетбуков, неттопов и планшетников, им нужно существенно улучшить производительность FPU. С подробными результатами всех тестов можно ознакомиться здесь (http://www.brightsideofnews.com/news/2010/4/7/the-coming-war-arm-versus-x86.aspx).

Стоит ли нам ожидать схватки между столь разными и столь похожими семействами процессоров ARM и x86? Пока по производительности в массовых развлекательных приложениях "армы" существенно уступают даже "атомам". Однако перспективы внушают оптимизм: новейшая архитектура Cortex-A9 рассчитана на создание процессоров с одним-четырьмя ядрами и, как утверждают в ARM Limited, в них значительно улучшена производительность вычислений с плавающей запятой. Первые чипы на базе Cortex-A9 – NVIDIA Tegra 2 – это двухъядерные микросхемы с графическим ядром, поддерживающим видео формата Full HD 1080p и трёхмерную графику с программным интерфейсом OpenGL ES 2.0. Планшет или нетбук с такими характеристиками запросто поспорит с любым устройством на основе Atom. Добавим сюда исключительную экономичность, а значит, и длительное время автономной работы. Так что Apple iPad вполне может стать символом начала борьбы чипов ARM с x86-процессорами на их же собственном поле.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: