18 de septiembre de 2012
Contenido 1 Microprocesadores y Microcontroladores 2 3 4
Microprocesadores y Microcontroladores Microcomputadora consiste básicamente de: Unidad central de procesamiento (CPU), memoria y sistema de entrada/salida (I/O). Las ĺıneas eléctricas de interconexión entre los buses se llaman buses. Buses de dirección: Transportan direcciones de memoria o I/O. Buses de datos: Transportan datos o instrucciones. Buses de control: Transportan señales de control.
Microprocesadores y Microcontroladores
Microprocesadores y Microcontroladores El CPU constituye el cerebro de una microcomputadora. Busca las instucciones almacenas en memoria, las interpreta y ejecuta. Incluye la circuitería necesaria para realizar operaciones lógicas y aritméticas (ALU: Arithmetic Logic Unit). En una microcumputadora, el CPU es su microprocesador. Un microcontrolador es considerado como una microcomputadora construida dentro de un solo circuito integrado (CI) o chip.
Microprocesadores Los microprocesadores se encuentran principlamente en estaciones de trabajo. Empleadas donde se requiere una gran potencia computacional y la habilidad de manejar instrucciones grandes. Trabajan a altas velocidades.
Microcontroladores Son empleados en una gran variedad de aplicaciones. Se encuentran en electrónica de consumo, aplicaciones médicas, equipos de hospital e industrias, juguetes, y muchos más. Llevan a cabo un número de tareas reducido. Tienen su programa almacenado permanentemente en memoria.
Microcontroladores Algunos requerimientos son importantes para el diseño y uso de microcontroladores. Recursos de entrada y salida. Optimización de espacio. Uso apropiado del microcontrolador para la aplicación dada. Protección contra falla. Bajo consumo de potencia. Protección de programas contra copias.
Microprocesadores
La memoria es donde se almacenan los datos y las instrucciones. La forma es que está organizada la memoria y la forma en que se comunica con el CPU determina la eficiencia de un dispositivo. Existen dos modelos genéricos de HW para estructuras de memoria: von Neumann y Harvard.
von Neunmann Propuesta por el matemático John von Neumann. Se emplea una sola memoria para almacenar los datos y las instrucciones. Un único bus de direcciones permite el acceso a datos e instrucciones. Análogamente solo se posee un bus para obtener las instrucciones y los datos. No hay señales de control independientes. Aún cuando se emplea ROM para instrucciones y RAM para datos, el CPU no está al tanto de esto y los trata de la misma manera sin distinción. (RAM + ROM una sola memoria)
von Neunmann
Harvard Microprocesadores y Microcontroladores Emplea diferentes memorias para almacenar instrucciones y datos. Cada memoria posee su propio bus de direcciones, datos y control. La memoria de programa solo puede ser leída, mientras la de datos puede ser leída y escrita. La arquitectura von Neumann posee menos ĺıneas lo que hace más simple la conexión entre la memoria y el CPU, no obstante no permite manejo simultáneo entre instrucciones y datos. La arquitectura Harvard permite accesos simultáneos de instrucciones y memoria, lo que permite mayor velocidad de ejecución de programas.
Harvard Microprocesadores y Microcontroladores
CISC: Complex set instruction computer. RISC: Reduced set instruction computer. En el inicio de los microprocesadores y microcontroladores se buscó darle el set de instrucciones más poderoso posible. CISC se convirtió en el más popular, aun cuando posee instrucciones muy simples (mover información a memoria), y muy complejas a la vez (mover una cadena de datos entre locaciones de memoria).
RISC implica instrucciones más simples, encargadas de tareas simples y que se llevan a cabo rápidamente. Los procesadores con RISC poseen menor cantidad de transistores y son más baratos en el proceso de manufactura. Los microcontroladores PIC poseen una arquitectura RISC.
Características generales Los microcontroladores PIC están basados en una arquitectura de memoria Harvard. El acceso a diversas E/S se lleva a cabo mediante registros en la memoria de datos llamados registros de función especial (SFR). Los PIC son microcontroladores RISC. Microcontroladores PIC poseen un registro de trabajo (W, working register) y múltiples registros de memoria. PIC posee una pila de tamaño fijo y que no es parte de la memoria de datos. Gran variedad de dispositivos de E/S: temporizadores, puerto serie y paralelo, convertidores A/D y D/A.
Arquitectura Harvard en PIC
ALU y registro de trabajo ALU es un componente fundamental en un microcontrolador. El registro de trabajo puede almacenar al menos un operando involucrado en la operación de la ALU, así como guardar el resultado de la operación. En la mayoría de microprocesadores y microcontroladores este registro asociado a la ALU se conoce como acumulador (ACC).
ALU y registro de trabajo
ALU y registro de trabajo El registro W tiene una función similar a la del ACC, pero se posiciona en diferente lugar. No operan en la misma forma. En el ACC siempre se almacena el resultado de una operación lógica o artimética. En el PIC, el resultado puede colocarse en el registro W o en algún registro en la memoria de datos. Esto da al PIC una gran cantidad de flexibilidad y potencia computacional.
Microcontrolador de gama media El 16F877 es de la subfamilia de microcontroladores PIC de la gama media. Posee un set de 35 instrucciones de 14 bits de longitud. Memoria de programa de hasta 8192 palabras, organizada en páginas de 2048 palabras. La memoria de datos está compuesta con registros de 8 bits, organizada en bancos de 128 registros. La pila es de 8 niveles para almacenar direcciones de programa.
Diagrama de bloques 16F877
Diagrama de bloques 16F877
Diagrama de bloques 16F877
Memoria de programa La memoria de programa esta dividida en páginas de 2K palabras y está direccionada con el PC, las cuales tiene un tamaño de 13 bits. La pila tiene 8 niveles de profundidad. Se trata de una pila LIFO. Con la instrucción CALL y las interrupciones, el valor PC se almacena en un nivel superior. Las instrucciones RETURN, RETFIE y RETLW devuelven el contenido del nivel superior de la pila en el PC. Los anidamientos en las subrutinas no debe sobrepasar 8 niveles.
Páginas de memoria de programa
Memoria de programa y la pila
Memoria de datos La memoria de datos tiene posiciones implementadas en RAM y otras en EEPROM. La RAM estática consta de 4 bancos con 128 bytes cada uno. En las posiciones iniciales de cada banco se ubican registros específicos llamados registros de función especial (SFR). Para seleccionar el banco al que se desea acceder en la RAM se emplean los bits 6 y 5 del registro STATUS, denominados RP1 y RP0.
Bancos de memoria de datos
Bancos de memoria de datos
Registro STATUS El registro STATUS contiene bits asociados con operaciones aritméticas así como bits de selección del banco de memoria. Este registro está presente en todos los bancos de memoria debido a que es usado para selecionar los bancos.
Registro STATUS
Bancos de memoria de datos