vak: (Робот 1)
Теперь наш чип доступен и в виде стандартного модуля SO-DIMM 260. Можете вынуть свой NVidia Jetson Orin NX/Nano, вставить на его место SiMa Modalix, и получить систему на порядок более эффективную по потреблению.

Документация: SoM-Product-Brief.pdf

vak: (Робот 1)
https://www.automotiveworld.com/articles/software-centric-chips-anticipate-the-ai-defined-vehicle/

"SiMa.ai is positioning its unique MLSoC platform as the gateway for unlocking next-generation ADAS/AV performance. Importantly, it has been conceived specifically for automotive applications."

"SiMa.ai’s MLSoC has an ML performance of 50 TOPS and a ResNet-50 (an image classifying architecture) performance of more than 300 FPS per watt. The company claims latency can be reduced by a factor of ten, with all compute in Level 2/3 systems achieved at less than 25W, or less than 100W at Level 4."

"SiMa.ai designed the chip according to three foundation pillars: to be compatible with any computer vision and generative AI application using ML at the edge, regardless of vehicle type; to offer best-in-class performance per watt; and to provide an interface usable by anyone instead of a small demographic of hardware experts."

"In December 2024, SiMa.ai combined its AI/ML capabilities with silicon design and verification firm Synopsys to maximise customisation for automotive-centric IP, subsystems, chiplets, and SoCs."
vak: (Знайка)
В операционку FP/M добавлена поддержка микроконтроллера RP2350. Пять новых платок в списке.

reddit.com/r/FP_M/comments/1inn7bi/release_02_now_with_rp2350/

RP2350 похож на RP2040. Тоже два процессорных ядра и такая же периферия. С четырьмя отличиями.
  • Была система команд armv6-m, стала armv8-m. Тоже 32-битный ARM, но Thumb1 заменился на Thumb2. Команды стали разнообразнее, есть улучшения.
  • В два раза больше памяти: было 256 кбайт, стало 512 кбайт RAM.
  • На 20% быстрее: было 125 МГц, стало 150 МГц.
  • Появилась система команд RISC-V. При старте процессора происходит выбор между arm32 и riscv32. То есть при компиляции вашей программы вы можете указать параметр PICO_PLATFORM=rp2350-riscv. Получите бинарник с системой команд RISC-V, прошьёте в девайс и процессор переключится автоматически. Этот режим я пока в FP/M не делал. 
vak: (Житель планеты Узм)
Смотрите какую прелестную композицию можно соорудить из тысячи крохотных сопротивлений.

vak: (Робот 1)
Любите ли вы роботов, как я их люблю? 😀 Даже позволяю жить в своём доме. Они честно отрабатывают работой по дому. Но судьба робота недолговечна, и старый добрый Румба обветшал за десять лет и приказал долго жить. На память оставлю фотки его мозгов.

Основная управляющая плата, вид сверху. Хороший добротный дизайн.



Она же, вид снизу.



Процессор ARM-32 с 16 килобайтами памяти и 256 килобайтами кода.

vak: (Default)
Прошу любить и жаловать: операционка FP/M для крошечных процессоров. Проект наконец дозрел до минимально законченного состояния. Есть файловая система во флеш-памяти и на SD-карточке, командная строка с возможностью редактирования, и главное - динамический загрузчик. То есть можно выполнять бинарники *.exe из файловой системы во флеше. Вот пример.



Исходники лежат на Гитхабе: github.com/fp-m/fpm-embedded

В разделе Release v0.1 можно скачать готовый бинарник fpm-rp2040-2mb.uf2 и сразу прошить его в плату с чипом RP2040 - если у вас имеется такая. После чего подключиться к консольному порту через USB (на скорости 115200) и играться с системой. Подробности смотрите на странице Getting Started.

Пока всё это работает только на процессоре RP2040. Список поддерживаемых плат смотрите на странице Supported Platforms.

Всё это доступно по лицензии MIT. Собрать из исходных текстов можно по инструкции: Build From Sources.

Проект открытый: присоединяйтесь, господа. Это только начало. Идею можно доразвить в самые разные интересные стороны.
vak: (Аристипп)
У меня сегодня огромная радость. Заработала ключевая фича в проекте, который я с переменным успехом двигал последние два года. В операционке FP/M успешно выполняются ELF-бинарники из файловой системы.

Я когда-то упоминал проект RP/M, за это время он переименовался в FP/M. Расшифровывается как Flash Program for Microcontrollers. Должно получиться похоже на CP/M или MS-DOS, но вместо флопика будет Flash-память.

Вот как это нынче выглядит. Подсоединяемся через USB-порт к виртуальной консоли через minicom и пробуем команду 'hello'.



Программа выполняется из файла /bin/hello.exe в файловой системе flash:. Это вместо диска C:. Вместо флопика A: работает файловая система sd: на SD-карточке. Сама программа выглядит так:
#include <fpm/api.h>

int main()
{
fpm_puts("Hello, World!\r\n");
}
Теперь начну готовить первый релиз. Займёт пару недель, я думаю. Нужно сварганить утилитку, создающую исходный образ файловой системы в Flash-памяти.
vak: (Путиномедвед)
Рассматриваем потроха новейшей российской ракеты Х-59м2а, 2024-го года выпуска. Вскрытие показало процессор 1879ВМ5Я NeuroMatrix и FPGA Altera Max10.

vak: (Default)
Сооружаю некую электронную схему, и нужно найти способ её запитать. Оказывается, есть простое решение. Вот такая фитюлинка даёт 5 вольт от любого зарядника USB-C, до 3-х ампер. Называется USB-C PD 5V DC Fixed Voltage Power Trigger Module. Есть варианты для 9 вольт, 12 вольт, 15 вольт и 20 вольт. Можно больше не держать в радиолюбительском хозяйстве мешок разнообразных блоков питания.

vak: (Аристипп)
МЦСТ выложил на публику исходные тексты binutils для процессоров Эльбрус: binutils-2.39.tgz

Я переложил на Гитхаб для сохранности: binutils-elbrus

Заслуживающие внимания файлы, описывающие архитектуру Эльбрус:Присутствуют забавные вещи, к примеру:
extern int hack_for_e2k;
vak: (Default)
Прислали мне полезную ссылочку про высокоуровневый синтез: arxiv.org/pdf/1805.03648

"This book focuses on the use of algorithmic high-level synthesis (HLS) to build application-specific FPGA systems. Our goal is to give the reader an appreciation of the process of creating an optimized hardware design using HLS."

Надо будет проштудировать на досуге.
vak: (Робот 1)
EE Times:

“Customers are saying that having just the IP doesn’t help them, they need an environment where they can explore how the IP will behave in the final environment, completely up front, so they can work with the semiconductor partner and say, I need this IP, I need this many versions of it, these configurations of it,” De Schutter said. “They also want to start the software development well before the car comes out. Customers said the only true solution is being able to do all this pre-silicon.”

“We’ve shown the world how powerful our [accelerator] is, how power efficient it is, which are the key ingredients for automotive,” he said. “Bringing this together is great for us, of course, it’s exciting because it opens up new ways to go into the market.”

“It’s not just the accelerator part, getting a high performing, super power-efficient ML SoC together means you need to have a lot of other pieces connected to that,” he said. “Theoretically a company could say, give me your IP and I’ll build it into my product, but then how do they test that? How do they virtualise it? How do they make a test run on a chip that doesn’t exist yet?”

“That will help us define our path in more detail,” Kroeger said. “The automotive world needs exactly the product we’re trying to enable here, and this is the first step we are taking.”
vak: (Знайка)
Смотрите какую классную штуку народ придумал. Любой андроидный телефон можно превратить в управляющий экран для вашего микроконтроллерного проекта. На сайте есть куча примеров: remotexy.com/en/examples/

vak: (Default)
Про нас пишут: "Synopsys, among leading manufacturers of chip-design software, will collaborate with SiMa.ai, a company that has designed energy-efficient hardware and software capable of handling diverse AI functions used in cars."

"Synopsys users will gain access to SiMa.ai's intellectual property and Synopsys' tools for simulating how a chip and software will interact."

"The integrated Synopsys and SiMa.ai solution will be designed to enable:
  • Early architecture exploration: Capability to guide automotive design engineers to optimally-choose performance, power, and software application requirements for custom or 3rd party SoC development.
  • Shift-left software development: The solution will be optimized for multi-modal functions and GenAI, as well as to provide an end-to-end workflow including virtual prototyping and emulation to accelerate software/hardware integration and speed time to market.
  • Cost-effective and differentiated in-vehicle experiences: Silicon-proven building blocks and subsystems for high-performance automotive ML SoCs and chiplets that are fully customizable to support diverse workloads, integrating SiMa.ai's leading, easy-to-use ML software and tools.
  • Continuous upgradeability of automotive edge AI solutions: Applications with AI capabilities can be developed to support both current and future requirements. In addition, virtual prototypes can be used to develop and test over-the-air updates."
Однако работы привалило на мою голову. 😀
vak: (Default)
В комментах зашёл разговор про Raspberry Pi 5 по сравнению с Pi 4. Я решил сравнить потребление. Меряю в двух режимах:
  • на холостом ходу
  • при 100% загрузке всех процессоров
Загрузку процессоров создаю, включая режим Stress в утилите s-tui. Не подключены: видеоадаптер, Wi-Fi, устройства USB. Сравнение не совсем корректное, так как на Pi 5 стоит Линукс, а на Pi 4 - FreeBSD.

Raspberry Pi 5 под Ubuntu 24.10:



Raspberry Pi 4 под FreeBSD 14.0:



Перемножаем напряжения и токи, получаем итоговую табличку:
                  Idle      Max
Raspberry Pi 5 3.70 W 8.77 W
Raspberry Pi 4 2.12 W 5.05 W
vak: (Default)
Установил на платку Raspberry Pi 5 нашлёпку M.2 и диск NVMe. Стало заметно шустрее. До этого приходилось работать с SD-карточки.



Померял скорость самого диска утилитой gnome-disks.



Сравните с карточкой SanDisk Extreme Pro.

vak: (Default)
Я тут подумал. Если взглянуть на взаимодействие юзерского кода с ядром юникса, можно заметить, что системы команд не обязаны совпадать. Программа юзера может иметь одну систему команд, а ядро - совсем другую. Параметры системного вызова передаются через регистры. Если форматы данных и указателей более-менее совместимы, то и нет проблем.

Мы имеем мэсм6, то есть реализацию системы команд БЭСМ-6 на Верилоге. А Микрочип имеет PolarFire: микропроцессор RISC-V с Линуксом и FPGA в одном чипе. Платка стоит $132 на microchipdirect.com.
Что если скрестить ежа с ужом? Добавить к имеющимся ядрам RISC-V еще и ядро БЭСМ-6. Благо FPGA вроде немаленького размера (95K логических элементов). Научить Линукс запускать и обслуживать процесс БЭСМ-6. Задействовать имеющийся у нас компилятор Паскаля, и можно будет кодить для БЭСМ-6 под Линуксом!

А если ещё маленько поднапрячься, можно и мониторную систему "Дубна" подтащить. Получим весь спектр языков программирования и ассемблеров. Опыт мы наработали на симуляторе dubna.

Мне кажется, вполне реальная идея.

vak: (Default)
Microchip выпустил микроконтроллер PIC64: первый фактически американский процессор с архитектурой RISC-V. До этого все чипы RISC-V были китайские.



Плату можно приобрести на сайте microchipdirect.com за $150. Процессор PIC64GX1000 имеет четыре ядра SiFive U54-MC с частотой 600 МГц. Имеется 1 Гбайт памяти, слот microSD, гигабитный порт Ethernet, видео выход HDMI, видео вход MIPI. Питание и консоль через порт USB-C.

В комплект входит SD-карточка с предустановленным линуксом Ubuntu 24.10. Инструкция по запуску: Curiosity PIC64GX1000 Kit ES Quickstart Guide. Весь нужный линуксный софт отлично ставится через "sudo apt install". Я пробовал компиляторы Си++, Rust, Golang, D, Zig.

Образ карточки Ubuntu можно также скачать с сайта Canonical: wiki.ubuntu.com/RISC-V/Microchip PIC64GX1000 Curiosity Kit

Подробности конфигурации:Меряем скорость:
Nanoseconds for one run through Dhrystone: 521.2
            Million Dhrystones per Second: 1.919
                                    DMIPS: 1092.1
Это 14% от Raspberry Pi 4 или 30% от Raspberry Pi 3B.