Index: trunk/platforms/caba-ring-ccxcachev1_memcachev1-mipsel/top.cpp
===================================================================
--- trunk/platforms/caba-ring-ccxcachev1_memcachev1-mipsel/top.cpp	(revision 3)
+++ trunk/platforms/caba-ring-ccxcachev1_memcachev1-mipsel/top.cpp	(revision 85)
@@ -11,9 +11,7 @@
 #include "vci_simple_ram.h"
 #include "vci_multi_tty.h"
-//#include "vci_vgsb.h"
-//#include "vci_vgmn.h"
-#include "vci_simple_ring_network.h"
+#include "vci_vgmn.h"
 #include "vci_mem_cache_v1.h"
-#include "vci_cc_xcache_wrapper_multi.h"
+#include "vci_cc_xcache_wrapper_v1.h"
 #include "vci_logger.h"
 
@@ -42,7 +40,5 @@
 	maptabp.add(Segment("text" , TEXT_BASE , TEXT_SIZE , IntTab(2), true));
 	maptabp.add(Segment("tty"  , TTY_BASE  , TTY_SIZE  , IntTab(1), false));
-	maptabp.add(Segment("mc_r" , MC_R_BASE , MC_R_SIZE , IntTab(2), false, true, IntTab(0)));
 	maptabp.add(Segment("mc_m" , MC_M_BASE , MC_M_SIZE , IntTab(2), true ));
-	maptabp.add(Segment("ptba" , PTD_ADDR , TAB_SIZE   , IntTab(2), true));
  
 	std::cout << maptabp << std::endl;
@@ -53,10 +49,8 @@
 	maptabc.add(Segment("c_proc2" , C_PROC2_BASE , C_PROC2_SIZE , IntTab(2), false, true, IntTab(2)));
 	maptabc.add(Segment("c_proc3" , C_PROC3_BASE , C_PROC3_SIZE , IntTab(3), false, true, IntTab(3)));
-	maptabc.add(Segment("mc_r"    , MC_R_BASE , MC_R_SIZE , IntTab(4), false, false));
 	maptabc.add(Segment("mc_m"  , MC_M_BASE , MC_M_SIZE  , IntTab(4), false, false));
 	maptabc.add(Segment("reset", RESET_BASE, RESET_SIZE, IntTab(4), false, false));
 	maptabc.add(Segment("excep", EXCEP_BASE, EXCEP_SIZE, IntTab(4), false, false));
 	maptabc.add(Segment("text" , TEXT_BASE , TEXT_SIZE , IntTab(4), false, false));
-	maptabc.add(Segment("ptba" , PTD_ADDR  , TAB_SIZE  , IntTab(4), false, false));
 
 	std::cout << maptabc << std::endl;
@@ -67,5 +61,4 @@
 	maptabx.add(Segment("excep", EXCEP_BASE, EXCEP_SIZE, IntTab(0), false));
 	maptabx.add(Segment("text" , TEXT_BASE , TEXT_SIZE , IntTab(0), false));
-	maptabx.add(Segment("ptba" , PTD_ADDR  , TAB_SIZE  , IntTab(0), false));
 	
 	std::cout << maptabx << std::endl;
@@ -103,17 +96,17 @@
 	sc_signal<bool> signal_proc3_it5("proc3_it5");
 
-	soclib::caba::VciSignals<vci_param> signal_vci_ini_d_proc0("vci_ini_d_proc0");
+	soclib::caba::VciSignals<vci_param> signal_vci_ini_rw_proc0("vci_ini_rw_proc0");
 	soclib::caba::VciSignals<vci_param> signal_vci_ini_c_proc0("vci_ini_c_proc0");
 	soclib::caba::VciSignals<vci_param> signal_vci_tgt_proc0("vci_tgt_proc0");
 
-	soclib::caba::VciSignals<vci_param> signal_vci_ini_d_proc1("vci_ini_d_proc1");
+	soclib::caba::VciSignals<vci_param> signal_vci_ini_rw_proc1("vci_ini_rw_proc1");
 	soclib::caba::VciSignals<vci_param> signal_vci_ini_c_proc1("vci_ini_c_proc1");
 	soclib::caba::VciSignals<vci_param> signal_vci_tgt_proc1("vci_tgt_proc1");
 
-	soclib::caba::VciSignals<vci_param> signal_vci_ini_d_proc2("vci_ini_d_proc2");
+	soclib::caba::VciSignals<vci_param> signal_vci_ini_rw_proc2("vci_ini_rw_proc2");
 	soclib::caba::VciSignals<vci_param> signal_vci_ini_c_proc2("vci_ini_c_proc2");
 	soclib::caba::VciSignals<vci_param> signal_vci_tgt_proc2("vci_tgt_proc2");
 
-	soclib::caba::VciSignals<vci_param> signal_vci_ini_d_proc3("vci_ini_d_proc3");
+	soclib::caba::VciSignals<vci_param> signal_vci_ini_rw_proc3("vci_ini_rw_proc3");
 	soclib::caba::VciSignals<vci_param> signal_vci_ini_c_proc3("vci_ini_c_proc3");
 	soclib::caba::VciSignals<vci_param> signal_vci_tgt_proc3("vci_tgt_proc3");
@@ -140,15 +133,15 @@
 
         // Components
-	soclib::caba::VciCcXCacheWrapperMulti<vci_param, proc_iss > 
-	proc0("proc0", 0, maptabp, maptabc, IntTab(0),IntTab(0),IntTab(0),4,64,16,4,64,16,4,8);
-
-	soclib::caba::VciCcXCacheWrapperMulti<vci_param, proc_iss > 
-	proc1("proc1", 1, maptabp, maptabc, IntTab(1),IntTab(1),IntTab(1),4,64,16,4,64,16,4,8);
-
-	soclib::caba::VciCcXCacheWrapperMulti<vci_param, proc_iss > 
-	proc2("proc2", 2, maptabp, maptabc, IntTab(2),IntTab(2),IntTab(2),4,64,16,4,64,16,4,8);
-
-	soclib::caba::VciCcXCacheWrapperMulti<vci_param, proc_iss > 
-	proc3("proc3", 3, maptabp, maptabc, IntTab(3),IntTab(3),IntTab(3),4,64,16,4,64,16,4,8);
+	soclib::caba::VciCcXCacheWrapperV1<vci_param, proc_iss > 
+	proc0("proc0", 0, maptabp, maptabc, IntTab(0),IntTab(0),IntTab(0),4,64,16,4,64,16);
+
+	soclib::caba::VciCcXCacheWrapperV1<vci_param, proc_iss > 
+	proc1("proc1", 1, maptabp, maptabc, IntTab(1),IntTab(1),IntTab(1),4,64,16,4,64,16);
+
+	soclib::caba::VciCcXCacheWrapperV1<vci_param, proc_iss > 
+	proc2("proc2", 2, maptabp, maptabc, IntTab(2),IntTab(2),IntTab(2),4,64,16,4,64,16);
+
+	soclib::caba::VciCcXCacheWrapperV1<vci_param, proc_iss > 
+	proc3("proc3", 3, maptabp, maptabc, IntTab(3),IntTab(3),IntTab(3),4,64,16,4,64,16);
 
 	soclib::caba::VciSimpleRam<vci_param> 
@@ -170,24 +163,18 @@
 //      soclib::caba::VciLogger<vci_param> vci_logger_memc("vci_logger_memc",maptabp);
 
-	soclib::caba::VciSimpleRingNetwork<vci_param> 
-	ringd("ringd",maptabp, IntTab(), 2, 4, 3);
-//  	soclib::caba::VciVgsb<vci_param> 
-//	ringd("ringd",maptabp, 4, 3);
-//  	soclib::caba::VciVgmn<vci_param> 
-//	ringd("ringd",maptabp, 4, 3, 2, 2);
-
-	soclib::caba::VciSimpleRingNetwork<vci_param> 
-	ringc("ringc",maptabc, IntTab(), 2, 5, 5);
-//	soclib::caba::VciVgsb<vci_param> 
-//	ringc("ringc",maptabc, 5, 5);
-//  	soclib::caba::VciVgmn<vci_param> 
-//	ringc("ringd",maptabc, 5, 5, 2, 2);
-
-	soclib::caba::VciSimpleRingNetwork<vci_param> 
-	ringx("ringx",maptabx, IntTab(), 2, 1, 1);
-//	soclib::caba::VciVgsb<vci_param> 
-//	ringx("ringx",maptabx, 1, 1);
-//  	soclib::caba::VciVgmn<vci_param> 
-//	ringx("ringd",maptabx, 1, 1, 2, 2);
+//	soclib::caba::VciSimpleRingNetwork<vci_param> 
+//	ringd("ringd",maptabp, IntTab(), 2, 4, 3);
+    	soclib::caba::VciVgmn<vci_param> 
+  	ringd("ringd",maptabp, 4, 3, 2, 2);
+
+//	soclib::caba::VciSimpleRingNetwork<vci_param> 
+//	ringc("ringc",maptabc, IntTab(), 2, 5, 5);
+    	soclib::caba::VciVgmn<vci_param> 
+  	ringc("ringc",maptabc, 5, 5, 2, 2);
+
+//	soclib::caba::VciSimpleRingNetwork<vci_param> 
+//	ringx("ringx",maptabx, IntTab(), 2, 1, 1);
+    	soclib::caba::VciVgmn<vci_param> 
+  	ringx("ringx",maptabx, 1, 1, 2, 2);
 
 	// Net-List
@@ -201,7 +188,7 @@
 	proc0.p_irq[4](signal_proc0_it4); 
 	proc0.p_irq[5](signal_proc0_it5); 
-	proc0.p_vci_ini_d(signal_vci_ini_d_proc0);
+	proc0.p_vci_ini_rw(signal_vci_ini_rw_proc0);
 	proc0.p_vci_ini_c(signal_vci_ini_c_proc0);
-	proc0.p_vci_tgt_c(signal_vci_tgt_proc0);
+	proc0.p_vci_tgt(signal_vci_tgt_proc0);
 
 	proc1.p_clk(signal_clk);  
@@ -213,7 +200,7 @@
 	proc1.p_irq[4](signal_proc1_it4); 
 	proc1.p_irq[5](signal_proc1_it5); 
-	proc1.p_vci_ini_d(signal_vci_ini_d_proc1);
+	proc1.p_vci_ini_rw(signal_vci_ini_rw_proc1);
 	proc1.p_vci_ini_c(signal_vci_ini_c_proc1);
-	proc1.p_vci_tgt_c(signal_vci_tgt_proc1);
+	proc1.p_vci_tgt(signal_vci_tgt_proc1);
 
 	proc2.p_clk(signal_clk);  
@@ -225,7 +212,7 @@
 	proc2.p_irq[4](signal_proc2_it4); 
 	proc2.p_irq[5](signal_proc2_it5); 
-	proc2.p_vci_ini_d(signal_vci_ini_d_proc2);
+	proc2.p_vci_ini_rw(signal_vci_ini_rw_proc2);
 	proc2.p_vci_ini_c(signal_vci_ini_c_proc2);
-	proc2.p_vci_tgt_c(signal_vci_tgt_proc2);
+	proc2.p_vci_tgt(signal_vci_tgt_proc2);
 
 	proc3.p_clk(signal_clk);  
@@ -237,7 +224,7 @@
 	proc3.p_irq[4](signal_proc3_it4); 
 	proc3.p_irq[5](signal_proc3_it5); 
-	proc3.p_vci_ini_d(signal_vci_ini_d_proc3);
+	proc3.p_vci_ini_rw(signal_vci_ini_rw_proc3);
 	proc3.p_vci_ini_c(signal_vci_ini_c_proc3);
-	proc3.p_vci_tgt_c(signal_vci_tgt_proc3);
+	proc3.p_vci_tgt(signal_vci_tgt_proc3);
 
 	rom.p_clk(signal_clk);
@@ -247,17 +234,17 @@
 //  vci_logger_proc0.p_clk(signal_clk);
 //  vci_logger_proc0.p_resetn(signal_resetn);
-//  vci_logger_proc0.p_vci(signal_vci_ini_d_proc0);
+//  vci_logger_proc0.p_vci(signal_vci_ini_rw_proc0);
 
 //  vci_logger_proc1.p_clk(signal_clk);
 //  vci_logger_proc1.p_resetn(signal_resetn);
-//  vci_logger_proc1.p_vci(signal_vci_ini_d_proc2);
+//  vci_logger_proc1.p_vci(signal_vci_ini_rw_proc2);
 
 //  vci_logger_proc2.p_clk(signal_clk);
 //  vci_logger_proc2.p_resetn(signal_resetn);
-//  vci_logger_proc2.p_vci(signal_vci_ini_d_proc2);
+//  vci_logger_proc2.p_vci(signal_vci_ini_rw_proc2);
 
 //  vci_logger_proc3.p_clk(signal_clk);
 //  vci_logger_proc3.p_resetn(signal_resetn);
-//  vci_logger_proc3.p_vci(signal_vci_ini_d_proc3);
+//  vci_logger_proc3.p_vci(signal_vci_ini_rw_proc3);
 
 //  vci_logger_memc.p_clk(signal_clk);
@@ -286,8 +273,8 @@
 	ringd.p_clk(signal_clk);
 	ringd.p_resetn(signal_resetn);
-	ringd.p_to_initiator[0](signal_vci_ini_d_proc0);
-	ringd.p_to_initiator[1](signal_vci_ini_d_proc1);
-	ringd.p_to_initiator[2](signal_vci_ini_d_proc2);
-	ringd.p_to_initiator[3](signal_vci_ini_d_proc3);
+	ringd.p_to_initiator[0](signal_vci_ini_rw_proc0);
+	ringd.p_to_initiator[1](signal_vci_ini_rw_proc1);
+	ringd.p_to_initiator[2](signal_vci_ini_rw_proc2);
+	ringd.p_to_initiator[3](signal_vci_ini_rw_proc3);
 	ringd.p_to_target[0](signal_vci_tgt_rom);
 	ringd.p_to_target[1](signal_vci_tgt_tty);
@@ -336,12 +323,5 @@
         {
 		sc_start(sc_core::sc_time(1, SC_NS));
-                if ( i%10000 == 0 ) 
-                {
-			proc0.print_stats();
-			proc1.print_stats();
-			proc2.print_stats();
-			proc3.print_stats();
-			memc.print_stats();
-		}
+  
 	}
 
