Closed taehyunzzz closed 11 months ago
I found the reason for the SW emulation failing when using multiple output memory ports.
Before comparing the output C with C_golden, the helper function C_drain_drain_merge() does not work. Expected functionality is to merge all C outputs into C[0]. The original flow was to pass the dev_C values to a function that receives the dev_Cs by call-by-reference. For some reason the merging does not work this way.
I implemented the same function outside the helper function on the output C values instead of dev_C and found that it works. I wonder what the smart way of fixing this is hmm,,, Maybe due to gcc version change ('m using 9.3) but not sure :(
Hope this helps 👍
I tried some of the tests following the example documentations.
I found Vitis SW emulation and Vitis HLS C simulation does not pass the basic tests.
Is the functionality broken? :(