O que é Verilog
Parte da seção Fundamentos do Journey de Verilog da Coddy. Lição 1 de 90.
Verilog é uma linguagem de descrição de hardware (HDL) usada para modelar, projetar e simular circuitos eletrônicos digitais, desde simples portas lógicas até processadores complexos.
Ao contrário das linguagens de software que são executadas sequencialmente em uma CPU, Verilog descreve hardware que opera em paralelo. É o padrão do setor para projetos de FPGA e ASIC, usado em ferramentas como ModelSim, Vivado e Quartus.
Neste curso, você aprenderá Verilog desde o início, começando com uma saída básica de simulação, depois construindo circuitos combinacionais e sequenciais e, por fim, projetando módulos reais, como contadores, registradores de deslocamento e interfaces UART.
Desafio
FácilBem-vindo ao seu primeiro programa em Verilog! O código já está escrito para você.
O que fazer:
- Observe o código. Ele usa
$displaypara imprimir texto, de forma semelhante aprintfem C - Clique em Executar código para compilá-lo e simulá-lo
- Você deverá ver
Hello World!na saída
Observação: Todo programa em Verilog é executado dentro de um module. O bloco initial é executado uma vez no início da simulação, e $finish a encerra.
Experimente você mesmo
module main;
initial begin
$display("Hello World!");
$finish;
end
endmoduleTodas as lições de Fundamentos
1Introdução
O que é VerilogHardware vs. SoftwareSeu primeiro móduloComentáriosNíveis de abstração de projeto4Operadores Parte 1
Operadores aritméticosOperador móduloOperadores de comparaçãoRecapitulação - Matemática simplesOperadores bit a bit7Atribuições e Portas
Atribuição ContínuaAtribuição com OperadoresPrimitivas de Portas IntegradasPortas AND, OR e NOTPortas XOR e XNORRecapitulação - Circuito de Portas Lógicas10Tomada de Decisões
Declaração IfIf - ElseRevisão - Comparador SimplesDeclaração CaseCasex e CasezRevisão - Projeto de ALU2Tipos de Dados
Tipo WireTipo RegInteiro e RealVetoresArraysParâmetrosRecapitulação - Declarar Sinais5Operadores - Parte 2
Operadores lógicosOperadores de reduçãoOperadores de deslocamentoOperador de concatenaçãoOperador condicionalRevisão - Desafio de operadores3Sistema Numérico
Representação BináriaNúmeros com Tamanho DefinidoNúmeros sem Tamanho DefinidoNúmeros NegativosValores Especiais X e ZRevisão - Formatos Numéricos6Módulos
Estrutura de MódulosPortas de Entrada e SaídaPortas InoutInstanciação de MódulosMapeamento de Portas por NomeMapeamento de Portas por OrdemRecapitulação — Construindo um MóduloPratique por conta própria: Compilador de Verilog online