0
\$\begingroup\$

My original file has the following

module circuit_320a(A,B,C,D,N,F);
 output N,F;
 input A,B,C,D;
 wire w1,w2,w3,w4;
 and #(30) G1(w1,C,D);
 or #(30) G2(w2,w1,B);
 and #(30) G3(w3,w2,A);
 not #(30) G5(N,c);
 and #(30) G4(w4,B,N);
 or #(30)(F,w3,w4);
endmodule

and my testbench has these

`include "ask.v"
module t_circuit_320a_delay;
 wire N,F;
 reg A,B,C,D;
t_circuit_320a_delay M1 (A,B,C,D,N,F);
initial
 begin
 A=1'b0; B=1'b1; C=1'b0; D=1'b1;
 end
 initial #200 $finish;
 $dumpfile("ask.vcd"); 
 $dumpvars(0, ask_tb);
endmodule

When I try to compile I get syntax errors, why is that?

I have named the original file ask.v and the testbench ask_tb.v

Errors

asked Mar 30, 2019 at 21:27
\$\endgroup\$
4
  • \$\begingroup\$ Please share the complete error messages. It will make it much easier to find the problem. \$\endgroup\$ Commented Mar 30, 2019 at 21:54
  • \$\begingroup\$ One thing, you didn't name your last or gate like you did the other gates. \$\endgroup\$ Commented Mar 30, 2019 at 21:56
  • \$\begingroup\$ @ThePhoton yes one moment please , see edits \$\endgroup\$ Commented Mar 30, 2019 at 21:56
  • \$\begingroup\$ @ThePhoton Yes because it is the output of the schematic \$\endgroup\$ Commented Mar 30, 2019 at 21:58

1 Answer 1

0
\$\begingroup\$

You need to read the FAQ.

Specifically, the $ commands need to be in an initial block, to wit:

`include "ask.v"
module t_circuit_320a_delay;
 wire N,F;
 reg A,B,C,D;
 circuit_320a M1 (A,B,C,D,N,F);
 initial begin
 A=1'b0; B=1'b1; C=1'b0; D=1'b1;
 end
 initial #200 $finish;
 initial begin
 $dumpfile("ask.vcd");
 $dumpvars(0, t_circuit_320a_delay);
 end
endmodule

It will also help if you instantiate the correct module. t_circuit_320a_delay should be instatiating circuit_320a, not itself, and the $dumpvar call needs to refer to t_circuit_320a_delay, not the name of the file.

answered Mar 30, 2019 at 22:53
\$\endgroup\$
2
  • \$\begingroup\$ I still get errors , please see the edit \$\endgroup\$ Commented Mar 30, 2019 at 23:03
  • \$\begingroup\$ Neverimind I had a syntax error , wrote inital instead of initial \$\endgroup\$ Commented Mar 30, 2019 at 23:08

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.