Thermal-Aware Design Techniques for Nanometer CMOS Circuits