Ignore:
Timestamp:
Sep 14, 2015, 9:42:16 AM (9 years ago)
Author:
cfuguet
Message:

reconf: dspin_router

  • improve the code readability of the dspin_router model.
  • update the unitary tests of the dspin_router to support the local gateway hardware barrier, and the memory cache scratchpad mode.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/reconfiguration/modules/dspin_router/caba/source/include/dspin_router.h

    r1010 r1016  
    2929    ///////////////////////////////////////////////////////////////////////////
    3030    // Implementation Note :
    31     // The xfirst_route(), broadcast_route() and is_broadcast() functions
    32     // defined below are used to decode the DSPIN first flit format:
     31    // DSPIN first flit format:
    3332    // - In case of a non-broadcast packet :
    3433    //  |   X     |   Y     |---------------------------------------|BC |
     
    3635    //
    3736    //  - In case of a broacast
    38     //  |  XMIN   |  XMAX   |  YMIN   |  YMAX   |-------------------|BC |
    39     //  |   5     |   5     |   5     |   5     | flit_width - 22   | 1 |
     37    //  |  XMIN   |  XMAX   |  YMIN   |  YMAX   |----------------|SP|BC |
     38    //  |   5     |   5     |   5     |   5     | flit_width - 21| 1| 1 |
    4039    ///////////////////////////////////////////////////////////////////////////
    4140
     
    147146    void    genMoore();
    148147
    149     int     xfirst_route( size_t xdest, size_t ydest );
     148    int     route( sc_uint<flit_width> data );
    150149    int     recovery_route( size_t xdest, size_t ydest );
    151     int     route( sc_uint<flit_width> data );
     150    int     broadcast_route( int iter, int source, sc_uint<flit_width> data );
     151    int     reallocation_route();
    152152
    153     int     broadcast_route( int iter, int source, sc_uint<flit_width> data );
    154153    bool    is_broadcast( sc_uint<flit_width> data );
    155     sc_uint<flit_width> compute_broadcast_header( int source );
     154    internal_flit_t compute_broadcast_header( int source );
    156155
    157     bool    is_destination_blackhole( size_t xdest, size_t ydest, int bhpos );
     156    bool    is_reconfigurable();
     157    bool    is_recovery_routing_enabled();
     158    bool    is_reallocation_enabled();
     159    bool    is_destination_blackhole( size_t xdest, size_t ydest );
    158160    int     blackhole_position();
    159 
    160     inline bool is_network_recovery_enable()
    161     {
    162         return (((p_recovery_cfg->read() >> 7) & 0x1) != 0);
    163     }
    164 
    165     inline int migration_route()
    166     {
    167         return ((p_recovery_cfg->read() >> 4) & 0x7);
    168     }
    169 
    170     inline bool is_reconfigurable()
    171     {
    172         return (p_recovery_cfg != NULL);
    173     }
    174161
    175162    public:
Note: See TracChangeset for help on using the changeset viewer.