You are on page 1of 34

El Microprocesador

ELECTRÓNICA DIGITAL
TMA
Introducción al Microprocesador

• Este es un chip cuya función principal es la de buscar,


decodificar y ejecutar instrucciones. Una instrucción es una
orden que indica al procesador lo que debe hacer con los
datos que tiene.
• Un microprocesador recibe instrucciones y datos de la
memoria para ser ejecutados, en otras palabras, busca los
datos y lleva a cabo la orden de la instrucción.
Introducción al Microprocesador
Las partes principales de un microprocesador son:
• Registros para el almacenamiento temporal de
direcciones y datos;
• Unidad Aritmética lógica (ALU) que es capaz de
realizar operaciones matemáticas y lógicas;
• Una unidad que recibe y decodifica instrucciones;
• Un medio para controlar y sincronizar las
operaciones dentro del sistema.
Sistema mínimo basado en
microprocesador.
Un sistema mínimo está basado en la estructura de von
Newman. Sus bloques básicos son los siguientes:
El microprocesador.

Diagrama de bloques general de un Microprocesador.


El microprocesador.
Ejemplo de un Microprocesador de 8 bits el 6502.
Unidad de Memoria.
• La memoria se emplea para dos funciones básicas:
• Almacenamiento de las instrucciones que constituyen el
programa. Las instrucciones se codifican mediante su Código
de Operación (COP), formado por uno o varios Bytes.
• Almacenamiento de los datos y variables del programa.
Normalmente agrupados en paquetes de 8 bits (Byte), 16 bits
(Word) o 32 bits (Long Word).
• La velocidad (o el tiempo de respuesta) de la memoria debe
ser compatible con el Microprocesador empleado.
Unidad de Memoria.
Normalmente se emplean memorias basadas en
semiconductores:
• RAM, memorias de lectura/escritura para almacenamiento
de variables y datos del programa. Son volátiles.
• ROM (EPROM, EEPROM), memorias de sólo lectura para
almacenamiento programas fijos (aplicaciones, rutinas
básicas de sistemas operativos, etc.) y constantes. Son no
volátiles.
Unidad de Memoria.
Interacción entre el Microprocesador y la Memoria.
Unidad Central de Proceso (CPU).
Está formada por los siguientes bloques:
• Registros internos
• Unidad de Control
• Unidad de Proceso u Operativa
Registros Internos de la CPU
• Los registros de la CPU son bloques de Biestables
que permiten el almacenamiento de los datos
básicos con los cuales va a trabajar la CPU durante la
ejecución de cada instrucción.
Unidad Central de Proceso (CPU).
Ejemplo de registro:
Unidad Central de Proceso (CPU).
Los registros pueden escribirse, leerse e intercambiar información entre
ellos por medio de los Buses Internos de la CPU. Se puede intercambiar
información entre registros, cargar registros, descargarlos, etc.

Existen diferentes tipos de registros:


• De Desplazamiento, empleando biestables D encadenados. Permiten
hacer rotaciones y desplazamientos de bits (x2, %2, E/S serie, etc.)
• Contadores, con biestables T encadenados. Permiten medir tiempos,
temporizar, etc.
• Registros Índices o de Direcciones, permiten el acceso estructurado a
datos de memoria
• Registros de datos, para almacenamiento de variables del programa
• Registros especiales, contador de programa (Program Counter, PC),
puntero de pila (Stack Pointer, SP)
Unidad Central de Proceso (CPU).
Los registros básicos en un microprocesador son:
• Contador de Programa (PC): Este registro almacena la dirección absoluta
de la siguiente instrucción de máquina que se ejecutará.
• Tiene un papel central en el control de la secuencia de las instrucciones
de máquina que ejecuta el procesador. Su contenido es afectado por las
instrucciones de bifurcación y de salto así como también por las
interrupciones.

• Registro de Instrucciones (IR): Almacena el código de la instrucción que


se esta ejecutando. La unidad de control extrae el código de operación
del IR y también determina la secuencia de señales necesarias para
realizar el procesamiento que requiere la instrucción.
Unidad Central de Proceso (CPU).
Los registros básicos en un microprocesador son:
• Registro de Estado: Almacena el estado de ciertas
condiciones del procesador. Cada bit representa una bandera
booleana que indica el estado de una condición. Las banderas
o bits se fijan durante la operación del procesador.

• Apuntador de Pila (SP): Apunta a la parte superior de la pila


del procesador, o sea que contiene la dirección de la entrada
más reciente de la pila.
Unidad Central de Proceso (CPU).
Los registros básicos en un microprocesador son:
Registros de propósito general: Estos registros se usan en
forma por lo general para almacenar datos e información de
direccionamiento. Dentro de esta categoría de registros se
encuentran: los acumuladores y los registros índice. Los
primeros se utilizan para almacenar resultados de
operaciones aritméticas y los segundos para el
direccionamiento indexado o indirecto.
Unidad Central de Proceso (CPU).
• Unidad de Control
Su misión principal consiste en interpretar y ejecutar las
instrucciones que le llegan desde la memoria:
Unidad Central de Proceso (CPU).
• Unidad de proceso
El bloque principal es la ALU o Unidad Lógico-Aritmética, que permite
realizar un las operaciones aritméticas y lógicas indicadas por las
instrucciones del programa.
• El secuenciador (UC), instruido por el código de la instrucción en curso,
activa las líneas de selección de la ALU para realizar la operación.
Unidad Central de Proceso (CPU).
Unidad de proceso
• El Registro de Estado esta formado por bits denominados
banderas (flags) que se ponen a 1 ó 0 de acuerdo con el resultado
obtenido. Algunos bits típicos son:
• Z, bit zero, se pone a 1 si el resultado fue nulo.
• C, bit carry, se pone a 1 si hubo acarreo de orden superior
• V, bit overflow, se pone a 1 si hubo desbordamiento
• I, bit de interrupción; Este bit es independiente del resultado.
Escribiendo un 1 en él por medio de la instrucción correspondiente
se pueden inhibir la interrupción exterior enmascarable.
Diagrama general de un sistema
basado en un Micro P de 8 bits
Realización de una instrucción
La mayoría de las operaciones realizadas por un
microprocesador implican el movimiento de datos.
El código del programa (un conjunto de
instrucciones almacenado en ROM o RAM) debe ser
recuperado desde la memoria antes de la ejecución.
La acción de buscar un código de instrucción (o valor
de datos) de la memoria implica una operación de
lectura mientras que la acción de mover datos de el
microprocesador a una ubicación de memoria
involucra una operación de escritura.
Realización de una instrucción
Cada ciclo de funcionamiento de la CPU se conoce
como ciclo de la máquina. Las instrucciones del
programa pueden requerir varios ciclos de máquina
(típicamente entre dos y cinco). El primer ciclo de
máquina en cualquier ciclo consiste en una
búsqueda de instrucción (la instrucción el código se
lee de la memoria) y se lo conoce como ciclo M1. Y
los ciclos subsecuentes M2, M3, y así, dependiendo
del tipo de instrucción que se está ejecutado.
Realización de una instrucción
• La realización de una instrucción se lleva a cabo en dos fases:
Fase de Búsqueda
• Es común a todas las instrucciones. Se inicia en el contador
de programa (PC), que contiene la dirección de memoria
donde se encuentra el código binario de la instrucción.
• Esta dirección se coloca en el registro de direcciones de la
CPU y de ahí a la memoria a través del bus de direcciones.
• Una vez decodificada la dirección en la memoria, su
contenido se traslada al bus de datos hacia el registro de
Instrucciones de la Unidad de Control.
• En este momento finaliza la fase de búsqueda.
Realización de una instrucción
Fase de Búsqueda
Realización de una instrucción
Fase de ejecución
• En esta fase se decodifica la instrucción dentro de la unidad
de control. Se busca su código de micro-Instrucciones en la
memoria interna de la CPU y se activan las señales
correspondientes del secuenciador para ejecutar la
instrucción completa.
• Durante la fase de ejecución los buses externos del sistema
no son utilizados por la CPU. Pueden ser empleados por otros
dispositivos externos para transferir datos.
Realización de una instrucción
Fase de ejecución
Realización de una instrucción
• Las instrucciones que constituyen el programa se almacenan en
memoria en paquetes de 8 bits (Bytes). Normalmente de la forma
siguiente:
• Byte 1: es el código de operación (COP ó OPCODE) que indica la
operación de la que se trata y su función. Por ejemplo operación
lógica AND.
• Byte 2 y siguientes: normalmente nos dan la información necesaria
para acceder al dato sobre el que va a trabajar la instrucción. Pueden
ser el propio dato, la dirección de memoria donde se encuentra el
dato, etc. las diferentes posibilidades para acceder a ese dato se
denominan modos de direccionamiento del m P.
• Los COPs suelen ser del mismo tamaño que el bus de datos del micro.
En los micros de 8 bits (6502, Z80, 8088) los COPs son de 8 bits. En los
micros de 16 bits (68000, 8086, Z8000) los COPs son de 16 bits.
Realización de una instrucción

Diagrama de tiempo del ciclo de ejecución de una instrucción en un Mp


Realización de una instrucción
Fases de búsqueda y ejecución en un Microprocesador
Aplicación de microprocesadores en
aeronaves
El Microprocesador AMD 29050 ha sido uno de los más utilizados
por fabricantes de aviónica
El fabricante Honeywell utilizó el núcleo del 29050 (familia 29K)
como base de una aplicación utilizada en su paquete de Aviónica
Integrada Versátil (VIA).
La VIA proporciona una variedad de funciones integradas de
aviónica, como el registro de datos, la visualización de datos,
y control de subsistemas críticos.
Cada sección de la VIA forma un Módulo de procesamiento central
(CPM) y cada CPM está basado en un par de procesadores AMD
29050.
Aplicación de microprocesadores en
aeronaves
Las CPU están configuradas en un sistema conocido como
«Voting». Todas las salidas (dirección, datos y control) pasan
a través de un comparador, si cada CPU envía las mismas
señales, el sistema continúa. Si las señales no coinciden,
entonces se presenta una condición de falla y el sistema
entra en un modo de error en el que interrumpe el
procesamiento, registra el error y luego procede a recuperar
el sistema.
Aplicación de microprocesadores en
aeronaves

Diagrama de bloque del Basic Core Processor Modules (CPM)


Aplicación de microprocesadores en
aeronaves
El set de instrucciones de la familia 29K fue diseñado para optimizar la
programación y reducir el tiempo de ejecución evitando la ejecución de
instrucciones redundantes.
La familia 29K se basa en la arquitectura de Computadora de conjunto de
instrucciones reducido (RISC). Esencialmente, esto significa que
relativamente se usan pocas instrucciones y estas instrucciones se
estructuran de forma simple. Estas instrucciones se ejecutan de forma
mucho más rápida.
Aplicación de microprocesadores en
aeronaves
Otra característica importante de la familia 29K es el uso de la
canalización de instrucciones o «Pipelining». Cada procesador tiene una
tubería de cuatro etapas que consiste primero en una etapa de búsqueda,
seguida de una decodificación de instrucción, luego las etapas de
ejecución y reescritura.
Las instrucciones (con algunas excepciones) se ejecutan en un ciclo único.
Las versiones de gama alta de la familia 29K incluido el 29050 utilizado en
aplicaciones criticas de aviónica, usan una arquitectura Harvard en la que
se agrega un bus de instrucciones, con lo que se logra la separación de las
instrucciones del bus de direcciones. Las instrucciones son alimentadas al
procesador por medio de un bus de instrucción separado.
Aplicación de microprocesadores en
aeronaves

Arquitectura de un sistema procesador 29K

You might also like