Menu
Coddy logo textTech

Primitivas de Portas Integradas

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

Verilog tem primitivas de portas integradas que permitem descrever circuitos lógicos usando símbolos reais de portas. Isso é chamado de modelagem estrutural. Você constrói circuitos conectando portas, assim como ao desenhar um esquema.

As primitivas de portas são palavras-chave predefinidas que modelam portas lógicas básicas. Em vez de escrever uma expressão como assign out = a & b, você instancia uma porta:

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 a saída
  • Os argumentos seguintes são entradas (1 ou mais, dependendo da porta)

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 portas

Quando você escreve and(out, a, b), o Verilog cria uma porta AND que conduz continuamente out com o resultado de a & b. Sempre que a ou b muda, out é atualizado imediatamente, assim como em uma porta real.

Primitivas de porta 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;

Primitivas de portas são úteis quando você quer descrever um circuito como uma coleção de portas (estilo estrutural). A atribuição contínua é melhor para o estilo comportamental (expressões).

challenge icon

Desafio

O que fazer:

  1. Adicione a primitiva de porta correta para fazer este circuito funcionar. O módulo deve produzir o AND das entradas a e b. A porta de saída já se chama 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