Define system functionality convert functionality to physical implementation while satisfying constrained metrics and optimizing other design metrics. Designing embedded systems is hard because of complex functionality and Productivity gap. Hardware/software parallel evolution:
- Software design evolution (Machine instructions; Assemblers; Compilers);
- Hardware design evolution (Interconnected logic gates; Logic synthesis; Register-transfer (RT) synthesis; Behavioral synthesis).
In Gajski’s Y-chart each axis represents type of description behavioral, structural, physical, synthesis converts behavior at given level to structure at same level or lower.