El Microprocesador

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 11

EL MICROPROCESADOR

INTRODUCCION

El microprocesador o CPU es un dispositivo electrónico digital, integrado, programable y de


actuación secuencial que constituye el cerebro del computador. Funcionalmente, es pues un
dispositivo lógico, que asocia a otras unidades, permite el tratamiento de la información
almacenada, en forma de "programa de instrucciones", siendo capaz de interpretar estas
instrucciones y ejecutarlas controlando a las unidades implicadas en su realización.

Los computadores de hace diez años necesitaban un armario bastante grande para alojar los
componentes de su CPU. Estaban formados por paneles abatibles soportando hileras de tarjetas
de circuito impreso, interconectadas por medio de gruesos cables. En cambio, la CPU de un
computador actual está contenida en un sólo chip LSI.

La evolución de los microprocesadores fue relativamente muy rápida; la evolución de la familia


INTEL.
ARQUITECTURA INTERNA DEL MICROPROCESADOR

En él podemos distinguir dos zonas que serán:

- Zona de Registros (parte izquierda del esquema).

- Zona de Control (parte derecha del esquema).

En la zona de Registros están las células de memoria, donde se almacenan los datos. Por su parte
la zona de Control, será la encargada de procesar las instrucciones.

los bloques más importantes del microprocesador:

UNIDAD DE CONTROL (U.C.) Tiene como misión interpretar las instrucciones, desencadenar y
supervisar las operaciones elementales que permitan ejecutar estas instrucciones. En definitiva,
como resultado de la interpretación o decodificación de cada una de las instrucciones, la Unidad
de Control, generará las adecuadas señales de control, que gobernarán y sincronizarán la
actuación conjunta de las unidades externas e internas al microprocesador.

cada instrucción consta de dos zonas: "Código de Operación" (C.O.), que tiene la extensión de
un Byte, cuyo significado es el de ordenar. La otra zona es el "Operando" (OP). Su extensión es
variable, y está formado por el dato a manipular. Esto nos permite afirmar que la zona de la
instrucción que ingresa en la Unidad de Control es el Código de Operación, puesto que éste es
el que determina que es lo que se debe hacer con el Operando.

DIAGRAMA DE BLOQUES DEL SISTEMA BASADO EN MICROPROCESADOR


La ejecución de una instrucción empezará con la lectura del Código de Operación, que a través
del Bus de Datos, pasará al interior del Registro de Instrucciones. A continuación, la Unidad de
Control decodificará o traducirá la orden, y desencadenará una serie de operaciones
elementales, sincronizadas con las fases de reloj, que permitirá ejecutar la instrucción.

La Unidad de Control tiene también la tarea adicional de gestionar la aceptación de los


comandos que ingresan a través del Bus de Control, (interrupciones, detenciones, ...) y de
generar el posicionamiento de los controles de salida según corresponda, (lectura, escritura, ...).
Existen dos tipos de Unidad de Control, que son la cableada y la microprogramada. La diferencia
entre ellas radica en que las cableadas generan los comandos de control por Hardware, mientras
que las microprogramadas lo hacen por Software, a tenor del programa almacenado en una
ROM interna. Esta última, es la más utilizada actualmente en los microprocesadores
comerciales.

UNIDAD ARITMÉTICA LÓGICA


La ALU es el órgano operativo del microprocesador. Efectúa las operaciones aritméticas, lógicas,
de desplazamiento, y en general cualquier operación a la que deban someterse los datos. Esto
significa que mientras las órdenes son procesadas por la Unidad de Control, los datos lo son por
la ALU. Por tanto, las posibilidades operativas de la ALU dependerán, del repertorio de
instrucciones que posea el microprocesador en cuestión.

Las operaciones con dos datos, por ejemplo, suma aritmética, funciones AND, OR, etc., se
efectuarán de manera que el primer dato se almacena en el Acumulador, y el segundo llega a la
ALU a través del Bus Interno de Datos. El resultado de la operación es almacenado nuevamente
en el Acumulador.

ACUMULADOR

El Acumulador está comunicado bidireccionalmente con la ALU, ya que actúa como registro de
datos y de resultados en las operaciones aritmético-lógicas, y como registro local para las
operaciones que se realizan sobre un solo dato. Algunos microprocesadores poseen dos
acumuladores, lo que se traduce por lo general en un aumento de la velocidad de operación, ya
que la ALU puede trabajar sobre ambos, y estos poseen a su disposición dos datos accesibles
directamente.

CONTADOR DE PROGRAMA
Es un registro cuya misión consiste en almacenar la dirección de la próxima instrucción a
ejecutar, dentro de la secuencia ordenada por el programa. Una vez que se ha cargado el
Código de Operación de la instrucción en el Registro de Instrucciones, la Unidad de Control
traducirá o decodificará dicho Código de Operación, y alterará el contenido del Contador de
Programa de una de las dos formas siguientes:

- Si después de interpretar el Código de Operación de la instrucción no se deriva un salto, la


Unidad de Control incrementará el contenido del Contador de Programa en una unidad, de tal
forma que este apuntará hacia la próxima posición de memoria, en la que se encuentra la nueva
instrucción a ejecutar.

- Si por el contrario, al decodificar el Código de Operación de la instrucción en curso se comunica


una orden de salto o ruptura de la secuencia normal, el contenido del Contador de Programa
será cargado con la dirección de salto, a partir de la cual continuará el programa normalmente.

En los microprocesadores de 8 bits, el Contador de Programa es un registro de 16 bits,


característica que resulta clara si recordamos que el Bus de Direcciones de este tipo de
microprocesadores consta de 16 líneas, y que el Contador de Programa es precisamente el
registro encargado de entregar las configuraciones binarias de direccionamiento. A este
respecto, diremos que con 16 bits, el Contador de Programa podrá generar 65536 posiciones de
memoria distintas, ya que 2 16 es igual a 65536, siendo el rango de direcciones el siguiente:

REGISTRO DE ESTADO

Consta de varios biestables (señalizadores o flags) que contienen información sobre el


resultado de la última operación efectuada; por ejemplo: signo, acarreo, paridad, etc.

REGISTROS DE TRABAJO

Existen otros registros para actividades particulares, tales como contadores, índices, etc.

LÓGICA DE INTERRUPCIONES
La función de la Lógica de Interrupciones, es establecer un orden de prioridad entre las
distintas interrupciones.

Entendemos por interrupción, la detención del procesamiento normal que lleva a cabo la
C.P.U., y permite a esta que salte a otros programas de atención a las interrupciones
provocadas.

Las fases de toda interrupción son:

♦ En cuanto se produce la interrupción y finaliza la ejecución de la instrucción en curso, se


procede a la "salvación" en una parte de la memoria gobernada por el Puntero de Pila, del
contenido de los registros más importantes de la C.P.U.

♦ El Contador de Programa se carga con el contenido de unas direcciones particulares.

♦ La C.P.U. ejecuta las instrucciones a partir del nuevo contenido del Contador de Programa.

♦ Acabado el programa de atención a la interrupción, se regresa al programa principal,


recuperando desde la memoria los datos salvados al producirse la interrupción.

Las interrupciones pueden clasificarse en tres grupos:

♦ MASCARABLES (IRQ).- Son aquellas cuya activación se lleva a cabo por Software.

♦ NO MASCARABLES (NMI).- Son ejecutadas siempre.

♦ RESET.- Interrupción especial que reinicializa el programa. Hace que la C.P.U. tome una
dirección de memoria determinada, y a partir de ella ejecuta el programa ya existente.

PUNTERO DE PILA

Los datos fundamentales se almacenan en un lugar de la memoria central, llamada memoria de


pila, zona en la que se almacenan los datos durante las interrupciones, y luego son devueltos al
programa. Esta memoria es de tipo LIFO (Last Input First Out), la situación de la misma, en el
conjunto de la memoria, se determina por el Puntero de Pila.

Fijémonos ahora en el esquema correspondiente al diagrama en bloques de la estructura interna


de un microprocesador básico:

DESARROLLO DE UNA SECUENCIA OPERATIVA DENTRO DEL µPROCESADOR

Supongamos que queremos ejecutar con nuestro microcomputador un programa sencillo:


Sumar dos números X e Y, cuyo resultado Z sea almacenado en memoria. Imaginemos que las
direcciones donde se encuentran estos números son:

X = 0033

Y = 0034

Z = 0035

El primer paso para resolver nuestro problema será recuperar el número X, que se encuentra
en la dirección 0033, y almacenarlo en el registro interno Acumulador.

A continuación, recogemos de la memoria el dato Y almacenado en lo posición de memoria


0034 y lo sumaríamos en el ALU con el dato contenido en el Acumulador. El resultado se
depositará en el Acumulador y de ahí lo salvaremos almacenándolo en la posición de memoria
0034.

Como sabemos cada instrucción se compone de dos partes, un Código de Operación, y un


operando. En nuestro ejemplo, los Operandos ( las direcciones donde están almacenados o se
van a almacenar los datos ), son datos de 16 bits, por lo cual ocupan dos posiciones de
memoria, estando en la dirección más baja el byte menos significativo, y en la siguiente el byte
más significativo.

También podría gustarte