- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Consider a process that is triggered by some, but not necessarily all, elements of a record. How about its sensitivity list? Is it best practice to include only the required record elements, the ones that really trigger the process? Or is it sufficient to include the record as a whole?
Until now, I always felt more comfortable including each required record element in the list, because the irrelevant record elements should not trigger the process. Now I have a process though with lots of record elements and it's becoming a burden to type them all out. And I have noticed that Quartus II 6.0 issues a warning like "Sensitivity list already contains record X" when you list multiple elements of the same record. So Quartus doesn't seem to make an issue out of it, when listing only the record as a whole. But maybe other tools do?Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
As frequently mentioned in the forum, sensitivity lists are basically ignored in synthesis, although Quartus warns about missing entries. Simply, combinational processes are translated to combinational logic and clocked processes to FF based logic. They neither need a trigger to do their work.
But it's different in simulation with full-featured simulators as ModelSim. They interpret the VHDL text and usually ignore events at signals, that aren't included in the sensitivity list. The Quartus warnings should e understood to keep the integrity of simulation and synthesis. Also in simulation, it doesn't harm to have unnecessary sensivity list entries, except possibly increasing simulation time.- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
the VHDL-2008 process(all) statement will take care of the burden of typing out all elements into the process statement and is supported by Quartus II 9.1 (and "current" ModelSim, I think).
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page