Что такое ARM. Новые процессоры ARM готовы к приложениям ИИ

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

Новое – хорошо забытое старое

Журналисты вслед за пиарщиками ARM нередко преподносят эту архитектуру как нечто совершенно новое, что должно похоронить убеленную сединами х86.

На самом деле ARM и х86, на базе которой построены процессоры Intel, AMD и VIA, устанавливаемые в ноутбуки и настольные ПК, практически ровесники. Первый чип х86 увидел свет в 1978 году. Проект ARM официально стартовал в 1983, но при этом базировался на разработках, которые велись практически одновременно с созданием х86.


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

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

«Рисковый» процессор

ARM представляет собой RISC-архитектуру. В ней используется сокращенный набор команд – RISC (reduced instruction set computer). Архитектура этого типа появилась в конце семидесятых, примерно тогда же, когда Intel предложила свою х86.


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


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

Первые ARM

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

Кроме того, упрощая наборы команд, разработчики архитектуры смогли обойтись без ряда других блоков. Например, в первых ARM начисто отсутствовал микрокод, а также модуль выполнения операций с плавающей запятой – FPU. Общее число транзисторов в первом ARM составляло 30 000. В аналогичных х86 их было в несколько раз, а то и на порядок больше. Дополнительная экономия энергии достигается за счет условного выполнения команд. То есть та или иная операция будет выполнена, если в регистре есть соответствующий факт. Это помогает процессору избежать «лишних телодвижений». Все инструкции выполняются последовательно. В результате ARM потерял в производительности, но не существенно, при этом значительно выиграл в энергопотреблении.

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

С целью ее увеличения ARM в течение последних лет внедрила несколько дополнительных наборов инструкций. Наряду с классической ARM, существуют Thumb, Thumb 2, Jazelle. Последняя предназначена для ускорения выполнения Java-кода.

Cortex – самые совершенные ARM

Cortex – современные архитектуры для мобильных устройств, встроенных систем и микроконтроллеров. Соответственно CPU обозначаются как Cortex-A, встроенные – Cortex-R и микроконтроллеры – Cortex-M. Все они построены на базе архитектуры ARMv7.

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


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

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

Каждое ядро снабжено кэшем первого уровня. Кроме того, есть до 4 Мбайт распределенного кэша второго уровня с низким уровнем латентности. Процессор снабжен 128-битной когерентной шиной, которая может быть использована для связи с другими блоками и периферией.

Ядра, которые лежат в основе Cortex-A15 являются развитием Cortex-A9. Они имеют схожую структуру.


Cortex-A9, в отличие от Cortex-A15, может выпускаться как во много-, так и одноядерном варианте. Максимальная частота составляет 2.0 ГГц, Cortex-A15 предполагает возможность создания чипов, работающих на частоте 2.5 ГГц. Чипы на ее базе будут изготавливаться по техпроцессам 40 нм и более тонким. Cortex-A9 выпускается по техпроцессам 65 и 40 нм.

Cortex-A9, как и Cortex-A15, предназначен для использования в высокопроизводительных смартфонах и планшетах, но более серьезное применение, например, в серверах ему не по зубам. Только Cortex-A15 имеет аппаратную виртуализацию, расширенную адресацию памяти. Кроме того, набор SIMD-инструкций NEON Advanced и блок FPU в Cortex-A9 являются опциональными элементами, в то время как в Cortex-A15 они обязательны.

Cortex-A8 в будущем будет постепенно уходить со сцены, но пока этот одноядерный вариант найдет применение в бюджетных смартфонах. Недорогое решение с частотой от 600 МГц до 1 ГГц представляет собой сбалансированную архитектуру. Она имеет блок FPU, поддерживает первый вариант SIMD NEON. Cortex-A8 предполагает единственный техпроцесс – 65 нм.

ARM предыдущих поколений


На мобильном рынке довольно распространены процессоры ARM11. Они построены на базе архитектуры ARMv6 и ее модификаций. Она характеризуется 8-9-стадийными конвейерами, поддержкой Jazelle, способствующей ускорению обработки Java-кода, потоковых инструкций SIMD, Thumb-2.

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


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 в рамках очередного патентной спора. Микропроцессорный гигант создал на основе ARM свой аналог – процессор XScale. Но в середине предыдущего десятилетия Intel избавилась от этого «непрофильного актива», сосредоточившись исключительно на х86. 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 шага от тех, что считаются актуальными для х86. Высокая энергоэффективность архитектуры делает ее менее зависимой от перехода на новые технормы. Intel и AMD стремятся делать более «тонкие» чипы, чтобы наращивать частоты и количество ядер при сохранении физических размеров и энергопотребления. ARM изначально обладает меньшими требованиями к питанию, а также выдает больший уровень производительности на один ватт.

Особенности процессоров NVIDIA, TI, Qualcomm, Marvell

Лицензируя ARM направо и налево, разработчики усиливали позиции своей архитектуры за счет компетенций партнеров. Классическим примером в данном случае можно считать NVIDIA Tegra. Эта линейка систем-на-чипе имеет в основе архитектуру ARM, но у NVIDIA уже были свои весьма серьезные наработки в области трехмерной графики и системной логики.


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

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


Например, Qualcomm не использует референсный дизайн ARM. Инженеры компании серьезно переработали его и назвали Scorpio – именно он лежит в основе чипов Snapdragon. Отчасти дизайн был переработан с целью освоения более тонких техпроцессов, чем предусмотрено стандартным IP ARM. В результате первые Snapdragon выпускались по нормам 45 нм, что обеспечило им более высокие частоты. А новое поколение этих процессоров с заявленными 2.5 ГГц и вовсе может стать самым быстрым среди аналогов на базе ARM Cortex-A9. Также Qualcomm применяет собственное графическое ядро Adreno, созданное на базе разработок, приобретенных у AMD. Так что в некотором роде Snapdragon и Tegra – враги на генетическом уровне.


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


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


Apple A4 обладает большим кэшем в 512 Кбайт, в нем используется графика PowerVR, а само ARM-ядро построено на базе варианта архитектуры, переработанного Samsung.


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

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

Сейчас лицензиаты ARM производят только чипы на базе архитектуры ARM Cortex-A9. При этом, хотя она и позволяет создавать четырехъядерные варианты, NVIDIA, Apple, Texas Instruments и другие пока ограничиваются моделями с одним или двумя ядрами. Кроме того, чипы работают на частоте до 1.5 ГГц. Cortex-A9 позволяет делать двухгигагерцовые процессоры, но опять же производители не стремятся быстро наращивать частоты - ведь пока рынку хватит и двухъядерников на 1.5 ГГц.

По-настоящему многоядерными должны стать процессоры на базе Cortex-A15, но они если и анонсированы, то на бумаге. Их появления в кремнии стоит ожидать в следующем году.

Современные процессоры лицензиатов ARM на базе Cortex-A9:


x86 – главный соперник

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

Такими были классические х86, но, уже начиная с 80486, Intel де-факто создала внутреннее RISC-ядро, которое выполняло CISC-инструкции, предварительно разложенные на более простые команды. Такую же конструкцию имеют современные процессоры Intel и AMD.

Windows 8 и ARM

ARM и х86 сегодня различаются меньше, чем 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 или другим похожим чипам без дополнительных модификаций кода?

Кроме того встает вопрос с видеокартами. Сейчас видеокарты для ноутбуков делаются путем оптимизации энергопотребления настольных графических чипов – архитектурно они совпадают. В то же время сейчас видеокарта представляет собой что-то вроде «компьютера в компьютере» - у нее есть собственная сверхскоростная оперативная память и собственный вычислительный чип, который в специфических задачах существенно превосходит обычные процессоры. Само собой, что под них сделана соответствующая оптимизация приложений, работающих с 3D-графикой. Да и различные программы видеомонтажа и графические редакторы (в частности Photoshop с версии CS4), а с недавних пор еще и браузеры используют аппаратное ускорение средствами GPU.

Конечно, в 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 со стороны х86 является Intel Atom, а теперь к ним можно прибавить еще и платформу . Сравнение х86 и ARM провёл Вэн Смит, который создал тестовые пакеты OpenSourceMark, miniBench и один из соавторов SiSoftware Sandra. В «забеге» приняли участие Atom N450, Freescale i.MX515 (Cortex-A8), VIA Nano L3050. Частоты чипов х86 были снижены, но у них все равно оставалось преимущество за счет более совершенной памяти.

Результаты оказались весьма интересными. ARM-чип оказался также быстр, как и конкуренты в целочисленных операциях, при этом расходуя меньше энергии. Здесь нет ничего удивительного. Изначально архитектура была и достаточно быстрой и экономичной. В операциях с плавающей точкой ARM уступила х86. Здесь сказался традиционно мощный блок FPU, имеющийся у чипов Intel и AMD. Напомним, что в ARM он появился относительно недавно. Задачи, ложащиеся на FPU, занимают в жизни современного пользователя значительно место – это игры, кодирование видео и аудио, другие потоковые операции. Конечно, тесты, проведенные Вэном Смитом, сегодня уже не так актуальны. ARM значительно усилила слабые стороны своей архитектуры в версиях Cortex-A9 и особенно Cortex-A15, которая, например, уже может выполнять инструкции безусловно, распараллеливая решение задач.

Перспективы ARM

Так на какую архитектуру ставить в итоге, на ARM или х86? Наиболее правильно будет ставить на обе. Сегодня мы живем в условиях переформатирования компьютерного рынка. В 2008 году нетбукам предрекали безоблачное будущее. Дешевые компактные ноутбуки должны были стать основным компьютером для большинства пользователей, особенно на фоне мирового кризиса. Но затем началось восстановление экономики и появился iPad. Теперь королями рынка объявлены планшеты. Однако планшет хорош в качестве развлекательной консоли, но не очень удобен для работы в первую очередь из-за сенсорного ввода – эту статью писать на iPad было бы очень непросто, да и долго. Выдержат ли планшеты проверку временем. Возможно, через пару лет мы придумаем себе новую игрушку.

Но все-таки в мобильном сегменте, там, где не требуется высокой производительности, а активность пользователя в основном ограничена развлечениями, и не связана с работой, ARM выглядят предпочтительнее х86. Они обеспечивают приемлемый уровень производительности, а также большое время автономной работы. Попытки Intel довести до ума Atom пока неудачны. ARM задает новую планку производительности на ватт потребляемой энергии. Скорее всего, в компактных мобильных гаджетах ARM будут пользоваться успехом. На рынке нетбуков они также могут стать лидерами, но здесь все зависит не столько от разработчиков процессоров, сколько от Microsoft и Google. Если первая реализует нормальную поддержку ARM в Windows 8, а вторая доведет до ума Chrome OS. Пока же смартбуки, предложенные Qualcomm, не сделали рынка. Нетбуки на базе х86 устояли.

Прорыв в этом направлении, по задумке ARM должна совершить архитектура Cortex-A15. Компания рекомендует двух- и четырехъядерные процессоры на ее базе с частотой 1.0-2.0 ГГц для домашних развлекательных систем, которые будут объединять воедино медиаплеер, 3D-телевизор и интернет-терминал. Четырехъядерные чипы с частотой 1.5-2.5 ГГц могут стать основой домашних и веб-серверов. Наконец самый амбициозный вариант применения Cortex-A15 - инфраструктура беспроводных сетей. Здесь могут использоваться чипы с четырьмя и более ядрами, частотой 1.5-2.5 ГГц.

Но пока это только планы. Cortex-A15 была представлена ARM в сентябре прошлого года. Cortex-A9 была показана компанией в октябре 2007 года, через два года компания презентовала вариант А9 с возможностью увеличения частоты чипы до 2.0 ГГц. Для сравнения NVIDIA Tegra 2 - одно из самых раскрученных решений на базе Cortex-A9 – увидело свет только в январе прошлого года. Ну а первые гаджеты на его основе пользователи смогли пощупать еще через шесть месяцев.

Сегмент рабочих ПК и высокопроизводительные решения останутся за х86. Это не будет означать смерти архитектуры, но в денежном выражении Intel и AMD стоит подготовиться к потери части доходов, которые перейдут производителям 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 гораздо быстрее в деле обнаружения ошибок и может сэкономить драгоценное время при разработке надежного кода.

Еще совсем недавно (всего 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 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 всё останется по-прежнему.

Здравствуйте наши любимые читатели. Сегодня мы расскажем вам про архитектуру процессора Cortex a53.

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

Характеристики

Данные процессоры могут иметь от 1 до 8 ядер, систему памяти типа L1 и общий кэш L2. Чтобы понимать, что отличает основную составляющую практически всей техники этой модели от других, нужно знать её преимущества:

  • Высокопроизводительность (поддержка широкого спектра мобильных приложений, DTV, аэрокосмических машин, хранилищ и прочей техники подобного образца);
  • Высококачественная архитектура Army8-A для автономных конструкций начального уровня;
  • Универсальность (может быть сопряжен с любыми процессорами, такими как Cortex-A72, Cortex-A57 и другие);
  • Качественный продукт с большим объёмом загрузки.

Это основные сильные стороны данного продукта, однако далеко не все его преимущества. Ядро этой марки выполняет множество функций:

  • Поддерживает до 64bit и архитектуры самых новых версий;
  • Технология безопасности TrustZone;
  • Расширения DSP и SIMD;
  • 8-ступенчатый конвейер с двумя выходами и улучшенным целым числом;
  • Может работать на частоте от 1,5 Ггц;
  • Поддержка виртуализации оборудования.

Это стандартный набор функций данной технической составляющей, однако это далеко не все функции, которые выполняет этот непростой механизм.

Где чаще всего используется

Процессоры данного типа встречаются не только в смартфонах среднего класса (Xiaomi redmi 4, Redmi 3s, Meizu m3/m5 Note и др.), а и в следующих технологиях:

  • Авиационно-космическая техника;
  • Сеть;
  • Хранилища данных (типа HDD, SDD);
  • Автомобильная информационно-развлекательная система;

Дополнительные возможности

  • Трубопровод, который отвечает за низкое энергопотребление;
  • Высокая пропускная способность, которая позволяет выполнять одновременно несколько команд;
  • Расширенные функции энергосбережения.

Процессор связан с разными IP

Данная техника используется в SoC, а также в технологиях типа Arm, графических IP, системных IP и физических IP. Мы предоставляем вам полный список инструментов, в которых может быть использован c ядром этой марки:

  • Mali-T860/Mali-T880;
  • Mali-DP550;
  • Mali-V550;
  • CoreLink;
  • Контролёр памяти;
  • Контролёр прерываний;
  • Студия разработки DS-5;
  • ARM компилятор;
  • Доски разработки;
  • Быстрые модели.

Существует 2 типа процессоров Cortex a53:

  • AArch64 – даёт возможность устанавливать и использовать 64-битные приложения;
  • AArch32 – даёт возможность использовать только существующие приложения Armv7-A.

Для чего вам нужна эта вся техническая информация

Если вы ничего не понимаете в технике и характеристиках, то более простыми словами Cortex a53 обеспечивает гораздо большую производительность нежели его предшественники с более высоким уровнем энергоэффективности. Производительность ядра даже выше, чем у марки Cortex-A7, которая стоит на многих популярных смартфонах.

Архитектура Armv8-A – это то, что определяет функциональность технологий. У данной марки ядра стоит 64-битная обработка данных, расширенная виртуальная адресация и 64-разрядные регистры общего назначения. Все эти функции сделали этот процессор первым, который был предназначен конкретно для обеспечения энергоэффективной 64-битной обработки.

Таким образом, вы поняли, что процессор Cortex a53 является именной той технической составляющей, которую не нужно пропускать, выбирая технику. Если в вашем смартфоне стоит такой процессор с использованием данной архитектуры, вам не нужно беспокоится о недостатке памяти или о быстрой разрядке телефона. Все эти проблемы в прошлом.

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

С вами был сайт




Просмотров