Skip to main content
QUICK REVIEW

[论文解读] Computing in Memory with Spin-Transfer Torque Magnetic RAM

Shubham Jain, Ashish Ranjan|arXiv (Cornell University)|Mar 6, 2017
Advanced Data Storage Technologies参考文献 43被引用 6
一句话总结

本文提出 STT-CiM,一种新颖的基于自旋转移扭矩磁性随机存取存储器(STT-MRAM)的内存计算架构,通过同时启用多条字线并感测合并的位线电流,在内存阵列中直接执行计算,从而实现逻辑与算术运算。该方法通过集成纠错编码(ECC)以增强容错能力,并扩展处理器指令集与片上总线,实现与软件的无缝集成,系统性能最高提升10.4倍,能耗降低12.4倍。

ABSTRACT

In-memory computing is a promising approach to addressing the processor-memory data transfer bottleneck in computing systems. We propose Spin-Transfer Torque Compute-in-Memory (STT-CiM), a design for in-memory computing with Spin-Transfer Torque Magnetic RAM (STT-MRAM). The unique properties of spintronic memory allow multiple wordlines within an array to be simultaneously enabled, opening up the possibility of directly sensing functions of the values stored in multiple rows using a single access. We propose modifications to STT-MRAM peripheral circuits that leverage this principle to perform logic, arithmetic, and complex vector operations. We address the challenge of reliable in-memory computing under process variations by extending ECC schemes to detect and correct errors that occur during CiM operations. We also address the question of how STT-CiM should be integrated within a general-purpose computing system. To this end, we propose architectural enhancements to processor instruction sets and on-chip buses that enable STT-CiM to be utilized as a scratchpad memory. Finally, we present data mapping techniques to increase the effectiveness of STT-CiM. We evaluate STT-CiM using a device-to-architecture modeling framework, and integrate cycle-accurate models of STT-CiM with a commercial processor and on-chip bus (Nios II and Avalon from Intel). Our system-level evaluation shows that STT-CiM provides system-level performance improvements of 3.93x on average (upto 10.4x), and concurrently reduces memory system energy by 3.83x on average (upto 12.4x).

研究动机与目标

  • 解决现代计算系统中日益严重的处理器-内存数据传输瓶颈问题。
  • 利用 STT-MRAM 的电阻特性,实现多条字线同时激活,支持内存内计算。
  • 通过扩展的 ECC 方案,检测并纠正 CiM 特定错误,确保在工艺变化下的可靠计算。
  • 通过指令集与总线扩展,将 STT-CiM 集成至通用处理器系统中。
  • 通过优化内存层次结构中的数据映射技术,最大化性能与能效收益。

提出的方法

  • 在 STT-MRAM 阵列中同时启用多条字线,使多个位单元连接至同一条位线,实现对合并电流的集体感测。
  • 设计可调参考电流的增强型感测电路,以区分不同电流总和,实现逻辑函数(或、或非、与、与非、异或)的计算。
  • 扩展纠错编码(ECC)方案,以检测并纠正计算过程中产生的错误,而不仅限于读写操作期间。
  • 针对 Nios II 处理器提出架构扩展,包括新增指令与片上总线协议,使软件可透明调用 CiM 操作。
  • 将周期精确的 STT-CiM 模型与 Nios II 处理器及 Avalon 总线集成,用于系统级评估。
  • 开发数据映射技术,将频繁访问的数据映射至 STT-CiM,以实现最优性能与能效增益。

实验结果

研究问题

  • RQ1能否利用 STT-MRAM 的电阻位单元结构,通过同时激活多条字线,在内存内执行逻辑与算术运算?
  • RQ2在 STT-MRAM 的隧穿磁阻特性有限且存在工艺变化的条件下,如何确保内存内计算的容错能力?
  • RQ3为将 STT-CiM 作为通用处理器系统中的可编程暂存存储器,需要哪些架构扩展?
  • RQ4数据映射策略在最大化 STT-CiM 性能与能效收益方面有多高效?
  • RQ5在真实处理器环境中,STT-CiM 能带来多大程度的端到端系统级性能与能效提升?

主要发现

  • STT-CiM 在测试工作负载下实现了平均 3.93 倍的系统级性能加速,峰值加速达 10.4 倍。
  • 该架构平均将内存系统能耗降低 3.83 倍,最大降低达 12.4 倍,优于基线系统。
  • 扩展的 ECC 方案能有效检测并纠正计算过程中引入的错误,在工艺变化下显著提升可靠性。
  • 通过指令集与总线扩展将 STT-CiM 集成为暂存存储器,实现了软件对内存内计算的透明使用。
  • 优化的数据映射技术显著提升了 STT-CiM 的利用率,最大化了性能与能效收益。
  • 基于 Nios II 与 Avalon 总线的周期精确模型进行的系统级评估,证实了 STT-CiM 在真实计算场景中的实际可行性与显著性能增益。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。