Está en la página 1de 46

ARQUITECTURAS DE

COMPUTADORES
2 CURSO INGENIERA TCNICA
EN INFORMTICA DE GESTIN
Tema 2. La Unidad Central de Proceso 1
EN INFORMTICA DE GESTIN
TEMA 2 UNIDAD DE CONTROL
JOS GARCA RODRGUEZ
JOS ANTONIO SERRA PREZ
La Unidad Central de Proceso
Introduccin
Empleo de buses
Fases de Ejecucin de las Instrucciones
Introduccin
Establecimiento de las fases
La ruta de datos
Unidad de Control
El procesador
Tema 2. La Unidad Central de Proceso 2
Unidad de Control
identificacin de las seales de control
Activacin de las seales de control
Diseo de la Unidad de control
Mtodo de la tabla de estados
Mtodo del Contador de secuencia
Abstraccin de la mquina
Conclusiones
Introduccin
Mecanismo de ejecucin de las instrucciones
Diseo de la Unidad de Control
EL procesador
Unidad de
proceso
Direccin
Datos
Tema 2. La Unidad Central de Proceso 3
proceso
Unidad de
Control
Unidad de
Memoria
Datos
Lectura
Escritura
Repertorio de instrucciones elegido
Instrucciones
Formato tipo 1
7 0
COP
8 bits
Tema 2. La Unidad Central de Proceso 4
Operacin Sintaxis Descripcin Cd. Oper.
Suma ADD r1
1 r A A +
30h, 31h, 32h, 33h, 45h
Resta SUB r1
1 r A A
18h, 19h, 1Ah, 1Bh, 46h
And ANA r1
1 r and A A
20h, 21h, 22h, 23h, 48h
Or ORA r1
1 r or A A
24h, 25h, 26h, 27h, 49h
Repertorio de instrucciones elegido
Instrucciones
Formato tipo 2
15 8 7 0
COP dato
8 bits 8 bits
Tema 2. La Unidad Central de Proceso 5
Operacin Sintaxis Descripcin Cd. Oper.
Suma Inmediata ADI dato
dato A A +
35h
Resta Inmediata SUI dato
dato A A
36h
And Inmediata ANI dato
dato and A A
68h
Or Inmediata ORI dato
dato or A A
69h
Repertorio de instrucciones elegido
Instrucciones
Formato tipo 3
23 16 15 8 7 0
COP DesplazamientoL DesplazamientoH
8 bits 8 bits 8 bits
Tema 2. La Unidad Central de Proceso 6
Operacin Sintaxis Descripcin Cd. Oper.
Cargar LDA dir
) (dir M A
70h
Almacenar STA dir
A dir M ) (
71h
Salto incondicional JMP dir
dir PC
74h
Salto si FZ=1 JZ dir
dir PC 1 FZ Si =
72h
Ruta de datos con bus nico
Empleo de
de buses
Bus nico de datos de 8 bits
Bus nico de direcciones de 16 bits
Necesidad de registros temporales para liberar al bus
Tema 2. La Unidad Central de Proceso 7
A TEMP
B. R.
Memoria
HL
ALU
Ruta de datos con dos buses
Empleo de
de buses
2 buses de 8 bits
Comunicacin con la memoria a travs de HL
Enlace de bus
Tema 2. La Unidad Central de Proceso 8
A
B. R.
Memoria
HL
Enlace
ALU
Ruta de datos con tres buses
Empleo de
de buses
3 buses de 8 bits
Comunicacin con la memoria a travs de HL
Enlace de bus
Enlace
Tema 2. La Unidad Central de Proceso 9
A
B. R.
Memoria HL
ALU
Fases de ejec. de las instrucciones
Introduccin Diseo disparado por
flanco.
Cada fase de ejecucin
durar un ciclo de reloj.
La duracin del ciclo de
reloj depender de la
Bsqueda de
la instruccin
Decodificacin
Bsqueda del
Ejecucin
Tema 2. La Unidad Central de Proceso 10
reloj depender de la
duracin de la accin ms
lenta.
No se puede realizar una
lectura y una escritura en
el banco de registros en el
mismo ciclo de reloj.
Bsqueda del
operando
Ejecucin
Almacenamiento
del resultado
Preparacin
de la I. siguiente
Consideraciones
Funciones bsicas de la MaNoTas:
Acceso al Banco de Registros
Acceso a la Memoria
Operaciones en la ALU
Suposiciones:
El tiempo de estas funciones es igual a un ciclo de reloj.
Fases de
ejecucin
Tema 2. La Unidad Central de Proceso 11
El tiempo de estas funciones es igual a un ciclo de reloj.
El coste del resto de los elementos es cero.
Las acciones asociadas a una fase ocurren en
paralelo.
Las acciones asociadas a fases sucesivas
ocurren en serie.
Establecimiento de las fases
Fases de
ejecucin
RIM[PC]
PCPC + 1
Decodificacin
TEMPr1
LM[PC]
PC PC+1
(Z)=1
Fase 1
Fase 2
Fase 3
ADD,SUB,ANA,ORA
LDA,STA,JMP JZ
TEMPM[PC]
PC PC+1
ADI,SUI,ANI,ORI
PC Pc+1

PC Pc+1

Tema 2. La Unidad Central de Proceso 12


PC PC+1
AA op TEMP
AM(HL) M(HL)A
Fase 4
Fase 5
STA
LDA
HM[PC]
PC PC+1
PC PC+1
AA op TEMP
PCHL+1
Fase 6
JMP
LM[PC]
PC PC+1
HM[PC]
PC PC+1
PCHL+1
si
Establecimiento de las fases (1)
Fase 1: Bsqueda de la instruccin
RI M[PC]
PC PC + 1
Fases de
Ejecucin
Tema 2. La Unidad Central de Proceso 13
Fase 2. Decodificacin
Estas dos fases son comunes a todas las instrucciones
Establecimiento de las fases (2)
Fase 3: Obtencin de operandos y
evaluacin del cdigo de condicin Z.
Caso I. Instrucciones Aritmtico-Lgicas
Modo de direccionamiento directo a registro
TEMP r1
Modo de direccionamiento inmediato
Fases de
Ejecucin
Tema 2. La Unidad Central de Proceso 14
Modo de direccionamiento inmediato
TEMP M[PC] (TEMP dato)
PC PC +1
Caso II. Instrucciones de referencia a memoria y salto
incondicional
L M[PC] (L DirL)
PC PC +1
Caso III. Instruccin de salto condicional
Z?
Establecimiento de las fases (3)
Fase 4: Obtencin de operandos, ejecucin
y conclusin de las instrucciones
Aritmtico-Lgicas.
Caso II. Instrucciones Aritmtico-Lgicas
A A op TEMP
Fases de
Ejecucin
Tema 2. La Unidad Central de Proceso 15
Caso II. Instrucciones de referencia a memoria y salto
incondicional
H M[PC] (H DirH)
PC PC +1
Caso III. Instruccin de salto condicional
L M[PC] (L DirL)
PC PC +1
Establecimiento de las fases (4)
Fase 5: Conclusin de las instrucciones de
acceso a memoria y salto incondicional y
obtencin de operandos.
Caso II. Instrucciones de referencia a memoria
Instruccin de carga
A M[HL]
Fases de
Ejecucin
Tema 2. La Unidad Central de Proceso 16
A M[HL]
Instruccin de almacenamiento
M[HL] A
Caso II. Instruccin salto incondicional
PC HL +1
Caso III. Instruccin de salto condicional
H M[PC] (H DirH)
PC PC +1
Establecimiento de las fases (5)
Fase 6: Conclusin de la instruccin de
salto condicional.
PC HL +1
Fases de
Ejecucin
Tema 2. La Unidad Central de Proceso 17
Diagrama de fases final
Fases de
ejecucin
RIM[PC]
PCPC + 1
Decodificacin
Evalucin de Z
TEMPr1
LM[PC]
PCPC+1
Fase 1
Fase 2
Fase 3
ADD,SUB,ANA,ORA
LDA,STA,JMP JZ si Z=1
TEMPM[PC]
PCPC+1
ADI,SUI,ANI,ORI
LM[PC]
PCPC+1
PC Pc+1

PC Pc+1

JZ si Z=0
Tema 2. La Unidad Central de Proceso 18
PCPC+1
AA op TEMP
AM(HL) M(HL)A
Fase 4
Fase 5
STA
LDA
HM[PC]
PCPC+1
PCPC+1
AA op TEMP
PCHL+1
JMP
HM[PC]
PCPC+1
PCHL+1
La ruta de datos
Fases de
ejecucin
PC
SP
HL
RI
MX
0
1
2
MEMORIA
+1
1
direccin
dato
Tema 2. La Unidad Central de Proceso 19
A TEMP
R. E.
ALU
Banco
de
Registros
M
X
Modificacin
Identificacin de las seales de control
(1)
Unidad
de Control
Seales de control de salida para el banco de registros
Seal Descripcin
CONTROL DE BANCO DE REGISTROS
Tema 2. La Unidad Central de Proceso 20
CONTROL DE BANCO DE REGISTROS
SELreg1
SELreg0
Seleccionan el registro al que se desea acceder del banco de registros: B,
C, D o E.
Lreg Si se encuentra activada (valor 1), permite que el dato que se encuentra en
el bus se almacene en el registro seleccionado.
Sreg Si se encuentra activada (valor 1) permite que el dato que se encuentra en
el registro seleccionado aparezca en el bus. En caso contrario
Identificacin de las seales de control
(2)
Unidad
de Control
Seales de control de salida para la memoria y la ALU
Seal Descripcin
CONTROL DE LA MEMORIA
Lmem Seal de lectura de la memoria. Si su valor es 1, el dato almacenado en la
posicin de memoria que hay en el bus de direciones se coloca en el bus de
datos.
Emem Seal de escritura de la memoria. Si su valor es 1, el dato que se encentra
en el bus de datos se almacena en la posicin de memoria que hay en el
Tema 2. La Unidad Central de Proceso 21
en el bus de datos se almacena en la posicin de memoria que hay en el
bus de direcciones.
SDir2
SDir1
Seales de control al multiplexor que selecciona el dato a escribir en el bus
de direcciones para acceder a una posicin de memoria. Dependiendo de
su valor se acceder a la posicin de memoria especificada por el registro
PC, SP o HL..
CONTROL DE LA UNIDAD ARITMTICA Y LGICA
ALU2
ALU1
ALU0
Estas tres seales de control determinan la operacin a realizar por la ALU:
suma, resta, and, or , or exclusiva, incremento y decremento.
Salu Si se encuentra activada permite que el resultado de la ALU aparezca en el
bus de datos.
Identificacin de las seales de control
(3)
Unidad
de Control
Seales de control de salida para el registro de estado
Seal Descripcin
CONTROL DEL REGISTRO DE ESTADO
LF Si se encuentra activa, carga los datos de la entrada en el registro de
estado. El dato puede provenir de la ALU o del registro acumulador.
SF Si se encuentra activa, escribe en el bus de datos el contenido del registro
Tema 2. La Unidad Central de Proceso 22
SF Si se encuentra activa, escribe en el bus de datos el contenido del registro
de estado.
SelO Seal de control a un multiplexor que selecciona como dato a escribir en el
registro de estado como flag de Overflow, el bit 2 del registro acumulador o
el indicador de overflow procedente de la ALU.
SelC Seal de control a un multiplexor que selecciona como dato a escribir en el
registro de estado como flag de Carry, el bit 1 del registro acumulador o el
indicador de Carry procedente de la ALU.
SelZ Seal de control a un multiplexor que selecciona como dato a escribir en el
registro de estado como flag de Cero, el bit 0 del registro acumulador o el
indicador de Cero procedente de la ALU.
Identificacin de las seales de control
(4)
Unidad
de Control
Seales de control de salida para los registros y
seales de control de entrada.
Seal Descripcin
CONTROL DE REGISTROS
Lri Si est activa, el dato que se encuentra en el bus de datos se guardar en el registro de instruccin.
Lpc Si esta activa, ordena la carga del registro Contador de Porgrama con el dato que se encuentra a su entrada.
LspL Si est activa, ordena la carga de la parte baja del registro SP con el dato que se encuentra en el bus de datos.
LspH Si est activa, ordena la carga de la parte alta del registro SP con el dato que se encuentra en el bus de datos.
Tema 2. La Unidad Central de Proceso 23
Isp Si est activa, incrementa el contenido del registro SP en una unidad.
Dsp Si est activa, decrementa el contenido del registro SP en una unidad.
LdirL Si est activa, ordena la carga de la parte baja del registro HL con el dato que se encuentra en el bus de datos.
LdirH Si est activa, ordena la carga de la parte alta del registro HL con el dato que se encuentra en el bus de datos.
Lac Si esta activa, el dato que se encuentra en el bus de datos se guardar en el registro acumulador.
Sac Si est activa, el contenido del registro acumulador aparecer en el bus de datos.
Ltemp Si est activa, el dato que se encuentra en el bus de datos, se guardar en el registro temporal que se encuentra en la
segunda entrada de la ALU.
ENTRADAS DE CONTROL
Z Representa el indicador Z generado por la ALU.
COP Cdigo de operacin, es el contenido del registro de Intruccin (RI).
Identificacin de las seales de control
(5)
Unidad
de Control
Seales de control a los multiplexores, Banco de
registros y la ALU.
SELreg1 SELreg0 Registro
0 0 B
0 1 C
1 0 D
1 1 E
SDir2 SDir1 Direccin
0 0 PC
0 1 SP
1 0 HL
1 1 No utilizada
Tema 2. La Unidad Central de Proceso 24
ALU2 ALU1 ALU0 Operacin
0 0 0 Suma
0 0 1 Resta
0 1 0 And
0 1 1 Or
1 0 0 Xor
1 0 1 Incremento
1 1 0 Decremento
1 1 1 No utilizado
SelO Accin SelC Accin SelZ Accin
0 OALUO
0 CALUC
0 ZALUZ
1 OA2
1 CA1
1 ZA0
Ruta de datos y control
Unidad
de Control
PC
SP
MX
0
1
+1
1
Lpc Isp Dsp LspL
LDirH SDir2,1 LspH LDirL
Lri
Lmem
Emem
ALU2,1,0
LTemp
Lac
Sac
Lreg
Sreg
SELreg1, 0
LF
SF
SelZ
Salu
UNIDAD
DE
CONTROL
direccin
Tema 2. La Unidad Central de Proceso 25
A TEMP
SP
HL
RI
R. E.
MX
1
2
MEMORIA
ALU
Banco
de
Registros
M
X
direccin
dato
Activacin de las seales de control
Unidad
de Control
No se considerarn las instrucciones: ADD A, SUB A, ANA A y ORA A
Fases Operacin Activacin de seales
FASE1
RI M[PC]
PC PC + 1
SDir2, SDir1(=00), Lmem, Lri,
Lpc
FASE 2
Decodificacin y
evaluacin de Z
FASE3
ADD, SUB, ANA, ORA TEMP r1 SELreg1,SELreg0 (=r1), Sreg, Ltemp
Tema 2. La Unidad Central de Proceso 26
ADD, SUB, ANA, ORA TEMP r1 SELreg1,SELreg0 (=r1), Sreg, Ltemp
ADI, SUI, ANI, ORI TEMP M[PC]
PC PC + 1
Ltemp, Lmem, SDir2, Sdir1(=00)
Lpc
LDA, STA, JMP, JZ L M[PC]
PC PC + 1
LdirL, Lmem, SDir2, Sdir1(=00)
Lpc
FASE 4
Aritmtico-Lgicas A A op TEMP ALU2, ALU1, ALU0 (=operacin), Salu, Lac
Transferencia y salto H M[PC]
PC PC + 1
LdirH, Lmem, SDir2, Sdir1(=00)
Lpc
FASE 5
LDA A M(HL) SDir2,SDir1 (=10), Lmem,Lac
STA M(HL) A SDir2,Sdir1 (=10), Emem, Sac
JMP, JZ PC HL + 1 Sdir2,Sdir1 (=10), Lpc
Fase 1 en la ejecucin de LDA
Unidad
de Control
PC
SP
MX
0
1
+1
1
Lpc Isp Dsp LspL
LDirH SDir2,1 LspH LDirL
Lri
Lmem
Emem
ALU2,1,0
LTemp
Lac
Sac
Lreg
Sreg
SELreg1, 0
LF
SF
SelZ
Salu
UNIDAD
DE
CONTROL
direccin
Tema 2. La Unidad Central de Proceso 27
A TEMP
HL
RI
R. E.
2
MEMORIA
ALU
Banco
de
Registros
M
X
dato
Fase 2 en la ejecucin de LDA
Unidad
de Control
PC
SP
MX
0
1
+1
1
Lpc Isp Dsp LspL
LDirH SDir2,1 LspH LDirL
Lri
Lmem
Emem
ALU2,1,0
LTemp
Lac
Sac
Lreg
Sreg
SELreg1, 0
LF
SF
SelZ
Salu
UNIDAD
DE
CONTROL
direccin
Tema 2. La Unidad Central de Proceso 28
A TEMP
SP
HL
RI
R. E.
1
2
MEMORIA
ALU
Banco
de
Registros
M
X
dato
Fase 3 en la ejecucin de LDA
Unidad
de Control
PC
MX
0
+1
1
Lpc Isp Dsp LspL
LDirH SDir2,1 LspH LDirL
Lri
Lmem
Emem
ALU2,1,0
LTemp
Lac
Sac
Lreg
Sreg
SELreg1, 0
LF
SF
SelZ
Salu
UNIDAD
DE
CONTROL
direccin
Tema 2. La Unidad Central de Proceso 29
A TEMP
SP
HL
RI
R. E.
MX
1
2
MEMORIA
ALU
Banco
de
Registros
M
X
direccin
dato
Fase 4 en la ejecucin de LDA
Unidad
de Control
PC
SP
MX
0
1
+1
1
Lpc Isp Dsp LspL
LDirH SDir2,1 LspH LDirL
Lri
Lmem
Emem
ALU2,1,0
LTemp
Lac
Sac
Lreg
Sreg
SELreg1, 0
LF
SF
SelZ
Salu
UNIDAD
DE
CONTROL
direccin
Tema 2. La Unidad Central de Proceso 30
A TEMP
HL
RI
R. E.
2
MEMORIA
ALU
Banco
de
Registros
M
X
dato
Fase 5 en la ejecucin de LDA
Unidad
de Control
PC
SP
MX
0
1
+1
1
Lpc Isp Dsp LspL
LDirH SDir2,1 LspH LDirL
Lri
Lmem
Emem
ALU2,1,0
LTemp
Lac
Sac
Lreg
Sreg
SELreg1, 0
LF
SF
SelZ
Salu
UNIDAD
DE
CONTROL
direccin
Tema 2. La Unidad Central de Proceso 31
A TEMP
SP
HL
RI
R. E.
MX
1
2
MEMORIA
ALU
Banco
de
Registros
M
X
direccin
dato
LDA dir
Unidad
de Control
00
Sdir2-1
L
Lri
LPc
00 00 02 ZZ
Tema 2. La Unidad Central de Proceso 32
LPc
LDirL
LDirH
LAc
Fase
B y P I. S.
Deco
Fase
Ejecucin
Diseo de la Unidad de Control
Control Cableado.
Implementacin en Hardware, por lo tanto muy rpido.
No es flexible: una modificacin posterior implica cambiar el
circuito entero.
Control Microprogramado.
Representacin programada para el control.
Diseo de
la Unidad
de Control
Tema 2. La Unidad Central de Proceso 33
Representacin programada para el control.
Ms lento, al tener que acceder a la memoria de control.
Flexible, permite cambios posterior sin tener que modificar el
circuito entero.
Dos mtodos para el diseo de la Unidad de
Control Cableada
Mtodo de la tabla de estados
Mtodo del contador de secuencia
Mtodo de la tabla de estados
Basada en una mquina de estados finitos.
Una mquina de estados finitos consta:
Memoria Interna que contiene el estado y
Dos funciones combinacionales:
La funcin de estado siguiente
La funcin de salida
Unidad
de Control
Cableada
Tema 2. La Unidad Central de Proceso 34
La funcin de salida
Cada estado corresponde a un ciclo de reloj y contiene las
operaciones a realizar en ese ciclo.
La funcin de estado siguiente es una funcin combinacional que
a partir de las entradas y el estado actual determina el estado
siguiente.
La funcin de salida produce el conjunto de seales de control a
partir de sus entradas y el estado actual.
Grafo de estados
Mtodo
de la tabla
de estados
0/S0
1/S1
C.Op.=XXXX
Z=X
35h, 36h, 68h, 69h,X
70h, 71h, 74h ,X
72h, 1
30h,18h, 20h, 24, X
C.Op.=72h
Z=0
Tema 2. La Unidad Central de Proceso 35
8/S8 3/S3
24h,X
XX,X
9/S9
XX,X
10/S10
12/S12
11/S11
XX,X
XX,X
70h,X
6/S6 7/S7 5/S5 4/S4
30h,X
18h,X
20h,X
69h,X
XX,X
XX,X
XX,X
XX,X
2/S2
35h,X 36h,X
68h,X
71h,X
72h,74h,X
Funcin de salida
Mtodo
de la tabla
de estados
Funcin salida Estados
Seales control 0 1 2 3 4 5 6 7 8 9 10 11 12
Lri 1 0 0 0 0 0 0 0 0 0 0 0 0
SDir2,1 00 XX XX 00 XX XX XX XX 00 00 10 10 10
Lmem 1 0 0 1 0 0 0 0 1 1 1 0 0
Emem 0 0 0 0 0 0 0 0 0 0 0 1 0
Lpc 1 0 0 1 0 0 0 0 1 1 0 0 1
LspL 0 0 0 0 0 0 0 0 0 0 0 0 0
LspH 0 0 0 0 0 0 0 0 0 0 0 0 0
Como instrucciones Aritmtico-Lgicas se consideran nicamente: Add B, SUB B, ANA B y ORA B
Tema 2. La Unidad Central de Proceso 36
LspH 0 0 0 0 0 0 0 0 0 0 0 0 0
Isp 0 0 0 0 0 0 0 0 0 0 0 0 0
Dsp 0 0 0 0 0 0 0 0 0 0 0 0 0
LdiirL 0 0 0 0 0 0 0 0 1 0 0 0 0
LdirH 0 0 0 0 0 0 0 0 0 1 0 0 0
SELreg1,0 XX XX 00 XX XX XX XX XX XX XX XX XX XX
Lreg 0 0 0 0 0 0 0 0 0 0 0 0 0
Sreg 0 0 1 0 0 0 0 0 0 0 0 0 0
Lac 0 0 0 0 1 1 1 1 0 0 1 0 0
Sac 0 0 0 0 0 0 0 0 0 0 0 1 0
Ltemp 0 0 1 1 0 0 0 0 0 0 0 0 0
ALU2,1,0 XXX XXX XXX XXX 000 001 010 011 XXX XXX XXX XXX XXX
Salu 0 0 0 0 1 1 1 1 0 0 0 0 0
Sel0 X X X X 0 0 0 0 X X X X X
SelC X X X X 0 0 0 0 X X X X X
SelZ X X X X 0 0 0 0 X X X X X
LF 0 0 0 0 1 1 1 1 0 0 0 0 0
SF 0 0 0 0 0 0 0 0 0 0 0 0 0
Funcin de estado siguiente
Mtodo
de la tabla
de estados
INSTRUCCIN E3 E2 E1 E0 PE3 PE2 PE1 PE0
0 0 0 0 0 0 0 1
72h,0 (JZ) 0 0 0 1 0 0 0 0
30h,18h,20h,24h,X (ADD,SUB,ANA,ORA) 0 0 0 1 0 0 1 0
35h,36h,68h,69h,X (ADI,SUI,ANI,ORI) 0 0 0 1 0 0 1 1
70h,71h,74h,X (LDA,STA,JMP);72h,1 (JZ) 0 0 0 1 1 0 0 0
30h,X ( ADD) 0 0 1 0 0 1 0 0
18h,X (SUB) 0 0 1 0 0 1 0 1
20h,X (ANA) 0 0 1 0 0 1 1 0
24h,X (ORA) 0 0 1 0 0 1 1 1
35h,X (ADI) 0 0 1 1 0 1 0 0
Tema 2. La Unidad Central de Proceso 37
35h,X (ADI) 0 0 1 1 0 1 0 0
36h,X (SUI) 0 0 1 1 0 1 0 1
68h,X (ANI) 0 0 1 1 0 1 1 0
69h,X (ORI) 0 0 1 1 0 1 1 1
0 1 0 0 0 0 0 0
0 1 0 1 0 0 0 0
0 1 1 0 0 0 0 0
0 1 1 1 0 0 0 0
1 0 0 0 1 0 0 1
70h,X (LDA) 1 0 0 1 1 0 1 0
71h,X (STA) 1 0 0 1 1 0 1 1
72h,74h , X (JMP, JZ) 1 0 0 1 1 1 0 0
1 0 1 0 0 0 0 0
1 0 1 1 0 0 0 0
1 1 0 0 0 0 0 0
Implementacin de la Unidad de Control
Unida de control
construida como una
mquina de estados
finitos.
Mtodo
de la tabla
de estados
Lgica de
Control
Salidas
Isp, Dsp
LdirH, LdirL
SELreg1,SELreg0
Lreg,Sreg
Lac, Sac
Ltemp
ALU1,Alu1,ALu0
Salu
LspH, LspL
Lri
SDir2, SDir1
Lmem
Emem
Lpc
Tema 2. La Unidad Central de Proceso 38
El circuito
combinacional podra
implementarse
mediante una ROM o
una PLA.
Entradas
Registro
de estado
Cdigo de Operacin
y Flag Z
Salu
SelO,SelC,SelZ
LF,SF
PE3
PE2
PE1
PE0
E0 E1 E2 E3 Z C3 C2 C1 C0 C7 C6 C5C4
Implementacin de la Unidad de Control
Un PLA (array lgico programable) es un elemento lgico
programable de propsito general para implementar
cualquier funcin combinacional.
Un PLA est formado por:
Un conjunto de entradas y salidas
Mtodo
de la tabla
de estados
Tema 2. La Unidad Central de Proceso 39
Un conjunto de entradas y salidas
Un conjunto de puertas AND que forma un conjunto de
trminos productos.
Un conjunto de puertas OR cada uno de los cuales forma
una suma lgica de cualquiera de los trminos producto.
Un conjunto de inversores para las entradas
Dos matrices de conexin modificables (AND y OR)
Implementacin de la Unidad de Control
Mtodo
de la tabla
de estados
En
0
Ea
0
En
8
...
Ea
3
Ea
1
Ea
2
S0 S1 S1 S1 S1 S12 S1
30h 18h 20h 24h 72h,1
......
......
......
......
......
......
Tema 2. La Unidad Central de Proceso 40
Lri, Lmem,Lpc
Sdir2,1=00
123
2
.......
.
.......
.
1
Salida
...
...
Array OR
345
......
......
......
1
3......
......
......
1
Ef
0
1
Ef
1
1
Ef
2
1
Ef
3
2
SELreg1,0=00
Sreg,Ltemp
Implementacin de la Unidad de Control
El tamao de un PLA es igual a la suma del tamao del
array de puertas AND y el tamao del array de puertas OR.
Para MaNoTaS = (13xnmero diferentes trminos
producto) + (32xnmero trminos suma).
Un PLA es ms eficiente que una ROM ya que en lugar de
Mtodo
de la tabla
de estados
Tema 2. La Unidad Central de Proceso 41
Un PLA es ms eficiente que una ROM ya que en lugar de
almacenar la tabla de verdad completa, realiza una suma
de productos mnima.
La programacin de un PLA es ms difcil que una ROM.
Mtodo del contador de secuencia
Basado en un contador
mdulo K cuyas salidas
se conectan a un
decodificador
generndose una seal
individual por cada fase.
El contador atraviesa
Unidad
de Control
Cableada
reloj Puesta a cero
Contador
Mdulo K
DECODIFICADOR

1

2

k
Tema 2. La Unidad Central de Proceso 42
El contador atraviesa
cclicamente sus K estados.
El decodificador genera K
seales pulsadas {
j
} que
son las seales de fase.
Todas las fases tienen la
misma duracin igual a un
ciclo de reloj.

3
fases
Implementacin de la Unidad de Control
Cada seal de control se obtiene de:
Mtodo del
Contador
de Fases
ADD
SUB
Contador de fases
Puesta a cero
0 1
2
3
Lri
4

=
j m
l j i S c m I
Tema 2. La Unidad Central de Proceso 43
Z
STA
JMP
JZ
ANA
ORA
ADI
SUI
ANI
Lgica de control
combinacional
Salidas
Decodificado
r de
instruccione
s
IR[8-0]
Isp, Dsp
LdirH, LdirL
SELreg1,SELreg0
Lreg,Sreg
Lac, Sac
Ltemp
ALU1,Alu1,ALu0
Salu
SelO,SelC,SelZ
LF,SF
LspH, LspL
Lri
SDir2, SDir1
Lmem
Emem
Lpc
ORI
LDA
Ejemplos de funciones lgicas
Funciones lgicas de salida para algunas seales de
control.
Mtodo
del Contador
de Fases
Seal Funcin lgica de salida
( )
Tema 2. La Unidad Central de Proceso 44
Puesta a cero
( )
) Z JZ jmp ( 12 sta 11 lda 10
) ani ana ( 6 ) sui sub ( 5 ) adi add ( 4 Z JZ 14
+ + + +
+ + + + + + +

Lpc
( ) Z jz jmp sta lda ori ani sui adi 2 0 + + + + + + + +
ALU1

+ + + ori ora ani ana 3


ALU0
( ) ori ora sui sub 3 + + +
Emem
sta 4

Abstraccin de la mquina
CONTROL
BUS de control
MaNoTas
Tema 2. La Unidad Central de Proceso 45
MEMORIA
RUTA DE
DATOS
BUS de
direcciones
BUS de datos
ROCESADOR
Conclusiones
La estructura de la ruta de datos influye sobre el
establecimiento de las fases.
La estructura del repertorio de instrucciones influye sobre la
ruta de datos.
La Unidad de Control cableada es muy eficiente puesto que las
Conclusiones
Tema 2. La Unidad Central de Proceso 46
seales de control se activan directamente por Hardware.
Es adecuada cuando el conjunto de instrucciones no es demasiado
complejo.
Tiene la desventaja de ser poco flexible ante modificaciones
posteriores.
Los mtodos de diseo de la UC estudiados son equivalentes,
diferencindose en la mayor o menor facilidad de obtener las
funciones lgicas de las seales de control.