Ignore:
Timestamp:
Mar 19, 2014, 11:29:23 AM (10 years ago)
Author:
meunier
Message:
  • Modifications in the tsar_generic_xbar topcell (remaining bugs)
  • Minor bug correction in the vci_mem_cache regarding counters
Location:
trunk/modules/vci_mem_cache/caba/source
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/vci_mem_cache/caba/source/include/vci_mem_cache.h

    r605 r663  
    405405      // instrumentation counters
    406406      uint32_t     m_cpt_cycles;         // Counter of cycles
     407      uint32_t     m_cpt_reset_count;    // Cycle at which the counters were last reset
    407408
    408409      // Counters accessible in software (not yet but eventually)
     
    449450      uint32_t     m_cpt_write_miss;     // Number of MISS WRITE
    450451      uint32_t     m_cpt_write_dirty;    // Cumulated length for WRITE transactions
    451       uint32_t     m_cpt_write_broadcast;// Number of BROADCAST INVAL because write
     452      uint32_t     m_cpt_write_broadcast;// Number of BROADCAST INVAL because of writes
    452453
    453454      uint32_t     m_cpt_trt_rb;         // Read blocked by a hit in trt
     
    515516      ~VciMemCache();
    516517
     518      void reset_counters();
    517519      void print_stats(bool activity_counters, bool stats);
    518520      void print_trace( size_t detailed = 0 );
  • trunk/modules/vci_mem_cache/caba/source/src/vci_mem_cache.cpp

    r649 r663  
    3131 *              alexandre.joannou@lip6.fr
    3232 */
     33
    3334
    3435#include "../include/vci_mem_cache.h"
     
    799800    }
    800801
     802   
     803    /////////////////////////////////////////
     804    tmpl(void)::reset_counters()
     805    /////////////////////////////////////////
     806    {
     807        m_cpt_reset_count        = m_cpt_cycles;
     808        m_cpt_read_local         = 0;
     809        m_cpt_read_remote        = 0;
     810        m_cpt_read_cost          = 0;
     811        m_cpt_write_local        = 0;
     812        m_cpt_write_remote       = 0;
     813        m_cpt_write_flits_local  = 0;
     814        m_cpt_write_flits_remote = 0;
     815        m_cpt_write_cost         = 0;
     816        m_cpt_ll_local           = 0;
     817        m_cpt_ll_remote          = 0;
     818        m_cpt_ll_cost            = 0;
     819        m_cpt_sc_local           = 0;
     820        m_cpt_sc_remote          = 0;
     821        m_cpt_sc_cost            = 0;
     822        m_cpt_cas_local          = 0;
     823        m_cpt_cas_remote         = 0;
     824        m_cpt_cas_cost           = 0;
     825        m_cpt_update             = 0;
     826        m_cpt_update_local       = 0;
     827        m_cpt_update_remote      = 0;
     828        m_cpt_update_cost        = 0;
     829        m_cpt_minval             = 0;
     830        m_cpt_minval_local       = 0;
     831        m_cpt_minval_remote      = 0;
     832        m_cpt_minval_cost        = 0;
     833        m_cpt_binval             = 0;
     834        m_cpt_cleanup_local      = 0;
     835        m_cpt_cleanup_remote     = 0;
     836        m_cpt_cleanup_cost       = 0;
     837        m_cpt_read_miss          = 0;
     838        m_cpt_write_miss         = 0;
     839        m_cpt_write_dirty        = 0;
     840        m_cpt_trt_rb             = 0;
     841        m_cpt_trt_full           = 0;
     842        m_cpt_get                = 0;
     843        m_cpt_put                = 0;
     844    }
    801845
    802846    /////////////////////////////////////////
     
    812856            std::cout << "----------------------------------" << std::dec << std::endl;
    813857            std::cout
     858                << "[000] COUNTERS RESET AT CYCLE   = " << m_cpt_reset_count << std::endl
    814859                << "[001] NUMBER OF CYCLES          = " << m_cpt_cycles << std::endl
    815860                << std::endl
     
    941986        delete [] m_debug_data;
    942987
    943         print_stats();
     988        //print_stats();
    944989    }
    945990
     
    10681113            // Activity counters
    10691114            m_cpt_cycles             = 0;
     1115            m_cpt_reset_count        = 0;
    10701116            m_cpt_read_local         = 0;
    10711117            m_cpt_read_remote        = 0;
     
    12061252                if (p_vci_tgt.cmdval)
    12071253                {
    1208 
    12091254#if DEBUG_MEMC_TGT_CMD
    12101255                    if (m_debug)
     
    37053750                            "MEMC ERROR in WRITE_BC_DIR_READ state: Bad DIR allocation");
    37063751
    3707                     m_cpt_write_broadcast++;
    3708 
    37093752                    // write enable signal for data buffer.
    37103753                    r_write_bc_data_we = true;
     
    55095552                            << " address = "   << std::hex << r_cleanup_nline.read()*m_words*4
    55105553                            << " / way = "   << std::dec << r_cleanup_way.read()
    5511                             << " / srcid = " << std::dec << r_cleanup_srcid.read()
     5554                            << " / srcid = " << std::hex << r_cleanup_srcid.read()
    55125555                            << std::endl;
    55135556#endif
     
    66396682                    // <Activity Counters>
    66406683                    m_cpt_binval++;
     6684                    m_cpt_write_broadcast++;
    66416685                    // </Activity Counters>
    66426686
Note: See TracChangeset for help on using the changeset viewer.