Верилог привет мир
Всегда лучше начинать с очень простого примера, и ни один из них не подходит лучше всего, кроме "Hello World!".
// 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
А module
называемый tb без портов ввода-вывода выступает в качестве верхнего модуля для моделирования. initial
блок запускает и выполняет первый оператор в момент времени 0 единиц. $display
— это системная задача Verilog, используемая для отображения форматированной строки на консоли, и ее нельзя синтезировать на оборудовании. В основном он используется для помощи в тестовом стенде и отладке дизайна. В этом случае текстовое сообщение, отображаемое на экране, будет "Hello World!".
ncsim> run Hello World ! ncsim: *W,RNQUIE: Simulation is complete.
Verilog