«Байкал-T1»: знакомство с платой на первом в России 28-нм процессоре

4a9d15fa96554f42aaf1136c70e7a3f2.jpg

В нашу инженерную лабораторию попала демоплата Baikal BFK Rev 1.6 на основе первого российского процессора для коммерческих разработок — SOM Baikal-T1 MIPS.


Двухъядерный процессор «Байкал-Т1» на архитектуре MIPS Warrior P-class P5600 MIPS 32 был анонсирован еще в 2015 году в рамках программы по импортозамещению, его разработчик — российская фаблес-компания «Байкал Электроникс». Эта система на кристалле была создана для проектирования промышленных и потребительских устройств: маршрутизаторов и сетевых накопителей, тонких клиентов, мультимедийных центров, систем ЧПУ и т.п.


Откроем коробку и посмотрим, как работает стандартный пакет поддержки платформы (BSP) на тестовой плате:



d46450105b664caaa9dd612a3fb851fb.jpg

Подключаем плату и загружаем установочный файл bsp_baikal_mips_4_00_08.run с сайта разработчика.


В качестве хост-системы используется Debian 8.1. Добавляем пакеты на host-систему:


$ sudo apt-get install parted kpartx libssl-dev

Готовимся к сборке. Создаем директории, даем права на исполнение .run-файла и запускаем установку BSP от Baikal:


    $ mkdir  -p ~/baikal-bsp
              $ cp  /bsp_baikal_mips_4_00_08.run  ~/baikal-bsp/
    $ cd  ~/baikal-bsp/
$ chmod +x bsp_baikal_mips_4_00_08.run
$ ./bsp_baikal_mips_4_00_08.run

Выглядит это примерно так:


39ce13bbd6e447ad9576c06987ac8832.png

Запускаем сборку BSP, используя команду:


$ cd  ~/baikal-bsp/baikal/usr/scripts
$ ./build-boot-img.sh bfk –a

По окончанию сборки получаем:


dbc6562b26a645d0a4d9278f507c8b88.png

Готовим плату для запуска:


  1. Подключаем разъем XP4 mini USB-кабелем к HOST-системе, на этом порту живет DFU Loader.
  2. Подключаем переходник RS232 → USB к XS9 (верхний разъем), он используется для консоли.
  3. Подключаем блок питания формата ATX к разъему XP14.

Прошиваем. Для прошивки используется спецификация USB DFU.


Включаем питание платы нажатием кнопки PWR ON (SB2) и выполняем команды:


$ cd  ~/baikal-bsp
$ sudo baikal/bin/./dfu-util -D baikal/img/bfk-mips.rom -d abf0:1234 -a 0

Лог прошивки выглядит примерно так:


a2c2d339bdcf429fa4864098fd856b29.png

Пример загрузки устройства:


34f6f5eaca7e4318ac673b6c5cb04d67.png

Собираем openwrt rootfs для демонстрационной платы.


Получаем исходный код openwrt (будет использовать Chaos Calmer 15.05)


$ cd  ~/baikal-bsp
$ git clone git://git.openwrt.org/15.05/openwrt.git

11452b3a05984681b651acc373cd7d04.png

Получаем и применяем патч для поддержки демонстрационной платы Baikal BFK в openwrt (патч можно взять по ссылке 0001-add-supporting-baikal-BFK-board.patch):


$ cd  ~/baikal-bsp /openwrt
$ git checkout -b work
$ git am /0001-add-supporting-baikal-BFK-board.patch

Собираем прошивку:


$ cd  ~/baikal-bsp /openwrt
$ cp target/linux/baikal/baikal-bfk-defconfig .config
$ make defconfig
$ make -j4

Пример лога сборки:


e7a26f0bf2924efaa5a2c6e801934216.png

Прошиваем на демонстрационную плату:


$ cd  ~/baikal-bsp
$ sudo baikal/bin/./dfu-util -D openwrt/build_dir/target-mipsel_mips32_uClibc-0.9.33.2/linux-baikal_bfk-1.x/bfk-mips.rom -d abf0:1234 -a 0

Пример запуска:


2ad07db69eac49ca90f80677323d1d9f.png

Информация по процессору:


1d29cab4079d4f10aae16507b9256dad.png

Напоследок проверим производительность Ethernet (ETH 1G) — разъем XS11, нижний коннектор:


    $ ifconfig eth0 up 10.54.4.250
    $ iperf -c 10.54.4.61

Вывод команды:


291e0d124c3a421f970fc1cc51bbf024.png

Видим, что демонстрационная плата вполне юзабельна, пакет поддержки (BSP) основан на ядре 4.4.24 (не очень старом) и загрузчике U-Boot 2014.10 — это упрощает использование сборочных систем openwrt, yokto, buildroot. При необходимости можно перейти на более свежую версию ядра.


В распоряжении инженера весь набор интерфейсов процессора «Байкал-T1»: 10GbE и GbE, USB, SATA, PCIe, GPIO, UART, I2C, SPI.


36acc51dd64f4ac7b5422f69be0dbcb2.jpg

Форм-фактор платы — microATX — привычный размер материнской платы 244×244 мм. Её можно использовать для разработки ПО, макетирования схемотехники, тестирования и отладки своих инженерных решений через JTAG, EJTAG и DFU.


В целом, впечатления от демонстрационного комплекта остались положительные. Будем использовать.

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

  • 31 января 2017 в 14:49

    +3

    Поискал цену на сайте производителя, её нет, есть прекрасное: «Оставьте свой запрос службе продаж, и наши специалисты свяжутся с вами». Можно подумать, что они продают суперкомпьютеры. Так ведь нет — материнку с интегрированным процом класса атома/целерона, каких по 5тыр навалом.
    • 31 января 2017 в 15:04

      +2

      А это особенности национального бизнеса. Ещё в те времена, когда дипломную в университете делал, впервые столкнулся с тем, что в России не принято указывать цены на приборы, оборудование и реактивы. Заходишь на европейские ресурсы — цены есть. На китайские — то же самое плюс информация о скидочных акциях. Можно сравнить и выбрать лучшее.
      И только в случае российских поставщиков в лучшем случае будет «чтобы узнать цену, позвоните по телефону нашему менеджеру», в худшем вообще никаких контактов — ищите, раз хотите купить.
      В итоге мало того, что для выбора оптимальной по цене продукции надо плотно сесть на телефон, обзванивая кучу народа, так ещё и возникает ощущение, что с вас хотят содрать максимально возможную сумму и постоянно прощупывают вашу готовность раскошелиться.
      • 31 января 2017 в 15:09

        +1

        И даже звонок менеджеру проблему не решает, часто после такого звонка недоумение только значительно возрастает.

    • 31 января 2017 в 15:16

      0

      Baikal Electronics → Вопросы и ответы


      Может ли частное лицо заказать продукты «Байкал Электроникс»?
      В настоящий момент нет.

      К сожалению

  • 31 января 2017 в 14:57 (комментарий был изменён)

    +1

    А кроме клонирования рома из гита больше в этой плате ничего интересного? С Малинкой хоть сравнимо?

  • 31 января 2017 в 15:13

    +1

    А для чего эта плата нужна вообще?

© Habrahabr.ru