Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Reverted from v. 10

...

The Packetizer breaks stream frames in to smaller frames called packets. Each packet contains an 8 byte header as follows:

ByteBitsNameDescription
03:0VersionThe packetizer protocol version. Should be 0.
07:4FrameNumber[3:0]Increments with each frame. Used to track missing frames.
17:0FrameNumber[11:4]
 

27:0PacketNumber[7:0]Resets to 0 with each new frame
37:0PacketNumber[15:8]
 

47:0PacketNumber[23:16]
 

57:0TDestTDEST of AXI-Stream frame
67:0TIDTID of AXI-Stream frame
77:0TUserFirstTUSER of first transaction of the AXI-Stream frame

Packet Tail

Each packet also has a 1 byte tail appended:

ByteBitsNameDescription
06:0TUserLastTUSER of of transaction of the AXI-Stream frame. Only valid if EOF=1
07EOFIndicates that this is the last packet of a frame.

Notes

 

  • We steal the MSB of tUserLast to indicate EOF. EOF=0 indicates that there are more packets left in the frame.
  • Having 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 bit is 1

...




Contact

Ben Reese

bareese@slac.stanford.edu