Муфты электромонтажные от производителя Fucon
РадиоЛоцман - Все об электронике

Сравнение популярных Linux-платформ для встраиваемых приложений. Часть 1 - Спецификация и производительность

Raspberry Pi Beaglebone Black Arduino Yun Intel Galileo

Raspberry Pi, Beaglebone Black, Arduino Yun и Intel Galileo - какая из них оптимально подойдет для вашего проекта?

На сегодняшний день многие знают о существовании компактных отладочных плат на ОС Linux, таких как Raspberry Pi или Beaglebone Black, но не многие смогут выбрать оптимальный вариант, соответствующий разрабатываемому приложению. В  статье мы в сравнении подробно рассмотрим технические характеристики, производительность, энергопотребление и практическую возможность использования в качестве платформы разработки четырех популярных Linux-плат, что в дальнейшем поможет вам сделать правильный выбор.

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

В обзоре мы будем сравнивать следующие Linux-платформы:

  • Arduino Yun
  • Beaglebone Black
  • Intel Galileo
  • Raspberry Pi

Все выводы сделаны с акцентом на функционал и возможности для разработчика электронных устройств. Все платы работают под управлением определенной версии ОС Linux и прекрасно подходят для подключения различных датчиков, исполнительных устройств и других аппаратных модулей сферы Интернета вещей. Тем не менее, вы увидите, что есть немало важных отличий, как в аппаратной реализации, так и в функциональных возможностях, что может оказаться решающим фактором при выборе той или иной платы для конкретного приложения.

Спецификация

Начнем с общих сведений и наглядного сравнения спецификаций и периферии ввода/вывода отладочных плат. Данные, приведенные в Таблицах 1 и 2, в комментариях не нуждаются.

Таблица 1. Сравнение параметров спецификации Linux-платформ

  Arduino Yun Beaglebone Black Intel Galileo Raspberry Pi
Фото Arduino Yun Beaglebone Black Intel Galileo Raspberry Pi
Система-
на-кристалле
Atheros
AR9331
Texas Instruments
AM3358
Intel
Quark X1000
Broadcom
BCM2835
Процессор MIPS32 24K и
ATmega32U4
ARM Cortex-A8 Intel X1000 ARM1176
Архитектура MIPS and AVR ARMv7 i586 ARMv6
Быстродействие 400 МГц (AR9331) и
16 МГц (ATmega)
1 ГГц 400 МГц 700 МГц
ОЗУ 64 Мбайт (AR9331) и
2.5 Кбайт (ATmega)
512 Мбайт 256 Мбайт 256 Мбайт (model A)
или
512 Мбайт (model B)
Вычисления с
плавающей точкой
(FPU)
Нет
(программный)
Аппаратный Аппаратный Аппаратный
Графический
процессор
Нет PowerVR SGX530 Нет Broadcom
VideoCore IV
Встроенная
Flash-память
16 MB (AR9331) и
32 KB (ATmega)
2 Гбайт (rev B) или
4 Гбайт (rev C)
8 Мбайт Нет
Внешняя память MicroSD (AR9331) MicroSD MicroSD SD карата
Сетевой
интерфейс
10/100 Мбит Ethernet и
802.11b/g/n WiFi
10/100 Мбит Ethernet 10/100 Мбит Ethernet нет (model A) или
10/100 Ethernet (model B)
Питание 5 В (USB micro B
или вывод разъема
расширения)
5 В (USB micro B, 2.1 мм
разъем или вывод
разъема расширения)
5 В (2.1 мм разъем
или вывод разъема
расширения)
5 В (USB micro B
или вывод разъема
расширения)
Размеры 68.6 мм × 53.3 мм 86.4 мм × 53.3 мм 106.7 мм × 71.1 мм 85.6 мм × 56 мм
Вес 41 г 40 г 50 г 45 г
Ориентировочная
цена
$75 $55 (rev. C), $45 (rev. B) $80 $25 (model A),
$35 (model B)
Документация Открытая платформа
с полной принципиальной
схемой.
Процессор официально
не документирован.
Открытая платформа
c полной принципиальной
схемой.
Процессор полностью
документирован.
Открытая платформа
с полной принципиальной
схемой.
Процессор полностью
документирован.
Открытая платформа
с полной принципиальной
схемой.
Процессор частично
документирован.

Таблица 2. Периферия и подсистема ввода/вывода (I/O)

  Arduino Yun BeagleBone Black Intel Galileo Raspberry Pi
Цифровые линии
ввода/вывода
20 65 14 17
Питание
цифровой части
5 В 3.3 В 3.3 В или 5 В
(переключается
перемычкой)
3.3 В
Аналоговые
входы
12 с 10-битным АЦП,
0 – 5 В
(возможность
использования
внешнего опорного
напряжения)
7 с 12-битным АЦП,
0 - 1.8 В
( встроенный источник
опорного напряжения)
6 с 12-битным АЦП,
0 – 5 В
(встроенный источник
опорного напряжения)
Нет
Выходы ШИМ  7 8 6 (ограничения в
скорости ШИМ)
1
Порт UART 2 (1 для AR9331) 4 2 (1 доступен
через 3.5 мм разъем)
1
Порт SPI 1 2 1 2
Порт I2C 1 2 1 1
USB Host 1, разъем
standard A (AR9331)
1, разъем standard A 1, разъем micro AB 1 (Model A)
или
2 (Model B),
разъем standard A
USB Client 1, разъем micro B (ATmega) 1, разъем mini B 1, разъем micro B Нет
Видео выход Нет Micro HDMI Нет HDMI,
Composite RCA, DSI
Видео вход Нет Нет Нет CSI (камера)
Аудио выход Нет Micro HDMI Нет HDMI,
3.5 мм разъем
Выходные
шины питания
3.3 В до 50 мА,
5 В
3.3 В до 250 мА,
5 В до 1 А
3.3 В до 800 мА,
5 В до 800 мА
3.3 В до 50 мА,
5 В до 300-500 мА
Дополнительные
сведения
• Все линии I/O подключены
к процессору ATmega.

• Аппаратная
совместимость со многими
платами расширения
Arduino Leonardo.
• Поддержка работы в
реальном времени с
помощью
программируемых
модулей реального
времени.

• Многие линии I/O имеют
альтернативные функции,
например I2S аудио,
шина CAN и др.
• Слот Mini-PCI Express.

• Часы реального времени
с резервным источником
питания.

• Неполная совместимость
с платами расширения
Arduino.
 

Производительность

Чтобы выявить лидера по производительности (Benchmark) мы использовали давно известный программный инструмент nbench, который изначально был создан для определения производительности компьютеров Pentium-класса. При работе программы выполняется серия тестов, имитирующих реальную вычислительную нагрузку, как, например, при сжатии данных. Все результаты тестов объединяются для построения количественного показателя (оценки) эффективности работы памяти, модулей целочисленных вычислений и вычислений с плавающей точкой для каждой платформы.

Производительность Linux-плат: Arduino Yun, Beaglebone Black, Intel Galileo, Raspberry Pi
 Рисунок 1. Сравнительная диаграмма результатов выполнения
теста производительности nbench на Linux-платах.

Для оценки производительности Linux-плат утилита nbench была скомпилирована с использованием GCC 4.7.1 на мимнимальных настройках оптимизации, ведь наша основная цель – сравнение плат, а не повышение скорости работы. Диаграмма результатов тестирования изображена на Рисунке 1, подробные результаты приведены в Таблице 3.

Таблица 3. Результаты выполнения теста производительности nbench

  Arduino Yun Beaglebone Black Intel Galileo Raspberry Pi
Model A
Raspberry Pi
Model B
Память 1.104 5.661 0.669 2.509 2.570
Целочисленные вычисления 1.840 6.032 1.198 3.305 3.291
Вычисления с плавающей точкой 0.038 1.591 0.621 2.064 2.002

Взгляните на результаты: плата Beglebone Black является лидером по производительности памяти и при выполнении целочисленных операций. Тем не менее, она уступает Raspberry Pi в вычислениях с плавающей точкой. Такой результат объясняется тем, что процессор ARM Cortex-A8 на плате Beaglebone Black снабжен модулем вычислений с плавающей точкой (FPU) «VFPLite», который не так быстр, как FPU других процессоров ARM. Если в вашем приложении необходима производительность и нет больших объемов вычислений с плавающей точкой, то Beglebone Black является оптимальным вариантом.

Еще один интересный пример сравнения – это Arduino Yun и Intel Galileo. Обе платы работают на тактовой частоте 400 МГц, но очевидно, что архитектура MIPS (Arduino Yun) несколько производительнее архитектуры процессора Intel Quark (Galileo). Производительность при выполнении операций с плавающей точкой платы Arduino Yun очень низка, что объясняется отсутствием аппаратного модуля FPU, из-за чего все операции выполняются программно.

Одноплатные компьютеры Raspberry Pi Model A и Model B практически идентичны по производительности. Это ожидаемый результат, ведь платы выполнены на одном и том же процессоре. По сравнению с Model A, Raspberry Pi Model B имеет только увеличенный объем памяти и дополнительную периферию. С точки зрения соотношения цена-производительность плата Raspberry Pi Model A по цене $25, несомненно, впечатляет.

Часть 2Энергопотребление, температурный режим, средства для разработки приложений

Перевод: Vadim по заказу РадиоЛоцман

На английском языке: Embedded Linux Board Comparison. Part 1

26 предложений от 13 поставщиков
RAK7244 WisGate Developer D4 Шлюз-концентратор LoRa EU868 на платформе RaspberryPi4 4GB/Raspbian OS. Поддержка спутниковой навигании. В базовой комплектации с антеннами LoRa...
Триема
Россия
SK006M0470BZF-0611
Yageo
4.00 ₽
RASPBERRY-PI / PROG-4GB-SDCARD
Samsung
205 ₽
AiPCBA
Весь мир
RASPBERRY-PI-CASE
Raspberry Pi
811 ₽
Элитан
Россия
RASPBERRY-PI3-CASE
Raspberry Pi
1 097 ₽
Электронные компоненты. Бесплатная доставка по России
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя