- Timestamp:
- Feb 19, 2012, 5:39:16 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
r195 r196 1229 1229 // 1230 1230 // In case of uncacheable address, the ICACHE FSM request an uncached VCI transaction 1231 // to CMD FSM usi g the r_icache_unc_req flip-flop, that reset this flip-flop1231 // to CMD FSM using the r_icache_unc_req flip-flop, that reset this flip-flop 1232 1232 // when the transaction starts. The ICACHE FSM goes to ICACHE_UNC_WAIT to wait 1233 1233 // the response from the RSP FSM, through the response fifo. The missing instruction … … 1240 1240 // the update is completed, and reset r_icache_tlb_miss_req to signal the completion. 1241 1241 // 1242 // The DCACHE FSM signals XTN processor requests using the r_dcache_xtn_req flip-flop. 1242 // The DCACHE FSM signals XTN processor requests to ICACHE_FSM 1243 // using the r_dcache_xtn_req flip-flop. 1243 1244 // The request opcode and the address to be invalidated are transmitted 1244 1245 // in the r_dcache_xtn_opcode and r_dcache_p0_wdata registers respectively. … … 3293 3294 case DCACHE_XTN_SWITCH: // Both itlb and dtlb must be flushed 3294 3295 { 3295 if ( r_dcache_xtn_req.read() )3296 if ( not r_dcache_xtn_req.read() ) 3296 3297 { 3297 3298 r_dtlb.flush(); … … 3303 3304 ///////////////////// 3304 3305 case DCACHE_XTN_SYNC: // waiting until write buffer empty 3305 { 3306 // The coherence request must be taken 3307 // as there is a risk of dead-lock 3308 { 3309 // external coherence request 3310 if ( r_tgt_dcache_req.read() ) 3311 { 3312 r_dcache_fsm = DCACHE_CC_CHECK; 3313 r_dcache_fsm_save = DCACHE_XTN_SYNC; 3314 } 3315 3306 3316 if ( r_wbuf.empty() ) 3307 3317 { … … 3556 3566 << " / set = " << set 3557 3567 << " / valid = " << valid 3558 << " / line = " << victim << std::endl;3568 << " / line = " << std::hex << victim << std::endl; 3559 3569 } 3560 3570 #endif
Note: See TracChangeset
for help on using the changeset viewer.