Re: Hardware book like "Code Complete"?



KJ wrote:

Breaking what can be accomplished in one process into two (or more) logically equivalent processes should be considered for code clarity

I find the idea of describing both the "Q side" state
and the "D side" next state more confusing than clarifying.

which can aid in support and maintenance of the code during it's lifetime as well as for potential design reuse (although realistically re-use of any single process is probably pretty low). Re-use happens more often at the entity/architecture level,

....one reason that I favor single process entities.

but the 'copy/paste/modify' type of re-use probably happens more at the process level when it does happen.

....for this type of reuse, I use procedures.
This provides some modularity and built-in documentation.
Even if the operation is not reused, well-named
procedures in process scope make code easier to read and maintain.


Breaking a process into two just to have a combinatorial process to describe the 'next' state and a separate process to clock that 'next' state into the 'current' state has no particular value when using design support and maintenance cost as a metric of 'value'. Since the different methods produce the final end logic there is no function or performance advantage to either approach. On the other hand, there are definite drawbacks to implementing combinatorial logic in a VHDL process. Two of these are
- Introduction of 'unintended' latches
- Missing signals in the sensitivity list that result in different simulation versus synthesis results

Both of these drawbacks have manual methods that can be used to try to minimize them from happening but the bottom line is that extra effort (a.k.a.. cost or negative value) must be incurred to do this....all of which is avoided by simply not using the VHDL process to implement combinatorial logic (i.e. the 'next' state computation).

So as far as the VHDL language is concerned, there are real costs that will be incurred every time the two process method is used but no real value add....or at least that's my 2 cents.....

Well said. Thanks for the posting.

-- Mike Treseler
.



Relevant Pages

  • [SLE] Enterprise LIcense
    ... majority of the cost is for the maintenance and support. ...
    (SuSE)
  • Re: Fully spam/virus filtered mail, and reliable outbound relay
    ... > but not really for bandwidth. ... The additional cost would be for ... > maintenance, support and perhaps help to mitigate the costs ...
    (sci.electronics.design)
  • Re: Fully spam/virus filtered mail, and reliable outbound relay
    ... > but not really for bandwidth. ... The additional cost would be for ... > maintenance, support and perhaps help to mitigate the costs ...
    (comp.security.misc)
  • COBRA JUDY, GRAY STAR, CJ Replacement
    ... Mobile Sensors Operations and Maintenance ... AF ISR Agency Contracting Div ... with numerous support systems. ... of two radar systems, ...
    (sci.military.naval)
  • Re: Some Kudos for Dell
    ... These come at a cost that most providers would rather avoid. ... > to provide remote support we had to get SBC to allow us to use Bridge ... expects his ISP to support whatever hardware he has, ... >> well as the network servers and the network it's self. ...
    (alt.sys.pc-clone.dell)