Word# | BITS | Name | Description | Note |
---|---|---|---|---|
0 | [31:0] | TID[31:0] | Transaction ID | (echoed back) |
1 | [29:0] | Address[31:2] | Start Address | Always 32-bit aligned |
1 | [31:30] | OP-Code | Operation Code | 0x0=Read, 0x1=Write,
|
2 | [31:0] | WriteData[31:0] or ReadCount[8:0] | First Write or Read request counter | Up to 2^9 words per transactions |
... | ... | ... | ... | |
N-1 | [31:0] | WriteData[31:0] | Last Write | |
N | [31:0] | Don't Care | Don't Care |
Word# | BITS | Name | Description | Note |
---|---|---|---|---|
0 | [31:0] | TID[31:0] | Transaction ID | (echoed back) |
1 | [29:0] | Address[31:2] | Start Address | Always 32-bit aligned |
1 | [31:30] | OP-Code | Operation Code | 0x0=Read, 0x1=Write,
|
2 | [31:0] | WriteData[31:0] or ReadData[31:0] | First Write or First Read | |
... | ... | ... | ... | |
N-1 | [31:0] | WriteData[31:0] or ReadData[31:0] | Last Write or Last Read | |
N | [0] | Fail Flag | Register transaction Error | (response data) |
N | [1] | Timeout Flag | Timeout Error | (response data) |
N | [31:2] | Reserved | Reserved (0x0) | Reserved for Future Use |
Note: "set" and "clear" were defined but never implemented in the software and firmware.
Contact Till Straumann <strauman@slac.stanford.edu> for SRP version 1 definition
Contact Till Straumann <strauman@slac.stanford.edu> for SRP version 2 definition
Word# | BITS | Name | Description | Note |
---|---|---|---|---|
0 | [31:0] | TID[31:0] | Transaction ID | (echoed back) |
0 | [31:0] | TID[63:32] | Transaction ID | (echoed back) |
1 | [29:0] | Size | Number of 32-bit words to transfer | |
1 | [31:30] | Unused | ||
2 | [30:0] | Address[33:2] | Starting word address of transfer | Bits 1:0 are always 0 |
2 | [31] | RNW | OpCode | 0=Read, 1=Write |
Word# | BITS | Name | Description | Note |
---|---|---|---|---|
0 | [31:0] | TID[31:0] | Transaction ID | (echoed back) |
0 | [31:0] | TID[63:32] | Transaction ID | (echoed back) |
1 | [29:0] | Size | Number of 32-bit words to transfer | |
1 | [31:30] | Unused | ||
2 | [30:0] | Address[33:2] | Starting word address of transfer | Bits 1:0 are always 0 |
2 | [31] | RNW | OpCode | 0=Read, 1=Write |
3+N | Data | Read data word N | ||
3+N+Size | [0] | Error | An error occured | |
3+N+Size | [2:1] | ErrorValue | AXI Return code |
Word# | BITS | Name | Description | Note |
---|---|---|---|---|
0 | [7:0] | Version[7:0] | SRP Version number | |
0 | [9:8] | OpCode[1:0] | Operation Code |
|
0 | [15:10] | SPARE[5:0] | Unused, spare bits | |
0 | [23:16] | RetryCnt[7:0] | Retry Counter | |
0 | [31:24] | TimeoutCnt[7:0] | Timeout Counter |
|
1 | [31:0] | TID[31:0] | Transaction ID | |
2 | [31:0] | Addr[31:0] | Register Address | In units of bytes |
3 | [31:0] | Addr[63:32] | Register Address | In units of bytes |
4 | [31:0] | ReqSize[31:0] | Request Size |
|
5 | [31:0] | WriteData[31:0] | Write Data | Only used for write operations |
... | ... | ... | ... | Only used for write operations |
4+CEIL((ReqSize+1)/4) | [31:0] | WriteData[31:0] | Write Data | Only used for write operations |
Word# | BITS | Name | Description | Note |
---|---|---|---|---|
0 | [7:0] | Version[7:0] | SRP Version number | Always respond with local version |
0 | [9:8] | OpCode[1:0] | Operation Code | Echoed back |
0 | [15:10] | SPARE[5:0] | Unused, spare bits | Echoed back |
0 | [23:16] | RetryCnt[7:0] | Retry Counter | Echoed back |
0 | [31:24] | TimeoutCnt[7:0] | Timeout Counter | Echoed back |
1 | [31:0] | TID[31:0] | Transaction ID | Echoed back |
2 | [31:0] | Addr[31:0] | Register Address | Echoed back |
3 | [31:0] | Addr[63:32] | Register Address | Echoed back |
4 | [31:0] | ReqSize[31:0] | Request Size | Echoed back |
5 | [31:0] | MemData[31:0] | Memory Data | Only used for non-posted operations |
... | ... | ... | ... | Only used for non-posted operations |
4+CEIL((ReqSize+1)/4) | [31:0] | MemData[31:0] | Memory Data | Only used for non-posted operations |
5+CEIL((ReqSize+1)/4) | [7:0] | MemResp[7:0] | Memory Bus Response | Footer :
|
5+CEIL((ReqSize+1)/4) | [8] | timeout | timeout error | Footer |
5+CEIL((ReqSize+1)/4) | [9] | eofe | End of Frame with Error | Footer |
5+CEIL((ReqSize+1)/4) | [10] | frameError | Framing error detected | Footer |
5+CEIL((ReqSize+1)/4) | [11] | verMismatch | Version Mismatch Error | Footer |
5+CEIL((ReqSize+1)/4) | [12] | reqSizeError | Request Size Error | Footer |
5+CEIL((ReqSize+1)/4) | [31:13] | Reserved | Always zeros | Footer |