缩进在Verilog中是否重要?

时间:2013-10-12 06:58:16

标签: verilog

缩进在Verilog HDL中是否像在Python中一样重要? 或者更像是C ++,重要的是你是否正确放置了{和}块?

编辑:这是在我的教科书中写的:

always @(A or B or select)
  if(select == 1) m_out = A;
  else m_out = B;

这里看起来块是由缩进定义的。为什么会这样?

1 个答案:

答案 0 :(得分:6)

不,缩进在Verilog中无关紧要(作为额外的空格,制表符和换行符)。它不是使用缩进,而是使用beginend个关键字(以及endmodule)来分隔块。因此,您只需要正确地放置这些关键字即可。例如:

always
 begin
   clk = 0;
   #1;
   clk = 1;
   #1;
 end

在您的示例中,ifelse块仅包含一个语句,因此您无需使用begin / {{ 1}}关键字(C中有类似的东西)。另外,end块只包含一个always块,因此我们也不需要if-else / begin。如果这些块中的任何一个有超过1个语句,我们必须使用end / begin。例如:

end