Компания XMOS представила собственный ИИ-процессор Xcore.ai, предназначенный для применения в области Интернета вещей с искусственным интеллектом (AIoT). Новинка позиционируется как гибкий и экономичный процессор, обладающий производительным ИИ-модулем, цифровым сигнальным процессором (DSP) и контроллерами управления и ввода-вывода.
IoT и искусственный интеллект являются одними из самых популярных направлений за последнее десятилетие, и развиваются они очень стремительно. В последнее время появились тенденции к объединению ИИ и IoT в так называемые системы AIoT, где сама система Интернета вещей будет цифровой «нервной системой», а ИИ — мозгом, отвечающим за принятие решений и контроль за системой.
Xcore.ai представляет собой масштабируемый многоядерный универсальный AIoT-процессор третьего поколения. Чип Xcore первого поколения представлял собой что-то похожее на FPGA с гибким контроллером ввода-вывода и значительными возможностями для управления. Во втором поколении появился DSP, а в последнем третьем поколении были добавлены возможности машинного обучения.
Процессор Xcore.ai построен из двух блоков, сочетающих в себе RISC-ядро и 512 Кбайт памяти SRAM с возможностью расширения внешней LPDDR. Во втором и третьем поколении архитектуры Xcore каждый процессор имеет исполнительный блок с двойным выходом, который способен выполнять команды с частотой вдвое выше частоты конвейера. Исполнительные блоки разделены на восемь параллельных аппаратных потоков, каждый из которых способен выполнять программные задачи, обрабатывать операции ввода-вывода и управления, а также работать как DSP и с нейронными сетями.
Xcore построена на стандартном RISC-подобном наборе команд и поставляется с инструкциями для хранения и загрузки информации в SRAM. Новинка поддерживает как 32-разрядные целые числа, так и числа с плавающей запятой. Платформа Xcore обеспечивает поддержку различных физических интерфейсов, включая USB, MIPI (на приём), а посредством GPIO (128 линий) может обмениваться данными через SPI, QSPI, MII, I2S, I2C, PDM и многие другие интерфейсы.
За счёт масштабируемости архитектуры Xcore у пользователей есть возможность объединять несколько процессоров Xcore.ai для создания более мощных систем. Для связи между процессорами используется интерконнект Xconnect, обеспечивающий пропускную способность до 2 Гбит/с.
Также отметим, что Xcore полностью программируется на языке C с использованием стандартных инструментов, вроде компилятора LLVM и фреймворка Tensorflow Lite, а также данная архитектура может работать со многим ПО, вроде операционной системы freeRTOS.
В конце стоит отметить, что по словам производителя, процессор Xcore.ai во много раз превосходит ядро Cortex M7 по части искусственного интеллекта, возможностей подключения и производительности DSP.