Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The batching protocol also takes AXI-Stream sideband data (TDEST , TID, and TUSER) and inserts it in the data stream as part of the batching format.

...

BitsNameDescription
3:0VERSIONVersion info. Should always be 0x1
7:4TYPE0: 64-bit AXI stream

1: 128-bit AXI stream

11:8CRC

0: No CRC1: CRC Included

31:16SEQPacket sequence number of super-frame
44:32TIMEOUT_CFG
  • Forwards the batcher's timeout configuration
  • zero value defined as no timeout used
  • In units of ms
  • 4.096 second max. timout
  • Used for diagnostics
OtherReservedAll reserved bits (undefined) bit set to zero

Notes

  • If TYPE = 64-bit AXI stream, then

...

  • appended tail is 8 bytes. 

  • If TYPE = 128-bit AXI stream, then

...

  • appended tail is 16 bytes.

...

Packet Tail

Each packet sub-frame within the super-frame is appended 8 appended 8 (or 16) byte tail appended:

FIRSTTUSERLASTTUSER the AXI-Stream .
BitsNameDescription
7:0TDESTTDEST of AXI-Stream frame
15:8TIDTUSER_FIRSTTID TUSER of the AXI-Stream frame
23:16TUSER_LASTTUSER of last transaction of the AXI-Stream frame. 31
28:24LAST_BYTE_CNTNumber of valid bytes in last transaction of frame
44:32TIMER_VALUE
  • Time between header and tail
  • Units of ms
  • Used for diagnostics
29TIMEOUTIndicates timeout event forced termination of super-frame
3045SOFIndicates that this is the start packet of a frame.
4631EOFIndicates that this is the last packet of a frame.
5663:4832SIZELAST_BYTE_CNTNumber of valid bytes in last transaction of the sub-frame
OtherReservedAll reserved bits (undefined) bit set to zero

Notes

  • If TYPE = 64-bit AXI stream, then appended tail is 8 bytes. 

  • If TYPE = 128-bit AXI stream, then appended tail is 16 bytes

...

Notes

  • Having tUserFirst/SOF and tUserLast/EOF in a tail allows the packetizer to function in streaming fashion and not have to buffer each packet worth of data in a FIFO

    .

  • TDest, TId and TUserFirst are placed in the header of every packet, even though they don’t change after the first packet of the frame.TUserLast data is only valid if the EOF SOF bit is 1.

CRC Notes

...

 

HeaderDataTail (32 lsb)
0x8000000000000222
0xAFFECAFEFEEDBEEF
0x00080102

...

0x8000000000000222
0xAFFECAFEFEEDBEEF
0x1E579C9C00080102

 

  • If CRC-support is not enabled in the firmware then the CRC bits are all zero and no CRC is checked on incoming traffic (but the CRC field must be zero).
  • If CRC-support is enabled in firmware then the peer must provide a CRC.
  • Note that the 8 - LAST_BYTE_CNT (arbitrary) bytes which are not part of the payload must be included in the CRC computation. While these bytes are not part of the payload they are still part of the (de-)packetizer frame.TUserLast data is only valid if the EOF bit is 1

...

Contact

Larry Ruckman

ruckman@slac.stanford.edu