Changes between Version 22 and Version 23 of Writing Rules/RISC


Ignore:
Timestamp:
Feb 15, 2008, 5:03:24 PM (16 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Writing Rules/RISC

    v22 v23  
    215215///////////
    216216iss_t  m_iss ;
     217bool m_iss_asked;
     218bool m_data_asked;
    217219
    218220/////////////////////////
     
    220222    {
    221223    bool ifrz = p_icache.frz.read() ;
    222     bool ireq = p_icache.req.read() ;
    223224    bool iberr = p_icache.berr.read() ;
    224225
    225226    bool dfrz = p_dcache.frz.read() ;
    226227    bool dberr = p_dcache.berr.read() ;
    227     bool dreq = p_dcache.req.read() ;
    228228
    229229    if ( ! p_resetn.read() ) {
     
    232232    }
    233233
    234     if ( ireq ) m_iss.setInstruction( iberr, p_icache.ins.read() ) ;
    235 
    236     if ( dberr && ( !dreq || dfrz ) ) {
     234    if ( m_iss_asked ) m_iss.setInstruction( iberr, p_icache.ins.read() ) ;
     235
     236    if ( dberr && ( !m_data_asked || dfrz ) ) {
    237237        m_iss.setWriteBerr() ;
    238     } else if ( dreq ) {
     238    } else if ( m_data_asked ) {
    239239        m_iss.setDataResponse( dberr, p_dcache.rdata.read() ) ;
    240240    }
     
    265265
    266266    m_ins_asked = ins_req ;
    267     m_data_asket = data_req ;
     267    m_data_asked = data_req ;
    268268
    269269    p_icache.req = ins_req ;