静态分配变量或使用always@()语句。在Verilog代码中,如果变量未被静态分配,则其值可能是未知的。因此,在声明变量时,应将其初始化为默认值。此外,使用always@()语句可以确保当输入变量更改时,输出变量将及时更新并输出正确的结果。以下是一个使用always@(*)语句的示例:
module encoder(input a,b,output reg [1:0] y);
always@(*) begin if (a==0 && b==0) y=2'b00; else if (a==0 && b==1) y=2'b01; else if (a==1 && b==0) y=2'b10; else if (a==1 && b==1) y=2'b11; end
endmodule
下一篇:编码器和解码器的区别