Ignore:
Timestamp:
Sep 19, 2013, 4:01:04 PM (11 years ago)
Author:
cfuguet
Message:

Modification in vci_mem_cache:

  • Aligning the FSM states values with the values of the RTL model to allow the cosimulation of this model.
  • Introducing one output port per FSM which are used when cosimulating this model. These ports are compiled only when the MONITOR_MEMCACHE_FSM preprocessor variable is equal to 1.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/modules/vci_mem_cache/caba/source/src/vci_mem_cache.cpp

    r529 r530  
    6161    {
    6262        "TGT_CMD_IDLE",
    63         "TGT_CMD_ERROR",
    6463        "TGT_CMD_READ",
    6564        "TGT_CMD_WRITE",
    6665        "TGT_CMD_CAS",
     66        "TGT_CMD_ERROR",
    6767        "TGT_CMD_CONFIG"
    6868    };
    6969    const char *tgt_rsp_fsm_str[] =
    7070    {
    71         "TGT_RSP_CONFIG_IDLE",
    72         "TGT_RSP_TGT_CMD_IDLE",
    7371        "TGT_RSP_READ_IDLE",
    7472        "TGT_RSP_WRITE_IDLE",
     
    7775        "TGT_RSP_MULTI_ACK_IDLE",
    7876        "TGT_RSP_CLEANUP_IDLE",
    79         "TGT_RSP_CONFIG",
    80         "TGT_RSP_TGT_CMD",
     77        "TGT_RSP_CONFIG_IDLE",
     78        "TGT_RSP_TGT_CMD_IDLE",
    8179        "TGT_RSP_READ",
    8280        "TGT_RSP_WRITE",
     
    8482        "TGT_RSP_XRAM",
    8583        "TGT_RSP_MULTI_ACK",
    86         "TGT_RSP_CLEANUP"
     84        "TGT_RSP_CLEANUP",
     85        "TGT_RSP_CONFIG",
     86        "TGT_RSP_TGT_CMD"
    8787    };
    8888    const char *cc_receive_fsm_str[] =
     
    9595    const char *cc_send_fsm_str[] =
    9696    {
    97         "CC_SEND_CONFIG_IDLE",
    9897        "CC_SEND_XRAM_RSP_IDLE",
    9998        "CC_SEND_WRITE_IDLE",
    10099        "CC_SEND_CAS_IDLE",
    101         "CC_SEND_CONFIG_INVAL_HEADER",
    102         "CC_SEND_CONFIG_INVAL_NLINE",
    103         "CC_SEND_CONFIG_BRDCAST_HEADER",
    104         "CC_SEND_CONFIG_BRDCAST_NLINE",
     100        "CC_SEND_CONFIG_IDLE",
    105101        "CC_SEND_XRAM_RSP_BRDCAST_HEADER",
    106102        "CC_SEND_XRAM_RSP_BRDCAST_NLINE",
     
    117113        "CC_SEND_CAS_UPDT_NLINE",
    118114        "CC_SEND_CAS_UPDT_DATA",
    119         "CC_SEND_CAS_UPDT_DATA_HIGH"
     115        "CC_SEND_CAS_UPDT_DATA_HIGH",
     116        "CC_SEND_CONFIG_INVAL_HEADER",
     117        "CC_SEND_CONFIG_INVAL_NLINE",
     118        "CC_SEND_CONFIG_BRDCAST_HEADER",
     119        "CC_SEND_CONFIG_BRDCAST_NLINE"
    120120    };
    121121    const char *multi_ack_fsm_str[] =
     
    272272    {
    273273        "ALLOC_DIR_RESET",
    274         "ALLOC_DIR_CONFIG",
    275274        "ALLOC_DIR_READ",
    276275        "ALLOC_DIR_WRITE",
    277276        "ALLOC_DIR_CAS",
    278277        "ALLOC_DIR_CLEANUP",
    279         "ALLOC_DIR_XRAM_RSP"
     278        "ALLOC_DIR_XRAM_RSP",
     279        "ALLOC_DIR_CONFIG"
    280280    };
    281281    const char *alloc_trt_fsm_str[] =
     
    286286        "ALLOC_TRT_XRAM_RSP",
    287287        "ALLOC_TRT_IXR_RSP",
    288         "ALLOC_TRT_CONFIG",
    289         "ALLOC_TRT_IXR_CMD"
     288        "ALLOC_TRT_IXR_CMD",
     289        "ALLOC_TRT_CONFIG"
    290290    };
    291291    const char *alloc_upt_fsm_str[] =
     
    461461        r_alloc_heap_fsm("r_alloc_heap_fsm"),
    462462        r_alloc_heap_reset_cpt("r_alloc_heap_reset_cpt")
     463#if MONITOR_MEMCACHE_FSM == 1
     464        ,
     465        p_read_fsm("p_read_fsm"),
     466        p_write_fsm("p_write_fsm"),
     467        p_xram_rsp_fsm("p_xram_rsp_fsm"),
     468        p_cas_fsm("p_cas_fsm"),
     469        p_cleanup_fsm("p_cleanup_fsm"),
     470        p_config_fsm("p_config_fsm"),
     471        p_alloc_heap_fsm("p_alloc_heap_fsm"),
     472        p_alloc_dir_fsm("p_alloc_dir_fsm"),
     473        p_alloc_trt_fsm("p_alloc_trt_fsm"),
     474        p_alloc_upt_fsm("p_alloc_upt_fsm"),
     475        p_alloc_ivt_fsm("p_alloc_ivt_fsm"),
     476        p_tgt_cmd_fsm("p_tgt_cmd_fsm"),
     477        p_tgt_rsp_fsm("p_tgt_rsp_fsm"),
     478        p_ixr_cmd_fsm("p_ixr_cmd_fsm"),
     479        p_ixr_rsp_fsm("p_ixr_rsp_fsm"),
     480        p_cc_send_fsm("p_cc_send_fsm"),
     481        p_cc_receive_fsm("p_cc_receive_fsm"),
     482        p_multi_ack_fsm("p_multi_ack_fsm")
     483#endif
    463484        {
    464485            std::cout << "  - Building VciMemCache : " << name << std::endl;
     
    814835            r_tgt_cmd_fsm    = TGT_CMD_IDLE;
    815836            r_config_fsm     = CONFIG_IDLE;
    816             r_tgt_rsp_fsm    = TGT_RSP_TGT_CMD_IDLE;
     837            r_tgt_rsp_fsm    = TGT_RSP_READ_IDLE;
    817838            r_cc_send_fsm    = CC_SEND_XRAM_RSP_IDLE;
    818839            r_cc_receive_fsm = CC_RECEIVE_IDLE;
     
    826847            r_alloc_trt_fsm  = ALLOC_TRT_READ;
    827848            r_alloc_upt_fsm  = ALLOC_UPT_WRITE;
    828             r_alloc_ivt_fsm  = ALLOC_IVT_XRAM_RSP;
     849            r_alloc_ivt_fsm  = ALLOC_IVT_WRITE;
    829850            r_ixr_rsp_fsm    = IXR_RSP_IDLE;
    830851            r_xram_rsp_fsm   = XRAM_RSP_IDLE;
     
    78477868        /////////////////////////////
    78487869    {
     7870#if MONITOR_MEMCACHE_FSM == 1
     7871        p_read_fsm.write        (r_read_fsm.read()       );
     7872        p_write_fsm.write       (r_write_fsm.read()      );
     7873        p_xram_rsp_fsm.write    (r_xram_rsp_fsm.read()   );
     7874        p_cas_fsm.write         (r_cas_fsm.read()        );
     7875        p_cleanup_fsm.write     (r_cleanup_fsm.read()    );
     7876        p_config_fsm.write      (r_config_fsm.read()     );
     7877        p_alloc_heap_fsm.write  (r_alloc_heap_fsm.read() );
     7878        p_alloc_dir_fsm.write   (r_alloc_dir_fsm.read()  );
     7879        p_alloc_trt_fsm.write   (r_alloc_trt_fsm.read()  );
     7880        p_alloc_upt_fsm.write   (r_alloc_upt_fsm.read()  );
     7881        p_alloc_ivt_fsm.write   (r_alloc_ivt_fsm.read()  );
     7882        p_tgt_cmd_fsm.write     (r_tgt_cmd_fsm.read()    );
     7883        p_tgt_rsp_fsm.write     (r_tgt_rsp_fsm.read()    );
     7884        p_ixr_cmd_fsm.write     (r_ixr_cmd_fsm.read()    );
     7885        p_ixr_rsp_fsm.write     (r_ixr_rsp_fsm.read()    );
     7886        p_cc_send_fsm.write     (r_cc_send_fsm.read()    );
     7887        p_cc_receive_fsm.write  (r_cc_receive_fsm.read() );
     7888        p_multi_ack_fsm.write   (r_multi_ack_fsm.read()  );
     7889#endif
     7890
    78497891        ////////////////////////////////////////////////////////////
    78507892        // Command signals on the p_vci_ixr port
Note: See TracChangeset for help on using the changeset viewer.