Descripción

Los dispositivos STM32H750xB se basan en el núcleo RISC de 32 bits Arm Cortex-M7 de alto rendimiento que funciona hasta a 480 MHz. El núcleo Cortex-M7 incorpora una unidad de coma flotante (FPU) que admite instrucciones de procesamiento de datos y tipos de datos de doble precisión (conforme a IEEE 754) y precisión simple de Arm. Los dispositivos STM32H750xB admiten un conjunto completo de instrucciones DSP y una unidad de protección de memoria (MPU) para mejorar la seguridad de las aplicaciones.

Los dispositivos STM32H750xB incorporan memorias integradas de alta velocidad con una memoria flash de 128 Kbytes, hasta 1 Mbyte de RAM (incluidos 192 Kbytes de RAM TCM, hasta 864 Kbytes de SRAM de usuario y 4 Kbytes de SRAM de respaldo), así como una amplia gama de E/S y periféricos mejorados conectados a buses APB, buses AHB, matriz de bus multi-AHB de 2×32 bits y una interconexión AXI multicapa que admite el acceso a memoria interna y externa.

Todos los dispositivos ofrecen tres ADC, dos DAC, dos comparadores de consumo ultrabajo, un RTC de bajo consumo, un temporizador de alta resolución, 12 temporizadores de uso general de 16 bits, dos temporizadores PWM para control de motores, cinco temporizadores de bajo consumo, un generador real de números aleatorios (RNG) y una célula de aceleración criptográfica. Los dispositivos admiten cuatro filtros digitales para moduladores sigma-delta externos (DFSDM). También incorporan interfaces de comunicación estándar y avanzadas.

  • Periféricos estándar

- Cuatro I2C

- Cuatro USART, cuatro UART y una LPUART

- Seis SPI, tres I2S en modo Half-duplex. Para lograr una precisión de clase de audio, los periféricos I2S pueden ser sincronizados por un PLL de audio interno dedicado o por un reloj externo para permitir la sincronización.

- Cuatro interfaces de audio serie SAI

- Una interfaz SPDIFRX

- Una SWPMI (interfaz maestra de protocolo de cable único)

- Esclavos de entrada/salida de datos de gestión (MDIO)

- Dos interfaces SDMMC

- Una interfaz USB OTG de velocidad máxima y una interfaz USB OTG de alta velocidad con capacidad de velocidad máxima (con el ULPI)

- Una interfaz FDCAN más una TT-FDCAN

- Una interfaz Ethernet

- Acelerador Chrom-ART

- HDMI-CEC

  • Periféricos avanzados como

- Una interfaz de control de memoria flexible (FMC)

- Una interfaz de memoria flash Quad-SPI

- Una interfaz de cámara para sensores CMOS

- Un controlador de pantalla LCD-TFT

- Un compresor/descompresor JPEG por hardware

 

Arm Cortex-M7 con FPU

El procesador Arm Cortex-M7 con FPU de doble precisión es la última generación de procesadores Arm para sistemas embebidos. Se desarrolló para proporcionar una plataforma de bajo coste que satisface las necesidades de implementación de MCU, con un número reducido de pines y un consumo de energía optimizado, al tiempo que ofrece un rendimiento computacional excepcional y una baja latencia de interrupción.

El procesador Cortex-M7 es muy eficiente y de alto rendimiento:

  • Proceso de doble emisión en seis etapas
  • Predicción dinámica de ramas
  • Arquitectura Harvard con cachés L1 (16 Kbytes de caché I y 16 Kbytes de caché D)
  • Interfaz AXI de 64 bits
  • Interfaz ITCM de 64 bits
  • Interfaces DTCM de 2×32 bits

Se admiten las siguientes interfaces de memoria:

  • Buses de datos e instrucciones separados (arquitectura Harvard) para optimizar la latencia de la CPU.
  • Interfaz de memoria estrechamente acoplada (TCM) diseñada para accesos SRAM rápidos y deterministas.
  • Interfaz de bus AXI para optimizar las transferencias en ráfaga
  • Bus periférico AHB-Lite (AHBP) dedicado de baja latencia para conectarse a los periféricos.

El procesador admite un conjunto de instrucciones DSP que permiten un procesamiento eficaz de la señal y la ejecución de algoritmos complejos.

También admite FPU (unidad de coma flotante) de precisión simple y doble, lo que acelera el desarrollo de software mediante el uso de herramientas de desarrollo de metalenguaje, al tiempo que evita la saturación.

 

Unidad de protección de memoria (MPU)

La unidad de protección de memoria (MPU) gestiona los derechos de acceso a la CPU y los atributos de los recursos del sistema. Debe programarse y habilitarse antes de su uso. Sus principales objetivos son evitar que un programa de usuario no fiable corrompa accidentalmente los datos utilizados por el SO y/o por una tarea privilegiada, pero también proteger procesos de datos o regiones de memoria protegidas contra lectura.

La MPU define reglas de acceso para accesos privilegiados y accesos de programas de usuario. Permite definir hasta 16 regiones protegidas que, a su vez, pueden dividirse en hasta 8 subregiones independientes, en las que pueden configurarse la dirección, el tamaño y los atributos de la región. El área de protección oscila entre 32 bytes y 4 Gbytes de memoria direccionable.

Cuando se realiza un acceso no autorizado, se genera una excepción de gestión de memoria.