This document discusses several optimizations and tradeoffs that can be made during RTL design of datapaths, including pipelining, concurrency, component allocation, operator binding, and operator scheduling. It provides examples of applying these techniques to optimize designs for FIR filters and SAD computation. Additionally, it discusses a multiple clocking scheme for low-power RTL design and an input space adaptive design methodology for optimizing energy and performance.