我的变量声明如下:
output [6:0] dout_7seg_3, dout_7seg_2, dout_7seg_1, dout_7seg_0;
wire [6:0] dout_7seg [3:0];
并且我尝试通过如下编码将每个dout_7seg_i
分配给dout_7seg [i]
:
assign dout_7seg_3 = dout_7seg [6:0][3];
我得到这样的错误结果:
错误:(vlog-13069)“ [”:语法错误,意外的'[',期望';'或','。
我也尝试使用generate
块:
genvar i;
generate for (i = 0; i<7; i = i+1) begin
assign dout_7seg_3 = dout_7seg [i:0][3]; //I wanted to code like dout_7seg_i = dout_7seg [6:0][i]
end
endgenerate
并且也有相同的
vlog-13069错误
您能帮我解决这些错误吗?
由于分配了全部7位,因此无需使用压缩范围([6:0]
)。只需使用:
assign dout_7seg_3 = dout_7seg[3];
assign dout_7seg_2 = dout_7seg[2];
assign dout_7seg_1 = dout_7seg[1];
assign dout_7seg_0 = dout_7seg[0];
您弄乱了索引的顺序。它应如下所示:
assign dout_7seg_3 = dout_7seg [3][6:0];
包装尺寸排在最后。