Changeset 37 for trunk/modules/vci_cc_vcache_wrapper2_multi
- Timestamp:
- Jun 1, 2010, 1:49:54 AM (14 years ago)
- Location:
- trunk/modules/vci_cc_vcache_wrapper2_multi/caba/source
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/modules/vci_cc_vcache_wrapper2_multi/caba/source/include/vci_cc_vcache_wrapper2_multi.h
r4 r37 393 393 sc_signal<bool> r_vci_rsp_ins_ok; 394 394 sc_signal<bool> r_vci_rsp_data_ok; 395 sc_signal<bool> r_dcache_tlb_sc_fail; 395 396 396 397 data_t *r_icache_miss_buf; -
trunk/modules/vci_cc_vcache_wrapper2_multi/caba/source/src/vci_cc_vcache_wrapper2_multi.cpp
r18 r37 279 279 r_vci_rsp_ins_ok("r_vci_rsp_ins_ok"), 280 280 r_vci_rsp_data_ok("r_vci_rsp_data_ok"), 281 r_dcache_tlb_sc_fail("r_dcache_tlb_sc_fail"), 281 282 282 283 r_vci_tgt_fsm("r_vci_tgt_fsm"), … … 520 521 521 522 r_dcache_cc_check = false; 523 r_dcache_tlb_sc_fail = false; 522 524 523 525 // activity counters … … 3000 3002 r_dcache_inval_tlb_rsp = false; 3001 3003 r_dcache_fsm = DCACHE_IDLE; 3004 if ( r_dcache_tlb_sc_fail ) r_dcache_tlb_sc_fail = false; 3002 3005 m_cost_data_tlb_miss_frz++; 3003 3006 } … … 3006 3009 r_dcache_inval_rsp = false; 3007 3010 r_dcache_fsm = DCACHE_IDLE; 3011 if ( r_dcache_tlb_sc_fail ) r_dcache_tlb_sc_fail = false; 3008 3012 } 3009 else if ( r_dcache_tlb_ ll_dirty_req)3013 else if ( r_dcache_tlb_sc_fail ) 3010 3014 { 3015 r_dcache_tlb_ll_dirty_req = true; 3011 3016 r_vci_rsp_data_ok = false; 3017 r_dcache_tlb_sc_fail = false; 3012 3018 r_dcache_fsm = DCACHE_LL_DIRTY_WAIT; 3013 3019 } … … 3245 3251 r_dcache_inval_tlb_rsp = false; 3246 3252 r_dcache_fsm = DCACHE_IDLE; 3253 if ( r_dcache_tlb_sc_fail ) r_dcache_tlb_sc_fail = false; 3247 3254 m_cost_data_tlb_miss_frz++; 3248 3255 } … … 3251 3258 r_dcache_inval_rsp = false; 3252 3259 r_dcache_fsm = DCACHE_IDLE; 3260 if ( r_dcache_tlb_sc_fail ) r_dcache_tlb_sc_fail = false; 3253 3261 } 3254 else if ( r_dcache_tlb_ ll_acc_req)3262 else if ( r_dcache_tlb_sc_fail ) 3255 3263 { 3264 r_dcache_tlb_ll_acc_req = true; 3256 3265 r_vci_rsp_data_ok = false; 3266 r_dcache_tlb_sc_fail = false; 3257 3267 r_dcache_fsm = DCACHE_TLB1_LL_WAIT; 3258 3268 } … … 3717 3727 r_dcache_inval_tlb_rsp = false; 3718 3728 r_dcache_fsm = DCACHE_IDLE; 3729 if ( r_dcache_tlb_sc_fail ) r_dcache_tlb_sc_fail = false; 3719 3730 m_cost_data_tlb_miss_frz++; 3720 3731 } … … 3723 3734 r_dcache_inval_rsp = false; 3724 3735 r_dcache_fsm = DCACHE_IDLE; 3736 if ( r_dcache_tlb_sc_fail ) r_dcache_tlb_sc_fail = false; 3725 3737 } 3726 else if ( r_dcache_tlb_ ll_acc_req)3738 else if ( r_dcache_tlb_sc_fail ) 3727 3739 { 3740 r_dcache_tlb_ll_acc_req = true; 3741 r_dcache_tlb_sc_fail = false; 3728 3742 r_vci_rsp_data_ok = false; 3729 3743 r_dcache_fsm = DCACHE_TLB2_LL_WAIT; … … 4685 4699 r_dcache_inval_rsp = false; 4686 4700 r_dcache_fsm = DCACHE_IDLE; 4701 if ( r_dcache_tlb_sc_fail ) r_dcache_tlb_sc_fail = false; 4687 4702 m_cost_data_tlb_miss_frz++; 4688 4703 } 4689 else if ( r_dcache_ itlb_ll_acc_req)4704 else if ( r_dcache_tlb_sc_fail ) 4690 4705 { 4706 r_dcache_itlb_ll_acc_req = true; 4691 4707 r_vci_rsp_data_ok = false; 4708 r_dcache_tlb_sc_fail = false; 4692 4709 r_dcache_fsm = DCACHE_ITLB_LL_WAIT; 4693 4710 } … … 5291 5308 else if ( p_vci_ini_rw.rdata.read() == 1 ) // store conditional is not successful 5292 5309 { 5293 r_dcache_ itlb_ll_acc_req= true;5310 r_dcache_tlb_sc_fail = true; 5294 5311 } 5295 5312 r_vci_rsp_data_ok = true; … … 5394 5411 else if ( p_vci_ini_rw.rdata.read() == 1 ) // store conditional is not successful 5395 5412 { 5396 r_dcache_tlb_ ll_acc_req= true;5413 r_dcache_tlb_sc_fail = true; 5397 5414 } 5398 5415 r_vci_rsp_data_ok = true; … … 5432 5449 else if ( p_vci_ini_rw.rdata.read() == 1 ) // store conditional is not successful 5433 5450 { 5434 r_dcache_tlb_ ll_dirty_req= true;5451 r_dcache_tlb_sc_fail = true; 5435 5452 } 5436 5453 r_vci_rsp_data_ok = true;
Note: See TracChangeset
for help on using the changeset viewer.