Overall Structure - 2023.1 English

Vitis Libraries

Release Date
2023.1 English

CSV parser is implemented as multiple PU architecture to provide high throughput. The diagram is illustrated as below.

CSV Parser Diagram

The full CSV file should be loaded in a compacted buffer firstly. For the parallel execution of each PU, the read block will divide the input file into several chunks by its size. Line parser is a FSM-based module to parse out each field at one byte per cycle. Also, all the trivial characters will be removed in this stage. For each data type input, there is one dedicated parse-unit to translate the raw bytes into its own value. At the final stage, each selected field will be merged into one full column before structuring into the output object-stream protocal.