Управление режимами работы процессора ARM Allwinner A64 с помощью подсистемы CPUfreq

Одна из самых отличительных характеристик процессоров на архитектуре ARM от x86, является высокая энергоэффективность. Это достигается путем изменение тактовый частоты работы ядер в зависимости от вычислительной нагрузки системы. Если система находится в режиме ожидания, то частота ядер может снижаться до минимальных значений, а то и вовсе, ОС переведет ядро в режим сна. Чем ниже тактовая частота, тем медленнее работает устройство и тем меньше энергии оно потребляет (и наоборот). Подаваемое напряжение на ядра(ядро) ARM будет регулироваться в зависимости от тактовой частоты, эти режимы работы записаны в ядро ОС или находятся в дереве устройств Linux.

Читать далее »

Распиновка GPIO для Banana Pi BPI-M64

Для удобства схема GPIO и разъемов Banana Pi BPI-M64 вынесена в отдельный пост. Все схемы и datasheet доступны в репозитории GitHub Banana Pi BPI-M64. Что такое GPIO и для каких задач используется почитать пост Работа с GPIO на примере Banana Pi BPI-M64. Часть 1. Интерфейс sysfs LED и DS18B20. Datasheet на процессор AllWinner A64 репозиторий GitHub Allwinner-SoC/Allwinner A64 Интерфейсы На плате доступны интерфейсы: 40-pins совместимый с Raspberry Pi 3; MIPI DSI (Display Serial Interface); MIPI CSI Interface; UART (debug port) JST 1.25MM 6-pin разъем для подключения 3.7V литиевой батареи

Читать далее »

Новый высокопроизводительный одноплатный компьютер BeagleV построенный на открытой архитектуре RISC-V за $119+

До недавнего времени платы построенные на процессоре RISC-V такие как Kendryte K210, невозможно было использовать для высоко ресурсоемких задач , т.к. производительность конечных была очень низкой. В частности одноплатный компьютер XuanTie C906 на базе Allwinner RISC-V можно было использовать только для нишевых небольших задач, например в качестве камеры из-за отсутствия аппаратного графического ускорителя и наличия только 256 МБ оперативной памяти. Можно использовать одноплатные компьютеры такие как SiFive HiFive Unmatched или PolarBerry, но стоимость конечной системы составит сотни, а то и более тысячи долларов, что является весьма дороговато.

Читать далее »

Работа с GPIO на примере Banana Pi BPI-M64. Часть 2. Device Tree overlays

Дерево устройств (Device Tree, DT) — это структура данных в системе Linux, состоящая из именованных узлов и свойств, описывающих оборудование, которое невозможно обнаружить путем опроса оборудования. Дерево должно включать имя базового процессора, конфигурацию его памяти и любые периферийные устройства (внутренние и внешние). DT не используется для описания программного обеспечения, хотя перечисление аппаратных модулей вызывает загрузку модулей драйверов. Пост раскрывает принцип формирования DT на примере отладочной платы Banana Pi BPI-M64, по итогу Вы сможете самостоятельно конфигурировать периферийные устройства GPIO, включая другие платы, например Raspberry Pi.

Читать далее »

Компания Firefly представила сервер Cluster Server R2 в формате 2U на базе 72 модулей SoM Rockchip RK3399/RK3328

Процессоры Rockchip RK3399 и RK3328 обычно используются в Chromebook, одноплатных компьютерах, ТВ-приставках и всевозможных AIoT устройствах. Сервер Cluster Server R2 от Firefly, строится на базе модулей SoM RK3399, RK3328 или RK1808 NPU, и вмещает 72 таких модулей. В корпусе лезвийного сервера, форм фактора 2U, находится 432 ядра Arm Cortex-A72/A53, 288 ГБ ОЗУ и 18 штук 3,5-дюймовых жестких дисков.

Читать далее »

Работа с GPIO на примере Banana Pi BPI-M64. Часть 1. Интерфейс sysfs LED и DS18B20

Начиная с версии ядра 2.6.26, в Linux появился стандартный интерфейс для работы с контактами GPIO(general-purpose input/output — интерфейс ввода/вывода общего назначения) через виртуальную файловую систему sysfs. Работа с GPIO проходит через каталог /sys/class/gpio путём обращения к файлам-устройствам. В публикации приводится пример включение  и выключение светодиода, и получение значения температуры от датчика DS18B20 по 1-Wire интерфейсу.

Читать далее »

Варианты использования конфигурации в ASP.NET Core

Для получения конфигурации приложения обычно используют метод доступа по ключевому слову (ключ-значение). Но это бывает не всегда удобно т.к. иногда требуется использовать готовые объекты в коде с уже установленными значениями, причем с возможностью обновления значений без перезагрузки приложения. В данном примере предлагается шаблон использования конфигурации в качестве промежуточного слоя для ASP.NET Core приложений.

Читать далее »