Итак, в новом флагмане Samung установлен чип Samsung Exynos 5 Octa со внутренним номером 5410, крайне интересный по своему строению. Это здоровенный и сложный чип, выпускаемый в рамках энергоэффективного 28-нм HKMG-техпроцесса на собственных фабриках Samsung. Похоже, что новый техпроцесс корейцы освоили пока еще недостаточно хорошо — и именно этим объясняются сбои в поставках Galaxy S4 на Exynos 5 Octa. Это компенсируют увеличением объема поставок SGS4 на базе Qualcomm Snapdragon 600 в паре с квалкоммовским же LTE-модемом. Тем не менее на российский рынок попадет единственная версия SGS4 — как раз с восьмиядерным Exynos. Поэтому нам особенно интересно, как же он устроен. Спирт, зажимы, скальпель — вскрываем!
Восемь ядер в Exynos 5 Octa, само собой, далеко не одинаковые. Кое-кто даже ругал Samsung за нарочитое «выпячивание» этой восьмиядерности. То есть ядер действительно восемь, но по сути они представляют собой два разных четырехъядерных процессора на одном кристалле.
Первый содержит 4 ядра ARM Cortex-A15, работающие на частоте от 0,2 до 1,8 ГГц (в российских Galaxy S IV максимальная частота ограничена на отметке 1,6 ГГц). Каждому ядру досталось по 32 Кбайт кеша L1 для инструкций и по 32 — для данных. Также есть общий кеш второго уровня — 2 Мбайт — исключительно для данных. По площади эта часть чипа занимает примерно 19 мм2.
Напомним, что представляет собой ARM Cortex-A15. Ядро Cortex-A15 может похвастаться 15-ступенчатым целочисленным конвейером (у Cortex-A9 ступеней было всего 8). Для операций с плавающей запятой конвейер может быть еще длиннее – от 17 до 25 ступеней. ARM утверждает, что значительно улучшила блок предсказания ветвлений, так что длинный конвейер здесь должен прийтись весьма кстати.
Существенно вырос размер буфера для перераспределения инструкций (reorder buffer). Если ядро Cortex-A9 могло хранить 32-40 декодированных инструкций в буфере, то Cortex-A15 – целых 128. Инструкции, как и в Cortex-A9, исполняются вне очереди, но теперь это касается любых инструкций, в то время как Cortex-A9 мог обрабатывать инструкции с плавающей запятой и инструкции из набора NEON только в порядке очереди.
ARM не устанавливает жестких ограничений по технологии изготовления чипов, поэтому Cortex-A15 может производиться как по LP-техпроцессу, так и по Hpm (HKMG) – то есть с использованием металлических затворов и диэлектриков с высокой диэлектрической постоянной. В первом случае максимальная частота ядра не превышает 1,5 ГГц, во втором — 2,5. В ARM старательно подчеркивают, что Cortex-A15 поддерживает большие адресные пространства (LPAE), виртуализацию и коды коррекции ошибок.
Четыре ядра Cortex-A15 объединяются в один блок 128-битной шиной AMBA ACE, а блоки, в свою очередь, также можно объединять с помощью скоростной шины CoreLink — в одном кристалле может быть до четырех блоков, то есть до 16 ядер. Но вернемся к нашему Exynos и второму блоку процессорных ядер в нём.
Второй четырехъядерник построен на более энергоэффективных ядрах ARM Cortex-A7, с частотой от 0,2 до 1,2 ГГц. Об архитектуре этого типа ядер мы кратко рассказывали в статье про SoC Qualcomm. Кеша L1 у них по 32 Кбайт, а L2 — в четыре раза меньше: 512 Кбайт на все четыре ядра. При этом, если смотреть с точки зрения площади, эта часть в 5 раз меньше: всего 3,8 мм2, а по энергопотреблению — экономичнее почти в 6 раз.
Оба процессора подключены к общему универсальному контроллеру прерываний и к общей шине данных, с помощью которой они общаются с памятью LPDDR3. Пропускная способность памяти весьма впечатляющая — 12,8 Гбайт/с, ровно столько же, сколько у старшего квалкоммовского процессора Snapdragon 800.
В обоих чипах частоту и напряжение каждого ядра можно регулировать индивидуально. В целом вся эта конструкция соответствует принципам архитектуры ARM big.LITTLE — то есть Samsung данный восьмиколесный велосипед не изобретала, его придумала сама ARM. Exynos 5 Octa — первая реализация big.LITTLE в индустрии.
В теории большую часть времени мощные ядра Cortex-A15 отключены, и все задачи обрабатываются при помощи экономичных ядер Cortex-A7. Samsung считает, что Cortex-A7 отлично подходит для «легких прогулок по Интернету», работы с электронной почтой и картами. Система последовательно подключает все больше ядер A7 по мере того, как нагрузка возрастает. Потом в дело вступают Cortex-A15, которые, по мнению корейцев, отлично справляются с тяжелыми играми, а на деле выполняют практически все задачи, за исключением трех вышеописанных. Теоретически можно было бы использовать ядра разных типов параллельно, благо набор инструкций в них один и тот же — ARM такой вариант предусмотрела. Но в Samsung решили, что это не слишком выгодно с точки зрения энергосбережения, поэтому на каком-то моменте — пока энергопотребление еще остается в пределах 1 Вт — четырехъядерник Cortex-A7 отключается и все задачи переносятся на ядра Cortex-A15, опять-таки благодаря тому, что у A7 и A15 общий набор инструкций, и никаких проблем при переносе не возникает.
Момент, когда требуется произвести переключение, определяет прошивка от ARM. Переключение между процессорами в теории должно занимать не более 20 микросекунд. Дальше все задачи берут на себя ядра A15, и чем сложнее выполняемое задание — тем больше ядер будет задействовано. В таком режиме чип может потреблять до 6 Вт. Как только система разберется с тяжелой работой, данные вновь будут перенесены в ядра A7, а A15 уснут и перестанут есть электричество в четыре прожорливых горла.
Напомним на всякий случай: удельная производительность ядра Cortex-A7 — около 1,9 DMIPS/МГц, а ядра Cortex-A15 – порядка 3,5 DMIPS/МГц. Если учесть разницу в частотах, то максимальный прирост производительности при переключении получается где-то в 2,7 раза. Надо заметить, что увеличение вычислительной мощности соотносится с ростом энергопотребления не как один к одному. Для того чтобы получить примерно двукратный прирост в мощности при включении A15, чип съедает эдак в три раза больше энергии, чем при работе на A7. Недаром ARM считает архитектуру Cortex-A7 чуть ли не самой энергоэффективной! Другой вопрос, что прирост производительности можно получить и не в два раза, тем более что система никогда не загружает все ядра A7 по максимуму...
В заключение этой части приведем небольшой видеоролик, в котором Samsung попыталась объяснить, как же все-таки устроена процессорная часть Exynos 5 Octa.
Графическая часть
За графику в Exynos 5 Octa 5410 отвечает адаптер PowerVR SGX544MP3. Напомним, в предыдущих Exynos использовалась графика разработки ARM, то бишь адаптеры под названием Mali, но что-то заставило инженеров Samsung переключиться на использование ускорителей Imagination Technologies.
Из названия чипа — PowerVR SGX544MP3 — понятно, что это сшивка из трех PowerVR SGX544. Для начала напомним, что представляет собой одиночный SGX544. Начнем с того, что шейдерные процессоры здесь унифицированные (как в Adreno 320 и во всех современных десктопных видеокартах) — они способны работать как с вертексными, так и с пиксельными шейдерами. Это позволяет по полной загружать графику вне зависимости от того, какой тип шейдеров преобладает в исполняемой задаче. SGX544 включает четыре шейдерных конвейера USSE2, каждый из которых может за такт исполнять четыре операции MAD (multiply-add, операция вида a:=a+b*c). Итого один SGX544 за такт исполняет 16 таких операций.
Логично предположить, что SGX544MP3 за такт способен выполнять 48 MAD. По данным коллег из Anandtech, в Exynos 5 Octa графика работает на частоте 533 МГц. Если считать, что одна операция MAD — это две операции с плавающей запятой, то получаем пиковую производительность около 51,2 Гфлопс. Для сравнения: примерно такой же производительностью мог похвастаться графический адаптер GeForce 6800 Ultra. А теперь вспомните, какой у этого адаптера был TDP. То-то же.
В единое целое три SGX544 связываются с помощью общей шины, к которой подключается общая же кеш-память. Скорее всего, упоминание чипа SGX544 вам раньше особо не встречалось, но SGX543 попадался наверняка. Это практически одно и то же с архитектурной точки зрения, разве что более новый 544-й полностью поддерживает DirectX 9 и Microsoft Shader Model 3.
Что интересно: SGX544MP3 относится к линейке GPU от Imagination Technologies под названием Series5XT. Это последняя из запущенных в массовое производство, но не самая новая серия — в следующих версиях iPad и iPhone, скорее всего, будут использоваться значительно более современные адаптеры SGX600. Изначально пятое семейство должно было ограничиться работой с Open GL ES 2.0. Однако в Imagination осознали, что немного затянули с разработкой шестой серии, и на уровне программы для разработки драйверов (DDK) реализовали в Series 5XT некоторое количество расширений из Open GL ES 3.0. Целиком добавить поддержку третьей версии Open GL ES не получилось, но и так аппараты с PowerVR Series 5XT после обновления прошивки получат немало ранее недоступных возможностей, которые могут сделать эти ускорители более быстрыми и современными.
Кстати, для сравнения: в Apple iPad with Retina Display, который мы для краткости привыкли называть iPad 3, используется PowerVR SGX543MP4, то есть чуть более старый, но на треть более «толстый» чип. В новом iPad 4 стоит куда более производительный SGX554MP4, так что считать графику в Galaxy S4 близкой к вершине прогресса однозначно не стоит. Правда, и разрешение у «айпадов» куда как повыше.
В Exynos 5 Octa встроен цифровой сигнальный процессор обработки изображений (ISP, Image Signal Processor), позволяющий камере делать 13-Мп снимки с частотой 30 кадров в секунду. Соревноваться по этим показателям способны разве что камеры серии Nikon 1.
Мультиформатный кодек (MFC, Multiformat Codec) способен воспроизводить видео с разрешением 1920х1080 с частотой 60 кадров в секунду при прогрессивной развертке. Максимальное поддерживаемое разрешение встроенного дисплея — 2560х1600. Благодаря достаточно широкой шине данных, Exynos 5 Octa теоретически способен работать с внешним Full HD-дисплеем по Wi-Fi.
Помимо прочего, Exynos 5 Octa поддерживает стандарты USB 3.0 и eMMC 5.0. Если про первый вы все знаете и без нас, то последний ограничивает скорость передачи данных со встроенного накопителя на отметке 400 Мбайт/с — а это уровень лучших современных SSD, то есть стандарт разработан с большим запасом.
Насколько нам известно, в систему на чипе Exynos 5 Octa не встроен модуль сотовой связи. Тот факт, что в корейском SGS4 с модельным номером SHV-E300S есть LTE, а в русском — GT-i9500 — нет, обусловлен лишь выбором модема.
Итак, Exynos 5 Octa (Exynos 5410) в теории обещает быть немного странным, но перспективным решением для мощных смартфонов и планшетов. Если пытаться этот чип с чем-нибудь сравнить, то логично было бы поставить его где-то между квалкоммовскими Snapdragon 600 и 800. Первый он обходит по мощности процессорных ядер и нашпигованности всевозможными дополнительными функциями и контроллерами, а до второго не дотягивает как минимум по возможностям графического ядра.
Мы уже успели сравнить производительность Exynos 5 Octa и Snapdragon 600 – о результатах этого сравнения отчитаемся в обзоре Samsung Galaxy S4, который выйдет на 3DNews в ближайшем будущем. Там же попробуем оценить, насколько эффективно работает программный переключатель между четырехъядерными частями чипа. Как самсунговский восьмиядерник будет смотреться на фоне Snapdragon 800 — можно будет говорить только тогда, когда устройства на базе последнего появятся хотя бы на горизонте. А ведь еще есть NVIDIA Tegra 4...