Design technology is the manner in which we convert our concept desired system into an implementation.
The three main design technologies are
This design technology allows a designer to define functionality in an abstract manner and the technology will automatically generate the lower level implementation details. Designer benefit because they do not have to be aware of the lower level implementation details, which will increase their productivity.
Libraries and IP are essentially catalogs of pre-existing implementations. This benefits the designer because they don't have to be "re-invent the wheel".
This design technology ensures that the functionality of a system is correct. This saves the designer time by preventing debugging at the low level.
Top-down design process:
The designer refines the system through several abstraction levels.
At the system level, the designer describes the desired functionality in some language, often a natural language like English, but preferably an executable language like 'C' & this is called system specifications.
The designer refines this specification by distributing a portion of it among several general or single-purpose processors, yielding behavior specification for each processor.
The designer refines these specifications into register transfer (RT) specifications by converting behavior on general purpose processors to assembly code, and by converting behavior on single-purpose processors to a connection of register-transfer components and state machine.
The designer then refines the register transfer level specifications of a single purpose processor into a logic specifications consisting of boolean equations.
No refinement of a general-purpose processors assembly code is done at this level.
Finally, the designer refines the remaining specifications into an implementation, consisting of
Machine codes for general purpose processors and
A Gate-level Netlist for special-purpose processors.