1. 注释
2. 模块的结构
2.1. module是模块的关键字,module开始到endmodule结束,是模块的范围。
2.2. block是模块名。
2.3. block(a,b,c,d)中(a,b,c,d)是端口的定义。
a,b,c,d 默认是线网类型 的信号。
2.4. input a,b;
说明a,b是输入端口。
output c,d;
说明c,d是输出端口。
2.5. assign c = a | b;
assign可以对线网类型赋值。
3. 实例
2.6 output reg [3:0] led
output后面默认是线网类型 ,但当led是寄存器时,需要制定为寄存器类型。
4. 模块的调用
注意1:模块调用的输入端,可以是wire或reg类型,但输出端只能是wire类型。
注意2:数据传递的位宽需要保持一致