Revisiting Residue Codes for Modern Memories (IEEE Micro - Top Picks)

Abstract

This article shows how residue codes, traditionally used for compute rather than storage error correction, can be applied to memories with surprising results. We show that adapting residue codes to modern memory systems offers a level of error correction comparable to those of traditional schemes, such as Reed–Solomon, but with fewer bits of storage. For instance, our adaptation of residue codes—multiuse error-correcting code (MUSE ECC)—can offer ChipKill protection using approximately 30% fewer bits. We use the storage gains to hold the metadata needed for emerging security functionality, such as memory tagging, or to provide better detection capabilities against Rowhammer attacks. In a system with memory tagging and MUSE, we achieve a 12% reduction in memory bandwidth utilization with the same error correction level as a traditional ECC baseline and without a noticeable performance loss. Thus, our work demonstrates a new, flexible primitive for co-designing reliability with security and performance.

Publication
In IEEE Micro - Top Picks in Computer Architecture

Related