First not working implementation of controller

This commit is contained in:
lasse 2025-02-20 12:29:17 +01:00
parent e1a3bc3d8b
commit 39b767629c
4 changed files with 400 additions and 11 deletions

View File

@ -18,8 +18,8 @@ module controller #(parameter N=21)
typedef enum logic [2:0] {Central, Forward, Gentle_l, Sharp_l, Gentle_r, Sharp_r} control_state;
control_state state, next_state;
always_ff @(posedge clk) begin
if(reset)
always_ff @(posedge clk, posedge count_reset, posedge reset) begin
if(count_reset | reset)
state <= Central;
else
state <= next_state;
@ -28,6 +28,11 @@ end
assign sensors_lmr = {sensor_l, sensor_m, sensor_r};
always_comb begin
if (count_in >= 21'd2_000_000 | reset)
count_reset = 1;
else
count_reset = 0;
case(state)
Central: begin
motor_l_reset = 1;
@ -46,33 +51,33 @@ always_comb begin
end
Forward: begin
motor_l_reset = 0;
motor_l_direction = 0;
motor_l_direction = 1;
motor_r_reset = 0;
motor_r_direction = 1;
motor_r_direction = 0;
end
Gentle_l: begin
motor_l_reset = 1;
motor_l_direction = 0;
motor_r_reset = 0;
motor_r_direction = 1;
motor_r_direction = 0;
end
Sharp_l: begin
motor_l_reset = 0;
motor_l_direction = 1;
motor_l_direction = 0;
motor_r_reset = 0;
motor_r_direction = 1;
motor_r_direction = 0;
end
Gentle_r: begin
motor_l_reset = 0;
motor_l_direction = 0;
motor_l_direction = 1;
motor_r_reset = 1;
motor_r_direction = 0;
end
Sharp_r: begin
motor_l_reset = 0;
motor_l_direction = 0;
motor_l_direction = 1;
motor_r_reset = 0;
motor_r_direction = 0;
motor_r_direction = 1;
end
default: begin
motor_l_reset = 1;

View File

@ -7,7 +7,48 @@ module robot
input logic sensor_r_in,
output logic motor_l_pwm,
output logic motor_r_pwm);
output logic motor_r_pwm,
output logic [20:0] count,
output logic count_reset,
output logic motor_l_reset,
output logic motor_r_reset
);
//logic count;
logic motor_l_direction, motor_r_direction;
logic sensor_l, sensor_m, sensor_r;
inputbuffer inputbuffer_module(
.clk(clk),
.sensor_l_in(sensor_l_in), .sensor_r_in(sensor_r_in), .sensor_m_in(sensor_m_in),
.sensor_l_out(sensor_l), .sensor_m_out(sensor_m), .sensor_r_out(sensor_r)
);
timebase timebase_module(
.clk(clk), .reset(count_reset), .count(count)
);
controller control_module(
.clk(clk), .reset(reset),
.sensor_l(sensor_l), .sensor_m(sensor_m), .sensor_r(sensor_r),
.count_in(count), .count_reset(count_reset),
.motor_l_reset(motor_l_reset), .motor_l_direction(motor_l_direction), .motor_r_reset(motor_r_reset), .motor_r_direction(motor_r_direction)
);
motorcontrol motorcontrol_l_module(
.clk(clk),
.rst(motor_l_reset), .direction(motor_l_direction),
.count_in(count),
.pwm(motor_l_pwm)
);
motorcontrol motorcontrol_r_module(
.clk(clk),
.rst(motor_r_reset), .direction(motor_r_direction),
.count_in(count),
.pwm(motor_r_pwm)
);
endmodule

42
ch4/robot_tb.sv Normal file
View File

@ -0,0 +1,42 @@
`timescale 1ns/1ps
module robot_tb();
logic clk;
logic reset;
logic sensor_l;
logic sensor_m;
logic sensor_r;
logic [2:0] sensors;
logic motor_l_pwm, motor_r_pwm;
logic [20:0] count;
logic count_reset;
logic motor_l_reset, motor_r_reset;
robot test (clk, reset, sensor_l, sensor_m, sensor_r,
motor_l_pwm, motor_r_pwm, count, count_reset, motor_l_reset, motor_r_reset);
assign {sensor_l, sensor_m, sensor_r} = sensors;
always
#5ns clk = ~clk; // period 10ns (100 MHz)
initial
clk = 0;
initial begin
#0ms; reset = 1;
#40ms; reset = 0;
end
initial begin
#0ms; sensors = 3'b000; // Forward
#70ms; sensors = 3'b001; // Gentle left
#40ms; sensors = 3'b010; // Forward
#40ms; sensors = 3'b011; // Sharp left
#40ms; sensors = 3'b100; // Gentle right
#40ms; sensors = 3'b101; // Forward
#40ms; sensors = 3'b110; // Sharp right
#40ms; sensors = 3'b111; // Forward
end
endmodule

View File

@ -63,3 +63,304 @@ quit -sim
# Compile of controller.sv failed with 2 errors.
# Compile of controller.sv failed with 2 errors.
# Compile of controller.sv was successful.
# Compile of robot.sv failed with 2 errors.
# Compile of robot.sv failed with 1 errors.
# Compile of robot.sv was successful.
# Compile of robot.sv was successful.
# Compile of controller.sv was successful.
# Compile of robot_tb.sv was successful.
vsim -novopt work.robot_tb
# vsim -novopt work.robot_tb
# Start time: 10:38:36 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot_tb
# Loading sv_std.std
# Loading work.robot_tb
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot
# Loading work.robot
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.inputbuffer
# Loading work.inputbuffer
# Loading work.timebase
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.controller
# Loading work.controller
# Loading work.motorcontrol
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(23): [PCDPC] - Port size (21) does not match connection size (1) for port 'count'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv(6).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/timebase_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(27): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv(9).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/control_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(34): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_l_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(41): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_r_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
run 40ms
run 400ms
quit -sim
# End time: 10:43:00 on Feb 20,2025, Elapsed time: 0:04:24
# Errors: 0, Warnings: 5
# Compile of robot.sv failed with 1 errors.
# Compile of robot.sv failed with 1 errors.
# Compile of robot.sv was successful.
# Compile of robot_tb.sv was successful.
vsim -novopt work.timebase_tb
# vsim -novopt work.timebase_tb
# Start time: 10:45:57 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Loading sv_std.std
# Loading work.timebase_tb
# Loading work.timebase
run 40ns
quit -sim
# End time: 10:46:32 on Feb 20,2025, Elapsed time: 0:00:35
# Errors: 0, Warnings: 1
vsim -novopt work.robot_tb
# vsim -novopt work.robot_tb
# Start time: 10:46:49 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot_tb
# Loading sv_std.std
# Loading work.robot_tb
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Warning: (vsim-3017) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot_tb.sv(13): [TFMPC] - Too few port connections. Expected 8, found 7.
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv
# ** Warning: (vsim-3722) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot_tb.sv(13): [TFMPC] - Missing connection for port 'count'.
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(24): [PCDPC] - Port size (21) does not match connection size (1) for port 'count'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv(6).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/timebase_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(28): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv(9).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/control_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(35): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_l_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(42): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_r_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
quit -sim
# End time: 10:47:07 on Feb 20,2025, Elapsed time: 0:00:18
# Errors: 0, Warnings: 7
# Compile of robot_tb.sv was successful.
vsim -novopt work.robot_tb
# vsim -novopt work.robot_tb
# Start time: 10:47:59 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot_tb
# Loading sv_std.std
# Loading work.robot_tb
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(24): [PCDPC] - Port size (21) does not match connection size (1) for port 'count'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv(6).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/timebase_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(28): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv(9).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/control_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(35): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_l_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(42): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_r_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
run 40ns
quit -sim
# End time: 10:48:40 on Feb 20,2025, Elapsed time: 0:00:41
# Errors: 0, Warnings: 5
# Compile of robot.sv was successful.
vsim -novopt work.robot_tb
# vsim -novopt work.robot_tb
# Start time: 10:50:49 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Loading sv_std.std
# Loading work.robot_tb
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(25): [PCDPC] - Port size (21) does not match connection size (1) for port 'count'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv(6).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/timebase_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(29): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv(9).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/control_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(36): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_l_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(43): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_r_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
run 400ms
# Compile of robot.sv failed with 1 errors.
# Compile of robot.sv failed with 1 errors.
# Compile of robot.sv was successful.
# Compile of robot.sv failed with 1 errors.
# Compile of robot.sv was successful.
vsim -novopt work.robot_tb
# End time: 10:55:41 on Feb 20,2025, Elapsed time: 0:04:52
# Errors: 0, Warnings: 5
# vsim -novopt work.robot_tb
# Start time: 10:55:41 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Loading sv_std.std
# Loading work.robot_tb
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Warning: (vsim-3017) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot_tb.sv(14): [TFMPC] - Too few port connections. Expected 9, found 8.
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv
# ** Warning: (vsim-3722) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot_tb.sv(14): [TFMPC] - Missing connection for port 'count_reset'.
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(24): [PCDPC] - Port size (21) does not match connection size (1) for port 'count'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv(6).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/timebase_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(28): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv(9).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/control_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(35): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_l_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(42): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_r_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# Compile of robot_tb.sv was successful.
vsim -novopt work.robot_tb
# End time: 10:56:14 on Feb 20,2025, Elapsed time: 0:00:33
# Errors: 0, Warnings: 7
# vsim -novopt work.robot_tb
# Start time: 10:56:14 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot_tb
# Loading sv_std.std
# Loading work.robot_tb
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(24): [PCDPC] - Port size (21) does not match connection size (1) for port 'count'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv(6).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/timebase_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(28): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv(9).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/control_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(35): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_l_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(42): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_r_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
run 40ms
run 400ms
# Compile of robot_tb.sv was successful.
# Compile of robot_tb.sv was successful.
# Compile of robot_tb.sv was successful.
# Compile of robot.sv was successful.
vsim -novopt work.robot_tb
# End time: 10:58:49 on Feb 20,2025, Elapsed time: 0:02:35
# Errors: 0, Warnings: 5
# vsim -novopt work.robot_tb
# Start time: 10:58:49 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot_tb
# Loading sv_std.std
# Loading work.robot_tb
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(24): [PCDPC] - Port size (21) does not match connection size (1) for port 'count'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv(6).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/timebase_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/timebase.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(28): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv(9).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/control_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/controller.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(35): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_l_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
# ** Warning: (vsim-3015) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv(42): [PCDPC] - Port size (21) does not match connection size (1) for port 'count_in'. The port definition is at: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv(7).
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test/motorcontrol_r_module File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/motorcontrol.sv
run 100ms
vsim work.motorcontrol
# End time: 11:00:13 on Feb 20,2025, Elapsed time: 0:01:24
# Errors: 0, Warnings: 5
# vsim work.motorcontrol
# Start time: 11:00:13 on Feb 20,2025
# ** Error: (vsim-7) Failed to open info file "C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/DSB/github/ch4/work/_info" in read mode.
# No such file or directory. (errno = ENOENT)
# ** Note: (vsim-3813) Design is being optimized due to module recompilation...
# ** Error: (vopt-7) Failed to open info file "C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/DSB/github/ch4/work/_info" in read mode.
# No such file or directory. (errno = ENOENT)
# Optimization failed
# ** Error: (vopt-1933) Unable to create temporary directory C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/DSB/github/ch4/work/_tempmsg
# No such file or directory. (errno = ENOENT)
# Error loading design
# End time: 11:00:14 on Feb 20,2025, Elapsed time: 0:00:01
# Errors: 1, Warnings: 0
vsim work.controller
# vsim work.controller
# Start time: 11:00:18 on Feb 20,2025
# ** Note: (vsim-3812) Design is being optimized...
# Loading sv_std.std
# Loading work.controller(fast)
# Compile of controller.sv was successful.
# Compile of robot.sv was successful.
# Compile of robot_tb.sv was successful.
vsim -novopt work.robot_tb
# End time: 11:02:46 on Feb 20,2025, Elapsed time: 0:02:28
# Errors: 0, Warnings: 0
# vsim -novopt work.robot_tb
# Start time: 11:02:46 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot_tb
# Loading sv_std.std
# Loading work.robot_tb
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.controller
# Loading work.controller
# Loading work.motorcontrol
# ** Fatal: (vsim-3365) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot_tb.sv(15): Too many port connections. Expected 8, found 9.
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv
# FATAL ERROR while loading design
# Error loading design
# End time: 11:02:47 on Feb 20,2025, Elapsed time: 0:00:01
# Errors: 1, Warnings: 1
vsim -novopt work.robot_tb
# vsim -novopt work.robot_tb
# Start time: 11:02:54 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Loading sv_std.std
# Loading work.robot_tb
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Fatal: (vsim-3365) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot_tb.sv(15): Too many port connections. Expected 8, found 9.
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv
# FATAL ERROR while loading design
# Error loading design
# End time: 11:02:54 on Feb 20,2025, Elapsed time: 0:00:00
# Errors: 1, Warnings: 1
# Compile of robot_tb.sv was successful.
vsim -novopt work.robot_tb
# vsim -novopt work.robot_tb
# Start time: 11:03:11 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# Refreshing C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/work.robot_tb
# Loading sv_std.std
# Loading work.robot_tb
# Loading work.robot
# Loading work.inputbuffer
# Loading work.timebase
# Loading work.controller
# Loading work.motorcontrol
# ** Fatal: (vsim-3365) C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot_tb.sv(15): Too many port connections. Expected 8, found 9.
# Time: 0 ps Iteration: 0 Instance: /robot_tb/test File: C:/Users/Stan Oremus/OneDrive/Documenten/TU Delft Lasse Oremus/Q3_2024_2025/DSB/github/ch4/robot.sv
# FATAL ERROR while loading design
# Error loading design
# End time: 11:03:12 on Feb 20,2025, Elapsed time: 0:00:01
# Errors: 1, Warnings: 1
# Compile of robot.sv was successful.
vsim -novopt work.robot_tb
# vsim -novopt work.robot_tb
# Start time: 11:03:48 on Feb 20,2025
# ** Warning: (vsim-8891) All optimizations are turned off because the -novopt switch is in effect. This will cause your simulation to run very slowly. If you are using this switch to preserve visibility for Debug or PLI features please see the User's Manual section on Preserving Object Visibility with vopt.
# ** License Issue: License request for qhsimvl feature failed
# ** License Issue: License server machine is down or not responding. (27017@flexserv1.tudelft.nl)
# ** License Issue: Cannot find license file. (C:\flexlm\license.dat)
# ** Error: Failure to obtain a Verilog simulation license. Unable to checkout any of these license features: 'qhsimvl' or 'msimhdlsim'.
# Error loading design
# End time: 11:03:48 on Feb 20,2025, Elapsed time: 0:00:00
# Errors: 0, Warnings: 1