portas logicas

34
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação CECOMP Portas Lógicas Básicas Prof. Rômulo Calado Pantaleão Camara Carga Horária: 2h/60h

Upload: fernanda-andrade

Post on 28-Jul-2015

77 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP

Portas Lógicas Básicas

Prof. Rômulo Calado Pantaleão Camara

Carga Horária: 2h/60h

Page 2: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP

Introdução à Algebra de Boole

Em lógica tradicional, uma decisão é tomadabaseando-se em dois estados de uma premissa: verdadeiro ou falso (similaridade com o sistemabinário).

Circuitos lógicos digitais representam o estadobinário de um sistema através de expressõeslógicas.

Para analisar e projetar circuitos lógicos, é necessário ter um método capaz de descrever as decisões tomadas por esses circuitos.

2

Page 3: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP

Introdução à Algebra de Boole

A Álgebra Booleana, desenvolvida pelo matemáticoGeorge Boole, em 1854, é utilizada quando se trabalha com expressões lógicas. Exemplos: a portaestá fechada (A), não está chovendo (B).

Expressões lógicas descrevem relacionamentosentre as saídas dos circuitos lógicos (decisões) e suas entradas (circunstâncias).

3

Page 4: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP

Introdução à Algebra de Boole‏

As Portas Lógicas são dispositivos que implementamas funções lógicas.

As portas lógicas são os blocos fundamentais a partir dos quais todos os circuitos lógicos e, portanto, os sistemas digitais, são construídos.

A álgebra booleana pode ser usada não só paradescrição de tais sistemas, mas também paraanálise e simplificação, e principalmente paraprojeto de circuitos (síntese).

4

Page 5: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP

Introdução à Algebra de Boole‏

Na álgebra booleana, as variáveis lógicas só podemter dois valores possíveis: 0 e 1, V ou F, Ligado ouDesligado.

Em circuitos digitais, os valores booleanos 0 e 1 representam níveis de tensão, chamados níveislógicos (não representam números, mas sim estado)

Usaremos letras como símbolos para variáveis. Ex.: A = 0 ou A = 1

5

Page 6: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 6

Os circuitos lógicos executam funções lógicas, que muitas vezespodem ser simplificadas, reduzindo o número de blocos lógicosutilizados.

Introdução à Algebra de Boole

B.L.1

B.L.2

B.L.3

e1

e2

e4

e3

S

f1

f3

f2

ea

eb

• Através da álgebra de Boole, que compreende postulados, propriedades, teoremas e identidades é possível efetuar as

simplificações das funções lógicas.

• Isto é importante porque um circuito lógico poderá sersubstituído por outro de menor complexidade (menor número deportas e conexões).

• Conforme observado, a saídaS é função das entradas e1,e2, e3 e e4, e das funções

lógicas f1, f2 e f3.

Page 7: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 7

As técnicas usadas na análise e síntese de circuitoslógicos compreendem:

–Tabelas-Verdade;

–Símbolos esquemáticos;

–Diagramas de tempo;

–Linguagens de descrição;

Introdução à Algebra de Boole‏

Page 8: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 8

Na álgebra booleana, não existem frações, decimais, raizquadrada, etc, e por isso é mais simples que a álgebraconvencional.

Ela tem somente três operações básicas (operaçõeslógicas): NOT (NÃO), OR (OU) e AND (E).

Obs: A implementação prática de um circuito é feitautilizando dispositivos como diodos, transistores eresistores, adequadamente interconetados, de forma aproduzir as operações básicas NOT, OR e AND.

Introdução à Algebra de Boole‏

Page 9: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 9

Tabela VerdadeÉ uma técnica usada para descrever como a saída de um circuito lógicoresponde aos níveis lógicos de entrada.

Exemplo: A figura mostra a resposta da saída x em função dasentradas.

Obs: O símbolo ? representa o circuito

lógico capaz de produzir a saída x.

Tabela com N entradas tem 2N linhas.

Page 10: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 10

Operação OR (OU)‏

A expressão lógica OR se caracteriza pela resposta em nível lógico 1sempre que ao menos uma das variáveis de entrada estiver no nívellógico 1.

Exemplo: fogão – luz do forno só acende se o interruptor foracionado (A) OU a porta do forno for aberta (B).

O nível lógico 0 de saída ocorre somente quando todas as variáveisde entrada estão no nível lógico 0.

A expressão booleana para esta função é:

X = A + B

Obs: O sinal + não representa adição convencional, mas sim aoperação OR.

Page 11: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 11

A expressão x = A + B é lida como x = A OR B.

Similarmente para três entradas:

x = A + B + C é equivalente a x = A OR B OR C.

Operação OR ‏

Tabela-verdade

Porta OR Circuito equivalente

Page 12: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 12

Operação OR ‏

Ampliando o conceito para três entradas

Page 13: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 13

Operação OR Exemplo de utilização da porta OR em sistemas de controleindustrial: Deseja-se ativar um alarme sempre que a temperaturado processo exceder um valor máximo ou a pressão ultrapassar umcerto limite.

A condição de ativação do alarme sugere que as saídas doscomparadores podem ser as entradas de uma porta OR tal comoindicado na figura.

Page 14: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 14

Operação ORExemplo com diagramas de tempo: Determine a saída da porta OR na

figura seguinte:

Resposta:

Page 15: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 15

Operação OR‏

Exemplo: Determine a saída da porta OR na figura seguinte:

Page 16: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 16

Operação OR

Exemplo: Determine a saída da porta OR na figura seguinte:

Observe o que ocorre no instante t1.

Eventos simultâneos (mudança de nível lógico simultâneo das entradas A e B) causama ocorrência de pulsos espúrios (glitches ou spikes), tal como mostrado.

Obs: Transições simultâneas de sinais devem ser sempre evitadas.

Obs: Se a entrada C estivesse no nível lógico alto no instante t1, o glitch nãoocorreria.

Page 17: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 17

Operação AND (E)‏

Fogão moderno: fogo só acende se o botão de acendimento for pressionado (A) E o botão do gás for mantido pressionado por 10 s (B).

A operação lógica de uma porta AND se caracteriza pela saída emnível 1 somente quando todas as entradas estão no nível lógico 1.

Em qualquer outro caso, a saída da porta estará no nível lógico zero.

Esse comportamento é indicado pela tabela-verdade da porta AND.

Page 18: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 18

Operação AND‏

A expressão booleana para a operação AND é:

X = A · B

• A expressão é lida como x é igual a A AND B.

• A operação de multiplicação é realizada da mesma forma que aconvencional.

• Para o caso de três entradas, a tabela-verdade e símboloesquemático são:

Page 19: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 19

Operação AND‏

Exemplo: Determine a saída da porta AND para as formas de onda deentrada.

Page 20: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 20

Operação AND

Exemplo: Determine a forma de onda de saída da porta AND.

Pode ser visto, então, que a porta ANDatua como um circuito inibidor ouhabilitador, dependendo do estadológico da entrada B. Em outras palavras,a entrada B atua como entrada decontrole para a outra entrada.

Page 21: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 21

Operação NOT (NEGAÇÃO) ou Inversor

Diferentemente das operações OR e AND anteriormente descritas,a operação NOT opera sobre uma única variável de entrada, fornecendocomo resultado o valor negado (complementado) da variável de entrada.

Considerando a variável de entrada A, a saída será: X = Ā (A')

A operação NOT é mostrada na tabela-verdade, junto com a porta.

Page 22: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 22

Resumo das operações

OR AND NOT

0 + 0 = 0 0 · 0 = 0 0' = 1

0 + 1 = 1 0 · 1 = 0 1' = 0

1 + 0 = 1 1 · 0 = 0

1 + 1 = 1 1 · 1 = 1

Page 23: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 23

Descrição Algébrica de Circuitos Lógicos

É importante observar que qualquer circuito lógico pode ser descritousando as três operações booleanas estudadas anteriormente.

A expressão algébrica na saída do circuito pode ser obtidapercorrendo o esquemático de esquerda para a direita.

Precedência de operadores.

Tal como na álgebra convencional, existe precedência na seqüência emque as operações booleanas são realizadas.

Na figura anterior, a expressão correta é x = (A · B) + C.

Page 24: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 24

Descrição Algébrica de Circuitos Lógicos Contudo, na expressão anterior, os parênteses não são necessáriosvisto que a operação AND toma precedência em relação à operação OR.Já no caso da figura a seguir, o uso dos parênteses é necessário.

No caso de circuitos com inversores, a expressão pode ser escritacomo apresentado a seguir.

Page 25: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 25

Avaliação das Saídas dos Circuitos Lógicos

O processo de avaliação das saídas dos circuitos digitais éconhecido como Análise.

O nível lógico presente na saída de um circuito lógico pode serdeterminado a partir da expressão na saída do mesmo.

Considerando o circuito da figura anterior, assuma que as variáveisde entrada têm os seguintes estados lógicos: A = 0, B = 1, C = 1 e D = 1.

Para determinar o estado lógico da saída, basta substituir osvalores das variáveis na expressão de saída do circuito, neste caso:

Exercício: Considere outros valores para as variáveis de entrada e

determine os valores de saída do circuito lógico.

x= 0A.B + A + A.D + A.C

Page 26: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 26

Em geral, as seguintes regras devem ser aplicadas quandoavaliando expressões lógicas:

Primeiro realize todas as inversões de termos simples.

Resolva, a seguir, todas as operações dentro deparênteses.

Resolva as operações AND antes das operações OR.

No caso de alguma expressão aparecer complementada(uma barra acima da expressão), resolva a operaçãoindicada pela expressão e, em seguida, inverta o resultado.

Avaliação das Saídas dos Circuitos Lógicos

Page 27: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 27

O processo de avaliação pode ser realizado tambémutilizando tabelas-verdade.

Se necessário, realize a construção de tabelas-verdade associadas a diferentes pontos (pontosintermediários) do circuito, até se alcançar a saída.

Esse procedimento é especialmente útil quando se estátestando um circuito.

Avaliação das Saídas dos Circuitos Lógicos‏

Page 28: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 28

Exemplo:

Avaliação das Saídas dos Circuitos Lógicos‏

Page 29: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 29

Implementação de Circuitos Utilizando

Expressões Booleanas

Se a expressão booleana é conhecida, o diagrama lógico do circuito pode

ser obtido.

Suponha que queremos construir o circuito cuja expressão é:

y = AC + BĈ + ĀBC

Page 30: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 30

Exemplo: Desenhe o circuito que implementa a seguinte expressão:

Implementação de Circuitos Utilizando

Expressões Booleanas (cont.)‏

Page 31: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 31

Porta NOR – NÃO OU

Combina as operações OR e NOT.

Page 32: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 32

Porta NOR – NÃO OU

Ex.: Determine a saída de uma porta NOR de três entradas seguida de

um inversor.

Page 33: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 33

Porta NAND – NÃO E

Combina as operações AND e NOT.

Page 34: portas logicas

Universidade Federal do Vale do São Francisco - UNIVASF

Colegiado de Engenharia da Computação – CECOMP 34

Exemplo: Implemente o circuito lógico que tem como expressão:

Portas Lógicas NAND e NOR

Qual o valor da saída x para ABCD = 1110 ?

Resposta: 1.