Description
When types argument is specified to Int16 (e.g. CSV.File(file_path, types=[String, Int16])) and there is near -65536 (but strictly greater than this) values, it seems that overflow occurs and sign is inverted.
I attached a working example.
working_example.zip
In parallel_nco_LC_quality_verif.ipynb, there are two lines:
Utils.visualizeDutOutWav(g_dut_out_wav_buggy, 0.12, 0.14)
Utils.visualizeDutOutWav(g_dut_out_wav_fine, 0.12, 0.14)
In the 1st one, we can see that the data in the time from 310 ns to 330 ns are collapsed.
Current workaround
Specify data type as Int32 in CSV.File() function, then convert to Int16 later.
Description
When
typesargument is specified toInt16(e.g.CSV.File(file_path, types=[String, Int16])) and there is near -65536 (but strictly greater than this) values, it seems that overflow occurs and sign is inverted.I attached a working example.
working_example.zip
In parallel_nco_LC_quality_verif.ipynb, there are two lines:
Utils.visualizeDutOutWav(g_dut_out_wav_buggy, 0.12, 0.14)Utils.visualizeDutOutWav(g_dut_out_wav_fine, 0.12, 0.14)In the 1st one, we can see that the data in the time from 310 ns to 330 ns are collapsed.
Current workaround
Specify data type as
Int32inCSV.File()function, then convert toInt16later.