Процессоры ARM: особенности
архитектуры, отличия, перспективы и модельный ряд.
Первые
чипы ARM появились еще три десятилетия назад благодаря стараниям британской
компании Acorn Computers
(ныне ARM Limited), но долгое время пребывали в тени
своих более именитых собратьев – процессоров архитектуры х86. Все перевернулось
с ног на голову с переходом IT-индустрии в пост-компьютерную эпоху, когда балом
стали править уже не ПК, а мобильные гаджеты.
Особенности архитектуры ARM
Особенностью
чипов для мобильных компьютеров является способность работать на одном заряде
аккумулятора с малым нагревом корпуса. Не всегда это получается, бывает, что
мобильный процессор показывает хорошую производительность, но при этом он
сильно перегревается или быстро разряжает аккумулятор. Так что высокое место в
рейтинге не всегда говорит о преимуществе чипа над другими
В
процессорной архитектуре x86, которую сейчас используют компании Intel и AMD,
применяется набор команд CISC (Complex Instruction Set Computer), хоть и не в чистом виде. Так, большое количество
сложных по своей структуре команд, что долгое время было отличительной чертой
CISC, сначала декодируются в простые, и только затем обрабатываются. Понятное
дело, на всю эту цепочку действий уходит немало энергии.
Рисунок
1. Чип ARM1 – первенец компании Acorn Computers, который производился на фабриках VLSI
В
качестве энергоэффективной альтернативы выступают чипы архитектуры ARM с
набором команд RISC (Reduced Instruction
Set Computer). Его
преимущество в изначально небольшом наборе простых команд, которые
обрабатываются с минимальными затратами. Как результат, сейчас на рынке
потребительской электроники мирно (на самом деле, не очень мирно) уживаются две
процессорные архитектуры – х86 и ARM, каждая из которых имеет свои преимущества
и недостатки.
Рисунок
2. Первым в истории устройством на базе процессора архитектуры ARM был
персональный компьютер BBC Micro
Архитектура
х86 позиционируется как более универсальная с точки зрения посильных ей задач,
включая даже столь ресурсоемкие, как редактирование фотографий, музыки и видео,
а также шифрование и сжатие данных. В свою очередь архитектура ARM «выезжает»
за счет крайне низкого энергопотребления и в целом-то достаточной
производительности для важнейших на сегодня целей: прорисовки веб-страниц и
воспроизведения медиaконтента.
Рисунок 3. Архитектурные отличия
процессоров x86 (набор команд CISC) и ARM (набор команд RISC)
На
осень 2016 года используются в смартфонах и планшетах такие вычислительные ядра
Cortex:
·
Cortex-A72
·
Cortex-A57
·
Cortex-A53
·
Cortex-A17
·
Cortex-A15
Количество вычислительных ядер
и потоков
Последние
годы все мобильные процессоры строятся по многоядерной архитектуре. На сегодня
есть процессоры, которые имеют в своем составе 10 вычислительных ядер. Но не
всегда большее количество ядер является явным преимуществом. Большее количество
ядер может увеличить количество вычислительных потоков (одновременно
выполняемых задач).
Рисунок 4. Пример расположения ядер в
процессорах ARM.
Для
получения максимальной производительности от реализации многоядерной
архитектуры, программные приложения должны быть оптимизированы под работу с
несколькими вычислительными ядрами. А это не всегда сделано, поэтому выше и
говорилось, что большее количество ядер не всегда есть преимущество. Например,
процессоры от Apple имеют 2-3 ядра, а по
производительности одни из лучших и это благодаря оптимизации программного
обеспечения и использованию комплектующих, специально сделанных для работы с
этим чипом.
Однокристальная система
С
технической точки зрения называть чипы архитектуры ARM процессорами не совсем
верно, ведь помимо одного или нескольких вычислительных ядер они включают целый
ряд сопутствующих компонентов. Более уместными в данном случае являются термины
однокристальная система и система-на-чипе (от англ. system
on a chip).
Так,
новейшие однокристальные системы для смартфонов и планшетных компьютеров
включают контроллер оперативной памяти, графический ускоритель, видеодекодер, аудиокодек и опционально модули беспроводной связи.
Узкоспециализированные чипы могут включать дополнительные контроллеры для
взаимодействия с периферийными устройствами, например датчиками.
Рисунок 5. Схема строения однокристальной
системы с четырьмя ядрами 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.
Рисунок 6. Пример использования процессора
Broadcom Thunderbird в
мобильных устройствах
Чип Broadcom Thunderbird – один из
немногочисленных представителей поколения ARM11, который до сих пор применяется
в Android-смартфонах
Современные поколения чипов
Все
более-менее новые чипы архитектуры ARM принадлежат к семейству ARMv7,
флагманские представители которого уже достигли отметки в восемь ядер и
тактовой частоты свыше 2 ГГц. Разработанные непосредственно ARM Limited процессорные ядра принадлежат к линейке Cortex и большинство производителей однокристальных систем
используют их без существенных изменений. Лишь компании Qualcomm
и Apple создали собственные модификации на основе
ARMv7 – первая назвала свои творения Scorpion и Krait, а вторая – Swift.
Рисунок 7. Чип Apple A6 (ядро Swift).
ARM Cortex-A8. Исторически первым процессорным ядром семейства ARMv7
было
Cortex-A8, которое легло в основу таких известных SoC своего времени как Apple A4 (iPhone 4 и iPad) и Samsung Hummingbird (Samsung
Galaxy S и
Galaxy Tab). Оно
демонстрирует примерно вдвое более высокую производительность по сравнению с
предшествующим ARM11. К тому же, ядро Cortex-A8 получило сопроцессор NEON для
обработки видео высокого разрешения и поддержку плагина Adobe
Flash.
Правда,
все это негативно сказалось на энергопотреблении Cortex-A8, которое значительно
выше чем у ARM11. Несмотря на то, что чипы ARM Cortex-A8 до сих пор применяются
в бюджетных планшетниках (однокристальная система Allwiner
Boxchip A10), их дни пребывания на рынке, по всей
видимости, сочтены.
Рисунок 8. Однокристальная система TI OMAP
3
Однокристальная
система TI OMAP 3 – представитель некогда популярного, но сейчас уже угасающего
поколения ARM Cortex-A8
ARM
Cortex-A9. Вслед за Cortex-A8 компания ARM Limited
представила новое поколение чипов – Cortex-A9, которое сейчас является самым
распространенным и занимает среднюю ценовую нишу. Производительность ядер
Cortex-A9 выросла примерно втрое по сравнению с Cortex-A8, да еще и появилась
возможность объединять их по два или даже четыре на одном чипе.
Сопроцессор
NEON стал уже необязательным: компания NVIDIA в своей однокристальной системе Tegra 2 его упразднила, решив освободить побольше места для
графического ускорителя. Правда, ничего хорошего из этого не вышло, ведь
большинство приложений-видеопроигрывателей все равно ориентировались на
проверенный временем NEON.
Рисунок 9. Чипы NVIDIA Tegra 2.
Почти
все флагманские планшетные компьютеры образца 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).
Рисунок 10. Схема строения однокристальной
системы c четырьмя ядрами ARM Cortex-A5
ARM
Cortex-A15. Процессорные ядра Cortex-A15 стали логическим продолжением
Cortex-A9 – как результат, чипам архитектуры ARM впервые в истории удалось
примерно сравниться по быстродействию с Intel Atom, а это уже большой успех. Не зря ведь компания Canonical в системных требования к версии ОС Ubuntu Touch с полноценной
многозадачностью указала двухъядерный процессор ARM Cortex-A15 или аналогичный Intel Atom.
Рисунок 11. Чипы Exynos
5250
Первой
массовой однокристальной системой Cortex-A15 стала двухъядерная Exynos 5250, которая применяется в планшетнике Google Nexus 10 и лэптопе Samsung Chromebook
Вслед
за NVIDIA концепцию big.LITTLE подхватила компания Samsung: «сердцем» смартфона Galaxy
S4 стал чип Exynos 5 Octa с
четырьмя ядрами Cortex-A15 и таким же количеством энергоэффективных ядер
Cortex-A7.
Рисунок 12. Схема однокристальной системы big.LITTLE с процессорными ядрами ARM Cortex-A15 (big) и Cortex-A7 (LITTLE)
Техпроцесс
Технологический
процесс для чипов означает полупроводниковое производство, состоящее из
последовательности операций при производстве этих микросхем. Обозначается как
размер в «нм», раньше было в «мкм». Сегодня ведутся
разработки по реализации 10 нм техпроцесса. На осень
2015 года в продаже есть процессоры по техпроцессу 14 нм,
это самые новые.
Само
обозначение техпроцесса в разное время обозначало или размер затвора
транзистора, сделанного по этой технологии или плотность элементов, или размер
ячейки памяти и др. В общем это технологии обработки полупроводника для
достижения заявленных характеристик. Чем меньше техпроцесс, тем больше рабочая
частота процессора и больше энергоэффективность.
Внутренняя память L2 и L3
Память
«Cache» второго L2 и третьего L3 уровня указывает на
объем внутренней памяти процессора. Эта память расположена на кристалле и имеет
очень большую скорость работы по сравнению с оперативной. Чем больше объем этой
памяти, тем лучше для производительности. L3 должно быть от 1 МВ для хорошей
производительности, L2 измеряется в КВ.
Декабрь
2016 года. Время выхода процессоров отсчитывается от октября 2015 года, если не
указан год.
№ |
Модель |
L2 Cache + L3 Cache |
МГц (норм. — — Turbo) |
Ядра / потоки |
Техпроцесс (нм) |
Архитектура |
Время выхода |
HiSilicon Kirin
960 |
2400 |
8/8 |
16 |
ARM |
2016 год |
||
1 |
Apple A9X |
2260 |
2/2 |
14 |
ARM |
2015 год |
|
Samsung Exynos 8890 |
2600 |
8/8 |
14 |
ARM |
2016 год |
||
HiSilicon Kirin 955 |
2500 |
8/8 |
16 |
ARM |
2016 год |
||
HiSilicon Kirin 950 |
2300 |
8/8 |
16 |
ARM |
2016 год |
||
Apple A10 Fusion |
3+4 Мб |
2340 |
4 |
16 |
ARM |
2016 год |
|
Qualcomm Snapdragon 821 MSM8996 Pro |
1,5МВ |
2400 |
4/4 |
14 |
ARM |
2016 год |
|
2 |
Samsung Exynos
7420 Octa |
2100 |
8/8 |
14 |
ARM |
7 мес. |
|
Qualcomm Snapdragon 820 MSM8996 |
1,5МВ |
2200 |
4/4 |
14 |
ARM |
2016 год |
|
3 |
Apple A9 |
1800 |
2/2 |
14 |
ARM |
2 мес. |
|
4 |
Intel Atom
x7-Z8700 |
2MB |
1600 ‑ 2400 |
4/4 |
14 |
x86 |
7 мес. |
5 |
Qualcomm Snapdragon
810 MSM8994 |
2000 |
8/8 |
20 |
ARM |
1 год 6
мес. |
|
Qualcomm Snapdragon 652 MSM8976 |
1800 |
8/8 |
28 |
ARM |
2016 год |
||
6 |
Qualcomm Snapdragon
808 MSM8992 |
2000 |
6/6 |
20 |
ARM |
1 год 6
мес. |
|
Qualcomm Snapdragon 650 MSM8956 |
1800 |
6/6 |
28 |
ARM |
2016 год |
||
7 |
Intel Atom
Z3795 |
2MB |
1590 ‑ 2390 |
4/4 |
22 |
x86 |
1 год 5
мес. |
8 |
Intel Atom
Z3785 |
2MB |
1490 ‑ 2410 |
4/4 |
22 |
x86 |
1 год 4
мес. |
9 |
Intel Atom
Z3775 |
2MB |
1460 ‑ 2390 |
4/4 |
22 |
x86 |
1 год 4
мес. |
10 |
Intel Atom
Z3775D |
2MB |
1490 ‑ 2410 |
4/4 |
22 |
x86 |
1 год 5
мес. |
11 |
Intel Atom
Z3770 |
2MB |
1460 ‑ 2400 |
4/4 |
22 |
x86 |
2 года 2
мес. |
12 |
Intel Atom
Z3770D |
2MB |
1500 ‑ 2410 |
4/4 |
22 |
x86 |
2 года 2
мес. |
13 |
Intel Atom
x5-Z8500 |
2MB |
1440 ‑ 2240 |
4/4 |
14 |
x86 |
8 мес. |
14 |
Nvidia Tegra
X1 |
2.5MB |
8/8 |
20 |
ARM |
10 мес. |
|
15 |
Apple A8X |
2MB + 4MB |
1500 |
3/3 |
20 |
ARM |
1 год |
16 |
Nvidia Tegra
K1 (Denver) |
2MB |
2300 |
2/2 |
28 |
ARM |
1 год |
17 |
Mediatek MT8173 |
2400 |
4/4 |
28 |
ARM |
8 мес. |
|
18 |
Mediatek MT6595 Turbo |
2MB |
2500 |
8/8 |
28 |
ARM |
1 год 8
мес. |
19 |
Samsung Exynos
5433 Octa |
1900 |
8/8 |
20 |
ARM |
1 год 2
мес. |
Таблица 1. Таблица процессоров для
смартфонов и планшетов
Дальнейшие перспективы
Компания
ARM Limited уже официально представила следующее
семейство процессоров ARMv8, представители которого в обязательном порядке
будут 64-разрядными. Открывают новую эпоху RISC-процессоров ядра Cortex-A53 и
Cortex-A57: первое энергоэффективное, а второе высокопроизводительное, но оба
способны работать с большими объемами оперативной памяти.
Производители
потребительской электроники семейством процессоров ARMv8 пока особо-то не
заинтересовались, но на горизонте вырисовались новые лицензиаты, планирующие
вывести чипы ARM на серверный рынок: AMD и Calxeda.
Идея новаторская, но вполне имеет право на жизнь: те же графические ускорители
NVIDIA Tesla, состоящие из большого числа простых
ядер, на практике доказали свою эффективность как серверных решений.