如果带有OR语句

时间:2015-07-04 08:15:00

标签: verilog

我正在尝试在我的if语句中实现OR函数。这就是我在初始版块中的内容:

 initial
       begin
           flag = $value$plusargs("a=%b", a);
           flag = $value$plusargs("b=%b", b);
           flag = $value$plusargs("c=%b", c);
           #1 if (z != 0| z != 1)
              $display("ARGUMENT MISSING");
           else
           #1 $display("a = %1b, b = %1b, c = %1b, z = %1b", a, b, c, z);
       end

我正在努力使其如果任何参数未初始化,程序会打印“ARGUMENT MISSING”,否则会打印abc的二进制值和输出z。但是,我认为我在语法上犯了一些错误,使其跳过if case。

1 个答案:

答案 0 :(得分:1)

initial  
       begin  
           if($value$plusargs("a=%b", a) &  
              $value$plusargs("b=%b", b) &  
              $value$plusargs("c=%b", c) )  
             #1 $display("a = %1b, b = %1b, c = %1b, z = %1b", a, b, c, z);  
           else  
              $display("ARGUMENT MISSING");  
       end  

如果声明了所有参数,则显示参数和Z.否则显示参数缺失消息。