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
For the app where I'm using this module, I just pass a set of uint32_t's into this RAM and just read it back and get the following mismatch between the values:
5: We got 00080860 but expected 02080860
10: We got 7f01f801 but expected 7f01f803
13: We got 011008c0 but expected 031008c0
18: We got 6401e001 but expected 6401e003
29: We got 8c0e1870 but expected 8e0e1870
42: We got 7381fc05 but expected 7381fc07
45: We got 059c1e70 but expected 079c1e70
55: We got 2001e00f but expected 2003e00f
58: We got 23008801 but expected 23008803
61: We got 01180840 but expected 03180840
69: We got 04101860 but expected 06101860
82: We got 6701f801 but expected 6701f803
85: We got 041c1860 but expected 061c1860
93: We got 05841810 but expected 07841810
98: We got c383fc05 but expected c383fc07
101: We got 0c3c32b0 but expected 0e3c32b0
...
...
<more mismatches>
I added a test in the symbiflow xc/xc7/tests/bram_test and was able to see differences in the fasm generated (execute by make bram_test_256_6_vivado_diff_fasm). The diff is:
I also compiled the verilog with yosys and then did the place and route with vivado, which gave correct results. So may be somewhere in the techmap things are going wrong? Any help is appreciated! My current workaround is to not use big data widths, which is not ideal for performance.
The text was updated successfully, but these errors were encountered:
Following block ram gives wrong results when compiled with symbiflow. Vivado compilation is correct.
For the app where I'm using this module, I just pass a set of uint32_t's into this RAM and just read it back and get the following mismatch between the values:
I added a test in the symbiflow
xc/xc7/tests/bram_test
and was able to see differences in the fasm generated (execute bymake bram_test_256_6_vivado_diff_fasm
). The diff is:I also compiled the verilog with yosys and then did the place and route with vivado, which gave correct results. So may be somewhere in the techmap things are going wrong? Any help is appreciated! My current workaround is to not use big data widths, which is not ideal for performance.
The text was updated successfully, but these errors were encountered: