Menu
Coddy logo textTech

Portas AND, OR e NOT

Parte da seção Fundamentos do Journey de Verilog da Coddy. Lição 40 de 90.

Esta lição aborda as três portas lógicas mais básicas: AND, OR e NOT. Essas portas formam a base do projeto de lógica digital.

Porta AND

A porta AND produz 1 somente quando todas as entradas são 1.

Tabela-verdade (2 entradas):

about
000
010
100
111

Primitiva de porta do Verilog:

and(out, a, b);

Equivalente à atribuição contínua:

assign out = a & b;

Porta OR

A porta OR produz 1 quando pelo menos uma entrada é 1.

Tabela-verdade (2 entradas):

about
000
011
101
111

Primitiva de porta Verilog:

or(out, a, b);

Equivalente à atribuição contínua:

assign out = a | b;

Porta NOT

A porta NOT produz o oposto de sua única entrada. Ela também é chamada de inversora.

Tabela-verdade:

aout
01
10

Primitiva de porta do Verilog:

not(out, a);

Equivalente de atribuição contínua:

assign out = ~a;

Múltiplas entradas

As portas AND e OR podem ter mais de 2 entradas:

and(out, a, b, c);     // AND de 3 entradas (out = a & b & c)
or(out, x, y, z, w);   // OR de 4 entradas

As portas NOT sempre têm exatamente 1 entrada.

Exemplo de código

module and_or_not (
  input a, b,
  output and_out,
  output or_out,
  output not_out
);
  and(and_out, a, b);   // porta AND
  or(or_out, a, b);     // porta OR
  not(not_out, a);      // porta NOT (inversor)
endmodule
challenge icon

Desafio

Adicione as primitivas de portas lógicas ausentes com base nas tarefas.

O que fazer:

  1. Crie uma porta AND com a saída and_result e as entradas p e q
  2. Crie uma porta OR com a saída or_result e as entradas p e q
  3. Crie uma porta NOT com a saída not_result e a entrada p

Experimente você mesmo

module gates_challenge (
  input p,
  input q,
  output and_result,
  output or_result,
  output not_result
);
  
  // TODO: Adicione a porta AND (and_result = p & q)
  
  // TODO: Adicione a porta OR (or_result = p | q)
  
  // TODO: Adicione a porta NOT (not_result = ~p)

endmodule
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de Verilog online