sistemas digitais - web.fe.up.ptaja/sd2004_05/docs/slides_001_036.pdf · v 1.00 09052003 sistemas...

18
V 1.00 09052003 Sistemas Digitais 2002/2003 - FEUP/DEEC - José Carlos Alves 1 1 FEUP/DEEC - Sistemas Digitais http://www.fe.up.pt/~jca/feup/sd Sistemas Digitais (EEC1204) Licenciatura em Engenharia Electrotécnica e de Computadores http://www.fe.up.pt/~jca/feup/sd 1º ano, 2º semestre José Carlos Alves (gabinete I228) email: [email protected] 2 FEUP/DEEC - Sistemas Digitais http://www.fe.up.pt/~jca/feup/sd Sistemas Digitais Docentes José Carlos Alves ([email protected]) - aulas teóricas Hélio Sousa Mendonça ([email protected]) - aulas práticas WWW http://www.fe.up.pt/~jca/feup/sd Bibliografia – J.F.Wakerly, Digital Design – Principles and Practices, Prentice Hall, 3rd Edition, 2000 (http://www.ddpp.com) Apontamentos em produção (cap. 1, 2, 3 e 4 já disponíveis) Transparências usadas nas aulas teóricas (com notas de apoio)

Upload: phamphuc

Post on 26-Jan-2019

220 views

Category:

Documents


0 download

TRANSCRIPT

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 1

1FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Sistemas Digitais(EEC1204)

Licenciatura em Engenharia Electrotécnica e de Computadores

ht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

1º ano, 2º semestre

José Carlos Alves (gabinete I228)

emai l : j ca@f e. up. pt

2FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Sistemas Digitais• Docentes

– José Carlos Alves (j ca@f e. up. pt ) - aulas teóricas

– Hélio Sousa Mendonça (hsm@f e. up. pt ) - aulas práticas

• WWW– ht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

• Bibliografia– J.F.Wakerly, Digital Design – Principles and Practices, Prentice

Hall, 3rd Edition, 2000 (ht t p: / / www. ddpp. com)

– Apontamentos em produção (cap. 1, 2, 3 e 4 já disponíveis)

– Transparências usadas nas aulas teóricas (com notas de apoio)

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 2

3FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Aulas práticas• Exercícios

– Caderno de exercícios

– Exames anteriores de SD e correcções

– Exames anteriores de Electrónica Digital (LEIC)

• Laboratório– Análise e projecto de sistemas digitais (4 aulas)

• Com o sistema de projecto da XILINX– ht t p: / / www. xi l i nx. com

– Usando o FEUPix (disponível nos laboratórios)

» Requer o softwarede projecto da XILINX» ht t p: / / www. f e. up. pt / ~j ca/ FEUPi x

4FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Avaliação• Avaliação distribuída sem exame final

– 2 provas intercalares de avaliação (12 valores)• 1 hora, no horário das aulas teóricas

• 6 valores cada

– 3 exercícios retirados de provas anteriores (8 valores)• 30 min. no final das aulas práticas

• cotação– exercício 1 e 2: 2.5 valores cada; exercício 3: 3 valores

– O caderno de exercícios é obrigatório para as aulas práticas!

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 3

5FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Calendário 2003/2004Fev Mar Abr Mai Jun

Prova intercalar de avaliação: 28 de Abril e 9 de Junho (na aula teórica)

Exercícios: semanas de 22 de Março, 19 de Abril e 24 de Maio

Laboratórios: semanas de 24 de Fevereiro, 31 de Março e 2 de Junho

IntroduçãoRepresentação de informação

Álgebra de BooleCircuitos lógicos combinacionais

Circuitos lógicos sequenciais

Introdução à electrónica digital

1 2 3 4 5 6 7/P 7/P 8 9 10 11 12 13 14 15

6FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Sistemas Digitais – o que são?

• Processamento de informação– Informação representada em binário (1 e 0)

– Electrónico: pequeno e barato (e fácil de projectar...)

– Função do sistema digital• define a relação entre entradas e saídas digitais

entradas saídas

10101001 00111011sistemadigital

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 4

7FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Sistemas (electrónicos) digitais

• importantes áreas de aplicação – computação pessoal (PCs, PDAs, calculadoras)

– comunicações móveis

– televisão digital

– áudio digital

– automóvel (ABS, air-bags, controlo do motor)

– controlo industrial

– simuladores

– diversão

– ...

8FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Evolução• “melhoria” exponencial dos circuitos integrados

– maior rapidez, menor tamanho e energia consumida – lei de Moore: cada 18 meses o tamanho reduz para metade

• gerações de computadores– sistemas electromecânicos (1944)– válvulas electrónicas (1946)

• ENIAC: 5000 adições por segundo, 140KW, 30 tons.

– transístores (1958)– circuitos integrados (1965)– microprocessador (1972)– circuitos integrados de alto nível de integração (VLSI)

• PC actual: 4000000000 adições por segundo, 140W, 3Kg

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 5

9FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Um sistema electrónico actual

10FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Dispositivos electrónicos

Transístor

Circuito integrado SSI(Small Scale Integration)dezenas de transístores Circuito integrado VLSI

(Very Large Scale Integration)milhões de transístores

0 10 20 mm

MSI, LSI

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 6

11FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Circuitos integrados

35 mm2

9 mm2

área de silício

0 10 20 mm

12FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Fase final do fabrico de um CI(backend)

Wafer

Lead frame

circuitoencapsulado

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 7

13FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Circuitos integrados

densidade de integração: dezenas de milhões de transístores num chiprapidez: uma adição de números inteiros em 0.0000000005 s (0.5 ns)energia: poucos watts em trabalho, alguns µwatt em repouso

1.5µárea A

0.7µárea 0.22A

0.13µárea 0.0075A

0.35µárea 0.054A

área e “ tamanho” do processo de fabrico

1992 2001 2003

0.09µárea 0.0036A

14FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Controlo digital de um depósito de águaelectro-válvula

nível máximo

nível mínimo

sistemadigital

decontrolo

entradade água

saída de água

CHEIO

VAZIO

ABRE

Apenas é importante saber se foi atingidoou não o nível máximo ou o nível mínimo

Como escrever um programaque realize a função de controlo digital?

ABRE = 0;enquant o l i gado

se VAZI O == 0ABRE = 1;

senão se ABRE == 1

se CHEI O == 1ABRE = 0;

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 8

15FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Controlo analógico do depósito de água

bóia

entradade água

saída de água

válvula

O caudal de água varia de forma contínuacom o nível de água no tanque

Qual é a relação entre o nível de água e o caudal que a válvula deixa entrar?

16FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Digital vs. analógico

t

caudal digi tal

válvula abre válvula fecha

caudal máximo

caudal mínimo(zero)

t

caudal analógico

descarga

caudal máximo

caudal mínimo(zero)

enchimento

a subida do nivel da águavai fechando a válvula

bóia

entradade água

saída de água

válvula

electro-válvula

nível máximo

nível mínimo

sistemadigi tal

decontrolo

entradade água

saída de água

CHEIO

VAZIO

ABRE

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 9

17FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Lâmpada ligada (1) e desligada (0)

t

220V

0V

180V

40V

240V

t

estado dalâmpada

lâmpada ligada (1)

lâmpada desligada (0)

estado indefinido

ligada

desligada

períodos de transição

0 1 10

18FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Interface com o mundo

• Entradas (naturalmente) digitais:– Interruptores: ligado (1) ou desligado (0)– Botões de pressão: premido (1) ou não premido (0)– Sensores de luz, proximidade, etc...

• Saídas digitais:– LED: aceso (1) ou apagado (0)– Motor: em movimento (1) ou parado (0)– Electro-íman, válvulas, torneiras, etc...

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 10

19FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Zeros e uns?

• Informação codificada em 2 estados: 0 e 1– “0” representado por tensões eléctricas baixas

– “1” representado por tensões eléctricas altas

• Circuitos electrónicos digitais– construídos com interruptores (transistores)

– Entendem as entradas como “0” ou “1” ...

– ... e produzem na saída tensões altas ou baixas

20FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Circuitos digitais

B

AA.B

B

AA+B

A A

E(AND)

OU(OR)

NÃO(NOT)

função lógica símbolo (porta lógica) tabela de verdade

AA0 11 0

A B A.B0 0 00 1 01 0 01 1 1

A B A+B0 0 00 1 11 0 11 1 1

B

A

CF(A,B,C) = ((C+B).A)+(A.B)

A B C F(A,B,C)0 0 0 00 0 1 00 1 0 10 1 1 11 0 0 01 0 1 11 1 0 11 1 1 1

3.5V

0V

1.5V

5V

CMOS

1

0

2.7V

0V0.8V

5V

TTL

1

0

regiõesinvál idas

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 11

21FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Texto

�����������

��� ��������� 85, 109, 32, 116, 101, 120, 116, 111, 13, 10101, 109, 32, 65, 83, 67, 73, 73

nova linha

códigos ASCII (em decimal)caracteres

ASCII - American Standard Code for Information Interchange

22FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Áudio

t

127

-127

63

31

95

0

-95

-31

-63

-19 32 87 94 80 14 -43...amplitude do sinal nos instantes de amostragem:

período de amostragem (125µs para fs=8KHz)

sinal analógicoamostraA

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 12

23FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Imagens

67 74 86

Um pixel

Maria Eugénia de Oliveira Botelho1921

24FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Interface analógico-digital

A/ DV(t)

101100101100

D/ A

101100101100

V(t)

V( t)

t

127

63

0

-63

t

-127

A

sinal analógico original

sinal digital

127

63

0

-63

t

-127

A

t

V( t)

sinal digital

sinal analógico reconstruído

V( t)

t

sinal analógico: original e reconstruído

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 13

25FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Mostradores com LEDs

abcdefg

ab

cd

e

fg

a=1

b=1c=0d=1e=1f=0

g=1

a=0b=1c=1

d=0e=0f=1

g=1

a=0

b=1c=1d=0e=0f=0

g=0

entradas

LEDs

26FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Representação de informaçãoem binário

• Sistemas Digitais processam dados– Codificados apenas com “0” e “1”

Um bit (binary digit): Duas coisas diferentes:números, cores, estados, etc...

N bits: 2N entidades diferentes

Exemplo: com 3 bits: 000, 001, 010, 011, 100, 101, 110, 111

Como representar números usando “0” e “1”?

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 14

27FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Representação de números

• Números inteiros– Sistema posicional

Em base 10 (10 dígitos: 0,1,2,3,4,5,6,7, 8 e 9)

45210 = 4x102+5x101+2x100

Em base 2 (2 dígitos, 1 e 0)

11012 = 1x23+1x22 +0x21 +1x20 = 1310

Potências inteiras de 2

20=1, 21=2, 22=4, 23=8, ... 27=128, 28=256, ...

28FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Representação de números

• Como representar um número em base 2?– Dividindo sucessivamente por 2:

37 217 18 2

1 0 9 21 4 2

0 2 20 1

Bit menos significativo (o da direita, LSB)

Bit mais significativo (o da esquerda, MSB)3710 = 1001012

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 15

29FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Números fraccionários

• À direita do ponto fraccionário– Potências negativas da base:

Representar a parte fraccionária em base 2• Multiplicando sucessivamente por 2:

Em base 10:

35.7210 = 3x101+5x100 +7x10-1 +2x10-2

Em base 2:

110.1012 = 1x22+1x21 +0x20 +1x2-1 +0x2-2 +1x2-3

= 6.62510

0.7210 : 0.72x2 = 1.440.44x2 = 0.880.88x2 = 1.760.76x2 = 1.52 ...

30FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Sistema octal (base 8)

• Caso especial porque 8=23

– cada dígito octal é representado por 3 bits• 2348 = 0100111002

• 67.158= 110111.0011012

– interesse: “ compactar” representação binária

– exemplo: comando chmod (unix/linux)• chmod 542 f i l ename

– muda permissões para r-xr---w- (5428=1011000102)

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 16

31FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Sistema hexadecimal (base 16)

• Caso especial porque 16=24

– 16 dígitos: 0 a 9 e A a F (A vale 10, F vale 15)

– cada dígito hex é representado por 4 bits• 2B416 = 0010101101002

• AA.1C16= 10101010.000111002

– interesse: “ compactar” representação binária

– mudanças entre base 8 e 16• fácil usando base 2!

32FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Adição binária

4 3 4 78 9 1 4

1 3 2 6 1+

111 transporte0

1 1 0 10 1 0 0

1 0 0 0 1+

011 transporte0

um mais um dá dois (102)

escreve-se 0 e gera-se o transporte 1para a soma seguinte

1 34

1 7+

em decimal

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 17

33FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Subtracção binária

1 1 0 1

1 0 1 01 1

-

adicionar o borrowao diminuidor

+ 10 1 1 0

1 1 0 10 1 1 0

1-

um para dois (102) dá 1

zero para um dá um

1 1 0 10 1 1 0

1 1-

borrow

101 0 0 10 1 1 0

1 1-

correcção

- 1

subtrair o borrowdo diminuendo

1 1

1 1 0 11 0 1 00 1 1 1

-

zero para um dá umum para um dá zero

1 0 0 10 1 1 0

1 1 1-

um para doisdá um e vai um...

borrow

10

usou-se um 1 do andar seguinte(gerou-se um borrow)

0 0 0 10 1 1 00 1 1 1

-

- 1

subtrair o borrowdo diminuendo

1

correcçãozero para zero dá zero

1 1 0 1

1 1 1 00 1 1 1

-+1

0 1 1 0

um para um dá zero

adicionar o borrowao diminuidor

34FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Multiplicação binária

1 0 1 10 1 0 11 0 1 1

0 0 0 0 01 0 1 1 0 0

+ 0 0 0 0 0 0 00 1 1 0 1 1 1

x

zero vezes 1011

um vezes 1011

1 15

5 5x

em decimal

Multiplicar X por 2N

equivale a deslocar os bits de X de N posições para a esquerda

2610 = 00110102

26x4=10810 = 11010002

V 1.00 09052003

Sistemas Digitais 2002/2003 - FEUP/DEEC -José Carlos Alves 18

35FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Divisão binária

1 0 0 1 0 1 1 1 1 0 1

0 0 0 0

divisor não cabe em 1divisor não cabe em 1001

...

1 0 0 1 0 1 10 1 1 0 10 0 1 0 1

1 1 0 1- 0 0 0 0 1

divisor já cabe em 10010subtrai divisorao dividendo

1 0 0 1 0 1 10 1 1 0 10 0 1 0 1 1

1 1 0 1- 0 0 0 0 1 0

divisor não cabe em 1011próximo dígito

1 0 0 1 0 1 10 1 1 0 10 0 1 0 1 1 10 0 0 1 1 0 10 0 0 1 0 1 0

1 1 0 1- 0 0 0 0 1 0 1

-

resto

quociente

próximo dígito

divisor já cabe em 10111subtrai divisorao dividendo

36FEUP/DEEC - Sistemas Digitaisht t p: / / www. f e. up. pt / ~j ca/ f eup/ sd

Dimensão de dados e overflow

1 0 0 10 0 1 11 1 0 0

+

1 1 0 00 1 1 1

1 0 0 1 1+

1 transporte = 1: ocorre overflow

( 1 2 )( 5 )( 3 )

( 9 )( 3 )

( 1 2 )

resultado com 4 bits incorrecto

resultado com 4 bits correcto

0 transporte = 0: não ocorre overflow

1 1 0 10 1 1 00 1 1 1

-

0 1 1 01 1 0 1

1 1 0 0 1-

1 borrow = 1: ocorre overflow

( 6 )( 1 3 )

( 9 )

( 1 3 )( 6 )( 7 )

resultado com 4 bits incorrecto

resultado com 4 bits correcto

0 borrow = 0: não ocorre overflow

Adição Subtracção

7