fpl 2019
play

FPL 2019 High-performance Decoding of Variable-length Memory Data - PowerPoint PPT Presentation

FPL 2019 High-performance Decoding of Variable-length Memory Data Packets for FPGA Stream Processing Roberto Sierra (Integrated Systems Laboratory UPM) Filippo Mangani (Integrated Systems Laboratory - UPM) Carlos Carreras (Integrated


  1. FPL 2019 High-performance Decoding of Variable-length Memory Data Packets for FPGA Stream Processing Roberto Sierra (Integrated Systems Laboratory – UPM) Filippo Mangani (Integrated Systems Laboratory - UPM) Carlos Carreras (Integrated Systems Laboratory - UPM) Gabriel Cafgarena (University CEU San Pablo)

  2. Motivation ● Variable-length data is used to efgiciently compress mesh- based datasets in scientific applications (e.g., CFD) ● Streaming variable-length data from memory to FPGA devices with a fixed-length encoding leads to wasting storage and bandwidth ● Each algorithm (e.g., 2D/3D, custom arithmetic formats) needs a difgerent set of data packet lengths – Known at synthesis time

  3. Our proposal: Architecture ● Parameterizable On-board Memory ● Fully pipelined ● Elastic interfaces (valid/ready) Control Header Processor Logic ● 1 packet/line per clock cycle Packet Builder Headers 1 1 2 2 Packet Shifter 2 3 4 3 4 5 4 Packet Decoder 5 5 5 6 6 6 7 FPGA Memory 6 7 8 Overall architecture 7 8 9 9 9 10 Headers 9 10 Example input and output

  4. Architecture (II) ● Packet Shifuer: 0..................0 Valid i 2 0..................0 – Unfortunately, no barrel shifuer i+1 2 Stage i 0..................0 S in FPGAs 2i i i+1 S2i+1 2 + 2 Ready – 4-1 (or 2-1) shifuer stages Packet Shifuer stage ● Packet Builder: Payload line Control signals – Concatenate memory lines 6 ● Header Decoder: – Computes shifu and number of Fourth Step Cache First Step Second Step Third Step Register Register Register Register Register lines needed by each packet Extended line Packet Builder

  5. Results ● Synthesis results of example decoders Stratix V 5SGXMABN3F45C2 ● Speedup over fixed-length encoding

  6. Thank you!

Recommend


More recommend