Ignore:
Timestamp:
Nov 13, 2019, 6:24:53 PM (4 years ago)
Author:
alain
Message:

Improve the print_trace() function to display CP2 registers.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/vci_cc_vcache_wrapper/caba/source/src/vci_cc_vcache_wrapper.cpp

    r1061 r1063  
    502502              << "  MMU_MODE = " << r_mmu_mode.read()
    503503              << " | MMU_PTPR = " << r_mmu_ptpr.read()
    504               << " | LLSC_COUNT = " << r_llsc_count.read()
     504              << " | MMU_DEXT = " << r_mmu_dext.read()
     505              << " | MMU_IEXT = " << r_mmu_iext.read() << std::endl;
     506
     507    std::cout << "  LLSC_COUNT = " << r_llsc_count.read()
    505508              << " | LLSC_PADDR = " << r_llsc_paddr.read()
    506509              << " | LLSC_KEY = " << r_llsc_key.read();
     
    793796
    794797        // reset data physical address extension
    795         r_dcache_paddr_ext = m_dcache_paddr_ext_reset;
     798        r_mmu_dext = m_dcache_paddr_ext_reset;
    796799
    797800        // reset inst physical address extension
    798         r_icache_paddr_ext = m_icache_paddr_ext_reset;
     801        r_mmu_iext = m_icache_paddr_ext_reset;
    799802
    800803        // reset dcache directory extension
     
    11531156            else if ((int) r_dcache_xtn_opcode.read() == (int) iss_t::XTN_INST_PADDR_EXT)
    11541157            {
    1155                 r_icache_paddr_ext = r_dcache_save_wdata.read();
     1158                r_mmu_iext = r_dcache_save_wdata.read();
    11561159                r_dcache_xtn_req   = false;
    11571160            }
     
    12001203            else if (vci_param::N > 32)
    12011204            {
    1202                 paddr = paddr | ((paddr_t) r_icache_paddr_ext.read() << 32);
     1205                paddr = paddr | ((paddr_t) r_mmu_iext.read() << 32);
    12031206            }
    12041207
     
    23272330                // we take into account the paddr extension
    23282331                if (vci_param::N > 32)
    2329                     paddr = paddr | ((paddr_t) (r_dcache_paddr_ext.read()) << 32);
     2332                    paddr = paddr | ((paddr_t) (r_mmu_dext.read()) << 32);
    23302333            }
    23312334        } // end physical address computation
     
    25502553
    25512554                    case iss_t::XTN_DATA_PADDR_EXT:
    2552                         m_drsp.rdata = r_dcache_paddr_ext.read();
     2555                        m_drsp.rdata = r_mmu_dext.read();
    25532556                        m_drsp.valid = true;
    25542557                        m_drsp.error = false;
     
    25562559
    25572560                    case iss_t::XTN_INST_PADDR_EXT:
    2558                         m_drsp.rdata = r_icache_paddr_ext.read();
     2561                        m_drsp.rdata = r_mmu_iext.read();
    25592562                        m_drsp.valid = true;
    25602563                        m_drsp.error = false;
     
    26782681
    26792682                    case iss_t::XTN_DATA_PADDR_EXT:  // no cache or tlb access
    2680                         r_dcache_paddr_ext = m_dreq.wdata;
     2683                        r_mmu_dext = m_dreq.wdata;
    26812684                        m_drsp.valid       = true;
    26822685                        r_dcache_fsm       = DCACHE_IDLE;
     
    39974000            paddr = (paddr_t)r_dcache_save_wdata.read();
    39984001            if (vci_param::N > 32)
    3999                 paddr = paddr | ((paddr_t)(r_dcache_paddr_ext.read()) << 32);
     4002                paddr = paddr | ((paddr_t)(r_mmu_dext.read()) << 32);
    40004003            hit = true;
    40014004        }
Note: See TracChangeset for help on using the changeset viewer.