Académique Documents
Professionnel Documents
Culture Documents
Microcontroladores
2018
Marzo 2018
Introducción a los Sistemas Embebidos
• El cerebro de un sistema embebido es típicamente un microprocesador o
microcontrolador, y su diseño está optimizado para reducir su tamaño, el
consumo y costo, y maximizar su confiabilidad y desempeño.
http://www.proyecto-ciaa.com.ar/
Marzo 2018
Componentes de un Sistema Embebido
• Componentes de Hardware:
• Microprocesador, Microcontrolador, otros...
• Memorias
• Periféricos analógicos y digitales
• Componentes Electrónicos Activos (diodos, transistores) y pasivos
(resistencias, capacitores, inductores)
• Interfaces Eléctricas (conectores)
• Placa de circuito Impreso (PCB)
Computadora
Industrial
Abierta
Argentina
http://www.proyecto-ciaa.com.ar/
Marzo 2018
Componentes de un Sistema Embebido
• Componentes de Software:
• Capa de Manejadores de dispositivos (Drivers)
• Capa de componentes intermedios como pila de protocolos
• Capa de Planificación y ejecución de tareas en tiempo real (RTOS)
• Capa de aplicación de usuario
Firmware
Marzo 2018
Microprocesador (MPU) o Microcontrolador (MCU)
MCU
MPU
Marzo 2018
Otras tecnologías utilizadas en S.E.
• ASIC: Application Specific Integrated Circuit
Diseñado específicamente para una aplicación particular (Digital, Analógico, mixto).
Provee la mejor performance pero el costo es muy elevado.
Restringido a producciones de mucho volumen
Marzo 2018
Ejecución secuencial de instrucciones
• Supongamos que la ejecución de una instrucción requiere de 5 etapas:
• Fetch (F), Decode (D), Read Registe File (R), Execute (E), Writeback (W)
• La siguiente figura muestra el flujo de ejecución de instrucciones en un
procesador genérico sin pipeline
Marzo 2018
Ejecución de instrucciones con pipeline
Marzo 2018
Arquitecturas de CPU
• CPU Basada en Registros
R2 + R3 R3
• Ejemplos:
• Atmel AVR : 32 GPR de 8 bits , 3 registros apuntadores de 16 bits (X,Y,Z)
• ARM cortex-M: hasta 16 GPR de 32 bits
Marzo 2018
CPU: RISC
Reduced Instruction Set Computer
Marzo 2018
Estructura de Buses
• Bus de Direcciones: Controlado por la CPU para direccionar los demás
subsistemas. Es unidireccional. El tamaño determina la cantidad de memoria
direccionable: N bits2N, direcciones.
• La mayoría de los MCU de 8 o 16 bits poseen bus de direcciones de 16 bits lo
que permite direccionar 65536=64KB o 64KiB posiciones de memoria distintas.
Caso del HCS08 (evolución del 6800) o el MSP430 de Texas
• Los MCU de 32 bits poseen bus de direcciones y datos de 32 bits con lo que es
posible direccionar hasta 4GB.
• En su gran mayoría, los MCU no poseen Unidad de manejo de Memoria (MMU)
y tratan a todo el espacio direccionable como una única entidad. Si embargo, la
familia HCS12 permite direccionar hasta 8MB mediante MMU y paginado.
• La ausencia de páginas o bancos de memoria hace a las arquitecturas más
simples de usar.
Marzo 2018
Estructura de Buses
Hardvard
• Este direccionamiento se
aplica a memorias de programa
y datos como así también al conjunto
de registros I/O y registros de
funciones especiales.
Marzo 2018
Tipos de Memoria
Marzo 2018
Tipos de Memoria
ROM ( Masked ):
• Es realmente una memoria de solo lectura y no volatil. Los datos son escritos en el proceso de
fabricación del dispositivo mediante máscaras y fotolitografia.
• Se utiliza en la fabricación de productos con gran volumen de producción y cualquier cambio en
los datos requiere de la utilización de una nueva máscara lo que hace encarecer el proceso.
• Muchos fabricantes de MCU ofrecen dispositivos con este tipo de memoria a pedido.
Marzo 2018
Periféricos integrados
Marzo 2018
Periféricos integrados
• Serial Comunication Interface (SCI) o UART:
• Este módulo permite una comunicación de alta velocidad asincrónica con
dispositivos periféricos, una PC u otros MCU.
• Se pueden configurar tasas estándar de transmisión desde 1200 bps hasta
115200 bps.
MCU
Marzo 2018
Periféricos integrados
• SPI (Serial Peripheral Interface):
• Este módulo permite una comunicación serie de alta velocidad
sincrónica (hasta 13Mbits/s) con dispositivos periféricos u otros uC. Por
ejemplo, memoria flash externa, acelerómetros, conversores AD/DA,
tarjeta SD. Utiliza una línea de selección de chip x cada dispositivo
esclavo.
Marzo 2018
Periféricos integrados
• I2C (Inter Integrated Circuit):
• Este módulo esta diseñado para la comunicación entre el MCU y otros dispositivos
I2C (memorias seriales, acelerómetros ,conversores AD). Es una interfaz serie de dos
cables sincrónica bidireccional.
SDA: datos
SCL: clock (hasta 3.4Mbits/s)
• Dirección de 7bits única para cada dispositivo
• Multimaestro
Marzo 2018
Periféricos integrados
• Ethernet
• Touch Interface
• Display Interface
Marzo 2018
Algunos fabricantes
https://www.microchip.com/design-centers/8-bit/microchip-avr-mcus
Marzo 2018
Algunos fabricantes
• Microchip
• PIC
8/16bits
• DSPIC
16/24bits
• PIC32
32bits
https://www.microchip.com/design-centers/8-bit/pic-mcus
Marzo 2018
Algunos fabricantes
https://www.nxp.com/products/processors-and-microcontrollers/additional-processors-and-mcus/8-
16-bit-mcus/8-bit-s08-mcus:HCS08
Marzo 2018
Algunos fabricantes
• NXP (http://www.nxp.com/products/microcontrollers/)
• Cortex-M (32-bit) Other ARM (32-bit)
• Cortex-M0/M0+ ARM7
• Cortex-M3
ARM9
• Cortex-M4/M4F
8/16-bit
• Dual core 80C51
• Cortex-M0 & M4F
• Cortex-M0+ & M4F
Marzo 2018
Mercado actual*
* Choosing a MCU for your next design; 8 bit or 32 bit? Ingar Fredriksen, Atmel.
Marzo 2018
Mercado actual*
Algunos datos:
(Mejor en DMIPS/MHz)
• Consumo:
Marzo 2018
*Extraído de : Choosing a MCU for your next design; 8 bit or 32 bit? Ingar Fredriksen, Atmel.
Mercado actual
Marzo 2018