Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Decod.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Decod.h	(revision 86)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Decod.h	(revision 88)
@@ -13,6 +13,4 @@
 #endif
 
-#include <iostream>
-#include <list>
 #include "Common/include/ToString.h"
 #include "Common/include/Debug.h"
@@ -29,4 +27,9 @@
 #endif
 #include "Behavioural/include/Usage.h"
+
+#include "Behavioural/Generic/Priority/include/Priority.h"
+
+#include <iostream>
+#include <list>
 
 namespace morpheo {
@@ -75,5 +78,5 @@
   public    : SC_IN (Tbranch_state_t    )  **  in_IFETCH_BRANCH_STATE                ;//[nb_context]
   public    : SC_IN (Tprediction_ptr_t  )  **  in_IFETCH_BRANCH_UPDATE_PREDICTION_ID ;//[nb_context]
-										     
+  public    : SC_IN (Texception_t       )  **  in_IFETCH_EXCEPTION                   ;//[nb_context]										     
     // ~~~~~[ Interface : "decod" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~	     
   public    : SC_OUT(Tcontrol_t         )  ** out_DECOD_VAL                          ;//[nb_inst_decod]
@@ -83,4 +86,5 @@
   public    : SC_OUT(Ttype_t            )  ** out_DECOD_TYPE                         ;//[nb_inst_decod]
   public    : SC_OUT(Toperation_t       )  ** out_DECOD_OPERATION                    ;//[nb_inst_decod]
+  public    : SC_OUT(Tcontrol_t         )  ** out_DECOD_NO_EXECUTE                   ;//[nb_inst_decod]
   public    : SC_OUT(Tcontrol_t         )  ** out_DECOD_IS_DELAY_SLOT                ;//[nb_inst_decod]
   public    : SC_OUT(Tgeneral_data_t    )  ** out_DECOD_ADDRESS                      ;//[nb_inst_decod]
@@ -98,4 +102,5 @@
   public    : SC_OUT(Tspecial_address_t )  ** out_DECOD_NUM_REG_RE                   ;//[nb_inst_decod]
   public    : SC_OUT(Texception_t       )  ** out_DECOD_EXCEPTION_USE                ;//[nb_inst_decod]
+  public    : SC_OUT(Texception_t       )  ** out_DECOD_EXCEPTION                    ;//[nb_inst_decod]
 
     // ~~~~~[ Interface : "predict" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -121,4 +126,5 @@
   public    : SC_IN (Tcontrol_t         )   *  in_CONTEXT_EVENT_ACK                  ;
   public    : SC_OUT(Tcontext_t         )   * out_CONTEXT_EVENT_CONTEXT_ID           ;
+  public    : SC_OUT(Tdepth_t           )   * out_CONTEXT_EVENT_DEPTH                ;
   public    : SC_OUT(Tevent_type_t      )   * out_CONTEXT_EVENT_TYPE                 ;
   public    : SC_OUT(Tcontrol_t         )   * out_CONTEXT_EVENT_IS_DELAY_SLOT        ;
@@ -127,7 +133,7 @@
 
     // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
+  private   : generic::priority::Priority   * _priority;
 
     // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~    
-  private   : uint32_t                        reg_CONTEXT_PRIORITY;
   private   : Tgeneral_data_t               * reg_CONTEXT_ADDRESS_PREVIOUS     ; //[nb_context]
   private   : Tcontrol_t                    * reg_CONTEXT_IS_DELAY_SLOT        ; //[nb_context]
@@ -136,4 +142,5 @@
   private   : Tcontrol_t                    * internal_CONTEXT_IS_DELAY_SLOT   ; //[nb_context]
 
+  private   : Tcontrol_t                    * internal_DECOD_VAL               ; //[nb_inst_decod]
     // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   private   : decod_instruction_t           * _decod_instruction;
@@ -141,5 +148,4 @@
   private   : function_decod_t           **** _function_decod   ; //[nb_context][type][opcod]
   private   : function_decod_t           **** _function_custom  ; //[nb_context][type][opcod]
-  private   : std::list<select_t>             select;
 #endif
 
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Parameters.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Parameters.h	(revision 86)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Parameters.h	(revision 88)
@@ -29,24 +29,15 @@
   public : uint32_t          * _nb_inst_fetch                ; //[nb_context]
   public : uint32_t            _nb_inst_decod                ;
-  public : uint32_t            _size_general_data            ;
-  public : uint32_t            _nb_branch_speculated         ;
-  public : uint32_t            _size_branch_update_prediction;
+//public : uint32_t            _size_general_data            ;
+  public : uint32_t          * _nb_branch_speculated         ; //[nb_context]
+//public : uint32_t          * _size_branch_update_prediction; //[nb_context]
   public : uint32_t            _nb_context_select            ;
   public : Tpriority_t         _priority                     ;
   public : Tload_balancing_t   _load_balancing               ;
   public : bool             ** _instruction_implemeted       ; //[nb_context][nb_instruction]
-  public : morpheo::behavioural::custom::custom_information_t (*_get_custom_information) (uint32_t);
+  public : morpheo::behavioural::custom::custom_information_t (*_get_custom_information) (void);
     
-  public : uint32_t            _max_nb_inst_fetch     ;
-
-  public : uint32_t            _size_address_inst     ;
-  public : uint32_t            _size_context_id       ;
-  public : uint32_t            _size_depth            ;
-  public : uint32_t            _size_inst_ifetch_ptr  ;
-						      
-  public : bool                _have_port_context_id                 ;
-  public : bool                _have_port_depth                      ;
-  public : bool                _have_port_branch_update_prediction_id;
-  public : bool                _have_port_inst_ifetch_ptr            ;
+  public : uint32_t            _max_nb_inst_fetch;
+//public : uint32_t            _size_address_inst;
 
     //-----[ methods ]-----------------------------------------------------------
@@ -55,15 +46,19 @@
 			uint32_t          * nb_inst_fetch                ,
 			uint32_t            nb_inst_decod                ,
+			uint32_t          * nb_branch_speculated         ,
+// 			uint32_t          * size_branch_update_prediction,
+			uint32_t            nb_context_select            ,
 			uint32_t            size_general_data            ,
-			uint32_t            nb_branch_speculated         ,
-			uint32_t            size_branch_update_prediction,
-			uint32_t            nb_context_select            ,
 			Tpriority_t         priority                     ,
 			Tload_balancing_t   load_balancing               ,
 			bool             ** instruction_implemeted       ,
-			morpheo::behavioural::custom::custom_information_t (*get_custom_information) (uint32_t));
+			morpheo::behavioural::custom::custom_information_t (*get_custom_information) (void),
+                        bool                is_toplevel=false
+                        );
 
 //   public : Parameters  (Parameters & param) ;
   public : ~Parameters () ;
+
+  public :        void            copy       (void);
 
   public :        Parameters_test msg_error  (void);
Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Types.h
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Types.h	(revision 86)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Decod_unit/Decod/include/Types.h	(revision 88)
@@ -19,17 +19,4 @@
 namespace decod {
 
-  class select_t
-  {
-  public : uint32_t _context ;
-  public : uint32_t _inst_fetch;
-    
-  public : select_t (uint32_t context,
-		     uint32_t inst_fetch)
-    {
-      _context    = context ;
-      _inst_fetch = inst_fetch;
-    }
-  };
-
 
 }; // end namespace decod
