Changeset 441 for branches/v5/modules/vci_mem_cache/caba/source/include
- Timestamp:
- Jul 17, 2013, 10:54:07 AM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/v5/modules/vci_mem_cache/caba/source/include/vci_mem_cache.h
r440 r441 54 54 #define TRT_ENTRIES 4 // Number of entries in TRT 55 55 #define UPT_ENTRIES 4 // Number of entries in UPT 56 #define IVT_ENTRIES 4 // Number of entries in IVT 56 57 #define HEAP_ENTRIES 1024 // Number of entries in HEAP 57 58 … … 165 166 CONFIG_DIR_REQ, 166 167 CONFIG_DIR_ACCESS, 167 CONFIG_DIR_ UPT_LOCK,168 CONFIG_DIR_IVT_LOCK, 168 169 CONFIG_BC_SEND, 169 170 CONFIG_BC_WAIT, … … 213 214 WRITE_MISS_XRAM_REQ, 214 215 WRITE_BC_TRT_LOCK, 215 WRITE_BC_ UPT_LOCK,216 WRITE_BC_IVT_LOCK, 216 217 WRITE_BC_DIR_INVAL, 217 218 WRITE_BC_CC_SEND, … … 276 277 CAS_UPT_NEXT, 277 278 CAS_BC_TRT_LOCK, 278 CAS_BC_ UPT_LOCK,279 CAS_BC_IVT_LOCK, 279 280 CAS_BC_DIR_INVAL, 280 281 CAS_BC_CC_SEND, … … 301 302 CLEANUP_HEAP_CLEAN, 302 303 CLEANUP_HEAP_FREE, 303 CLEANUP_ UPT_LOCK,304 CLEANUP_ UPT_DECREMENT,305 CLEANUP_ UPT_CLEAR,304 CLEANUP_IVT_LOCK, 305 CLEANUP_IVT_DECREMENT, 306 CLEANUP_IVT_CLEAR, 306 307 CLEANUP_WRITE_RSP, 307 308 CLEANUP_CONFIG_ACK, … … 334 335 enum alloc_upt_fsm_state_e 335 336 { 336 ALLOC_UPT_CONFIG,337 337 ALLOC_UPT_WRITE, 338 ALLOC_UPT_XRAM_RSP, 339 ALLOC_UPT_MULTI_ACK, 340 ALLOC_UPT_CLEANUP, 341 ALLOC_UPT_CAS 338 ALLOC_UPT_CAS, 339 ALLOC_UPT_MULTI_ACK 340 }; 341 342 /* States of the ALLOC_IVT fsm */ 343 enum alloc_ivt_fsm_state_e 344 { 345 ALLOC_IVT_WRITE, 346 ALLOC_IVT_XRAM_RSP, 347 ALLOC_IVT_CLEANUP, 348 ALLOC_IVT_CAS, 349 ALLOC_IVT_CONFIG 342 350 }; 343 351 … … 450 458 soclib::caba::VciTarget<vci_param_int> p_vci_tgt; 451 459 soclib::caba::VciInitiator<vci_param_ext> p_vci_ixr; 452 soclib::caba::DspinInput<dspin_in_width> p_dspin_in; 453 soclib::caba::DspinOutput<dspin_out_width> p_dspin_out; 460 soclib::caba::DspinInput<dspin_in_width> p_dspin_p2m; 461 soclib::caba::DspinOutput<dspin_out_width> p_dspin_m2p; 462 soclib::caba::DspinOutput<dspin_out_width> p_dspin_clack; 454 463 455 464 VciMemCache( … … 467 476 const size_t trt_lines=TRT_ENTRIES, 468 477 const size_t upt_lines=UPT_ENTRIES, 478 const size_t ivt_lines=IVT_ENTRIES, 469 479 const size_t debug_start_cycle=0, 470 480 const bool debug_ok=false ); … … 501 511 TransactionTab m_trt; // xram transaction table 502 512 uint32_t m_upt_lines; 503 UpdateTab m_upt; // pending update & invalidate 513 UpdateTab m_upt; // pending update 514 UpdateTab m_ivt; // pending invalidate 504 515 CacheDirectory m_cache_directory; // data cache directory 505 516 CacheData m_cache_data; // data array[set][way][word] … … 590 601 sc_signal<size_t> r_config_heap_next; // current pointer to scan HEAP 591 602 592 sc_signal<size_t> r_config_ upt_index; // UPT index603 sc_signal<size_t> r_config_ivt_index; // IVT index 593 604 594 605 // Buffer between CONFIG fsm and TGT_RSP fsm (send a done response to L1 cache) … … 871 882 sc_signal<size_t> r_xram_rsp_victim_ptr; // victim line pointer to the heap 872 883 sc_signal<data_t> * r_xram_rsp_victim_data; // victim line data 873 sc_signal<size_t> r_xram_rsp_ upt_index; // UPT entry index884 sc_signal<size_t> r_xram_rsp_ivt_index; // IVT entry index 874 885 sc_signal<size_t> r_xram_rsp_next_ptr; // Next pointer to the heap 875 886 … … 952 963 953 964 //////////////////////////////////////////////////// 965 // Registers controlled by ALLOC_IVT fsm 966 //////////////////////////////////////////////////// 967 968 sc_signal<int> r_alloc_ivt_fsm; 969 970 //////////////////////////////////////////////////// 954 971 // Registers controlled by ALLOC_HEAP fsm 955 972 ////////////////////////////////////////////////////
Note: See TracChangeset
for help on using the changeset viewer.