Hardware and Software Co-Design
The introduction of increasingly powerful processors and algorithms allow certain hardware functions to be transferred to software (e.g. filter, DC-AC converters) and on occasion even improved (e.g. better resolution by oversampling). This close interdependence of hardware and software requires special care and attention to system design, taking into consideration boundary conditions and various factors such as processing power, distribution of tasks, power consumption, space requirements and achievable performance.