Verilog条件表达式

Verilog条件表达式,verilog,fpga,Verilog,Fpga,有谁能帮我写这两个条件语句吗 这两者应该给出相同的输出…例如: 如果我用下面提到的方式写,它会给出输出,但是 大量延误 if(count==3'd2 || i<=16'd8192) begin count = 3'd1; AL1 = x[i]+x[i+1]; DL1 = x[i]-x[i+1]; i = i+2; end else begin count = count+1'd1; i = 16'd0; end if(count==3'd2

有谁能帮我写这两个条件语句吗 这两者应该给出相同的输出…例如:

如果我用下面提到的方式写,它会给出输出,但是 大量延误

if(count==3'd2 || i<=16'd8192) begin
  count = 3'd1;
  AL1   = x[i]+x[i+1];
  DL1   = x[i]-x[i+1];
  i     = i+2;
end
else begin
  count = count+1'd1;
  i     = 16'd0;
end

if(count==3'd2 | | i问题是代码在功能上不相同还是语法错误

两个代码示例都有一个尾随
end
,在格式化问题中的代码时,我已将其删除

if语句的Verilogs begin-end语法为:

if ( condition a ) begin
  // a true
end
else begin
  // a false
end 
对于二级嵌入式条件,它将是:

if ( condition a ) begin
  if ( condition b ) begin
    // a & b true
  end
  else begin
    // a true b false
  end 
end
else begin
  // a false
end 

如果这是一个问题,那么在编码时采用更严格的缩进样式将有助于发现这些错误。

我尝试使用第二种方法运行代码…但最初我遇到了一些错误…现在我得到了输出..谢谢Morgan..@user3178637非常好。
if ( condition a ) begin
  if ( condition b ) begin
    // a & b true
  end
  else begin
    // a true b false
  end 
end
else begin
  // a false
end