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
Problem: Verilator gives me randomized DOUTADOUT when I'm using SDP mode in RAMB36E2.
Expected behavior: Verilator gives me DOUTADOUT that is consistent with Vivado's behavior.
Problem: Verilator gives me randomized DOUTADOUT when I'm using SDP mode in RAMB36E2.
Expected behavior: Verilator gives me DOUTADOUT that is consistent with Vivado's behavior.
RAMB36E2's DOUTADOUT and DOUTPADOUTP depends on a register called _r_mem_wr_en_a_wf but it's initialized in a always block of posedge _w_mem_wr_clk_a which is never called when _w_sdp_mode is active due to this line.
So
_r_mem_wr_en_a_wf
never gets assigned, which is unstable behavior if I'm not using --x-initial 0. It leads to unstable DOUTADOUT.My current work around is:
But it's a bad one I guess. We have to move register initializations into a initial block somewhere
P.S. great lib it helped me a lot
The text was updated successfully, but these errors were encountered: