79249731

Date: 2024-12-04 02:40:57
Score: 0.5
Natty:
Report link

The correct answer is that you do not need any processes at all. The best FSM code has zero processes. Every FSM has three parts: storage, next state logic, and output logic. All of those are best described in VHDL using concurrent statements. VHDL = Very high speed integrated circuit HARDWARE DESCRIPTION Language.

The goal is to describe hardware, not to write algorithms. You can describe hardware directly with concurrent statements, or go off in the weeds and describe it using processes. If you really understand the language, then you will never use a process. Your code will be more concise, easier to read, easier to debug, and easier to maintain.

Using processes in VHDL is similar to using inline assembly in C. If you understand the language, then you can specify what you want directly, writing code that uses fewer resources with fewer lines of code.

However, learning to write elegant VHDL code means that you have to wrap your brain around the concept of declarative programming. That is something that takes practice, so most people stick with the imperative style of processes.

Reasons:
  • Long answer (-1):
  • No code block (0.5):
  • Low reputation (1):
Posted by: Larry Pyeatt