Variation-aware and adaptive-latency accesses for reliable low voltage caches

Contemporary cache is known for consuming a large part of total power in microprocessors. Voltage scaling had been used to reduce the power consumption of the cache. However, due to the impact of variations, SRAM cells of the cache could potentially fail when voltage dropping. To against variations, we need to increase the supply voltage for the safety margin, thus the cache costs large energy consumption. For eliminating the voltage safety margin, some prior works for SRAM failure tolerance designs were proposed. These schemes will result in worse energy consumption and cannot deal with dynamic variations. They still have a safety margin to resist dynamic variations. With the supply voltage scaling down, we find out that the major reason of failures is that some slow cells have longer latency. We call these cell faults as “latency fault”. If each cache line can be accessed in an appropriate access time, the slower cells could be reused but not disable them. We propose a VAL-Cache adapting the access time to tolerate latency faults and which is able to scale down the voltage. And we also propose the latency-fault detector to detect latency faults at run-time so as to tolerate both static and dynamic variations. Our experimental results on Mibench and 0xbench benchmarks demonstrate that the energy consumption can be reduced 10%~18% in average at a cost of acceptable performance loss.

[1]  Norman P. Jouppi,et al.  Optimizing NUCA Organizations and Wiring Alternatives for Large Caches with CACTI 6.0 , 2007, 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007).

[2]  Amin Ansari,et al.  Archipelago: A polymorphic cache design for enabling robust near-threshold operation , 2011, 2011 IEEE 17th International Symposium on High Performance Computer Architecture.

[3]  David R. Kaeli,et al.  Exploiting temporal locality in drowsy cache policies , 2005, CF '05.

[4]  Alaa R. Alameldeen,et al.  Trading off Cache Capacity for Reliability to Enable Low Voltage Operation , 2008, 2008 International Symposium on Computer Architecture.

[5]  H. Yamauchi A discussion on SRAM circuit design trend in deeper nano-meter era , 2008, 2008 International SoC Design Conference.

[6]  Jiun-In Guo,et al.  A 0.48V 0.57nJ/pixel video-recording SoC in 65nm CMOS , 2013, 2013 IEEE International Solid-State Circuits Conference Digest of Technical Papers.

[7]  Somayeh Sardashti,et al.  The gem5 simulator , 2011, CARN.

[8]  Hiroyuki Yamauchi A Scaling Trend of Variation-Tolerant SRAM Circuit Design in Deeper Nanometer Era , 2009 .

[9]  Frank Vahid,et al.  A highly configurable cache for low energy embedded systems , 2005, TECS.

[10]  Mahmut T. Kandemir,et al.  Process-Variation-Aware Adaptive Cache Architecture and Management , 2009, IEEE Transactions on Computers.

[12]  Yiran Chen,et al.  VOSCH: Voltage scaled cache hierarchies , 2007, 2007 25th International Conference on Computer Design.

[13]  Amin Ansari,et al.  ZerehCache: Armoring cache architectures in high defect density technologies , 2009, 2009 42nd Annual IEEE/ACM International Symposium on Microarchitecture (MICRO).

[14]  Trevor Mudge,et al.  MiBench: A free, commercially representative embedded benchmark suite , 2001 .

[15]  Gu-Yeon Wei,et al.  Process Variation Tolerant 3T1D-Based Cache Architectures , 2007, 40th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO 2007).

[16]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.