diff --git a/verilog/dv/Makefile b/verilog/dv/Makefile
index be842fc..d151b60 100644
--- a/verilog/dv/Makefile
+++ b/verilog/dv/Makefile
@@ -19,10 +19,6 @@
 .SUFFIXES:
 .SILENT: clean all
 
-export DESIGNS = $(CARAVEL_ROOT)
-export TOOLS = /opt/riscv32i/
-
-echo $TOOLS
 
 PATTERNS = io_ports la_test1 la_test2 wb_port mprj_stimulus
 
diff --git a/verilog/dv/io_ports/io_ports_tb.v b/verilog/dv/io_ports/io_ports_tb.v
index 08843ce..4e526ba 100644
--- a/verilog/dv/io_ports/io_ports_tb.v
+++ b/verilog/dv/io_ports/io_ports_tb.v
@@ -26,6 +26,7 @@
 	reg RSTB;
 	reg CSB;
 	reg power1, power2;
+	reg power3, power4;
 
 	wire gpio;
 	wire [37:0] mprj_io;
@@ -35,13 +36,13 @@
 	// assign mprj_io_0 = {mprj_io[8:4],mprj_io[2:0]};
 
 	// assign mprj_io[3] = (CSB == 1'b1) ? 1'b1 : 1'bz;
-	// assign mprj_io[3] = 1'b1;
+	// assign mprj_io[3] = CSB;
 
 	// External clock is used by default.  Make this artificially fast for the
 	// simulation.  Normally this would be a slow clock and the digital PLL
 	// would be the fast clock.
 
-	always #10 clock <= (clock === 1'b0);
+	always #12.5 clock <= (clock === 1'b0);
 
 	initial begin
 		clock = 0;
@@ -78,10 +79,6 @@
 		wait(mprj_io_0 == 8'h08);
 		wait(mprj_io_0 == 8'h09);
 		wait(mprj_io_0 == 8'h0A);   
-		wait(mprj_io_0 == 8'h0A);   
-		wait(mprj_io_0 == 8'h0A);   
-		wait(mprj_io_0 == 8'h0A);   
-		wait(mprj_io_0 == 8'h0A);   
 		wait(mprj_io_0 == 8'hFF);
 		wait(mprj_io_0 == 8'h00);
 		
@@ -95,18 +92,26 @@
 
 	initial begin
 		RSTB <= 1'b0;
-		#1000;
-		RSTB <= 1'b1;	    // Release reset
+		CSB  <= 1'b1;		// Force CSB high
 		#2000;
+		RSTB <= 1'b1;	    	// Release reset
+		#170000;
+		CSB = 1'b0;		// CSB can be released
 	end
 
 	initial begin		// Power-up sequence
 		power1 <= 1'b0;
 		power2 <= 1'b0;
-		#200;
+		power3 <= 1'b0;
+		power4 <= 1'b0;
+		#100;
 		power1 <= 1'b1;
-		#200;
+		#100;
 		power2 <= 1'b1;
+		#100;
+		power3 <= 1'b1;
+		#100;
+		power4 <= 1'b1;
 	end
 
 	always @(mprj_io) begin
diff --git a/verilog/dv/la_test1/la_test1_tb.v b/verilog/dv/la_test1/la_test1_tb.v
index 93fafeb..4f251fa 100644
--- a/verilog/dv/la_test1/la_test1_tb.v
+++ b/verilog/dv/la_test1/la_test1_tb.v
@@ -50,24 +50,11 @@
 		$dumpvars(0, la_test1_tb);
 
 		// Repeat cycles of 1000 clock edges as needed to complete testbench
-		// repeat (200) begin
-		// 	repeat (1000) @(posedge clock);
-		// 	$display("+1000 cycles");
-		// end
-		// $display("%c[1;31m",27);
-		// `ifdef GL
-		// 	$display ("Monitor: Timeout, Test LA (GL) Failed");
-		// `else
-		// 	$display ("Monitor: Timeout, Test LA (RTL) Failed");
-		// `endif
-		// $display("%c[0m",27);
-		// $finish;
-		// $display("Wait for UART o/p");
-		repeat (450) begin
+		repeat (200) begin
 			repeat (1000) @(posedge clock);
-			// Diagnostic. . . interrupts output pattern.
+			// $display("+1000 cycles");
 		end
-        $display("%c[1;31m",27);
+		$display("%c[1;31m",27);
 		`ifdef GL
 			$display ("Monitor: Timeout, Test LA (GL) Failed");
 		`else
@@ -77,29 +64,22 @@
 		$finish;
 	end
 
-	// initial begin
-	// 	wait(checkbits == 16'hAB40);
-	// 	$display("LA Test 1 started");
-	// 	wait(checkbits == 16'hAB41);
-	// 	wait(checkbits == 16'hAB51);
-	// 	#10000;
-	// 	$finish;
-	// end
-
-	// initial begin
-	// 	RSTB <= 1'b0;
-	// 	CSB  <= 1'b1;		// Force CSB high
-	// 	#2000;
-	// 	RSTB <= 1'b1;	    	// Release reset
-	// 	#170000;
-	// 	CSB = 1'b0;		// CSB can be released
-	// end
+	initial begin
+		wait(checkbits == 16'hAB40);
+		$display("LA Test 1 started");
+		wait(checkbits == 16'hAB41);
+		wait(checkbits == 16'hAB51);
+		#10000;
+		$finish;
+	end
 
 	initial begin
 		RSTB <= 1'b0;
-		#1000;
-		RSTB <= 1'b1;	    // Release reset
+		CSB  <= 1'b1;		// Force CSB high
 		#2000;
+		RSTB <= 1'b1;	    	// Release reset
+		#170000;
+		CSB = 1'b0;		// CSB can be released
 	end
 
 	initial begin		// Power-up sequence
@@ -111,23 +91,6 @@
 		power2 <= 1'b1;
 	end
 
-	always @(checkbits) begin
-		if(checkbits == 16'hAB40) begin
-			$display("LA Test 1 started");
-		end
-		else if(checkbits == 16'hAB41) begin
-			$display("First check passed");
-		end
-		else if(checkbits == 16'hAB51) begin
-			`ifdef GL
-				$display("UART Test (GL) passed");
-			`else
-				$display("UART Test (RTL) passed");
-			`endif
-			$finish;
-		end
-	end
-
 	wire flash_csb;
 	wire flash_clk;
 	wire flash_io0;
diff --git a/verilog/dv/mprj_stimulus/mprj_stimulus_tb.v b/verilog/dv/mprj_stimulus/mprj_stimulus_tb.v
index 8088ecc..1f956a3 100644
--- a/verilog/dv/mprj_stimulus/mprj_stimulus_tb.v
+++ b/verilog/dv/mprj_stimulus/mprj_stimulus_tb.v
@@ -33,14 +33,10 @@
     wire [37:0] mprj_io;
     wire [15:0] checkbits;
     wire [3:0] status;
-    wire [1:0] lol;
-    wire [15:0] lol2;
 
     // Signals Assignment
     assign checkbits  = mprj_io[31:16];
     assign status = mprj_io[35:32];
-    assign lol = mprj_io[37:36];
-    assign lol2 = mprj_io[15:0];
 
 
     // Force CSB high until simulation is underway
@@ -88,11 +84,11 @@
 
     // Reset Operation
     initial begin
-		RSTB <= 1'b0;
+        RSTB <= 1'b0;
         CSB <= 1'b1;
-		#1000;
-		RSTB <= 1'b1;	    // Release reset
-		#2000;
+        #1000;
+        RSTB <= 1'b1;	    // Release reset
+        #2000;
     end
 
     initial begin		// Power-up sequence
