Why now? Well, I would like Vitis and Vivado implementations to be as similar as possible (ideally identical) and Vitis changed how PIPELINE pragma can be applied. So constructs like
if (CONFIG_T::io_type == io_parallel){
#pragma HLS PIPELINE
}
are not allowed anymore, and the function doesn't get pipelined. Since we use this trick to switch between io_parallel and io_serial, removing io_serial will also get rid of the requirement for checking the io_type. This allows the array-based implementations to be identical in Vitis and Vivado (at least it appears so, still need more tests).
Type of change
[x] Other (Specify) - Cleanup
Tests
No tests, we remove traces of non-functional code.
Description
Remove the old
io_serial
from the HLS templates.Why now? Well, I would like Vitis and Vivado implementations to be as similar as possible (ideally identical) and Vitis changed how
PIPELINE
pragma can be applied. So constructs likeare not allowed anymore, and the function doesn't get pipelined. Since we use this trick to switch between
io_parallel
andio_serial
, removingio_serial
will also get rid of the requirement for checking theio_type
. This allows the array-based implementations to be identical in Vitis and Vivado (at least it appears so, still need more tests).Type of change
Tests
No tests, we remove traces of non-functional code.