Comments on process block model
The first line in the process "main: process (A, B, C)" has the name of the process (main) and the sensitivity list of the process.
- The process name is user defined, can also be left out (unnamed process).
- The sensitivity list should contain any signals that appear on the right hand side of an assignment (inputs) or in any boolean for a sequential control statement.
The if statement condition must return a boolean value (TRUE or FALSE) so that is why the conditional is written as: ( (A='1') and (B= '1') ) Cannot write it as: ( A and B)because this will return a 'std_logic' type (more on types later).