Меню

Архитектура cortex – ARM architecture — Wikipedia

Leave a comment

Процессоры ARM: особенности архитектуры, отличия и перспективы

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

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

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

Чип ARM1 – первенец компании Acorn Computers, который производился на фабриках VLSI

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

Первым в истории устройством на базе процессора архитектуры ARM был персональный компьютер BBC Micro

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

Архитектурные отличия процессоров x86 (набор команд CISC) и ARM (набор команд RISC)

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

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

Только компаний, получивших лицензию на производство чипов семейства ARM Cortex-A, насчитается несколько десятков, а ведь в портфолио ARM Limited есть и другие разработки

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

Российская компания «ПКК Миландр» со штаб-квартирой в Зеленограде, что интересно, тоже получила лицензию на производство чипов архитектуры ARM

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

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

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

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

Схема строения однокристальной системы с четырьмя ядрами ARM Cortex-A9

Отдельные компоненты однокристальной системы могут быть разработаны как непосредственно 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.

Чип Broadcom Thunderbird – один из немногочисленных представителей поколения ARM11, который до сих пор применяется в Android-смартфонах

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

Все более-менее новые чипы архитектуры ARM принадлежат к семейству ARMv7, флагманские представители которого уже достигли отметки в восемь ядер и тактовой частоты свыше 2 ГГц. Разработанные непосредственно ARM Limited процессорные ядра принадлежат к линейке Cortex и большинство производителей однокристальных систем используют их без существенных изменений. Лишь компании Qualcomm и Apple создали собственные модификации на основе ARMv7 – первая назвала свои творения Scorpion и Krait, а вторая – Swift.

Чип Apple A6 (ядро Swift) – первая попытка Купертино собственноручно модифицировать архитектуру ARMv7

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), их дни пребывания на рынке, по всей видимости, сочтены.

Однокристальная система TI OMAP 3 – представитель некогда популярного, но сейчас уже угасающего поколения ARM Cortex-A8

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

Сопроцессор NEON стал уже необязательным: компания NVIDIA в своей однокристальной системе Tegra 2 его упразднила, решив освободить побольше места для графического ускорителя. Правда, ничего хорошего из этого не вышло, ведь большинство приложений-видеопроигрывателей все равно ориентировались на проверенный временем NEON.

Почти все флагманские планшетные компьютеры образца 2011 года были построены на базе чипа NVIDIA Tegra 2

Именно во времена «царствования» 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).

Схема строения однокристальной системы c четырьмя ядрами ARM Cortex-A5

ARM Cortex-A15. Процессорные ядра Cortex-A15 стали логическим продолжением Cortex-A9 – как результат, чипам архитектуры ARM впервые в истории удалось примерно сравниться по быстродействию с Intel Atom, а это уже большой успех. Не зря ведь компания Canonical в системных требования к версии ОС Ubuntu Touch с полноценной многозадачностью указала двухъядерный процессор ARM Cortex-A15 или аналогичный Intel Atom.

Первой массовой однокристальной системой Cortex-A15 стала двухъядерная Exynos 5250, которая применяется в планшетнике Google Nexus 10 и лэптопе Samsung Chromebook

Очень скоро в продажу поступят многочисленные гаджеты на базе NVIDIA Tegra 4 с четырьмя ядрами ARM Cortex-A15 и пятым ядром-компаньоном Cortex-A7. Вслед за NVIDIA концепцию big.LITTLE подхватила компания Samsung: «сердцем» смартфона Galaxy S4 стал чип Exynos 5 Octa с четырьмя ядрами Cortex-A15 и таким же количеством энергоэффективных ядер Cortex-A7.

Схема однокристальной системы big.LITTLE с процессорными ядрами ARM Cortex-A15 (big) и Cortex-A7 (LITTLE)

Дальнейшие перспективы

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

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

itc.ua

Небольшое знакомство с ARM-процессорами / Sandbox / Habr

Привет, Хабр! Сегодня хочется рассказать немного о семействе процессоров

ARM Cortex. Почему? Потому не каждый знает, что вся линейка STM-контроллеров построена на базе данных процессоров, а имеено на процессорах Cortex-M, но помимо них есть и другие типы, поэтому перейдем к делу!

Итак, семейство ARM Cortex — это широко популярное поколение процессоров, выполненных по RISC-архитектуре (RISC — Reduced Instruction Set Computer — архитектура с набором простых инструкций, благодаря данной архитектуре увеличивается быстодействие выполнения команд). Семейство ARM Cortex подразделется на три вида:

  1. ARM Cortex-A — это процессоры, предназначенные для высокопроизводительных применений. Данный тип процессоров используется в смартфонах, планшетах, а также игровых приставках. Линейка процессоров Cortex-A поддерживает следующие наборы инструкций: ARM, Thumb и Thumb-2. Рассмотрим где же все-таки применяются некоторые типы ядер данного семейства процессоров:
    • Cortex-A5 — данный тип ядра используется для бюджетного типа устройств и предназначается для запуска простейших приложений, но никак не для ресурсоемких программ;
    • Cortex-A7 — данный тип ядра является более мощным процессором с кэшом второго уровня до 4 МБ и предназначается для смартфонов;
    • Cortex-A15 — данный тип ядра является наилучшим решением и используется в чипах флагманских коммуникаторов различных производителей.

  2. ARM Cortex-R — это процессоры, предназначенные для реально-временных применений. Данный тип процессоров используется в автомобилях и жестких дисках т.к имеет высокую надежность, отказоустойчивость и детерменированные ответы в режиме real-time. В Cortex-R поддерживаются все те же инструкции, что и в Cortex-A. Пару примеров данной серии процессоров:
    • ARM Cortex-R5 и ARM Cortex-R7 — процессоры выполненные по 28-нанометровой технологии, в которые добавлена поддержка стандартов LTE и LTE-Advanced. Также данные процессоры выполняются в одно- и двухядерных вариантах.

  3. ARM Cortex-M — это процессоры, предназначенные для микроконтроллерных применений. Данная линейка процессоров применяется не только в STM-контроллерах, но и в разработках таких фирм как: Texas Instruments, Analog Devices, Atmel и т.д. По сравнению с предыдущими линейками Cortex-процессоров, ARM Cortex-M является более дешевым и поэтому содержит в себе всего один набор инструкций — Thumb-2.

Приведу несколько плюсов использования Cortex-процессоров:
  • Гарвардская архитектура. Стоит помнить о том, что каждая команда проходит через трехступечнатый конвейер (выборка, дешифрация и выполнение команды), но благодаря Гарвардской архитектуре операции выполняются параллельно, т.е выглядит это так: первая инструкция — выполняется, вторая — дешифрируется, третья — считывается с определенной ячейки памяти;
  • Метод bit banding. Благодаря данному методу осуществляется эффективный доступ к регистрам и флагам устойств ввода-вывода, расположенных в SRAM. Благодаря данному методу можно сэкономить во-первых размер программы, а во-вторых время выполнения программы;
  • Низкая стоимость. На сегодняшний день благодаря высокой степени безопасности, защищенности, достачно большим объемом памяти и множеству других плюшек, Cortex-процессоры являются лучшим выбором среди других процессоров.

На сегодня у меня все, в дальнейшем планирую начать написание целого практического цикла о программировании в связке STM32+Linux, начиная от «Hello, World!» и заканчивая FreeRTOS.

habr.com

ARM (архитектура) Википедия

У этого термина существуют и другие значения, см. ARM.
ARM
ARM powered Badge.svg
Логотип ARM
Разработчик ARM Limited
Разрядность ARMv7 64/32 бит, до ARMv8 только 32 бит
Представлена 1985
Архитектура RISC
Тип Регистр-регистр
Кодирование СК ARMv8: фиксированное (32 бит), кроме режима совместимости с ARMv7 кодом
ARMv7/6: смешанное (32 и 16 бит выровнено)
ARMv3/2: фиксированное (32 бит)
Реализация переходов по флагам условий
Порядок байтов Переключаемый (bi-endian), обычно — от младшего к старшему (little-endian)
Расширения NEON, Thumb-2 (обязательно начиная с ARMv7), Jazelle, VFPv4-D16, VFPv4 (все обязательны в ARMv8)
В микроконтроллерах: FPv4-SP
ARM powered Badge.svg

Архитектура ARM (от англ. Advanced RISC Machine — усовершенствованная RISC-машина; иногда — Acorn RISC Machine) — семейство лицензируемых 32-битных и 64-битных микропроцессорных ядер разработки компании ARM Limited[1].

Среди лицензиатов — AMD, Apple, Analog Devices, Atmel, Xilinx, Cirrus Logic[en], Intel (до 27 июня 2006 года), Marvell, NXP, STMicroelectronics, Samsung, LG, MediaTek, Qualcomm, Sony, Texas Instruments, Nvidia, Freescale, Миландр, ЭЛВИС[2], HiSilicon.

Значимые семейства процессоров: ARM7, ARM9, ARM11 и Cortex[3][4].

Многие лицензиаты делают собственные версии ядер на базе ARM: DEC StrongARM, Freescale i.MX, Intel XScale, NVIDIA Tegra, ST-Ericsson Nomadik[en], Krait и Kryo[en] в Qualcomm Snapdragon, Texas Instruments OMAP, Samsung Hummingbird, LG h23, Apple A6 и HiSilicon K3.

В 2007 году около 98 % из более чем миллиарда мобильных телефонов, продававшихся ежегодно, были оснащены, по крайней мере, одним процессором ARM[5]. По состоянию на 2009, на процессоры ARM приходилось до 90 % всех встроенных 32-разрядных процессоров.[6] Процессоры ARM широко используются в потребительской электронике — в том числе смартфонах, мобильных телефонах и плеерах, портативных игровых консолях, калькуляторах, умных часах и компьютерных периферийных устройствах, таких, как жесткие диски или маршрутизаторы.

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

После достижения некоторых успехов с компьютером BBC Micro британская компания Acorn Computers задумалась над переходом от относительно слабых процессоров MOS Technology 6502 к более производительным решениям и выходом на рынок бизнес-компьютеров с той же платформой BBC Micro. Такие процессоры, как Motorola 68000 и 32016 от National Semiconductor, были для этого неприг

ruwikiorg.ru

cortex Википедия

Семейство ARM Архитектура ARM Ядро Дополнения Кэши (I / D), MMU Типичные MIPS @ МГц
ARM1 ARMv1 ARM1 Первая реализация Нет
ARM2 ARMv2 ARM2 В ARMv2 была добавлена инструкция MUL (умножение) Нет 4 MIPS @ 8 МГц
0.33 DMIPS/МГц
ARMv2a ARM250 Встроенный MEMC (MMU), графический процессор и сопроцессор ввода-вывода. В ARMv2a добавлены инструкции SWP и SWPB (обмен) Нет, MEMC1a 7 MIPS @ 12 МГц
ARM3 ARMv2a ARM3 Первая интегрированная кэш память 4 КБ, унифицированный 12 MIPS @ 25 МГц
0.50 DMIPS/МГц
ARM6 ARMv3 ARM60 В ARMv3 добавлена поддержка 32-битой адресации памяти (ранее — 26 бит) Нет 10 MIPS @ 12 МГц
ARM600 Как в ARM60, дополнительно — кэш и шина сопроцессора (для блока FPA10 обработки числе с плавающей запятой) 4 КБ, унифицированный 28 MIPS @ 33 МГц
ARM610 Как в ARM60, кэш, без шины сопроцессора 4 КБ, унифицированный 17 MIPS @ 20 МГц
0.65 DMIPS/МГц
ARM7 ARMv3 ARM700 8 КБ, унифицированный 40 МГц
ARM710 Как ARM700, без шины сопроцессора 8 КБ, унифицированный 40 МГц
ARM710a Как ARM710 8 КБ, унифицированный 40 МГц
0.68 DMIPS/МГц
ARM7TDMI ARMv4T ARM7TDMI(-S) 3-стадийный конвейер, Thumb. В ARMv4 отказались от 26-битной адресации Нет 15 MIPS @ 16.8 МГц
63 DMIPS @ 70 МГц
ARM710T Как ARM7TDMI, дополнительно имеет кэш 8 КБ, унифицированный, MMU 36 MIPS @ 40 МГц
ARM720T Как ARM7TDMI, имеет кэш 8 КБ, унифицированный, MMU (с FCSE — Fast Context Switch Extension) 60 MIPS @ 59.8 МГц
ARM740T Как ARM7TDMI, имеет кэш MPU
ARM7EJ ARMv5TEJ ARM7EJ-S 5-стадийный конвейер, Thumb, Jazelle DBX, Расширенные DSP-команды Нет
ARM8 ARMv4 ARM810[4][5] 5-стадийный конвейер, статический предсказатель ветвлений, удвоение пропускной способности памяти 8 КБ, унифицированный, MMU 84 MIPS @ 72 МГц
1.16 DMIPS/МГц
ARM9TDMI ARMv4T ARM9TDMI 5-стадийный конвейер, Thumb Нет
ARM920T Как ARM9TDMI, кэши 16 КБ / 16 КБ, MMU с FCSE (Fast Context Switch Extension)[6] 200 MIPS @ 180 МГц
ARM922T Как ARM9TDMI, кэши 8 КБ / 8 КБ, MMU
ARM940T Как ARM9TDMI, кэши 4 КБ / 4 КБ, MPU
ARM9E ARMv5TE ARM946E-S Thumb, DSP, кэши Различные, тесно связанная память (TCM), MPU
ARM966E-S Thumb, DSP Без кэша и памяти TCM
ARM968E-S Как ARM966E-S Без кэша и TCM
ARMv5TEJ ARM926EJ-S Thumb, Jazelle DBX, DSP Различные, TCM, MMU 220 MIPS @ 200 МГц
ARMv5TE ARM996HS Процессор без тактовой частоты, остальное как у ARM966E-S Без кэша, TCM, MPU
ARM10E ARMv5TE ARM1020E 6-стадийный конвейер, Thumb, DSP, (VFP) 32 КБ / 32 КБ, MMU
ARM1022E Как ARM1020E 16 КБ / 16 КБ, MMU
ARMv5TEJ ARM1026EJ-S Thumb, Jazelle DBX, DSP, (VFP) Различные, MMU или MPU
ARM11 ARMv6 ARM1136J(F)-S[7] 8-стадийный конвейер, SIMD, Thumb, Jazelle DBX, (VFP), DSP Различные, MMU 740 @ 532—665 МГц (i.MX31 SoC), 400—528 МГц
ARMv6T2 ARM1156T2(F)-S 8-стадийный конвейер, SIMD, Thumb-2, (VFP), DSP Различные, MPU
ARMv6Z ARM1176JZ(F)-S Как ARM1136EJ(F)-S Различные, MMU + TrustZone 965 DMIPS @ 772 МГц, до 2600 DMIPS с 4 процессорами[8]
ARMv6K ARM11 MPCore Как ARM1136EJ(F)-S, SMP с 1-4 ядрами Различные, MMU
SecurCore ARMv6-M SC000 0.9 DMIPS/МГц
ARMv4T SC100
ARMv7-M SC300 1.25 DMIPS/МГц
Cortex-M ARMv6-M Cortex-M0[9] Microcontroller profile, Thumb + Thumb-2 subset (BL, MRS, MSR, ISB, DSB, DМБ),[10] аппаратное умножение, опциональный системный таймер и память «bit-banding» Опциональный кэш, без TCM, без MPU 0.84 DMIPS/МГц
Cortex-M0+[11] Микроконтроллер, подмножество Thumb и Thumb-2 (BL, MRS, MSR, ISB, DSB, DМБ),[10] аппаратное умножение, опциональный системный таймер и память «bit-banding» Опциональный кэш, без TCM, опциональный MPU на 8 регионов 0.93 DMIPS/МГц
Cortex-M1[12] Микроконтроллер, подмножество Thumb и Thumb-2 (BL, MRS, MSR, ISB, DSB, DМБ),[10] аппаратное умножение, опция SVC / банк для указателя стека, опциональный системный таймер, без памяти «bit-banding» Опциональный кэш, 0-1024 КБ I-TCM, 0-1024 КБ D-TCM, без MPU 136 DMIPS @ 170 МГц,[13] (0.8 DMIPS/МГц FPGA-dependent)[14]
ARMv7-M Cortex-M3[15] Микроконтроллер, Thumb / Thumb-2, аппаратные умножение и деление, опциональная память «bit-banding» Опциональный кэш, без TCM, опциональный MPU на 8 регионов 1.25 DMIPS/МГц
ARMv7E-M Cortex-M4[16] Микроконтроллер, Thumb / Thumb-2 / DSP / опциональное расширение FPv4 для одинарной точности, аппаратные умножение и деление, опциональная память «bit-banding» Опциональный кэш, без TCM, опциональный MPU на 8 регионов 1.25 DMIPS/МГц (1.27 с FPU FPv4)
ARMv7E-M Cortex-M7[17] Микроконтроллер, Thumb / Thumb-2 / DSP / опциональный блок FPU для чисел одинарной и двойной точности, аппаратные умножение и деление 0-64 КБ I-кэш, 0-64 КБ D-кэш, 0-16 МБ I-TCM, 0-16 МБ D-TCM (все — с опциональным ECC), Опциональный MPU на 8 или 16 регионов 2.14 DMIPS/МГц
ARMv8-M Baseline Cortex-M23 ARM TrustZone 0.98 DMIPS/МГц

2.5 CoreMark/МГц

ARMv8-M Mainline Cortex-M33 ARM TrustZone 1.5 DMIPS/МГц

3.86 CoreMark/МГц

Cortex-R ARMv7-R Cortex-R4[18] Профиль реального времени, Thumb / Thumb-2 / DSP / опциональный VFPv3 FPU, аппаратные умножение и опциональное деление, опциональные четность и ECC для внутренних шин, кэша, TCM, 8-стадийный конвейер, два ядра в режиме «lockstep» с логикой обработки ошибок 0-64 КБ / 0-64 КБ, 0-2 из 0-8 МБ TCM, опционально MPU на 8 или 12
Cortex-R5 (MPCore)[19] Профиль реального времени, Thumb / Thumb-2 / DSP / опциональный VFPv3 FPU, аппаратные умножение и опциональное деление, опциональные четность и ECC для внутренних шин, кэша, TCM, 8-стадийный конвейер, два ядра в режиме «lockstep» с логикой обработки ошибок. Опционально допускается работа двух ядер как независимых. Периферийный порт с низкими задержками (LLPP), порт когерентности для ускорителя (ACP)[20] 0-64 КБ / 0-64 КБ, 0-2 из 0-8 МБ TCM, опц. MPU на 12 или 16
Cortex-R7 (MPCore)[21] Профиль реального времени, Thumb / Thumb-2 / DSP / опциональный VFPv3 FPU, аппаратные умножение и опциональное деление, опциональные четность и ECC для внутренних шин, кэша, TCM, 11-стадийный конвейер, два ядра в режиме «lockstep» с логикой обработки ошибок. Ядра out-of-order, с динамическим переименованием регистров. Опционально допускается работа двух ядер как независимых. Периферийный порт с низкими задержками (LLPP), порт когерентности для ускорителя (ACP)[20] 0-64 КБ / 0-64 КБ, ? из 0-128 КБ TCM, опц. MPU на 16
Cortex-A ARMv7-A Cortex-A5[22] Профиль «Application», ARM / Thumb / Thumb-2 / DSP / SIMD / опциональный VFPv4-D16 FPU / опциональный NEON / Jazelle RCT и DBX, 1-4 ядро, опционально MPCore, блок управления снупированием (SCU, snoop control unit), контроллер общих прерываний (GIC), порт когерентности для ускорителя (ACP) 4-64 КБ / 4-64 КБ L1, MMU + TrustZone 1.57 DMIPS/МГц на ядро
Cortex-A7 MPCore[23] Профиль «Application», ARM / Thumb / Thumb-2 / DSP / VFPv4-D16 FPU / NEON / Jazelle RCT и DBX / аппаратная виртуализация, очередное исполнение команд (in-order), суперскаляр, SMP на 1-4 ядра, Large Physical Address Extensions (LPAE), блок управления снупированием (SCU), контроллер общих прерываний (GIC), порт когерентности для ускорителя (ACP). Архитектура и набор расширений совпадают с Cortex-A15. 8-10 стадий в конвейере, пониженное энергопотребление[24] 32 КБ / 32 КБ L1, 0-4 МБ L2, MMU + TrustZone 1.9 DMIPS/МГц на ядро
Cortex-A8[25] Профиль «Application», ARM / Thumb / Thumb-2 / VFPv3 FPU / NEON / Jazelle RCT и DAC, 13-стадийный суперскаляр 16-32 КБ / 16-32 КБ L1, 0-1 МБ L2 опц. ECC, MMU + TrustZone до 2000 (2.0 DMIPS/МГц с частотами от 600 МГц до превышающих 1 ГГц)
Cortex-A9 MPCore[26] Профиль «Application», ARM / Thumb / Thumb-2 / DSP / опционально VFPv3 FPU / опционально NEON / Jazelle RCT и DBX, внеочередное исполнение (out-of-order) со спекулятивностью, суперскаляр, SMP на 1-4 ядра, блок управления снупированием (SCU), контроллер общих прерываний (GIC), порт когерентности для ускорителя (ACP). 16-64 КБ / 16-64 КБ L1, 0-8 МБ L2 опц. контроль четности, MMU + TrustZone 2.5 DMIPS/МГц на ядро, 10,000 DMIPS @ 2 ГГц на техпроцессе TSMC 40G (два ядра)
Cortex-A12[27] позже объединен с A17 Профиль «Application», ARM / Thumb-2 / DSP / VFPv4 FPU / NEON / аппаратная виртуализация, внеочередное спекулятивное исполнение, суперскаляр, SMP на 1-4 ядра, Large Physical Address Extensions (LPAE), блок управления снупированием (SCU), контроллер общих прерываний (GIC), порт когерентности для ускорителя (ACP). 32-64 КБ / 32 КБ L1, 256 КБ-8 МБ L2 3.0 DMIPS/МГц на ядро
Cortex-A15 MPCore[28] Профиль «Application», ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / целочисленное деление / MAC (объединенное умножение-сложение) / Jazelle RCT / аппаратная вирутализация, внеочередное спекулятивное исполнение, суперскаляр, SMP на 1-4 ядра, Large Physical Address Extensions (LPAE), блок управления снупированием (SCU), контроллер общих прерываний (GIC), порт когерентности для ускорителя (ACP). 15-24 стадийный конвейер[24] 32 КБ с четностью / 32 КБ с ECC L1, 0-4 МБ L2 с ECC, MMU + TrustZone Не менее 3.5 DMIPS/МГц на ядро (до 4.01 DMIPS/МГц в зависимости от реализации)[29]
Cortex-A17 MPCore Профиль «Application», ARM / Thumb / Thumb-2 / DSP / VFPv4 FPU / NEON / целочисленное деление / MAC (объединенное умножение-сложение) / Jazelle RCT / аппаратная виртуализация, внеочередное спекулятивное исполнение, суперскаляр, SMP на 1-4 ядра, Large Physical Address Extensions (LPAE), блок управления снупированием (SCU), контроллер общих прерываний (GIC), порт когерентности для ускорителя (ACP). MMU + TrustZone
Cortex-A50 ARMv8-A Cortex-A53[30] Профиль «Application», AArch42 и AArch64, SMP на 1-4 ядра, Trustzone, улучшенный NEON SIMD, VFPv4, аппаратная виртуализация, запуск до двух команд в цикл, очередное (in-order) конвейерное исполнение 8-64 КБ с четностью / 8-64 КБ с ECC L1 на каждое ядро, 128 КБ-2 МБ общий L2, 40-битные физические адреса 2.3 DMIPS/МГц
Cortex-A57[31] Профиль «Application», AArch42 и AArch64, SMP на 1-4 ядра, Trustzone, улучшенный NEON SIMD, VFPv4, аппаратная виртуализация, запуск множества команд в цикл, глубокое внеочередное исполнение 48 КБ с двойной четностью (DED) / 32 КБ L1 с ECC на ядро, 512 КБ-2 МБ общий L2, 44-битные физ. адреса Не менее 4.1 DMIPS/МГц на ядро (до 4.76 DMIPS/МГц в зависимости от реализации)
Cortex-A72[32]
Семейство ARM Архитектура ARM Ядро Дополнения Кэши (I / D), MMU Типичные MIPS @ МГц

wikiredia.ru

Что такое ARM-архитектура?

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

Основа продуктов CPU

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

ARM-архитектура для чайников

Под аббревиатурой ARM скрывается довольно успешная британская компания ARM Limited в области IT-технологий. Расшифровывается она как Advanced RISC Machines и является одним из крупных мировых разработчиков и лицензиаров 32-разрядной архитектуры RISC-процессоров, которыми оснащается большинство портативных устройств.

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

  • Atmel.
  • Cirrus Logic.
  • Intel.
  • Apple.
  • nVidia.
  • HiSilicon.
  • Marvell.
  • NXP.
  • Samsung.
  • Qualcomm.
  • Sony Ericsson.
  • Texas Instruments.
  • Broadcom.

Некоторые из них известны широкой аудитории потребителей цифровых гаджетов. По заверениям британской корпорации ARM, общая численность произведенных по их технологии микропроцессоров - более 2,5 миллиарда. Существует несколько серий мобильных камней:

  • ARM7 – тактовая частота 60-72 МГц, что актуально для мобильных бюджетных телефонов.
  • ARM9/ ARM9E – частота уже более высокая около 200 МГц. Такими микропроцессорами оснащаются более функциональные смартфоны и карманные компьютеры (КПК).

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

Популярные микропроцессоры xScale от компании Marvell (до середины лета 2007 года проект находился в распоряжении Intel) на самом деле представляют собой расширенный вариант архитектуры ARM9, дополненный набором инструкций Wireless MMX. Данное решение от Intel было ориентировано на поддержку мультимедийных приложений.

Мировой гигант

ARM-технология относится к 32-битной микропроцессорной архитектуре, содержащая сокращенный набор команд, что именуется как RISC. По проведенным подсчетам, применение процессоров ARM – это 82% от всего количества производимых RISC-процессоров, что говорит о довольно широкой зоне охвата 32-битных систем.

Многие электронные устройства оснащаются ARM-архитектурой процессора, и это не только PDA и сотовые телефоны, но и портативные игровые консоли, калькуляторы, компьютерная периферия, сетевое оборудование и многое другое.

Небольшое путешествие назад в прошлое

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

В 1980 году была основана компания Acorn Computers, которая начала создавать персональные компьютеры. Поэтому ранее ARM была представлена как Acorn RISC Machines.

Год спустя на суд потребителей была представлена домашняя версия ПК BBC Micro с самой первой ARM-архитектурой процессора. Это был успех, тем не менее чип не справлялся с графическими задачами, а прочие варианты в лице процессоров Motorola 68000 и National Semiconductor 32016 тоже не годились для этого.

Тогда руководство компании задумалось над созданием своего микропроцессора. Инженеров заинтересовала новая процессорная архитектура, придуманная выпускниками местного университета. В ней как раз использовался сокращенный набор команд, или RISC. И после появления первого компьютера, который управлялся процессором Acorn Risc Machine, успех пришел довольно быстро – в 1990 году между британским брендом и Apple был заключен договор. Это положило началу разработки нового чипсета, что, в свою очередь, привело к образованию целой команды разработчиков, именуемой как Advanced RISC Machines, или ARM.

Архитектура процессора Arm

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

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

Область применения

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

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

Можно сказать, что практически каждое современное электронное устройство, которое нуждается в управлении процессором, так или иначе оснащенном чипами ARM. А тот факт, что такая процессорная архитектура поддерживает многие операционные системы, будь то Linux, Android, iOS, и Windows, является неоспоримым преимуществом. Среди них числиться и Windows embedded CE 6.0 Core, архитектура arm тоже ею поддерживается. Данная платформа рассчитана на наладонные компьютеры, мобильные телефоны и встраиваемые системы.

Отличительные особенности x86 и ARM

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

К CISC относятся процессоры x86 (Intel либо AMD), к RISC, как уже можно понять, семейство ARM. У архитектуры x86, и arm есть свои почитатели. Благодаря стараниям специалистов ARM, которые делали упор на энергоэффективность и использование простого набора инструкций, процессоры сильно выиграли от этого – мобильный рынок начал стремительно развиваться, а многие смартфоны практически почти приравнялись с возможностями компьютеров.

Решение от Samsung

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

Эти два семейства по-своему завоевывали сердца пользователей. Но в чем их различие? Отличительных признаков или даже особенностей несколько, разберем наиболее важные из них.

Мощность обработки

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

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

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

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

  • между регистрами;
  • между регистром и местом памяти;
  • между ячейками памяти.

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

Потребляемая мощность

В зависимости от типа устройства потребляемая мощность может иметь разную степень значимости. Для той системы, которая подключена к постоянному источнику питания (электросеть) ограничения потребления энергии попросту нет. Однако мобильные телефоны и прочие электронные гаджеты в полной мере зависят от управления питанием.

Линейка ядер Cortex

Еще одно различие архитектуры arm и x86 в том, что у первой энергопотребление меньше чем 5 Вт, включая многие сопутствующие пакеты: графические процессоры, периферийные устройства, память. Такая малая мощность обусловлена меньшей численностью транзисторов в совокупности с относительно низкими скоростями (если провести параллель с процессорами для настольных ПК). В то же время это нашло отпечаток на производительности – для выполнения сложных операций требуется больше времени.

Ядра Intel отличаются сложность структурой и в силу этого потребление энергии у них существенно выше. К примеру, процессор Intel I-7 с высокой производительностью потребляет около 130 Вт энергии, мобильные версии – 6-30 Вт.

Программное обеспечение

Проводить сравнение по этому параметру довольно трудно, поскольку оба бренда очень популярны в своих кругах. Устройства, которые основываются на процессорах arm-архитектуры, прекрасно работают с мобильными операционными системами (Android и прочее).

Машины под управлением процессоров от Intel способны работать с платформами наподобие Windows и Linux. К тому же оба семейства микропроцессоров дружат с приложениями, написанными на языке Java.

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

Новые достижения

Компания ARM за счет ведения грамотной политики, полностью прибрала к рукам мобильный рынок. Но в дальнейшем она не собирается останавливаться на достигнутом. Не так давно была представлена новая разработка ядер: Cortex-A53, и Cortex-A57, в которых было проведено одно важное обновление – поддержка 64-битных вычислений.

Ядро A53 является прямым последователем ARM Cortex-A8, у которого хоть и была не очень высокая производительность, но энергопотребление на минимальном уровне. Как отмечают специалисты, у архитектуры arm cortex a53 энергопотребление снижено в 4 раза, а по производительности она не будет уступать ядру Cortex-A9. И это притом, что площадь ядра A53 на 40% меньше, чем у A9.

arm архитектура

Ядро A57 придет на замену Cortex-A9 и Cortex-A15. При этом инженеры ARM заявляют о феноменальном приросте производительности – в три раза выше, чем у ядра A15. Иными словами микропроцессор A57 будет в 6 раз быстрее Cortex-A9, а его энергоэффективность будет в 5 раз лучше, чем у A15.

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

Но что более ценно это то, что архитектура arm cortex a53 – это та составляющая, которая позволит избежать проблем, связанных с нехваткой памяти. К тому же и устройство будет медленнее разряжать батарею. Благодаря новинке эти проблемы теперь останутся в далеком прошлом.

Графические решения

Помимо разработки процессоров, компания ARM трудится над воплощением графических ускорителей серии Mali. И самый первый из них – это Mali 55. Этим ускорителем оснастили телефон LG Renoir. И да, это самый обычный мобильник. Только в нем GPU отвечала не за игры, а лишь отрисовывал интерфейс, ведь если судить по современным меркам, графический процессор отличается примитивными возможностями.

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

Конкурентоспособность

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

А когда всемирно известный компьютерный бренд Microsoft заключил договор с Intel, у остальных производителей просто не было шансов – операционная система Windows отказывалась работать с процессорами ARM. Как тут не удержаться от использования эмуляторов gcam на архитектуру arm?! Что касательно компании Intel, то наблюдая волну успеха ARM Limited, тоже попыталась создать процессор, который бы составил достойную конкуренцию. Для этого широкой публике был предоставлен чип Intel Atom. Но заняло это намного больший промежуток времени, чем у ARM Limited. И в производство чип ушел лишь в 2011 году, но драгоценное время было уже потеряно.

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

Перспективы на будущее

В конечном итоге компания признала полную повальность принятого решения и в дальнейшем отказалась от производства процессоров под мобильные устройства. Единственный крупный производитель чипов Intel Atom – это компания ASUS. В то же время эти процессоры не канули в лету, ими в массовом порядке оснащали нетбуки, неттопы и прочие портативные устройства.

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

Перспективы на будущее

В истории развития компании ARM есть один интересный момент (в самом начале статьи именно он имелся ввиду). Когда-то в основе ARM Limited находилась компания Apple и вероятно, что вся технология ARM принадлежала бы именно ей. Однако судьба распорядилась иначе – в 1998 году Apple находилась в кризисном положении, и руководство было вынуждено продать свою долю. В настоящее время она находится наравне с прочими производителями и остается для своих устройств iPhone и iPad закупать технологии у ARM Limited. Кто же мог знать, как все может обернуться?!

Современные процессоры ARM способны выполнять боле сложные операции. А в ближайшем будущем руководство компании нацелилось выйти на серверный рынок, в чем она, несомненно, заинтересована. К тому же в наше современное время, когда близится эпоха развития интернет вещей (IoT), в числе которых и «умные» бытовые приборы, можно прогнозировать еще большую востребованность чипов с ARM-архитектурой.

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

В качестве заключения

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

Мобильное совершенство

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

Также, по мнению специалистов из Intel, процессоры ARM не способны обеспечить запуск настольных версий операционных систем. Однако такое заявление звучит немного нелогично, ведь владельцы ультрамобильных ПК не пользуются «тяжеловесным» программным обеспечением. В большинстве случаев нужен выход в сеть интернет, редактирование документов, прослушивание медиафайлов (музыка, кино) и прочие несложные задачи. А ARM решения прекрасно справляются с такими операциями.

fb.ru

Отправить ответ

avatar
  Подписаться  
Уведомление о