A rich variety of CAD tools are available for digital design. These tools target different implementations, such as VLSI layouts, FPGAs, or PALs. The tools also provide a broad range of abstractions in which designs may be expressed. Some design tools have been grouped by the levels of abstraction in which each is employed. In the highest level of abstraction the design effort focuses on functionality, not implementation.
Lower levels begin to define the target hardware with greater specificity.
Designing a system is the highest level of abstraction presented here. In this context, a 'system' is a IC chip. In this type of description the physical implementation of designs is not represented, only the requirements of the final logic are described. Independent Behavioral-Level Modules Registers hold data. Similar to C with looping and flow control strcutures.