You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is an issue I got while turning PolyBench 2mm to a dataflow design. This issue can be fixed later.
Describe the bug
There should be a loop-invariant code motion pass before turning load/store into fifo read/write operations. When a read happens in a loop that doesn't affect the load indices, turning it directly to fifo read can result in accessing the wrong data.
Right, I also found this issue when I cascade two systolic arrays. Currently we did not do dataflow checking. I'm not sure whether it is always safe to hoist the variable. We can change the coding style at this moment to workaround this issue -- basically create an intermediate variable for the reduction loop.
This is an issue I got while turning PolyBench 2mm to a dataflow design. This issue can be fixed later.
Describe the bug
There should be a loop-invariant code motion pass before turning load/store into fifo read/write operations. When a read happens in a loop that doesn't affect the load indices, turning it directly to fifo read can result in accessing the wrong data.
To Reproduce
Buggy output
HLS code for mm2:
Expected behavior
The
v15.read()
should be moved outside the reduction loop.The text was updated successfully, but these errors were encountered: