The concept of type is very important when describing data in a VHDL model. The type
of a data object defines the set of values that the object can assume, as well as the set of
operations that can be performed on those values. A scalar type consists of single, indivisible
values. In this chapter we look at the basic scalar types provided by VHDL and see
how they can be used to define data objects that model the internal state of a module.