Байкал процессор где используется
Лет 25-30 назад рынок персональных компьютеров был в разы меньше, чем сейчас, зато вариантов персональных компьютеров было куда больше. Типовые «писишки» и тогда уже были самыми массовыми, но во многом потому, что в нижних ценовых сегментах у них не было конкурентов. А вот на верхних этажах «паслись» и топовые PC, и «маки», и разнообразные рабочие станции, работающие на самых разных центральных процессорах под управлением той или иной версии Unix. В общем, компьютерным журналам того времени не составляло большого труда устроить тестирование штук пяти несовместимых друг с другом компьютеров — о такой роскоши в мире современной унификации можно только мечтать.
А еще одной любимой темой прессы того времени были рассуждения о тупиковости CISC-процессоров (к которым традиционно относили х86) и о светлых перспективах RISC-систем. Дело в том, что крупнейшие клиенты либо ничего другого и не выпускали (например, Sun Microsystems мигрировала с процессоров Motorola 68к на собственные SPARC’и еще в 1987 году), либо как раз отказывались от старых разработок в пользу новых архитектур (та же Motorola сначала попробовала выпустить на рынок 88к, а потом вместе с Apple и IBM занялась PowerPC). Собственно, и в Intel тогда придерживались мнения, что запас модернизации х86 исчерпан, все равно придется переходить на что-то другое. На что конкретно — тогда еще ясности не было, поэтому Intel одновременно разрабатывала Itanium (совместно с Hewlett Packard), дорабатывала х86 (все дальше и дальше уходя от «классической» микроархитектуры) и даже собственные ARM-процессоры развивала (в 1997 году ей достались DEC StrongARM, позднее превратившиеся в Intel XScale). Производителям программного обеспечения эту неопределенность тоже приходилось учитывать, и именно тогда стала заметной тенденция на отделение операционных систем от конкретных аппаратных решений. В Microsoft, например, сразу делали Windows NT портируемой, поэтому версия NT 3.1 работала не только на х86, но и на DEC Alpha и на процессорах MIPS, а начиная с версии NT 4.0 добавилась поддержка PowerPC.
Сложно сказать, чем бы все это кончилось, не случись в 2000 году «краха доткомов». Лопнувший пузырь больнее всего ударил по технологическим компаниям, многие из которых так после этого и не восстановились. Часть тогдашних претендентов на лидерство потом доедали по кустам до самого начала «десятых», хотя поворотным моментом в какой-то степени можно считать переход Apple и Sun на х86 в середине «нулевых» (2005-й и 2004-й соответственно). Еще до этого основной целевой архитектурой для Windows стала х86-64 — начиная с Windows XP, вышедшей в 2001 году. Чуть позже (уже в 2006 году) Intel продала ARM-бизнес компании Marvell и решила полностью сконцентрироваться на х86, причем для более полного охвата разных сегментов рынка (в том числе и тех, где ранее использовался XScale) была придумана концепция «малых ядер» — линейка Atom. От разнообразия операционных систем тоже не осталось и следа: что-то ушло к «Wintel», что-то досталось бесплатному Linux, со временем покончившему со всеми коммерческими реализациями Unix.
В перспективе ситуация снова может измениться — благодаря тому, что подрос ARM. Началось это с мобильного рынка, сейчас дошло уже и до ПК с ноутбуками, и ничего неожиданного в этом нет. Как говорили в Intel лет пять назад: «Рано или поздно мы где-то встретимся — но считаем, что наше положение в этот момент будет лучше благодаря лидерству в техпроцессах». Однако позднее как раз с техпроцессами не все оказалось гладко, так что в какой-то степени именно ARM пришел на встречу более подготовленным.
В общем, изменится ли что-то глобально в ближайшее время — только время и покажет. Главный момент: существуют ниши, для которых в принципе не требуются процессоры с топовыми характеристиками, а также нет необходимости в глобальной совместимости программного обеспечения. Например, идущий во многих странах (в том числе и в России) процесс импортозамещения ПО, используемого в государственных органах, по понятным причинам ориентирован на местные разработки, включая и операционные системы. Разработать ОС с нуля непросто, однако и не обязательно: в реестре отечественного ПО есть уже несколько [условно] «местных» ОС на базе Linux. Прикладное программное обеспечение может делаться под такой Linux, причем приложения общего назначения (типа офисных) — на базе существующего СПО, а уж разворачивание сложных информационных систем можно осуществлять и с нуля.
Да, нужно понимать, что ПО-то может быть полностью российским, а вот с полностью российским оборудованием все на данный момент гораздо сложнее. Но, опять же, проблему выпуска готовых продуктов имеет смысл решать только в том случае, когда вообще есть что выпускать. А оно есть — и даже работает.
Британия изолировать РФ от IT- технологий, но дело не выгорит
Очередная волна антироссийских санкций со стороны Великобритании накрыла отечественных разработчиков процессоров — в опубликованном 4 мая списке значатся компания АО МЦСТ, выпускающая процессоры «Эльбрус», а также АО «Байкал электроникс», производящая процессоры Baikal. У них заморозили активы, предприятиям Королевства запретили оказывать им технологические и финансовые услуги. Среди запретительных мер значится ограничение на использование британской архитектуры ARM. Теперь им предстоит воспользоваться контрафактом или искать замену.
Запрет использования ARM весьма чувствителен для «Байкал электроникс», работающий по лицензии с данной архитектурой. Теперь, возможно, им придется воспользоваться открытыми — RISC-V, MIPS или VLIW.
Ранее производители российских процессоров, в том числе МЦСТ, «Байкал электроникс», НТЦ «Модуль», НТЦ «Элвис» уже попали под американские санкции, согласно которым зарубежные партнеры обязаны координировать с Бюро промышленности и безопасности американского министерства торговли реализацию российским предприятиям собственной технологической продукции.
Как поясняет председатель совета Фонда развития цифровой экономики Герман Клименко, назвать процессоры «Эльбрус» и Baikal российскими можно было с большой натяжкой.
— Здесь сложилась довольно своеобразная картина, довольно распространенная в производстве оборудования: мы берем детали в Китае, что-то делаем из них делаем на заводе в Китае, везем в Россию, а потом выдаем это за отечественную продукцию — за результат политики импортозамещения. Государство в данном направлении, мягко говоря, ошиблось. Сфера высоких технологий все же отличается от аграрной, где для выращивания некоторых продуктов используется импортный посевной материал. Там действительно можно отказаться от импорта, пусть потеряв в количестве. Мы вырастим меньше продукции, но она будет точно своя. В IT такого достичь не удается.
«СП»: — Значит, желаемое выдавалось за действительное?
— Примерно так. Когда несколько лет назад мы попали под санкции, чиновникам нужно было говорить, что у нас есть что-то свое. Теперь мы получили, что получили. Не всякий же высокопоставленный чиновник рискнет изложить первому лицу реальную картину. Получается, прежде мы вводили в заблуждение общественность. Может, сейчас говорить об этом не слишком к месту, но ведь все равно когда-то об этом сказать придется.
«СП»: — Есть ли какие-то варианты выхода из ситуации?
— Обращаться за помощью к Китаю, я не вижу иного выхода. Поднебесная все-таки считается нашим союзником, стратегическим партнером.
Три года назад, когда компания Huawei попала под санкции, они приезжали в Россию и предлагали сотрудничество, в котором они нуждались. Они вели переговоры с разработчиком «Эльбруса». Предлагали свои сервера. Но наши отказали по причине вдруг возникшей гордости — мол, у нас есть собственные. Их сервера, может, не такие мощные, но построенные на собственных технологиях, которые обслуживают несколько центров с общей численностью несколько тысяч человек.
Сейчас, надо сказать, та же Huawei не горит желанием с нами сотрудничать, опасаясь попасть под вторичные санкции. Так что, нельзя недооценивать возможности партнера и переоценивать свои собственные.
«СП»: — Но что-то же у нас производят?
— Делают на старых компонентах, этого немного, но для оборонных нужд вполне достаточно. В ситуации с процессорами мы просчитались.
Думаю, стоило упирать прежде всего на то, где мы сильны — на программирование. Скажем, сейчас на «Касперского» грозят санкциями, всевозможными карами, однако все понимают, что на практике это крайне сложно будет сделать, потому что огромный пласт компьютеров в мире завязаны на нем.
«СП»: — Какая судьба может ожидать «Эльбрус» и Baikal?
— Возможно, все будет по старой традиции — станут делать вид, будто что-то делают. Здесь можно вспомнить судьбу некогда широко разрекламированной национальной поисковой системы «Спутник» и одноименного браузера. Когда ввалили огромные деньги, о нем много говорили, но потом он тихо умер.
«СП»: — Для зарубежных партнеров разрыв сотрудничества с нашими компаниями будет чувствительным?
— При существующих у них объемах экономики, наш рынок не слишком значимый.
Впрочем, по словам директора по развитию компании Promobot (занимается разработкой робототехники) Олега Кривокурцева, с разработкой процессоров все обстоит не настолько печально.
— Конечно, сотрудничество с британской стороной было важным для МЦСТ и «Байкал электоникс», и введенные санкции создадут им проблемы. Но я точно знаю, что эти проекты свернуты не будут. У компаний-создателей был разработан «план Б» на случай возникновения подобной ситуации. Конечно, теперь сроки реализации проектов будут несколько сдвинуты, но их уверяю вас, не забросят.
«СП»: — Насколько сдвинутся сроки?
— Примерно на год. Думаю, через это время они представят общественности результаты своих трудов.
«СП»: — Тема технологического суверенитета сейчас активно обсуждается в прессе и экспертном сообществе? Насколько возможна такая автаркия в области высоких технологий?
— Абсолютно невозможна. Причем ее не сможет обеспечить себе ни одна страна. Высокие технологии потому и развиваются так быстро, что происходит обмен идеями, навыками, знаниями специалистов всего мира. Это ведь не просто общение, но и обмен научными школами, подходами. Конечно, мы будем перенимать опыт, воспроизводить что-то и создавать свое. Но Россия точно не станет отгораживаться от мира в данной сфере, а изолировать нас точно невозможно.
Байкал-M — интегральная схема отечественного производства
О начале разработки этих процессоров стало известно в середине 2010-х, хотя сама компания стала известна широкой публике чуть позднее — вместе с анонсом Байкал-Т1. Этот процессор основывался на MIPS-архитектуре, имел всего пару ядер и во многом оказался пробным камнем. Но все-таки он использовался в некоторых проектах — например, первым продуктом на его основе оказалась система управления станками с ЧПУ. Моноблоки на Байкал-Т1 тоже демонстрировались, но для такого применения чип все-таки был слабоват уже на момент выхода. Да и лучшие годы MIPS кончились еще в упомянутые 90-е — сейчас уже сложно ожидать для этой архитектуры нормальную поддержку со стороны производителей софта.
Так что сразу после сертификации компания объявила о том, что готовятся еще три новых чипа. Два из них представляют собой упрощенные модификации Байкал-М, в котором периферии оказалось. несколько избыточно для типового рабочего места, например. В итоге под нож частично пошла сетевая поддержка, линии PCIe, а в младшей модели — и часть процессорных ядер. Последнее тоже не страшно: все равно в интерактивной работе загрузить их все нечем, а бо́льшую часть времени система ждет действий пользователя. Зато тот же Байкал-М/2 компактнее, а стало быть — и дешевле в производстве.
Первоначальная модель Байкал-М не пропадет: она может оказаться отличной основой для микросервера или NAS, которые отечественным компаниям тоже нужны. Не сказать, что это очень большой рынок, но с учетом его специфики тут есть возможность даже на глобальный рынок выйти: все равно основную стоимость составляет программное обеспечение (которое можно писать на месте), а в бюджетных моделях обычным делом является использование процессоров с парой ARM-ядер и с одним гигабитным сетевым интерфейсом. Что-нибудь подобное Байкал Электроникс недавно пообещал разработать на замену Байкал-Т1, поскольку на перспективу лучше все-таки ограничиться одной архитектурой процессоров для всех сегментов — от тех же станков до серверов. Кстати, на серверное применение ориентирован также анонсированный прошлой осенью Байкал-S: уже 16-нанометровый процессор на 48 ядрах ARM-Cortex A75 и с кучей периферийных контроллеров. И с тремя межпроцессорными интерконнектами — что позволяет на одной плате совместно работать и четырем таким устройствам с соответствующим масштабированием производительности. Энергопотребление получается более серьезным, до 120 Вт, но по меркам серверного рынка это немного.
В общем, в планах компании полный охват всего необходимого спектра микропроцессоров: от простых и компактных встраиваемых двухъядерных моделей через персональные компьютеры и до серверов. Наработки для всего этого есть. Они базируются на импортных лицензиях, да и производство локализовать пока невозможно, но, как уже говорилось, с чего-то начинать все равно нужно. Байкал-S, Байкал-М/2 и Байкал-М/2+ «в железе» должны появиться в следующем квартале этого года. А вот Байкал-М уже доступен заказчикам. Равно как и прототипы систем на нем — с одним из которых нам удалось близко познакомиться.
Программная составляющая
Посмотреть на то, что работает и доступно из коробки, тем не менее, было интересно. По умолчанию нас встретила Astra Linux Special Edition — действительно специфическая система, рассчитанная на обеспечение защиты обрабатываемой информации вплоть до уровня гостайны включительно. То есть основные потенциальные потребители — объекты КИИ, силовые ведомства (Минобороны, например, или ФСБ), которыми данный релиз полностью сертифицирован. При этом системой давно уже заинтересовались в «Газпроме», Росатоме, РЖД и не только.
В 2014 году компания Байкал Электроникс приобрела лицензию на самое передовое на тот момент процессорное ядро. После череды инцидентов, повлиявших на дальнейший исход событий, в октябре 2019-го года компания официально представила широкой общественности первый российский процессор общего назначения, реализованный на архитектуре ARM. Создатели решают назвать своё уникальное отечественное детище «Baikal-М».
Байкал М
Воплотивший в себя труд около 50 инженеров и три года разработки в октябре 2020 года был признан Минпромторгом микросхемой второго уровня, произведённой на территории Российской Федерации.
В соответствии с действующей нормативной базой, разработчик российской микросхемы второго уровня обязан обладать правами на его конструкторскую документацию, а проектирование, разработка и испытания микросхем должны происходить в границах нашей страны. От микросхем первого уровня они принципиально отличаются только тем, что их непосредственное производство осуществляется за рубежом. Сегодняшнее положение дел в России таково, что ни одна процессорная разработка малой топологии получить статус первого уровня не может по определению — у нас просто нет соответствующих производственных мощностей.
В 2017 году Михаил Сваричевский осуществлял вскрытие микропроцессора Байкал Т - предыдущей разработки Байкал Электроникс на архитектуре MIPS. Сейчас у нас появилась уникальная возможность взглянуть в полной мере на свеженький Байкал-М, - одну из самых значимых процессорных разработок в России за последние годы.
Итак… Байкал М1000 – микропроцессор общего назначения, изготовленный по 28 нанометровым технологическим нормам на заводах тайваньской компании TSMC с использованием десяти металлических слоёв и включающий в себя более двух миллиардов транзисторов. Максимальный TDP Байкал М составляет 35 Ватт.
Кристалл микропроцессора Байкал М
Процессор выполнен в форм-факторе BGA с размерами подложки 40 на 40 миллиметров. Каждый BGA-контакт отвечает за питание и функционирование конкретного элемента на кристалле. У Байкал Электроникс есть достаточно подробный даташит на официальном сайте. Посмотрев карту BGA-контактов, можно без труда определить расположение функциональных блоков.
Сняв теплораспределительную крышку, мы видим кристалл с нанесенной на него термопастой.
Площадь кристалла процессора составляет 248,78 квадратных миллиметров. Размер чипа без, так называемых «scribes lines», - областе́й по периметру чипа, являющихся «мусором» - 239,97 квадратных миллиметров.
Когда на кремниевой пластине уже «напечатаны» будущие чипы, её необходимо разрезать на отдельные составные части. Между топологией каждого кристалла есть специальные разделительные дорожки, по которым осуществляется резка. После разделения остатки разделительных дорожек остаются на кристалле, их размер настолько мал, что производители, указывая площадь микросхемы, зачастую пренебрегают этими значениями.
Кристалл, как и большинство современных микропроцессоров, имеет по всей площади контакты, часть которых отвечает за подачу питания по всей поверхности чипа, часть за высокоскоростные и низкоскоростные интерфейсы и тд…
Если приблизить микросхему к нижнему левому углу – можно увидеть логотип компании Байкал и год изготовления микросхемы.
После снятия металлизации мы подобрались к самому интересному – структурным элементам.
Бесстыдная красота всех его внутренностей
Структурные элементы Байкал М
По всему периметру чипа расположены блоки мониторинга, полюбоваться строением которых мы можем чуть ближе.
Один из блоков мониторинга
В центральной части чипа расположена когере́нтная сеть кэша CoreLink Cache Coherent Network (CCN), использующаяся с восемью мегабайтами системного кэша третьего уровня (L3). Байкал М использует CCN 504, которая может обеспечить размещение до четырёх процессорных кластеров, (в каждом по 4 ядра) и максимальную поддержку до шестнадцати мегабайт кэша третьего уровня. CCN организовывает согласованную работу всех интерфейсов на кристалле, своего рода Infinity Fabric от AMD.
Два контроллера памяти, работающих в 72 битном режиме (8 бит из которых составляет память с коррекцией ошибок, ECC), поддерживают работу со стандартами DDR3-1600 и DDR4-2400.
В правой нижней части чипа расположен комплекс из 16 линий PCI-e 3.0 вместе с контроллером, система управления различными интерфейсами.
В верхней правой части чипа находятся остальные периферийные блоки: два десяти-гигабитных Ethernet интерфейса, а также USB 2.0 и 3.0, интерфейсы SATA с сопутствующими им контроллерами.
Слева от системного кэша между двумя процессорными кластерами расположен блок аппаратного декодирования видео HDMI/LVDS. Этот интерфейс позволяет воспроизводить видео в разрешении 2560 на 1440 при 60 Гц.
Ммдаа… процессор сложная штука. Действительно на грани возможного. Это полезно вспомнить, когда в запале очередного спора возникает желание назвать сотрудников Байкал или МЦСТ придурками. Подумайте, какой интеллектуальный труд стоит за разработкой даже не самого быстрого процессора.
Полупроводниковая индустрия – самая сложноустроенная инфраструктура в мире. Мы привыкли думать, что самая сложная индустрия – это космос, но космическую ракету одна страна самостоятельно сделать может, а современный чип – нет. Сейчас на TSMC стоят самые высокотехнологичные степперы по полупроводниковой литографии в мире уже по технологии 5 нанометров и всё идёт к тому, что 3 и даже 2 нанометра тоже будут. Помимо всего прочего у одной такой фабрики есть целая сеть поставщиков ресурсов, необходимых для производства микросхем. Плюс там есть специализированное программное обеспечение, роботы, высококвалифицированные специалисты. Есть голландская ASML, есть американская Applied Materials, есть французская Air Liquide, японские производители фоторезистов… И всё это собирается воедино в сложном огромном производстве. Учитывая это, можно ответить на вопрос: "Возможна ли технологическая авта́ркия?" Нет, невозможна. Сделать полностью обособленное производство внутри страны нельзя.
В 60-х годах каждая компания должна была сама себе обеспечить производство. Потом появились разработчики софта, выделились производители IP-блоков. Постепенно количество фабрик стало сокращаться. Каждый следующий этап становился на порядки дороже, чем предыдущий. Помимо всего прочего, инвестиции TSMC в семь нанометров измеряются в десятках миллиардов долларов. И все понимают, что окупить инвестиции можно только при огромном объеме, что нужно всем делать этот объем в одном месте и тогда получить лучшую цену.
В мире есть долгоживущие технологии, например, 90 нанометров. Многие компании разворачивают производство на старых техпроцессах, поскольку в рамках того производства, которым они занимаются, использование экстремально тонких технологических норм нецелесообразно по многим аспектам.
Если мы понимаем, что будем производить на этой фабрике сотни тысяч пластин в месяц (а сотни тысяч пластин по семь нанометров – это миллионы или даже десятки миллионов чипов), если мы понимаем, кто будет к нам приходить, чтобы там производиться, наверное, об этом есть смысл говорить. Семь нанометров вы не отправите в космос, семь нанометров вы не поставите в автомобиль, семь нанометров не будете использовать в бытовой технике. Семь нанометров необходимы там, где нужна максимально низкая норма энергопотребления и экстремально высокая производительность.
Фотографии кристалла процессора Байкал М, сделанные Fritzchens Fritz в полном качестве:
Благодарю Locuza за опознание функциональных блоков на чипе.
Вчера мне довелось первым из представителей прессы побывать в компании Байкал электроникс, разработавшей и производящей процессор 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 для микросерверов и встроенных систем.
Газета "Коммерсантъ" опубликовала важный материал "Британия морозит «Байкал». Российские процессоры лишаются доступа к технологиям". К сожалению, авторы заметки никогда не видели то, о чем они написали, то бишь semiconductor IP, и не понимают его природы. Зато его видел я. Поэтому я решил написать к их заметке своего рода толкование:
Что именно британские компании ARM и Imagination продают российским лицензиатам, таким как Байкал? (Спойлер: не патенты, хотя патенты в картину входят)
Чем Apple отличается от Байкала в лицензировании semiconductor IP?
Сколько стоят лицензии на ядра и сколько стоит архитектурная лицензия?
Как компания-разработчик semiconductor IP может обнаружить, что произведенный кем-то чип использует ее ядро?
Были ли прецеденты подобных высоких отношений с китайскими компаниями?
Почему в статье упоминается МЦСТ (Эльбрус)? Они же вроде сами спроектировали CPU собственной архитектуры? (Спойлер: а GPU?)
Могут ли британские патенты стать проблемой для разработчиков российcких ядер с архитектурой RISC-V?
Что логично ожидать от российских полупроводниковых стратегов?
Надо сказать, что для журналистов общественно-политических и бизнес изданий непонимание semi-IP - это норма. Я 10 лет назад привел известную российскую журналистку Евгению Альбац (ведущую программы Эхо Москвы и главреда "Нового Времени") в офис процессорной компании MIPS Technologies в Саннивейл, Калифорния. В то время там проектировалось процессорное ядро MIPS P5600, которое впоследствие было лицензировано в Россию как основа микропроцессора Байкал-Т1. Евгения, точно так же, как и журналисты Коммерсанта, думала, что речь идет о передаче каких-то патентов и была удивлена, что в компании существуют дедлайны для выпуска (чего? патентов?).
Что именно британские компании ARM и Imagination продают российским лицензиатам, таким как Байкал?
Байкал Электроникс (как и Элвис, Миландр, Модуль, Прогресс и другие производители российких процессоров с лицензированными ядрами) получают от ARM или Imagination зазипованный tar-файл, который после распаковки превращается в дерево директорий со следующими файлами:
Код на языке описания аппаратуры Verilog или VHDL (Imagination PowerVR GPU написан на VHDL). Для небольших ядер, например микроконтроллерного класса, это десятки тысяч строк кода наподобие вот такого. Для ядер среднего класса - сотни тысяч строк, сложных может перевалить и за миллион.
Мейкфайлы и скрипты на баше, перле, питоне и tcl, которые запускают симуляцию (моделирование работы ядра с тестовыми программами) и синтез (превращение кода на верилоге в netlist - граф из логических элементов и D-триггеров (быстрых битов памяти)).
Тесты на Си, ассемблере и SystemVerilog (для интерфейсов шин) для проверки что процессорное ядро работает после интеграции в систему на кристалле заказчика (то бишь Байкала).
Документация по архитектуре и микроархитектуре. Хотя слова "архитектура" и "микроархитектура" звучат похоже, но общего между ними не больше, чем между словами "культура" и "физкультура".
Архитектура (ARM, MIPS, RISC-V, x86) - это система команд процессора, интерфейс процессора к программисту на ассемблере. Команды типа сложить, загрузить из памяти, перейти итд. Также видимые программисту регистры, которые используются в этих командах (более корректно называемых инструкциями). Instruction Set Architecture - ISA.
Микроархитектура (ARM Cortex-A78, MIPS P5600) - это внутреннее аппаратное устройство процессора, вид процессора с позиции железячника, его проектировщика. Устройство арифметических блоков, стадии конвейера итд. Код на верилоге описывает микроархитектурную реализацию.
Аналогия: архитектура - мануал по вождению автомобиля (как крутить руль, где смотреть скорость и как жать на педали). Микроархитектура - чертежи двигателя и трансмисcии.
[Также есть термин "архитектура системы на кристалле". Это другое чем "архитектура процессора", это про соединение и совместную работы разных блоков - CPU, GPU, нейроускорителей, и хардвера и софтвера - мы не будем углубляться в эту тему в этом посте.]
А при чем же здесь патенты, о которых пишет Коммерсант? Существуют патенты по микроархитектуре - скажем как устроен предсказатель перехода. Как выглядит патент. Если процессорное ядро скажем ARM использует способ организации такого предсказателя, который нарушает чужой патент, скажем от MIPS, то держатель патента (MIPS) может засудить ARM. Даже если инженеры ARM сами написали код на верилоге, который реализует идею, высказаную в патенте.
Но держатель патента как правило не может засудить покупателя лицензии на ядра от ARM, так в лицензионном соглашении прописано, что ARM защищает покупателя лицензии от таких судов и берет их на себя.
При этом судить можно не только за нарушение патента, но и нарушение копирайта на код на верилоге, использование его для создания чипа. Но об этом мы поговорим дальше.
Чем Apple отличается от Байкала в лицензировании semiconductor IP?
Apple начинали как Байкал. Для чипов в первых трех айфонах Apple лицензировали ядра CPU от ARM Holdings и ядра GPU от Imagination Technologies. Но начиная с четвертого айфона Apple стали переписывать верилог на основе собственной микроархитектуры, сохраняя совместимость с архитектурой ARM. В конечном итоге сейчас у них есть например процессор Apple M1, верилог которого написан в Apple, хотя по системе команд он совместим с архитектурными мануалами от ARM.
Для этого Apple купило у ARM и Imagination не только лицензии на ядра, но и так называемую архитектурную лицензию - право сделать клон с собственной (прямо хочется сказать "суверенной") микроархитектурой.
Вообще авторами процессорного ядра в индустрии как правило считается компания-автор микроархитектуры, а авторами процессорного чипа - компания-автор системы на кристалле. Поэтому когда в сетях говорят, что автором российcких процессоров Байкал является британский ARM (автор процессорного ядра) или тайваньская фабрика TSMC - они заблуждаются. Также автором процессорных ядер от компании Syntacore с архитектурой RISC-V является Syntacore (проектировщик микроархитектуры и писатель ядра на верилоге) а не RISC-V International (хранитель архитектуры).
Сколько стоят лицензии на ядра и сколько стоит архитектурная лицензия?
Как я писал в комментарии здесь:
Лицензия на ядро на порядок дешевле, чем архитектурная лицензия (архитектурная лицензия = право создать ядро со своей микроархитектурой / структурой конвейера, при этом совместимое по архитектуре / системе команд с лицензируемой архитектурой). Если огрубить и не учитывать разные опции:
Малое ядро микроконтроллерного класса - лицензия может быть десятки тысяч долларов
Среднее ядро типа для чипа в вай-фай роутере - лицензия может быть сотни тысяч долларов.
High-end ядро суперскалярного процессора - лицензия может быть миллион - пара миллионов долларов.
Архитектурная лицензия может быть десять - двадцать миллионов долларов.
Цифры могут быть больше или меньше в пару раз, а также могут быть разные отношения фиксированного платежа и платежа с каждой микросхемы (роялти), но соотношения примерно такие.
Насчет роялти - если ядро микроконтроллерного класса лицензируется крупной микроконтроллерной компании, которая продает его скажем десятками миллионов экземпляров, то фиксированный платеж становится неважным, сделка идет за отчисления от каждого выпущенного микроконтроллера, и при этом продажники торгуются за каждый цент.
Причины, по которой архитектурные лицезии дороже чем лицензии на ядра:
Продавая архитектурную лицензию, продавец создает конкуренцию своим ядрам.
Продавец архитектурной лицензии предоставляет тесты, покрывает патентами и вообще заботится, что процессор покупателя будет действительно соответствовать архитектуре (системе команд)
Как компания-разработчик semiconductor IP может обнаружить, что произведенный кем-то чип использует ее ядро?
Компании, которые продают лицензируемые IP-ядра, используют технологии так называемого watermarking ("водяные знаки"). Они в частности реализуют недокументированное в поставляемых мануалах поведение, когда при использовании редких инструкций с параметрами, поведение для которых не определено, в регистрах появляются некие магические значения.
Фактически это выявление нарушения копирайта на код на верилоге. Нарушение в derivation - использование кода для создания чипа.
Нарушения микроархитектурных патентов выявлять куда сложнее, хотя и такое бывает (см. пункт 7 ниже).
Также бывают суды по нарушению архитектуры, например MIPS versus Lexra, в котором код на верилоге свой, но патент на архитектуру нарушен. Речь шла об инструкциях чтения и записи слова по невыровненному адресу - слово читалось в два приема иструкциями LWL/LWR, Load Word Left + Load Word Right. Именно чтобы не попасть под такой суд, нужно покупать архитектурную лицензию (а не лицензию на ядро). И именно из-за таких судов возникло движение RISC-V.
Были ли прецеденты подобных высоких отношений с китайскими компаниями?
О да. Китайский институт ICT создал в 2002 году "Чип Дракона" Loongson. На архитектуре MIPS64 с собственными расширениями. Потом они выступали на конференциях и говорили, что ничего не нарушают, потому что написали процессор сами. MIPS Technologies их не судил, потому что 1) обожглись на истории с Lexra, которая в индустрии воспринималась не в пользу MIPS и 2) для американской компании засудить кого-нибудь в КНР - это очень нетривиально.
Но стоило "Чипу Дракона" высунуться из КНР и начать переговоры с французско-итальянской ST Microelectronics, чтобы та производила Loongson на фабрике вне КНР (по моему в Малайзии, но я могу путать), как ST им настоятельно порекомендовала урегулировать отношения с MIPS Technologies, и ICT после нескольких полетов вице-президента MIPS в КНР все-таки купил архитектурную лицензию. ссылка 1 ссылка 2
Три года назад китайская компания CIP замутила следующую часть мерлезонского балета, но это уже лишнее для нашего поста.
Почему в статье упоминается МЦСТ (Эльбрус)? Они же вроде сами спроектировали CPU собственной архитектуры? (Спойлер: а GPU?)
МЦСТ гордится что они создали не только российскую систему на кристалле (как Байкал) и не только российскую микроархитектуру (как НИИСИ с MIPS и Syntacore и CloudBEAR с RISC-V), но даже свою архитектуру Эльбрус.
Почему же тогда их упомянули в статье в Коммерсанте?
И вот например Илья Кичаев написал:
"Процессоры «Эльбрус» под санкции не попадают — они создаются на собственной одноимённой архитектуре, разработанной на основе микроархитектуры VLIW."
Увы, Илья, вы не правы. И дело даже не в том, что VLIW - это не микроархитектура, а архитектурный принцип (Илья, как и Евгения Альбац, как и Татьяна Исакова, Никита Королев и Юрий Литвиненко - тоже не знают разницу между культурой и физкультурой, тьфу, архитектурой и микроархитектурой).
Дело в том, что Эльбрус лицензировал у британской компании Imagination Technologies графический процессор PowerVR. Эльбрусовцы это не афишируют, но это можно нагуглить:
Я вот встречал в соцсетях инфо "раньше у компьютеров с Эльбрусом за курсором мышки был шлейф, а сейчас нет". Вот наверно это из-за этого. (шутка)
Могут ли британские патенты стать проблемой для разработчиков российcких ядер с архитектурой RISC-V?
Сейчас российcкие команды Syntacore и CloudBEAR проектируют процессоры с собственной микроархитектурой на основе архитектуры RISC-V. RISC-V примечательна тем, что за нее не нужно платить архитектурную лицензию, хотя за спроектированные на ней ядра можно получать деньги за лицензии на ядра. RISC-V - это способ для индустрии избавиться от засилья архитектурных лицензий от ARM (и ранее MIPS) с помощью создания индустриального комитета который следит за единством микроархитектурных реализаций, но не берет за это деньги. Типа Linux, но в hardware.
"Я читал о планах создания российского производства на технологии 28 нанометров, но не в курсе, насколько этот план близок к осуществлению. Если бы построить такую фабрику, и если бы на ней удалось достичь высокий выход годных чипов (yield), то можно было бы выпускать компьютеры, похожие на современный Lenovo Chromebook S330. Это так называемый хромбук, недорогой компьютер для школ с чипом MediaTek MT8173C на 28 нанометров, на основе лицензируемых ядер ARM и операционной системой ChromeOS. Хромбуки (как с чипами на основе ARM так и другими) стали самыми популярными компьютерами в американских школах, они обогнали и компьютеры с Windows, и Apple
. Одновременно с "Байкалом" над процессорами похожего класса работает команда Syntacore компании "Ядро", причем их процессор будет использовать спроектированное в России процессорное ядро на основе архитектуры RISC-V. Если это решение взлетит, российской экосистеме удастся не только избавиться от зависимости от иностранных ядер ARM, но получить ядро, которое можно попробовать продавать на внешнем рынке. Если своей фабрики на 28 нанометров построить не удастся, то российским разработчикам придется придумывать схемы партнерства с разработчиками систем на кристалле в КНР и Индии, которые теоретически могли бы лицензировать то же ядро от Syntacore и выпустить свой чип с российким ядром."
Но увы, даже тут не все совсем безоблачно. Если россияне в Syntacore или CloudBEAR нарушат микроархитектурный патент (скажем на конкретную конструкцию предсказателя переходов или там реализации менеджера когерентности), то их теоретически может засудить ARM или Imagination. Несмотря на другую архитектуру - RISC-V, а не ARM. Потому что одни и те же микроархитектурные находки могут использоваться даже в процессорах с разной архитектурой. Даже членство в RISC-V, по моей информации, не защищает от таких судов. Но это мелочи жизни по сравнению с санкциями по линии TSMC или по линии процессорных ядер от ARM.
Что логично ожидать от российских полупроводниковых стратегов?
Максимально финансировать Syntacore и CloudBEAR (RISC-V - избавление зависимости от ARM) и повысить зарплаты их проектировщиками и верификаторам, чтобы те к следующему апрелю, когда откроется следующий раунд H-1 виз, не сбежали бы в Америку. Противное американское правительство недавно объявило, что не будет больше требовать спонсорство от работодателей для получения H-1 визы российким гражданином - оно хочет выманить всех таких людей из России.
Сфинансировать проект российcкого GPU. А то даже с Эльбрусом неудобно получается - и они используют лицензированное в Великобритании semiconductor IP. Проект будет длиться минимум года три, если не пять, и к тому времени или санкции от TSMC снимут, или российкую фабрику на 28 нм построят - так что это имеет смысл.
Сфинансировать российские средства проектирования на основе OpenROAD/OpenLane итд. Тоже на несколько лет проект. Может до уровня Synopsys, Cadence и Mentor Graphics и не дойдут, но что-то полезное будет.
UPD: мне в байкаловском чате в телеграмме дополнили: "Единственно дополнил бы последний пункт соображениями о необходимости не забывать про все остальные IP, без них SoC не построишь. Особенно это касается памяти, она не backward compatible." Да, у Элвис есть свои DSP IP, у IVA Tech IP-блок для ускорения нейросеток, но есть и другие типы IP-блоков, например для wireless интерфейсов.
UPD2: Пояснения от эльбрусовцев, конкретно от Максима Горшенина:
1. Да, в Эльбрус-2С3 3D-ядра компании Imagination (был выбор из множества, в том числе и ARM, Vivante, etc.)
2. 2D и дисплейный контроллер МЦСТ использует собственной разработки в процах со встроенной графикой (Эльбрус-1С+, Эльбрус-2С3, МЦСТ R2000+), а не покупные.
3. Выдумки про «шлейф от курсора» всего лишь выдумки и предположения.
4. В Эльбрус-1С+ и МЦСТ R2000+ 3D-ускорение от компании Vivante, Эльбрус-2С3 один проц с ядрами компании Imaginarion
P.S. Предусмотрено в процессорах от МЦСТ отключение подачи питания на покупные 3D-ядра. И тогда будет работать только 2D-ядро с видеоускорением, написанное и созданное компанией МЦСТ, что позволяет продолжить работу проца и выводом видеоизображения, но с отключенным 3D-ускорением.
Покупные 3D-ядра работают и взаимодействуют со всем остальным только через дисплейный контроллер собственной разработки МЦСТ. Получается что-то вроде «забора» вокруг покупных ядер. Сделано для безопасности и ограничения влияния/эксплуатации вероятных недокументированных возможностей в покупных ядрах.
Байкал-M — интегральная схема отечественного производства
О начале разработки этих процессоров стало известно в середине 2010-х, хотя сама компания стала известна широкой публике чуть позднее — вместе с анонсом Байкал-Т1. Этот процессор основывался на MIPS-архитектуре, имел всего пару ядер и во многом оказался пробным камнем. Но все-таки он использовался в некоторых проектах — например, первым продуктом на его основе оказалась система управления станками с ЧПУ. Моноблоки на Байкал-Т1 тоже демонстрировались, но для такого применения чип все-таки был слабоват уже на момент выхода. Да и лучшие годы MIPS кончились еще в упомянутые 90-е — сейчас уже сложно ожидать для этой архитектуры нормальную поддержку со стороны производителей софта.
Так что сразу после сертификации компания объявила о том, что готовятся еще три новых чипа. Два из них представляют собой упрощенные модификации Байкал-М, в котором периферии оказалось. несколько избыточно для типового рабочего места, например. В итоге под нож частично пошла сетевая поддержка, линии PCIe, а в младшей модели — и часть процессорных ядер. Последнее тоже не страшно: все равно в интерактивной работе загрузить их все нечем, а бо́льшую часть времени система ждет действий пользователя. Зато тот же Байкал-М/2 компактнее, а стало быть — и дешевле в производстве.
Первоначальная модель Байкал-М не пропадет: она может оказаться отличной основой для микросервера или NAS, которые отечественным компаниям тоже нужны. Не сказать, что это очень большой рынок, но с учетом его специфики тут есть возможность даже на глобальный рынок выйти: все равно основную стоимость составляет программное обеспечение (которое можно писать на месте), а в бюджетных моделях обычным делом является использование процессоров с парой ARM-ядер и с одним гигабитным сетевым интерфейсом. Что-нибудь подобное Байкал Электроникс недавно пообещал разработать на замену Байкал-Т1, поскольку на перспективу лучше все-таки ограничиться одной архитектурой процессоров для всех сегментов — от тех же станков до серверов. Кстати, на серверное применение ориентирован также анонсированный прошлой осенью Байкал-S: уже 16-нанометровый процессор на 48 ядрах ARM-Cortex A75 и с кучей периферийных контроллеров. И с тремя межпроцессорными интерконнектами — что позволяет на одной плате совместно работать и четырем таким устройствам с соответствующим масштабированием производительности. Энергопотребление получается более серьезным, до 120 Вт, но по меркам серверного рынка это немного.
В общем, в планах компании полный охват всего необходимого спектра микропроцессоров: от простых и компактных встраиваемых двухъядерных моделей через персональные компьютеры и до серверов. Наработки для всего этого есть. Они базируются на импортных лицензиях, да и производство локализовать пока невозможно, но, как уже говорилось, с чего-то начинать все равно нужно. Байкал-S, Байкал-М/2 и Байкал-М/2+ «в железе» должны появиться в следующем квартале этого года. А вот Байкал-М уже доступен заказчикам. Равно как и прототипы систем на нем — с одним из которых нам удалось близко познакомиться.
Персональный компьютер на базе Байкал-М
Скажем сразу: выбор корпуса нас несколько удивил: Thermaltake Suppressor F1 — достаточно пафосное (и недешевое) решение для сборки мощных ПК со всякими излишествами типа дискретных видеокарт. Впрочем, на выставках смотреться будет достаточно эффектно, а для реальных проектов, естественно, будет взято нечто покомпактнее и попроще.
И без такого количества пустого места, разумеется.
Главная идея: это абсолютно стандартная плата Mini-ITX, полностью подходящая ко всей существующей инфраструктуре. Ничего придумывать не нужно — достаточно установить ее в корпус, в слоты вставить 1-2 абсолютно стандартных DDR4 DIMM и найти какой-нибудь SATA-накопитель (можно и NVMe). Из «внешней» периферии потребуются мышь, клавиатура и монитор — но и для них используются стандартные интерфейсы. То есть вполне сравнимо с разнообразными игрушками для рынка «сделай сам», которые недороги, но со стандартными форм-факторами и со стандартной же периферией там не все так уж гладко. Скажем, у них может быть ограничен объем оперативной памяти, обычно просто напаянной на плату — в отличие от обычных DIMM, суммарной емкостью до 64 ГБ, у компьютера на Байкал-М.
Во всяком случае, это верно для существующих на данный момент системных плат линейки TF307 — появившейся в прошлом году TF307-MB-S-C или попавшей к нам в руки TF307-MB-S-D (внешне они практически не различаются, хотя внутренних коннекторов на второй ревизии чуть больше). Отличий от других плат данного форм-фактора с интегрированными процессорами внешне практически никаких — даже аудиотракт по современной моде изолирован.
Производится плата, как и положено, в России, но пока мелкими сериями — в итоге даже заглушку для портов задней панели оказалось проще распечатать на 3D-принтере, нежели заказывать штамповку.
Единственный компонент, производство которого пока невозможно локализовать полностью — сам процессор в BGA-исполнении. Но это не его особенность, а общее положение дел на полупроводниковом рынке: даже такие (уже не слишком новые) техпроцессы доступны на данный момент немногим. С этим тоже со временем придется что-то делать, причем даже безотносительно вопросов обороноспособности и прочего — но пока так: «узким местом» стало именно производство.
Изначально предполагалось «погонять» на системе тесты. В конечном итоге мы от этой идеи отказались. Во-первых, потому, что разработчики, в общем-то, ничего и сами не скрывают — публикуя подробные отчеты. Скорее всего, что-то подобное и пришлось бы повторить, поскольку специальной методики тестирования для Linux-систем у нас все равно нет, равно как нет и какой-то базы результатов для сравнения, так что проделывать такую работу «с нуля» разово уже не слишком интересно. Каких-либо открытий ожидать сложно, а на получение максимальной производительности сам по себе Байкал-М не слишком ориентирован: такую задачу будут решать новые продукты. Имеющийся процессор предназначен в первую очередь для «обычных» рабочих мест с интерактивным программным обеспечением, которому длительные нагрузки несвойственны, так что большую часть времени любой современный процессор находится в энергосберегающем режиме, поскольку система «ждет» оператора. Не слишком современный — тоже; из-за чего в этой сфере до сих пор трудится огромное количество давно закупленных ПК, производительность которых к общему знаменателю приводится очень плохо. Хотя бы потому, что «отзывчивость» системы в большей степени зависит от объема оперативной памяти и типа системного накопителя — так что пожилые ПК зачастую проще поменять, чем модернизировать или продолжать использовать «как есть». А в случае реализации крупных ИТ-проектов большая часть программ вообще может писаться совсем на месте: не просто в стране, а вообще в конкретной крупной организации. Причем делать это в любом случае придется независимо от выбранного оборудования, так что даже проще все изначально оптимизируя под него — с учетом всех особенностей, включая и производительность. Но сравнивать разные системы в данном случае вообще смысла не имеет.
Комментарий представителя Baikal Electronics: «Если смотреть на цифры, то логично сравнивать производительность Baikal-M с близким по времени релиза и со схожей производительностью процессором - Intel Core i3 7300T. В тесте HP Linpack Baikal-M превосходит Intel Core i3 7300T, а в тесте Coremark незначительно ему уступает. Еще один бенчмарк — это 7-Zip, и здесь результаты по обоим процессорам сравнимы. На операциях сжатия, скорость которых сильно зависит от быстродействия операция с памятью и кэшами, Intel Core i3 7300T чуть быстрее, а вот в случае с распаковкой данных уже быстрее Baikal-M. Есть блок задач, где Intel быстрее — это операции с памятью и кэшэм, а также при работе JavaScript-движков и при работе PHP-интерпретатора. Несмотря на то, что для обычных повседневных нагрузок можно найти более привычные конечному пользователю варианты, в случае, когда требуется сертификация аппаратной и программной составляющей и повышенная защищенность, например, для работы в госорганах, Baikal-M — рабочий вариант, справляющийся со всем необходимым спектром задач».
Читайте также: