portas logicas
-
Upload
fernanda-andrade -
Category
Technology
-
view
80 -
download
1
Transcript of 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
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
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
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
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
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.
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
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
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.
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.
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
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
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.
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:
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:
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.
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.
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:
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.
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.
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.
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
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.
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.
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
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
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
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
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
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.)
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.
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.
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.
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.