INSTITUTO TECNOLOGICO DE OAXACA
INGENIERIA ELECTRONICA
MICROCONTROLADORES
SEXTO SEMESTRE
INTEGRANTES DEL EQUIPO
PIZARRO BAUTISTA RIGOBERTO
RIOS ALTAMIRANO JOEL
RUIZ CALVO CESAR
CHAVEZ SEBASTIAN EFRAIN
CONCEPTO
DE UN MICROCONTROLADOR
Un microcontrolador es un circuito
integrado que nos ofrece las posibilidades de un pequeño computador. Está
compuesto de varios bloques funcionales, los cuales cumplen una tarea
específica. Un microcontrolador incluye en su interior las tres principales
unidades funcionales de una computadora: unidad central de procesamiento, memoria y periféricos de entrada/salida.
ARQUITECTURA DE UN MICRO CONTROLADOR
La otra variante es la arquitectura Harvard, y por excelencia la utilizada en
supercomputadoras, en los microcontroladores, y sistemas integrados en general.
En este caso, además de la memoria, el procesador tiene los buses segregados,
de modo que cada tipo de memoria tiene un bus de datos, uno de direcciones y
uno de control.
La ventaja fundamental de esta
arquitectura es que permite adecuar el tamaño de los buses a las
características de cada tipo de memoria; además, el procesador puede acceder a
cada una de ellas de forma simultánea, lo que se traduce en un aumento
significativo de la velocidad de procesamiento. Típicamente los sistemas con
esta arquitectura pueden ser dos veces más rápidos que sistemas similares con
arquitectura Von Neumann.
La desventaja está en que consume muchas
líneas de E/S del procesador; por lo que en sistemas donde el procesador está
ubicado en su propio encapsulado, solo se utiliza en supercomputadoras. Sin
embargo, en los microcontroladores y otros sistemas integrados, donde
usualmente la memoria de datos y programas comparten el mismo encapsulado que
el procesador, este inconveniente deja de ser un problema serio y es por ello
que encontramos la arquitectura Harvard en la mayoría de los
microcontroladores.
Por eso es importante recordar que un
microcontrolador se puede configurar de diferentes maneras, siempre y cuando se
respete el tamaño de memoria que este requiera para su correcto funcionamiento.
En
la arquitectura Harvard son
independientes la memoria de
instrucciones y la memoria de
datos y cada una dispone de su propio sistema de buses para el acceso. Esta dualidad, además de propiciar el paralelismo, permite la
adecuación del tamaño de las palabras y los buses a los requerimientos
específicos de las instrucciones y de los datos.
El
procesador de los modernos microcontroladores responde
a la arquitectura RISC (Computadores de Juego de Instrucciones
Reducido), que se identifica por poseer un repertorio de instrucciones máquina
pequeño y simple, de forma que la mayor parte de las instrucciones se ejecutan
en un ciclo de instrucción.
Otra
aportación frecuente que aumenta el rendimiento del computador es el fomento del paralelismo implícito, que consiste
en la segmentación del procesador
(pipe-line), descomponiéndolo en etapas para poder procesar una instrucción
diferente en cada una de ellas y trabajar con varias a
la vez.
ARQUITECTURA VON NEUMANN
La arquitectura
Von Neumann utiliza el
mismo dispositivo de almacenamiento tanto para las instrucciones como para los
datos, siendo la que se utiliza en un ordenador personal porque permite ahorrar una buena
cantidad de líneas de E/S, que son bastante costosas, sobre todo para aquellos
sistemas donde el procesador se monta en algún tipo de zócalo alojado en una placa madre. También esta organización les ahorra a los
diseñadores de placas madre una buena cantidad de problemas y reduce el costo
de este tipo de sistemas.
En un ordenador personal, cuando se carga un programa
en memoria, a éste se le asigna un espacio de direcciones de la memoria que se
divide en segmentos, de los cuales típicamente tenderemos los siguientes:
código (programa), datos y pila. Es por ello que podemos hablar de
la memoria como un todo, aunque existan distintos dispositivos físicos en el
sistema (disco duro, memoria RAM, memoria flash, unidad de disco óptico...).
En el caso de los microcontroladores, existen dos
tipos de memoria bien definidas: memoria de datos (típicamente algún tipo de SRAM) y memoria
de programas (ROM, PROM, EEPROM, flash u de otro tipo no volátil). En este
caso la organización es distinta a las del ordenador personal, porque hay
circuitos distintos para cada memoria y normalmente no se utilizan los
registros de segmentos, sino que la memoria está segregada y el acceso a cada
tipo de memoria depende de las instrucciones del procesador.
A pesar de que en los sistemas integrados con
arquitectura Von Neumann la memoria esté segregada, y existan diferencias con
respecto a la definición tradicional de esta arquitectura; los buses para
acceder a ambos tipos de memoria son los mismos, del procesador solamente salen
el bus de datos, el de direcciones, y el de control. Como conclusión, la
arquitectura no ha sido alterada, porque la forma en que se conecta la memoria
al procesador sigue el mismo principio definido en la arquitectura básica.
Algunas familias de microcontroladores como la Intel 8051 y la Z80 implementan este tipo de arquitectura,
fundamentalmente porque era la utilizada cuando aparecieron los primeros
microcontroladores.
Microchip Technology Inc. es una empresa fabricante de microcontroladores, memorias y semiconductores analógicos, situada en Chandler, Arizona, EE. UU.
Su Producto más pupular son los microcontroladores PIC de 8 bits.
Freescale Semiconductor es una compañía global líder en
la industria de semiconductores enfocada proveer procesamiento embebido y
productos de conectividad.
Actualmente, se enfoca al suministro de productos para la industria automotriz, de redes, comunicaciones inalámbricas, control industrial e industrias de consumo electrónico. Con se oferta de procesadores embebidos y de productos complementarios, proporciona una solución completa de semiconductores y software.
Actualmente, se enfoca al suministro de productos para la industria automotriz, de redes, comunicaciones inalámbricas, control industrial e industrias de consumo electrónico. Con se oferta de procesadores embebidos y de productos complementarios, proporciona una solución completa de semiconductores y software.
Atmel es una compañía de semiconductores, fundada en 1984. Su línea de productos incluye microcontroladores (incluyendo derivados del 8051, el AT91SAM basados en ARM, y sus arquitecturas propias AVR y AVR32), dispositivos de radiofrecuencia, memorias EEPROM y Flash, ASICs, WiMAX, y muchas otras. También tiene capacidad de ofrecer soluciones del tipo system on chip (SoC).
Texas Instruments o TI, es una empresa norteamericana que desarrolla y comercializa semiconductores y tecnología para sistemas de cómputo.
TI es el tercer mayor fabricante de semiconductores del mundo tras Intel y Samsung y es el mayor suministrador de circuitos integrados para teléfonos móviles.
Igualmente, es el mayor productor de procesadores digitales de señal y semiconductores analógicos. Otras áreas de actividad incluyen circuitos integrados para módem de banda ancha, periféricos para ordenadores, dispositivos digitales de consumo y RFID.
Como
se puede apreciar en las siguientes gráficas basadas en datos referentes a
ventas,
crecimientos de empresa anuales, cuotas
de mercado y capitalización
bursátil
referentes al mercado de los circuitos integrados, compañías como
Microchip,
Motorola y Atmel son susceptibles de mención y estudio debido a su
especialización
en el área de los microcontroladores.
MICROCONTROLADORS DE
MICROCHIP
Los PIC
son una familia de microcontroladores tipo RISC fabricados por Microchip Technology Inc. y derivados del PIC1650, originalmente desarrollado
por la división de microelectrónica de General Instrument.
El nombre actual no es un acrónimo. En realidad, el nombre completo es
PICmicro, aunque generalmente se
utiliza como Peripheral Interface Controller (controlador de interfaz periférico).
El PIC original se diseñó para ser usado con la nueva CPU de 16 bits CP16000. Siendo en general una
buena CPU, ésta tenía malas prestaciones de entrada y salida, y el PIC de 8 bits se desarrolló
en 1975 para mejorar el rendimiento del sistema quitando peso de E/S a la CPU.
El PIC utilizaba microcódigo simple almacenado en ROM para realizar estas tareas; y aunque el término no se
usaba por aquel entonces, se trata de un diseño RISC que ejecuta una instrucción cada 4 ciclos del oscilador.
El PIC usa un juego de instrucciones tipo RISC, cuyo número puede variar desde 35
para PICs de gama baja a 70 para los de gama alta. Las instrucciones se
clasifican entre las que realizan operaciones entre el acumulador y una constante, entre el acumulador y una posición de memoria,
instrucciones de condicionamiento y de salto/retorno, implementación de interrupciones y una para pasar a modo de bajo
consumo llamada sleep.
Microchip proporciona un entorno de desarrollo freeware llamado MPLAB que incluye un simulador software y un ensamblador. Otras empresas desarrollan compiladores
C y BASIC. Microchip también vende compiladores para los PICs
de gama alta ("C18" para la serie F18 y "C30" para los
dsPICs) y se puede descargar una edición para estudiantes del C18 que
inhabilita algunas opciones después de un tiempo de evaluación.
Para el lenguaje de programación Pascal existe un compilador de código abierto, JAL, lo mismo que PicForth para el
lenguaje Forth. GPUTILS es una
colección de herramientas distribuidas bajo licencia GPL que incluye ensamblador y enlazador, y funciona en Linux, MacOS y Microsoft Windows. GPSIM es otra
herramienta libre que permite simular diversos dispositivos hardware conectados
al PIC.
Uno de los más modernos y completos compiladores para
lenguaje C es [mikroC], que es un ambiente de desarrollo con editor de texto, bibliotecas con múltiples funciones para todos los módulos y herramientas incorporadas
para facilitar enormemente el proceso de programación.
La arquitectura del PIC es sumamente minimalista. Esta
caracterizada por las siguientes prestaciones:
- Área de
código y de datos separadas (Arquitectura Harvard).
- Un
reducido número de instrucciones de longitud fija.
- Implementa
segmentación de tal modo que la mayoria de
instrucciones duran 1 tiempo de instruccion (o 4 tiempos de reloj). Pueden
haber instrucciones de dos tiempos de instruccion (saltos, llamadas y
retornos de subrutinas y otras) o inclusive con mas tiempo de instruccion
en PICs de gama alta. Esto implica que el rendimiento real de
instrucciones por segundo del procesador es de al menos 1/4 de la
frecuencia del oscilador.
- Un solo
acumulador (W), cuyo uso (como operador de origen) es implícito (no está
especificado en la instrucción).
- Todas
las posiciones de la RAM funcionan como registros de origen y/o de destino
de operaciones matemáticas y otras funciones.1
- Una
pila de hardware para almacenar instrucciones de regreso de funciones.
- Una
relativamente pequeña cantidad de espacio de datos direccionable
(típicamente, 256 bytes), extensible a través de manipulación de bancos de
memoria.
- El
espacio de datos está relacionado con el CPU, puertos, y los registros de
los periféricos.
- El
contador de programa está también relacionado dentro del espacio de datos,
y es posible escribir en él (permitiendo saltos indirectos).
A diferencia de la mayoría de otros CPU, no hay
distinción entre los espacios de memoria y los espacios de registros, ya que la
RAM cumple ambas funciones, y esta es normalmente referida como "archivo
de registros" o simplemente, registros.
GAMAS
Para. resolver aplicaciones sencillas se precisan
pocos recursos; en cambio, las aplicaciones grandes requieren numerosos y
potentes. Siguiendo esta filosofía, Microchip construye diversos modelos de
microcontroladores orientados a cubrir, de forma, las necesidades de cada
proyecto. Así, hay disponibles microcontroladores sencillos y baratos para
atender las aplicaciones simples y otros complejos y más costosos para las de
mucha envergadura.
Entre los fabricantes de microcontroladores hay dos
tendencias para resolver las demandas de los usuarios:
1ª. Microcontroladores de arquitectura cerrada
Cada modelo se construye con un determinado CPU,
cierta capacidad de memoria de datos, cierto tipo y capacidad de memoria de
instrucciones, un número de E/S y un conjunto de recursos auxiliares muy
concreto. El modelo no admite variaciones ni ampliaciones.
La aplicación a la que se destina debe encontrar en su estructura todo lo que precisa y, en caso contrario, hay que desecharlo. Microchip ha elegido principalmente este modelo de arquitectura.
La aplicación a la que se destina debe encontrar en su estructura todo lo que precisa y, en caso contrario, hay que desecharlo. Microchip ha elegido principalmente este modelo de arquitectura.
2ª. Microcontroladores de arquitectura abierta
Estos microcontroladores se caracterizan porque,
además de disponer de una estructura interna determinada, pueden emplear sus
líneas de E/S para sacar al exterior los buses de datos, direcciones y control,
con lo que se posibilita la ampliación de la memoria y las E/S con circuitos
.integrados externos. Microchip dispone de modelos PIC con arquitectura
abierta, sin embargo, esta alternativa se escapa de la idea de un
microcontrolador incrustado y se asemeja a la. solución que emplean los
clásicos microprocesadores.
En nuestra opinión, los verdaderos microcontroladores
responden a la arquitectura cerrada y permiten resolver una aplicación con un
solo circuito integrado y a precio muy reducido.
La mayoría de los sistemas de control incrustados
requieren CPU, memoria de datos, memoria de instrucciones, líneas de E/S, y
diversas funciones auxiliares como temporizadores, comunicación serie y otras.
La capacidad y el tipo de las memorias, el número de líneas de E/S y el de
temporizadores, así como circuitos auxiliares, son parámetros que dependen
exclusivamente de la aplicación y varían mucho de unas situaciones a otras.
Quizás se pueda considerar la decisión más importante del proyecto la elección
del modelo de microcontrolador. Para adaptarse de forma óptima a las
necesidades de los usuarios, Microchip oferta tres gamas de microcontroladores
de 8 bits
Con las tres gamas de PIC se dispone de gran
diversidad de modelos y encapsulados, pudiendo seleccionar el que mejor se
acople a las necesidades de acuerdo con el tipo y capacidad de las memorias, el
número de líneas de E/S y las funciones auxiliares precisas. Sin embargo, todas
las versiones están construidas alrededor de una arquitectura común, un
repertorio mínimo de instrucciones y un conjunto de opciones muy apreciadas,
como el bajo consumo y el amplio margen del voltaje de alimentación.
APLICACIONES DE LOS MICROCONTROLADORES
Hoy en día podemos encontrarlos en
juguetes, aparatos electrodomésticos, equipos de audio y video, incluyendo
la televisión, estéreos ,equipos periféricos de cómputo como impresoras y
aviones y cualquier otra máquina que requiera de algún control concierto grado
de inteligencia. Una aplicación que vale la pena mencionar es el que
tienen los microcontroladores en la industria
automotriz, probablemente su campo de aplicación más importante. Un auto común usa entre 30 y40
microcontroladores que sirven para manejar el sistema de suspensión, la mezcla
de aire-gasolina, la sincronización y frecuencia de la ignición en los
cilindros, los frenos ABS y desplegar información alusuario a través del
tablero entre otras cosas. Un auto más costoso puede incluir
hasta 80microcontroladores, mucha más potencia de cómputo que la que era
posible en las primeras naves espaciales.









