Forum Discussion
Altera_Forum
Honored Contributor
11 years agoGoogling 'VHDL sensitivity list' and reading I see comments like this:
--- Quote Start --- Also, the synthesis tools (talking about the Xilinx XST in this case) don't necessarily always respect the process sensitivity list. If you fail to list all the processes whose values are evaluated in the body of the process, the XST will emit a warning saying that it's going to assume that the signals whose values are evaluated are on the sensitivity list. That may lead to differences between behavioral simulations and actual hardware. Keep it in mind. --- Quote End --- Hmmm, guess what I'm experiencing! --- Quote Start --- ...also, be warned, the sensitivity list has no influence over the behaviour of your design once it is synthesized. It is only used during simulation. Hence it's quite easy to introduce a difference in behaviour between RTL and synthesized code by changes to the sensitivity list. (Note: Depending on the synthesis tool, the sensitivity list may be ignored, or a latch may be inferred --- Quote End --- Yep! Been there, seen that. --- Quote Start --- All of this can be confusing in the case of using VHDL for synthesis because only a subset of the circuits you describe in VHDL can actually be implemented within a FPGA. For example, you can't have a primitive memory element that is sensitive to two independent clock edges, even though you could describe such a circuit by including two clocks in a sensitivity list. --- Quote End --- Guess you really, REALLY have to understand the fundamentals! Andy