modified the testing to test two srams with different address mappings
diff --git a/verilog/dv/wb_test/wb_test.c b/verilog/dv/wb_test/wb_test.c
index 1ccc88b..b60d51a 100644
--- a/verilog/dv/wb_test/wb_test.c
+++ b/verilog/dv/wb_test/wb_test.c
@@ -22,20 +22,19 @@
 // Caravel allows user project to use 0x30xx_xxxx address space on Wishbone bus
 // OpenRAM
 // 0x30c0_0000 till 30c0_03ff -> 256 Words of OpenRAM (1024 Bytes)
-#define OPENRAM_BASE_ADDRESS		0x30000000
-#define OPENRAM_SIZE_DWORDS		256ul			
-#define OPENRAM_SIZE_BYTES		(4ul * OPENRAM_SIZE_DWORDS)
-#define OPENRAM_ADDRESS_MASK		(OPENRAM_SIZE_BYTES - 1)
-#define OPENRAM_MEM(offset)		(*(volatile uint32_t*)(OPENRAM_BASE_ADDRESS + (offset & OPENRAM_ADDRESS_MASK)))
+#define SRAM8_BASE_ADDRESS		0x30000000
+#define SRAM8_SIZE_DWORDS		256ul			
+#define SRAM8_SIZE_BYTES		(4ul * SRAM8_SIZE_DWORDS)
+#define SRAM8_ADDRESS_MASK		(SRAM8_SIZE_BYTES - 1)
+#define SRAM8_MEM(offset)		(*(volatile uint32_t*)(SRAM8_BASE_ADDRESS + (offset & SRAM8_ADDRESS_MASK)))
+
+#define SRAM9_BASE_ADDRESS		0x30000400
+#define SRAM9_SIZE_DWORDS		512ul			
+#define SRAM9_SIZE_BYTES		(4ul * SRAM9_SIZE_DWORDS)
+#define SRAM9_ADDRESS_MASK		(SRAM9_SIZE_BYTES - 1)
+#define SRAM9_MEM(offset)		(*(volatile uint32_t*)(SRAM9_BASE_ADDRESS + (offset & SRAM9_ADDRESS_MASK)))
 
 
-// Generates 32bits wide value out of address, not random
-unsigned long generate_value(unsigned long address)
-{
-	return ((~address & OPENRAM_ADDRESS_MASK) << 19) + 
-		((~address & OPENRAM_ADDRESS_MASK) << 12) ^
-		((~address & OPENRAM_ADDRESS_MASK) << 2);
-}
 
 void main()
 {
@@ -66,11 +65,13 @@
 	// all of the GPIO pins to be used for user functions.
 
 
-	// All GPIO pins are configured to be output
-	// Used to flad the start/end of a test 
+	// GPIO pin 28 Used to flag the start/end of a test 
+	// GPIO pin 29 Used to indicate error in writing/reading sram 8
+	// GPIO pin 30 Used to indicate error in writing/reading sram 9
 
 	reg_mprj_io_28 = GPIO_MODE_MGMT_STD_OUTPUT;
 	reg_mprj_io_29 = GPIO_MODE_MGMT_STD_OUTPUT;
+	reg_mprj_io_30 = GPIO_MODE_MGMT_STD_OUTPUT;
 	/* Apply configuration */
 	reg_mprj_xfer = 1;
 	while (reg_mprj_xfer == 1);
@@ -79,34 +80,50 @@
 	reg_mprj_datal = 0x10000000;
 
 
-	// configuring them as output so that we can provide a stable de-asserted reset through caravel la pin 126	
-	reg_la3_oenb = reg_la3_iena = 0x00000000;    // [127:96]
-	// writing 0 so that la pin 126 gets 0 and de-activates the reset instead of keeping it dont care.
-	reg_la3_data = 0x00000000;
-
-	OPENRAM_MEM(0) = 0xdeadbeef;
-	OPENRAM_MEM(4) = 0xdeadbee0;
-	OPENRAM_MEM(8) = 0xffffffff;
-	OPENRAM_MEM(12) = 0xdeaddead;
+	SRAM8_MEM(0) = 0xdeadbeef;
+	SRAM9_MEM(0) = 0xbeefdead;
+	SRAM8_MEM(4) = 0xdeadbee0;
+	SRAM9_MEM(4) = 0xbee0dead;
+	SRAM8_MEM(8) = 0xffffffff;
+	SRAM9_MEM(8) = 0x12345678;
+	SRAM8_MEM(12) = 0xdeaddead;
+	SRAM9_MEM(12) = 0x10101010;
 	// this is not working because the data is correct but sp rams send an additional x which makes this fail
-	if (OPENRAM_MEM(0) != 0xdeadbeef) {
+	if (SRAM8_MEM(0) != 0xdeadbeef) {
 		// send an error signal to the testbench
 		reg_mprj_datal = 0x20000000;
 	}
-	if (OPENRAM_MEM(4) != 0xdeadbee0) {
+	if (SRAM8_MEM(4) != 0xdeadbee0) {
 		// send an error signal to the testbench
 		reg_mprj_datal = 0x20000000;
 	}
-	if (OPENRAM_MEM(8) != 0xffffffff) {
+	if (SRAM8_MEM(8) != 0xffffffff) {
 		// send an error signal to the testbench
 		reg_mprj_datal = 0x20000000;
 	}
-	if (OPENRAM_MEM(12) != 0xdeaddead) {
+	if (SRAM8_MEM(12) != 0xdeaddead) {
 		// send an error signal to the testbench
 		reg_mprj_datal = 0x20000000;
 	}
 
 
+	// this is not working because the data is correct but sp rams send an additional x which makes this fail
+	if (SRAM9_MEM(0) != 0xbeefdead) {
+		// send an error signal to the testbench
+		reg_mprj_datal = 0x40000000;
+	}
+	if (SRAM9_MEM(4) != 0xbee0dead) {
+		// send an error signal to the testbench
+		reg_mprj_datal = 0x40000000;
+	}
+	if (SRAM9_MEM(8) != 0x12345678) {
+		// send an error signal to the testbench
+		reg_mprj_datal = 0x40000000;
+	}
+	if (SRAM9_MEM(12) != 0x10101010) {
+		// send an error signal to the testbench
+		reg_mprj_datal = 0x40000000;
+	}
 
 	reg_mprj_datal = 0x00000000;			
 }
diff --git a/verilog/dv/wb_test/wb_test_tb.v b/verilog/dv/wb_test/wb_test_tb.v
index 78e3400..a401540 100644
--- a/verilog/dv/wb_test/wb_test_tb.v
+++ b/verilog/dv/wb_test/wb_test_tb.v
@@ -83,7 +83,12 @@
 	
 	initial begin
 		wait (mprj_io_29 == 1'b1);
-		$display($time, " Data mismatch while reading data from SRAM 0!"); 
+		$display($time, " Data mismatch while reading data from SRAM 8!"); 
+	end
+
+	initial begin
+		wait (mprj_io_30 == 1'b1);
+		$display($time, " Data mismatch while reading data from SRAM 9!"); 
 	end
 
    initial begin