Publicado el 9 de Junio del 2020
837 visualizaciones desde el 9 de Junio del 2020
367,1 KB
65 paginas
Creado hace 15a (11/03/2009)
Taller de Firmware
Introducción a los Microcontroladores
Facultad de Ingeniería
Instituto de Computación
Contenido
• Microcontroladores
• Características del hardware
• Arquitectura
• Desarrollo de software
Microcontroladores
• Introducción
• En nuestras vidas
• Tipos de microcontroladores
• Arquitecturas de procesadores
• Memorias
Introducción (1/5)
• Un microprocesador (µP) es una CPU en un
solo circuito integrado.
• Un computador es una CPU, más memoria y
puertos de E/S.
• Un sistema computador es un computador
más periféricos.
• Un microcontrolador (µC) es un sistema
computador en un solo integrado orientado a
aplicaciones de control.
Introducción (2/5)
Introducción (3/5)
• Un microcontrolador es un sistema
autocontenido donde el microprocesador,
soporte, memoria y entrada/salida se
presentan dentro de un mismo integrado.
Power
Reset
Clocking
Power
Reset
Control
Clock &
Timing
Control
Store
Processor
RAM
s
t
r
o
P
O
/
I
Input &
Output
Pins
Introducción (4/5)
• Características
– Fáciles de utilizar.
– Bajo costo.
– Flexibles.
– Confiables.
– Debido a su tamaño puede incluirse dentro
del dispositivo que gobierna.
Introducción (5/5)
• Firmware
– Rutinas de software almacenadas en
memoria ROM.
– Software que se encuentra embebido en
un dispositivo de hardware.
– Es una combinación de software y
hardware.
Sistema embebido
• Es una combinación de hardware, software y elementos
mecánicos diseñados para realizar una tarea específica.
• En general, son programados por los fabricantes una única
vez.
• Ejecutan sólo un programa.
• Específicos para una tarea por lo que son optimizados para
la misma.
Interactuan con el entorno
– Directamente sensando y controlando señales sobre el cable.
– Comunicándose con el entorno o otros dispositivos.
– Interacciones en tiempo real y con restricciones.
– Bajo consumo para mantener la batería.
•
Aspectos que afectan al diseño
• Capacidad de procesamiento
• Memoria
• Cantidad de unidades a producir
• Consumo de energía
• Costo de desarrollo (hard y soft)
• Vida útil
• Confiabilidad
Rendimiento
• Eléctrico
• Computacional
– Consumo
– Voltaje
– Inmunidad al ruido
– Sensibilidad
– Velocidad de reloj
– MIPS
– Latencia
– Throughput
System on chip (SOC)
• Se refiere a integrar todos los
componentes de un computador u otro
dispositivo electrónico en un chip.
• La principal diferencia con un uC es la
memoria disponible.
• En general, los SOC corren sistemas
operativos tradicionales.
En nuestras vidas
• Televisión
• Equipo de audio
• Control remoto
• Microondas
• Teléfono
• Autos
• PC
• Teclados
Tipos de Microcontroladores
• Los microcontroladores se pueden
clasificar en:
– Microcontroladores embebidos de 8 bits.
– Microcontroladores de 16-32 bits
– Procesadores de señales digitales (DSP)
Microcontroladores de 8 bits (1/2)
• Todos los recursos necesarios están
incluidos en el chip.
• Solo necesitan alimentación y reloj.
• Proporcionan control e interfaz con
dispositivos externos de manera
económica y programable.
Microcontroladores de 8 bits (2/2)
• Disponen de:
– Reset
– Reloj
– Procesador
– Memoria ROM para el programa e interfaz de programación
– Memoria RAM para variables.
– I/O Pins.
• Adicionalmente pueden incluir:
– Capacidad de debugging
– Interrupciones
– I/O analógica
– Comunicación serial y/o paralela
– Interfaz con memoria
Microcontroladores de 16-32 bits
• No disponen de memoria en el chip.
• Ejemplo: Intel 80186, incluye controladores
de interrupciones y DMA.
s
t
r
o
P
O
/
I
Power
Reset
Clocking
Power
Reset
Control
Clock &
Timing
Processor
Memory
External
Interface
Input &
Output
Pins
Addr
Data
Ctrl
Control Store
(ROM)
Variable
Memory
(RAM)
Procesador de señales digital
• Es una categoría relativamente nueva
de microprocesadores.
• El objetivo de los DSP es tomar un
señal analógica y calcular una
respuesta apropiada.
• Ejecutan a gran velocidad para permitir
el control en tiempo real.
Fabricantes
•
Intel
– 8048
– 8051 (Intel y Otros)
– 80186, 80186 y 80386 EX.
• Microchip
– PIC
• Motorola
– 68HC11 (Motorola y Toshiba)
– 683xx
• Atmel
– AVR
Arquitectura de Procesadores
• CPU
• CISC vs RISC
• Harvard vs Princeton
• Modo de acceso a los datos
• Ciclo de instrucción
CPU
• Es el corazón del microcontrolador.
• Operación
– Obtiene una instrucción de memoria
– Decodifica la instrucción
– Ejecuta la instrucción
• Incluye:
– Registros
– ALU
– Unidad de control
– Interconexión
CISC vs RISC
• CISC Complex Instruct Set Computers
• RISC Reduced Instruct Set Computers
• Características de CISC
– Gran número de instrucciones.
– Instrucciones útiles para el programador.
Hardvard vs Princeton
• Princeton (Von
Neumann)
– Memoria común para
almacenar el programa y
las variables.
– Permite la ejecución de
código automodificable.
– Un único bus entre la
CPU y la memoria.
Harvard vs Princeton
• Harvard
– Ejecuta las
instrucciones en
menor cantidad de
ciclos por instrucción,
pues logra un
paralelismo a nivel de
instrucción mayor
– Cada palabra (datos
e instrucción) tiene
un tamaño adecuado.
Modo de acceso a los datos
• Clasificación
– Pila
– Acumulador
– Registro – Memoria
– Registro – Registro
Ciclo de instrucción (1/2)
Ciclo de instrucción (2/2)
Tipos de memorias
• Memoria de programa
• Memoria de variables
• Stack
• Registros de E/S
• Memoria Externa
Memoria de programa
• Se utiliza para almacenar el programa y
no varia durante la ejecución del
mismo.
• Tipos
– ROM con máscaras.
– PROM (OTP).
– EPROM.
– EEPROM y Flash.
Memoria de variables
• Poca memoria (cientos de bytes).
• Es una gran diferencia al momento de
programar.
• Debe tenerse mucho cuidado con el
recurso memoria al momento de
desarrollar la aplicación
Stack
• Se utiliza para realizar llamadas a
rutinas y almacenar variables locales.
• Puede ser implementado y soportado
por el microcontrolador.
Registros de E/S
• Son los componentes más utilizados del
microcontroladores .
• Los microcontroladores disponen de
registros para controlar los dispositivos
de E/S.
• Espacios
– E/S mapeada en memoria.
– Mapa E/S y mapa de memoria.
Memoria Externa
• Permite agregar memoria al
microcontrolador.
• Métodos
– Controlar la memoria a través de E/S
– Controlar la memoria a través de una
interfaz de memoria.
Características del hardware
• Presentación del
dispositivo
• Tecnologías de chips
• Reset
• Alimentación
• Reloj del sistema
• Contador de programa
• Unidad aritmética y
lógica
• Protección ante fallas
• Modo bajo consumo
Interrupciones
• Subrutinas
•
• Timers
• E/S Digital
• Comunicación
• E/S Analógica
• Dispositivos esclavos
• Programación
• Debug
Presentación del dispositivo (1/2)
• El encapsulado protege el chip del polvo,
temperatura, humedad y golpes.
• Características
– Costo
– Tamaño
– Calidad
• Tipos
– Plásticos
– Cerámicos
Presentación del dispositivo (2/2)
Tecnologías de chips
• La mayoría de los microcontroladores
están construidos con tecnología
CMOS (Complementary Metal Oxide
Semiconductor).
Alimentación
• Minimizar el consumo de corriente es un
tema a tener en cuenta.
• Hay que tener en cuenta el consumo:
– Del microcontrolador en modo normal.
• Depende de la frecuencia y del voltaje proporcionado.
– Del microcontrolador en modo sleep.
– Del los dispositivos conectados a la E/S.
• Particular de cada aplicación.
• Pueden gestionarse adecuadamente los dispositivos.
Reset
• Permite llevar al microcontrolador a un
estado conocido. Inicializando todos los
componentes del µC.
• POR.
• BOR.
Reloj del sistema
• Los µC están diseñados para ejecutar con
poco soporte externo para el reloj del
sistema.
• Los µCs corren en el entorno de las decenas
de megahetz.
• Existen diversos métodos para proporcionarle
el reloj al µC:
– Usando un cristal
– Resonador cerámico
– Oscilador RC
– Ninguno.
Contador de programa
• Permite conocer que instrucción está
ejecutando el µC.
• El módulo PC debe tener
– Entradas
• Carga en paralelo (datos y control)
• Incrementar
• Reset
– Salida
Unidad aritmética y lógica
• Circuito combinatorio encargado de
ejecutar las operaciones aritméticas y
lógicas, como ser:
– Suma, Resta e Identidad
– and, or, not, desplazamientos y rotaciones.
Protección ante fallas
• Watch Dog Timer
– Es utilizado para prevenir caídas del software.
– En entornos con ruido eléctrico, puede ocurrir que
el PC del µC se vea afectado y éste comience a
ejecutar en un lugar indeterminado.
– El circuito WDT se encarga de resetear el µC si el
registro WD se desborda.
• Protección ante caídas en la alimentación.
Modo bajo consumo
• En caso que no sea necesario ejecutar
procesamiento es posible indicar al µC
que se duerma reduciendo el consumo
del sistema.
Subrutinas
• Instrucción call.
– Soporte de hardware para el stack
– Software
• Pasaje de parámetros
– Stack (variables locales)
– Memoria
– Registros
Interrupciones
• Esqueleto de
Manejador
– Salvar el contexto.
– Aviso al controlador y al
dispositivo que es
atendido.
– Atender al dispositivo.
– Restaurar el contexto
– Retornar de la
interrupción
Timers
• Se utiliza para trabajar con eventos de
tiempo.
• Contadores: cuentan acontecimientos
que suceden en el exterior.
• Temporizadores: controlan períodos de
tiempo.
E/S Digital
• La comunicación del µC con el mundo
se da a través de sus pines de E/S.
• Estos pines son compartidos con
módulos del µC.
• Pueden configurarse con entrada o
salida.
Comunicación
• Serial o paralela
Comentarios de: Taller de Firmware - Introducción a los Microcontroladores (0)
No hay comentarios