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

fpl 2019
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 1

FPL 2019

High-performance Decoding

  • f 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)

slide-2
SLIDE 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

slide-3
SLIDE 3

Our proposal: Architecture

  • Parameterizable
  • Fully pipelined
  • Elastic interfaces (valid/ready)
  • 1 packet/line per clock cycle

Header Processor FPGA Memory Packet Decoder Packet Builder On-board Memory Packet Shifter Control Logic

Overall architecture

1 2 3 4 4 5 5 6 6 7 7 8 9 9 10 9 5 2 6 Headers Headers 1 2 3 4 5 6 7 9 10 8

Example input and output

slide-4
SLIDE 4

Architecture (II)

  • Packet Shifuer:

– Unfortunately, no barrel shifuer

in FPGAs

– 4-1 (or 2-1) shifuer stages

  • Packet Builder:

– Concatenate memory lines

  • Header Decoder:

– Computes shifu and number of

lines needed by each packet

S S2i+1 2i

0..................0

i+1 2

0..................0

i 2

0..................0

i+1 + 2 i 2

Stage i

Valid Ready

Packet Shifuer stage

Payload line

Fourth Step Register Third Step Register Second Step Register First Step Register Cache Register

Control signals Extended line 6

Packet Builder

slide-5
SLIDE 5

Results

  • Synthesis results of example decoders

Stratix V 5SGXMABN3F45C2

  • Speedup over fixed-length encoding
slide-6
SLIDE 6

Thank you!