ERROR: Multiple edge sensitive events found for this signal! #3844
Replies: 5 comments 4 replies
-
By any chance, did you connect the same net to the clock and the reset of a process? I.e. |
Beta Was this translation helpful? Give feedback.
-
I have squeezed my code down to this:
I still get the same error message as is visible in this github action at line 388: https://github.com/philiprbrenan/zeroLowLevel/actions/runs/5546330416/jobs/10126462221 If I remove the |
Beta Was this translation helpful? Give feedback.
-
Might it be worthwhile alerting users to this difficulty? |
Beta Was this translation helpful? Give feedback.
-
My idea, such as it is, was that perhaps gowin_synth or read_verilog could detect this eventuality and write a helpful informational note if a posedge/negedge combination of the same signal were detected thus saving time for both end users and Yosys maintainers. While I am sure that this is well known principle to digital logic designers in general it might not be well known to every-one else, some of whom might wish to use Yosys as a pathway into this interesting field. No doubt there are many other such principles, well known to the principals, less well known to the programming hoi poloi which if noted in a similar manner might help make the difficult transition from programming conventional cpus to fpgas a little smoother? |
Beta Was this translation helpful? Give feedback.
-
The code in question was fully validated by iverilog and passed numerous execution tests. Hence the principle of "No mixing of positive and negative edges" being so self evident that it does even require stating is surprising in this context. As read_verilog is doing something that is surprising to users of iverilog , I think it would be worth detecting and noting this difference in capabilities between the two in read_verilog so that yosys users and maintainers do not have to revisit this issue in the future with programmers migrating from iverilog to yosys who might, naively, expect the two to accept identical code. This approach would have the beneficial effect of making it easier for programmers to make the difficult transition from conventional CPUs to FPGAs which must, surely, be one of the goals of this interesting project? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Please tell me how to figure out which variable in my input verilog has multiple events being applied to it as indicated by this error message from gowin_synth?
Beta Was this translation helpful? Give feedback.
All reactions