Está en la página 1de 7

Funcionamiento de la Unidad de Control

1.1 Microoperaciones del Ciclo de Instrucción


Las microoperaciones son las operaciones funcionales o atómicas de un procesador. A
continuación, se verán los ciclos de las microoperaciones, con la finalidad de comprender
cómo los eventos de cualquier instrucción se pueden describir como una secuencia de
microoperaciones.

1.1.1. Ciclo de Captación


1.1.2. Ciclo Indirecto
Una vez que se capta una instrucción, el paso siguiente es captar los operandos fuente.
Cuando una instrucción especifica una dirección indirecta, un ciclo indirecto ha de
preceder al ciclo de ejecución.

Incluye las siguientes microoperaciones.

t1 : MAR  (IR(dirección))
t 2 : MBR  Memoria
t 3 : IR  IR(dirección)  (MBR(dirección))
La secuencia de pasos comienza cuando el campo de dirección en la instrucción se
transfiere a MAR. Este se usa para captar la atención del operando. Y, por último, la
dirección IR se actualiza con el contenido de MBR, logrando una dirección directa en vez
de indirecta.

1.1.3. Ciclo de Interrupción


Cuando el ciclo de ejecución termina, se realiza una comprobación para determinar si ha
ocurrido una interrupción habilitada, si esto es verdadero; un ciclo de interrupción tiene
lugar, la naturaleza de este ciclo varía mucho de una máquina a otra. Se muestra una
secuencia simple de un evento.

t1 : M B R  (PC)
t 2 : MAR  Dirección de salvaguardia
PC  Dirección de rutina
t 3 : IR  Memoria  (MBR)
En el primer paso, el contenido de PC se transfiere a MBR, con ello puede almacenarse
para el retorno de la interrupción. MAR se carga con la dirección en la cual va a guardarse
al contenido de PC, y éste se carga con la dirección de comienzo de la última rutina de
procesamiento de la interrupción. Así, una vez concluido todos los pasos, el último es
almacenar MBR, el cual contiene el valor pasado de PC en la memoria.

1.1.4. Ciclo de Ejecución


Cada uno de los ciclos implica una secuencia pequeña y fija de microoperaciones, en
todos los casos se repiten las mismas microoperaciones para cada ejecución de una
instrucción; no obstante, en el ciclo de ejecución de una maquina con N cantidad de
códigos de operación pueden ocurrir N secuencias de microoperaciones. Primeramente,
se considera una instrucción de suma:

ADD R1, X

Que suma el contenido de la posición X, al registro R1. Puede suceder la siguiente


secuencia de microoperaciones:

t1 : MAR  (IR(Dirección))
t 2 : MBR  Memoria
t 3 : R1  R1+(MBR)

Al inicio IR contiene la instrucción ADD. En el primer paso, la parte de dirección de IR se


carga en MAR. Enseguida se lee la posición de memoria referenciada, y por último, la
ALU suma los contenidos de R1 y MBR. Cabe mencionar que este es un ejemplo
simplificado, ya que pueden necesitarse microoperaciones adicionales para extraer la
referencia a registro desde IR y posiblemente para poner las entradas o salidas de la
ALU en algunos registros intermedios.
1.2. Controles del Procesador
1.1.5. Requisitos funcionales
Son aquellas funciones que debe llevar a cabo.

Una definición de estos requisitos funcionales es la base del diseño e implementación de


la unidad de control.

Pasos que llevan a la caracterización de la unidad de control:

1. Definir los elementos básicos del procesador.


2. Describir las microoperaciones que ejecuta el procesador.
3. Determinar las funciones que debe realizar la unidad de control para hacer que se
ejecuten las microoperaciones.

Los elementos funcionales básicos del procesador son los siguientes:

 ALU: es la esencia funcional del computador.


 Registros: se usan para almacenar datos internos del procesador. Algunos
registros contienen información de estado necesaria para gestionar el
secuenciamiento de las instrucciones (por ejemplo, la palabra de estado del
programa). Otros contienen datos que van hacia, o vienen desde la ALU, la
memoria y los módulos de E/S.
 Caminos de datos internos: se usan para transferir datos entre los registros y
entre estos y la ALU.
 Caminos de datos externos: unen los registros a la memoria y a los módulos de
E/S, a menudo por medio de un bus del sistema.
 Unidad de control: hace que se produzcan operaciones dentro del procesador.

Las microoperaciones se pueden clasificar en una de las siguientes categorías:

 Transferir datos de un registro a otro.


 Transferir datos de un registro a una interfaz externa (por ejemplo, al bus del
sistema).
 Transferir datos de una interfaz externa a un registro.
 Realizar una operación aritmética o lógica, usando registros para entrada y salida.
Todas las microoperaciones necesarias para realizar un ciclo de instrucción, incluyendo
todas las microoperaciones necesarias para ejecutar cada instrucción del repertorio,
están incluidas en una de estas categorías.

La unidad de control realiza dos tareas básicas:

 Secuenciamiento: la unidad de control hace que el procesador avance a través


de una serie de microoperaciones en la secuencia oportuna, basada en el
programa que se está ejecutando.
 Ejecución: la unidad de control hace que se ejecute cada microoperación.

1.1.6. Señales de control


Para que la unidad de control realice su función, debe tener entradas que le permitan
determinar el estado del sistema y salidas que le permitan controlar el comportamiento
de este. Estas son las especificaciones externas de la unidad de control. Internamente,
la unidad de control ha de tener la lógica necesaria para realizar sus funciones de
secuenciamiento y ejecución.
Las entradas son las siguientes:
 Reloj: es el encargado de «mantener la hora exacta». La unidad de control hace
que se ejecute una microoperación (o un conjunto de microoperaciones
simultáneas) en cada pulso de reloj. Este a menudo es referenciado como tiempo
de ciclo del procesador, o período de reloj.
 Registros de instrucción: el código de operación de la instrucción en curso se
usa para determinar qué microoperaciones hay que realizar durante el ciclo de
ejecución.
 Indicadores: los necesita la unidad de control para determinar el estado del
procesador y el resultado de anteriores operaciones de la ALU. Por ejemplo, para
la instrucción incrementar y saltar si cero (ISZ), la unidad de control incrementará
PC si el indicador de cero está a uno.
 Señales de control del bus de control: la parte de control del bus del sistema
suministra señales a la unidad de control, tales como señales de interrupción y de
reconocimiento.
Las salidas son las siguientes:

 Señales de control internas al procesador: son de dos tipos: las que hacen que
los datos se transfieran de un registro a otro, y las que activan funciones
específicas de la ALU.
 Señales de control hacia el bus de control: también las hay de dos tipos:
señales de control de la memoria, y señales de control de los módulos de E/S.

Se usan tres tipos de señales de control: las que activan una función de la ALU, las que
activan un camino de datos, y las que son señales del bus del sistema externo u otra
interfaz externa. Todas estas señales acaban aplicándose directamente como entradas
binarias a puertas lógicas individuales.
1.3. Segmentación de Instrucciones
1.3.1. Estrategia
La segmentación de instrucciones es similar al uso de una cadena de montaje en una
fábrica. Una cadena de montaje saca partido del hecho de que el producto pasa a través
de varias etapas de producción. Disponiendo el proceso de producción como una cadena
de montaje se puede trabajar sobre los productos en varias etapas simultáneamente.
Este proceso es conocido como segmentación de cauce («pipelining»), porque, como en
una tubería o cauce (pipeline), en un extremo se aceptan nuevas entradas antes de que
algunas entradas aceptadas con anterioridad aparezcan como salidas en el otro extremo.

1.3.2. Tratamientos de Saltos


2. Funcionamiento de la Unidad Aritmética Lógica

2.2. Registros / Circuitos


2.2.1. Sumador /Restador
2.2.2. Multiplicador

También podría gustarte