Verilog测试台错误多路复用4x1使用EDAPlayground



我正在Verilog中使用EDAPlayground进行多路复用4x1,但我仍然会遇到测试台错误,我不知道为什么。

这里有一个错误:

错误VCP2000";语法错误。意外的令牌:和[_and]"quot;design.sv";26 6

module mux4x1(
input x1, x2, x3, x4, s0, s1, 
output f);
wire s0_inv, out_x1, out_x2;
wire s1_inv, out_x3, out_x4;
wire out_mux1, out_mux2;
wire out_mux3, out_mux4;

// mux2x1_1
not (s1_inv, s1);
and (out_x1, s1_inv, x1);
and (out_x2, s1, x2);
or (out_mux1, out_x1, out_x2);
// mux2x1_2
not (s1_inv, s1);
and (out_x3, s1_inv, x3);
and (out_x4, s1, x4);
or (out_mux2, out_x3, out_x4);

// mux4x1
not (s0_inv, s0)
and (out_mux3, s0_inv, out_mux1);
and (out_mux4, s0_inv, out_mux2);
or (f, out_mux3, out_mux4);
endmodule 

链接:https://www.edaplayground.com/x/bkNc

当我试图只编译你的设计代码时,我得到了这个错误:

and (out_mux3, s0_inv, out_mux1);
|
xmvlog: *E,EXPSMC : expecting a semicolon (';') [7.1(IEEE)].

这种类型的错误通常是由报告行上方的代码行引起的:

not (s0_inv, s0)

只需添加分号:

not (s0_inv, s0);

EDAplayground提供了几种不同的模拟器,其中一些提供了比其他更有用的错误消息。你已经为奥尔德准备好了;例如,切换到Cadence以查看不同的错误消息。

最新更新