For the sake of brevity throughout the following examples, names are sometimes used without being declared.
Syntax
Reference
Reserved
Words
module M (P1, P2, P3, P4);
input P1, P2;
output [7:0] P3;
inout P4;
reg ...
wire ...
parameter ...
initial
begin
// Statements
end
always @(...)
begin
// Statements
end
// Continuous assignments...
assign W1 = Expression;
// Module instances...
COMP U1 (S1, S2);
COMP U2 (.P1(S1), .P2(S2));
task T1;
input A1;
inout A2;
output A3;
begin
// Statements
end
endtask
function [7:0] F1;
input A1;
begin
// Statements
F1 = Expression;
end
endfunction
endmodule
Statements
Reg = Expression;
Reg <= Expression;
TaskEnable(...);
#delay
wait (Expression)
@(a or b or c)
@(posedge clk)
if (Condition)
...
else if (Condition)
...
else
...
case (Selection)
Choice1 :
...
Choice2, Choice3 :
...
default :
...
endcase
for (I=0; I<MAX; I=I+1)
...
repeat (8)
...
while (Condition)
...
forever
...
and for output strong1 always force parameter supply0 assign forever pmos supply1 begin fork posedge table buf function primitive task bufif0 highz0 pulldown tran bufif1 highz1 pullup tranif0 case if pull0 tranif1 casex ifnone pull1 time casez initial rcmos tri cmos inout real triand deassign input realtime trior default integer reg trireg defparam join release tri0 disable large repeat tri1 edge macromodule rnmos vectored else medium rpmos wait end module rtran wand endcase nand rtranif0 weak0 endfunction negedge rtranif1 weak1 endprimitive nor scalared while endmodule not small wire endspecify notif0 specify wor endtable notif1 specparam xnor endtask nmos strength xor event or strong0
Verilog Golden Reference Guide
Doulos Training
Courses
VHDL Quick Reference
Copyright 1995-1997 Doulos
This page was last updated 17th July 1996
We welcome your e-mail comments. Please contact us at: webmaster@doulos.co.uk