Você está na página 1de 13

Arquitectura de Computadores

Unidade de Controlo (7.1 a 7.4)


Jose Monteiro
Licenciatura em Engenharia Informatica e de Computadores
Departamento de Engenharia Informatica (DEI)
Instituto Superior Tecnico
16 de Abril, 2009
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 1 / 12
Sumario da Aula
micro-operacoes sobre uma unidade de processamento
unidade de controlo
maquinas de estado
especicacao
uxograma
diagrama de estados
projecto
maquinas de Mealy vs maquinas de Moore
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 2 / 12
Separacao entre Unidade de Controlo e Unidade de
Processamento
Unidade de
controlo
Unidade de
processamento
Entradas de
controlo
Operandos
Resultados
Palavra de
controlo
Bits de
estado (flags)
Sadas de
controlo
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 3 / 12
Unidade de Processamento
Banco
de
registos
ULA
Palavra de
controlo
Bits de
estado
Operandos
Resultado
k
m
n
n n
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 4 / 12
Banco de Registos
Banco de 8
registos
A
SelA
Escrita
SelB
SelD
D
B
n
3
3 3
n n
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 5 / 12
Tabela de Micro-operacoes da ULA
S
4
S
3
S
2
S
1
S
0
Microoperacao
00000 R A + B soma
00001 R A B subtraccao
00010 R A + B + C soma com bit transporte
00011 R A B C subtraccao com transporte negado
00100 R A 1 decremento
00101 R A + 1 incremento
00110 R A C decremento, se C = 0
00111 R A + C incremento, se C = 1
01-00 R A complemento
01-01 R A B conjuncao
01-10 R A B disjuncao
01-11 R A B disjuncao exclusiva
10000 R shr A deslocamento logico `a direita
10001 R shl A deslocamento logico `a esquerda
10010 R shra A deslocamento aritmetico `a direita
10011 R shla A deslocamento aritmetico `a esquerda
10100 R ror A rotacao `a direita
10101 R rol A rotacao `a esquerda
10110 R rorc A rotacao `a direita com transporte
10111 R rolc A rotacao `a esquerda com transporte
11- - - R A transferencia
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 6 / 12
Exemplo: Maior Divisor Comum
Pseudo-codigo:
Maior Divisor Comum(X, Y)
1. enquanto (Y=0){
2. se XY
3. entao X=X-Y
4. se nao, troca X com Y
5. }
6. resultado em X
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 7 / 12
Unidade de Processamento Dedicada
n
xMy
Rx Ry
A
Ldx
MUX
1 0
Sel
n
Ld Ld
B
A>=B
A B
A-B
Ldy Zy Z
n
0
1
RX>=Ry
T1
Ry=0
inicio
0
1
fim
0 1
T0
Rx Rx-Ry
Rx Ry
Ry Rx
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 8 / 12
Unidade de Processamento Dedicada
n
xMy
Rx Ry
A
Ldx
MUX
1 0
Sel
n
Ld Ld
B
A>=B
A B
A-B
Ldy Zy Z
n
0
1
RX>=Ry
T1
Ry=0
inicio
0
1
fim
0 1
T0
Rx Rx-Ry
Rx Ry
Ry Rx
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 8 / 12
Circuito Sequencial Sncrono
combinatrio
Realimentao
primrias
Circuito
primrias
Entradas
Sadas
R
e
g
i
s
t
o
s
CLK
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 9 / 12
Unidade de Controlo para Maior Divisor Comum
xMy
Ldx
Ldy
Zy
D Q
Q
incio
fim
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 10 / 12
Diagrama Temporal para Maior Divisor Comum
Estado
Incio
Fim
Rx
Ry
LDx
LDy
xMy
Zy
Clk
T0 T1 T1 T1 T1 T1 T1
54
36
18 0
36
36 54
36 18 18
18
18
18
0 0
18
T0 T0
18
0
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 11 / 12
Maquinas de Mealy vs Maquinas de Moore
R
e
g
i
s
t
o
s
R
e
g
i
s
t
o
s
Entradas Sadas Entradas
Sadas
Lgica
de gerao
de sadas
e do
prximo
estado
Lgica
do prximo
estado
de gerao
de sadas
Lgica
CLK CLK
Mquina de Moore Mquina de Mealy
Jose Monteiro (DEI / IST) Arquitectura de Computadores 2009-04-16 12 / 12

Você também pode gostar