Está en la página 1de 24

William Stallings Organizacin y arquitectura de computadoras

Captulo 14 La unidad de control Juan Meza

La Unidad de Control

Arquitectura de Computadoras

Micro-Operaciones
Una computadora ejecuta un programa Ciclo de captacin/ejecucin Cada ciclo tiene un nmero de etapas

Ver pipelining

Llamadas micro-operaciones Cada paso hace muy poco Operacin atmica del CPU

La Unidad de Control Arquitectura de Computadoras 2

Elementos que constituyen un programa en ejecucin


Ejecucin de un programa

Ciclo de instruccin

Ciclo de instruccin

...

Ciclo de instruccin

Captacin

Indirecto

Ejecucin

Interrupcin

OP

OP

OP

OP

OP Arquitectura de Computadoras 3

La Unidad de Control

Captacin - 4 Registros

Memory Address Register (MAR)


Conectado al bus de direcciones Especifica la direccin para una operacin de lectura/escritura

Memory Buffer Register (MBR)


Conectado al bus de datos Tiene los datos a escribir o los datos leidos en la ltima lectura

Program Counter (PC)


Tiene la direccin de la siguiente instruccin a ser captada

Unidad de Control La Instruction

Register (IR) Computadoras Arquitectura de

Tiene la ltima instruccin captada

Secuencia de captacin
La direccin de la siguiente instruccin est en PC La direccin (MAR) se pone en el bus de direcciones La unidad de control emite un comando de lectura Los resultados (datos de la memoria) aparecen en el bus de datos Los datos del bus de datos se copian en MBR PC se incrementa en 1 (en paralelo con los datos captados de la memoria) Los datos (instrucciones) se mueven de MBR a IR Unidad de Control La MBR queda libre para prximas captaciones de Arquitectura de Computadoras 5 datos

Secuencia de captacin (simblica)


t1: MAR <- (PC) t2: MBR <- (memoria) PC <- (PC) +1 t3: IR <- (MBR) (tx = unidad de tiempo/ciclo de reloj) o t1: MAR <- (PC) t2: MBR <- (memoria) t3: PC <- (PC) +1 IR <- (MBR)
Arquitectura de Computadoras 6

La Unidad de Control

Reglas para agrupar ciclos de reloj


Debe seguirse la secuencia correcta de eventos


MAR <- (PC) debe preceder MBR <- (memoria)

Deben evitarse conflictos


No se debe leer y escribir el mismo registro al mismo tiempo MBR <- (memoria) e IR <- (MBR) no deben de estar en el mismo ciclo

Tambin: PC <- (PC) +1 es una suma


Usa la ALU Puede necesitar micro-operaciones adicionales

La Unidad de Control

Arquitectura de Computadoras

Ciclo indirecto

MAR <- (IRdireccin) - campo direccin de IR MBR <- (memoria) IRdireccin <- (MBRdireccin) MBR contiene una direccin IR est en el mismo estado que si no se hubiera usado direccionamiento indirecto (Qu dice esto sobre el tamao de IR?)
Arquitectura de Computadoras 8

La Unidad de Control

Ciclo de interrupcin
t1: MBR <-(PC) t2: MAR <- direccin de salvaguarda PC <- direccin de la rutina t3: memoria <- (MBR) Esto es un mnimo

Puede haber micro-operaciones adicionales para obtener la direccin Guardar el contexto lo hace la rutina de manejo de interrupcin, no las micro-operaciones
La Unidad de Control Arquitectura de Computadoras 9

Ciclo de ejecucin (ADD)


Diferente para cada instruccin ej. ADD R1,X aade el contenido de la direccin X al registro 1, resultado en R1

t1: MAR <- (IRdireccin) t2: MBR <- (memoria) t3: R1 <- R1 + (MBR)

La Unidad de Control Arquitectura de Computadoras 10

Ciclo de ejecucin (ISZ)

ISZ X - incrementa y salta si es cero


t1: t2: t3: t4: MAR <- (IRdireccin) MBR <- (memoria) MBR <- (MBR) + 1 memoria <- (MBR) if (MBR) == 0 then PC <- (PC) + 1

Notes:
La comprobacin y actuacin puede implantarse como una microoperacin Esta puede ejecutarse durante la misma unidad de tiempo en la cual el valor actualizado de MBR se guarda en memoria

La Unidad de Control

Arquitectura de Computadoras

11

Ciclo de ejecucin (BSA)

BSA X Salta y guarda la direccin


La direccin de la instruccin que viene a continuacin de la instruccin BSA, se guarda en la posicin X La ejecucin continua de X+1 t1: MAR <- (IRdireccin) MBR <- (PC) t2: PC <- (IRdireccin) memoria <- (MBR) t3: PC <- (PC) + 1

La Unidad de Control

Arquitectura de Computadoras

12

Requisitos funcionales
Definir los elementos bsicos del procesador Describir las microoperaciones que ejecuta el procesador Determinar las funciones que debe realizar la unidad de control

La Unidad de Control

Arquitectura de Computadoras

13

Elementos bsicos del procesador


ALU Registros Caminos de datos internos Caminos de datos externos Unidad de control

La Unidad de Control

Arquitectura de Computadoras

14

Tipos de microoperacin
Transferencia de datos entre registros Transferencia de datos de registro a externo Transferencia de datos de externo a registro Hacer operaciones aritmticas o lgicas

La Unidad de Control

Arquitectura de Computadoras

15

Funciones de la unidad de control

Secuenciamiento
Hace que el CPU avance a travs de una serie de microoperaciones

Ejecucin
Hace que se ejecute cada microoperacin

Esto se hace usando seales de control


Arquitectura de Computadoras 16

La Unidad de Control

Seales de control (1)

Reloj
Una micro-instruccin (o conjunto de microinstrucciones paralelas) por ciclo de reloj

Registro de instruccin
Op-code para la instruccin actual Determina que micro-instrucciones se ejecutan

La Unidad de Control

Arquitectura de Computadoras

17

Seales de control (2)

Banderas
Estado del CPU Resultado de operaciones previas

Del bus de control


Interrupciones Reconocimiento

La Unidad de Control

Arquitectura de Computadoras

18

Seales de control - salidas

Internas al CPU
Causan movimiento de datos Activan funciones especficas de la ALU

Via bus de control


A memoria A mdulos de E/S

La Unidad de Control

Arquitectura de Computadoras

19

Ejemplo de seales de control Captacin

MAR <- (PC)


La unidad de control activa una seal que abre las puertas entre MAR y PC

MBR <- (memoria)


Abre las puertas entre MAR y el bus de direcciones La memoria lee seales de control Abre las puertas entre el bus de datos y MBR

La Unidad de Control

Arquitectura de Computadoras

20

Organizacin interna
Usualmente un solo bus interno Las puertas controlan el movimiento de datos dentro y fuera del bus Las seales de control controlan la transferencia de hacia y desde el bus externo del sistema Se aaden dos registros temporales para el funcionamiento correcto de la ALU

La Unidad de Control Arquitectura de Computadoras 21

Implementacin cableada (1)


Entradas de la unidad de control Las banderas y el bus de control


Cada bit tiene un significado

Registro de instruccin
El Op-code causa seales de control diferentes por cada instruccin Por cada op-code hay una lgica nica El decodificador toma la entrada codificada y produce una sola salida n entradas binarias y 2n salidas

La Unidad de Control

Arquitectura de Computadoras

22

Implementacin cableada (2)

Reloj
Emite una secuencia repetitiva de pulsos til para medir la duracin de las microoperaciones Debe ser lo suficientemente largo para permitir la propagacin de seaes Diferentes seaes de control en diferentes tiempos dentro del ciclo de instruccin Necesitan un contador con diferentes seales de control para t1, t2 etc.

La Unidad de Control

Arquitectura de Computadoras

23

Problemas con la implementacin alambrada


El secuenciamiento y la lgica de microoperaciones es compleja Difcil de disear y probar Diseo inflexible Difcil aadir nuevas instrucciones

La Unidad de Control

Arquitectura de Computadoras

24

También podría gustarte