The Boolean type is predefined in
the Standard package as an enumerated data type with two possible
values: false and true.
type boolean is (false,true);
The boolean type is used for conditional operations. Boolean objects
can be used with any of the relational operators <, >, <=,
>=, = or /=.
According to the definition type, the leftmost value of the Boolean
type is false, therefore the default value of any object of the
Boolean type is false.
Since the boolean type is defined in the Standard package, it can be
used in any VHDL specification without additional declarations.
signal CondSup : boolean;
. . .
CondSup <= true;
. . .
if CondSup then
-- could be: if CondSup = true then
The CondSup signal is declared as boolean
but without any initial value. Therefore, by default it will be
assigned the false value. A conditional operation could have been
used instead as shown in the comment, but such a form would contain
useless redundancy and should be avoided.
Unlike in traditional ("hand-based") digital design,
boolean values (false and true) are NOT identical to logical 0 and 1,
respectively. In VHDL, the latter form is a completely different type
and is called the Bit type.