26.01.2016

Мобильные процессоры-2016: архитектуры ARM и x86/64

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

Введение

Мобильные устройства планомерно вытесняют «старые добрые» стационарные компьютеры: смартфонов, планшетов и всякого рода гибридных гаджетов продаётся всё больше, а традиционные десктопы остаются уделом лишь любителей «самосбора» и экстремальных геймеров. Фактически, индустрия игр — это единственное, что ещё держит на плаву производителей ПК. Для подавляющего большинства обычных потребителей эти громоздкие, шумные и горячие ящики уже остались в далёком прошлом. Говоря «компьютер», мы уже чаще всего имеем в виду не системный блок с монитором, а ноутбук.

На сегодняшний день ноутбук — это разумный компромисс между производительностью (давно уже избыточной для большинства потребительных задач), портативностью и ценой. Но лэптопы неизбежно проигрывают по мобильности куда более компактным устройствам — смартфонам, планшетам и их гибридам — фаблетам (или смартпэдам, если угодно) и клавиатурным планшетам. Эти гаджеты почти невесомы, они не занимают много места и их можно постоянно носить с собой — в кармане или дамской сумочке. Что же касается производительности, то даже недорогой современный смартфон легко заткнёт за пояс игровой ПК начала 2000-х.

Поэтому вряд ли кого-то сегодня удивит тот факт, что мобильных процессоров в мире продаётся намного больше, чем «обычных» чипов для ПК. Подавляющее большинство таких процессоров построено на архитектуре ARM, но стараниями Intel в этом сегменте присутствуют и модели с «писишной» архитектурой x86/64. Но на этом поле задают тон уже не Intel и AMD, а Qualcomm и MediaTek — и, конечно же, сам разработчик микроархитектуры, британская компания ARM Holdings.

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

Начнём с того, что же такое архитектура ARM и чем она отличается от архитектуры x86.

Центральные микропроцессоры x86 построены на базе архитектуры CISC (Complex Instruction Set Computing, «с полным набором инструкций»), в которой каждая инструкция может выполнять сразу несколько низкоуровневых операций. В 1978 году был выпущен 16-битный чип Intel 8086, в 1985 году — 32-разрядный «386-й», а в 1986 году — первый первый скалярный (то есть выполняющий одну операцию за один такт) чип i486 (80486) оо встроенной кэш-памятю и блоком вычислений с плавающей запятой (FPU). В 1993 году увидели свет процессоры Intel Pentium — первые суперскалярные (выполняющие несколько операций за такт) и суперконвейерные (в этих чипах было два конвейера) чипы семейства x86.

CISC-RISC

История ARM-процессоров восходит к архитектуре RISC (Reduced Instruction Set Computer, «с сокращённым набором команд», в основу которой положена идея повышения быстродействия за счёт максимального упрощения инструкций и ограничения их длины. Разработчиком ARM-процессоров стала британская компания Acorn Computers, выпускавшая 8-битные чипы для школьных компьютеров ВВС Micro, а также «бытовых» персоналок Apple I и II и Commodore PET. В 1986 году появился первый 32-битный чип на основе архитектуры RISС, способный конкурировать с x86-им — ARM 2, называние которого сложилось из аббревиатуры «Acorn RISC Machine». Современные ARM-процессоры — это тоже суперскалярные суперконвейерные микросхемы, но построенные на основе RISC-архитектуры. А компания ARM Holdings — это прямой потомок Acorn Computers.

С тех пор прошло много лет, и параллельное развитие двух идеологически различных микроархитектур показало, что «экономичная» RISC может на равных соперничать с «экстенсивной» CISC. При этом при сравнимой производительности, ARM-процессоры потребляют радикально меньше электроэнергии, чем аналоги с архитектурой x86/64, что и сделало их естественными кандидатами на место в мобильных устройствах, которые питаются от батарей.

arm-cortex-a15

Любопытно, что компания ARM Holdings за всё время своего существования не произвела ни одной микросхемы — она продаёт (лицензирует) интеллектуальную собственность, которая позволяет другим фирмам разрабатывать и производить чипы на основе архитектуры ARM. В состав предоставляемой лицезиатам информации может входить как общее описание цепей, соединяющих различные блоки на уровне перемещения данных между регистрами, так и документация на конкретные топологические блоки, на основе которой покупателю предлагается самостоятельно разработать физический дизайн микросхемы с учётом поставленных задач и технологических возможностей.

Системы на чипе

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

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

Мобильные «системы на чипе» часто называют чипсетами, что не совсем корректно, посколько это не набор из нескольких микросхем (chip set), а единая микросхема, однокристалльная система, включающая в себя центральный и графический процессор, а также модули связи и интерфейсные шины. Ещё совсем недавно контроллеры связи всегда выносились в отдельные внешние чипы, особенно в бюджетных версиях, но сегодня практически все доступные беспроводные адаптеры в большинстве случаев уже входят в состав системы на чипе.

Ядра Cortex-A

Инженеры ARM разрабатывают множество микропроцессоров, ориентированных на самые различные применения — от уличных терминалов до «умных» холодильников, но нас интересует лишь одна линейка — Cortex Ax. Процессоры на ядрах с индексом Ax предназначены для использования в смартфонах, планшетах и игровых приставках, в то время как чипы с индексами Mx или Кч можно встретить, например, в уличных терминалах, «умной» бытовой технике или в беспроводных роутерах.

Числовое значение в индексе означает не только поколение ядра, но и, как правило, производительность. В официальных характеристиках процессоров любых крупных производителей мобильных чипов вроде Qualcomm, Mediatek или Samsung можно найти сведения, на основе каких ядер построена та или иная микросхема, так что по ним можно примерно оценить уровень и «свежесть» той или иной модели. На коробках бюджетных гаджетов на основе чипов мелких компаний могут быть прямо указаны типы ядер, а не название модели процессора, которое мало что расскажет непрофессионалу.

32-разрядные процессоры Cortex на ядрах A5, A8 и A9 сегодня считаются безнадёжно устаревшими и уже не используются даже в бюджетных смартфонах и планшетах. Абсолютный минимум для аппарата эконом-класса на сегодняшний день — это двуядерный чип на Cortex A7. Такие микросхемы работают на тактовых частотах до 1,3-1,4 ГГц и обеспечивают достаточную производительность для большинства стандартных «смартфонных» задач.

Cortex-A7

Кроме того, Cortex-A7 иногда встречается в составе многоядерных чипов в качестве энергосберегающих ядер, а, например, A8 вы не увидите уже нигде, поскольку он в принципе не поддерживает многоядерных конфигураций. Благодаря достаточно современному 28-нм техпроцессу себестоимость выпуска микросхем на базе этих ядер весьма невысока.

Cortex-A9

Вышедшие в 2013 году ядра Cortex-A12 и A15 сконструированы под 28-нм технологические нормы и могут работать в тандеме с экономичными Cortex-A7, что позволяет создавать недорогие многоядерные и энергоэффективные «системы на чипе».

Cortex-A15

A12 работают на частотах до 1,8 ГГц, а А15 — до 2,5 ГГц, что позволяет их использовать не только в смартфонах, но и в гибридных клавиатурных планшетах. Достаточно сказать, что на базе A15 построены такие известные «системы на чипе», как Nvidia Tegra 4 и Samsung Exynos 5 Octa.

Ядра Cortex «пятидесятой» серии — это новый шаг в развитии ARM-архитектуры, знаменующий переход на 64-разрядность с возможностью адресации более 4 ГБ оперативной памяти и поддержкой новых наборов команд. Первым процессором, построенным на 64-битной архитектуре ARMv8, стал Apple A7 — «сердце» смартфона iPhonе 5S, который появился на рынке в сентябре 2013 года. А начиная с 2014 года все флагманские смартфоны ведущих производителей работают на 64-разрядной аппаратной платформе.

Cortex-A53 Cortex-A57

Флагманские ядра «семидесятой» серии Cortex-A72, представленные в начале 2015 года, на сегодняшний день обеспечивают максимальную производительность и используются в составе многоядерных гетерогенных процессоров вместе с более экономичными и дешёвыми Cortex-A53.

Cortex-A72

Типичная современная 64-битная «система на чипе» — это четыре энергоэффективных ядра Cortex A53, прямых потомков Cortex-A9, и четыре высокопроизводительных ядра Cortex-A57, работающих по схеме big.LITTLE с поддержкой наборов инструкций ARMv8/v8-A. При этом в бюджетном сегменте не редкость и морально устаревшие модели на 32-битных ядрах Cortex-A7 или A9, работающих с инструкциями ARMv7/v7-A или ARMv8-R.

Технология big.LITTLE

Схема big.LITTLE — это оригинальный способ совместить высокую производительность и энергоэффективность в одной многоядерной «системе на чипе». Идея проста: на одном кристалле устанавливаются несколько маломощных, но экономичных ядер, и несколько высокопроизводительных, но требовательных к питанию. При этом, в зависимости от нагрузки, задействуются либо экономичные, либо производительные ядра, либо те и другие в разных сочетаниях.

Существует три варианта реализации big.LITTLE: миграция между кластерами, миграция между ядрами и гетерогенный мультипроцессинг.

Big.Little_Cluster_Switching

Самая простая схема «миграция между кластерами» предполагает объединение ядер в два кластера: экономичный и производительный. Первым чипом такого рода стал Samsung Exynos 5 Octa, анонсированный в начале 2013 года. В его состав вошли два кластера, состоящие из 4 энергоэффективных ядер Cortex-A7 и 4 мощных ядер Cortex-A15. Переключение между кластерами осуществляется полностью автоматически на аппаратном уровне, независимо от операционной системы, при этом задействуется либо один, либо другой кластер.

In_Kernel_Switcher

Более продвинутая схема «переключение между ядрами» (IKS — in-kernel switcher) задействуется на программном уровне и управляется средствами операционной системы. Здесь экономичное ядро объединяется с производительным в виртуальную пару, при этом в конкретный момент времени лишь одно из физических ядер получает полноценное питание. Возможны и более сложные реализации, когда в виртуальное ядро могут объединяться несколько экономичных или производительных ядер.

Global_Task_Scheduling

Наконец, самая сложная схема «гетерогенный мультипроцессинг» (MP — heterogeneous multi-processing) или «глобальное распределение задач» (GTS — Global Task Scheduling) позволяет одновременно использовать все физические ядра различных типов с разной нагрузкой, которая распределяется в зависимости от приоритетности на уровне операционной системы. На сегодняшний день технология big.LITTLE MP реализована в чипах Huawei Kirin 920, Mediatek MT6595, Samsung Exynos 5 и 7 Octa , 5 Hexa и других.

Видеоускорители

В состав «системы на чипе» входит графический адаптер, возможности которого могут варьироваться в весьма широких пределах — всё зависит как от поколения, так и от модели. Бюджетные варианты сегодня поддерживают несложные 3D-игры и уверенно декодируют HD-видео, а флагманы — шутя справляются с любыми игрушками и без проблем выводят на экран фильмы в формате 4K UHD.

Графические ускорители под маркой ARM Mali разрабатываются инженерами всё той же ARM Holdings и конструируются с учётом максимальной совместимости с вычислительными ядрами Cortex.

Бюджетный сегмент представляют Mali-400 MP, Mali-450 MP и Mali-450 MP4, поддерживающие программный интерфейс OpenGL ES 2.0. В среднем классе выступают Mali-T720 и Mali-T760 — они работают с Open GL ES 3.0, а в старшей лиге играют Mali-T860 и Mali-T880 c поддержкой OpenGL ES 3.1 и DirectX 11.1.

mali-400 mali-450 mali-t720 mali-t760

mali-t860

mali-t880

450 720 760

ARM_Mali-T880-Arch

T860

t880

Крупные производители используют и собственные разработки: типичные примеры — это Qualcomm Adreno или Nvidia Tegra, о них мы поговорим в материалах, посвящённых этим производителям. В некоторых чипах применятся также конструкции сторонних разработчиков, например, компании Imagination Technologies, чьи ускорители PowerVR по лицензии используют Apple, Intel, MediaTek, Samsung и другие.

Intel Atom

Корпорация Intel сильно опоздала на «делёжку пирога» и выпустила первые процессоры для смартфонов и планшетов лишь в 2012 году, когда на этом рынке уже безраздельно царствовала британская ARM. Тем более непостижимо, что Intel удалось откусить кусочек такого конкурентного рынка с чипом, даже не имевшем нативной поддержки в тогдашних версиях Android — самой популярной мобильной ОС.

Процессор Intel Atom Z2460 (Medfield) — это ультранизковольтная версия «писишного» 32-разрядного одноядерного чипа c набором команд x86, технологией Hyper-Threading и расширениями SSE2/3, поддерживающая двухканальную память LPDDR2 800 объёмом до 2 ГБ. В качестве графического ускорителя использовался PowerVR SGX 540 поддержкой OpenGL ES 2.0 и OpenVG 1.1. Именно на основе этого чипа был разработан референсный дизайн смартфонов Intel в 2012 году, и все выпущенные на его базе аппараты были похожи как две капли воды — в том числе и российский MegaFon Mint SP-A20i.

medfield

Главная проблема первых Intel Atom заключалась в том, что операционная система Android работала на них через «посредника» — в чипе использовался аппаратный транслятор команд ARM для архитектуры x86. Мощности чипа вполне хватало для подобных излишеств, но мелкие проблемы с совместимостью всё же проявлялись в самых неожиданных местах и в самых разных приложениях. К тому же, смартфон с таким чипом получался слишком дорогим на фоне конкурентов.

Но если первые «интелофоны» умудрялись работать на Android 2.3 Gingerbread, то с появлением Android 4.0 Ice Cream Sandwitch поддержка процессоров x86 появилась уже на уровне ОС, и к настоящему времени проблемы с совместимостью практически полностью решены.

moorefield

Тем не менее, Intel не удалось вытянуть платформу Atom во флагманский сегмент, максимум, чего удалось добиться — это выйти в нижний средний класс. Именно к нему и относятся практически все смартфоны на базе современных 64-разрядных Atom Z3560/Z3580 — например, Asus ZenFone 2 или Lenovo P90.

* * *
Во следующих частях нашего обзора мы поговорим о ведущих производителях мобильных «систем на чипе», конкретных моделях и их особенностях.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *