Error-locality-aware linear coding to correct multi-bit upsets in SRAMs