1 Introduction. 1.1 High-level system design. 1.2 Power as design constraint. 1.3 Application. 1.4 Outline. 2 Design trade-offs 2.1 Introduction. 2.2 Area estimation. 2.3 Delay estimation. 2.4 Power estimation. 2.5 Area, delay, power trade-offs. 2.6 Summary. 3 Architecting with uncertainties. 3.1 Introduction. 3.2 Application model. 3.3 Architecture class. 3.4 Hardware-software partitioning. 3.5 Extension to multiple algorithms...