- Only 2 bits more than input is enough, CoSimulation works (test
succeed, even if VitisHLS reports failure on some computers...).
- Rename `catch_common` to `catch_common_${PROJECT_NAME}` to avoid
problems when included in a cmake top project.
- Add a sanity check to unit tests to avoid SEGV.
- For whatever reasons, v2019.1 can C-Simulate CCordicAbs, but cannot
C-Synthetize it. So the process member function have been mirrored to
a static process function in the top level, called directly. It just
works.
- The TCL script have been amended to support both Vivado_HLS 2019.1 and
Vitis_HLS 2020.2 (maybe .1 also, but hasn't been tested).
- The CMake project works and is validated for G++ > 6.2, so can't be
used with vivado less than 2020.1 (which use 4.6.3). This vivado
version must be used with the TCL script directly.
- A custom target `run_hls` has been created to call vitis_hls 2020.2 if
ENABLE_XILINX and ENABLE_TESTING have been specified. It is called by
ctest by default. It can produce an IP (option IP_XILINX) and run Vivado implementation
design flow (option IMPL_XILINX).