Changeset 333 for branches


Ignore:
Timestamp:
Mar 22, 2013, 5:40:44 PM (11 years ago)
Author:
joannou
Message:
  • In vci_cc_vcache_wrapper_dspin_coherence : initializing update_last_client var in CC_SEND_IDLE
  • In vci_mem_cache_dspin_coherence : added missing else in CLEANUP_HEAP_LOCK_STATE
Location:
branches/v5/modules
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/v5/modules/vci_cc_vcache_wrapper_dspin_coherence/caba/source/src/vci_cc_vcache_wrapper_dspin_coherence.cpp

    r331 r333  
    52735273            // a request of the other, then update the client    //
    52745274            ///////////////////////////////////////////////////////
    5275             // r_cc_send_last_client : 0 dcache 1 icache
    5276             bool update_last_client;
     5275            // r_cc_send_last_client : 0 dcache / 1 icache
     5276            bool update_last_client = r_cc_send_last_client.read();
    52775277            if ( r_cc_send_last_client.read() == 0 ) // last client was dcache
    52785278            {
    5279                 if(r_icache_cc_send_req.read()) // request from icache
     5279                if (r_icache_cc_send_req.read()) // request from icache
    52805280                    update_last_client = 1; // update last client to icache
    52815281            }
    52825282            else // last client was icache
    52835283            {
    5284                 if(r_dcache_cc_send_req.read()) // request from dcache
     5284                if (r_dcache_cc_send_req.read()) // request from dcache
    52855285                    update_last_client = 0; // update last client to dcache
    52865286            }
     
    53085308        case CC_SEND_CLEANUP_1:
    53095309        {
     5310/**/
     5311#if DEBUG_DCACHE
     5312if ( m_debug_dcache_fsm )
     5313{
     5314        std::cout << "  <PROC " << name()
     5315              << " r_dcache_cc_send_nline = " << r_dcache_cc_send_nline.read() << std::endl;
     5316}
     5317#endif
    53105318            // wait for the first flit to be consumed
    5311             if(p_dspin_out.read.read())
     5319            if (p_dspin_out.read.read())
    53125320                r_cc_send_fsm = CC_SEND_CLEANUP_2;
    53135321
     
    53165324        ///////////////////////////
    53175325        case CC_SEND_CLEANUP_2:
     5326/**/
     5327#if DEBUG_DCACHE
     5328if ( m_debug_dcache_fsm )
     5329{
     5330        std::cout << "  <PROC " << name()
     5331              << " r_dcache_cc_send_nline = " << r_dcache_cc_send_nline.read() << std::endl;
     5332}
     5333#endif
    53185334        {
    53195335            assert( p_dspin_out.read.read() and
     
    53215337
    53225338            // wait for the second flit to be consumed
    5323             if(p_dspin_out.read.read())
    5324             {
    5325                 if(r_cc_send_last_client.read() == 0) // dcache active request
     5339            if (p_dspin_out.read.read())
     5340            {
     5341                if (r_cc_send_last_client.read() == 0) // dcache active request
    53265342                    r_dcache_cc_send_req = false; // reset dcache request
    53275343                else // icache active request
  • branches/v5/modules/vci_mem_cache_dspin_coherence/caba/source/src/vci_mem_cache_dspin_coherence.cpp

    r331 r333  
    518518  {
    519519    std::cout << " MEMC Write Monitor : " << buf << " Address = " << std::hex << addr
    520               << " / Data = " << data << std::endl;
     520              << " / Data = " << data << " at cycle " << std::dec << m_cpt_cycles << std::endl;
    521521  }
    522522}
     
    41514151      // It must be freed and the copy registered in directory
    41524152      // must point to the next copy in heap
    4153       if(match_heap)
     4153      else if(match_heap)
    41544154      {
    41554155        dir_entry.ptr            = heap_entry.next;
     
    41644164        r_cleanup_fsm            = CLEANUP_HEAP_FREE;
    41654165      }
     4166
    41664167      // The matching copy is in the heap, but is not the first copy
    41674168      // The directory entry must be modified to decrement count
Note: See TracChangeset for help on using the changeset viewer.