Buscar

02 Estrutura de uma ULA Completa

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 46 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Universidade Federal de Santa Catarina
Centro Tecnológico
Departamento de Informática e Estatística
Curso de Graduação em Ciências da Computação
Aula 2-T
1. Projeto de Unidade Lógico-Aritmética (ULA): Funcionamento
e características temporais de registradores. Outros operadores
lógicos e aritméticos. Estrutura de uma ULA completa.
Prof. José Luís Güntzel
guntzel@inf.ufsc.br
www.inf.ufsc.br/~guntzel/ine5406/ine5406.html
Sistemas DigitaisSistemas Digitais
INE 5406INE 5406
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.2
Cadenciamento de Sistemas Digitais 
• A maior parte dos sistemas digitais são sincronizados
por um sinal monótono denominado relógio (ou clock,
em inglês)
• Sistemas digitais cadenciados por sinal de relógio são
denominados síncronos
• No projeto de sistemas digitais síncronos, registradores
são utilizados
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.3
borda
ascendente
borda
descendente
período (T)
nível
altonívelbaixo
Sinal de Relógio (ou Clock)
tempo
Características:
• Período (T): tempo entre duas bordas consecutivas de mesmo tipo.
Medido em submúltiplos do segundo (ms, µs, ns)
• Freqüência: f = 1/T, medida em múltiplos do hertz (kHz, MHz, GHz)
• Duty cycle: T1/T x 100 %, onde T1 é o tempo entre uma borda ascendente
e a borda descendente que a segue.
Nomenclatura
borda ascendente =
borda de subida =
borda positiva =
flanco de subida etc
borda descendente =
borda de descida =
borda negativa =
flanco de descida etc
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.4
Estimativa do Período do Relógio
0
1
0
1
1
0
1
0
1
0
1
0
0
1
1
1
possíveis
caminhos
críticos
• Período mínimo: Tmin > Tpcrit (Tpcrit = atraso do caminho crítico)
• Freqüência máxima: fmax = 1/Tmin
Ri
ck
Ro
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.5
Preliminares:
1 ns (1 nanossegundo) = 1 x 10-9 s
T = 1/f ⇒ f = 1/T
1/1s = 1 Hz
Cálculo:
f = 1/ (10 x 10-9) Hz = 0,1x 10+9 Hz = 100 x 10+6 Hz =
= 100 MHz
Exemplo 1: Estime o período do relógio para um circuito
combinacional cujo atraso crítico é 10 ns.
Estimativa do Período do Relógio
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.6
O Latch RS Controlado
símbolo circuito com portas nor e and
mantém estado anteriorQtXX0
1
1
1
1
C
proibido-11
estado reset001
estado set110
mantém estado anteriorQt00
comentárioQt+1SR
tabela de transição
de estados
R
S
Q
C
Q
R1
S1
Q
Q
R
S
C
Quantos transistores CMOS são necessários?
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.7
O Latch RS Controlado
Diagrama de estados
tabela de transição
de estados
reset set
C=1 ∧ R=0 ∧ S=1
C=1 ∧ R=1 ∧ S=0
C=0 ∨
(C=1 ∧ R=0 ∧ S=0) ∨
(C=1 ∧ R=0 ∧ S=1)
C=0 ∨
(C=1 ∧ R=0 ∧ S=0) ∨
(C=1 ∧ R=1 ∧ S=0)
QtXX0
1
1
1
1
C
-11
001
110
Qt00
Qt+1SR
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.8
Latch D
símbolo circuito a partir do latch RS controlado
estado set111
estado reset001
mantém estado anteriorQtX0
comentárioQt+1DC
R
S
Q
C
Q
D
C
D Q
C Q
tabela de transição
de estados
Quantos transistores CMOS são necessários?
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.9
Latch D
tabela de transição
de estados
111
001
QtX0
Qt+1DC
D Q
C Q
Q
C
D
Q
t1 t2 t3 t4
Exemplo de funcionamento
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.10
Latch D com ativação em lógica completar
tabela de transição
de estados110
000
QtX1
Qt+1DC
Q
C
D
Q
t1 t2 t3 t4D Q
C Q
Exemplo de funcionamento
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.11
D
C
Qm
Q
FF mestre
D Q
C Q
D Q
C Q Q
circuito
Considerando uma
implementação com
portas CMOS, necessita
38 transistores:
2 x 18 + 2 = 38
Flip-flop D Mestre-Escravo
FF escravo
Assumindo que o inversor
possui atraso desprezível,
pode-se considerar que o FF
escravo se comporte como
um FF ativado com lógica
negada…
Comportamento do FF mestre:
111
001
QtX0
Qt+1DC
110
000
QtX1
Qt+1DC
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.12
D
C
Qm
Q
D Q
C Q
D Q
C Q Q
Flip-flop D Mestre-Escravo
Exemplo de funcionamento
C
dado
Qm
Q
111
001
QtX0
Qt+1DC
110
000
QtX1
Qt+1DC
FF mestre FF escravo
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.13
D Q
C Q
símbolo circuito com portas nand
11↑
00↑
QtX≠↑
Qt+1DC
tabela de transição de estados
necessita 24 transistores
D
C
1
Q
Q
2
4
3
5
6
Flip-flop D Disparado Pela Borda Ascendente (ou
sensível à borda ascendente ou à borda de subida…)
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.14
D Q
C Q
Q
C
D
Q
11↑
00↑
QtX≠↑
Qt+1DC
tabela de transição
de estados
Flip-flop D Disparado Pela Borda Ascendente
Exemplo de funcionamento
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.15
Q
C
D
Q
11↓
00↓
QtX≠↓
Qt+1DC
D Q
C Q
tabela de transição
de estados
Flip-flop D Disparado Pela Borda Descendente
Exemplo de funcionamento
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.16
D Q
C Q
clear
limpa
dado
CK
Q
CK
Q
limpa
dado
11↑
00↑
QtX≠↑
Qt+1DC
tabela de transição
de estados
Flip-flop D Disparado Pela Borda Descendente,
com Reset Assíncrono Exemplo de funcionamento
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.17
• Tempo de Preparação - tsu (setup time)
• Tempo de Manutenção - th (hold time)
• Atraso de Propagação - td ou tp (propagation delay)
Latch D*
Flip-flop D**
Q
CK
D
tsu
th
tdtd
Q
tsu
th
td
valor da entrada D
não é amostrado
* ativado com lógica direta
** disparado pela borda de descida
Características Temporais de Latches e Flip-flops
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.18
controle
D Q
C Q
D3
Q3
D Q
C Q
D0
Q0
D Q
C Q
D2
Q2
D Q
C Q
D1
Q1
0123
entradas individuais
saídas individuais
Registrador com Carga Paralela
• Existe um FF para cada bit a ser armazenado
• Todos os FFs “obedecem” a um mesmo sinal de
controle
• O termo “carga paralela” refere-se ao fato de existir
uma entrada para cada bit, de modo que é possível
carregar simultaneamentetodos os bits do dado
Símbolo no nível RT
controle
Reg
4
4
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.19
controle
D Q
C Q
D3
Q3
D Q
C Q
D0
Q0
D Q
C Q
D2
Q2
D Q
C Q
D1
Q1
0123
Registrador com Carga Paralela
Q
controle
D 1001
1001
0101 0011 0000 1001
0101 0011 0000
Exemplo de funcionamento (assumindo dados quaisquer de 4 bits na entrada D)
A cada borda de subida de “controle” um novo dado é amostrado e fica armazenado
no registrador (até a próxima borda de subida de “controle”)
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.20
controle
D Q
C Q
D3
Q3
D Q
C Q
D0
Q0
D Q
C Q
D2
Q2
D Q
C Q
D1
Q1
0123
Registrador com Carga Paralela
• Peculiaridade: a cada borda de subida de “controle” um novo dado é
amostrado, mesmo que não se queira amostrar um dado novo…
• Porém, às vezes pode ser necessário que o registrador obedeça a um sinal
de controle sincronizado com o sinal de relógio. (Solução na próxima
transparência…)
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.21
CK
D Q
C Q
D3
Q3
0
1
D Q
C Q
D2
Q2
0
1
D Q
C Q
D1
Q1
0
1
D Q
C Q
D0
Q0
0
1
0123
carga
Símbolo no nível RT
Registrador com Carga Paralela Controlada
carga
ck Reg
4
4
• Existe um sinal de “carga” e um sinal de relógio (ck)
• A cada borda ativa de “ck” cada FF amostra um valor
de sua respectiva entrada “D”:
– Se carga=0, cada FF amostra seu respectivo “Q”
– Se carga=1, cada FF amostra um valor externo “Di”
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.22
Registrador com Carga Paralela Controlada
CK
D Q
C Q
D3
Q3
0
1
D Q
C Q
D2
Q2
0
1
D Q
C Q
D1
Q1
0
1
D Q
C Q
D0
Q0
0
1
0123
carga
D
ck
carga
1001
1001
0101 0011 0000 1001
0000Q
Exemplo de funcionamento (assumindo dados quaisquer de 4 bits na entrada D)
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.23
Registradores & Operadores Aritméticos
ck R1
n
R2
n
+/-
n n
n
op
R3
ck
ck
A cada borda de relógio,
este circuito faz:
R3 ← R1 + R2 ou
R3 ← R1 − R2
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.24
Registradores & Operadores Aritméticos
ck
R1
n
R2
n
op
R3
ck
ck
+/−
ck
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.25
Registradores & Operadores Aritméticos
CR
ck R1
n
CR
ck R2
n
+/-
n n
n
op
CR
ck R3
Se CR=1, a cada borda de
relógio, este circuito pode
fazer:
R3 ← R1 + R2 ou
R3 ← R1 − R2
Enquanto CR=0, após
cada borda do relógio os
conteúdos de R1, R2 e R3
não sofrem alteração.
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.26
Registradores & Operadores Aritméticos
Este circuito pode ser
“programado” para fazer
(p.ex.):
R1 ← A;
R2 ← B;
Enquanto (condição)
{
 R1 ← R1 + R2;
 R2 ← B;
}
R1
n
CR2
ck R2
n
+/-
n n
n
op
C1
n
0 1
A B
CR1
ck
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.27
CK
dado
(entrada serial)
reset
Q3
D
C Q
3
clear
Q
Q2
D
C Q
2
clear
Q
Q0
D
C Q
0
clear
Q
Q1
D
C Q
1
clear
Q
Registrador de Deslocamento à Direita
Símbolo no nível RT
desloca
Reg desl
4
4
• Existe um sinal de “desloca”
• A cada borda ativa de “desloca” cada FF amostra o
valor da saída “Q” do FF adjacente à esquerda
• O FF mais à esquerda lê um bit da entrada “dado”, a
qual corresponde a uma “entrada serial”
• Este registrador também pode ser visto como um
registrador com carga serial…
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.28
CK
reset
dado
Q3
Q2
Q1
Q0
CK
dado 
(entrada serial)
limpa
Q3
D
C Q
3
clear
Q
Q2
D
C Q
2
clear
Q
Q0
D
C Q
0
clear
Q
Q1
D
C Q
1
clear
Q
Registrador de Deslocamento à Direita
Exemplo de funcionamento
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.29
Registrador de Deslocamento à Direita
controlado
Complete as ligações faltantes
CK
D Q
C Q
Q3
0
1
D Q
C Q
Q2
0
1
D Q
C Q
Q1
0
1
D Q
C Q
Q0
0
1
0123
desloca
Entrada
serial
Quantos ciclos de relógio será preciso manter “desloca”=1 até preencher
o conteúdo deste registrador?
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.30
ULA Simples
Suponha que se necessite de uma Unidade Lógico-Aritmética
(ULA) capaz de realizar as seguintes operações
S = A OR B
S = A AND B
S = A − B
S = A + B
operação
“E” bit a bit01
“OU” bit a bit11
subtração10
adição00
comentárioC0C1
Símbolo no nível RT
ULA
A B
S
C
n n
n
overflow 2
Obs: o sinal de overflow pode ou não
ser necessário…
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.31
ULA Simples
S = A OR B
S = A AND B
S = A − B
S = A + B
operação
01
11
10
00
C0C1
Visão Geral desta ULA
+/-
A B
S
C0
n n
n
AND/OR
bit a bit
C1
n
n
0 1
S=A-B1
S=A+B0
operaçãoC0
S=A OR B1
S=A AND B0
operaçãoC0
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.32
ULA Simples
Visão de um bit desta ULA
(os demais bits serão similares)
SC
s0
c1
b0a0
C1
0 1
C0
0 1
S = A OR B
S = A AND B
S = A − B
S = A + B
operação
01
11
10
00
C0C1
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.33
ULA Simples
Mas onde foi parar o overflow?
Voltando ao projeto do todo…
+/-
A B
S
C0
n n
n
AND/OR
bit a bit
C1
n
n+1
0 1
overflow
“0”
noverflow
n+1
n+1
n n
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.34
Representando Dados com n bits (nível RT)
+/-
n n
n
overflow
n
overflow
n+1
+/-
n n
Uma ULA para operandos
com n bits cada
Indicando como um número
de n+1 bits é composto
Convenção para indicar
que o bit menos
significativo está mais à
direita
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.35
S
n+1
noverflow
n
“0”
n+1
“Decompondo” um número
de n+1 bits em um número de
n bits e mais um sinal
Indicando como um número
de n+1 bits é composto
(outro exemplo)
Representando Dados com n bits (nível RT)
1. Projeto de Unidade Lógico-Aritmética
Prof.José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.36
ULA Simples
Exercício 2: Acrescentar à ULA recém projetada uma
saída de 1 bit chamada zero, que sinaliza se o resultado da
operação é zero (“flag de zero”)
Símbolo no nível RT
ULA
A B
S
C
n n
n
overflow 2
zero
S = 01
S != 00
significadozero
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.37
ULA Simples
Exercício 2: Solução
+/-
A B
S
C0
n n
n
AND/OR
bit a bit
C1
n
n+1
0 1
overflow
“0”
noverflow
n+1
n+1
n n
zero =0?
n
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.38
ULA Simples
Exercício 2: Então o problema se resume a projetar um
circuito combinacional capaz de testar se número de n bits
vale zero ou não…
S = 01
S != 00
significadozero
zero
=0?
n
S
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.39
Testando Números
Exercício 3: Projete um circuito comparador capaz de
testar se dois números são iguais entre si. Seu
funcionamento deve seguir a tabela abaixo.
A = B1
A != B0
significadoiguais
iguais
Comp.
n
B
n
A
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.40
Um deslocador (shifter) com uso de multiplexadores 2:1
• Se desloca=1, este circuito desloca cada bit uma posição para a
esquerda
• Qual é o significado desta operação?
entrada 
serial
10
A0
S0
10
A1
S1
10
A2
S2
10
A3
S3
desloca 
Deslocador Combinacional
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.41
Outro deslocador (shifter) com uso de multiplexadores 2:1
entrada 
serial
1 0
A0
S0
1 0
A1
S1
1 0
A2
S2
1 0
A3
S3
desloca 
• Se desloca=1, este circuito desloca cada bit uma posição para a direita
• Qual é o significado desta operação?
Deslocador Combinacional
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.42
Multiplicação com Circuito Combinacional
• É uma implementação direta
do esquema ao lado
• Cada bit dos produtos parciais
é gerado por meio de um “E”
lógico
x
1 0 0 1
1 0 1 1
+
1 0 0 1
1 0 0 1 -
0 0 0 0 - -
1 0 0 1 - - -
1 1 0 0 0 1 1
multiplicador
resultado
multiplicando
produtos
parciais
O Multiplicador Matricial
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.43
O Multiplicador Matricial (p/ Números s/ Sinal)
A0 B0A0 B1A0 B2
A1 B0A1 B1A1 B2
Somador de 3 bitsCarry outA2 B0A2 B1A2 B2
0
M0M1M2M3M4M5
Somador de 3 bitsCarry out
Multiplicação com Circuito Combinacional
• Para multiplicar dois números
de n bits são necessários n-1
somadores de n bits
• Problemas:
– Custo
– Atraso crítico!
caminho crítico
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.44
O Símbolo no Nível RT
3
X
3
Y
6
S
*
O Multiplicador Matricial (p/ Números s/ Sinal)
Multiplicação com Circuito Combinacional
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.45
O Multiplicador Matricial Pipeline
Multiplicação com Circuito Combinacional
• Passo 1: todos os
produtos parciais são
gerados
• Passo 2: os produtos
parciais são somados de
dois em dois
• Passo 3: os resultados do
passo anterior são
somados de dois em dois
• …
1. Projeto de Unidade Lógico-Aritmética
Prof. José Luís GüntzelINE/CTC/UFSC
Sistemas Digitais - semestre 2008/2
slide 2T.46
Registradores
de pipeline
O Multiplicador Matricial Pipeline
Multiplicação com Circuito Combinacional
+
n n
n
+
n n
n
+
n n
n
+
n n
n
+
n n
n
+
n n
n
+
n n
n
1o estágio
2o estágio
3o estágio
O Atraso crítico fica dividido por 3
(ou por 4 se contarmos o estágio de
geração dos produtos parciais

Outros materiais

Outros materiais