¿Qué es Verilog?
Parte de la sección Fundamentos del Journey de Verilog de Coddy — lección 1 de 90.
Verilog es un lenguaje de descripción de hardware (HDL) utilizado para modelar, diseñar y simular circuitos electrónicos digitales — desde puertas lógicas simples hasta procesadores complejos.
A diferencia de los lenguajes de software que se ejecutan secuencialmente en una CPU, Verilog describe hardware que opera en paralelo. Es el estándar de la industria para el diseño de FPGA y ASIC, utilizado en herramientas como ModelSim, Vivado y Quartus.
En este curso, aprenderás Verilog desde cero, comenzando con la salida de simulación básica, luego construyendo circuitos combinacionales y secuenciales, y finalmente diseñando módulos reales como contadores, registros de desplazamiento e interfaces UART.
Desafío
Fácil¡Bienvenido a tu primer programa en Verilog! El código ya está escrito para ti.
Qué hacer:
- Observa el código — utiliza
$displaypara imprimir texto, de forma similar aprintfen C - Haz clic en Run Code para compilarlo y simularlo
- Deberías ver
Hello World!en la salida
Nota: Todo programa en Verilog se ejecuta dentro de un module. El bloque initial se ejecuta una vez al inicio de la simulación, y $finish la finaliza.
Hoja de referencia
Verilog es un lenguaje de descripción de hardware (HDL) que describe el hardware operando en paralelo, utilizado para el diseño de FPGA y ASIC.
Cada programa Verilog se ejecuta dentro de un module. El bloque initial se ejecuta una vez al inicio de la simulación; $finish finaliza la simulación. Usa $display para imprimir texto (similar a printf en C):
module example;
initial begin
$display("Hello World!");
$finish;
end
endmodulePruébalo tú mismo
module main;
initial begin
$display("Hello World!");
$finish;
end
endmoduleTodas las lecciones de Fundamentos
1Introducción
¿Qué es Verilog?Hardware vs SoftwareNiveles de abstracción de diseñoTu primer móduloComentarios4Operadores Parte 1
Operadores aritméticosOperador de móduloOperadores de comparaciónRepaso - Matemáticas simplesOperadores bit a bit7Asignación y Compuertas
Asignación ContinuaAsignación con OperadoresPrimitivas de Compuertas IntegradasCompuertas AND OR NOTCompuertas XOR XNORResumen - Circuito de Compuertas Lógicas10Toma de decisiones
Sentencia IfIf - ElseRepaso - Comparador simpleSentencia CaseCasex y CasezRepaso - Diseño de ALU5Operadores Parte 2
Operadores lógicosOperadores de reducciónOperadores de desplazamientoOperador de concatenaciónOperador condicionalResumen - Desafío de operadores3Sistema de numeración
Representación binariaNúmeros con tamaño definidoNúmeros sin tamaño definidoNúmeros negativosValores especiales X y ZResumen - Formatos de números6Módulos
Estructura del móduloPuertos de entrada y salidaPuertos InoutInstanciación de módulosMapeo de puertos por nombreMapeo de puertos por ordenResumen: Construye un módulo