Ignore:
Timestamp:
Mar 27, 2008, 11:04:49 AM (16 years ago)
Author:
rosiere
Message:

Add :

  • Execute_loop (must be test systemC)
  • Prediction
    • Direction : predifined scheme
    • Branch Target Buffer
  • iFetch_unit
    • ifetch_queue
    • pc management
  • Decod_unit
    • coming soon : support for custom operation
  • Rename_unit
    • RAT
    • Free_list
    • Dependence RAW check
    • Load store unit pointer
  • New Environnement (hierarchy_memory will remove in a next version)


Modif :

  • Manage Custom Operation
  • All component in execute_loop to use the new statistics management

Not Finish :

  • Return Address Stack
  • Environnement
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Execute_loop/Execute_loop/Register_unit/include/Register_unit.h

    r75 r78  
    55 * $Id$
    66 *
    7  * [ Description ]
     7 * [ Description ]
    88 *
    99 */
     
    4545#endif
    4646  {
    47     // -----[ fields ]----------------------------------------------------
     47    // -----[ fields ]----------------------------------------------------
    4848    // Parameters
    4949  protected : const std::string       _name;
     
    5959
    6060#ifdef SYSTEMC
    61     // ~~~~~[ Interface ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     61    // ~~~~~[ Interface ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    6262    // Interface
    6363  public    : SC_CLOCK                      *  in_CLOCK        ;
    6464  public    : SC_IN (Tcontrol_t)            *  in_NRESET       ;
    6565
    66     // ~~~~~[ Interface "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     66    // ~~~~~[ Interface "gpr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    6767  public    : SC_IN (Tcontrol_t        )   **  in_GPR_READ_VAL                 ;
    6868  public    : SC_OUT(Tcontrol_t        )   ** out_GPR_READ_ACK                 ;
     
    7272  public    : SC_OUT(Tcontrol_t        )   ** out_GPR_READ_DATA_VAL            ;
    7373
    74     // ~~~~~[ Interface "gpr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     74    // ~~~~~[ Interface "gpr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    7575  public    : SC_IN (Tcontrol_t        )   **  in_GPR_WRITE_VAL                ;
    7676  public    : SC_OUT(Tcontrol_t        )   ** out_GPR_WRITE_ACK                ;
     
    7979  public    : SC_IN (Tgeneral_data_t   )   **  in_GPR_WRITE_DATA               ;
    8080
    81     // ~~~~~[ Interface "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     81    // ~~~~~[ Interface "spr_read" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    8282  public    : SC_IN (Tcontrol_t        )   **  in_SPR_READ_VAL                 ;
    8383  public    : SC_OUT(Tcontrol_t        )   ** out_SPR_READ_ACK                 ;
     
    8787  public    : SC_OUT(Tcontrol_t        )   ** out_SPR_READ_DATA_VAL            ;
    8888
    89     // ~~~~~[ Interface "spr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     89    // ~~~~~[ Interface "spr_write" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    9090  public    : SC_IN (Tcontrol_t        )   **  in_SPR_WRITE_VAL                ;
    9191  public    : SC_OUT(Tcontrol_t        )   ** out_SPR_WRITE_ACK                ;
     
    9494  public    : SC_IN (Tspecial_data_t   )   **  in_SPR_WRITE_DATA               ;
    9595   
    96     // ~~~~~[ Interface "insert_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     96    // ~~~~~[ Interface "insert_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    9797  public    : SC_IN (Tcontrol_t        )  ***  in_INSERT_ROB_VAL               ;
    9898  public    : SC_OUT(Tcontrol_t        )  *** out_INSERT_ROB_ACK               ;
     
    102102  public    : SC_IN (Tspecial_address_t)  ***  in_INSERT_ROB_RE_NUM_REG        ;
    103103
    104     // ~~~~~[ Interface "retire_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     104    // ~~~~~[ Interface "retire_rob" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    105105  public    : SC_IN (Tcontrol_t        )  ***  in_RETIRE_ROB_VAL               ;
    106106  public    : SC_OUT(Tcontrol_t        )  *** out_RETIRE_ROB_ACK               ;
     
    114114  public    : SC_IN (Tspecial_address_t)  ***  in_RETIRE_ROB_RE_NEW_NUM_REG    ;
    115115
    116     // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     116    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    117117  protected : morpheo::behavioural::generic::registerfile::RegisterFile::RegisterFile ** component_gpr       ;
    118118  protected : morpheo::behavioural::generic::registerfile::RegisterFile::RegisterFile ** component_gpr_status;
     
    121121  protected : morpheo::behavioural::core::multi_execute_loop::execute_loop::register_unit::register_unit_glue::Register_unit_Glue::Register_unit_Glue      * component_glue      ;
    122122
    123     // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
     123    // ~~~~~[ Register ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
    124124
    125     // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     125    // ~~~~~[ Internal ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    126126#endif
    127127
    128     // -----[ methods ]---------------------------------------------------
     128    // -----[ methods ]---------------------------------------------------
    129129
    130130#ifdef SYSTEMC
Note: See TracChangeset for help on using the changeset viewer.