Menu
Coddy logo textTech

Built In Gate Primitives

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

Verilog possui gate primitives integrados que permitem descrever circuitos lógicos usando símbolos reais de gate. Isso é chamado de structural modeling. Você constrói circuitos conectando gates, assim como ao desenhar um esquema.

Gate primitives são palavras-chave predefinidas que modelam gates lógicos básicos. Em vez de escrever uma expressão como assign out = a & b, você instancia um gate:

and(out, a, b);   // Porta AND com saída out, entradas a e b

Sintaxe geral

gate_type (output, input1, input2, ...);
  • O primeiro argumento é sempre o output
  • Os argumentos seguintes são inputs (1 ou mais, dependendo do gate)

Primitivas de portas disponíveis

Tipo de portaPalavra-chaveNúmero de entradas
ANDand2 ou mais
ORor2 ou mais
NOTnot1
NANDnand2 ou mais
NORnor2 ou mais
XORxor2 ou mais
XNORxnor2 ou mais

Como funcionam as primitivas de Gate

Quando você escreve and(out, a, b), o Verilog cria um Gate AND que impulsiona continuamente out com o result de a & b. Sempre que a ou b muda, out é atualizado imediatamente, assim como um Gate real.

Primitivas de Gate vs Atribuição contínua

Ambos os métodos produzem o mesmo hardware:

// Primitiva de porta
and(out, a, b);

// Atribuição contínua (mesmo resultado)
assign out = a & b;

As primitivas de Gate são úteis quando você quer descrever um circuito como uma coleção de gates (estilo structural). A atribuição Continuous é melhor para o behavioral style (expressões).

challenge icon

Desafio

O que fazer:

  1. Add o gate primitive correto para fazer este circuito funcionar. O módulo should gerar o AND das entradas a e b. A porta de output já foi nomeada c.

Experimente você mesmo

module gate_challenge (
  input a,
  input b,
  output c
);
  
  // TODO: Adicione o primitivo de porta correto
  // A saída c deve ser a AND b

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