Verilog语法总结
- 1,典型的Verilog模块结构
- 2,声明语句
- 3,Verilog语法总结的价值
1,典型的Verilog模块结构
// 1,典型的 Verilog模块结构
module M(P1, P2, P3, P4);
input P1, P2;
output [7:0] P3;
inout P4;reg [7:0] R1, M1 [1:1024];
wire W1, W2, W3, W4;parameter C1 = "This is a string";
initial
begin : 块名// 声明语句endalways@(触发事件)
begin
// 声明语句end// 连续赋值语句
assign W1 = Expression;wire (Strong1, Weak0) [3:0] #(2, 3) W2 = Expression; // ???// 模块实例引用
COMP U1(W3, W4);
COMP U2(.P1(W3), .P2(W4));task T1; // 任务定义input A1;inout A2;output A3;begin// 声明语句end
endtaskfunction [7:0] F1; // 函数定义input A1;begin// 声明语句F1 = 表达式;endendfunctionendmodule // 模块结束
2,声明语句
// 2,声明语句
#delay
wait(Expression)
@(A or B or C)
@(posedge Clk)Reg = Expression;Reg <= Expression;VectorReg[Bit] = Expression;
VectorReg[MSB:LSB] = Expression;
Memory[Address] = Expression;assign Reg = Expression;
deassign Reg;TaskEnable(...),
disable TaskOrBlock;
EventName;if(Condition)
...
else if(Condition)
...
else
...case(Selection)
Choice1:
...Choice2, Choice3:
...default:
...endcasefor(I = 0; I < MAX; I = I + 1)
...repeat(8)
...while(Condition)
...forever
...
3,Verilog语法总结的价值
上面简要语法总结可供读者快速查找,应注意其语法表示方法与本手册中其它地方的不同。