Вы находитесь на странице: 1из 20

Circuitos Digitales I Controlador de un Datapath

Organizacin de un computador
Computador = Unidad de proceso + sistema de memoria Unidad de proceso = control + datapath

Organizacin de un computador
Control = mquina de estados Entradas = instrucciones de mquina, condiciones del datapath Salidas= Seales de control de transferencia entre registros , cdigos de operacin de la ALU Datapath = unidades funcionales + registros Unidades funcionales = ALU, multiplicadores, divisores, etc. Registros = Desplazamiento y almacenamiento.
Control
State

Datapath

Transferencia entre registros


Conexin punto a punto Cables dedicados Mux en las entradas de cada registro
MUX rs MUX rt MUX rd MUX R4

Entrada comn de un multiplexor La carga se habilita en cada registro Seales de control para el MUX Bus comn con salida habilitada Habilitaciones para entradas y salidas en cada registro

rs

rt

rd

R4

MUX

rs

rt BUS

rd

R4

Bus comn con salida habilitada


Es la solucin ms simple, requiere que el registro contenga seales de habilitacin de entrada y salida.

Arquitectura para realizar operaciones aritmticas entre los registros A y B.(Datapath)

Lneas a controlar en el datapath


LINEA DE CONTROL WA RA WB RB WAC OPERACIN REALIZADA Guarda el dato del bus en el registro A Lee una palabra del registro A al bus de datos. Guarda el dato del bus en el registro B. Lee una palabra del registro B al bus de datos. Escribe en el registro AC el resultado de la suma. Lee una palabra del registro AC al bus Borra el registro acumulador. Coloca el resultado del AC en el bus de datos

RAC
ZA RSUM

Cin

Acarreo de entrada

Realizar operaciones en la arquitectura


Una operacin aritmtica requiere un conjunto de operaciones elementales (tabla anterior), de forma secuencial. Construir un sistema secuencial que genere los niveles lgicos requeridos para activar las seales de control y realizar una operacin, en un tiempo determinado. A este sistema secuencial se le llama controlador (maquina de estados finitos)

Ejemplo: Controlador
Disear un controlador para realizar la operacin aritmtica A+B, y almacenar el resultado en el registro A. (A=A+B)
COMENTARI O AC=0

CLK

CTRL ZAC

1 2 3 4

RA,WAC, AC=AC+A RAC RB,WAC, AC=AC+B RAC RSUM, WA,RAC A=AC

Operaciones necesarias para A+B


1. ZAC=1

Operaciones necesarias para A+B


2. RA =1, WAC=1,RAC=1

Operaciones necesarias para A+B


3. RB=1, WAC=1,RAC=1

Operaciones necesarias para A+B


4. RSUM=1, WA=1, RAC=1

Ejemplo: Controlador A+B


Consideraciones: Se deben cargar los registros antes de realizar cualquier operacin. La mquina se debe detener despus de la ultima operacin de la secuencia.

Diagrama de estados para el controlador : A+B


Antirrebote
CLK

CTRL Estado inicial

COMENT. Espera seal de inicio AC=0

B C D E
X= pulsador para activar la mquina

ZAC

RA,WAC,RAC AC=AC+A RB,WAC,RAC AC=AC+B RSUM, WA,RAC A=AC

Tabla de transicin de estados (Moore)


E. A.
Q2 Q1 Q0

ESTADO SIGUIENTE
X=0 X=1 WA RA

S
WB

A
RB

S
ZA RSUM Cin

WAC

RAC

(A) 0 0 0 (B) 0 0 1 (C) 0 1 0

000 010 011

001 001 011

0 0 0

0 0 1

0 0 0

0 0 0

0 0 1

0 0 1

0 1 0

0 0 0

0 0 0

(D) 0 1 1
(E) 1 0 0 101 110 111

100
101 000 000 000

100
101 000 000 000

0
1 0 0 0

0
0 0 0 0

0
0 0 0 0

1
0 0 0 0

1
0 0 0 0

1
1 0 0 0

0
0 0 0 0

0
1 0 0 0

0
0 0 0 0

Detector de Clave
Combinacin de clave de acceso:
Digitar 3 valores en secuencia y la puerta abre Si se presenta un error en la clave, se genera la correspondiente seal solo despues de ingresar los tres digitos.

Entradas: Secuencia de valores de entrada, reset, Enter. Salidas: Puerta abierta / error Memoria: Se debe tener almacenada la clave.

Implementacin con diseo secuencial


Codificacin: Cuantos bits por entrada ? Cauntos valores en la secuencia? Como se determina cuando entra un nuevo valor?
new

value

reset

clock

state

open/closed

Data-path y Control
Estructura Interna
data-path
Almacenamiento para la combinacion comparadores

control
Maquina de estado finito (controlador) Control para el data-path Cambio en los estados controlados por reloj new value C1 C2
multiplexer comparator

equal

reset

C3

mux control

controller

clock

equal

datapath

open/closed

Mquina de estado
Controlador
ERR S5 not equal & new S1 closed mux=C1 equal & new not new not equal & new S2 closed mux=C2 equal & new not new S6 not equal & new S3 closed mux=C3 equal & new not new OPEN open S7

reset

Вам также может понравиться