Описание

Устройства STM32G431x6/x8/xB построены на базе высокопроизводительного 32-битного RISC-ядра Arm® Cortex®-M4. Они работают на частоте до 170 МГц.

Ядро Cortex-M4 оснащено блоком обработки данных с плавающей точкой (FPU) одной точности, который поддерживает все инструкции обработки данных Arm с одной точностью и все типы данных. В нем также реализован полный набор инструкций DSP (цифровой обработки сигналов) и блок защиты памяти (MPU), повышающий безопасность приложений.

Эти устройства оснащены высокоскоростной памятью (до 128 Кбайт Flash-памяти и 32 Кбайт SRAM), широким набором расширенных входов/выходов и периферийных устройств, подключенных к двум шинам APB, двум шинам AHB и 32-битной матрице мульти-AHB шин.

В устройствах также реализовано несколько механизмов защиты встроенной Flash-памяти и SRAM: защита от считывания, защита от записи, защита защищенной области памяти и защита от считывания собственного кода. В устройствах реализована периферия, позволяющая ускорять математические/арифметические функции (CORDIC для тригонометрических функций и блок FMAC для функций фильтрации).

Они имеют два быстрых 12-разрядных АЦП (4 Мспс), четыре компаратора, три операционных усилителя, четыре канала ЦАП (2 внешних и 2 внутренних), внутренний буфер опорного напряжения, маломощный RTC, один 32-разрядный таймер общего назначения, два 16-разрядных ШИМ-таймера, предназначенных для управления двигателями, семь 16-разрядных таймеров общего назначения и один 16-разрядный таймер с низким энергопотреблением.

Они также оснащены стандартными и расширенными интерфейсами связи, такими как:

Три интерфейса I2C

Три SPI, мультиплексированные с двумя полудуплексными I2S

Три USART, один UART и один UART с низким энергопотреблением.

Один FDCAN

Один SAI

USB-устройство

UCPD

Устройства работают в температурных диапазонах от -40 до +85 °C (спай +105 °C) и от -40 до +125 °C (спай +130 °C) от источника питания 1,71-3,6 В. Широкий набор режимов энергосбережения позволяет создавать приложения с низким энергопотреблением.

Поддерживается несколько независимых источников питания, включая вход аналогового независимого питания для АЦП, ЦАП, OPAMP и компараторов. Вход VBAT позволяет резервировать RTC и регистры. Семейство STM32G431x6/x8/xB предлагает 9 корпусов от 32- до 100-выводных.

 

Ядро Arm Cortex-M4 с FPU

Процессор Arm Cortex-M4 с FPU - это последнее поколение процессоров Arm для встраиваемых систем. Он был разработан для создания недорогой платформы, отвечающей требованиям реализации MCU, с уменьшенным количеством выводов и низким энергопотреблением, обеспечивая при этом выдающуюся вычислительную производительность и улучшенную реакцию на прерывания.

32-битный RISC-процессор Arm Cortex-M4 с FPU отличается исключительной эффективностью кода, обеспечивая ожидаемую от ядра Arm высокую производительность при объеме памяти, обычно ассоциируемом с 8- и 16-битными устройствами.

Процессор поддерживает набор инструкций DSP, что позволяет эффективно обрабатывать сигналы и выполнять сложные алгоритмы. Его FPU с одинарной точностью ускоряет разработку программного обеспечения за счет использования средств разработки метаязыка, что позволяет избежать насыщения.

Благодаря встроенному ядру Arm семейство STM32G431x6/x8/xB совместимо со всеми инструментами и программным обеспечением Arm.

 

Блок защиты памяти

Блок защиты памяти (MPU) используется для управления доступом процессора к памяти и предотвращения случайного повреждения памяти одной задачей или ресурсов, используемых другой активной задачей. Эта область памяти организована в виде 8 защищенных областей, которые могут быть разделены на 8 подобластей каждая. Размер защищаемой области варьируется от 32 байт до целых 4 гигабайт адресуемой памяти.

MPU особенно полезен в приложениях, где критически важный или сертифицированный код должен быть защищен от неправильного поведения других задач. Обычно он управляется RTOS (операционной системой реального времени). Если программа обращается к участку памяти, который запрещен MPU, RTOS может обнаружить это и принять меры. В среде RTOS ядро может динамически обновлять настройки области MPU в зависимости от выполняемого процесса. MPU является необязательным и может быть обойден для приложений, которым он не нужен.