Linux Foundation открыли новое направление — CHIPS Alliance. В рамках этого проекта организация будет развивать свободную систему команд RISC-V и технологии для создания процессоров на её основе. Расскажем подробнее, что происходит в этой сфере.


/ фото Gareth Halfacree CC BY-SA

Почему появился CHIPS Alliance


Патчи, защищающие от Meltdown и Spectre, в некоторых случаях снижают производительность серверов на 50%. При этом все еще появляются новые вариации уязвимостей, связанные со спекулятивным выполнением команд. Об одной из них стало известно в начале марта — специалисты по ИБ окрестили её Spoiler. Эта ситуация влияет на обсуждение необходимости пересмотра существующих аппаратных решений и подходов к их разработке. В частности, Intel уже готовят новую архитектуру для своих процессоров, не подверженную Meltdown и Spectre.

Не остались в стороне и в Linux Foundation. Организация запустила собственную инициативу — CHIPS Alliance — участники которой займутся развитием процессоров на базе RISC-V.

Какие проекты уже разрабатывают


В списке участников CHIPS Alliance — Google, Western Digital (WD) и SiFive. Каждая из них представила свои собственные разработки. Расскажем о некоторых из них.

RISCV-DV

Поисковый ИТ-гигант передал в open source платформу для тестирования процессоров на базе RISC-V. Решение случайным образом генерирует команды, которые позволяют проверить работоспособность устройства: тестируют процессы перехода, стека вызовов, CSR-регистры и др.

Например, вот так выглядит класс, отвечающий за проведение простого теста арифметических инструкций:

class riscv_arithmetic_basic_test extends riscv_instr_base_test;

  `uvm_component_utils(riscv_arithmetic_basic_test)
  `uvm_component_new

  virtual function void randomize_cfg();
    cfg.instr_cnt = 10000;
    cfg.num_of_sub_program = 0;
    cfg.no_fence = 1;
    cfg.no_data_page = 1'b1;
    cfg.no_branch_jump = 1'b1;
    `DV_CHECK_RANDOMIZE_WITH_FATAL(cfg,
                                   init_privileged_mode == MACHINE_MODE;
                                   max_nested_loop == 0;)
    `uvm_info(`gfn, $sformatf("riscv_instr_gen_config is randomized:\n%0s",
                    cfg.sprint()), UVM_LOW)
  endfunction

endclass

По словам разработчиков, платформа отличается от аналогов тем, что позволяет последовательно проверить все компоненты чипа, включая блок памяти.

Протокол OmniXtend

Это сетевой протокол от WD, обеспечивающий когерентность кэша при передаче данных поверх Ethernet. OmniXtend позволяет обмениваться сообщениями напрямую с кэшем процессора и используется для подключения разного рода ускорителей: GPU или FPGA. Он также подходит для создания систем на базе нескольких чипов RISC-V.

Протокол уже поддерживается чипами SweRV, ориентированными на обработку данных в дата-центрах. SweRV — это 32-разрядный двухконвейерный суперскалярный процессор, выполненный по 28-нанометровому техпроцессу. Каждый конвейер имеет девять уровней, что дает возможность загружать и исполнять несколько команд одновременно. Устройство работает на частоте 1,8 ГГц.

Генератор Rocket Chip

Решение от компании SiFive, которую основали разработчики технологии RISC-V. Rocket Chip — это генератор ядер процессора RISC-V на языке Chisel. Он представляет собой набор параметризованных библиотек, которые используются для создания SoC.

Что касается Chisel, то это язык описания аппаратуры, основанный на Scala. Он генерирует низкоуровневый код на Verilog, который подходит для обработки на ASIC и FPGA. Таким образом, он позволяет использовать принципы ООП при разработке RTL.

Перспективы альянса


Эксперты говорят, что инициатива Linux Foundation сделает рынок процессоров более демократичным и открытым для новых игроков. В IDC отмечают, что рост популярности таких проектов положительно скажется на развитии технологий машинного обучения и систем ИИ в целом.


/ фото Fritzchens Fritz PD

Развитие open source процессоров также позволит снизить стоимость проектирования кастомных чипов. Однако это произойдет только в том случае, если сообществу Linux Foundation удастся привлечь достаточное количество разработчиков.

Аналогичные проекты


Разработкой проектов, связанной с открытым аппаратным обеспечением, занимаются и другие организации. Примером может быть консорциум CXL, представивший в середине марта стандарт Compute Express Link. Технология является аналогом OmniXtend и также связывает CPU, GPU, FPGA. Для обмена данными стандарт использует шину PCIe 5.0.

Еще один проект, занимающейся развитием процессорных технологий, — MIPS Open, который появился в декабре 2018 года. Инициативу создал стартап Wave Computing. Разработчики планируют открыть для ИТ-сообщества доступ последним 32- и 64-разрядным наборам команд MIPS. Старт проекта ожидается в ближайшие месяцы.

В целом open source подход становится общепринятым не только для ПО, но и для железа. Подобные проекты поддерживают крупные компании. Поэтому можно ожидать, что уже в ближайшем будущем на рынке появится больше устройств, в основе которых лежат открытые аппаратные стандарты.



Свежие посты из нашего корпоративного блога:


Посты из нашего Telegram-канала:

Комментарии (4)


  1. mpa4b
    21.03.2019 17:08

    Как-то открытие спецификации процессора не очень тянет на open source. Это как открытие спецификации API какой-нибудь проприетарной библиотеки. Мол вот вам спецификация, а дальше хотите сами пилите либу, хотите нашу за $$$.


  1. ntfs1984
    22.03.2019 15:20

    Зря минуснули первого комментатора.

    В мире существует куча доступных и открытых архитектур, и достаточно давно. OpenRISC, MIPS, OpenSPARC, и так далее. Да и этой уже десяток лет.

    Эксперты говорят, что инициатива Linux Foundation сделает рынок процессоров более демократичным и открытым для новых игроков
    Экспертам прежде чем говорить, следовало бы загуглить OpenRISC, которому уже 20 лет, и который почему-то до сих пор не стал убийцей Intel, хотя бы потому что о нем знают полтора человека.

    Вопрос же не в том, как архитектуру набросать на бумаге, а в том, на каком заводе, и за какие деньги ее склеить так, чтоб она была в той же пропорции цены\скорости, что и закрытые решения, иначе кому она будет нужна. А потом еще напилить на ней необходимый софт.

    Поскольку в отличие от опенсорсного на 99% бесплатного софта, эти чипы придется продавать, то опенсорсные методы стиля «не нравится, не пользуйся или форкай» здесь не сработают, здесь придется предоставлять клиенту именно то, что ему нужно, либо собирать это на заводах себе в минус.

    Это в программном мире, мы можем взять гном2, сделать с него гном3, кому не понравилась идея перехода на гном3, продолжать пилить гном2 в виде мате, или дождаться релиза гнома3 и форкнуть его на циннамон, пантеон, баджи, диипин и прочая, при этом не будучи никому ничем обязанным. В аппаратном мире, бизнес-модель совсем другая, базарная разработка тут не сработает.

    Поэтому… заголовок слегка желтоват, его следовало бы просто взять из текста новости: Linux Foundation примет участие в проекте RISC-V.


    1. LevOrdabesov
      22.03.2019 15:50

      Домашний нанометровый 3д принтер ждём.
      Грузишь себе с siliconverse нужный проц, печатаешь. Год он работает, потом выкидываешь, печатаешь новый. Критическая уязвимость выходит – перепечатываем. Лепота.


    1. netch80
      24.03.2019 00:21

      > Экспертам прежде чем говорить, следовало бы загуглить OpenRISC, которому уже 20 лет, и который почему-то до сих пор не стал убийцей Intel, хотя бы потому что о нем знают полтора человека.

      OpenRISC известен любому, кто хоть немного интересуется тематикой, но малоинтересен из-за чудовищно переусложнённого и нелепого дизайна — настолько, что x86 по сравнению с ним выглядит вполне прилично.

      RISC-V как раз пример того, как упростили и минимизировали реализацию, причём сделали это действительно очень разумно — и потому у него есть нормальные шансы взлететь.

      > В аппаратном мире, бизнес-модель совсем другая, базарная разработка тут не сработает.

      Форки в аппаратном мире, конечно, значительно сложнее делаются из-за того, что слишком дорого подтачиваться под изменения базовой ISA. Но это не мешает делать форки с её расширением под свои специфичные нужды — что реально и происходит у десятков вендоров ARM и MIPS, или подтачивать параметры отдельных блоков реализации (я уж не говорю про специфичную целевую аппаратуру в SoC). Это вполне себе «базар» в соответствующих областях.

      > заголовок слегка желтоват, его следовало бы просто взять из текста новости: Linux Foundation примет участие в проекте RISC-V.

      Тут всё-таки важно то, что RISC-V прошёл этап эмуляторов в софте и в FPGA (по крайней мере в базе своего кода) и начинает выходить на ASIC.