To reduce the design cycle, the framework can take advantage of application-specific design methods to validate specifications, perform fast simulation, and generate efficient implementations. Extensibility allows new algorithms, tools, languages, and devices to be added to the framework so that previous working designs can be rapidly retargeted to new technologies. Many aspects of system design are currently covered in the ECE curriculum. The Embedded Software Systems course is intended to help complete the student's training in system-level design. The first part of the course covers dataflow models of computation.
Dataflow models capture the data-intensive computations common in signal processing algorithms.
We will discuss the synthesis of software from dataflow models for uniprocessor and multiprocessor architectures, especially for those involving digital signal processors. Next, we will discuss the synthesis of software for microcontrollers and distributed systems from these models of computations. The class concludes by discussing heterogeneous systems formed by mixing control and dataflow models. From the middle of the 1980s to the early 1990s, the EDA CAD tool vendors focused primarily on the automation of hardware designs, such as application-specific integrated circuits. During that time, they pushed the level of design abstraction from transistor-level layout to gate level layout to functional layout.