The syntax for a case statement is:
The default statement inside a case statement is optional. The values are evaluated in order, so if both value1 and value3 are true, statement1 is performed.
In addition to case, there are also the casex and casez statements. These let you handle don’t cares in the values (casex) or tri-state conditions in the values (casez).
If unique or priority case statements are used, Vivado synthesis treats those as parallel_case and full_case respectively.