Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Ifetch_queue/src/Ifetch_queue_vhdl_declaration.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Ifetch_queue/src/Ifetch_queue_vhdl_declaration.cpp	(revision 81)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Ifetch_unit/Ifetch_queue/src/Ifetch_queue_vhdl_declaration.cpp	(revision 135)
@@ -23,4 +23,70 @@
   {
     log_printf(FUNC,Ifetch_queue,FUNCTION,"Begin");
+
+    vhdl->set_constant ("IFETCH_QUEUE_STATE_EMPTY           ",IFETCH_QUEUE_STATE_SIZE,IFETCH_QUEUE_STATE_EMPTY);
+//  vhdl->set_constant ("IFETCH_QUEUE_STATE_WAIT_REQ        ",IFETCH_QUEUE_STATE_SIZE,IFETCH_QUEUE_STATE_WAIT_REQ);
+    vhdl->set_constant ("IFETCH_QUEUE_STATE_WAIT_RSP        ",IFETCH_QUEUE_STATE_SIZE,IFETCH_QUEUE_STATE_WAIT_RSP);
+    vhdl->set_constant ("IFETCH_QUEUE_STATE_HAVE_RSP        ",IFETCH_QUEUE_STATE_SIZE,IFETCH_QUEUE_STATE_HAVE_RSP);
+    vhdl->set_constant ("IFETCH_QUEUE_STATE_ERROR_WAIT_RSP  ",IFETCH_QUEUE_STATE_SIZE,IFETCH_QUEUE_STATE_ERROR_WAIT_RSP);
+    
+    vhdl->set_constant ("EXCEPTION_IFETCH_NONE              ",_param->_size_exception_ifetch,EXCEPTION_IFETCH_NONE);
+    vhdl->set_constant ("EXCEPTION_IFETCH_BUS_ERROR         ",_param->_size_exception_ifetch,EXCEPTION_IFETCH_BUS_ERROR);
+
+    vhdl->set_constant ("ICACHE_ERROR_NONE                  ",_param->_size_icache_error,ICACHE_ERROR_NONE);    
+    vhdl->set_constant ("ICACHE_ERROR_BUS_ERROR             ",_param->_size_icache_error,ICACHE_ERROR_BUS_ERROR);    
+
+    if (_param->_size_queue>1)
+      {
+    vhdl->set_signal  ("reg_PTR_READ                        ", log2(_param->_size_queue));
+    vhdl->set_signal  ("reg_PTR_WRITE                       ", log2(_param->_size_queue));
+      }
+     if (_param->_have_port_ifetch_queue_ptr)
+       {
+	 if (_param->_size_queue>1)
+	   vhdl->set_signal  ("reg_PACKET_PTR                 ", log2(_param->_size_queue));
+	 else 
+	   vhdl->set_signal  ("reg_PACKET_PTR                 ", 1);
+       }
+
+    vhdl->set_signal  ("reg_EMPTY                            ", 1);	
+
+    vhdl->set_type    ("Tcase                                ","array ("+toString(_param->_nb_instruction-1)+" downto 0) of "+std_logic(_param->_size_instruction));
+    vhdl->set_type    ("Tcase_enable                         ","array ("+toString(_param->_nb_instruction-1)+" downto 0) of std_logic");
+
+    vhdl->set_type    ("Tstate                               ","array ("+toString(_param->_size_queue-1)+" downto 0) of "+std_logic(IFETCH_QUEUE_STATE_SIZE));
+    vhdl->set_signal  ("reg_STATE                            ", "Tstate");
+   
+    vhdl->set_type    ("Tqueue                               ","array ("+toString(_param->_size_queue-1)+" downto 0) of Tcase");
+    vhdl->set_signal  ("reg_DATA                             ", "Tqueue");
+    
+    vhdl->set_type    ("Tenable                              ","array ("+toString(_param->_size_queue-1)+" downto 0) of Tcase_enable");
+    vhdl->set_signal  ("reg_INSTRUCTION_ENABLE               ", "Tenable");
+    vhdl->set_type    ("Tadress                              ","array ("+toString(_param->_size_queue-1)+" downto 0) of "+std_logic(_param->_size_instruction));
+    vhdl->set_signal  ("reg_ADDRESS                          ", "Tadress");
+
+    if (_param->_have_port_inst_ifetch_ptr) 
+      {
+       vhdl->set_type    ("Tinst_ptr                         ","array ("+toString(_param->_size_queue-1)+" downto 0) of "+std_logic(_param->_size_inst_ifetch_ptr));
+       vhdl->set_signal  ("reg_INST_IFETCH_PTR               ", "Tinst_ptr");
+      }
+    if (_param->_have_port_depth)
+      {
+	vhdl->set_type    ("Tbranch                           ","array ("+toString(_param->_size_queue-1)+" downto 0) of "+std_logic(_param->_size_depth));
+	vhdl->set_signal  ("reg_BRANCH_UPDATE_PREDICTION_ID   ", "Tbranch");
+      }
+    vhdl->set_type    ("Tbranch_state                         ","array ("+toString(_param->_size_queue-1)+" downto 0) of "+std_logic(_param->_size_branch_state));
+    vhdl->set_signal  ("reg_BRANCH_STATE                      ", "Tbranch_state");
+    vhdl->set_type    ("Texception                            ","array ("+toString(_param->_size_queue-1)+" downto 0) of "+std_logic(_param->_size_exception_ifetch));
+    vhdl->set_signal  ("reg_EXCEPTION                         ", "Texception"); 
+    
+    for (uint32_t i=0; i<_param->_nb_instruction; ++i)
+    vhdl->set_signal  ("internal_DECOD_"+toString(i)+"_VAL                      ", 1);
+    vhdl->set_signal  ("internal_ADDRESS_ACK                  ", 1);    
+    vhdl->set_signal  ("internal_ICACHE_RSP_ACK               ", 1);
+    vhdl->set_signal  ("internal_EVENT_RESET_ACK              ", 1);
+    if(_param->_have_port_ifetch_queue_ptr)
+    vhdl->set_signal  ("internal_ICACHE_RSP_PACKET_ID         ", _param->_size_ifetch_queue_ptr);
+    vhdl->set_signal  ("internal_ack                          ", 1);
+
     log_printf(FUNC,Ifetch_queue,FUNCTION,"End");
   };
