zedd3337502212 2022-01-18 09:31 采纳率: 0%
浏览 254

verilog程序报错

这段程序实现的是计算输入位中为1的个数并赋值给输出
module top_module(
input [2:0] in,
output [1:0] out );
assign out=2'b0;
genvar i;
generate
for(i=0;i<3;i=i+1)begin:x
if(in[i]==1)begin
out=out+1;
end
end
endgenerate
endmodule
然后报错在
Error (10170): Verilog HDL syntax error at top_module.v(9) near text: "="; expecting ".", or "(". Check for and fix any syntax errors that appear immediately before or at the specified keyword. The Intel FPGA Knowledge Database contains many articles with specific details on how to resolve this error. Visit the Knowledge Database at https://www.altera.com/support/support-resources/knowledge-base/search.html and search for this specific error message number. File: /home/h/work/hdlbits.3327919/top_module.v Line: 9
Error (10112): Ignored design unit "top_module" at top_module.v(1) due to previous errors File: /home/h/work/hdlbits.3327919/top_module.v Line: 1
麻烦解答一下 谢谢!

  • 写回答

1条回答 默认 最新

  • 老皮芽子 2022-01-18 09:55
    关注
    
    module top_module
    (
        input    [2:0]    in,
        output    [1:0]    out 
    );
    reg        out_r = 0;
    assign    out    = out_r;
    genvar i;
    generate
    always@(in)
    begin
        for(i=0;i<3;i=i+1)
        begin:x
            out_r = out_r + in[i];
        end
    end
    endgenerate
    endmodule
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 1月18日