Captacin (fetch): obtener instruccin de la memoria. Indirecto: obtener operandos. Ejecucin. Interrupcin: instrucciones que requieren atencin urgente.
Ciclos compuestos de microoperaciones.
Utiliza los registros de Control y Estado. Funciones de la U.C. 1) Ejecutar la siguiente secuencia: Leer de la memoria principal la instruccin apuntada por el CP. Incrementar el contador de programa (CP). Decodificar la instruccin leda. Hacer que sea ejecutada. 2) Resolver situaciones anmalas o de conflicto. 3) Controlar la comunicacin con los perifricos. Informacin de que se vale la UC Emplea y modifica el contador de programa Averigua qu hacer del cdigo de operacin y busca los operandos El registro de ESTADO informa de resultados de operaciones Puede haber interrupciones de secuencia El contador de periodos (accionado por el reloj, CLK) Las seales de control y estado externas a la CPU Operaciones elementales La ejecucin de una instruccin necesita realizar una serie de pequeos pasos llamados operaciones elementales Le ejecucin de cada operacin elemental requiere la activacin de las correspondientes seales de control Las operaciones elementales pueden ser de dos tipos: Operaciones de transferencia Operaciones de proceso El objetivo de la UC es generar las secuencias de seales de control precisas para la realizacin de las operaciones elementales de cada instruccin Operaciones de transferencia Se precisan dos elementos de almacenamiento (origen y destino) Se ha de establecer previamente un camino fsico entre origen y destino Enviar una seal al destino para que se cargue con lo que tiene a su entrada
La informacin del origen queda sin modificar! Operaciones de transferencia (II) Ejemplo de transferencia elemental por bus Q . . . Send R1 R1 Send R2 R2 Send R3 R3 R1 Load R1 R2 Load R2 R3 Load R3 Q . . . Q . . . D . . . D . . . D . . . B u s
Q . . . Send R1 R1 Send R2 R2 Send R3 R3 R1 Load R1 R2 Load R2 R3 Load R3 Q . . . Q . . . D . . . D . . . D . . . B u s
Puerta TRIESTADO Puertas Triestado y Buses Puerta Triestado Los tres estados de salida son: alto, bajo y alta impedancia (alta Z). Cuando se selecciona el funcionamiento lgico normal, mediante la entrada de habilitacin, el circuito triestado funciona de la misma forma que una puerta normal. Cuando el modo de funcionamiento es de alta impedancia, la salida se desconecta del resto del circuito. Bus: El bus es un sistema digital que transfiere datos entre los componentes de un ordenador o entre ordenadores. Est formado por cables o pistas en un circuito impreso. De datos, de direcciones y de control.
Datos al y desde el bus Volcar datos al bus Se activa la seal de habilitacin (SendR1) de la puerta triestado: son ms de una al mismo tiempo Se mantiene un tiempo suficiente para que se estabilice: es una seal activa por nivel Recoger datos del bus Se activa la seal de carga del registro (LoadR1) Se carga el contenido del bus en ese momento: es una seal activa por flanco Operacin de proceso Parecida a la operacin de transferencia, pero la informacin origen se transforma al pasar por un operador combinacional en su camino hacia el destino Operaciones de proceso: Didicas, dos operadores (ejemplo suma) Mondicas, un operador (ejemplo desplazamiento) El operador genera, adems del resultado, los bits o flags del registro ESTADO que pueden o no cambiar Operaciones de proceso (II) Ejemplo de suma Send RA-BusA Send RB-BusB Load RA Load RB Load RC RA RB RC 1 ? 3 2 t El valor de t tiene que ser tal que d tiempo a la realizacin de la suma en la ALU Diseo de la Unidad de Control UC = circuito combinacional que convierte la combinacin [cdigo de operacin + periodo + estado] en las seales de control precisas para la ejecucin de la instruccin. Hay que definir previamente las seales de control que actan en cada instruccin mquina que debe interpretar la U.C. Hay que definir, no slo las operaciones, si no el orden en que han de realizarse. Cada instruccin llama a la siguiente. Es parte de su trabajo Supongamos un modelo sencillo: COP de 8 bits 32 ciclos por instruccin como mximo, 16 como trmino medio Registro de fases de 5 bits 150 seales de control Diseo de la U.C. (II) 8 (cop) + 5 (RF) + 1 (comparador) = 14 seales binarias de entrada 150 funciones booleanas de salida Alrededor de 4000 posibles entradas Adems, hay que considerar los retardos MUY COMPLICADO
Mtodos de construir y disear una unidad de control: Mediante lgica cableada Mediante lgica almacenada (memoria) U.C. mediante lgica cableada Se construye con puertas lgica y se disea mediante alguno de los mtodos clsicos de diseos lgicos Ventajas: En igualdad de condiciones, una U.C. construida mediante lgica cableada es mucho ms rpida que la construida basada en lgica almacenada. Los computadores rpidos la usan Inconvenientes: Diseo complicado, circuitos muy complejos Difcil de modificar (requiere un rediseo completo)
U.C. mediante lgica almacenada: Microprogramacin Se emplea una memoria para almacenar el estado de las seales de control en cada periodo de cada instruccin. Memoria de control o micromemoria: bastar con ir leyendo una a una las posiciones adecuadas de esta memoria para ejecutar una determinada instruccin mquina A cada palabra se la denomina microinstruccin. Cada microinstruccin tiene un bit por cada seal de control. U.C. mediante lgica almacenada: Microprogramacin La microprogramacin nace con M.V.Wilkes hacia el 1950: Dos memorias A y B construidas como matrices de diodos Las microinstrucciones estn almacenadas en A de donde son ledas mediante un rbol de decodificacin La matriz B contiene la direccin de la siguiente instruccin Registros Almacenamiento temporal interno del CPU. Acceso de alta velocidad. Localizacin de la ltima instruccin. Almacenar instrucciones y datos mientras se ejecuta alguna instruccin.
Dos tipos: Disponibles al usuario. Control y Estado (UC). Disponibles al usuario: Propsito General. AX, BX, CX, DX (H/L).
Registros de Datos.
Registros de Direccin. Propsito general. SI y DI. Direccionamiento. SP, BP, CS, DS, ES, SS, IP.
Banderas (cdigos de condicin). Control: control CPU. Estado: estado de resultados de operaciones aritmticas y lgicas. Control y Estado. Contador de Programa (PC): direccin de la instruccin a ser buscada (siguiente).
Registro de Instruccin (IR): instruccin reciente.
Registro de Direccin de Memoria (MAR): direccin de la localidad de memoria.
Registro de Dato de Memoria (MDR): palabra de memoria mas reciente.
Palabra de Estado de Programa (PSW): cdigos de condicin e informacin de estado. Signo, cero, acarreo, igual, overflow, etc.