Question: Verilog module: module test ( output [ 1 : 0 ] Q , input x , input clock, input reset ) ; reg [ 1

Verilog module:
module test(output [1:0] Q, input x, input clock, input reset);
reg [1:0] state;
parameter S0=2'b00, S1=2'b01, S2=2'b10, S3=2'b11;
always @ (posedge clock, negedge reset)
if(!reset) state<=S0;
else case(state)
S0: if(x) state<= ; else state<= ;
S1: if(x) state<= ; else state<= ;
S2: if(x) state<= ; else state<= ;
S3: if(x) state<= ; else state<= ;
endcase
assign Q=state;
endmodule
Testbench:
module t_test;
reg x; reg clock; reg reset;
wire [1:0] Q;
test uut (Q,x,clock,reset);
initial begin
x=1; clock=0; reset=0;
#1; reset =1;
# ; reset=0; x=0;
#1; reset=1;
end
always # clock=~clock;
initial # $finish;
endmodule

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!