电脑开机后等待程序加载的每一秒,都可能是DRAM设计领域数十年技术攻坚的缩影。

现代DRAM设计早已超越简单的“存储数据”功能,成为平衡性能、功耗、安全与成本的精密工程-3。从DDR1到DDR4的演变中,并行预取机制从2n逐步提升至8n,每次数据传输能处理的数据组数成倍增加-5

但内存延迟仍是高性能计算的顽固瓶颈,现代多核系统中的应用程序相互干扰导致随机内存访问流量,写入密集型应用更是频繁移动数据,削弱了传统缓存设计的优势-1


01 演进历程

DRAM设计的演进是一场围绕信号质量与传输效率的持久战。早期的SDRAM采用1n预取,意味着内存控制器一次只能处理一组数据-5

进入DDR时代后,预取并行度逐步提升:DDR1实现2n,DDR2达到4n,DDR3和DDR4则提升至8n-5。这种技术演进使得内存系统能在保持核心速度不变的情况下,通过乒乓操作方式提高I/O速率。

信号传输质量同样经历了多代优化。SDRAM中的数据、地址和时钟信号是分开的,而DDR1引入了数据选通、终端电压和寄生电容补偿技术-5

DDR2进一步采用Strobe Pair设计减少不对称错误,DDR3引入命令敏感型片上终端,DDR4则实现了更精细的参考电压调整-5。这些看似微小的改进,共同保证了数据在高频率下的稳定传输。

02 面临挑战

随着制程技术节点不断缩小,现代DRAM设计面临三大核心难题。延迟问题依然突出,处理器的吞吐量持续增长,但内存吞吐量未能同步提升,导致“内存墙”问题日益严峻-1

这迫使研究人员开发各种数据/指令预取器设计,但这些预取器往往各自为战,缺乏系统级协调,导致平均性能提升有限且存在大量负异常情况-1

安全漏洞成为新的噩梦,RowHammer攻击现象展示了重复访问DRAM单元某一行会导致附近行出现位翻转的严重问题-1。随着技术节点缩小,这种情况在历代DRAM芯片中愈发严重-1

现有的防御机制要么有明显性能能耗开销,要么有效性有限,要么硬件复杂度极高-1。特别是在现代移动系统中,采用低延迟宽I/O(LLW)DRAM反而增加了对RowHammer攻击的脆弱性,因为行循环时间更短-8

刷新功耗负担愈发沉重。DRAM单元的数据保存时间受限于固有泄漏电流、温度变化和老化效应-6

为了防止数据保存故障,必须执行定期刷新操作,这消耗大量能量并降低系统性能-6。随着芯片密度提高,这个问题变得尤为棘手。

03 创新突破

面对这些挑战,研究者们提出了多种创新解决方案。FASA-DRAM技术通过解耦数据移动过程为两个独立阶段,成功降低平均延迟-1

第一阶段采用负载减少型破坏性激活技术,破坏性地将数据提升至DRAM内缓存;第二阶段则是延迟周期窃取恢复技术,在DRAM存储体空闲时恢复原始数据-1。这种方法平均提升性能19.9%,同时降低DRAM能耗18.1%-1

针对RowHammer攻击,BreakHammer方案通过追踪触发预防操作的内存访问生成器来识别潜在攻击线程-2。它基于线程触发RowHammer预防操作的频率估算线程的RowHammer概率,并据此限制线程可注入内存系统的即时请求数量-2

实验显示,这种方法平均提高系统性能48.7%,最大提升达105.5%-2

另一种LEAP方案专门针对LLW DRAM系统,采用行级地址加密和数据固定技术,相比传统受害者刷新方法性能提高2.4%,功耗降低6.8%-8

还有研究通过改变计数粒度从存储体级到列级,进一步减少了所需计数器总数——DDR3减少20%,DDR5减少70%,从而降低了硅面积和能耗开销-9

04 未来趋势

混合内存架构可能是未来发展方向之一,有研究提出混合刷新主存设计,旨在针对不同应用的内存访问特性进行优化-7

内存内计算技术也在演进,传统处理-使用-DRAM方法受限于DRAM行的大而刚性粒度-1。MIMDRAM系统通过硬件/软件协同设计,引入了新机制来仅为给定PUD操作分配和控制必要资源-1

该系统利用细粒度DRAM能力,在每个DRAM子阵列中启用多指令多数据执行模型,在每行DRAM段内保持单指令多数据执行-1。评估显示,MIMDRAM提供的性能是最先进PUD框架的34倍,能源效率则是其14.3倍-1

可靠的DRAM设计继续整合多种容错技术。一项研究结合自适应块刷新技术和混合ECC与冗余技术-6

当检测到错误时,系统会将编码字补码写回内存并通过读出比较来识别硬错误,然后使用硬件冗余技术配置的备用位进行修复-6。对于数据保留错误,系统通过在原始刷新周期时间后额外插入读取指令来识别-6

这种综合方法使128Mb内存的刷新功耗最多节省87.16%,而硬件成本增加不超过1%-6


随着技术节点不断缩小,现代DRAM芯片中不同内存位置间读取干扰的空间变化性愈发显著。在读取干扰脆弱性最严重的存储器部分,发生位翻转的数量是最不脆弱内存位置的两倍,而且位翻转发生的访问次数要少一个数量级-1

更灵活的PUD系统正在出现,旨在克服由PUD大而刚性粒度引起的限制。这些系统试图打破传统内存设计的条条框框,就像一位经验丰富的工程师傅在调整精密仪器:“这个地方得松一点,那个部件要紧一紧,整体才能协调工作。”

网友提问与回答

网友“芯片爱好者”提问:RowHammer问题真的那么严重吗?普通用户需要担心吗?

RowHammer问题确实比你想象的更严重。这个安全威胁能导致相邻受害者单元发生位翻转,而且随着DRAM技术尺寸缩小,问题越来越严重-9

早期DDR3内存需要大约13万次攻击行激活才能破坏受害者行,而最新的LPDDR4内存只需要约1万次-9。这意味着现代内存实际上更容易受到RowHammer攻击。

对于普通用户而言,风险是真实存在的。研究人员已经证明了通过RowHammer攻击可以提升权限、绕过安全机制等-1。虽然大多数普通用户可能不是针对性攻击的目标,但大规模攻击可能会利用这些漏洞。

好消息是,硬件和软件开发者已经意识到这个问题并正在实施缓解措施。许多现代系统已经包含了一些防护机制,如增加刷新频率或使用错误校正码。但是,完全解决这个问题需要重新思考DRAM的基本设计,这也是为什么研究人员正在开发像BreakHammer-2和LEAP-8这样的创新解决方案。

网友“硬件工程师小李”提问:在实际芯片设计中,如何平衡DRAM性能和功耗?有什么具体策略?

这是个非常实际的问题!在DRAM设计中,性能和功耗之间的平衡确实是个挑战。一种有效策略是采用自适应刷新技术。传统DRAM需要定期刷新所有存储单元,但事实上不同单元的电荷保持能力不同-6

通过监测各区域的数据保持特性,可以为不同存储块设置不同的刷新周期,对保持能力强的区域减少刷新频率,从而显著降低功耗-6

另一种方法是优化预取架构。DDR5已经实现了16n预取并行度,比DDR1的2n大幅提升-5。这意味着每次能处理更多数据,减少激活次数,从而降低功耗。但同时要考虑信号完整性和噪声问题,这就需要引入更精细的参考电压调整等信号完整性技术-5

对于写入密集型应用,FASA-DRAM采用的破坏性激活和延迟恢复技术也很有效-1。它将数据移动解耦为两个阶段,减少不必要的数据传输,从而在提升性能的同时降低能耗。

实际设计中,常常需要结合多种技术,并根据目标应用的特点进行权衡。比如对移动设备可能更侧重功耗优化,而对服务器则可能更关注性能表现。

网友“计算机专业学生”提问:学习DRAM设计应该从哪里入手?有哪些基础知识是必须掌握的?

很高兴你对DRAM设计感兴趣!要入门DRAM设计,建议从几个基础模块开始。必须理解DRAM存储单元的基本工作原理和电路结构,包括存储单元阵列、位线结构、敏感放大器等核心组件-3

DRAM与SRAM不同,它需要定期刷新来保持数据,这是由DRAM的存储机制决定的-6。了解各种时序参数和访问命令的时序约束也很重要-3

我建议从实际课程结构中获得学习路径参考。例如,一些大学课程会涵盖从SRAM单元设计和约束开始,逐步深入到DRAM阵列设计和相关约束,最后讨论可靠性考虑和测试修复-10

这样的学习路径能帮助你建立完整知识体系。同时要关注最新研究进展,比如内存内计算、混合内存架构等新兴方向-7。现在有很多开源工具和仿真环境可以实践,动手操作能加深理解。

记住,DRAM设计是跨学科领域,需要电路设计、计算机架构、半导体物理等多方面知识。保持好奇心和持续学习的态度是最重要的!