Verilog Hallo Wereld
Het is altijd het beste om aan de slag te gaan met een heel eenvoudig voorbeeld, en geen enkel voorbeeld dient het beste doel behalve "Hallo wereld!".
// Single line comments start with double forward slash "//"
// Verilog code is always written inside modules, and each module represents a digital block with some functionality
module tb;
// Initial block is another construct typically used to initialize signal nets and variables for simulation
initial
// Verilog supports displaying signal values to the screen so that designers can debug whats wrong with their circuit
// For our purposes, we'll simply display "Hello World"
$display ("Hello World !");
endmodule
Een module
genaamd tb zonder input-output-poorten fungeren als de bovenste module voor de simulatie. De initial
blok start en voert de eerste instructie uit op tijdstip 0 eenheden. $display
is een Verilog-systeemtaak die wordt gebruikt om een geformatteerde tekenreeks op de console weer te geven en kan niet worden gesynthetiseerd in hardware. Het wordt voornamelijk gebruikt om te helpen met testbench en ontwerpfoutopsporing. In dit geval is het tekstbericht dat op het scherm wordt weergegeven "Hello World!".
ncsim> run Hello World ! ncsim: *W,RNQUIE: Simulation is complete.
Verilog