- Timestamp:
- Oct 28, 2010, 5:35:15 PM (14 years ago)
- Location:
- trunk/modules/vci_synthetic_initator/caba/sources
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/modules/vci_synthetic_initator/caba/sources/include/vci_synthetic_initiator.h
r106 r111 39 39 #include "int_tab.h" 40 40 #include "mapping_table.h" 41 #include "arithmetics.h" 41 42 42 43 namespace soclib { namespace caba { -
trunk/modules/vci_synthetic_initator/caba/sources/src/vci_synthetic_initiator.cpp
r106 r111 134 134 << " : " << m_cpt_cycles << " cycles " 135 135 << " : state = " << state_str[r_vci_fsm] 136 << " Adresse to send : " << m_address_to_send << std::endl; 136 << " Adresse to send : " << m_address_to_send 137 << " Number of broadcast to receive : " << m_bc_nrsp << std::endl; 137 138 } 138 139 … … 188 189 if (m_date_fifo.rok()){ 189 190 if (r_broadcast_req.read()){ 190 m_address_to_send = (((((((((m_xmin << 5) | m_xmax ) << 5 ) | m_ymin ) << 5 ) | m_ymax ) << 5 ) << vci_param::N-(4*5) ) | 0x3) | 0;191 m_address_to_send = 0x3 | (0x7c1f << vci_param::N-20) ; 191 192 r_vci_fsm = VCI_BC_SEND ; 192 193 } else { 193 194 r_vci_fsm = VCI_SINGLE_SEND ; 194 m_address_to_send = destAdress() << 32-10;195 m_address_to_send = destAdress() << (vci_param::N)-(soclib::common::uint32_log2((uint32_t)m_xmesh)+soclib::common::uint32_log2((uint32_t)m_ymesh)); 195 196 m_count = 0; 196 197 } … … 229 230 case VCI_BC_SEND: 230 231 { 231 m_bc_nrsp = (m_xmax - m_xmin) * (m_ymax - m_ymin); 232 r_vci_fsm = VCI_BC_SEND; 233 break; 232 if (p_vci.cmdack.read()) { 233 m_bc_nrsp = (m_xmax - m_xmin) * (m_ymax - m_ymin) ; 234 r_vci_fsm = VCI_BC_RECEIVE; 235 break; 236 } 234 237 } 235 238 //////////////////// … … 237 240 { 238 241 if (p_vci.rspval.read()){ 239 if (m_bc_nrsp == 0) {242 if (m_bc_nrsp == 1) { 240 243 r_broadcast_req = false; 241 244 m_address_to_send = 0;
Note: See TracChangeset
for help on using the changeset viewer.