Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouAnasofia Vila Alterado mais de 10 anos atrás
1
MC542 Organização de Computadores Teoria e Prática
2006 Prof. Paulo Cesar Centoducatte Review today, not so fast in future
2
“Fundamentals of Digital Logic with VHDL Design” - (Capítulo 5)
MC542 Circuitos Lógicos Representação de Números e Circuitos Aritméticos “Fundamentals of Digital Logic with VHDL Design” - (Capítulo 5) Review today, not so fast in future
3
Título do Capítulo Abordado Sumário
Representação Posicional Adição de N´´umeros sem Sinal Números com Sinal (sinalizados) Somadores Rápidos Multiplicação Representações de Números Reais
4
Representação Posicional
Representação de Inteiros sem Sinal Sistema Binário: D = dn-1 dn-2 … d1 d0 V(D) = dn-1x10n-1 + dn-2x10n-2 + … + d1x d0x100 B = bn-1 bn-2 … b1 b0 V(B) = bn-1x2n-1 + bn-2xbn-2 + … + b1x21 + b0x20 n-1 = ∑ bix2i i=0
5
Representação Posicional Conversão entre Decimal e Binário
V(B) = bn-1x2n-1 + bn-2xbn-2 + … + b1x21 + b0x20 V(B) = bn-1x2n-1 + bn-2xbn-2 + … + b1x21 + b0 V(B) = bn-1x2n-2 + bn-2xbn-3 + … + b1 + b0 Conversão de Decimal para Binário: Divisão sucessiva por 2
6
Exemplo
7
Octal e Hexadecimal
8
Adição de Números sem Sinal
0 x + + 0 y c s Carry Soma x y c s 1
9
Adição de Números sem Sinal
X = x x x x x ( 15 ) 4 3 2 1 10 + Y = y y y y y ( 10 ) 4 3 2 1 10 Generated carries S = s s s s s ( 25 ) 4 3 2 1 10
10
Adição de Números sem Sinal Somador Completo a partir de ½ Somador
HA c x i HA c c y i + 1 i c i s i x i y i c i + 1
11
Somador Ripple-Carry x y x y x y n – 1 n – 1 1 1 c 1 c c FA c c n n ”
c 1 c c FA c c n n ” 1 2 FA FA s s s n – 1 1 MSB position LSB position
12
Representação de Números Negativos
Sinal e Magnitude b b b n – 1 1 Número sem Sinal Magnitude MSB b b b b n – 1 n – 2 1 Número com Sinal Magnitude Sign 0 denotes + 1 denotes – MSB
13
Representação de Números Negativos
Complemento de 1 Em complemento de “Um” o número negativo K, com n-bits, é obtido subtraíndo seu positivo P de 2n - 1 K = (2n – 1) - P Exemplo: se n = 4 então: K = (24 – 1) – P K = (16 – 1) – P K = (1111)2 - P K = > P = 7 7 = (0111)2 -7 = (1111)2 - (0111)2 -7 = (1000)2
14
Representação de Números Negativos
Complemento de 2 Em complemento de “Dois” o número negativo K, com n-bits, é obtido subtraíndo seu positivo P de 2n K = (2n - 1) P K = 2n - P K = (2n - 1) – P + 1 Exemplo: se n = 4 então: K = 24 – P K = 16 – P K = (10000)2 - P K = > P = 7 7 = (0111)2 -7 = (10000)2 - (0111)2 -7 = (1001)2
15
Representação de Números Negativos
16
Adição e Subtração Complemento de 1
( + 5 ) ( – 5 ) + ( + 2 ) + + ( + 2 ) + ( + 7 ) ( - 3 ) ( + 5 ) ( – 5 ) + ( – 2 ) + + ( – 2 ) + ( + 3 ) 1 ( – 7 ) 1 1 1
17
Adição e Subtração Complemento de 2
( + 5 ) ( – 5 ) + ( + 2 ) + + ( + 2 ) + ( + 7 ) ( – 3 ) ( + 5 ) ( – 5 ) + ( – 2 ) + + ( – 2 ) + ( + 3 ) 1 ( – 7 ) 1 ignore ignore
18
Subtração em Complemento de 2
( + 5 ) – ( + 2 ) – + ( + 3 ) 1 ignore ( – 5 ) – ( + 2 ) – + ( – 7 ) 1 ignore ( + 5 ) – ( – 2 ) – + ( + 7 ) ( – 5 ) – ( – 2 ) – + ( – 3 )
19
Complemento de 2 0000 1111 0001 1110 0010 – 1 + 1 – 2 + 2 1101 0011 – 3 + 3 1100 – 4 + 4 0100 – 5 + 5 1011 0101 – 6 + 6 – 7 + 7 – 8 1010 0110 1001 0111 1000
20
Unidade Somador-Subtrator
y y y n – 1 1 Add Sub control x x x n – 1 1 c n -bit adder c n s s s n – 1 1
21
Overflow Quando há overflow? Como detectar se houve overrflow? ( + 7 )
( – 7 ) + ( + 2 ) + + ( + 2 ) + ( + 9 ) ( – 5 ) c = c = 4 4 c = 1 c = 3 3 ( + 7 ) ( – 7 ) + ( – 2 ) + + ( – 2 ) + ( + 5 ) 1 ( – 9 ) 1 c = 1 c = 1 4 4 c = 1 c = 3 3
22
Somadores Rápidos Carry-Lookahead
Desempenho do somador Ripple Carry de n-bits Se cada somador completo tem um atraso de Δt Então, o atraso de todo o somador será de n Δt
23
Somadores Rápidos Carry-Lookahead
Ci+1 = xiyi + xici + yici Ci+1 = xiyi + (xi + yi)ci Ci+1 = gi + pici Ci+1 = gi + pi (gi-1 + pi-1 ci-1) Ci+1 = gi + pigi-1 + pipi-1ci-1
24
Somadores Rápidos Ripple Carry em termos de g e p
x y x y 1 1 g p g p 1 1 c 1 c c 2 Stage 1 Stage 0 s s 1
25
Somadores Rápidos Carry-Lookahead
x y x y 1 1 x y g p g p 1 1 c c 2 c 1 s s 1
26
Somadores Rápidos Carry-Lookahead
x y x y x y 31 – 24 31 – 24 15 – 8 15 – 8 7 – 7 – c 8 c Block Block Block c c c 32 3 24 16 1 s s s 31 – 24 15 – 8 7 –
27
Carry-Lookahead Hierarquico
x y x y x y 31 – 24 31 – 24 15 – 8 15 – 8 7 – 7 – Block Block Block c 3 c 1 24 G P G P G P 3 3 1 1 s s s 31 – 24 15 – 8 7 – c c c 32 16 8 Second-level lookahead
28
Multiplicação Multiplicando M (14) 1 1 1 0 Multiplicador Q (11) ´
Produto P (154) Multiplicação: lapis e papel
29
Multiplicação Multiplicando M (11) 1 1 1 0 Multiplicador Q (14) ´
Produto Parcial 0 + Produto Parcial 1 + Produto Parcial 2 + Produto P (154)
30
Multiplicação
31
Multiplicação Números com Sinal
Multiplicando M (+14) Multiplicador Q (+11) x Produto Parcial 0 0 0 + Produto Parcial 1 + Produto Parcial 2 + Produto Parcial 3 + Produto P (+154) Multiplicando Possitivo
32
Multiplicação Números com Sinal
Multiplicando M ( 14) – Multiplicador Q (+11) Partial product 0 1 1 + 1 Partial product 1 1 + Partial product 2 1 + 1 Partial product 3 1 + Product P ( 154) – Multiplicando Negativo
33
Representações de Números Reais
Notação Científica: ± Mantissa x 10E Mantissa = x.yyyyyy Se Mantissa não possui zeros a esquerda do ponto decimal -> normalizado Padrão IEEE-754 Normalizado Bit Escondido (-1)s x (1 + Fração) x 2E
34
IEEE-754 de Precisão Simples
32 bits S E M Sign 8-bit 23 bits of mantissa 0 denotes + excess-127 1 denotes – exponent
35
IEEE-754 de Precisão Dupla
64 bits S E M Sign 11-bit excess-1023 52 bits of mantissa exponent
36
IEEE-754 Valores Representados
Exponent Fraction Represents e = 0 = Emim f = 0 e = 0 = Emim f f x 2 Emim e Emax f x 2e e = Emax f = e = Emax f NaN Emim
37
IEE-754: Exemplo -0,75 = -0,11 Normalizando è 1,1 x 2 0 1 1 1 1 1 1 0
10 2 Normalizando è 1,1 x 2 -1 1
38
Qual o decimal correspondente ?
IEE-754: Exemplo Qual o decimal correspondente ? 1 N= - ( ) x 2 ( ) = -1,25 x 4 = -5,0
39
BCD Binary-Coded-Decimal
40
Adição Usando BCD X 0 1 1 1 7 + Y + 0 1 0 1 + 5 Z 1 1 0 0 12 + 0 1 1 0
carry S = 2 X 8 + Y + + 9 Z 17 + carry S = 7
41
Adição Usando BCD
42
Somador BCD - Código VHDL
LIBRARY ieee ; USE ieee.std_logic_1164.all ; USE ieee.std_logic_unsigned.all ; ENTITY BCD IS PORT (X, Y : IN STD_LOGIC_VECTOR(3 DOWNTO 0) ; S : OUT STD_LOGIC_VECTOR(4 DOWNTO 0) ) ; END BCD ; ARCHITECTURE Behavior OF BCD IS SIGNAL Z : STD_LOGIC_VECTOR(4 DOWNTO 0) ; SIGNAL Adjust : STD_LOGIC ; BEGIN Z <= ('0' & X) + Y ; Adjust <= '1' WHEN Z > 9 ELSE '0' ; S <= Z WHEN (Adjust = '0') ELSE Z + 6 ; END Behavior ;
43
Simulação Funcional do Somador BCD
44
? c out Four-bit adder Two-bit adder s 3 2 1 z x y in
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.