64 | | There are 5 transaction types ('''READ''', '''WRITE''', '''LL''', '''SC''', '''CAS''') on the direct network, and four sub-types for '''READ''' transactions. These types are encoded through the pair of VCI fields '''CMD''' and '''PKTID'''. When a given initiator can send several simultaneous transactions of a given type (such as several simultaneous '''WRITE''' transactions), the VCI '''TRDID''' field is used to discriminate them. |
65 | | |
66 | | Possible values for the VCI '''CMD''' field are : |
67 | | |
68 | | || encoding (2 bits) || value || |
69 | | || || || |
70 | | || 00 || CMD_NOP / CMD_STORE_COND || |
71 | | || 01 || CMD_READ || |
72 | | || 10 || CMD_WRITE || |
73 | | || 11 || CMD_LOCKED_READ || |
74 | | |
75 | | The '''PKTID''' field in TSAR is 4 bits long. Only 8 types of transaction are used : the MSB is ignored (reserved for future use). A specific VCI '''CMD''' value must be used for each '''PKTID''' value, as described in the table below : |
76 | | |
77 | | || encoding (4 bits) || '''PKTID''' value || '''CMD''' value || |
78 | | || || || || |
79 | | || X000 || TYPE_READ_DATA_UNC || CMD_READ || |
80 | | || X001 || TYPE_READ_DATA_MISS || CMD_READ || |
81 | | || X010 || TYPE_READ_INS_UNC || CMD_READ || |
82 | | || X011 || TYPE_READ_INS_MISS || CMD_READ || |
83 | | || X100 || TYPE_WRITE || CMD_WRITE || |
84 | | || X101 || TYPE_CAS || CMD_NOP || |
85 | | || X110 || TYPE_LL || CMD_LOCKED_READ || |
86 | | || X111 || TYPE_SC || CMD_STORE_COND || |
| 64 | There are 8 transaction types ('''READ_DATA_UNC''', '''READ_DATA_MISS''', '''READ_INS_UNC''', '''READ_INS_MISS''', '''WRITE''', '''CAS''', '''LL''', '''SC''') on the direct network. These types are encoded through the pair of VCI fields '''CMD''' and '''PKTID'''. The '''PKTID''' field in TSAR is 4 bits long, but the MSB is ignored (reserved for future use). |
| 65 | |
| 66 | ||TYPE ||CMD (2 bits)||PKTID (4 bits)|| '''PKTID''' mnemo || '''CMD''' mnemo || |
| 67 | || || || || || || |
| 68 | ||READ_DATA_UNC ||01 ||X000 || TYPE_READ_DATA_UNC || CMD_READ || |
| 69 | ||READ_DATA_MISS||01 ||X001 || TYPE_READ_DATA_MISS || CMD_READ || |
| 70 | ||READ_INS_UNC ||01 ||X010 || TYPE_READ_INS_UNC || CMD_READ || |
| 71 | ||READ_INS_MISS ||01 ||X011 || TYPE_READ_INS_MISS || CMD_READ || |
| 72 | ||WRITE ||10 ||X100 || TYPE_WRITE || CMD_WRITE || |
| 73 | ||CAS ||00 ||X101 || TYPE_CAS || CMD_STORE_COND || |
| 74 | ||LL ||11 ||X110 || TYPE_LL || CMD_LOCKED_READ || |
| 75 | ||SC ||00 ||X111 || TYPE_SC || CMD_STORE_COND || |