curso de graduação em ciências da computação sistemas ...guntzel/ine5406/sd_aula1ts.pdf · os...
Post on 10-Nov-2018
215 Views
Preview:
TRANSCRIPT
Universidade Federal de Santa CatarinaCentro Tecnológico
Departamento de Informática e EstatísticaCurso de Graduação em Ciências da Computação
Suplemento à Aula 1-TArquiteturas de Somadores Rápidos.
Prof. José Luís Güntzelguntzel@inf.ufsc.br
www.inf.ufsc.br/~guntzel/ine5406/ine5406.html
Sistemas DigitaisSistemas DigitaisINE 5406INE 5406
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.2
Somador Paralelo Tipo Ripple Carry
c0c4
Suponha que no tempo t=0 um par de valores é aplicado às entradas (A,B):• O resultado só estará pronto quando todas as saídas tiverem estabilizado• si e ci+1 só estabilizam após ci estabilizar• Em particular, s3 e c4 só estabilizam depois que c3, c2 e c1 tiverem
estabilizados…
a0 b0
s0
c1c2c3
s1s2s4
a1 b1a2 b2a3 b3
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.3
Analisando a Propagação do CarryOs caminhos críticos em somadores Ripple Carry passampela cadeia de propagação do carry
c0c4
a0 b0
s0
c1c2c3
s1s2s4
a1 b1a2 b2a3 b3
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.4
Pergunta: será que não é possível alterar a arquitetura dosomador, de modo a “quebrar” ou reduzir tal interdependência?
SC
s0
c1
b0a0
SC
s1
c2cnSC
sn
Cn+1
b1a1bnan
c0
Analisando a Propagação do Carry
A resposta é … SIM!!!
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.5
Há três diferentes casos na propagação do carry que sãomutuamente exclusivos:
Caso 1 (sinal Kill )
Quando as entradas A e B dosomador local são iguais a zero,independentemente do carryde entrada, o carry de saídaserá igual a zero e, portanto, oestágio “matará” a propagaçãodo carry do estágio anterior.
0
0
0
0
0
0
1
1
ki
11111
01011
01101
10001
01110
10010
10100
00000
sici+1cibiai
Analisando a Propagação do Carry
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.6
Caso 2 (sinal Generate)
Quando as entradas A e B dosomador local são iguais aum, independentemente docarry de entrada, o carry desaída será igual a um e,portanto, haverá geração decarry neste estágio.
1
1
0
0
0
0
0
0
gi
11111
01011
01101
10001
01110
10010
10100
00000
sici+1cibiai
Analisando a Propagação do Carry
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.7
Caso 3 (sinal Propagate)
Quando uma das entradas, Aou B, do somador local forigual a um e a outra for igual azero, o carry de saída seráigual ao carry de entrada e,portanto, o carry serápropagado.
0
0
1
1
1
1
0
0
pi
11111
01011
01101
10001
01110
10010
10100
00000
sici+1cibiai
Analisando a Propagação do Carry
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.8
Resumindo os três casos do carry, temos:
Analisando a Propagação do Carry
111Generate (gi)
ci01
ci10Propagate (pi)
000Kill (ki)
ci+1biaiCaso
Agora, a idéia é:
• Encontrar uma equação para cada um dos três sinais ( ki, pi e gi)
• Achar as equações de si e ci+1 em função de ki, pi e gi
Mas qual é a vantagem desta “reestruturação lógica”?
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.9
Equações das funções ki , pi e gi são:
ki = ai · bi = ai + bi
pi = ai ⊕ bi
gi = ai · bi
Analisando a Propagação do Carry
111Generate (gi)
ci01
ci10Propagate (pi)
000Kill (ki)
ci+1biaiCaso
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.10
Analisando a Propagação do Carry
111Generate (gi)
ci01
ci10Propagate (pi)
000Kill (ki)
ci+1biaiCaso
Então, usando soma de produtos, o carry out do estágio i podeser definido como:
ci+1 = gi + pi · ci
E a saída “soma” do estágio i pode ser expressa (em função de pie ci) por:
si = ai ⊕ bi ⊕ ci = pi ⊕ ci
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.11
As fórmulas para si e ci+1 geram o mesmo circuito já estudado,com base em dois meio-somadores.
pi = ai ⊕ bi
gi = ai · bi
ci+1 = gi + pi · ci
si = pi ⊕ cici+1
ci
si
bi
pigi
ai
Analisando a Propagação do Carry
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.12
Comparando o Desempenho das Duas Versões
si
ai bi
ci+1 ci
Versão 1 Versão 2
Na versão 2:
• Se gi=1 não é preciso esperar pelo valor de ci para determinar ovalor de ci+1
• Se pi=1 , então já se sabe a priori que ci+1 = ci
ci+1 ci
si
bi
pigi
ai
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.13
1. Reduzir o atraso na geração do carry(aplicada nos somadores Manchester);
2. Diminuir o atraso da cadeia de propagação do carry(aplicada nos somadores Carry-Lookahead, Carry-Select,Carry-Skip, etc.);
3. Mudar o sistema de representação numérica(não será tratado na disciplina).
Somadores Rápidos
Estas soluções investem em desempenho, mas resultam emacréscimo de recursos (número de transistores utilizados).
Para reduzir-se o atraso na propagação do carry as seguintesabordagens podem ser usadas:
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.14
• Este circuito mais rápido pode ser constituído de TransmissionGates ou transistores de passagem;
• Como as situações de kill, propagate e generate sãomutuamente exclusivas, pode-se construir um conjunto dechaves com a seguinte lógica:
- Se ki = 1, então ci+1 = 0
- Se gi = 1, então ci+1 = 1
- Se pi = 1, então ci+1 = ci
Somadores Manchester ChainPrincípio: usar um circuito mais rápido para propagar a
cadeia de carry;
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.15
Somadores Manchester Chain
CC
a0 b0
c0c1
CC
a1 b1
c2
CC
a2 b2
c3
CC
ai bi
Ci+1 Ci
Controle da Cadeia dePropagação do Carry (CC)
Uma Implementação comtransistores de passagem
Cadeia depropagação doCarry
ci+1 ci
ai bi
Vdd
GND
pi
giki
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.16
Somadores Manchester Chain
ci+1 ci
si
ai bi
Vdd
GND
pi
giki
E como seria o somador Manchester Chain completo?
Basta modificar o controleda cadeia de propagaçãodo carry para que elecalcule também a saída si
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.17
• No extremo, todos os carries podem ser computados aomesmo tempo.
• Para o somador Carry-Lookahead, pode-se considerar quenão existe mais a exclusividade mútua entre os sinaisgenerate e propagate.
• Então, a função propagate pode ser simplificada para umsimples “OU” entre as duas entradas, pois se o nível desoma gera carry out (gi = 1), não importa o valor depropagate.
Somadores Carry LookaheadPrincípio: paralelizar o cálculo dos carries
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.18
Assim, para o carry-lookahead temos que:pi = ai + bi
ci+1 = gi + pi · ci
Então:c1 = g0 + p0 · c0
c2 = g1 + p1 · (g0 + p0 · c0)
Expandindo, segue:c2 = g1 + p1 · g0 + p1 · p0 · c0
c3 = g2 + p2 · g1 + p2 · p1 · g0 + p2 · p1 · p0 · c0
c4 = g3 + p3 · g2 + p3 · p2 · g1 + p3 · p2 · p1 · g0 + p3 · p2 · p1 · p0 · c0
Somadores Carry Lookahead
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.19
cin
p0g0p1g1p2g2p3g3
c0c1c2
S3 S2 S1 S0
b0a0b1a1b2a2b3
a3
gen
prop
GAP(Generate andPropagate)
UnidadeCarryLookahead
Soma
Somadores Carry Lookahead
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.20
• Problema com os CLGs: a complexidade da equação docarry cresce muito rapidamente!!!
• Para somadores com entradas usando muitos bits, apropagação do carry com cadeia carry-lookahead é maislenta que um ripple carry.
• Tipicamente, o carry-lookahead não é usado parasomadores com entradas maiores que 4 bits.
Somadores Carry Lookahead
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.21
• Solução: aplicar o lookahead em grupos de somadorescom, no máximo, 4 bits.
• Funções auxiliares P e G são necessárias e indicam,respectivamente:
• Se P = 1, então o carry é propagado pelo grupo.
• Se G = 1, então o grupo gera carry out.
Somadores Carry Lookahead
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.22
b3-0
CLA1 CLA0
a3-0b7-4a7-4
c4
BGP-8
cin
S7-4 S3-0
c4
prop1
cout
gen1
prop0 gen0
gen1 prop1 gen0prop0cin
BGP-8
cout c4
Somadores Carry Lookahead
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.23
Caminho Crítico
c16
CLG-4
c4c8c12
CLA-4
a0
4
b0
4
s0
4
g0 p0
2
s1
4
CLA-4
a1
4
b1
4
g1 p1
2
c4
s3
4
CLA-4
a3
4
b3
4
g3 p3
2
c12
s2
4
CLA-4
a2
4
b2
4
g2 p2
2
c8
CLG-4
c20c24c28
CLA-4
a4
4
b4
4
s4
4
g4 p4
2
s5
4
CLA-4
a5
4
b5
4
g5 p5
2
c20
s7
4
CLA-4
a7
4
b7
4
g7 p7
2
c28
s6
4
CLA-4
a6
4
b6
4
g6 p6
2
c24 c16
c32
c0
Somadores Carry Lookahead
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.24
• Em cada seção de adição são usados dois somadores ( ripplecarry ou carry lookahead) idênticos e um multiplexador
• O multiplexador seleciona um dos dois resultados,utilizando como controle o carry out da seção anterior
Somadores Carry Select
Princípios:
• dividir a adição em seções de 4 ou 8 bits
• realizar a adição de cada seção simultaneamente paraos dois casos possíveis (carry in=0 e carry in=1)
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.25
RCA0
01
cin
A0...3 B0...3
RCA1
A0...3 B0...3
RCA0
RCA1
A4...7 B4...7
A4...7 B4...7
Cin
C03
C13
C07
C17
S0...3
C03C13
0
1 Cin
C03C13
C17C07 Cout
S4...7
Somadores Carry Select com 8 bits(usando somadores RCA…)
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.26
Equações utilizadas pelos MUX de cada seção de soma
B1 = Cin B2 = C03 or (C13 and CIN)
B3 = C07 or (C17 and (C03 or (C13 and CIN))) B4 = C011 or (C111 and (C07 or (C17 and (C03 or (C13 and CIN)))))
B4 =C015 or (C115 and(C011 or (C111 and (C07 or (C17 and (C03 or (C13 and CIN))))))
Somadores Carry Select
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.27
RCA0
01
cin
A0...3 B0...3
RCA1
A0...3 B0...3
RCA0
RCA1
A4...7 B4...7
A4...7 B4...7
Cin
C03
C13
C07
C17
S0...3
C03C13
0
1 Cin
C03C13
C17C07 Cout
Caminho Crítico
S4...7
Atraso crítico = Atraso RCA + Atraso MUX
Somadores Carry Select com 8 bits
Arquiteturas de Somadores Rápidos
Prof. José Luís GüntzelINE/CTC/UFSCSistemas Digitais - semestre 2008/1
slide 1TS.28
RCA0
0
1
cin
A0...3 B0...3
RCA1
A0...3 B0...3
RCA0
RCA1
A28...31 B28...31
A28...31 B28...31
C03
C13
C031
C131
S0...3 0
1
Caminho Crítico
S28...31
Cin
C03C13
C17C07
C011C111
C015
C019
C023
C027
C115
C119
C123
C127
Atraso crítico = Atraso RCA + Atraso Equação + Atraso MUX
Somadores Carry Select com 32 bits
top related