You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Overview

The AxiStreamBatcher takes incoming AxiStreams and combines multiple frames (packets) into a larger super-frame. The AxiStreamDebatcher does the reverse, deassembling the super-frame into the original frames. 

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

Together these features are very useful for sending high rate (>1MHz), small AXI-Stream frame into a CPU.

Version 1 of the packetizer has been designed to allow interleaving of AXI streams

Details


Packet Header

The batcher combines frames in to larger super-frame. The super frame has a 8 (or 16) byte header as follows:

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

1: 128-bit AXI stream

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 sub-frame within the super-frame is appended 8 (or 16) byte tail appended:

BitsNameDescription
7:0TDESTTDEST of AXI-Stream frame
15:8TUSER_FIRSTTUSER of the AXI-Stream frame
23:16TUSER_LASTTUSER of last transaction of the AXI-Stream frame.
28:24LAST_BYTE_CNTNumber of valid bytes in last transaction of frame
29TIMEOUTIndicates timeout event forced termination of super-frame
30SOFIndicates that this is the start packet of a frame.
31EOFIndicates that this is the last packet of a frame.
63:32SIZENumber of valid bytes in 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.

  • TUserFirst data is only valid if the SOF bit is 1.
  • TUserLast data is only valid if the EOF bit is 1

Contact

Larry Ruckman

ruckman@slac.stanford.edu

  • No labels