The IDLE code is sent when no data frame and no trigger code is being sent. Trigger codes can be sent at any time, independent of the state of the data transport. There are 8 trigger codes that are mapped to a 8-bit trigger operation code bus. The GR is used to send a "global reset" to all the ASIC digital logic. The SOF code is used to indicate the start of a data payload transport. After the SOF either the data payload (or trigger code) is sent. After the last data payload byte, the EOF code is sent.
IDLE | K28.5 |
SOF (Start of Frame) | K28.0 |
EOF (End of Frame) | K28.1 |
Trigger Code[BIT=0] | K28.2 |
Trigger Code[BIT=1] | K28.3 |
Trigger Code[BIT=2] | K28.4 |
Trigger Code[BIT=3] | K28.6 |
Trigger Code[BIT=4] | K28.7 |
Trigger Code[BIT=5] | K23.7 |
Trigger Code[BIT=6] | K27.7 |
Trigger Code[BIT=7] | K29.7 |
GR (Global Reset) | K30.7 |
The FPGA sends request messages to the ASIC in the serial protocol data payload tranport (in-between SOF and EOF). The ASIC processes the message and responds back to the FPGA. Only 1 message is in flight at any time to remove the requirement of back pressuring the link.
Byte Offset | Name | Description | Note |
---|---|---|---|
0 | Version[7:0] | Version number | Must be 0x1 |
1 | OpCode[7:0] | Operation Code |
|
2 | TID[7:0] | Transaction ID | Used for debugging |
3 | DevAddr[7:0] | Device Address |
|
4 | RegAddr[31:24] | Register Address | In units of bytes |
5 | RegAddr[23:16] | Register Address | |
6 | RegAddr[15:8] | Register Address | |
7 | RegAddr[7:0] | Register Address | |
8 | WriteData[31:24] | Write Data | Only used for write operations |
9 | WriteData[23:16] | Write Data | |
10 | WriteData[15:8] | Write Data | |
11 | WriteData[7:0] | Write Data |
Byte Offset | Name | Description | Note |
---|---|---|---|
0 | Version[7:0] | Version number | Echoed back |
1 | OpCode[7:0] | Operation Code | Echoed back |
2 | TID[7:0] | Transaction ID | Echoed back |
3 | DevAddr[7:0] | Device Address | Echoed back |
4 | RegAddr[31:24] | Register Address | Echoed back |
5 | RegAddr[23:16] | Register Address | |
6 | RegAddr[15:8] | Register Address | |
7 | RegAddr[7:0] | Register Address | |
8 | MemData[31:24] | Memory Data | Only used for non-posted operations |
9 | MemData[23:16] | Memory Data | |
10 | MemData[15:8] | Memory Data | |
11 | MemData[7:0] | Memory Data | |
12 | Respond[7:0] | Responds Value from Transaction | Only used for non-posted operations. non-zero if error
|