Tutorial Prático de Circuitos Lógicos: Análise e Síntese

Neste tutorial, vamos praticar e aprofundar as habilidades de análise e síntese de circuitos lógicos simples, utilizando os conceitos de álgebra booleana, tabela-verdade e mapas de KarnaughMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesDescubra como os Mapas de Karnaugh simplificam expressões lógicas, otimizando circuitos digitais e facilitando o projeto em eletrônica digital. (para até 4 variáveis). Partiremos de problemas que ilustram situações reais ou hipotéticas para exercitarmos tanto a análise (quando o circuito é dado) quanto a síntese (quando precisamos projetar o circuito a partir de uma especificação ou expressão booleanaCircuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara.).

Visão Geral🔗

Já estudamos, em tutoriais anteriores, os fundamentos da álgebra booleanaÁlgebra Booleana: Simplificando Expressões DigitaisÁlgebra Booleana: Simplificando Expressões DigitaisAprenda os fundamentos da Álgebra Booleana, desde as operações lógicas básicas até a simplificação de expressões e otimização de circuitos digitais., as leis principais (comutativa, associativa e distributiva), e também ferramentas de simplificação como os Teoremas de De MorganÁlgebra Booleana: Simplificando Expressões DigitaisÁlgebra Booleana: Simplificando Expressões DigitaisAprenda os fundamentos da Álgebra Booleana, desde as operações lógicas básicas até a simplificação de expressões e otimização de circuitos digitais. e os mapas de KarnaughMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesDescubra como os Mapas de Karnaugh simplificam expressões lógicas, otimizando circuitos digitais e facilitando o projeto em eletrônica digital.. Aqui, não retomaremos estes conceitos em profundidade, mas iremos aplicar esses métodosMétodos e Sobrecarga: Técnicas para Maior FlexibilidadeMétodos e Sobrecarga: Técnicas para Maior FlexibilidadeDescubra como métodos, tasks, functions e sobrecarga em SystemVerilog otimizam a programação orientada a objetos com exemplos práticos e dicas de boas práticas. para resolver e discutir exercícios. Assim, se você sentir falta de algum conceito, consulte os tutoriais anteriores para relembrar.

A análise de circuitos lógicosPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. consiste em:

1. Observar o diagrama do circuito.

2. Identificar quais portas lógicasPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. estão sendo usadas e como elas se conectam.

3. Escrever a expressão booleanaCircuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. correspondente ao circuito ou montar sua tabela-verdade.

4. Se aplicável, simplificar essa expressão usando as técnicas adequadas.

A síntese de circuitos lógicosPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. consiste em:

1. Ler e interpretar os requisitos desejados (ou uma expressão booleanaCircuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara., ou uma tabela-verdade).

2. Simplificar a expressão, se possível, para minimizar o número de portas ou entradas.

3. Desenhar (ou modelar) o diagrama lógico final do circuito.

Exercícios Práticos de Análise🔗

A seguir, apresentamos exemplos de circuitos lógicosPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. para analisarmos passo a passo. Nossa meta é chegar na expressão booleanaCircuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. simplificada (ou na tabela-verdade) que descreve a saída do circuito.

Exercício: Circuito com NAND e OR

Descrição do Circuito (texto):

  • Temos duas entradas: A e B. As entradas A e B passam primeiro por uma porta NAND.
  • Há uma terceira entrada C que, junto com a saída da NAND, alimenta uma porta OR.
  • A saída final é Y.

Podemos representar, se necessário, em forma de diagrama (usando mermaid para ilustrar):

flowchart LR A((A)) --> NAND1 B((B)) --> NAND1 NAND1 --> OR1 C((C)) --> OR1 OR1 --> Y((Y))

Passo a passo de análise:

1. Identificar as operações

\[ \text{NAND}(A, B) = \overline{A \cdot B} \] \[

Y = \left(\overline{A \cdot B}\right) + C

\]

2. Expressão final

\[

Y = \overline{A \cdot B} + C

\]

3. Possível simplificação

Queremos ver se existe uma forma mais simples. Analisando:

\[

Y = (\overline{AB}) + C

\]

Se quiséssemos fatorar ou gerar outra forma, poderíamos chegar a:

  • \[

Y = \overline{AB} + C

\]

que é equivalente. Não há simplificação adicional substancial sem especificações extras.

4. Tabela-verdadePorta LógicaPorta LógicaDescubra o que são portas lógicas, conheça suas tabelas-verdade e aplicações em circuitos digitais, além de entender seu funcionamento prático. (opcional, caso queira comprovação):

ABCAB (interm)NAND(A,B) = (AB)'Y = (AB)' + C
000011
001011
010011
011011
100011
101011
110100
111101

Podemos observar que somente quando \(A=1\) e \(B=1\) (ou seja, \(AB=1\)) e \(C=0\), a saída é 0. Em todos os outros casos, a saída é 1.

Conclusão: o circuito resulta em \(Y = \overline{AB} + C\), sem simplificações adicionais relevantes.

Exercício: Circuito com AND e Inversão

Descrição do Circuito (texto):

  • Temos 3 entradas: X, Y, Z.
  • As entradas X e Y passam por uma porta AND.
  • A saída dessa porta é invertida (NOT).
  • Em seguida, o sinal invertido é combinado com a entrada Z através de outra porta AND.
  • A saída final é F.

Análise e expressão booleana

1. Primeira etapa (AND):

\[ \text{AND}(X, Y) = X \cdot Y \]

2. Segunda etapa (NOT da saída anterior):

\[ \overline{X \cdot Y} \]

3. Terceira etapa (AND com Z):

\[

F = \overline{X \cdot Y} \;\cdot\; Z

\]

Essa é a forma direta da expressão. Para verificar se há simplificação adicional, notamos que a expressão é do tipo:

\[

F = (\overline{X \cdot Y}) \cdot Z

\]

Usando De Morgan para \(\overline{X \cdot Y} = \overline{X} + \overline{Y}\), obtemos:

\[

F = (\,\overline{X} + \overline{Y}\,)\cdot Z

\]

Também não há simplificação adicional significativa, a menos que tenhamos algum contexto específico das variáveisMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesDescubra como os Mapas de Karnaugh simplificam expressões lógicas, otimizando circuitos digitais e facilitando o projeto em eletrônica digital.. Assim, a forma final pode ser mantida como \(\overline{X Y}\cdot Z\).

Exercícios Práticos de Síntese🔗

Nos exercícios de síntese, partimos das especificações ou de uma tabela-verdadePorta LógicaPorta LógicaDescubra o que são portas lógicas, conheça suas tabelas-verdade e aplicações em circuitos digitais, além de entender seu funcionamento prático. e construímos o circuito lógico correspondente, buscando sempre simplificar a expressão para utilizar menos portas lógicasPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. ou para obter uma forma mais eficiente.

Exercício: Projeto a partir de uma Tabela-Verdade

Especificação: Deseja-se projetar uma função lógica \(F(A, B, C)\) que seja igual a 1 somente nos seguintes casos (A,B,C):

  • 1,0,0
  • 0,1,1
  • 1,1,1

Tabela-verdadePorta LógicaPorta LógicaDescubra o que são portas lógicas, conheça suas tabelas-verdade e aplicações em circuitos digitais, além de entender seu funcionamento prático. resumida:

ABCF
0000
0010
0100
0111
1001
1010
1100
1111

Passo 1: Construir a expressão inicial por soma de produtos (SoP)

Podemos observar que \(F=1\) quando:

1. \(A=1, B=0, C=0\) → \(A \cdot \overline{B} \cdot \overline{C}\)

2. \(A=0, B=1, C=1\) → \(\overline{A} \cdot B \cdot C\)

3. \(A=1, B=1, C=1\) → \(A \cdot B \cdot C\)

Então,

$$ F = (A \overline{B} \overline{C}) + (\overline{A} B C) + (A B C) $$

Passo 2: Simplificação com Mapa de Karnaugh (opcional)

Para até 3 variáveis (A, B, C), o mapa de KarnaughMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesDescubra como os Mapas de Karnaugh simplificam expressões lógicas, otimizando circuitos digitais e facilitando o projeto em eletrônica digital. poderá ser:

AB\CC=0 (00)C=1 (01)
00 (A=0,B=0)00
01 (A=0,B=1)01
10 (A=1,B=0)10
11 (A=1,B=1)01

Identificamos os gruposMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesDescubra como os Mapas de Karnaugh simplificam expressões lógicas, otimizando circuitos digitais e facilitando o projeto em eletrônica digital.:

  • Grupo vertical de 2 células para \((A=1,B=1,C=1)\) e \((A=0,B=1,C=1)\) → \((B \cdot C)\)
  • Célula isolada \((A=1,B=0,C=0)\) não agrupa com outras → \((A \cdot \overline{B} \cdot \overline{C})\)

Portanto, a forma simplificada é:

$$ F = (B \cdot C) + (A \cdot \overline{B} \cdot \overline{C}) $$

Passo 3: Desenho do Circuito

1. Termo (B · C): uma porta AND com entradas B e C.

2. Termo (A · ¬B · ¬C): outra porta AND com três entradas ou com duas portas ANDPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. em sequência (A com ¬B, depois com ¬C).

3. Ao final, ambos são somados (OR) para formar F.

Em diagrama simplificado:

flowchart LR B((B)) --> AND_BC C((C)) --> AND_BC AND_BC --> OR_F A((A)) --> AND_ABC BN(¬B) --> AND_ABC CN(¬C) --> AND_ABC AND_ABC --> OR_F OR_F((F)) %% Nec. inverter B e C B --->|NOT| BN( ) C --->|NOT| CN( )
Use inversores para gerar \(\overline{B}\) e \(\overline{C}\), se necessário.
A saída final (OR) recebe as duas portas AND.

Conclusão: chegamos em \((B \cdot C) + (A \cdot \overline{B} \cdot \overline{C})\), atendendo à tabela-verdadePorta LógicaPorta LógicaDescubra o que são portas lógicas, conheça suas tabelas-verdade e aplicações em circuitos digitais, além de entender seu funcionamento prático. solicitada.

Exercício: Requisito em Linguagem Natural

Especificação: “A lâmpada deve acender (L=1) se o sensor A está ativado e o sensor B está inativo, ou se o sensor B estiver ativado sozinho, independente de A. Suponha que A=1 signifique ativo e B=1 signifique ativo.”

Interpretando em termos lógicos:

1. Sensor A ativo e Sensor B inativo: \(A \cdot \overline{B}\).

2. Sensor B ativo (sozinho ou não?): o texto diz independente de A, sugerindo que qualquer valor de A com B=1 deve ativar a lâmpada. Ou seja, \((B=1)\) → \(B\).

Assim, a função desejada:

\[

L = (A \cdot \overline{B}) + B

\]

Verificação rápida

  • Se \(B=1\), a lâmpada acende: \( (A \cdot \overline{1}) + 1 = (A \cdot 0) + 1 = 1\).
  • Se \(B=0\), a lâmpada acende somente se \(A=1\). Então \( (1\cdot \overline{0}) + 0 = 1\).

Logo, a especificação é atendida.

Simplificação

Podemos ver que:

\[ (A \cdot \overline{B}) + B = B + (A \cdot \overline{B}) = (B + A) \cdot (B + \overline{B}) \]

usando distributiva ao contrário. E \((B + \overline{B})=1\). Então:

\[

L = B + A

\]

Interpretação: a lâmpada acende se pelo menos um dos sensores estiver ativo. Se \(B=1\), já é suficiente. Se \(B=0\), então dependemos de \(A=1\). Esta forma simplificada, \(A + B\), mostra que é uma porta ORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. das duas entradas A e B.

Dicas Finais para Praticar🔗

1. Tabelas-verdadePorta LógicaPorta LógicaDescubra o que são portas lógicas, conheça suas tabelas-verdade e aplicações em circuitos digitais, além de entender seu funcionamento prático. são sempre um ótimo começo quando o circuito é simples (até 4 variáveisMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesDescubra como os Mapas de Karnaugh simplificam expressões lógicas, otimizando circuitos digitais e facilitando o projeto em eletrônica digital.).

2. Mapas de KarnaughMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesMapas de Karnaugh: Otimização de Circuitos e Minimização de FunçõesDescubra como os Mapas de Karnaugh simplificam expressões lógicas, otimizando circuitos digitais e facilitando o projeto em eletrônica digital. auxiliam na visualização das simplificações.

3. Expressões algébricas podem ser simplificadas utilizando leis básicas e De Morgan.

4. Para síntese, leia cuidadosamente a especificação (tabela-verdade ou enunciado) e traduza para expressões booleanasCircuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. passo a passo.

5. Pratique ainda mais combinando NAND ou NOR como portas universaisPortas Lógicas e Famílias Lógicas: Tipos: AND, OR, NOT, NAND, NOR, XOR, XNOR (símbolos IEEE/ANSI)Portas Lógicas e Famílias Lógicas: Tipos: AND, OR, NOT, NAND, NOR, XOR, XNOR (símbolos IEEE/ANSI)Explore neste tutorial completo os principais tipos de portas lógicas, seus símbolos IEEE/ANSI e tabelas-verdade para dominar a eletrônica digital., já que qualquer circuito pode ser implementado apenas com elas.

Conclusão🔗

Neste tutorial, exercitamos a análise e a síntese de circuitos lógicosPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORPortas Lógicas Fundamentais: AND, OR, NOT, NAND, NOR, XOR e XNORDescubra as funções das portas lógicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) por meio de exemplos e tabelas-verdade para eletrônica digital. simples, combinando práticas de elaboração de tabelas-verdade, expressões booleanasCircuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. e diagramas lógicos. Aprendemos como interpretar circuitos já dados, extrair a expressão booleana ou tabela-verdade correspondente, e também como partir de requisitos ou tabelas-verdade para projetar um circuito otimizado.

A prática contínua e a experimentação com ferramentas de simulaçãoFerramentas de Simulação: Simulação prática: construção e teste de circuitos combinacionaisFerramentas de Simulação: Simulação prática: construção e teste de circuitos combinacionaisAprenda a simular circuitos combinacionais com ferramentas como Logisim, Proteus e Multisim. Teste, valide e otimize seus projetos digitais. Confira! (como Logisim, Proteus ou Multisim) são etapas fundamentais para consolidar seu conhecimento e avançar para tópicos mais complexos.

Próximos Passos:

Nos tutoriais seguintes, aprofundaremos o estudo de portas lógicas específicas (AND, OR, NOT, NAND, NOR, XOR, XNOR) e os circuitos combinacionaisFerramentas de Simulação: Simulação prática: construção e teste de circuitos combinacionaisFerramentas de Simulação: Simulação prática: construção e teste de circuitos combinacionaisAprenda a simular circuitos combinacionais com ferramentas como Logisim, Proteus e Multisim. Teste, valide e otimize seus projetos digitais. Confira! mais elaborados, abrindo caminho para entender como projetar sistemas digitais completos em níveis mais avançados.

Siga praticando, pois a base sólida em álgebra booleana e análise de circuitos simples é fundamental para todos os futuros projetos de eletrônica digitalIntrodução à Eletrônica Digital: Conceitos Básicos e AplicaçõesIntrodução à Eletrônica Digital: Conceitos Básicos e AplicaçõesDescubra os conceitos e aplicações essenciais da Eletrônica Digital, do funcionamento de sinais binários aos transistores, e comece sua jornada tecnológica.!

Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.

Referências🔗

Compartilhar artigo

Artigos Relacionados