Changeset 219
- Timestamp:
- Mar 23, 2012, 9:00:31 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/modules/vci_cc_vcache_wrapper_v4/caba/source/src/vci_cc_vcache_wrapper_v4.cpp
r218 r219 3633 3633 set, 3634 3634 &nline ); 3635 3635 3636 assert(hit && "selected way/set line should be in dcache"); 3636 3637 … … 3657 3658 r_itlb.reset(); 3658 3659 r_dtlb.reset(); 3659 r_dcache_fsm = DCACHE_MISS_WAIT; 3660 r_dcache_contains_ptd[way*m_dcache_sets+set] = false; 3661 r_dcache_fsm = DCACHE_MISS_WAIT; 3660 3662 } 3661 3663 else 3662 3664 { 3663 r_dcache_fsm 3665 r_dcache_fsm = DCACHE_MISS_WAIT; 3664 3666 } 3665 3667 break; … … 4008 4010 r_itlb.reset(); 4009 4011 r_dtlb.reset(); 4012 r_dcache_contains_ptd[way*m_dcache_sets+set] = false; 4010 4013 r_dcache_fsm = DCACHE_IDLE; 4011 4014 } … … 4123 4126 if ( r_dcache_in_tlb[way*m_dcache_sets+set] ) // selective inval 4124 4127 { 4128 r_dcache_in_tlb[way*m_dcache_sets+set] = false; 4125 4129 r_dcache_tlb_inval_line = nline; 4126 4130 r_dcache_tlb_inval_count = 0; 4127 4131 r_dcache_fsm_scan_save = r_dcache_fsm.read(); 4128 4132 r_dcache_fsm = DCACHE_INVAL_TLB_SCAN; 4129 r_dcache_in_tlb[way*m_dcache_sets+set] = false;4130 4133 } 4131 4134 else if ( r_dcache_contains_ptd[way*m_dcache_sets+set] ) // flush … … 4167 4170 if ( r_dcache_in_tlb[way*m_dcache_sets+set] ) // selective inval 4168 4171 { 4172 r_dcache_in_tlb[way*m_dcache_sets+set] = false; 4169 4173 r_dcache_tlb_inval_line = nline; 4170 4174 r_dcache_tlb_inval_count = 0; 4171 4175 r_dcache_fsm_scan_save = r_dcache_fsm.read(); 4172 4176 r_dcache_fsm = DCACHE_INVAL_TLB_SCAN; 4173 r_dcache_in_tlb[way*m_dcache_sets+set] = false; 4174 } 4175 else if ( r_dcache_contains_ptd[way*m_dcache_sets+set] ) // flush 4177 } 4178 else if ( r_dcache_contains_ptd[way*m_dcache_sets+set] ) // flush 4176 4179 { 4177 4180 r_itlb.reset(); 4178 4181 r_dtlb.reset(); 4182 r_dcache_contains_ptd[way*m_dcache_sets+set] = false; 4179 4183 r_tgt_dcache_rsp = true; 4180 4184 r_tgt_dcache_req = false; 4181 4185 r_dcache_fsm = r_dcache_fsm_cc_save.read(); 4182 r_dcache_contains_ptd[way*m_dcache_sets+set] = false; 4183 } 4184 else // no inval 4186 } 4187 else // no inval / no flush 4185 4188 { 4186 4189 r_dcache.write( way,
Note: See TracChangeset
for help on using the changeset viewer.