虽然SRAM目前仍将是主力存储器,但在先进工艺下使用SRAM有了新的挑战。
尽管SRAM的设计年代久远,但它已成为AI的主力存储器。但SRAM无法进一步缩放对功耗和性能目标提出了挑战,迫使系统从硬件创新到重新思考系统整体的布局。
SRAM及其稍年轻的表亲DRAM之间需要权衡取舍。SRAM通常配置为六个晶体管,这使得其访问时间比DRAM更快,但代价是读取和写入会消耗更多的功耗。相比之下,DRAM采用单晶体管/单电容设计,成本更低。但DRAM会影响性能,因为电容器由于电荷泄漏而需要刷新,有时在内存升温时会自刷新。因此,自推出以来的60多年里,SRAM一直是优先考虑低延迟和可靠性应用的首选存储器。
SRAM对于人工智能至关重要,尤其是嵌入式SRAM。它是性能最高的存储器,你可以将其直接与高密度逻辑集成。
功耗和性能挑战
但是,在跟上CMOS工艺缩放的步伐方面,SRAM却表现平平,这对功耗和性能产生了影响。在传统的工艺缩放中,栅极长度和栅极氧化物厚度一起缩小,以提高性能和对短沟道效应的控制。更稀的氧化物可以在较低的VDD水平下实现性能提升,这对SRAM在减少泄漏和动态功耗方面都是有利的。然而,在最近的工艺节点迁移中,我们几乎没有看到氧化物或VDD水平的进一步缩放。此外,晶体管的几何收缩导致金属互连更薄,导致寄生电阻增加,从而增加功率损耗和 RC 延迟。
随着AI设计对内部存储器访问的要求越来越高,SRAM在工艺节点迁移中进一步增加功耗已成为一个的问题。
这些问题,加上SRAM的高成本,不可避免地导致性能下降。
如果你无法获得足够的SRAM来满足处理器内核的数据存储需求,那么内核最终将不得不从更远的地方移动数据。在SRAM和DRAM之间移动数据需要额外的功耗,而且从DRAM访问这些数据需要更长的时间,因此性能会下降。
在继续更新的工艺节点上,情况可能不会改善,甚至可能变得更糟。
SRAM工艺缩放慢于逻辑是一个问题,因为cache比整个处理器大是不正常的。但如果你把cache放在芯片外,处理器的表现又会明显下降。
台积电正在招聘更多的内存设计人员来提高SRAM密度,但他们是否能解决问题还有待观察。有时可以通过雇用更多的人来推进事务的进一步发展,但大多数时候作用都很有限。关键的一步是靠极少数人走出去的。
随着时间的推移,客户将会考虑那些不像现在这样密集使用SRAM的架构。
事实上,早在20nm时代,SRAM就无法与逻辑一起缩放,这预示着当片上存储器可能变得比逻辑本身更大时,将面临功耗和性能挑战。为了应对这些问题,系统设计人员和硬件开发人员都在应用新的解决方案和开发新技术。
按照这些思路,AMD采取了不同的方法。他们引入了一种称为3D V-Cache的技术,该技术将单独芯片上的额外SRAM缓存堆叠在处理器顶部,从而增加处理器内核可用的缓存量。额外的芯片增加了成本,但允许访问额外的SRAM。另一种策略是具有多个级别的缓存。处理器内核可以具有只有它们才能访问的专用(非共享)level 1 和level 2 cache,以及在处理器内核之间共享的更大的last-level cache(LLC)。由于处理器具有如此多的内核,共享 LLC 允许某些内核有时使用更多容量,而某些内核使用更少的容量,从而在所有处理器内核中更有效地使用总容量。
纠错
SRAM缩放也增加了可靠性问题。因此,纠错可能会成为一种普遍的要求,特别是对于汽车设备而言。
其他存储器,其他结构
这在设计方面引起了很多变化。每个人都在尝试在芯片上使用更少的SRAM。如果你能承受延迟,大型存储要么被转移到DRAM,要么被转移到HBM(成本会更大)。
新的嵌入式存储器类型通常作为SRAM的替代品出现,但每种类型都有自己的一系列问题。领先的竞争者MRAM和ReRAM只占用一个晶体管面积,虽然它比SRAM中的晶体管大,但它们的整体单元尺寸仍然约为SRAM的三分之一,包括外围电路在内的尺寸约为SRAM的一半。有明显的尺寸优势,但写入速度的性能仍然远慢于SRAM。
如果物理学不允许更小的SRAM,那么替代方案将需要重新思考架构并采用chiplet,可以将更先进工艺的逻辑芯片与采用旧工艺制造的SRAM芯片相结合。这种方法将受益于改进的逻辑PPA,同时为SRAM使用具有成本效益(较旧,可能更高产量和更便宜)的工艺节点。
chiplet解决方案正好适合正在进行的集成革命。模拟电路很久以前就停止了缩放,除了少数例外,它们并没有从缩放中受益匪浅。从DRAM到SRAM再到NVM,所有类型的存储器都倾向于在不同的节点上制造,因为功耗、性能和成本原因。
逻辑更倾向于在仍满足成本和泄漏要求的最小工艺节点上制造。通过多芯片集成,我们在“理想”工艺节点中制造每个电路,然后将芯片组合成一个封装。
许多人在移动和数据中心领域都听说过这一点,但在终端人工智能和物联网领域也正在迅速发生。
在有限的情况下,系统技术协同优化 (STCO) 也可以提供帮助。对于某些应用,原则上不需要片上缓存。例如,在人工智能训练中,训练数据只使用一次,而模型参数应该在芯片上随时访问。软件和芯片架构可以利用这种一次性数据移动,绕过缓存层次结构,具有很大的潜力。
所有这些都激发了人们对新布局和互连协议的兴趣,例如 UCIe 和 CXL。当你拥有更大的 AI 工作负载时,内存会随着计算而扩展,但如果其中一个组件的扩展速度比另一个组件快一点,那么根据系统的设计方式,你会遇到不同的瓶颈。人工智能工作负载大大增加了所需的处理器数量。他们甚至突破了芯片光罩尺寸的极限,所以现在你需要像UCIe这样的高速互连器件来处理芯片到芯片系统,这意味着多芯片系统是不可避免的,以处理人工智能工作负载。
解决问题
Winbond通过其 CUBE 堆栈(定制的超带宽元素)重新思考了内存架构。
CUBE 堆栈使用DRAM作为存储单元,但也通过通孔进行3D堆叠。基本上,你可以提供从底部基板一直到SoC芯片的连接。它更具成本效益,因为DRAM不使用SRAM的六个晶体管。
CUBE可以提供足够的高密度,以取代SRAM到3级缓存。为了达到某些带宽要求,只有两种选择——提高时钟速度或增加 I/O 数量。有了CUBE,你可以随心所欲地增加它们,这在系统层面带来了很多好处,包括减少对电源的需求。CUBE目前处于原型阶段,但预计将于2024年第四季度或2025年初投入生产。
结论
改变是渐进式的。当设计师谈论他们应该拥有多大的缓存时,他们将一如既往地在性能和价格之间取得平衡。如果SRAM的价格上涨,他们会在其他地方付出一些性能损失或者通过拥有更多的DRAM带宽来弥补这一点。
就目前而言,将是这种渐进式的权衡。但如果这种趋势继续下去,这将导致人们思考完全不同的方法,你就会看到完全不同的架构。
至于SRAM被完全取代,这似乎不太可能,至少在短期内是这样。当它真的发生时,预计也会导致架构和操作系统软件的变化。