是什么导致了“我放弃的语法错误”。在这个verilog文件中?

问题描述 投票:0回答:2

我刚刚开始使用 Verilog,我正在尝试创建一个 32 位和模块,但我不明白为什么这段代码会给我一个语法错误,并且没有任何有用的错误消息

module and2(out, a, b)

    input [1:0] a, b;
    output [1:0] out;
    and a0(out[0], a[0], b[0]);
    and a1(out[1], a[1], b[1]);

endmodule


module and4(out, a, b)

    input [3:0] a, b;
    output [3:0] out;
    and2 a0(out[1:0], a[1:0], b[1:0]);
    and2 a1(out[3:2], a[3:2], b[3:2]);

endmodule


module and8(out, a, b)

    input [7:0] a, b;
    output [7:0] out;
    and4 a0(out[3:0], a[3:0], b[3:0]);
    and4 a1(out[7:4], a[7:4], b[7:4]);

endmodule


module and16(out, a, b)

    input [15:0] a, b;
    output [15:0] out;
    and8 a0(out[7:0], a[7:0], b[7:0]);
    and8 a1(out[15:8], a[15:8], b[15:8]);

endmodule


module and32(out, a, b)

    input [31:0] a, b;
    output [31:0] out;
    and16 a0(out[15:0], a[15:0], b[15:0]);
    and16 a1(out[31:16], a[31:16], b[31:16]);

endmodule

这是错误消息:

PS C:\iverilog\bin\240404> iverilog -o and32_tb.vvp and32_tb.v
./and32.v:3: syntax error
I give up.
verilog
2个回答
0
投票

所有

module
标题行在末尾都缺失
;

module and2(out, a, b); // <—- end with semicolon 

0
投票

大多数 Verilog 语法错误是因为报告的行号之前出现问题。

第 1 行末尾缺少一个分号以及其他

module

 标题。

© www.soinside.com 2019 - 2024. All rights reserved.