MCUs: conoce las familias de microcontroladores más importantes

microcontroladores

Multitud de placas de desarrollo de las que usamos de forma frecuente, desde la propia Arduino hasta otras muchas, utilizan unidades MCU o microcontroladores. Unos chips vitales para poder programar estos dispositivos y que se puedan procesar las instrucciones creadas por el programador para obtener los resultados esperados.

Sin embargo, el sector de los microcontroladores es bastante amplio, como ocurre también con el de las CPU o microprocesadores, ya que no solo existen muchos diseñadores o fabricantes, así como modelos, sino que también hay muchas familias diferentes que deberías conocer. Así que, vamos a dedicar este artículo a esto mismo, para que sepas cuál te podría interesar más para tus proyectos…

¿Qué es un microcontrolador o MCU?

MCU diagrama

Un microcontrolador o MCU (MicroController Unit) es un dispositivo compacto que integra las funciones de un procesador central (CPU), memoria y periféricos en un solo chip. Este dispositivo es la pieza central de muchos sistemas electrónicos y es fundamental en el campo de la electrónica embebida. En definitiva, una gran alternativa a la electrónica cableada, permitiendo así con un solo chip realizar multitud de funciones de forma flexible, ya que es programable.

Los microcontroladores se utilizan en una amplia variedad de aplicaciones debido a su versatilidad y eficiencia. Algunos ejemplos de uso de los microcontroladores incluyen sistemas de control en automóviles, electrodomésticos, sistemas de automatización industrial, sistemas de control de procesos, juguetes, sistemas de seguridad, placas de desarrollo, y muchos otros equipos electrónicos.

Partes de los microcontroladores

Los microcontroladores son dispositivos integrados, y todos sus componentes se implementan en un chip o circuito integrado. Entre las partes más fundamentales de estos chips están:

  • CPU (Central Processing Unit): la unidad de procesamiento central es el cerebro del microcontrolador, y su parte más importante. Esta unidad se encarga de usar los datos e instrucciones del programa para interpretarlas y procesarlas de forma adecuada en las unidades de ejecución para obtener los resultados esperados. Es decir, la CPU lleva a cabo todas las operaciones de cálculo y toma decisiones basadas en la lógica del programa. La velocidad y la eficiencia de la CPU determinan en gran medida el rendimiento del microcontrolador. Además, también suelen tener partes elementales como los sistemas de interrupciones, que permite al microcontrolador responder a ciertos eventos de manera oportuna. Cuando ocurre un evento específico, como una entrada de señal o un temporizador que alcanza un valor específico, el microcontrolador puede interrumpir su tarea actual para responder a este evento.
  • Memoria: suelen tener dos tipos de memoria como son la RAM y la flash. La memoria RAM se utiliza para almacenar datos temporales, como pueden ser las instrucciones que componen los programas y los datos (variables, constantes,…) durante la ejecución del programa. Mientras que la memoria flash se utiliza para almacenar el programa que se ejecutará, y es no volátil cono la RAM, por lo que cuando se interrumpe la alimentación o se apaga el dispositivo, el programa permanecerá.
  • Periféricos de Entrada/Salida (E/S): permiten al microcontrolador interactuar con el mundo exterior. Estos pueden incluir puertos de E/S digitales, convertidores de analógico a digital (ADC), convertidores de digital a analógico (DAC), interfaces de comunicación como UART, SPI e I2C, controladores variados, temporizadores, contadores, GPIO, y otros.

¿En qué se diferencia de un microprocesador o CPU?

Un microprocesador y un microcontrolador son dos componentes fundamentales en el campo de la electrónica, pero tienen diferencias significativas en términos de estructura y uso, a pesar de que muchas personas confunden ambos o creen que son lo mismo.

Mientras la CPU solo integra las unidades funcionales para el control e interpretación de instrucciones, registros, así como las de ejecución como es el caso de la ALU, FPU, etc., y puede combinarse con otros elementos auxiliares de forma más flexible, los microcontroladores son algo más cerrados en el sentido de que integran muchas de las partes que la CPU deja fuera. De hecho, mientras la CPU es el cerebro de un ordenador, se puede considerar a la MCU como un ordenador completo, ya que incluye todos las partes básicas en un solo chip.

No obstante, no confundas la mayor integración con términos de complejidad y rendimiento. Mientras los microprocesadores actuales son extremadamente complejas y con rendimientos muy elevados, los microcontroladores actuales suelen tener una CPU integrada con un rendimiento bastante inferior y más simple. De hecho, muchos de los microcontroladores actuales pueden tener rendimientos similares a los microprocesadores de hace décadas. Es más, como veremos más adelante, tenemos incluso microcontroladores de 8-bit o 16-bit como las CPU de los años 70.

¿Diferencias respecto a un SoC?

Como el microcontrolador integra varios elementos en un mismo chip, también suele confundirse mucho con el SoC (System on a Chip), sin embargo, tampoco es lo mismo. Al igual que ocurre con la CPU vs MCU, los SoCs también integran una CPU de un rendimiento muy superior a la mayoría de los microcontroladores actuales. Además, el SoC es un sistema infinitamente más complejo y avanzado. Por otro lado, el SoC no suele integrar algunas de las partes que sí se integran en un microcontrolador, ya que para las aplicaciones para las que se destina no lo requieren, como puede ser la memoria RAM y flash, conversores ADC, etc.

Un poco de historia

Los primeros microprocesadores multicircuito, como el AL1 de Four-Phase Systems en 1969 y el MP944 de Garrett AiResearch en 1970, se desarrollaron con múltiples chips MOS LSI. El primer microprocesador de un solo chip fue el Intel 4004, lanzado en 1971. Estos procesadores requerían varios chips externos para implementar un sistema funcional, lo que resultaba costoso. Sin embargo, casi en paralelo, se desarrolló lo que hoy conocemos como microcontrolador. Se atribuye a los ingenieros de TI, Gary Boone y Michael Cochran, la creación exitosa del primer microcontrolador en 1971, el TMS 1000, que combinaba memoria de solo lectura, memoria de lectura/escritura, procesador y reloj en un solo chip. De hecho, aunque esto sea otra historia, generó una guerra de patentes y juicios sobre la autoría del microprocesador…

Durante la década de 1970, los fabricantes de electrónica japoneses comenzaron a producir microcontroladores para automóviles. Poco a poco se fueron popularizando, y en respuesta a la existencia del TMS 1000 de un solo chip, Intel desarrolló un sistema informático en un chip optimizado para aplicaciones de control, el Intel 8048, que combinaba RAM y ROM en el mismo chip junto con una CPU. Con el paso del tiempo se fueron mejorando las memorias no volátiles, y pasaron de ser grabadas de fábrica con un programa permanente como las primeras ROMs hasta la introducción de la PROM, o la EEPROM de 1993, que permitía borrarse y volverse a programar con otro programa de forma sencilla y tantas veces como se quisiese.

Poco a poco fueron naciendo empresas en torno a este tipo de chips, como Atmel, Microchip Technology, y otras muchas. También otras compañías del sector comenzaron a difundir sus propias MCU, como Intel, Analog Devices, Cypress, AMD, ARM, Hitachi, EPSON, Motorola, Zilog, Infineon, Lattice, National Semiconductor, NEC, Panasonic, Renesas, Rockell, Sony, STMicroelectronics, Synopsis, Toshiba, etc.

Hoy en día, los microcontroladores son baratos y fácilmente accesibles para los aficionados y multitud de sectores industriales diferentes. Además, se estima que se venden casi 5 mil millones de unidades a nivel mundial de 8-bit, siendo los más empleados actualmente. Los puedes encontrar tanto en aparatos domésticos, como en vehículos, ordenadores, teléfonos, máquinas industriales, y mucho más. Además, se han conseguido miniaturizar al máximo, creando algunos de los ordenadores más pequeños del mundo, incluso mucho más pequeños que un grano de sal…

ISA y familias de los microcontroladores

MCU

Ahora que ya conoces un poco más qué es una MCU o microcontrolador, vamos a ver algunas de las familias más importantes de estos microcontroladores. Y es que, al igual que las CPU, se pueden dividir según la ISA, es decir, el repertorio de instrucciones, registros y tipos de datos que se usan, y que de ello dependerá la compatibilidad de los programas binarios que se puedan ejecutar, haciendo que no sean compatibles entre familias. Y estas familias son totalmente independientes del modelo, marca o unidades incluidas en el chip.

Entre las familias más populares tenemos las siguientes:

  • Nios: es una generación de softcores para FPGAs de Altera, ahora absorbida por Intel.
  • Blackfin: es una familia de microprocesadores de 16/32 bits desarrollados, fabricados y comercializados por Analog Devices. Los procesadores también tienen funcionalidad de procesador de señales digitales (DSP) incorporada, realizada por multiplicaciones-acumulaciones (MAC) de 16 bits.
  • TigerSHARC: son las siglas de Super Harvard Architecture Single-Chip Computer, también de Analog Devices. En este caso son ideales para aplicaciones que requieren un alto rendimiento de cálculo con un bajo consumo de energía. Estos procesadores ofrecen una arquitectura de memoria única que permite un acceso eficiente a los datos y las instrucciones sin la penalización de rendimiento asociada con las arquitecturas de bus Von Neumann.
  • Cortex-M: los microcontroladores Cortex-M de ARM son una popular familia de microcontroladores de 32 bits que son muy eficientes en energía y ofrecen un buen rendimiento. Son especialmente populares en aplicaciones industriales y de consumo, y actualmente representan la mayoría de los chips modernos comercializados por multitud de empresas.
  • AVR32: es una arquitectura de microcontrolador de 32 bits RISC producida por Atmel, y lo puedes encontrar en multitud de placas de desarrollo, como Arduino y clones de ésta.
  • RISC-V: esta ISA abierta pretende superar a ARM, y poco a poco ha comenzado a tener importancia en el mundo de los microcontroladores, ya que es muy flexible y permite su uso sin pagar regalías.
  • PIC: son una familia de microcontroladores de 8 bits desarrollados por Microchip Technology, conocidos por su arquitectura RISC avanzada, y que son bastante populares en la industria.
  • PowerQUICC: están basados en la tecnología Power Architecture de IBM, y fueron usados por Motorola (ahora Freescale), soportan todo el espectro de equipos de red incrustados, aplicaciones industriales y generales empotradas.
  • Spansion: son los MCU de Fujitsu, y están enfocados en productos analógicos y digitales, y diseñados para obtener eficiencia y rendimiento equilibrado.
  • 8051: es un microcontrolador de 8 bits desarrollado por Intel, aunque ahora lo encontrarás fabricado por otras compañías también. Es uno de los microcontroladores más populares y se utiliza en una amplia gama de aplicaciones. El 8051 es un microcontrolador CISC basado en la arquitectura Harvard.
  • TriCore: es un microcontrolador desarrollado por Infineon Technologies. TriCore une los elementos de un núcleo de procesador RISC, un microcontrolador y un DSP en un solo chip. En su momento fue toda una revolución.
  • MC-48 o 8048: es un microcontrolador de la línea Intel, con 64 bytes de RAM y acceso a 4096 bytes de memoria de programa externa.
  • Mico8: es una familia de microcontrolador de 8 bits implementado completamente en la memoria y la lógica de propósito general para las FPGA de Lattice.
  • Propeller: arquitectura multinúcleo de 32 bits desarrollado por Parallax Inc. Cada Propeller tiene 8 procesadores de 32 bits idénticos conectados a un hub común.
  • Basic Stamp: es un microcontrolador con un pequeño intérprete BASIC especializado (PBASIC) incorporado en la ROM. Es fabricado por Parallax, Inc, y fue un producto bastante popular para los makers que deseaban realizar multitud de proyectos en casa antes de que se lanzara Arduino.
  • SuperH: es una arquitectura de conjunto de instrucciones de computación RISC de 32 bits desarrollada por Hitachi y actualmente producida por Renesas, y enfocada a microcontroladores para sistemas embebidos.
  • Tiva: es un microcontrolador de la serie desarrollada por Texas Instruments. Tiene una frecuencia de reloj del procesador incorporada de hasta 80MHz con una unidad de punto flotante (FPU), con un gran rendimiento.
  • Microblaze: es un sistema de procesador altamente integrado destinado a aplicaciones de controlador. MicroBlaze es implementado completamente en la memoria y la lógica de propósito general de las FPGA de Xilinx (ahora AMD), es decir, un softcore.
  • Picoblaze: similar al anterior, pero en este caso es de 8-bit y más simple, para aplicaciones más integradas.
  • XCore: son MCU multicore de XMOS, de 32 bits que se programan en un entorno de lenguaje C y operan de manera determinista y con baja latencia. Son muy completos y se pueden implementar en forma de tiles.
  • Z8: es de Zilog, y son dispositivos de 8 bits que ofrecen una amplia gama de opciones de rendimiento y recursos. Estos microcontroladores son ideales para aplicaciones de alto volumen y sensibles al coste, incluyendo productos de consumo, automotrices, de seguridad y HVAC.
  • Z180: es otro de los populares dentro de Zilog antes de la salida de los nuevos eZ que han actualizado las anteriores gamas. Incluye un procesador de 8 bits, compatible con la gran base de software escrita para el Z80. La familia Z180 agrega un mayor rendimiento y funciones periféricas integradas como generador de reloj, contadores/temporizadores de 16 bits, controlador de interrupciones, generadores de estados de espera, puertos serie y un controlador DMA.
  • STM: esta familia de STMicroelectronics tiene tanto algunas unidades MCU basadas en una arquitectura propia de esta compañía, aunque en los últimos modelos se ha optado, como en otros muchos casos, por integrar ARM Cortex-M Series de 32-bit. Ofrece productos que combinan un rendimiento muy alto, capacidades en tiempo real, procesamiento de señales digitales, operación de baja potencia/bajo voltaje y conectividad, manteniendo al mismo tiempo una integración completa y facilidad de desarrollo.

Existen más, pero estos son los más importantes…


Sé el primero en comentar

Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.