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
{{ message }}
Repository navigation
Verilog: 10th read in a step hangs instead of hitting the "too many reads" check #654
concore.v keeps per-read state in arrays sized MAXFILES (9), so slots 0 to 8. But the guard in readdata is
if (filenum > `MAXFILES)
so the 10th read in a step gets filenum = 9, slips past the check and writes past the end of s[] / lens[]. Verilog just drops that write, literal_eval then parses an X value, datavalid never goes to 1, and the read loop spins forever. You never see the "too many reads in loop" message.
Tried it with iverilog: a testbench doing 9 readdata calls finishes fine, with 10 it hangs right after read 9.
Changing it to >= should be enough. Same line is in concoredocker.v.
Activity