Ignore:
Timestamp:
Oct 27, 2014, 12:29:14 PM (9 years ago)
Author:
cfuguet
Message:

reconf: introducing TEST packets for the coherence network

  • Introducing TEST packets for: P2M, M2P and CLACK subnetworks
  • In the case of P2M packets, to distinguish a Test packet, the P2M type should be 11 (the same as CLEANUP INST) and additionally the 5th bit must be set.
  • In the case of M2P and CLACK packets, the 25th bit is the only bit decoded to distinguish a Test packet.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/reconfiguration/communication/dspin_dhccp_param/caba/source/include/dspin_dhccp_param.h

    r863 r864  
    5858 * EOP:1 |     DEST(10 bits)     |       X(15 bits)       | UPDT_INDEX(4 bits) | TYPE:0b00 | BC:0
    5959 * ----------------------------------------------------------------------------------------------
     60 *
     61 * TEST
     62 *
     63 *
     64 * flit 1
     65 * ----------------------------------------------------------------------------------------------
     66 * EOP:0 |    DEST     |    SRCID    |      X       |   TEST  |       X       | TYPE:0b11 | BC:0
     67 *       |  (10 bits)  |  (14 bits)  |   (2 bits)   | (1 bit) |    (2 bits)   |           |
     68 * ----------------------------------------------------------------------------------------------
     69 *
     70 * flit 2
     71 * ----------------------------------------------------------------------------------------------
     72 * EOP:1 |                                                                     SIGNATURE(32 bits)
     73 * ----------------------------------------------------------------------------------------------
    6074 */
    6175
     
    112126 * ----------------------------------------------------------------------------------------------
    113127 *
    114  * M2P clack commands
     128 * TEST
     129 *
     130 * flit 1
     131 * ----------------------------------------------------------------------------------------------
     132 * EOP:0 |  DEST(14 bits)  | TEST: 1      | X(3 bits)  |  MEMC_ID(14 bits)  | X(10 bits)  | BC:0
     133 * ----------------------------------------------------------------------------------------------
     134 *
     135 * flit 2
     136 * ----------------------------------------------------------------------------------------------
     137 * EOP:1 | SIGNATURE MSB(7 bits) |                                           SIGNATURE (32 bits)
     138 * ----------------------------------------------------------------------------------------------
     139 *
     140 * CLACK commands
    115141 *
    116142 * CLEANUP ACKNOWLEDGEMENT
     
    124150 *                                                                            |    1 CLACK |
    125151 *                                                                            |      INST  |
     152 * TEST
     153 *
     154 * flit 1
     155 * ----------------------------------------------------------------------------------------------
     156 * EOP:0 |  DEST(14 bits)  | TEST:1  | X(3 bits)  |  MEMC_ID(14 bits)  | X(10 bits)  | BC:0
     157 * ----------------------------------------------------------------------------------------------
     158 *
     159 * flit 2
     160 * ----------------------------------------------------------------------------------------------
     161 * EOP:1 | SIGNATURE MSB(7 bits) |                                           SIGNATURE (32 bits)
     162 * ----------------------------------------------------------------------------------------------
     163 *
    126164 *
    127165 */
     
    164202    static const uint8_t  P2M_BC_SHIFT                 = 0;
    165203    static const uint64_t P2M_BC_MASK                  = 1;
     204    static const uint8_t  P2M_TEST_SHIFT               = 5;
     205    static const uint64_t P2M_TEST_MASK                = 1;
    166206
    167207    static const uint8_t  CLEANUP_DEST_SHIFT           = 22;
     
    187227    static const uint8_t  M2P_BC_SHIFT                 = 0;
    188228    static const uint64_t M2P_BC_MASK                  = 1;
     229    static const uint8_t  M2P_TEST_SHIFT               = 24;
     230    static const uint64_t M2P_TEST_MASK                = 1;
    189231
    190232    static const uint8_t  MULTI_INVAL_DEST_SHIFT       = 25;
     
    240282      TYPE_CLEANUP      = 2,
    241283      TYPE_CLEANUP_DATA = TYPE_CLEANUP,
    242       TYPE_CLEANUP_INST = 3
     284      TYPE_CLEANUP_INST = 3,
     285      TYPE_TEST         = TYPE_CLEANUP_INST
    243286    };
    244287
     
    271314      P2M_EOP,
    272315      P2M_BC,
     316      P2M_TEST,
    273317
    274318      CLEANUP_DEST,
     
    284328      M2P_EOP,
    285329      M2P_BC,
     330      M2P_TEST,
    286331
    287332      MULTI_INVAL_DEST,
     
    316361        GET_FIELD(flit,P2M_EOP);
    317362        GET_FIELD(flit,P2M_BC);
     363        GET_FIELD(flit,P2M_TEST);
    318364        GET_FIELD(flit,CLEANUP_DEST);
    319365        GET_FIELD(flit,CLEANUP_SRCID);
     
    326372        GET_FIELD(flit,M2P_EOP);
    327373        GET_FIELD(flit,M2P_BC);
     374        GET_FIELD(flit,M2P_TEST);
    328375        GET_FIELD(flit,MULTI_INVAL_DEST);
    329376        GET_FIELD(flit,MULTI_INVAL_SRCID);
     
    356403        SET_FIELD(flit,value,P2M_EOP);
    357404        SET_FIELD(flit,value,P2M_BC);
     405        SET_FIELD(flit,value,P2M_TEST);
    358406        SET_FIELD(flit,value,CLEANUP_DEST);
    359407        SET_FIELD(flit,value,CLEANUP_SRCID);
     
    366414        SET_FIELD(flit,value,M2P_EOP);
    367415        SET_FIELD(flit,value,M2P_BC);
     416        SET_FIELD(flit,value,M2P_TEST);
    368417        SET_FIELD(flit,value,MULTI_INVAL_DEST);
    369418        SET_FIELD(flit,value,MULTI_INVAL_SRCID);
Note: See TracChangeset for help on using the changeset viewer.