Перспективы процессоров ARM
АрхивНетбуки, смартбуки и планшетыПопулярность планшета Apple iPad заставляет по-новому взглянуть на перспективы ARM-процессоров, которые на заре персональных компьютеров на равных конкурировали с семейством x86-совместимых чипов.
Популярность планшета Apple iPad заставляет по-новому взглянуть на перспективы ARM-процессоров, которые на заре персональных компьютеров на равных конкурировали с семейством x86-совместимых чипов. Последние разработки свидетельствуют о том, что уже в самом ближайшем будущем они могут составить серьёзную конкуренцию x86-ым, особенно в сегменте чипов для мобильных и портативных устройств.
История ARM-процессоров началась в 1978 году, когда была создана британская компания Acorn Computers, инженеры которой и придумали микросхемы этой конструкции. ARM-процессоры представляют собой 32-битные чипы на базе микроархитектуры RISC (Reduced Instruction Set Computer), то есть с сокращённым набором команд. В основу этой архитектуры положена идея повышения быстродействия за счёт максимального упрощения инструкций и ограничения их длины.
Первоначально под маркой Acorn выпускались несколько чрезвычайно популярных в Великобритании моделей персональных компьютеров на основе восьмибитных чипов MOS Tech 6502. Эти же микросхемы, кстати, использовались также в таких знаменитых машинах, как Apple I, Apple II и Commodore PET. Однако в 1982 году появился легендарный компьютер Commodore 64 на базе более совершенного чипа MOS Tech 6510, и машины Acorn перестали пользоваться спросом. В результате было решено разработать собственный процессор на основе архитектуры 6502, который позволил бы снова строить конкурентоспособные машины.
Первый серийный ARM-процессор, получивший название ARM2 - сокращение от названия проекта Acorn RISC Machine, - был выпущен в 1986 году. Он стал самым простым и недорогим 32-битным процессором на тот момент: в нём отсутствовала не только кэш-память, что было нормой для чипов того времени, но и микропрограммы. В отличие от CISC-процессоров, микрокод исполнялся в нём, как и любой другой машинный код, путём преобразования в простые инструкции. Кристалл ARM2 состоял из 30000 транзисторов, и эта компактность конструкции осталась характерным признаком конструкции в ARM6 всего на 5000 транзисторов больше.
Современные ARM-процессоры - это суперскалярные суперконвейерные микросхемы, построенные на основе RISC-архитектуры. При этом чуть ли не единственное формальное отличие ARM и x86 - микроархитектуры RISC и CISC. Процессоры семейства x86 базируются на архитектуре CISC (Complex Instruction Set Computing, то есть "с полным набором инструкций"), в которой каждая инструкция может выполнять сразу несколько низкоуровневых операций. Чипы Pentium, представленные в 1993 году, стали первыми суперскалярными, то есть выполняющими несколько операций за такт, и суперконвейерными - в них было два конвейера.
Однако даже если формально чипы x86 остаются CISC-процессорами, начиная с модификации i486DX они всё больше напоминают RISC-процессоры. Сохраняя совместимость со всеми предыдущими наборами команд, современные x86-процессоры демонстрируют максимальную производительность только с ограниченным набором простых инструкций, который чрезвычайно похож на набор RISC-команд. Корректнее считать сегодняшние x86 CISC-процессорами с RISC-ядрами: встроенный в такую микросхему аппаратный транслятор декодирует сложные CISC-инструкции в набор простых внутренних RISC-команд. И хотя каждая CISC-инструкция может "раскладываться" на несколько RISC-команд, быстрота выполнения последних обеспечивает значительный прирост производительности.
Настоящее, а не формальное отличие ARM от x86, заключается в том, что большинство "икс восемьдесят шестых" - это универсальные процессоры, оснащённые множеством специализированных блоков и модулей, призванных справляться практически с любыми задачами - от веб-сёрфинга и обработки текстовых файлов до кодирования видео высокого разрешения и работы с трёхмерной графикой. У ARM-чипов, ориентированных на использование в смартфонах и прочих портативных устройствах, совершенно иные цели и возможности. Они проще, дешевле и энергоэффективнее.
Растущая популярность нетбуков и планшетных компьютеров, (особенно самого успешного из них, Apple iPad), обнаружила ту самую нишу, где ARM способны конкурировать с x86. Конечно, речь не о "телефонных" Qualcomm MSM7201A и четырёхъядерных Core i5, а о моделях, специально разработанных для использования в портативных микрокомпьютерах - это, прежде всего, ARM-процессоры Cortex-A8, "сердце" iPad и iPhone 4, и x86-чипы Intel Atom, установленные в подавляющем большинстве нетбуков.
Интересно, что у этих архитектурно разных чипов есть одна общая конструктивная особенность: они оба работают по принципу последовательного исполнения инструкций, в то время как большая часть x86 - процессоры с внеочередным выполнением команд. Такая схема была реализована принята в Atom чтобы добиться максимальной производительности на ватт потребляемой энергии за счёт отказа от модулей, отвечающих за внеочередное выполнение инструкций.
Сравнение производительности Atom и Cortex-A8 провёл Вэн Смит, автор тестовых пакетов OpenSourceMark, miniBench и один из соавторов SiSoftware Sandra (С подробными результатами всех тестов можно ознакомиться здесь.У Cortex-A8 были несколько заведомо слабых мест: поддержка медленной 32-битной памяти DDR2-200 и более чем скромная встроенная графика с максимальным разрешением 1024 на 768 при шестнадцатибитной глубине цвета. Результаты тестирования оказались более чем любопытными: Cortex-A8 продемонстрировал вполне конкурентоспособную производительность в целочисленных вычислениях при значительно более низком энергопотреблении.
Провальными оказались лишь тесты на пропускную способность памяти и на вычисления с плавающей запятой - традиционной "ахиллесовой пятой" ARM-чипов. Дело в том, что до недавнего времени в ARM-процессорах вообще отсутствовали модули FPU и хотя в Cortex-A8 есть два таких модуля (Neon 32-бит SP и VFP), их мощности явно недостаточно. Вычисления с плавающей запятой - это и трёхмерные игры, и научное моделирование, и некоторые виды обработки и кодирования видео и звука. Ни планшеты, ни нетбуки не рассчитаны на решение подобных задач, поэтому это вряд ли можно считать существенным недостатком.
Впрочем, как утверждают в ARM Limited, в новейшей архитектуре Cortex-A9, рассчитанной на создание процессоров с одним-четырьмя ядрами, в них значительно повышена производительность вычислений с плавающей запятой. Первые чипы на базе Cortex-A9 - NVIDIA Tegra 2 - это двуядерные микросхемы с графическим ядром, поддерживающим видео формата Full HD 1080p и трёхмерную графику с программным интерфейсом OpenGL ES 2.0. Планшет или нетбук с такими характеристиками запросто поспорит с любым устройством на основе Atom.
В отличие от Intel или AMD, ARM сама не занимается выпуском процессоров, предпочитая продавать лицензии другим. Такими лицензиями располагают, в частности, те же Intel и AMD, а также VIA Technologies, IBM, NVIDIA, Nintendo, Texas Instruments, Freescale, Qualcomm и Samsung. При этом в одном только 2009 году в мире было выпущено почти три миллиарда ARM-процессоров.
Специалисты связывают перспективы ARM-процессоров не только с портативными устройствами, но и с серверными решениями. К примеру, по некоторым данным, компания Facebook, владелец крупнейшей социальной сети, планирует построить свой новый дата-центр с использованием серверов на базе ARM-процессоров. Идея не нова - мобильные чипы в серверах позволяют экономить на площади помещений, на системах охлаждения и, разумеется, на электроэнергии. При этом ARM-процессоры могут стать неплохим выбором для системы, рассчитанной на решение ограниченного набора однотипных задач.