Skip to main content

Software-Level Instruction-Cache Leakage Reduction Using Value-Dependence of SRAM Leakage in Nanometer Technologies

  • Chapter
Transactions on High-Performance Embedded Architectures and Compilers III

Part of the book series: Lecture Notes in Computer Science ((THIPEAC,volume 6590))

  • 596 Accesses

Abstract

Within-die process variation is increasing in nanometer-scale process technologies. We observe that the same SRAM cell leaks differently under within-die process variations when storing 0 compared to 1; this difference can be up to 3 orders of magnitude at 60mV variation of threshold voltage (Vth). Thus, leakage can be reduced if most often the values that dissipate less leakage are stored in the cache SRAM cells. We take advantage of this fact to reduce instruction-cache leakage by presenting three binary-optimization and software-level techniques: we (i) reorder instructions within basic-blocks so that their bits better match the less-leaky state of their corresponding cache cells, (ii) statically change the register operands of the instructions with the same aim, and (iii) at boot time, initialize unused cache-lines to their corresponding least-leaky values. Experimental results show up to 54%, averaging 35%, leakage energy reduction at 60mV variation in Vth, and show that with technology scaling, this saving can reach up to 84% at 100mV Vth variation. Since our techniques are one-off and do not affect instruction cache hit ratio, this reduction is provided with only a negligible penalty, in rare cases, in data cache.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 16.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Moshnyaga, V.G., Inoue, K.: Low-Power Cache Design. In: Piguet, C. (ed.) Low-Power Electronics Design. CRC Press, Boca Raton (2005)

    Google Scholar 

  2. Roy, K., et al: Leakage Current Mechanisms and Leakage Reduction Techniques in Deep-Submicron CMOS Circuits. Proc. IEEE (2003)

    Google Scholar 

  3. Taur, Y., Ning, T.H.: Fundamentals of Modern VLSI Devices. Cambridge University Press, Cambridge (1998)

    Google Scholar 

  4. Kao, J.T., Chandrakasan, A.P.: Dual-Threshold Voltage Techniques for Low-Power Digital Circuits. IEEE Journal of Solid State Circuits 35, 1009–1018 (2000)

    Article  Google Scholar 

  5. Fallah, F., Pedram, M.: Circuit and System Level Power Management. In: Pedram, M., Rabaey, J. (eds.) Power Aware Design Methodologies, pp. 373–412. Kluwer Academic Pub., Dordrecht (2002)

    Chapter  Google Scholar 

  6. De, V., Borkar, S.: Low Power and High Performance Design Challenge in Future Technologies. In: Proc. Great Lake Symposium on VLSI (2000)

    Google Scholar 

  7. Kuroda, T., Fujita, T., Hatori, F., Sakurai, T.: Variable Threshold-Voltage CMOS Technology. IEICE Trans. on Fundamentals of Elec., Comm. and Comp. Sciences E83-C (2000)

    Google Scholar 

  8. Albonesi, D.: Selective Cache Ways: On-Demand Cache Resource Allocation. In: Proc. Int’l Symposium on Microarchitecture (1999)

    Google Scholar 

  9. Powell, M.D., et al.: Gated-Vdd: A Circuit Technique to Reduce Leakage in Cache Memories. In: Int’l Symposium on Low Power Electronics and Design (2000)

    Google Scholar 

  10. Kaxiras, S., Hu, Z., Martonosi, M.: Cache Decay: Exploiting Generational Behavior to Reduce Cache Leakage Power. In: Proc. Int’l Symposium on Computer Architecture, pp. 240–251 (2001)

    Google Scholar 

  11. Flautner, K., et al.: Drowsy Caches: Simple Techniques for Reducing Leakage Power. In: Proc. Int’l Symposium on Computer Architecture (2002)

    Google Scholar 

  12. Meng, K., Joseph, R.: Process Variation Aware Cache Leakage Management. In: Proc. Int’l Symposium on Low Power Electronics and Design (2006)

    Google Scholar 

  13. Steinke, S., Wehmeyer, L., Lee, B.S., Marwedel, P.: Assigning Program and Data Objects to Scratchpad for Energy Reduction. In: Proc. of Design Automation and Test in Europe (2002)

    Google Scholar 

  14. Verma, M., Wehmeyer, L., Marwedel, P.: Cache-Aware Scratchpad-Allocation Algorithms for Energy-Constrained Embedded Systems. IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems 25(10), 2035–2051 (2006)

    Article  Google Scholar 

  15. Tomiyama, H., Yasuura, H.: Code Placement Techniques for Cache Miss Rate Reduction. ACM Trans. on Design Automation of Electronic Systems (ToDAES) 2(4) (1997)

    Google Scholar 

  16. Tomiyama, H., Ishihara, T., Inoue, A., Yasuura, H.: Instruction Scheduling for Power Reduction in Processor-Based System Design. In: Proc. of Design Automation and Test in Europe (1998)

    Google Scholar 

  17. Panda, P.R., Catthoor, F., Dutt, N.D., Danckaert, K., Brockmeyer, E., Kulkarni, C., Vandercappelle, A., Kjeldsberg, P.G.: Data and Memory Optimization Techniques for Embedded Systems. ACM Trans. on Design Automation of Electronic Systems (ToDAES) 6(2) (2001)

    Google Scholar 

  18. Zhang, W., Kandemir, M., Karakoy, M., Chen, G.: Reducing Data Cache Leakage Energy Using a Compiler-Based Approach. ACM Trans. Embedded Computing Systems 4(3), 652–678 (2005)

    Article  Google Scholar 

  19. Huang, P.K., Ghiasi, S.: Leakage-Aware Intraprogram Voltage Scaling for Embedded Processors. In: Proc. Design Automation Conference, pp. 364–369 (2006)

    Google Scholar 

  20. Chang, J.M., Pedram, M.: Register Allocation and Binding for Low Power. In: Proc. Design Automation Conference (1995)

    Google Scholar 

  21. Gebotys, C.H.: Low Energy Memory and Register Allocation Using Network Flow. In: Proc. Design Automation Conference (1997)

    Google Scholar 

  22. Abdollahi, A., Fallah, F., Pedram, M.: Leakage Current Reduction in CMOS VLSI Circuits by Input Vector Control. IEEE Trans. VLSI 12(2), 140–154 (2004)

    Article  Google Scholar 

  23. Azizi, N., Najm, F.N., Moshovos, A.: Low-Leakage Asymmetric-Cell SRAM. IEEE Trans. VLSI 11(4), 701–715 (2003)

    Article  Google Scholar 

  24. Moshovos, A., Falsafi, B., Najm, F.N., Azizi, N.: A Case for Asymmetric-Cell Cache Memories. IEEE Trans. VLSI 13(7), 877–881 (2005)

    Article  Google Scholar 

  25. Clark, L., De, V.: Techniques for Power and Process Variation Minimization. In: Piguet, C. (ed.) Low-Power Electronics Design. CRC Press, Boca Raton (2005)

    Google Scholar 

  26. Goudarzi, M., Ishihara, T., Noori, H.: Variation-Aware Software Techniques for Cache Leakage Reduction using Value-Dependence of SRAM Leakage due to Within-Die Process Variation. In: Stenström, P., Dubois, M., Katevenis, M., Gupta, R., Ungerer, T. (eds.) HiPEAC 2007. LNCS, vol. 4917, pp. 224–239. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  27. M32R family of 32-bit RISC microcomputers, http://www.renesas.com

  28. CACTI integrated cache access time, cycle time, area, leakage, and dynamic power model, HP Labs, http://www.hpl.hp.com/personal/Norman_Jouppi/cacti4.html and http://quid.hpl.hp.com:9082/cacti/

  29. Agarwal, A., Paul, B.C., Mahmoodi, H., Datta, A., Roy, K.: A Process-Tolerant Cache Architecture for Improved Yield in Nanoscale Technologies. IEEE Trans. VLSI 13(1) (2005)

    Google Scholar 

  30. Luo, J., Sinha, S., Su, Q., Kawa, J., Chiang, C.: An IC Manufacturing Yield Model Considering Intra-Die Variations. In: Proc. of Design Automation Conference, pp. 749–754 (2006)

    Google Scholar 

  31. Agarwal, K., Nassif, S.: Statistical Analysis of SRAM Cell Stability. In: Proc. Design Automation Conference (2006)

    Google Scholar 

  32. Toyoda, E.: DFM: Device & Circuit Design Challenges. In: Proc. Int’l Forum on Semiconductor Technology (2004)

    Google Scholar 

  33. International Technology Roadmap for Semiconductors—Design (2006) (update), http://www.itrs.net/Links/2006Update/2006UpdateFinal.htm

  34. Hill, S.: The ARM 10 Family of Embedded Advanced Microprocessor Cores. In: Proc. HOT-Chips (2001)

    Google Scholar 

  35. Suzuki, K., Arai, T., Kouhei, N., Kuroda, I.: V830R/AV: Embedded Multimedia Superscalar RISC Processor. IEEE Micro 18(2), 36–47 (1998)

    Article  Google Scholar 

  36. Hamdioui, S.: Testing Static Random Access Memories: Defects, Fault Models and Test Patterns. Kluwer Academic Publishers, Dordrecht (2004)

    Book  MATH  Google Scholar 

  37. Thibeault, C.: On the Comparison of Delta IDDQ and IDDQ Testing. In: Proc. VLSI Test Symposium, pp. 143–150 (1999)

    Google Scholar 

  38. DSM-8104 ammeter, http://www.nihonkaikeisoku.co.jp/densi/toadkk_zetuenteikou_dsm8104.htm

  39. Ferre, A., Isern, E., Rius, J., Rodriguez-Montanes, R., Figueras, J.: IDDQ Testing: State of the Art and Future Trends. Integration, the VLSI Journal 26(167-196) (1998)

    Google Scholar 

  40. Wallquist, K.M., Righter, A.W., Hawkins, C.F.: A General Purpose IDDQ Measurement Circuit. In: Proc. Int’l Test Conference, pp. 642–651 (1993)

    Google Scholar 

  41. Wallquist, K.M.: On the Effect of ISSQ Testing in Reducing Early Failure Rate. In: Proc. Int’l Test Conference, pp. 910–914 (1995)

    Google Scholar 

  42. Bushnell, M.L., Agrawal, V.D.: Essentials of Electronic Testing, for Digital, Memory and Mixed-Signal VLSI Circuits. Kluwer Academic Publishers, Dordrecht (2000)

    Google Scholar 

  43. Kanda, K., Duc Minh, N., Kawaguchi, H., Sakurai, T.: Abnormal Leakage Suppression (ALS) Scheme for Low Standby Current SRAMs. In: Proc. IEEE Int’l Solid-State Circuits Conference, pp. 174–176 (2001)

    Google Scholar 

  44. Feltham, D.B.I., Nigh, P.J., Carley, L.R., Maly, W.: Current Sensing for Built-In Testing of CMOS Circuits. In: Proc. Int’l Conference on Computer Design, pp. 454–457 (1988)

    Google Scholar 

  45. Stopjakova, V., Manhaeve, H.: CCII+ Current Conveyor Based BIC Monitor for IDDQ Testing of Complex CMOS Circuits. In: Proc. European Design and Test Conference (1997)

    Google Scholar 

  46. Shen, T.L., Daly, J.C., Lo, J.C.: 2-ns Detecting Time, 2-μm CMOS Built-In Current Sensing Circuit. IEEE Journal of Solid-State Circuits 28(1), 72–77 (1993)

    Article  Google Scholar 

  47. Antonioli, Y., et al.: 100 MHz IDDQ Sensor with 1μA Resolution for BIST Applications. In: Proc. IEEE Intl. Workshop on IDDQ Testing, pp. 64–68 (1998)

    Google Scholar 

  48. Liobe, J., Margala, M.: Novel Process and Temperature-Stable IDD Sensor for the BIST Design of Embedded Digital, Analog, and Mixed-Signal Circuits. IEEE Trans. Circuits and Systems 54(9), 1900–1915 (2007)

    Article  Google Scholar 

  49. Marinissen, E.J., Prince, B., Keitel-Schulz, D., Zorian, Y.: Challenges in Embedded Memory Design and Test. In: Proc. Design Automation and Test in Europe (2005)

    Google Scholar 

  50. Ghosh, S., Mukhopadhyay, S., Kim, K., Roy, K.: Self-Calibration Technique for Reduction of Hold Failures in Low-Power Nano-Scaled SRAM. In: Proc. Design Automation Conference (2006)

    Google Scholar 

  51. MiBench (ver. 1.0), http://www.eecs.umich.edu/mibench/

  52. MediaBench, http://cares.icsl.ucla.edu/MediaBench

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Goudarzi, M., Ishihara, T., Noori, H. (2011). Software-Level Instruction-Cache Leakage Reduction Using Value-Dependence of SRAM Leakage in Nanometer Technologies. In: Stenström, P. (eds) Transactions on High-Performance Embedded Architectures and Compilers III. Lecture Notes in Computer Science, vol 6590. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19448-1_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-19448-1_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-19447-4

  • Online ISBN: 978-3-642-19448-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics