我可以在verilog的case语句中使用整数吗?

我可以在verilog的case语句中使用整数吗?,verilog,Verilog,我不确定以下代码在Verilog中是否有效。更具体地说,可以在case语句中使用整数作为条件,如: input [2:0]W; integer k=1; output [7:0]Y; case (W) k:y[k]=1; endcase 在张贴的问题中,您的输出Y是大写的,赋值中的Y是小写的,一旦解决了这个问题,case语句就不能独立存在,它们需要位于always或初始块中 例如: always @* begin case (W) k: y[k]=1; endcase end

我不确定以下代码在Verilog中是否有效。更具体地说,可以在case语句中使用整数作为条件,如:

input [2:0]W;
integer k=1;
output [7:0]Y;
case (W)
k:y[k]=1;
endcase

在张贴的问题中,您的输出Y是大写的,赋值中的Y是小写的,一旦解决了这个问题,case语句就不能独立存在,它们需要位于always或初始块中

例如:

always @* begin
  case (W)
    k: y[k]=1;
  endcase
end

整数只是一个32(或64)位的寄存器。语法上没有什么不同,使用整数代替RG.

为什么需要整数?你到底想完成什么?如果你想用一个标签来代替你的情况,也许考虑使用一个<代码>参数<代码>或<代码> LoalPARAM < /C> >,至少用这个代码,为什么不只是代码> y[W]=1;<代码>?