Tegra 2: история появления, возможности и положение на рынке
Мы решили разделить материал на две статьи. Данная часть будет состоять из теоретической информации. Возможно, она позволит некоторым из наших читателей лучше разобраться в ситуации, касающейся мобильных устройств и используемых в них технологических решений.
Самые нетерпеливые читатели могут сразу перейти к прочтению второго материала, который посвящен обзору готовящейся и выпущенной продукции.
RISC vs. CISC
Начнем издалека. Существует два различных подхода к реализации программной части процессорной архитектуры. Первый заключается в введении большого количества различных сложных инструкций, которые позволяют ускорять выполнение тех или иных задач. Второй подход, в свою очередь, подразумевает использование как можно меньшего количества инструкций, которые бы при этом выполнялись как можно быстрее.
Отсюда пошли два термина — CISC (Complex instruction set computing) и RISC (reduced instruction set computing). На заре развития компьютеров разработчики CPU шли путем наращивания количества инструкций. Это было вызвано высокой ценой дискового пространства и недоступностью высокоуровневых языков программирования. Соответственно, введение дополнительных инструкций упрощало написание программ.
RISC-процессоры существуют уже давно…
Однако со временем оказалось, что многие из инструкций практически не используются. Также многие из «сложных» инструкций были плохо оптимизированы, и зачастую команда быстрее выполнялась с помощью ряда простых инструкций. В результате появилась концепция RISC. В основу ее легли следующие идеи: минимизация количества инструкций и их унификация, увеличение тактовой частоты, распараллеливание. Такие модификации позволяют создавать недорогие процессоры с низким тепловыделением. Большинство RISC-архитектур хорошо масштабируются. Таким образом, можно без проблем создавать как процессоры для встраиваемых устройств, так и суперкомпьютеры. При этом нельзя однозначно сказать, что CISC-процессоры при прочих равных всегда оказываются быстрее.
С тех пор оба этих подхода существуют бок о бок. Больше того, зачастую в современных CISC-процессорах содержится «ядро», преобразующее сложные команды в последовательности более простых, использование которых позволяет обеспечить лучшее распараллеливание.
На ноутбуках и десктопных компьютерах «прописалась» CISC (в лице x86), а большая часть мобильных и встраиваемых устройств работает под управлением RISC-процессоров. Лишь на серверном рынке никак не прекращается борьба.
ARM
Если сейчас, говоря о CISC-процессорах, мы подразумеваем только модели с архитектурой x86, то для RISC всё не так однозначно. У многих на слуху названия ARM, ARC, AVR, MIPS, Power, SPARC и SuperH. Всё это — архитектуры, или даже наборы инструкций, в рамках которых выпускаются совершенно различные процессоры. Нас в данном случае интересует в первую очередь ARM.
ARM — английская компания, ее главный офис расположен в Кембридже
Первый ARM-процессор был разработан компанией Acorn Computers для собственных нужд. Впоследствии подразделение разработчиков было выделено в отдельную компанию ARM Holdings. Последняя занималась и продолжает заниматься разработкой новых версий процессорных ядер. Именно ядер, не самих процессоров целиком. Дело в том, что собственных производственных мощностей у ARM Holdings нет. Компания позволяет другим партнерам лицензировать свои архитектурные решения, зарабатывая деньги на самих лицензиях и получая отчисления за каждый проданный процессор с ядром собственной разработки. На данный момент подавляющее большинство мобильных устройств и многие встраиваемые содержат в себе ядра, разработанные ARM. Компания также решила начать выход на рынок серверных процессоров, заручившись поддержкой Dell.
System-on-a-chip
Получается, что когда речь идет о «процессорах ARM», имеется в виду лишь использование соответствующих процессорных ядер. Лицензиями ARM обладает много компаний, но, ввиду тематики нашего обзора, мы перечислим лишь несколько из них: Freescale, Marvell, Qualcomm, Samsung, ST-Ericsson, Texas Instruments и, с недавних пор, NVIDIA. Сейчас именно эти компании производят подавляющее большинство чипов для смартфонов, и они же планируют поделить зарождающиеся рынки планшетников и смартбуков.
Здесь никак нельзя обойти вниманием Intel, которая не хочет упускать столь лакомый кусочек и подготовила платформу Moorestown, основанную на архитектуре x86. Заметим, что ранее Intel выпускала также RISC-процессоры, в том числе с архитектурой ARM. Однако последние разработки в виде процессоров XScale, были проданы компании Marvell, и с тех пор процессорный гигант сосредоточился на оптимизации x86.
Вся системная логика Zune HD размещается на печатной плате 42x42 мм
(фото с сайта ifixit.com)
Однако все современные мобильные решения, как ARM, так и x86, объединяет одно: они представляют собой system-on-a-chip. Это означает, что на одной микросхеме, помимо процессорного ядра и кэш-памяти, располагаются все остальные компоненты, необходимые для работы устройства — эдакий очень компактный компьютер. На плате нужно распаять входы/выходы, оперативную память (иногда она располагается прямо на основном чипе, такая компоновка называется package-on-a-package), добавить чипы, обеспечивающие дополнительную функциональность (GPS, Wi-Fi, акселерометр и т.д.)… и всё. Именно используемыми элементами, а также их компоновкой в чипе, и различаются различные сборки.
«Новейшая история»
В последнее время наметилась тенденция придумывать процессорам для мобильных устройств какие-нибудь звучные названия. Раньше тоже происходили подобные события, но сейчас это приняло повальный характер.
У мобильного процессора даже есть свой логотип
Началось всё, наверное, с конца 2008 года, когда компания Qualcomm представила платформу Snapdragon. Это название привлекло внимание прессы и читателей. Всем внезапно стало важно, что же скрывается внутри смартфона. Анонс Tegra парой месяцев позже произвел схожий эффект. Об этом решении сразу же начали много говорить, новости пестрели различными упоминаниями. И это несмотря на то, что первый продукт, использующий данный чип, появился лишь в сентябре 2009 года (это был Zune HD).
Данному примеру последовали также Marvell со своей ARMADA и Apple с процессором A4, который производит Samsung. Samsung также выпустила свою собственную разработку, называющуюся Hummingbird. Много разговоров было и про Moorestown.
Это не значит, что остальные компании «сошли с дистанции», но мы не удивимся, если они в будущем последуют примеру своих конкурентов. Пока же Texas Instruments продолжает выпускать свои сборки в серии OMAP (Open Multimedia Application Platform), а у Freescale соответствующая серия называется i.MX.
Мобильные GPU и история появления Tegra
Как вы догадываетесь, важным элементом system-on-a-chip сборки является графическое ядро. Здесь долгое время правила бал компания PowerVR. Когда-то она производила дискретную графику для настольных ПК, но с появлением ATI и NVIDIA была вынуждена уйти с этого рынка, не выдержав конкуренции. Однако у нее получилось неплохо обосноваться на рынке графики для мобильных устройств, работая по схожей с ARM схеме. Различные решения серии PowerVR SGX уже давно используются Freescale, Intel, Samsung и Texas Instruments. Не жирно ли, спросите вы? Это же половина компаний из приведенного выше списка! Похоже, что подобный вопрос со временем пришел в голову нескольким компаниям. Притом некоторым, как вы увидите, достаточно давно.
Marvell для своей SoC будет пользоваться разработкой молодой компании Vivante. Ничего особенного о ней сказать нельзя — это первый контракт таких масштабов для данной компании.
Qualcomm поступила более решительно. В начале 2009 года она купила подразделение ATI/AMD, которое занималось разработкой SoC для встраиваемых систем (AMD Imageon). Через год появилась Adreno Graphics, которая и используется в современных сборках от Qualcomm. Забавно, что Imageon во многом выросла из Bitboys, купленной ATI в середине 2006 года.
В ARM Holdings подумали, что лицензировать еще и графические ядра — очень неплохая идея. В результате летом 2006 года была куплена компания Falanx, переименована в ARM Norway и теперь появилось семейство Mali. ST-Ericsson показалось разумным использовать процессорные и графические ядра одного производителя.
NVIDIA здесь отличилась, наверное, больше всех. В результате покупки в 2003 году компании MediaQ, которая разрабатывала «дискретные» GPU для многих КПК, появилась линейка GoForce. Она не снискала особой популярности, но и провальной ее назвать нельзя. Особенно стоит отметить появление GoForce в некоторых из моделей Motorola RAZR. Далее, в 2006 году была приобретена Hybrid Graphics. В данном случае это больше было похоже на устранение конкурента, но и некоторые разработки этой компании наверняка нашли применение в NVIDIA.
Первая SoC-сборка NVIDIA
Дальше — больше. В начале 2007 года была приобретена PortalPlayer, которая делала ARM SoC для плееров iPod вплоть до 4-го поколения. Полученные технологии помогли выпустить GoForce 6100, последнюю модель в линейке. Эти же наработки во многом использовались при создании NVIDIA Tegra. Таким образом, ошибочно полагать, что появление Tegra стало для компании шагом в неизведанную ранее область. Но, конечно, при разработке этого решения пришлось изрядно потрудиться. Смена названия символизировала собой как проведенную работу, так и смену концепции позиционирования новых чипов.
Модельный ряд Tegra, принципиальная схема, отличия Tegra 2
Изначально было представлено 2 серии процессоров: Tegra APX и Tegra 600. Первая предназначена для менее требовательных устройств — смартфонов, портативных плееров и т.д. Сборки другой серии предназначены для установки в смартбуки, планшеты и прочие устройства, обладающие большим объемом батареи и более высоким разрешением экрана.
Принципиальные схемы данных процессоров практически идентичны, различия заключаются в тактовых частотах исполнительных блоков. Например, APX способны справляться с декодированием 720p сигнала, а Tegra 650 может декодировать 1080p.
Блок-схема Tegra первого поколения
Основные компоненты Tegra достаточно подробно рассматривались нами в обзоре плеера Zune HD, но вкратце расскажем про них и здесь. Процессор ARM11 MPCore, работающий на тактовой частоте 600 МГц, использует шестое поколение набора инструкций ARM и, по сложившемуся мнению, в большинстве сценариев работы является «узким местом» (т.е. ограничивающим фактором) для всего чипа. Также там есть ядро ARM 7, которое и вовсе представляет собой решение «третьего» поколения. Однако к нему требований совсем немного — оно управляет ресурсами и питанием остальных блоков, а также используется при выполнении не очень требовательных задач.
Остальные элементы являются разработками/собственностью NVIDIA. Это GPU, процессор обработки изображений, блоки кодирования и декодирования видеосигнала, а также процессор обработки аудиосигнала.
Блок-схема Tegra второго поколения
За счет большого количества узкоспециализированных блоков достигается длительное время работы Tegra. Например, в случае проигрывания звука может работать лишь соответствующий процессор и ARM 7-ядро. Именно на сниженное энергопотребление и продвинутые графические возможности делала ставку NVIDIA. В компании считают, что определенное количественное изменение времени работы и соответствующее повышение автономности способно качественно изменить восприятие мобильных устройств в глазах пользователей.
При создании второго поколения Tegra в NVIDIA руководствовались той же идеологией. Возможности первого поколения всё еще соответствуют современным стандартам, однако всегда можно что-то улучшить.
Первым претендентом на замену стало процессорное ядро. Дабы продлить жизненный цикл новой платформы, было решено сразу купить лицензию на ARM Cortex-A9, которое на данный момент является наиболее совершенным среди всех вариантов, предлагаемых ARM. На замену ему через некоторое время должно прийти ядро с кодовым названием Eagle, но пока ни о каких готовящихся сборках на его основе не известно, так что говорить тут не о чем. Конструкция ARM Cortex-A9 MPCore подразумевает использование до 4 процессорных ядер, однако в NVIDIA решили пока «ограничиться» двумя. Слово «ограничиться» поставлено в кавычки, потому что на текущий момент это явный перебор, особенно если учесть тактовую частоту ядер (в зависимости от модификации Tegra она может достигать 1 ГГц). Известно заявленное ARM «энергопотребление в типичном процессоре» для Cortex-A9 MPCore — 250 мВт на ядро, можно ориентироваться на эту величину.
Unreal Engine 3 работает на Tegra 2
Производительность графического ядра также была несколько увеличена, дабы его мощность соответствовала возросшей производительности CPU. Принципиальная архитектура осталась прежней, но NVIDIA увеличила тактовую частоту, количество вычислительных блоков и пропускную способность памяти. Точные значения производительности неизвестны, но ориентировочно она в 2 раза выше, чем у предшественника.
По заявлениям компании, новый GPU обеспечивает более 60 FPS при игре в Quake 3 в разрешении 1024*600. Также графическое ядро справляется с Unreal Engine 3, что открывает радужные перспективы по использованию устройств на базе Tegra 2 в качестве игровой консоли. При игре в Quake 3 графика потребляет несколько сотен мВт, а для воспроизведения полноэкранного flash (да, поддерживается аппаратное ускорение flash) системе достаточно лишь 150 мВт.
Нам неизвестно, насколько сильно были переработаны остальные блоки, однако в этом и так не было особой необходимости. Tegra 2 позволяет кодировать и декодировать 1080p видео, при этом соответствующий блок потребляет 400 мВт. При проигрывании музыки цифра энергопотребления блока и вовсе смешная — 30 мВт.
Данные по энергопотреблению мы приводили неспроста — они были взяты из официальных источников и могут представлять некоторый интерес для оценки времени автономной работы устройств, основанных на Tegra 2. В заключение этой части нашего обзора укажем некоторые официальные данные по времени автономной работы двух различных «референсных» устройств — планшетного ПК и смартбука.
Планшетник (батарея 2000 мА*ч, экран потребляет 500 мВт):
- Режим ожидания: 2000 ч
- Проигрывание 128 Kbps MP3: 140 ч
- Проигрывание HD-видео на экране устройства: 8
- Проигрывание HD-видео при подключении к внешнему экрану: 16
Впечатляет, правда?
Смартбук (батарея 24 Вт*ч, экран потребляет 1 Вт):
- Проигрывание музыки: 600 ч
- Проигрывание HD-видео: 10 ч
Конкуренты и выводы
Как вы уже поняли, Tegra 2 представляет собой мощное и энергоэффективное решение. Однако конкуренция на этом рынке высока, поэтому странно было бы ждать каких-то послаблений от других игроков. К тому же для составления новой сборки необязательно разрабатывать «с нуля» новый CPU или GPU — достаточно лишь купить соответствующие лицензии. Это не значит, что процесс разработки очень уж прост, но производители реагируют на различные события быстро.
В соответствующем разделе мы уже перечислили основных производителей графических ядер для ARM-сборок, здесь же попытаемся сравнить флагманские сборки различных компаний, дабы оценить возможности и перспективы Tegra 2 в сравнении с ними.
В таблицу мы включили как присутствующие на рынке решения, так и только готовящиеся к выходу. К сожалению, разработчики не стремятся делиться объективной информацией о своих продуктах. Видимо, считается, что подобная «тактика черного ящика» позволит добиться лучших результатов продаж. Будем надеяться, что со временем данная ситуация изменится.
Пока же имеющиеся данные следует воспринимать с некоторой долей скепсиса. В частности, мы не стали указывать данные по частоте и количеству исполнительных блоков для графического ядра, так как имеющаяся информация уж очень противоречива.
Если у вас есть какие-либо исправления или дополнения, просим отправлять их на адрес info@ferra.ru
Разработчик | NVIDIA | NVIDIA | Apple (Samsung) | Samsung | Qualcomm | Qualcomm |
Модель | Tegra 650 | Tegra 2 250 | A4 | S5PC110 Hummingbird | QSD8650 | QSD8672 |
Техпроцесс | 65 нм | 40 нм | 45 нм | 45 нм | 65 нм | 45 нм |
CPU IP | ARM11 MPCore | Cortex-A9 MPCore | Cortex-A8 | Cortex-A8 | Qualcomm Scorpion | Qualcomm Scorpion |
Частота | 800 МГц | 1000 МГц | 1000 МГц | 1000 МГц | 1000 МГц | 1500 МГц |
К-во ядер | 1 | 2 | 1 | 1 | 1 | 2 |
RAM | LP-DDR | LP-DDR2 | LP-DDR (256 МБ PoP) | LP-DDR2 | LP-DDR1 | LP-DDR2 |
GPU IP | NVDIA ULP GeForce | NVDIA ULP GeForce | PowerVR SGX 535 | PowerVR SGXMP series | Adreno 200 | Adreno 220? |
Мполиг/с | 40 | 80? | 28 | 90 | 22 | 80 |
Мпикс/с | 600 | 1200? | 500 | ~1000 | 133 | ~500 |
Разработчик | T.I. | T.I. | Freescale | Freescale | Marvell | ST-Ericsson |
Модель | OMAP 3430 | OMAP 4440 | i.MX515 | i.MX535 | ARMADA 510 | U8500 |
Техпроцесс | 65 нм | 45 нм | 65 нм | ? | 55 нм | 45 нм |
CPU IP | Cortex-A8 | Cortex-A9 | Cortex-A8 | Cortex-A8 | Marvell Sheeva PJ4 | Cortex-A9 MPCore |
Частота | 550 МГц | 1000 МГц | 800 МГц | 1000 МГц | 1200 МГц | 1200 МГц |
К-во ядер | 1 | 2 | 1 | 1 | 1 | 2 |
RAM | LP-DDR1 | LP-DDR2 | LP-DDR2 | LP-DDR3 | LP-DDR3 | LP-DDR2 |
GPU IP | PowerVR SGX 535 | PowerVR SGX 540 | OpenGL ES 2.0-совместимый | PowerVR SGXMP series | Vivante GC600 | ARM Mali-400 |
Мполиг/с | 8 | 28 | ? | ? | 63 | 30 |
Мпикс/с | 200 | ~1000 | ? | ? | 250 | 275-1100? |
Тут в первую очередь надо отметить, что во всех сборках используются разные процессоры с различными значениями производительности на мегагерц. Некоторые из разработчиков (Qualcomm и Marvell, точнее говоря) разработали свои процессоры на основе набора инструкций ARMv7, остальные подвергли модификации существующие архитектуры. Это не значит, что разработанные «с нуля» процессоры сильно лучше, но свои преимущества у них есть. Qualcomm, например, смогла добиться от Scorpion работы на частоте 1500 МГц и большей энергоэффективности. Наибольшее же значение производительности на мегагерц ожидается у OMAP 4440. Впрочем, неплохие результаты показывает и Cortex-A9 MPCore в Tegra 2.
В целом среди всех сборок выделяются 4 с двухъядерными процессорами: Tegra 2, QSD8672, OMAP 4440 и U8500. Очевидно, что в качестве основы для производительных смартбуков и планшетных ПК стоит рассматривать именно их. Для смартфонов ситуация не столь однозначная — модели с одним процессорным ядром в теории смогут конкурировать с новинками за счет меньшей цены и большей энергоэффективности.
Высокой 3D-производительностью отличается обновленная Tegra, Hummingbird и QSD8672. Скорее всего, хорошо себя покажет новая сборка Freescale. Достойные результаты и у ARMADA.
Различные технологии энергосбережения используются во многих сборках, но оценка их эффективности по понятным причинам затруднена. На стороне Tegra 2 здесь наиболее тонкий техпроцесс — те самые злополучные 40 нм от TSMC. На сей раз, впрочем, никаких проблем с производством вроде бы нет.
Судя по первым впечатлениям, самым опасным конкурентом для Tegra 2 будет именно новая разработка Qualcomm. Однако тут есть одно «но»: мы уже видели прототипы устройств на Tegra 2, и в ближайшее время соответствующие устройства будут доступны для покупки. Об остальных сборках с двухъядерными процессорами такого сказать нельзя. Возможно, информация о них держится в секрете, но пока можно сказать, что конкурентов по уровню быстродействия у Tegra 2 нет.