Эльбрус байкал. Российский процессор байкал

Они существуют! К нам на тест попала первая публично доступная версия оценочной платы или, как её называют сами создатели, программно-аппаратного комплекса для разработчиков BFK 3.1 с SoC отечественной разработки «Байкал-Т1» на базе архитектуры MIPS P5600 Warrior.

Первым делом стоит подчеркнуть, что BFK 3.1 - это программмно-аппаратный комплекс (но по привычке будем называть его просто платой) для разработчиков, а не основа для построения конечных продуктов. Никто в здравом уме не будет использовать её, грубо говоря, для сборки системы. Во-первых, получится неоправданно дорого. Во-вторых, затея эта довольно бессмысленна. Нет, плата нужна для разработки и отладки программного обеспечения, ну и для оценки производительности самого процессора и совместимости его с другим оборудованием. Сравнивать её с одноплатными микрокомпьютерам вроде Raspberry Pi или Cubieboard тоже некорректно, хотя формально она к ним близка.

Аналогичные инструменты разработки предлагают и другие создатели процессоров. В зависимости от типа и оснащения они могут стоить от сотни-другой до тысяч и тысяч долларов. Важно то, что это первая плата с процессором Baikal-T1, которая доступна уже не узкому кругу лиц и организаций, как было раньше, а практически всем. Да, стоит она немало - 40 тысяч рублей. Дорого, но меньшую цену с учётом относительно небольшого объёма производства компания пока предложить не может. Кроме того, покупатели после регистрации продукта получит доступ к закрытой библиотеке инженерной документации. Также они получат схемотехнический проект платы в формате Altium Designer, что существенно ускорит и упростит процесс создания собственных программно-аппаратных решений на базе плат BFK 3.1 и процессоров «Байкал-Т1».

Плата «Байкал» BFK 3.1

Собственно плата оснащена процессором с базовой обвязкой. Почти все интерфейсы процессора выведены на плату. Не хватает разве что порта 10GbE. Сама плата имеет размеры 229 × 191 мм (FlexATX). На ней присутствуют два порта SATA-3 (контроллер версии 3.1), один разъём SO-DIMM для модуля памяти DDR3-1600, два гигабитных порта Ethernet RJ-45, один разъём USB 2.0 Type A, два USB-порта Mini-B (нужны для отладки), один разъём PCI-E 3.0 x4. Есть 40-контактная гребёнка выводов GPIO (основной контроллер 32-битный).

Для питания нужен любой блок питания ATX 2.0 мощностью от 200 ватт. Это значение явно дано с запасом, даже с учётом потребления устройств PCI-E и SATA. На плате есть отдельные кнопки для включения/отключения и сброса питания. Процесс запуска системы предельно прост: устанавливаем модуль памяти, подключаем БП, соединяем ПК с верхним портом mini-USB, запускаем любимый эмулятор терминала с поддержкой COM-портов (может понадобится драйвер для самого моста). Ну и всё, жмём кнопку ON и выбираем в меню загрузчика нужный пункт.

На плате есть два модуля NOR-памяти объёмом 16 и 32 Мбайт. Первый из них загрузочный, в нём находится собственно прошивка. Тут всё стандартно: U-Boot + Linux-ядро + минимальный образ с BusyBox. Также возможна загрузка по сети с сервера NFS или TFTP. Для встраиваемых систем этого достаточно. В этом случае конечный продукт - это относительно компактная плата с уже напаянными RAM и ROM нужного объёма и заранее подготовленная и оптимизированная под конкретный спектр задач программное окружение. Для примера можно посмотреть на те же домашние роутеры.

Второй вариант работы с платой - запуск полноценной ОС. Именно им и воспользуемся для тестов. Разработчики предлагают слегка модифицированный вариант Debian 9 с ядром из SDK. Обратите внимание, что сами они не занимаются пересборкой всего софта. Используются готовые репозитории mipsel-ветки Debian, так что оптимизаций под конкретно этот процессор нет. Впрочем, есть ещё и сборки Astra Linux Special Edition для устройств «Таволга Терминал» 2BT1, в которых установлен тот же процессор «Байкал-Т1». Но их, увы, никто в открытый доступ не выкладывает. Также ожидается поддержка Alt Linux и Buildroot и есть возможность запуска OpenWRT/LEDE.

Для запуска Debian необходимо взять образы ядра, прошивки и ramdisk из SDK. В сам SDK также входят вспомогательные инструменты для кросс-компиляции, скрипты для сборки ROM-образа и подготовленная ВМ для QEMU, где можно предварительно отладить свои программы. Работу с Debian 9 на BFK 3.1 пока что нельзя назвать идеально гладкой: после установки придётся покопаться с настройками и доустановить часть ПО, но особых проблем с этим нет. Жаль только, что полноценной документации к плате пока также не существует: кое-что придётся выяснять опытным путём или спрашивать напрямую у разработчиков.

Для тестов к плате были подключены древний по нынешним меркам накопитель Kingston SSDNow V для ОС и модуль памяти DDR3L-1600 ёмкостью 4 Гбайт производства Samsung. Однако для знакомства с возможностями процессора этого хватит. Есть ещё один нюанс - из-за особенностей контроллера видна не вся память, что есть в модуле SO-DIMM. Другой важный момент касается базовой сборки тестовых программ из исходных кодов: всё это проделывалось непосредственно на BFK 3.1. Там, где это необходимо, указаны ключи компилятора.

Процесс сборки, надо сказать, не всегда безболезненный. Где-то пришлось покопаться с параметрами оптимизации, чтобы достичь лучшего результата. Что-то успешно собиралось, но при исполнении падало или вело себя некорректно. Временами вообще возникало ощущение, что разработчики о существовании отличных от x86-платформ не подозревают. И это касается не только ПО. В частности, в PCI-E, скорее всего, не заработают современные GPU, так как, по словам создателей, почти все они требуют наличия UEFI/BIOS x86. Также могут возникнуть проблемы с устройствами, у которых внутри используется, например, мост PCI ↔ PCI-E.

Характеристики процессора «Байкал-Т1»

Для начала короткая справка о самом процессоре. «Байкал-Т1» имеет два 32-битных ядра на архитектуре P5600 Warrior (MIPS32 Release 5) с аппаратной поддержкой виртуализации. Каждое ядро получило L1-кеш данных и инструкций объёмом 64 Кбайт. На оба ядра приходится один общий L2-кеш ёмкостью 1 Мбайт.

Также у каждого ядра есть свой FPU-блок c поддержкой 128-бит SIMD. Ядра, L2 и FPU работают на одной частоте: 1,2 ГГц. Процессор способен исполнять до четырёх целочисленных операций, до двух операций над числами с плавающей запятой двойной точности или четырёх одинароной точности за такт. То есть теоретическая пиковая производительность составляет 4,8 Гфлопс FP64 (2 ядра 1,2 ГГц × 2 FP64) или 9,6 Гфлопс FP32. Однако на практике для раскрытия потенциала (как любят выражаться в комментариях) необходимы и ручная оптимизация кода, и компилятор, «знающий» об особенностях FPU/SIMD.

В реальности же, к примеру, неоптимизированная версия Linpack, собранная открытым GCC, выдаёт результат на порядок меньше ожидаемого. Ситуация, вообще говоря, вполне нормальная для новых или специфичных (вроде того же «Эльбруса») архитектур. Это следует учитывать при оценке результатов, приведённых ниже. Ещё один важный момент касается нашумевших уязвимостей Meltdown и Spectre. Вычислительные блоки в MIPS32r5 суперскалярны и умеют делать внеочередное исполнение инструкций, но о глубокой спекулятивности явно не говорится. Разработчики ядра выпустили предупреждение о возможном наличии Spectre (но не Meltdown) в «чистых» ядрах P5600/P6600. По словам создателей, в случае «Байкала-Т1» официальный код проверки на наличие уязвимости не срабатывает, но со стопроцентной уверенностью говорить об её отсутствии пока рано. В планах организация отдельного хакатона для проверки безопасности процессора.

С остальными компонентами ядра общаются по шине AXI. Все высокоскоростные интерфейсы имеют поддержку DMA. Собственно одноканальный контроллер памяти поддерживает DDR3-1600 с ECC. Максимальный поддерживаемый CPU объём RAM равен 8 Гбайт. Есть ещё один нюанс - контроллер памяти имеет шину данных шириной 32 бит и 8 бит ECC и поддерживает работу с микросхемами памяти шириной от 8 до 32 бит. Для готовых изделий с уже напаянными подходящими модулями проблем нет, а вот плата у обычных SO-DIMM «увидит» только половину заявленного объёма, так как наружу они «смотрят» обычно 64-бит интерфейсом. Ну и скорость работы, очевидно, будет ниже - до 6,4 Гбайт/с.

Из интересных блоков, которые есть в CPU, можно выделить сопроцессор собственной разработки, который позволяет, например, ускорить шифрование по стандартам ГОСТ (но не только) и 10-гигабитный контроллер. Последний, как уже отмечалось выше, требует отдельный мезонина с SFP-портом. Это сделано для снижений итоговой цены BFK 3.1, да и для разработки этот порт нужен далеко не всем. Остальные блоки лицензированы у компаний MIPS, Imagination Technologies и Synopsys. На внутреннее строение чипа можно полюбоваться здесь.

Мезонин с 10 GbE SFP для BFK первого поколения. Для BFK 3.1 такой платы сейчас нет.

Для питания процессор требует напряжение 0,95 В, а заявленная потребляемая мощность составляет не более 5 Ватт. Во время тестов CPU прогревался до 60 с небольшим градусов Цельсия. Активное охлаждение для него не требуется, однако в закрытом корпусе наличие радиатора лишним не будет. Частота ядер динамически регулируется в диапазоне от 200 до 1500 МГц, но это требует поддержки со стороны ОС, так что пока в текущей сборке Debian частоту можно задать при старте системы. В любом случае во время работы при малой нагрузке одно ядро автоматически может отключаться полностью. Производится «Байкал-Т1» на фабриках TSMC по 28-нм техпроцессу. Сам по себе он стоит $65. Также важно отметить, что данная модель изначально разрабатывалась не только и не столько для госзаказчиков. Она, по задумкам и надеждам создателей, должна приглянуться и обычным коммерческим потребителям, которые создают продукты для гражданского сектора.

Тест CoreMark

Перейдём непосредственно к тестам. Первый в очереди CoreMark - специализированный бенчмарк, который используется для оценки производительности процессоров и SoC встраиваемых систем. Собственно говоря, именно с анонса нового рекорда в CoreMark Imagination Technologies и начала рассказ о преимуществах ядра MIPS P5600 Warrior. Правда, речь шла об одиночном ядре, которое к тому же на тот момент существовало только в виде симуляции на FPGA и работало на частоте 20 МГц. Тогда речь шла о рекорде в значении CoreMark на мегагерц на ядро: 5,61, но в реальности стоит рассчитывать на значение около 5. Разработчики даже указывали на бо́льшую эффективность P5600 в сравнении с десктопными CPU Intel. Формально «Байкал-Т1» является лидером в пересчёте на мегагерц и мегагерц/ядро. На практике же для достижения производительности в абсолютных величинах производители не чураются экстенсивных методов, увеличивая частоты и число ядер.

Увы, база результатов CoreMark собирается не слишком аккуратно, так что пришлось вручную подбирать тесты двуядерных чипов, которые имели бы близкие к показателям «Байкала-Т1» частоты и явное указание на то, что в тесте используются два потока. Для сравнения был добавлен один четырёхъядерный образец, и это неслучайно. Вообще, ранжировать результаты можно сразу по нескольким критериям. Однако тут же появляется масса нюансов. Во-первых, решения и ARM, и MIPS лицензируются сторонним компаниям, так что реализация одного того же дизайна может значительно отличаться. Во-вторых, многое зависит от оптимизации и самого кода, и его сборки, и среды исполнения.

Для нашего базового теста использовался GCC 6.3 со следующими опциями: -O3 -DMULTITHREAD=2 -DUSE_PTHREAD -funroll-all-loops -fgcse-sm -fgcse-las -finline-limit=1000 -mhard-float -mtune=p5600. В тестах самих разработчиков использована в том числе и коммерческая среда Sourcery CodeBench. Здесь и далее в таблицах приняты следующие обозначения: «оф. тест» для результатов, выложенных на сайте разработчиков; «precomp» - для запусков бинарных файлов бенчмарков, присланных создателями CPU; «б/опт.» - собственные сборки из исходных кодов с применением открытых средств и указанием ключей; «опт.» - кросс-компиляция силами SDK и коммерческих утилит по «рецептам» от разработчиков. При ручной оптимизации можно добиться лучших показателей, что очень хорошо заметно в таблице с результатами. Однако перед нами не стоит задача перебирать ключи и копаться в коде. А вот разработчикам софта для «Байкала-Т1» определённо придётся этим заниматься на регулярной основе.

Классические бенчмарки

Из того же документа можно взять и результаты классических бенчмарков «старой школы». Тест Stream для оценки пропускной способности памяти был собран для одного потока со следующими ключами: -mtune=p5600 -O2 -funroll-all-loops. Результат примерно вдвое меньше, чем теоретическая скорость работы RAM.

Всё вышесказанное про CoreMark относится и к Dhrystone2 (целочисленные вычисления), который в базе был собран с минимумом ключей: -O3 -funroll-all-loops -mtune=p5600. Увы, как и в примерах выше, база измерений не блещет чистотой и аккуратностью. Для сравнения были взяты некоторые результаты для 32-битных вычислений с явным указанием на наличие оптимизаций. К сожалению, для них не указаны конкретные модели или хотя бы поколения CPU. Кроме того, дело осложняется наличием TurboBoost или аналогичных техник кратковременного (а тест этот как раз непродолжительный) увеличения базовой частоты процессора, что смазывает общую картину. Опять-таки в тесте повторяется ситуация с CoreMark - в пересчёте на мегагерц производительность у P5600 неплохая.

Но другие современные CPU повышают её и наращиванием частоты, и поддержкой 64-битных инструкций, и числом ядер заодно. В Whetstone всё то же самое, только разница от увеличения потоков и задействования векторных инструкций ещё разительнее. Ах да, для сборки всего этого добра пришлось слегка подкорректировать код, убрав несущественные вызовы на x86-ассемблере и проверки на наличие x86-расширений, которые нужны только лишь для идентификации CPU.

Для быстрой проверки работы гигабитных сетевых адаптеров использовалась утилита iperf 3.1.3, которая показала, что для односторонних подключений скорость совпадает с положенными 940 Мбит/с, а вот в дуплексе, увы, скорость была на уровне 1,2 Гбит/с. Разработчики объясняют это тем, что для получения полноценной производительности необходимо сделать небольшой тюнинг на программном уровне.

Phoronix Test Suite

А вот эта затея уже попахивает безумием, так как PTS в целом не предназначен для такого рода систем. Сборка происходит непосредственно на тестируемой машине, так что в случае «Байкалом-Т1» это просто мучительно долго, как и исполнение большинства тестов. Собственно, из набора исключены тесты, которые или так и не смогли скомпилироваться, или исполнялись бы неприлично долго даже на «взрослых» ПК. С первой проблемой, по идее, можно справиться вручную, подгоняя параметры сборки. Но повторимся, что, во-первых, такой задачи не было, а во-вторых, нельзя забывать, что результаты тестов вряд ли достигают максимально возможных значений.

Все результаты тестирования доступны по этой ссылке. Строго говоря, все проведённые тесты - это скорее задел на будущее, чтобы потом можно было посмотреть, насколько лучше стали (или не стали) результаты после работы над системой сборки и/или оптимизаций, а вот прямо сейчас всё это сравнивать особо не с чем. Из любопытного можно привести только несколько случайно совпавших по конфигурации бенчмарков с китайскими процессорами Loongson Godson 3A3000 (4 ядра @ 1,5 Гц, L2-кеш 1 Мбайт, L3-кеш 8 Мбайт, 28 нм, 30 Вт). Оба CPU схожи в том, что у них новая архитектура и проблемы с оптимизацией кода для него. Пока что китайцы впереди с большим отрывом по абсолютным показателям, но в пересчёте на ядра, МГц и потребление всё чуть менее однозначно.

Заключение

Отрадно, что отечественные разработчики смогли небольшой командой и в разумные сроки воплотить в «железе» SoC на современной архитектуре с неплохими характеристиками и возможностями. К тому же она не ориентирована строго на госзаказ и не стоит заоблачных денег. Это действительно здорово, кто бы что ни говорил. Но успех (или провал) реально удастся оценить только через год-два - всё зависит от того, кто и в каких объёмах будет использовать SoC в своих продуктах. Прямо сейчас публично рассказано только некоторых из них. О терминале «Таволга» уже говорилось в самом начале, хотя он-то как раз является примером устройства для госслужб, равно как и DEPO Neos Twin. Промышленные ПК представлены моделями Fastwell CPС516 и CPC313, а также модулем SF-BT1. Близкими по духу к ним являются система ЧПУ «Ресурс-30» и модуль для работы с микромехеническими элементами оптических и лазерных систем от ЦИФ МГУ. Кроме того, анонсированы маршрутизаторы NSG-3000 и некие точки доступа РАЙТЕК, которые упомянуты на сайте производителя. Всё это типичные примеры областей применения «Байкал-Т1». Хотелось бы ещё увидеть решения NAS/SAN, IoT и SDR.

31.05.2018, Чт, 16:03, Мск , Текст: Денис Воейков

«Байкалы» начинают продаваться в рознице в голом виде - без «обвесов» в виде оценочных плат. За счет этого цена процессоров для покупателя снижается ровно в 10 раз.

Продажи «Байкалов» в чистом виде

Как стало известно CNews, российские процессоры «Байкал» впервые поступают в розничную продажу в качестве самостоятельных товарных единиц, а не в составе оценочных плат (одноплатных компьютеров). О появлении своей продукции в ассортименте магазинов электронных компонентов «Чип и дип» с 1 июня 2018 г. «в количествах, необходимых для прототипирования и производства тестовых образцов электроники» редакции сообщили в отечественной компании «Байкал электроникс» - разработчике «Байкалов».

К реализации был подготовлен первый и пока единственно серийно выпускаемый чип организации Baikal-T1 (новое официальное название - BE-T1000).

Розничная цена одного процессора составит 3990 руб. По сравнению с платами на «Байкалах» семейства БФК 3.1 (аббревиатура: блок функционального контроля), которые в середине апреля 2018 г. по 39,9 тыс. руб., чип в голом виде стоит ровно в 10 раз дешевле.

«Байкалы» стало возможным купить в рознице без нагрузки в виде плат

Разработчики добавляют, что ценовая политика в отношении оптовых партий определяется в индивидуальном порядке. Поставки продукции в этом случае осуществляются «Байкал электроникс» напрямую заказчику.

Качественно-ценовое позиционирование

На вопрос CNews, как с точки зрения сочетания предложенной цены и существующих характеристик процессора компания оценивает новое торговое предложение по сравнению с другими чипами на российском рынке, в «Байкал электроникс» ограничились формальным ответом. «Мы сделали очень выгодное ценовое предложение - в парадигме производительность/функциональность/энергопотребление у нашего продукта хорошие позиции», - отметили собеседники CNews.

Характеристики процессора

Baikal-T1 представляет собой так называемую систему на кристалле с размерами 25 на 25 мм и заявленным энергопотреблением менее 5 Вт. Она имеет два суперскалярных ядра P5600 MIPS 32 r5 с рабочей частотой 1,2 ГГц. Обладает кэшем L2 на 1 Мбайт и контроллером памяти DDR3-1600.

В чип присутствует один порт 10Gb Ethernet, два порта 1Gb Ethernet, контроллер PCIe Gen.3 х4, два порта SATA 3.0, USB 2.0.

Чипы производятся по технологическому процессу в 28 нанометров - непосредственно на фабрике тайваньской компании TSMC. Последнее обстоятельство определяет тот факт, что Baikal-T1 классифицируется Минпромторгом в качестве российской интегральной микросхемы второго уровня, а не первого, как это было в случае с местной фабрикой.

Завершение формирования процессорной экосистемы

Напомним, что в начале января 2018 г. - еще до начала поступления в продажу «Байкалов» в составе тестировочных плат - стало известно, что усилиями «Байкал электроникс» и факультета вычислительной математики и кибернетики (ВМК) МГУ имени М. В. Ломоносова на базе ЦОДа ВМК лаборатория отечественной электроники, доступ к которой открыт для всех заинтересованных лиц.

Используя ресурсы новой структуры, получившей название Лаборатория электроники «Байкал» (ЛЭБ), можно проводить оценку производительности центрального процессора и решений на его основе, а также отладку прикладного и системного ПО.

«Сейчас наша основная цель - снизить для разработчиков стоимость вхождения в проекты, - говорит директор департамента маркетинга и продаж «Байкал электроникс» Константин Щербаков. - Мы сделаем это за счет улучшения качества документации, создания набора ПО, актуализации и распространения указаний по применению (application notes) и эскизных проектов (reference designs)».

Щербаков уверен, что на данный момент с точки зрения экосистемы у его компании уже все готово для поддержки проектирования клиентами конечной продукции на «Байкалах»: от лаборатории на базе ВМК МГУ, до простой покупки процессора и отладочной платы для создания прототипов устройств.

Baikal-T1, тиражи выпусков, стоимость разработки, потребители

Baikal-T1 представляет собой процессор с архитектурой MIPS (Microprocessor without Interlocked Pipeline Stages), созданной в соответствии с концепцией RISC, то есть для процессоров с сокращенным набором команд.

Разработка процессора была завершена в конце 2014 г., и в декабре «Байкал электроникс» передал на фабрику TSMC так называемый GDS-код изделия для его выпуска. В мае 2015 г. компания о выходе инженерных образцов.

Тогда сообщалось, что разработка была реализована при поддержке Минпромторга с привлечением средств самого ведомства и федеральной целевой программы «Развитие электронной компонентной базы и радиоэлектроники на 2008-2015 гг.», а также инвестиций компаний «Т-нано» и «Т-платформы» (материнская структура «Байкал электроникс»). Конкретной суммы вложений в проект в «Байкал» тогда не раскрыл.

Далее образцы были вручную протестированы, и в «Байкале» убедились в их работоспособности. После этого компания в конце лета 2015 г. подала заявку в экспертный совет Фонда развития промышленности (ФРП) при Минпромторге на получение тематического займа для продолжения проекта - запуска серийного производства.

В октябре 2015 г. льготный займ на подготовку промышленного выпуска процессора был одобрен. При уровне собственных вложений компании в 288 млн руб. объем этого займа составил 500 млн руб. На эти деньги «Байкал» в декабре 2015 г. разместили заказ на TSMC. В сентябре 2016 г. свет увидела так называемая установочная партия примерно в 10 тыс. процессоров.

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

Основными потребителями Baikal-T1 выступают производители телекоммуникационного оборудования (роутеры, IP-телефоны, накопители данных и т. д), вычислительной техники, оборудования для встраиваемых систем (промышленная автоматика, терминалы, автомобильные системы и т. д.). Объем потребления процессоров на этих рынках, по оценкам «Байкал электроникс», растет в пределах 7-15% в год.

Вчера мне довелось первым из представителей прессы побывать в компании Байкал электроникс, разработавшей и производящей процессор Baikal-T1.


Этот маленький процессор потребляет всего 5 Вт и может работать даже без радиатора. В процессор встроены три порта Ethernet (два гигабитных и один 10-гигабитный), контроллер памяти DDR3-1600, поддерживающий до 8 ГБ, контроллер PCIe Gen.3, контроллер SATA 3.0 (6 Гбит), контроллер USB 2.0.
Процессор построен на 2-ядерном MIPS 32 r5 P5600 (это первая в мире реализация процессора на этом ядре), работающем на частоте до 1,2 ГГц, встроенная кэш-память 1 Мбайт, технологический процесс 28 нм.

По производительности Baikal-T1 сопоставим с процессорами Intel Atom и процессорами современных смартфонов. Он будет применяться преимущественно в телекоммуникационном оборудовании (роутерах, управляемых коммутаторах), но пригоден и для тонких клиентов.

Компания "Т-Платформа" начинает производство моноблоков Таволга Терминал TP-T22BT на процессоре Байкал Т1. Они будут использоваться для создания автоматизированных рабочих мест там, где предъявляются специальные требования безопасности.

«Таволга» работает под управлением Linux и может оснащаться любыми совместимыми с ней прикладными программами - пакетом офисных приложений LibreOffice, браузером Firefox и многими другими.

«Таволга Терминал» также работает в терминальном режиме в качестве веб-клиента, обеспечивая удаленный доступ к любым приложениям через веб-браузер или с использованием протоколов удаленного рабочего стола, таких как RDP или VNC.

«Байкал Электроникс» подписали меморандум о научно-техническом сотрудничестве с компанией Lenovo.
Lenovo уже продемонстрировали рабочий образец моноблока ThinkCentre Tiny-in-one 23, построенный на процессоре Baikal-T1.

Сегодня я впервые публикую данные о быстродействии процессора Baikal-T1, работающего на частоте 1 ГГц.

Coremark: 10342 coremarks (2 thread), Whetsnone: 1052 MWIPS (2 thread), Dhrystone: 3651 VAX MIPS (1 thread).
Результаты Coremark для большинства процессоров можно посмотреть тут.

К моменту завершения разработки процессора Байкал-Т1 компания существовала уже три года, в ней работало 70 российских "железячников" и программистов.

За основу было взято лицензированное ядро MIPS P5600, кроме того были лицензированы контроллеры Ethernet, SATA и USB. Российским разработчикам предстояло собрать эти компоненты вместе, заставить их корректно работать друг с другом и произвести разводку чипа по современной топологии 28 нм. Некоторые компоненты процессора разрабатывались с нуля.

Я попросил показать топологию процессора Байкал-Т1.

Так выглядит один маленький её кусочек.

Таких кусочков в процессоре миллионы.

Вы тоже видите странных грустных животных в топологии соединений Байкала? ;)

Это всего лишь один слой соединений.

Для процессора Байкал-Т1 была разработана и выпущена отладочная плата в стандартном формате MicroATX.

Это две самых первых платы.

Плата №0001. Кодовое имя "Лошадка". :)

В электронную лабораторию Байкал Электроникс не пускают никого, даже большинство своих сотрудников. Меня пустили. :)

Офис разработки программной части.

Идёт тестирование.

Процессор Baikal-T1 получился вполне конкурентоспособным и за счет большого количества различных интерфейсов на чипе обладает преимуществами перед конкурирующими изделиями иностранных разработчиков. При стоимости около $60 он позволит создавать телекоммуникационное и промышленное оборудование, блоки диспетчеризации и тонкие клиенты, системы автоматизации и управления. Российское происхождение гарантирует отсутствие "закладок" и позволит применять его в структурах с повышенными требованиями к информационной безопасности.

Сейчас Байкал Электроникс работает над разработкой новых процессоров на базе архитектуры ARM - Baikal-M для настольных ПК, встроенных систем, средств промышленной автоматики, смарт-камер и Baikal-MS для микросерверов и встроенных систем.

Разработчики из РФ начали создавать собственные микропроцессоры, которые считаются вполне конкурентоспособными в отношении продукции ведущих мировых брендов. Есть уже как серийные образцы, готовящиеся к промышленному выпуску, так и планируемые разработки. Какие российские процессоры — действующие или перспективные — заслуживают особого внимания?

Основные разработчики российских процессоров

Российская IT-индустрия активно развивается. В числе самых технологичных ее сегментов — это разработка микропроцессоров, предназначенных для использования в составе ПК, и серверов, которые принято относить к IBM-архитектуре. Сейчас на этом рынке властвуют два мировых бренда — Intel и AMD. Конкурентных им разработок в мире очень немного. Но таковые могут быть предложены российскими инженерами.

В числе перспективных микросхем из РФ, которые могут стать конкурентами Intel и AMD, принято считать процессор «Байкал». Предполагается, что данный чип будет устанавливаться на компьютеры, заказываемые госструктурами. Самый, вероятно, известный микропроцессорный вендор, создавший работающие и готовящиеся к серийному выпуску образцы микросхем, — это компания МЦСТ. Он выпускает чипы под брендом «Эльбрус» в широком спектре модификаций.

Рассмотрим подробнее, какими особенностями характеризуются перспективные и действующие процессоры российского производства.

Процессор на перспективу: «Байкал»

В июне 2014 года российские СМИ облетела новость: Министерство промышленности и торговли осуществило заказ на разработку микропроцессоров, которые предполагалось впоследствии устанавливать на ПК, приобретаемые для государственных нужд. Речь идет о чипах под брендом «Байкал». Какие примечательные факты характерны для данной микросхемы? Процессор «Байкал» начала разрабатывать компания «Байкал Электроникс». Финансируется проект центром «Т-Нано», который создан корпорацией «Т-Платформы», при участии «Роснано». В работе над процессором занята также Объединенная приборостроительная корпорация. Известно, что в проекте, возможно, будут участвовать такие бренды, как Depo Computers, «Аквариус», а также Kraftway.

Предполагается, что процессор «Байкал» будет создан в нескольких модификациях. Первыми будут, согласно некоторым данным, 8-ядерные микросхемы Baikal M, а также M/S для ПК и серверов. Они будут выпускаться на базе технологии 28 нм, а также ядер Cortex A57, работающих по 64-разрядному принципу. Производительность процессоров «Байкал» составит порядка 2 ГГц. Ожидается, что микросхемы будут совместимы с ОС Linux. Впоследствии будут выпускаться также 16-ядерные микросхемы. Они будут выполнены по технологии 16 нм. Есть сведения о том, что российский процессор «Байкал» в рамках первых партий будет производиться тайваньской компанией TSMC.

Бренд «Эльбрус»: основные факты

Другой известнейший как в РФ, так и за рубежом микропроцессорный бренд - «Эльбрус». Чипы под этой маркой уже выпущены в нескольких разновидностях. Есть двухъядерный процессор «Эльбрус». Есть чипы с 4 и даже 8 ядрами.

Есть сведения, что в ближайшее время ПК на основе данных процессоров будут выведены на рынок. Сейчас на базе чипов «Эльбрус» созданы действующие образцы компьютеров самых разных модификаций — ноутбуков, моноблоков, десктопов, серверов. Основными заказчиками ПК, в которых будет устанавливаться российский процессор, разработанный компанией МЦСТ, как ожидается, будут оборонные структуры. Также есть надежды на спрос со стороны крупных бизнесов. Чипы «Эльбрус» могут работать под основными ОС для компьютеров IBM-архитектуры — Windows, Linux.

Рассмотрим подробнее, как создавались процессоры «Эльбрус».

Процессоры «Эльбрус»: история

Первый компьютер, с которого начинается история бренда, был создан советскими учеными в 70-х годах. Им стал вычислительный комплекс «Эльбрус-1». Он был основан на микросхемах типа TTL и содержал в своей структуре 10 процессоров общей производительностью порядка 15 мегафлопс. В некоторой степени это была уникальная машина: в частности, в ней был реализован принцип параллельного выполнения команд. По некоторым данным, в мире подобных ЭВМ еще разработано тогда не было. Объем ОЗУ в «Эльбрус-1» составлял 64 МБ — более чем прилично.

Для уникального начала разрабатываться собственная операционная система и отдельные языки программирования. В 1985 году появился комплекс «Эльбрус-2», представлявший собой усовершенствованную модель Он отличался обновленной на микросхемах типа ЭСЛ. Общая производительность процессоров вычислительного комплекса была более 125 мегафлопс. В архитектуре данного компьютера был реализован модульный принцип. Комплекс «Эльбрус-2» характеризовался высоким уровнем быстродействия и устойчивостью работы. Известно, что он использовался на различных военных объектах. Всего советская промышленность выпустила 30 комплексов «Эльбрус-2».

В 1990 году был изготовлен опытный образец компьютера «Эльбрус-3». Но в то время, в связи со сложной политической обстановкой в стране, финансирование проекта было прекращено. Тем не менее, уже в 1992-м было образовано ТОО «Московский центр SPARC-технологий», вскоре переименованное в компанию МЦСТ. Фирма стала выпускать промышленные системы, которые базировались на популярной тогда технологии SPARC, созданной Sun Microsystems.

Решения на базе SPARC

Работая с решениями на базе SPARC, компания МЦСТ разрабатывала собственный продукт в виде микропроцессора. В ранних версиях его архитектура была известна под названием E2k. Первая модель процессора на ее основе, получившая название R150, была выпущена в 2001 году. Техпроцесс предполагал использование технологии 350 нм. Работал тот российский процессор на частоте в 150 МГц при производительности, составляющей порядка 150 мегафлопс.

В 2004 году появился гораздо более мощный чип — R500. Его составляла 500 МГц. Выпускался он в рамках более высоких технологичных стандартов — 130 нм. В 2007-м компания МЦСТ выпустила двухъядерный процессор R500S, включивший в себя наработки в сфере технологии SPARC. Его производительность составляла 1 гигафлопс.

Одновременно с развитием микросхем на базе SPARC компания МЦСТ занималась созданием процессора, полностью основанного на собственных разработках ее инженеров. Так, к 2007 году был создан и прошел государственные испытания российский процессор «Эльбрус». Он был изготовлен в соответствии со стандартом 130 нм и работал на частоте 300 МГц. Процессор был оснащен одним ядром и функционировал на скорости 4,8 гигафлопс. Данный чип, а также наработки по нему, положили начало целому семейству микросхем, выросших в технологичные, высокопроизводительные решения. Рассмотрим их.

«Эльбрус-S»

Первый серийный чип от МЦСТ - это процессор «Эльбрус-S», который появился в 2010 году. Он выпускался по стандарту 90 нм. Данная микросхема могла работать при частоте в 500 МГц и обеспечивать производительность порядка 8 гигафлопс.

Можно отметить, что аналогичную производительность тогда мог показывать чип AMD Athlon 64, функционирующий на частоте 2,2 ГГц.

«Эльбрус-2С+»

В 2011-м появилась следующая модификация процессора — чип «Эльбрус-2С+». Он был изготовлен также в соответствии с архитектурой 90 нм, но его производительность была намного выше — 28 гигафлопс. Можно отметить, что аналогичных показателей могли достигать такие чипы, как Intel Core 2 Duo, а также Intel Core i3. Есть сведения, что подобного прогресса разработчикам удалось достичь благодаря тому, что сопровождают процессор 4 ядра дополнительной микросхемы. Данный компонент осуществляет цифровую обработку сигнала. Однако встроенный процессор соответствующего типа, как посчитали инженеры МЦСТ, характеризовался слишком высокой ресурсоемкостью в процессе выпуска. Поэтому в следующих моделях «Эльбрус» он был заменен альтернативными решениями.

«Эльбрус-4С»

В 2014 году начался серийный выпуск очередного микропроцессорного шедевра - «Эльбрус-4С». Данный чип изготовлен по технологии 65 нм. Его ядра (всего их, соответственно, 4) функционируют на частоте 800 МГц. Каждое из них оснащено 2 МБ кэш-памяти. Это позволило добиться производительности процессора в 50 гигафлопс. Это почти столько же, как, например, у чипа Intel Core i7-975 — 53 гигафлопса. При этом мощность российского чипа — 45 Вт. В данном аспекте питание процессора «Эльбрус-4С», как считают многие эксперты, экономичнее, чем у американской разработки.

Чип с 4 ядрами от МЦСТ — один из самых универсальных. Типы компьютеров, в которые может быть установлен данный процессор, — ПК, ноутбуки, сервера, моноблоки. Собственно, в линейке вычислительных комплексов, которые также выпускает компания МЦСТ, присутствуют машины во всех отмеченных конфигурациях.

«Эльбрус-8С»

Новейший процессор от МЦСТ - обладающий 8 ядрами «Эльбрус-8С». Чип работает на базе стандарта 28 нм, что вплотную приближает его к ведущим мировым образцам микропроцессоров. Кэш-память второго уровня на ядрах микросхемы «Эльбрус-8С» — 4 МБ, третьего — 16 МБ. Процессор может работать с распространенным стандартом ОЗУ типа DDR3 1600. Производительность чипа, измеряемая на вычислениях с одинарной точностью, — 250 гигафлопс. В процессоре есть 4 контроллера памяти. Показатель для каналов межпроцессорного обмена данными — 16 ГБ/сек. Отмеченная производительность чипа — 250 гигафлопс. Как она соотносится с показателями мировых аналогов российского процессора? Можно отметить, что чип 4930K выдает порядка 130-140 гигафлопс. Специально для новейших процессоров «Эльбрус» создаются новые материнские платы, а также отдельная версия ОС. Также, возможно, будут разработаны многопроцессорные компьютеры на базе чипа.

Есть сведения, что к 2018 году компания МЦСТ выпустит процессоры типа «Эльбрус-16С». Их расчетная производительность — 1 терафлопс. Ожидается также, что чипов будет базироваться на стандартах менее 28 нм.

Перспективы чипов

Как оценивают эксперты выпускаемые российским брендом процессоры? Отзывы очень многих IT-специалистов, можно сказать, восторженные.

Причин тому несколько. Например, многие разработчики гордятся уже тем, что процессор был создан именно в России, причем в условиях, когда долгое время экономическая ситуация не способствовала активному развитию IT-индустрии в столь высокотехнологичном и наукоемком сегменте. В плане производительности процессоров оценки также в целом положительные.

Есть некоторые замечания у специалистов, которые касаются маркетинговых перспектив чипов. Чтобы сделать их рентабельными, нужны большие рынки сбыта, которые заняты мировыми лидерами. Соревноваться с ними, полагают эксперты, будет непросто.

Вместе с тем, как считают некоторые аналитики, процессоры «Эльбрус» вполне могут стать достойной альтернативой решениям от Intel и AMD внутри РФ, особенно в части военных поставок, при которых к разработчикам выдвигаются самые жесткие требования в аспекте надежности электронных компонентов и безопасности их использования. Компания МЦСТ, полагают эксперты, вполне способна обеспечить соответствие выпускаемых ею процессоров данным требованиям.

ОС «Эльбрус»

Стоит отметить, что специально для вычислительных комплексов от МЦСТ, работающих на процессоре «Эльбрус», была создана отдельная операционная система. Ее основой стало ядро Linux в версии 2.6.33, однако подвергшееся глубокой фундаментальной переработке. В результате появилась ОС «Эльбрус», характеризующаяся высочайшим уровнем безопасности и устойчивости в работе. В создании принимали активное участие специалисты ОАО ИНЭУМ им. И. С. Брука.

Думаю многие уже слышали про реализованный московскими разработчиками Байкал Электроникс процессор Байкал-Т1 - с двумя ядрами Imagination Technologies P5600 MIPS 32 r5 и набортным 10GbE. Байкал оказался первым, кто реализовал в кремнии это ядро.

Внимание, картинки кликабельны - но местами довольно тяжелы (до 100Мб).

Сами процессоры (всего их пришлось вскрыть 4 штуки):

BGA-подложка и теплораспределяющая/защитная крышка - как и у других современных процессоров (Intel и ко), чип перевернут контактами вниз (flip-chip BGA):

Сам кристалл - по всей площади имеет контакты, большая часть из которых - для подачи питания по всей площади чипа. Это необходимо не столько из-за высокого потребления энергии (оно как раз невысокое, ≤5Вт), сколько для снижения индуктивности цепей питания. Опять же, большинство современных процессоров имеют аналогичную систему питания:

В левой части - Ethernet контроллер (вероятно 10GbE KR/KX4), на кадре видна половина:

После снятия металлизации - видим автосинтезированную из стандартных ячеек логику (Мультиклет например аналогичными «волнами» синтезировался на 180нм), кучу сгенерированных инстансов памяти/регистровых файлов (их обычно поставляет фабрика), и по всей площади раскиданные идентичные блоки мониторинга (предположительно, мелкие бело-синие вертикальные прямоугольнички). Заметная часть чипа (около 25%) транзисторами не занята, и там просто заполнение пустыми ячейками.

Посмотрим чуть ближе:
Предположительно, блок мониторинга (температура/скорость генерации инверторной цепочки например). Вокруг - поле пустых ячеек:

Ряды стандартных ячеек в максимальном оптическом разрешении. Тут 1 пиксель = 28.5нм, 28 микрометров (0.03мм) на ширину кадра, но оптическое разрешение ограничено дифракцией на уровне порядка 200нм (потому кадр кажется и является нечетким). Видно, что в первом приближении тут подход тот же, что и на 180нм - те же ряды транзисторов «спина-к-спине» - … транзисторы (т.е. соседние ряды стандартных ячеек зеркально отражаются). Линия с P транзисторами чуть шире:

Один из мелких сгенерированных блоков памяти - собственно массив SRAM ячеек занимает небольшую часть блока (остальное - драйверы строк/колонок и усилители сигнала, логика внешнего интерфейса). Вокруг детальнее видно поле «пустых» ячеек (совсем ничего там рисовать нельзя - чип получится неравномерным по высоте, что недопустимо):

Напоследок - фотография Байкала в иммерсионном масле, сразу после последних кадров:

На мой взгляд Baikal-T1 - большой шаг вперед для отечественной гражданской микроэлектроники. Это современное ядро, разработанное и произведенное по современным массовым гражданским технологиям, которое решает поставленные задачи стандартными средствами - общепринятый в мировой индустрии маршрут разработки, всем понятный и открытый компилятор, всем понятная и открытая ОС. Изобретение своих велосипедов там, где без них можно обойтись - это настоящий бич отечественных разработок, и тут этого удалось избежать.

На этом пока все - надеюсь в обозримом будущем чаще выходить с публикациями. Если работы такого рода вам нравятся - теперь вы можете поддержать их на