Protection of Associative Memories Using Combined Tag and Data Parity (CTDP)

As emerging memories are utilized in processors as main memory, they must also coexist with CMOS memories; for instance SRAMs, are used to implement smaller, but faster associative memories. These hybrid designs exploit the advantages of both types of memories to achieve better performance. For some applications, the improvement in performance for on-chip associative memories is crucial for the overall computing system. For CMOS memories, soft errors are a major concern because they flip bits and can lead to data corruption and even a system failure. Error Detection and Correction Codes (EDCCs) are commonly used to protect memories against soft errors. In associative memories, an entry is formed by a tag and its associated data (or value). EDCCs are typically used to separately protect the tag and the data. This paper considers the protection of associative memories in which false negatives do not cause a failure. A Combined Tag and Data Parity (CTDP) protection scheme is proposed. This new approach utilizes a single parity bit per entry, so it reduces the number of parity bits needed to protect an entry as well as the memory size. The proposed scheme also reduces the complexity of read operations; it incurs the lowest circuit overhead for the protection circuitry in terms of area, delay and power consumption when compared to other schemes found in the technical literature. This makes the proposed scheme germane to associative memories used in hybrid designs that combine SRAMs and emerging memories. The extension of the proposed scheme to stronger codes is also discussed.

[1]  Yuan Xie,et al.  Modeling, Architecture, and Applications for Emerging Memory Technologies , 2011, IEEE Design & Test of Computers.

[2]  Fabrizio Lombardi,et al.  Design and Comparative Evaluation of a PCM-Based CAM (Content Addressable Memory) Cell , 2017, IEEE Transactions on Nanotechnology.

[3]  Tomasz Wojcicki VLSI : Circuits for Emerging Applications , 2019 .

[4]  Frank Vahid,et al.  A highly configurable cache architecture for embedded systems , 2003, 30th Annual International Symposium on Computer Architecture, 2003. Proceedings..

[5]  M. Sachdev,et al.  A New SEC-DED Error Correction Code Subclass for Adjacent MBU Tolerance in Embedded Memory , 2013, IEEE Transactions on Device and Materials Reliability.

[6]  Guangyu Sun,et al.  Memory that never forgets: emerging nonvolatile memory and the implication for architecture design , 2018 .

[7]  Ruud van der Pas,et al.  Memory Hierarchy in Cache-Based Systems , 2002 .

[8]  Farid N. Najm,et al.  A Soft-Error Tolerant Content-Addressable Memory (CAM) Using An Error-Correcting-Match Scheme , 2006, IEEE Custom Integrated Circuits Conference 2006.

[9]  T. Yamada,et al.  In-orbit experiment on the fault-tolerant space computer aboard the satellite Hiten , 1996, IEEE Trans. Reliab..

[10]  Shuai Wang,et al.  Replicating Tag Entries for Reliability Enhancement in Cache Tag Arrays , 2012, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[11]  Wei Wu,et al.  Direct Compare of Information Coded With Error-Correcting Codes , 2012, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[12]  Fabrizio Lombardi,et al.  Detection of Limited Magnitude Errors in Emerging Multilevel Cell Memories by One-Bit Parity (OBP) or Two-Bit Parity (TBP) , 2019 .

[13]  Nur A. Touba,et al.  Efficient One-Step Decodable Limited Magnitude Error Correcting Codes for Multilevel Cell Main Memories , 2019, IEEE Transactions on Nanotechnology.

[14]  Yiannakis Sazeides,et al.  Don’t Correct the Tags in a Cache, Just Check Their Hamming Distance from the Lookup Tag , 2018, 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA).

[15]  Shubu Mukherjee,et al.  Architecture Design for Soft Errors , 2008 .

[16]  Michail Maniatakos,et al.  Multiple-Bit Upset Protection in Microprocessor Memory Arrays Using Vulnerability-Based Parity Optimization and Interleaving , 2015, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[17]  Kian Jafari,et al.  Nonvolatile Spin-Based Radiation Hardened Retention Latch and Flip-Flop , 2019, IEEE Transactions on Nanotechnology.

[18]  K. Pagiamtzis,et al.  Content-addressable memory (CAM) circuits and architectures: a tutorial and survey , 2006, IEEE Journal of Solid-State Circuits.

[19]  Pedro Reviriego,et al.  Evaluating Direct Compare for Double Error-Correction Codes , 2017, IEEE Transactions on Device and Materials Reliability.

[20]  C. P. Bridges,et al.  ACEDR: Automatic Compiler Error Detection and Recovery for COTS CPU and Caches , 2019, IEEE Transactions on Reliability.

[21]  Chin-Long Chen,et al.  Error-Correcting Codes for Semiconductor Memory Applications: A State-of-the-Art Review , 1984, IBM J. Res. Dev..