ARM архитектура
ARM-архитектура (от англ. Advanced RISC Machine, изначально Acorn RISC Machine) — это семейство микропроцессорных архитектур, основанных на принципах RISC (Reduced Instruction Set Computer — вычисления с сокращённым набором команд). Разрабатывается и лицензируется британской компанией Arm Holdings (ранее ARM Limited). Архитектура характеризуется высокой энергоэффективностью, низким тепловыделением и широкой масштабируемостью, что сделало её доминирующей на рынке мобильных устройств (смартфонов, планшетов), а также активно используемой во встраиваемых системах, микроконтроллерах, сетевом оборудовании и, с начала 2020-х годов, в серверных и суперкомпьютерных решениях.
История
Создание и ранние годы (1983—1990)
История ARM-архитектуры начинается в 1983 году, когда британская компания Acorn Computers (Кембридж, Великобритания) приступила к разработке собственного процессора для своих персональных компьютеров BBC Micro и будущих моделей. Руководителем проекта выступил Софи Уилсон, а ключевыми инженерами были Стив Фербер, Джеймс Ван Сомерен и другие. Команда ставила задачу создать процессор, который бы сочетал производительность, сопоставимую с Intel 80286, но при этом имел низкое энергопотребление и был дешевле в производстве.
В 1985 году был выпущен первый процессор — ARM1 (Acorn RISC Machine 1). Он представлял собой 32-разрядный RISC-процессор, работавший на частоте 6 МГц, и содержал около 25 000 транзисторов. ARM1 использовался в качестве сопроцессора в некоторых моделях BBC Micro, а также в качестве основного процессора в прототипах компьютеров Acorn Archimedes.
В 1987 году на рынок вышел компьютер Acorn Archimedes, оснащённый процессором ARM2. ARM2 работал на частоте 8 МГц, имел производительность около 4 MIPS (миллионов инструкций в секунду) и потреблял всего 0,5 Вт. Архитектура ARM2 отличалась простотой: всего 30 000 транзисторов, что было значительно меньше, чем у конкурирующих CISC-процессоров (например, Intel 80386 содержал около 275 000 транзисторов). Это позволило Acorn Archimedes стать одним из самых быстрых персональных компьютеров своего времени в определённых задачах.
Выделение в отдельную компанию и лицензирование (1990—1998)
В 1990 году Acorn Computers, столкнувшись с финансовыми трудностями, выделила подразделение по разработке процессоров в совместное предприятие с компаниями Apple Computer и VLSI Technology. Новая компания получила название Advanced RISC Machines Ltd (ARM Ltd). Целью было создание универсального RISC-процессора для широкого спектра устройств, в первую очередь для портативной электроники.
Первым коммерческим успехом ARM Ltd стал процессор ARM6, выпущенный в 1991 году. Он лёг в основу чипа ARM610, который использовался в карманном компьютере Apple Newton MessagePad (1993 год). Хотя сам Newton не стал массовым продуктом, он продемонстрировал возможности ARM-архитектуры в мобильных устройствах.
Ключевым решением ARM Ltd стала бизнес-модель лицензирования: компания не производила процессоры самостоятельно, а продавала лицензии на свою архитектуру и готовые блоки (IP-ядра) другим производителям полупроводников. Это позволило ARM Ltd сосредоточиться на разработке, а лицензиатам — адаптировать ядра под свои технологические процессы и нужды. Первыми крупными лицензиатами стали Texas Instruments, Samsung, Sharp, Philips.
Эра мобильных устройств (1998—2010)
В 1998 году ARM Ltd провела первичное публичное размещение акций (IPO) на Лондонской фондовой бирже и NASDAQ. В том же году был представлен ARM7TDMI — одно из самых успешных ядер в истории архитектуры. Оно сочетала низкое энергопотребление, компактность и производительность, достаточную для работы с операционными системами реального времени. ARM7TDMI использовался в миллиардах устройств, включая мобильные телефоны, MP3-плееры, автомобильные системы.
Следующим важным этапом стало появление в 2002 году ядра ARM11, которое обеспечило поддержку SIMD-инструкций (Single Instruction, Multiple Data) и улучшенную производительность для мультимедийных задач. Однако настоящий прорыв произошёл с выпуском в 2005 году архитектуры ARMv7, на базе которой были созданы семейства ядер Cortex:
- Cortex-A (Application) — производительные ядра для смартфонов, планшетов, нетбуков.
- Cortex-R (Real-time) — ядра для систем реального времени (автомобильная электроника, промышленные контроллеры).
- Cortex-M (Microcontroller) — сверхэнергоэффективные ядра для микроконтроллеров (датчики, умные часы, бытовая техника).
Именно процессоры на базе Cortex-A (например, Cortex-A8, Cortex-A9) стали основой для первых массовых смартфонов на платформе Android и Apple iPhone (в iPhone использовались процессоры собственной разработки Apple на ARM-архитектуре, начиная с Samsung S5L8900 в 2007 году).
Доминирование и экспансия в новые сегменты (2010 — настоящее время)
К 2010 году ARM-архитектура стала безусловным лидером на рынке мобильных процессоров. В 2011 году компания представила 64-разрядную архитектуру ARMv8-A, что позволило ARM-процессорам конкурировать с x86-64 в серверном сегменте. Первыми 64-разрядными ARM-чипами стали Apple A7 (2013 год) и Qualcomm Snapdragon 810 (2014 год).
В середине 2010-х годов началось активное проникновение ARM в серверный сегмент. Компании Amazon (с процессорами Graviton), Ampere Computing, Huawei начали выпускать серверные решения на ARM-архитектуре, ориентированные на облачные вычисления и веб-сервисы с низким энергопотреблением. В 2020 году компания Apple объявила о переходе своих компьютеров Mac с процессоров Intel на собственные ARM-процессоры серии M (M1, M2, M3 и т.д.), что стало серьёзным вызовом для x86-архитектуры на рынке персональных компьютеров.
В 2020 году компания Nvidia объявила о намерении приобрести Arm Holdings за 40 миллиардов долларов, однако сделка была заблокирована регулирующими органами (Федеральная торговая комиссия США, Европейская комиссия, Управление по рынкам и конкуренции Великобритании) из-за антимонопольных опасений. В 2022 году сделка была официально отменена. Arm Holdings провела повторное IPO в 2023 году.
Архитектурные особенности
ARM-архитектура является типичным представителем RISC-философии, однако имеет ряд уникальных черт, отличающих её от других RISC-архитектур (MIPS, RISC-V, PowerPC).
Система команд
- Фиксированная длина инструкций: в классических ARM-режимах (ARM, Thumb) все инструкции имеют фиксированную длину — 32 бита или 16 бит (в режиме Thumb). Это упрощает декодирование и конвейерную обработку.
- Load/Store архитектура: операции обработки данных (арифметика, логика) выполняются только над регистрами, а доступ к памяти — только через инструкции загрузки (LDR) и сохранения (STR). Это упрощает проектирование ядра.
- Большой регистровый файл: процессоры ARM имеют 16 или 32 регистра общего назначения (в зависимости от версии архитектуры), что позволяет хранить промежуточные данные без обращения к памяти.
- Условное выполнение инструкций: в классическом 32-разрядном ARM-режиме большинство инструкций могут выполняться условно, в зависимости от состояния флагов (N, Z, C, V). Это позволяет избежать ветвлений и повысить производительность на коротких участках кода.
Режимы работы
- ARM-режим: 32-разрядные инструкции, максимальная производительность.
- Thumb-режим: 16-разрядные инструкции, повышенная плотность кода (экономия памяти), но с ограниченным набором команд. Используется в микроконтроллерах.
- Thumb-2: расширение, добавленное в архитектуру ARMv7, позволяющее смешивать 16- и 32-разрядные инструкции, обеспечивая как высокую плотность кода, так и производительность.
- AArch64 (ARMv8-A): 64-разрядный режим, поддерживающий 31 регистр общего назначения (X0-X30), 64-разрядные инструкции и адресацию до 48 бит (расширяемо до 52 бит).
Энергоэффективность
Низкое энергопотребление ARM-процессоров достигается за счёт нескольких факторов:
- Простота ядра (меньшее количество транзисторов по сравнению с x86).
- Использование технологий динамического управления напряжением и частотой (DVFS).
- Поддержка глубоких режимов сна (WFI, WFE — Wait For Interrupt, Wait For Event).
- Конвейерная архитектура с низким энергопотреблением (например, в ядрах Cortex-M используется 2- или 3-стадийный конвейер).
Классификация ядер ARM
Семейства ядер ARM классифицируются по производительности и области применения:
| Семейство | Назначение | Примеры ядер | Типичные применения |
|---|---|---|---|
| Cortex-A | Application (высокая производительность) | Cortex-A76, A78, X1, X2, X3, X4 | Смартфоны, планшеты, ноутбуки, серверы |
| Cortex-R | Real-time (детерминированное выполнение) | Cortex-R4, R5, R52, R82 | Автомобильные системы (ABS, Airbag), промышленные контроллеры, жёсткие диски |
| Cortex-M | Microcontroller (сверхнизкое энергопотребление) | Cortex-M0, M3, M4, M7, M33 | Микроконтроллеры (STM32, NXP LPC), датчики, IoT-устройства, носимые гаджеты |
| Neoverse | Серверные и сетевые решения | Neoverse N1, N2, V1, V2 | Облачные вычисления, сетевые процессоры, суперкомпьютеры |
Применение
Мобильные устройства
ARM-архитектура является доминирующей в смартфонах и планшетах. Практически все современные мобильные процессоры (Qualcomm Snapdragon, MediaTek Dimensity, Samsung Exynos, Apple A-серии, Google Tensor) используют ARM-ядра. По состоянию на 2024 год более 95% всех смартфонов в мире работают на процессорах с ARM-архитектурой.
Микроконтроллеры и IoT
Ядра Cortex-M используются в подавляющем большинстве 32-разрядных микроконтроллеров. Благодаря низкому энергопотреблению (единицы микроватт в режиме сна) и компактности, они применяются в датчиках, умных часах, фитнес-трекерах, системах «умного дома», промышленных контроллерах и медицинских приборах.
Персональные компьютеры
С 2020 года, после выхода процессоров Apple M1, ARM-архитектура начала активно завоёвывать рынок ПК. Процессоры Apple M-серии (M1, M2, M3, M4) демонстрируют высокую производительность при низком энергопотреблении. Компании Qualcomm (Snapdragon X Elite) и MediaTek также выпускают ARM-процессоры для ноутбуков на Windows.
Серверы и облачные вычисления
Серверные процессоры на ARM-архитектуре (Amazon Graviton, Ampere Altra, Huawei Kunpeng) используются в дата-центрах для задач, не требующих максимальной однопоточной производительности, но критичных к энергоэффективности (веб-серверы, базы данных, контейнеризация, машинное обучение). По оценкам аналитиков, к 2027 году ARM-процессоры могут занять до 20% рынка серверных решений.
Встраиваемые системы и автомобильная электроника
Ядра Cortex-R и Cortex-A используются в автомобильных системах (инфотейнмент, ADAS, управление двигателем), сетевом оборудовании (маршрутизаторы, коммутаторы), промышленных контроллерах и авионике.
Лицензирование и экосистема
Arm Holdings не производит физические чипы, а лицензирует интеллектуальную собственность (IP) — описания архитектуры, готовые ядра (Cortex), а также графические процессоры (Mali), контроллеры памяти и другие блоки. Существует несколько типов лицензий:
- Core License: лицензиат получает готовое описание ядра (синтезируемый RTL-код) и может интегрировать его в свой чип без изменений.
- Architecture License: лицензиат получает право разрабатывать собственные ядра, совместимые с ARM-архитектурой. Такую лицензию имеют Apple, Qualcomm (до 2024 года), Samsung, Broadcom, Marvell.
Экосистема ARM включает тысячи компаний — производителей чипов (TSMC, Samsung Foundry, GlobalFoundries), разработчиков программного обеспечения (компиляторы, операционные системы, библиотеки), производителей отладочных плат и инструментов.
Критика и ограничения
Несмотря на доминирование, ARM-архитектура подвергается критике по нескольким направлениям:
- Фрагментация: из-за большого числа лицензиатов и разнообразия ядер (Cortex-A, Cortex-R, Cortex-M, Neoverse) возникает фрагментация экосистемы. Программное обеспечение, оптимизированное для одного ARM-чипа, может работать неэффективно на другом.
- Производительность в однопоточных задачах: традиционно ARM-процессоры уступали x86-процессорам в пиковой однопоточной производительности, хотя с появлением ядер Apple M-серии и Cortex-X этот разрыв значительно сократился.
- Зависимость от лицензиара: лицензиаты ARM зависят от решений Arm Holdings в части развития архитектуры, стоимости лицензий и роялти. В 2023—2024 годах Arm Holdings объявила о повышении роялти для новых поколений ядер, что вызвало недовольство некоторых партнёров.
- Безопасность: в 2018 году были обнаружены уязвимости Spectre и Meltdown, затронувшие в том числе ARM-процессоры. В последующие годы выявлялись и другие уязвимости, связанные с архитектурными особенностями (например, уязвимости в кэше данных).
Перспективы развития
Основные направления развития ARM-архитектуры включают:
- ARMv9: архитектура, анонсированная в 2021 году. Включает улучшенную безопасность (Memory Tagging Extension, Realm Management Extension), поддержку машинного обучения (Scalable Vector Extension 2), повышение производительности.
- Серверные решения: дальнейшее расширение доли ARM на рынке серверов, в том числе в суперкомпьютерах (например, Fugaku — японский суперкомпьютер на базе ARM-процессоров Fujitsu A64FX).
- Автомобильная электроника: развитие ядер Cortex-R и Cortex-A для систем автономного вождения и электрических транспортных средств.
- RISC-V конкуренция: появление открытой архитектуры RISC-V, которая предлагает альтернативу ARM для встраиваемых систем и микроконтроллеров. Однако ARM сохраняет преимущество за счёт зрелой экосистемы и широкой поддержки программного обеспечения.
Источники
- Furber, S. (2000). ARM System-on-Chip Architecture. Addison-Wesley.
- ARM Holdings plc. (2023). ARM Architecture Reference Manual (ARMv8-A).
- Patterson, D., & Hennessy, J. (2017). Computer Organization and Design: The Hardware/Software Interface (ARM Edition). Morgan Kaufmann.
- ARM Ltd. (1990—2024). Исторические пресс-релизы и технические документы компании ARM.
- AnandTech, Tom’s Hardware, SemiAnalysis — обзоры и аналитика процессоров ARM.
- Федеральная торговая комиссия США (FTC) — материалы по делу Nvidia/Arm (2021—2022).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →