Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Familias de microcontroladores
Familia XMC1000
XMC1100
Los dispositivos XMC1100 son miembros de la familia XMC1000 de microcontroladores
basados en el núcleo del procesador ARM Cortex-M0. Los dispositivos de la serie XMC1100
están diseñados para aplicaciones de propósito general.
Ilustración 1Diagrama a bloques. Recuperado de [1]
Memorias en el Chip
• 8 kilobytes de memoria ROM en el chip
• 16 kilobytes de memoria SRAM de alta velocidad en el chip
• Hasta 64 kilobytes de memoria Flash en el chip para programas y datos
Periféricos en el Chip
• Dos canales de Interfaz Serie Universal (USIC), utilizables como UART, doble SPI,
cuádruple SPI, IIC, IIS e interfaces LIN
• Convertidores A/D
– Hasta 12 pines y canales de entrada analógica
– Convertidor analógico a digital de 12 bits
• Unidades de Captura/Comparación 4 (CCU4) para usar como temporizadores de propósito
general
• Temporizador de vigilancia de ventana (WDT) para aplicaciones sensibles a la seguridad
• Módulo de Reloj en Tiempo Real con soporte de alarma (RTC)
• Unidad de Control del Sistema (SCU) para configuración y control del sistema
• Generador de números pseudoaleatorios (PRNG) para generación rápida de datos aleatorios
• Sensor de temperatura (TSE)
Líneas de Entrada/Salida con Control de Bit Individual
• Triestado en modo de entrada
• Modo de salida push/pull u open drain
• Histéresis de pad configurable
Sistema de Depuración
• Acceso a través del estándar ARM Serial Wire Debug (SWD) o la interfaz de depuración de un
solo pin
(SPD)
• Una unidad de punto de interrupción (BPU) que admite hasta 4 puntos de interrupción de
hardware
• Una unidad de punto de control (DWT) que admite hasta 2 puntos de control
XMC1200
Los dispositivos XMC1200 son miembros de la familia XMC1000 de microcontroladores
basados en el núcleo del procesador ARM Cortex-M0. Los dispositivos de la serie XMC1200
están optimizados para aplicaciones de iluminación LED e interfaces humano-máquina (HMI).
Ilustración 2 Diagrama a Bloques. Recuperado de [2]
Subsystem de la CPU:
CPU Core:
CPU ARM Cortex-M4 de 32 bits de alto rendimiento.
Conjunto de instrucciones Thumb2 de 16 y 32 bits.
Instrucciones DSP/MAC para procesamiento de señales digitales.
Temporizador del sistema (SysTick) para soporte del sistema operativo.
Floating Point Unit (FPU):
Unidad de punto flotante para operaciones aritméticas.
Memory Protection Unit (MPU):
Unidad de Protección de Memoria para garantizar operaciones seguras.
Nested Vectored Interrupt Controller (NVIC):
Controlador de Interrupciones Anidadas y Vectorizadas para gestionar interrupciones.
General Purpose DMA:
DMA de propósito general con hasta 12 canales para transferencia eficiente de datos.
Event Request Unit (ERU):
Unidad de Solicitud de Eventos para procesamiento programable de solicitudes externas
e internas.
Flexible CRC Engine (FCE):
Motor CRC flexible para la detección de errores de varios bits.
Memorias en el Chip:
16 KB de ROM de arranque en el chip.
96 KB de memoria de programa de alta velocidad en el chip.
128 KB de memoria de datos de alta velocidad en el chip.
128 KB de memoria de comunicación de alta velocidad en el chip.
2,048 KB de memoria Flash en el chip con caché de instrucciones de 8 KB.
Periféricos de Comunicación:
Módulo Ethernet MAC capaz de tasas de transferencia de 10/100 Mbit/s.
Interfaz EtherCATSlave (ECAT) con tasas de transferencia de 100 Mbit/s, 2 puertos MII,
8 Unidades de Gestión de Memoria de Campo (FMMU), 8 Sync Manager, 64 bits de
relojes distribuidos.
USB 2.0 host, OTG de velocidad completa, con PHY integrado.
Interfaz de Red de Área de Controlador (MultiCAN), Full-CAN/Basic-CAN con 6 nodos,
256 objetos de mensaje (MO), velocidad de datos de hasta 1 MBaud.
Seis Canales Universales de Interfaz en Serie (USIC), que proporcionan 6 canales
seriales utilizables como UART, doble-SPI, cuádruple-SPI, IIC, IIS y interfaces LIN.
Controlador LED y Sensor Táctil (LEDTS) para interfaz humano-máquina.
Interfaz de Tarjeta SD y Multi-Media Card (SDMMC) para tarjetas de memoria para
almacenamiento de datos.
Unidad de Interfaz de Bus Externo (EBU) que permite la comunicación con memorias
externas y periféricos fuera del chip.
Periféricos de Entrada Analógica:
Cuatro Convertidores Analógico-Digital (VADC) de resolución de 12 bits, con 8 canales
cada uno y comparadores de rango de entrada fuera de límites.
Demodulador Delta Sigma con cuatro canales, etapa de entrada digital para la conversión
de señales analógico/digital.
Convertidor Digital-Analógico (DAC) con dos canales de resolución de 12 bits.
Periféricos de Control Industrial:
Dos Unidades de Captura/Comparación 8 (CCU8) para control de motores y conversión
de energía.
Cuatro Unidades de Captura/Comparación 4 (CCU4) para uso como temporizadores de
propósito general.
Dos Interfaces de Posición (POSIF) para posicionamiento de servomotores.
Temporizador de Perro Guardián de Ventana (WDT) para aplicaciones sensibles a la
seguridad.
Sensor de Temperatura del Dado (DTS).
Módulo de Reloj en Tiempo Real con soporte de alarma.
Unidad de Control del Sistema (SCU) para configuración y control del sistema.
XMC7000
La familia XMC7100 es una serie de microcontroladores XMC7000 diseñada para aplicaciones
industriales. El XMC7100 cuenta con uno o dos procesadores Arm® Cortex®-M7 para tareas de
procesamiento principal, y un procesador Arm® Cortex®-M0+ dedicado al procesamiento
periférico y de seguridad. Estos dispositivos incluyen periféricos integrados que admiten el
Controller Area Network con Flexible Data Rate (CAN FD) y Ethernet.
Además:
Memorias integradas:
Relojes:
Interfaces de Comunicación:
Hasta ocho canales CAN FD con una tasa de datos incrementada (hasta 8 Mbps) en
comparación con el CAN clásico, limitada por la topología de la capa física y los
transceptores.
Estas características proporcionan una variedad de opciones para la gestión del tiempo y la
comunicación eficiente en diversas aplicaciones industriales y de sistemas embebidos. Para
obtener información precisa y actualizada, se recomienda consultar la documentación oficial de
Infineon o fuentes confiables en el campo de microcontroladores y sistemas embebidos.
3.1.1 CPU
El subsistema de CPU del XMC7100 contiene un procesador Arm® Cortex®-M0+ de 32 bits
con MPU, y uno o dos procesadores Arm® Cortex®-M7 de 32 bits cada uno, cada uno con
MPU, FPU de precisión simple/doble y cachés de datos e instrucciones de 16 KB. Este
subsistema también incluye controladores P-/M-DMA, un acelerador criptográfico, hasta 4160
KB de código-flash, hasta 256 KB de work-flash, hasta 768 KB de SRAM y 64 KB de ROM.
El procesador Cortex-M0+ proporciona una función de inicio seguro e ininterrumpible. Esto
garantiza que, al completar la función de inicio, la integridad del sistema sea válida y se apliquen
privilegios. Los recursos compartidos (flash, SRAM, periféricos, etc.) pueden ser accedidos a
través de arbitraje de bus, y los accesos exclusivos son compatibles con un mecanismo de
comunicación entre procesadores (IPC) que utiliza semáforos de hardware.
Cada procesador Cortex-M7 tiene 16 KB de TCM para instrucciones y 16 KB para datos con
tiempos de espera de lectura programables. Cada TCM está sincronizado con la frecuencia del
reloj del Cortex-M7 asociado.
Controladores DMA
El XMC7100 cuenta con tres controladores DMA: P-DMA0 con 16 canales de propósito general
y 84 canales dedicados, P-DMA1 con 8 canales de propósito general y 50 canales dedicados, y
M-DMA0 con ocho canales. P-DMA se utiliza para transferencias de datos de periférico a
memoria y de memoria a periférico, proporcionando baja latencia para un gran número de
canales. Cada controlador P-DMA utiliza un único motor de transferencia de datos compartido
por los canales asociados. Los canales de propósito general tienen una matriz de interconexión
rica, incluido el disparo cruzado de P-DMA que permite escenarios de transferencia de datos
exigentes. Los canales dedicados tienen una entrada de disparo única (como un canal ADC) para
manejar necesidades comunes de transferencia. M-DMA se utiliza para transferencias de datos
de memoria a memoria y proporciona un ancho de banda de memoria alto para un pequeño
número de canales. M-DMA utiliza un motor de transferencia de datos dedicado para cada canal.
Admiten accesos independientes a periféricos mediante el bus multicapa AHB.
Flash
El XMC7100 tiene 1088 KB, 2112 KB o 4160 KB de código-flash, con sectores de 32 KB y 8
KB, y flash de trabajo adicional de 128 KB o 256 KB. El flash de trabajo está optimizado para
reprogramarse muchas más veces que el código-flash. El código-flash admite la operación Read-
While-Write (RWW), lo que permite actualizar el flash mientras la CPU está activa. Ambas áreas
de código-flash y work-flash admiten la operación de doble banco para la programación por aire
(OTA).
SRAM
El XMC7100 tiene hasta 768 KB de SRAM con dos controladores independientes. SRAM0
proporciona retención DeepSleep en incrementos de 32 KB, mientras que SRAM1 es
seleccionable entre completamente retenido y no retenido.
ROM
El XMC7100 tiene 64 KB de ROM que contiene rutinas de inicio y configuración. Este ROM
permite el inicio seguro y la autenticación del flash del usuario para garantizar un sistema seguro.
Acelerador criptográfico para seguridad
El acelerador criptográfico implementa el cifrado de bloque (3)DES, el cifrado de bloque AES, el
hash SHA, la comprobación de redundancia cíclica (CRC), la generación de números
pseudoaleatorios y verdaderos, el modo Galois/Counter (GCM) y una unidad vectorial para
admitir criptografía de clave asimétrica como RSA y ECC.
Referencias
[1] Infineon, XMC1100 AB-Step Microcontroller Series for Industrial Applications XMC1000
Family. Munich: Infineon, 2016.
[2] Infineon, XMC1100 AB-Step Microcontroller Series for Industrial Applications XMC1000
Family Munich: Infineon, 2016.
[3] Infineon, XMC1300 AB-Step Microcontroller Series for Industrial Applications XMC1000
Family, Munich: Infineon, 2016.
[4] Infineon, XMC1400 AA-Step Microcontroller Series for Industrial Applications XMC1000
Family, Munich: Infineon, 2016.
[5] Infineon, XMC4100 / XMC4200 Microcontroller Series for Industrial Applications
XMC4000 Family, Munich: Infineon, 2016.
[6] Infineon, XMC4300 Microcontroller Series for Industrial Applications XMC4000 Family,
Munich: Infineon, 2016.
[7] Infineon, XMC4500 Microcontroller Series for Industrial Applications XMC4000 Family,
Munich: Infineon, 2016.
[8] Infineon, XMC4700 / XMC4800 Microcontroller Series for Industrial Applications
XMC4000 Family, Munich: Infineon, 2016.