Spänningsskalning är en av de mest effektiva mekanismerna för att förbättra mikroprocessorernas energieffektivitet. Processorer kan dock inte fungera tillförlitligt under en minsta spänning, Vccmin, eftersom hårdvarustrukturer kan misslyckas. Cellfel i stora minnesmatriser (t.ex. cache) avgör normalt Vccmin för hela processorn. Vi observerar att de flesta cachelinjer uppvisar noll eller ett fel vid låga spänningar. Men, några rader, särskilt i stora cache, uppvisar multi-bit misslyckanden och öka Vccmin. Tidigare lösningar antingen avsevärt minska cachekapaciteten för att möjliggöra enhetlig felkorrigering över alla linjer, eller avsevärt öka latens och bandbredd overheads vid amortering av kostnaden för felkorrigering koder (ECC) över stora linjer. I detta dokument föreslår vi en ny cachearkitektur som använder variabel-styrka felkorrigerande koder (VS-ECC). I det vanliga fallet använder linjer med noll eller ett fel ett enkelt och snabbt ECC. Ett litet antal linjer med multi-bit fel använder en stark multi-bit ECC som kräver lite extra område och latens. Vi presenterar en ny dynamisk cachekarakteriseringsmekanism för att bestämma vilka linjer som kommer att uppvisa multi-bit misslyckanden. I synnerhet använder vi multi-bit korrigering för att skydda en bråkdel av cache efter byte till låg spänning, medan dynamiskt testa återstående linjer för multi-bit fel. Jämfört med tidigare förslag om multi-bit-korrigering, minskar VS-ECC avsevärt kraft och energi, undviker betydande minskningar av cachekapacitet, ådrar sig liten yta overhead, och undviker stora ökningar i latens och bandbredd.
VS-ECC Ref föreslår variabla felkorrigeringskoder för bättre prestanda och energieffektivitet.
Energy-efficient cache design using variable-strength error-correcting codes
{'venue': '2011 38th Annual International Symposium on Computer Architecture (ISCA)', 'journal': '2011 38th Annual International Symposium on Computer Architecture (ISCA)', 'mag_field_of_study': ['Computer Science']}