1.3.7. Tx Header Format
Field | Description |
---|---|
mode | Memory Access Mode
Note: You cannot change modes in the middle of a multi cache line write.
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
byte_start | Byte Start Index for Byte Access Mode
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
byte_len | Byte Length for Byte Access Mode (mode = eMOD_BYTE)
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
mdata | Metadata: user defined request ID that is returned unmodified from request to response header. For multi-CL writes on C1 Tx, mdata is only valid for the header when sop=1. |
tid | Transaction ID: AFU must return the tid MMIO Read request to response header. It is used to match the response against the request. |
vc_sel | Virtual Channel selected
All CLs that form a multi-CL write request are routed over the same virtual channel. |
req_type | Request types listed in Table 13. |
sop | Start of Packet for multi-CL memory write
|
cl_len | Length for memory requests
Note: When mode = eMOD_BYTE, cl_len must be 2’h0.
|
address | 64-byte aligned Physical Address, that is, byte_address>>6 The address must be naturally aligned with regards to the cl_len field. For example for cl_len=2’b01, address[0] must be 1'b0, similarity for cl_len=2'b11, address[1:0] must be 2'b00. |
Request Type | Encoding | Data Payload | Description | Header Format |
---|---|---|---|---|
t_if_ccip_c0_tx: enum t_ccip_c0_req | ||||
eREQ_RDLINE_I | 4’h0 | No | Memory read request with no intention to cache. |
C0 Memory Request Header. Refer to Table 14. |
eREQ_RDLINE_S | 4’h1 | No | Memory read request with caching hint set to Shared. |
|
t_if_ccip_c1_tx: enum t_ccip_c1_req | ||||
eREQ_WRLINE_I | 4’h0 | Yes | Memory write request with no intention of keeping the data in FPGA cache.
Does not keep the cache line in the FPGA cache and does not provide guidance on the CPU-side caching.
Note: The CPU is responsible for the CPU-side caching.
|
C1 Memory Request Hdr. Refer to Table 15. |
eREQ_WRLINE_M | 4’h1 | Yes | Memory write request with caching hint set to Modified. |
|
eREQ_WRPUSH_I | 4’h2 | Yes | Memory Write Request, with caching hint set to Invalid. FIU writes the data into the processor’s last level cache (LLC) with no intention of keeping the data in FPGA cache. The LLC it writes to is always the LLC associated with the processor where the SDRAM address is homed. Does not keep the cache line in the FPGA cache, but pushes the line into the CPU LLC. |
|
eREQ_WRFENCE | 4’h4 | No | Memory write fence request. |
Fence Hdr. Refer to Table 16. |
eREQ_INTR | 4'h6 | No | Interrupt | Interrupt Hdr. Refer to Table 17 |
t_if_ccip_c2_tx – does not have a request type field | ||||
MMIO Rd | NA | Yes | MMIO read response | MMIO Rd Response Hdr Refer to Table 18. |
All unused encodings are considered RSVD0.
Bit | Number of Bits | Field |
---|---|---|
[73:72] | 2 | vc_sel |
[71:70] | 2 | RSVD |
[69:68] | 2 | cl_len |
[67:64] | 4 | req_type |
[63:58] | 6 | RSVD |
[57:16] | 42 | address |
[15:0] | 16 | mdata |
Bit | Number of Bits | Field SOP=1 | Field SOP=0 |
---|---|---|---|
[79:74] | 6 | byte_len (must be 0 when mode=eMOD_CL)
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
byte_len (must be 0 when sop=0)
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
[73:72] | 2 | vc_sel | RSVD-DNC |
[71] | 1 | sop=1 | sop=0 |
[70] | 1 | mode
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
mode (must be eMOD_CL when sop=0)
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
[69:68] | 2 | cl_len | RSVD-DNC |
[67:64] | 4 | req_type | req_type |
[63:58] | 6 | byte_start (must be 0 when mode=eMOD_CL)
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
byte_start (must be 0 when sop=0)
Note: This field is RSVD0 for Intel® FPGA PAC N3000 and Intel® PAC with Intel® Arria® 10 GX FPGA
|
[57:18] | 40 | address[41:0] | RSVD-DNC |
[17:16] | 2 | address[1:0] | |
[15:0] | 16 | mdata | RSVD-DNC |
Bit | Number of Bits | Field |
---|---|---|
[79:74] | 6 | RSVD |
[73:72] | 2 | vc_sel |
[71:68] | 4 | RSVD |
[67:64] | 4 | req_type |
[63:16] | 48 | RSVD |
[15:0] | 16 | mdata |
Bit | Number of Bits | Field |
---|---|---|
[79:74] | 6 | RSVD |
[73:72] | 2 | vc_sel |
[71:68] | 4 | RSVD |
[67:64] | 4 | req_type |
[63:12] | 62 | RSVD |
[1:0] | 2 | id |
Bit | Number of Bits | Field |
---|---|---|
[8:0] | 9 | tid |