*Thinking...*
TL;DR 精炼摘要
本文首次系统分析高带宽内存(HBM)在实时系统中的时序特性,揭示其相比传统DRAM的结构优势,重点提升任务隔离性和降低最坏情况延迟,满足关键嵌入式系统对内存性能的严格要求。
摘要
Demystifying the Characteristics of High Bandwidth Memory for Real-Time Systems Kazi Asifuzzaman ∗ , Mohamed Abuelala † , Mohamed Hassan † and Francisco J Cazorla ∗ ∗ Barcelona Supercomputing Center, Spain † McMaster University, Canada Abstract —The number of functionalities controlled by software on every critical real-time product is on the rise in domains like automotive, avionics and space. To implement these advanced functionalities, software applications increasingly adopt artificial intelligence algorithms that manage massive amounts of data transmitted from various sensors. This translates into unprecedented memory performance requirements in critical systems that the commonly used DRAM memories struggle to provide. High-Bandwidth Memory (HBM) can satisfy these require- ments offering high bandwidth, low power and high-integration capacity features. However, it remains unclear whether the predictability and isolation properties of HBM are compatible with the requirements of critical embedded systems. In this work, we perform to our knowledge the first timing analysis of HBM. We show the unique structural and timing characteristics of HBM wit
思维导图
论文精读
中文精读
1. 论文基本信息
1.1. 标题
Demystifying the Characteristics of High Bandwidth Memory for Real-Time Systems (揭秘实时系统中高带宽内存的特性)
1.2. 作者
Kazi Asifuzzaman*, Mohamed Abuelala†, Mohamed Hassan† 和 Francisco J Cazorla* * 巴塞罗那超级计算中心 (Barcelona Supercomputing Center),西班牙 † 麦克马斯特大学 (McMaster University),加拿大
1.3. 发表期刊/会议
根据论文页眉信息 ICCAD98.2021.63,该论文很可能发表于 2021 年的国际计算机辅助设计会议 (International Conference on Computer Aided Design, ICCAD) 或其相关研讨会。ICCAD 是计算机体系结构、电子设计自动化 (EDA) 领域享有盛誉的顶级会议之一,在相关领域具有重要的学术影响力。
1.4. 发表年份
2021 年
1.5. 摘要
随着汽车、航空航天等关键实时产品中由软件控制的功能日益增多,为了实现这些高级功能,软件应用越来越多地采用人工智能 (AI) 算法来处理来自各种传感器的大量数据。这导致了关键系统对内存性能提出了前所未有的要求,而常用 DRAM (Dynamic Random Access Memory,动态随机存取存储器) 难以满足。HBM (High-Bandwidth Memory,高带宽内存) 能够提供高带宽、低功耗和高集成度等特性来满足这些需求。然而,HBM 的可预测性 (predictability) 和隔离性 (isolation) 特性是否与关键嵌入式系统的要求兼容,仍不明确。在这项工作中,作者们首次对 HBM 进行了时序分析。他们展示了 HBM 相较于 DRAM 独特的结构和时序特性,以及如何利用这些特性来提高时间可预测性,重点在于增强任务间的隔离性和降低最坏情况内存延迟 (worst-case memory latency)。
1.6. 原文链接
提供的相对路径:/files/papers/69003d27bd968e29d463b6a3/paper.pdf
此为论文 PDF 的文件路径。
2. 整体概括
2.1. 研究背景与动机
当前,实时系统(如自动驾驶、航空电子设备和空间系统)中的软件功能日益复杂,并大量融入人工智能 (AI) 算法。这些算法需要处理海量的传感器数据,从而对内存性能提出了前所未有的高要求。传统的 DRAM (Dynamic Random Access Memory,动态随机存取存储器) 内存由于其有限的带宽和不可预测的时序特性,难以满足这些严苛的需求。
HBM (High-Bandwidth Memory,高带宽内存) 作为一种新型内存技术,通过其 3D 堆叠设计和宽接口,提供了远超传统 DRAM 的带宽、更低的功耗和更高的集成度。这使其在高性能计算领域得到了广泛应用。然而,对于实时系统而言,除了平均性能,更关键的是内存访问的可预测性 (predictability) 和任务间的隔离性 (isolation)。现有研究尚未充分探讨 HBM 在这些方面的表现,以及它是否能满足关键嵌入式系统对严格时序保障的要求。
因此,本研究的动机在于:填补 HBM 在实时系统背景下时序可预测性分析的空白,深入理解 HBM 的独特特性如何影响最坏情况执行时间 (Worst-Case Execution Time, WCET) 的分析,并探索其在提升任务隔离性和降低最坏情况内存延迟 (Worst-Case Memory Latency, WCL) 方面的潜力。
2.2. 核心贡献/主要发现
本论文的主要贡献可以总结为以下四点:
- 深入分析
HBM结构与时序特性: 作者分析了HBM的设备结构及其相对于传统DRAM在功能和时序行为上的变化。这使得他们能够识别出HBM在延迟保证方面独特的特性,这些特性在其他基于DRAM的内存中并不存在。这些观察结果在论文的第二节中进行了详细阐述。 - 评估
HBM特性对隔离性和WCL的影响: 论文分析了HBM的主要特性如何能够增加任务隔离性或减少最坏情况延迟 (WCL)。为此,作者们为特定的HBM特性开发了HBM特有的延迟公式,并使用了一系列对比DRAM和HBM的时序图进行说明。他们的分析表明,HBM确实可以代表一种对实时嵌入式系统有前景的内存协议。 - 对
HBM2与DDR4的实证比较: 作者们使用集成了MacSim(周期精确处理器模拟器) 的DRAMSim3(内存模拟器) 对最新的HBM标准 (HBM2) 和DDR4 DRAM进行了实证比较。比较评估了整体平均性能、最坏情况性能以及使用一系列代表性及合成基准测试和内核的隔离特性。 - 开发并开源时序模拟模型: 作者们基于
JEDEC(Joint Electron Device Engineering Council) 标准开发了一个HBM2和DDR4的时序模拟模型,并将其开源。这个模型的目的是双重的:它允许执行合成生成的内存访问轨迹以进一步强调HBM2和DDR4的差异;它还允许评估所有HBM特性,包括HBM2标准中最近引入的特性(如伪通道),这些特性在当前最先进的内存模拟器中尚未完全实现。
3. 预备知识与相关工作
3.1. 基础概念
为了理解本文对 HBM 在实时系统中的分析,需要掌握以下核心概念:
3.1.1. 实时系统 (Real-Time Systems)
概念定义: 实时系统是指那些不仅计算结果正确,而且必须在特定时间限制内产生结果的计算机系统。这些时间限制通常被称为截止期限 (deadlines)。如果系统未能在截止期限内完成任务,可能会导致系统失效,甚至灾难性后果。在实时系统中,最坏情况执行时间 (Worst-Case Execution Time, WCET) 和内存访问的可预测性 (predictability) 是至关重要的指标。
3.1.2. 动态随机存取存储器 (Dynamic Random Access Memory, DRAM)
概念定义: DRAM 是一种常见的计算机内存类型,用于存储操作系统、应用程序和正在使用的数据。它以电容存储电荷来表示二进制数据,由于电容会漏电,需要周期性地刷新 (refresh) 来保持数据,因此被称为“动态”。DRAM 的组织结构通常包括通道 (channels)、秩 (ranks) 和银行 (banks)。
- 通道 (Channel): 内存控制器与
DRAM模块之间的数据路径。多通道系统可以并行访问多个DRAM模块,提高带宽。 - 秩 (Rank): 内存模块上的一组
DRAM芯片,它们作为一个整体对内存控制器呈现为独立的可寻址实体。一个DIMM(Dual In-line Memory Module) 可以包含一个或多个秩。 - 银行 (Bank):
DRAM芯片内部的存储单元矩阵,是DRAM访问的基本单位。每个银行都有一个行缓冲器 (row buffer),用于缓存最近访问的行数据。
DRAM 命令与时序约束:
DRAM 的操作通过一系列命令进行,这些命令之间存在严格的时序约束,确保数据正确性和内存稳定性。一些关键命令和时序约束包括:
-
ACT(Activate,激活): 将指定银行的整行数据从存储单元加载到行缓冲器中。 -
CAS(Column Address Strobe,列地址选通): 在行缓冲器中执行读 (RD) 或写 (WR) 操作,通过列地址选择要访问的具体数据块。 -
PRE(Precharge,预充电): 将行缓冲器中的数据写回存储单元(如果被修改),然后关闭当前打开的行,为激活新行做准备。 -
tRCD(ACT to CAS Delay):ACT命令与第一个CAS命令之间的最小延迟。 -
tRL(RD to Data Start):CAS读命令发出到数据开始传输之间的延迟。 -
tWL(WR to Data Start):CAS写命令发出到数据开始传输之间的延迟。 -
tRP(PRE to ACT Delay):PRE命令与下一个ACT命令之间的最小延迟。 -
tRAS(ACT to PRE Delay):ACT命令与PRE命令之间的最小延迟。 -
tCCD(CAS to CAS Delay): 同一银行组内连续CAS命令之间的最小延迟,主要受数据总线传输时间限制。 -
tFAW(Four-bank Activation Window): 在特定时间窗口内(例如tFAW周期内),一个秩中最多只能有四个银行被激活。这是一个重要的多银行操作约束。下图(原文 Figure 2)描述了
DRAM命令及其时序约束:
图 2: DRAM 命令及其时序约束。
3.1.3. 高带宽内存 (High-Bandwidth Memory, HBM)
概念定义: HBM 是一种 3D 堆叠同步 DRAM (Synchronous DRAM, SDRAM) 技术,旨在提供比传统 DDRx DRAM 更高的带宽和更低的功耗。它通过将多个 DRAM 裸片垂直堆叠在逻辑裸片之上,并通过 TSV (Through Silicon Via,硅通孔) 进行高速互连来实现。HBM 通常作为高性能处理器(如 GPU、FPGA)的片上系统 (System-on-Chip, SoC) 的一部分,通过硅中介层 (silicon interposer) 与处理器紧密集成。
下图(原文 Figure 1)展示了 DRAM 和 HBM 设备的组织结构,突出了 HBM 的 3D 堆叠特性:
图 1: DRAM(左)和 HBM 设备(右)的组织结构。
下图(原文 Figure 3)进一步展示了 HBM 的堆叠、通道连接和内部结构:
图 3: (a) HBM 堆叠;(b) 每通道数据/总线连接;(c) 4 裸片 HBM 堆叠的内部结构,包括伪通道模式(通道 6)和传统模式(通道 7)的银行排列。
HBM 的独特特性 (Observations):
论文中通过一系列“观察 (Observation)”总结了 HBM 相较于 DRAM 的主要结构和时序特性:
Observation 1:更宽的连接 (Wider Connections)。HBM提供与处理器之间更宽的连接(1024 比特),而DRAM通常为 64 比特。Observation 2:独立堆叠 (Independent Stacks)。 一个处理器可以连接到多个独立的HBM堆叠,这些堆叠位于同一硅中介层上。Observation 3:独立通道 (Independent Channels)。HBM通道,即使在同一核心裸片内,也可以通过私有的数据和地址/控制信号以及总线独立运行。每个HBM通道通过非共享的 128 比特TSV连接到逻辑裸片。Observation 4:无秩组织 (No Ranks)。HBM虽然基于DRAM银行,但与DRAM不同,它不按秩 (ranks) 组织,而是按通道 (channels)、伪通道 (pseudo channels)、逻辑银行 (logical banks) 和半物理银行 (half physical banks) 组织。Observation 5:更大的访问粒度 (Larger Access Granularity)。 在 中,每个物理银行的访问粒度为 4、8 或 16 比特,DRAM秩为 64 比特;而在HBM中,单个银行每次访问提供 128 比特。Observation 6:缩短的列到列时序 (ReducedtCCD)。 相较于DRAM,HBM的tCCD更小(1 或 2 个周期,而DRAM通常 >= 4 个周期),因为它支持更短的突发长度 ( 而非 )。Observation 7:伪通道模式下的数据传输 (Data Transfer in Pseudo Channel Mode)。 在HBM2中,单次内存访问(即CAS命令)使用 提供 32 字节 (32B) 数据。Observation 8:伪通道的半独立性 (Semi-Independent Pseudo Channels)。 伪通道彼此半独立:它们共享行和列命令总线以及时钟输入,但可以独立解码和执行命令。Observation 9:双命令接口 (Dual Command Interface)。HBM具有独立的列地址引脚和行地址引脚。因此,读/写命令和地址可以与行ACT/PRE命令同时发出。Observation 10:隐式预充电 (Implicit Precharge)。 在伪通道操作中,HBM允许向同一银行的另一行发出后续的ACT命令,而无需关闭前一行。在这种情况下,DRAM核心本身将发出隐式PRE命令来关闭第一行,然后再激活第二行。Observation 11:tFAW约束放松 (RelaxedtFAWConstraint)。HBM的大tFAW约束不适用于针对不同伪通道的ACT命令。
3.2. 前人工作
本论文在 HBM 和 DRAM 内存可预测性研究的交叉点上展开,涉及以下两类主要前人工作:
3.2.1. HBM 相关研究
早期的工作将 HBM 描述为一种新兴的内存标准,能够提供超过 256GB/s 的带宽和更低的功耗 [22]。近期研究比较了 HBM 和 DDR 在高性能系统中的应用 [4]。[18] 探讨了通过堆叠更多 DRAM 裸片以实现 HBM 容量扩展的挑战。其他工作则关注 HBM2 相较于 DRAM 的功耗研究 [36],证实 HBM2 在每比特传输上的能耗显著低于 DDR4。在软件层面,一些技术提出了 HBM 在特定应用上的改进。例如,[37] 等人在支持 HBM 的 GPU 平台上实现了卷积神经网络 (CNN) 和广度优先搜索 (BFS) 这两种数据密集型应用。Bingchao 等人描述了 HBM 的伪通道模式和双命令特性,并得出结论认为这些特性对平均性能的提升不显著 [4]。
3.2.2. DRAM 内存可预测性研究
处理实时系统中内存竞争存在大量文献。这些方案的共同点是它们通常不提议对内存设备进行硬件更改,而是通过以下两种方式解决竞争问题:
- 软件解决方案: 通过增加内存中任务间的隔离性来解决。例如,[23] 提供了详细的综述。软件解决方案主要围绕提高隔离性的方法构建,如通过处理器间的银行分区(例如 [38])和控制访问计数(例如 [39])。
- 内存控制器硬件更改: 对内存控制器进行硬件修改。例如,[8] 比较了大量关于
DRAM控制器设计以实现可预测性或平衡可预测性与性能的工作(例如 [24]、[28]、[40])。 超越DDR DRAM,[9] 指出DDR DRAM在实现合理可预测性方面存在固有限制,并导致高度可变的访问延迟和过于悲观的界限。该研究建议使用RLDRAM(Reduced Latency DRAM) 来解决这些挑战。
3.3. 技术演进
内存技术从传统的 DRAM 演进到 HBM,主要是为了应对处理器性能不断提升与内存带宽瓶颈之间的“内存墙”问题。
- 传统
DRAM(如DDRx): 采用平面布局,通过增加时钟频率和位预取来提升带宽,但受限于外部接口宽度、信号完整性和功耗。其时序复杂,且多个任务共享内存资源时,容易产生难以预测的竞争延迟,这在实时系统中是致命的缺点。 HBM: 采用 3D 堆叠技术,将多个DRAM裸片堆叠在逻辑裸片之上,并通过密集的TSV进行垂直互连。这种设计使得HBM能够实现极宽的内存接口(如 1024 位),从而提供比DRAM高数倍的带宽。同时,3D 堆叠也缩短了信号路径,降低了功耗。HBM的通道独立性、伪通道、双命令接口和隐式预充电等新特性,为解决DRAM时代实时系统面临的内存可预测性问题提供了新的思路。
3.4. 差异化分析
现有工作虽然分析了 HBM 的平均性能优势和 DRAM 的可预测性问题,但本论文首次将这两个领域结合起来,专注于 HBM 在实时系统中的应用。与相关工作的主要区别和创新点在于:
-
聚焦
HBM的实时性: 现有HBM研究主要关注其在高性能计算中的平均性能优势,而本论文则首次系统地分析了HBM的结构和时序特性如何影响实时系统的可预测性和任务隔离性。 -
识别并利用
HBM独特特性: 论文详细阐述了HBM的多通道独立性、伪通道、双命令接口和隐式预充电等特性,并分析了它们如何被实时系统利用来降低最坏情况内存延迟并提高任务隔离。这是对HBM特性更深层次的理解和应用。 -
量化可预测性优势: 通过提出特定的延迟公式(如
WCD_DRAM和WCD_HBM)和详细的时序图,论文量化了HBM特性在减少最坏情况延迟方面的潜在收益。 -
定制化模拟与开源: 针对现有内存模拟器对
HBM关键实时特性(如伪通道)建模不足的问题,作者开发了符合JEDEC标准的HBM2和DDR4时序模拟模型,并将其开源,为未来研究提供了宝贵的工具。 -
混合基准测试验证: 不仅使用了高性能基准,还结合了
EEMBC等嵌入式和实时应用基准,以及合成测试,全面评估了HBM在平均性能和最坏情况性能方面的表现。简而言之,本论文填补了
HBM在实时系统领域缺乏系统性时序分析的空白,并为未来在关键嵌入式系统中充分利用HBM的潜力奠定了基础。
4. 方法论
4.1. 方法原理
本论文的方法原理是:通过深入分析 HBM 的独特结构和时序特性,识别出那些可以被实时系统利用来提高时间可预测性、增强任务隔离性以及降低最坏情况内存延迟 (WCL) 的属性。其核心思想是将 HBM 的特定硬件优势(如更宽的接口、独立通道、伪通道、双命令接口等)转化为实时系统所需的软件可控性和时序保障。
为了实现这一目标,作者首先详细介绍了 HBM 相较于传统 DRAM 的九个关键“观察结果”(Observation 1 到 Observation 9),涵盖了从物理连接到内部操作机制的多个层面。然后,他们针对实时系统的需求,分析了这些 HBM 特性如何能够单独或组合地带来以下改进:
-
增加隔离性 (Isolation): 利用
HBM的多堆叠、多通道和伪通道结构,将不同任务的数据/指令映射到独立的内存资源上,从而减少任务间的竞争干扰。 -
降低最坏情况内存延迟 (WCL): 通过
HBM的缩短tCCD、双命令接口和隐式预充电等特性,减少内存访问路径上的瓶颈和冲突,从而降低单次内存请求的最坏情况延迟。论文的第三节详细阐述了这些分析,并结合数学公式和时序图来量化和可视化这些改进。
4.2. 核心方法详解
论文在第三节《HBM for Real-Time Systems》(HBM 用于实时系统)中,逐一分析了 HBM 的各项特性如何影响实时系统的隔离性和最坏情况内存延迟 (WCL)。在以下分析中,我们假设在特定小节中讨论的特性是 HBM 与 DRAM 之间唯一的区别,其他时序参数保持与 DRAM 相同,以便独立分析每个特性的优势。
4.2.1. HBM 的隔离度 (HBM degrees of isolation)
HBM 能够减少内存中任务间的竞争。论文识别出多个层面的隔离机制,包括 HBM 堆叠 (Observation 2)、HBM 通道 (Observation 3) 和每个通道的两个伪通道 (Observation 8)。这些机制可以被巧妙地利用,将并行运行任务的数据/指令映射到不同的内存区域,从而减少竞争干扰:
-
堆叠隔离 (Stack isolation): 不同
HBM堆叠的请求之间不会产生任务间竞争。这是因为每个HBM堆叠独立运作。 -
HBM(逻辑) 银行隔离 (HBM(logical) bank isolation): 类似于常规DRAM系统,HBM允许银行隔离,这样不同任务的请求可以映射到不重叠的银行。 -
半 (逻辑) 银行隔离 (Half (logical) bank isolation): 根据
Observation 8,伪通道允许请求发送到不同的半逻辑银行(也称为物理银行)。伪通道提供比通道更低的隔离度,因为它们共享行和列命令总线以及时钟输入。每个伪通道拥有 64 比特的专用数据接口到TSV(Through Silicon Via)。这些隔离级别可以从软件层面进行利用 [23] 以提高可预测性。与传统
DRAM相比,HBM不存在秩 (ranks) 的概念,但引入了伪通道,这在DRAM中是没有的。
4.2.2. 平衡隔离与带宽的权衡 (Reconciling the Isolation and Bandwidth Trade-offs)
在实时系统中使用 DRAM 的一个常见方法是通过分区 (partitioning) 银行来最小化不同请求者之间的干扰 [8], [24], [25]。然而,这种方法的问题在于,为了提供所需数据,一个请求可能被序列化为多次访问。例如,在银行分区下,对于 DRAM 常见的数据总线宽度 16 比特和最大突发长度 的情况,一个 64B 缓存行需要 次访问才能从单个银行获取数据。对于 WCL (Worst-Case Latency) 分析,这个 64B 请求将遭受来自其他请求者 的干扰延迟,其中 是单次访问遭受的最坏情况干扰延迟。
下图(原文 Figure 4)展示了银行分区对数据传输的影响。上方展示了 DRAM 情况下,一个 64B 请求被分割成 4 个 16B 访问,每个访问都可能遭受干扰。下方展示了 HBM 情况下,同样的 64B 请求只需 2 个 32B 访问。
图 4: 银行分区效应。
引理 1 (Lemma 1) 概括了 DRAM 下的延迟:
在银行分区方案中,每个核心被分配 BC 个私有银行,一个目标 DRAM 的数据大小为 字节的请求,该 DRAM 具有 cw 比特的数据总线宽度和 BL 的突发长度,其因其他请求者干扰而遭受的总 WCD (Worst-Case Delay) 可计算如下所示:
符号解释:
-
:
DRAM系统中,由于干扰导致的总最坏情况延迟。 -
:请求的数据大小,单位为字节 (bytes)。
-
BL:突发长度 (Burst Length),表示一次CAS操作传输的数据块大小,通常为 4 或 8。 -
BC:分配给请求者的私有银行数量。 -
cw:数据总线宽度 (column width),单位为比特 (bits)。 -
/ 8:将比特转换为字节的因子。 -
:单次访问遭受的最坏情况干扰延迟。
论文指出:
-
现代
DRAM中的cw限于 4、8、16 或 32 比特。 -
BL可以是 4 或 8。 -
BC是分配给请求者的银行数量,上限是可用银行总数。 -
的值取决于内存控制器架构 [8]。
对于
HBM,论文基于Observation 1(更宽的连接)、Observation 5(更大的访问粒度) 和Observation 7(伪通道模式下的数据传输) 来收紧WCD。Observation 7基于一个事实,即HBM中每个伪通道的总线宽度为 64 比特(8 字节)。 导致每次访问 32B。基于此,HBM可以用于部署银行分区,在提供隔离的同时减轻减少交叉存取 (interleaving) 的影响。
引理 2 (Lemma 2) 描述了 HBM 下的延迟:
在银行分区方案中,每个核心被分配一个私有银行,一个目标 HBM 的数据大小为 字节的请求,其因其他请求者干扰而遭受的总 WCD 可计算如下:
符号解释:
-
:
HBM系统中,由于干扰导致的总最坏情况延迟。 -
:请求的数据大小,单位为字节 (bytes)。
-
/ 32:表示HBM每次访问能够传输 32 字节。 -
:单次访问遭受的最坏情况干扰延迟。
通过比较
Lemma 1和Lemma 2,可以发现HBM在单次访问中能传输更多数据(32B vs. 8*2=16B),从而减少了完成一个 64B 缓存行所需的访问次数,进而将总WCD减少一半。
4.2.3. 降低 CAS 延迟 (Reducing CAS Latency)
WCD 的主要组成部分之一是 CAS 延迟,它定义为影响目标行缓冲器中可用数据的打开请求的延迟。对于一系列 个相同类型的行打开请求(因此由 个 CAS 命令组成),总的 CAS 延迟 为:
符号解释:
-
:总的
CAS延迟。 -
:行打开请求的数量。
-
tCCD:CAS命令之间的最小延迟。 -
tCL:CAS命令与相应数据传输开始之间的时间。 -
tBUS:传输数据所需的时间,等于 。对于
CAS延迟,HBM(Observation 6) 相对于常规DRAM具有显著优势。这是因为HBM的tCCD为 1 或 2,而DRAM的 。因此,HBM至少可以将CAS延迟组件减少到其DRAM值的一半。
下图(原文 Figure 5)通过一个包含三个连续 CAS 命令的序列来说明这一点:
图 5: 缩短 tCCD 的效果。
在 DRAM 情况下 (Figure 5a),,导致序列的总服务时间为 31 个周期。相比之下,HBM 情况下 (Figure 5b),,仅用 21 个周期服务相同的序列。两种情况都假设 。
4.2.4. 降低总线冲突 (Reducing Bus Conflicts)
4.2.4.1. 隐式预充电 (Implicit Precharge)
根据 Observation 10,HBM 实现了隐式预充电,允许控制器向银行发出 ACT 命令,即使该银行已有另一行处于激活状态。HBM 设备的内部电路会负责预充电已打开的行并维持正确操作。
下图(原文 Figure 6)展示了这一特性如何通过消除 PRE (Precharge) 总线冲突来降低内存访问延迟:
图 6: HBM 内部 PRE 特性及其对延迟的影响。
该图通过一个场景说明,在 DRAM 中,当对同一银行但不同行的新请求到达时,必须先发出 PRE 命令关闭前一行。如果总线上有其他银行的命令准备就绪,PRE 命令可能会因总线冲突而被延迟。而在 HBM 中,控制器无需显式发出 PRE 命令,可以直接在满足所有时序约束(如 tRAS 和 tRP)后发出 ACT 命令,内部电路会处理隐式预充电。这可以避免 PRE 命令的总线冲突,从而缩短总的访问延迟。例如,在图 6 中,HBM 场景下请求在 85 周期完成,而 DRAM 场景下在 92 周期完成。
4.2.4.2. 双命令总线 (Dual Command Bus)
由于隐式预充电特性有助于消除发出 PRE 命令的需求,从而消除了其相关的总线冲突延迟,接下来需要讨论 ACT 和 CAS 命令中的总线冲突。双命令/地址总线(Observation 9 的特性)可以帮助消除这些冲突。
下图(原文 Figure 7)通过一个说明性例子展示了这一点:
图 7: HBM 双命令特性。
该图展示了一个场景:多个 ACT 命令发送到内存设备(即银行 0、1 和 2)。同时,银行 3 有多个针对同一打开行的请求,这些请求恰好在其他银行的 ACT 命令准备就绪时到达。如果 ACT 命令具有更高优先级,则银行 3 的每个 CAS 命令都必须因命令总线冲突而延迟一个周期。反之,如果 CAS 命令具有更高优先级,ACT 命令将延迟并遭受总线冲突。而在 HBM 中,由于 CAS 和 ACT 命令可以同时发出,这些冲突都不会发生。
4.2.5. 降低 ACT 延迟 (Reducing ACT Latency)
影响 WCD 的最大 DRAM 时序约束之一是四银行窗口约束 (tFAW)。在 tFAW 时间窗口内,一个秩中最多只能有 4 个银行被激活。
下图(原文 Figure 8)通过一个包含 8 个针对不同银行的请求的说明性例子,展示了 tFAW 约束的影响:
图 8: HBM 伪通道对 tFAW 约束的影响。(a) DRAM,(b) 带伪通道的 HBM。(c) 带伪通道但实际 ACT 命令为两周期的 HBM。
当使用单秩 DRAM 时 (Figure 8a),前四个 ACT 命令 (A0-A3) 以 tRRD 约束(在本 DRAM 例子中为 6 个周期)分隔发出。然而,第五个 ACT 命令无法发出,直到满足 的约束。这导致了 Figure 8a 中周期 53 到 62 之间的数据总线空闲间隔。因此,8 个请求的序列在周期 84 结束。
直观地,使用具有多个秩的 DRAM 并在它们之间交错 ACT 命令可以解决 tFAW 对内存延迟的影响。虽然 tFAW 约束不适用于跨秩的 ACT 命令,但在商用 DRAM 中,秩交错是另一个延迟的来源,这可能导致总延迟大于 tFAW 引入的延迟。这是因为 DRAM 标准规定不同秩之间的数据传输必须至少间隔 tRTR 周期。在单秩情况下,tFAW 约束额外增加了 的延迟,对于示例中的 DDR 设备,这等于 个周期。另一方面,在双秩情况下,tRTR 约束可能在 CAS 命令之间增加 个周期的延迟,相较于单秩情况。总体而言,这是 ACT 延迟 (tFAW) 和 CAS 延迟 (tRTR) 之间的权衡。
与商用 DRAM 不同,HBM 没有秩 (ranks) 的概念 (Observation 4)。取而代之的是,它引入了伪通道 (pseudo channel) 的概念,每个通道可以分为两个伪通道 (如 Section II 中解释)。针对两个不同伪通道的 ACT 命令无需遵循 tFAW 约束,而针对同一伪通道的 ACT 命令则需要;这构成了论文的下一个观察结果。
Observation 11:HBM 的大 tFAW 约束不适用于针对不同伪通道的 ACT 命令。
与 DRAM 中对不同秩的访问不同,HBM 没有强制两个伪通道之间数据传输间隔的时序约束(Observation 3)。换句话说,没有像 tRTR 这样的约束。因此,通过巧妙地在两个伪通道之间交错 ACT 命令,可以在数据总线上连续传输数据而不会受到大 tFAW 约束的影响。在 Figure 8b 中,论文将这一观察结果应用于 8 个请求的序列。如图所示,HBM 使得序列能够在周期 76 结束,这是 tFAW 效应在 WCL 上如何被缓解的一个例子。
4.2.6. HBM 缺点:双周期 ACT 命令 (HBM Drawback: Two-cycle ACT commands)
HBM 的一个缺点是,其 ACT 命令在命令总线上需要消耗两个周期,而 DRAM 的 ACT 命令只需一个周期。这会影响访问延迟和总 WCD。此外,所有与 ACT 相关的时序约束都必须从命令的第二个周期开始计算,而不是第一个周期 [12]。
为了说明这一特性的影响,Figure 8c 展示了 HBM 实际的双周期 ACT 命令(与 Figure 8b 中的单周期 ACT 相比)。如图所示,现在相同的 8 个请求序列在周期 84 结束,与 DRAM 相似,尽管它没有受到 tFAW 约束的影响。这个结果的直觉是,双周期 ACT 命令使得每个 ACT 命令额外增加了一个周期,这在 Figure 8b 中单周期 ACT HBM 的基础上增加了 8 个周期,导致序列在周期 84 结束。
5. 实验设置
5.1. 数据集
实验使用了多种基准测试 (benchmarks) 来评估 HBM2 和 DDR4 在不同内存需求下的性能,旨在模拟具有不同内存需求的实时应用。
-
EEMBC Autobench (EEMBC) 基准:
- 来源与特点: 来源于
EEMBC(Embedded Microprocessor Benchmark Consortium) 组织,旨在模拟嵌入式系统中的控制应用。这类应用通常对内存密集度较低 [28]。 - 选择原因: 用于模仿生产汽车、工业和通用系统中的控制功能,这些功能通常具有实时性和可预测性要求,但内存访问模式相对不那么激进。
- 来源与特点: 来源于
-
矩阵乘法 (Matrix Multiplication, MXM) 内核:
- 来源与特点: 这是一个自定义的
MXM内核,通过配置不同的总内存占用(2MB、4MB、8MB)来模拟负载应用。MXM是许多功能(如YOLOv3等目标检测库 [30])中最常见的内核之一,并且占据了YOLO超过 65% 的执行时间 [31]。 - 选择原因: 用于模拟需要处理大量数据的负载应用,这些应用对内存带宽有较高的需求,且可能表现出不同的内存访问模式和局部性。
- 来源与特点: 这是一个自定义的
-
IsolBench套件中的微基准测试:- 来源与特点: 使用了
IsolBench套件 [32] 中的带宽 (BW_read和BW_write) 和延迟 (Latency) 微基准测试。这些微基准测试旨在专门测试内存系统的带宽和延迟特性。 - 选择原因: 用于评估内存系统的极限性能,包括最大带宽和最小延迟,以及在极端内存访问模式下的表现。
- 来源与特点: 使用了
5.2. 评估指标
论文使用了多种指标来评估 HBM2 和 DDR4 的性能,主要关注最坏情况性能、可预测性和平均性能。
5.2.1. 最坏情况内存延迟 (Worst-Case Memory Latency, WCL)
概念定义: WCL 是指单个内存请求在最不利的条件下可能经历的最大延迟。在实时系统中,WCL 是计算任务总最坏情况执行时间 (WCET) 的关键组成部分,因为 ,其中 WCCT 是任务在处理器上的最坏计算时间。WCL 可以进一步分解为单个请求的最坏情况延迟 () 和任务发出的最坏情况内存请求总数 (NumReqs),即 。本研究主要关注读请求,因为写请求(通常是缓存脏行的回写)不阻塞处理器流水线,因此不在任务 WCET 的关键路径上 [27]。
数学公式:
符号解释:
WCET:最坏情况执行时间 (Worst-Case Execution Time)。WCCT:最坏情况计算时间 (Worst-Case Computation Time)。WCL:最坏情况内存延迟 (Worst-Case Memory Latency)。- :单个内存请求的最坏情况延迟。
NumReqs:任务发出的最坏情况内存请求总数。
5.2.2. 总读请求数量 (Total Number of Read Requests)
概念定义: 指在执行特定基准测试期间,发出的内存读请求的总次数。该指标反映了应用程序对内存的访问频率和缓存效率。如果 off-chip 内存事务粒度更大(例如 HBM),并且应用程序具有良好的局部性,则可以减少发出的总请求数量。
5.2.3. 平均每请求延迟 (Average Per-Request Latency)
概念定义: 单个内存请求的平均延迟,反映了内存系统在典型负载下的响应速度。
5.2.4. 整体带宽 (Overall Bandwidth)
概念定义: 内存系统在单位时间内传输数据的总量,通常以 GB/s (Gigabytes per second) 为单位。高带宽对于数据密集型应用至关重要。
5.2.5. 执行周期 (Execution Cycles)
概念定义: 应用程序完成执行所需的总处理器时钟周期数。这是一个衡量应用程序整体性能的直接指标。
5.2.6. 总片外内存时间 (Total Off-Chip Memory Time)
概念定义: 应用程序在等待 off-chip 内存访问完成上花费的总时间。该指标可以更直接地反映内存系统对应用程序性能的影响程度。
5.3. 对比基线
论文将 HBM2 的性能与 DDR4 进行了比较,其中 DDR4 被用作参考的可预测 DDR 技术。这是因为据作者所知,目前尚无针对 的最坏情况分析。
5.4. 实验设置
5.4.1. 仿真环境 (Simulation Environment)
- CPU 模拟器:
MacSim[11],一个详细的周期精确处理器模拟器。 - 内存模拟器:
DRAMSim3[10],集成到MacSim中作为其off-chip内存模型。
5.4.2. 内存配置 (Memory Configuration)
-
DDR4配置: 建模为一个单通道DDR4-2133内存,包含一个秩 (rank) 和八个银行 (banks)。 -
HBM2配置: 建模为一个HBM2堆叠,包含四个裸片 (dies),每个裸片具有两个通道 (channels),每个通道包含 16 个银行。 -
频率:
HBM2和DDR4设备均以相同的频率 (2133MHz) 运行。 -
时序约束: 详细的时序约束参数列在原文的
Table I中。 -
结构和系统配置: 结构和系统配置参数列在原文的
Table II中。以下是原文
Table I中JEDEC DRAM时序描述:Parameter Description HBM DDR4 Parameter Description HBM DDR4 tRCD ACT to CAS delay 14 15 tRT P (S/L) Read to PRE Delay 4/6 8/8 tRL RD to Data Start 14 15 tCCD(S/L) CAS to CAS delay 1/2 4/6 tW L WR to Data Start 4 11 tRRD ACT to ACT (diff bank) 6 6 tRP PRE to ACT Delay 14 15 tRTW RD to WR Delay tRAS ACT to PRE Delay 34 36 tWTR (S/L) WR to RD Delay 6/8 3/8 tW R Data end of WR to PRE [16 16 tFAW 4 bank activation window30 32
以下是原文 Table II 中缓存和内存配置参数:
| Cache Parameters {DDR4,HBM2} | Memory Structural Parameters | ||||
| PARAMETER | L1 | LLC | PARAMETER | DDR4 | HBM2 |
| Cache Size | 16KB | 256KB | bankgroups | 2 | 4 |
| sets | {32, 4} | {256, 32} | banks_per_group | 4 | 4 |
| Associativity | 8 | 16 | rows | 65536 | 32768 |
| bank | 1 | 1 | columns | 1024 | 64 |
| Line size | {64, 512} | {64, 512} | device_width | 16 | 128 |
| BL | 8 | 4 | |||
5.4.3. 缓存配置 (Cache Configuration)
L1缓存: 16KB。LLC(Last-Level Cache,末级缓存): 256KB。- 缓存行大小 (
Line size): 除非另有说明,DDR4使用 64B,HBM使用 512B。这样配置是为了使缓存行大小与off-chip内存事务大小匹配,以确保所有缓存行字节能通过一次请求传输,从而最大化性能。论文也验证了DDR4使用 512B 缓存行大小(带 64B 扇区)不影响结果。
6. 实验结果与分析
6.1. 核心结果分析
本节主要评估 HBM2 和 DDR4 在最坏情况内存延迟 (WCL)、内存隔离机会和平均性能方面的表现。
6.1.1. 最坏情况内存延迟 (Worst Case Memory Latency)
论文聚焦于读请求,因为写请求(通常是缓存脏行的回写)不阻塞处理器流水线,因此不在任务 WCET 的关键路径上。
6.1.1.1. 总读请求数量 (Total Number of Read Requests)
下图(原文 Figure 9)展示了 DDR4 与 HBM2 在 EEMBC 基准测试(左图)以及合成和 MXM 基准测试(右图)中读请求数量的对比。请注意,两图的 Y 轴刻度不同。
图 9: DDR4 与 HBM2 在 EEMBC 基准测试(左图)、合成和 MXM 基准测试(右图)中的读请求数量。请注意刻度不同。
从 Figure 9 可以看出,HBM 相较于 DDR4,发出的读请求数量总体显著减少。EEMBC 基准测试平均减少了 ,BW 基准测试最多减少了 。这主要归因于 HBM 拥有 1024 比特宽的接口,单次事务能传输 512B 数据,而 DDR4 仅能传输 64B。当应用程序表现出高局部性时,获取更大的数据到缓存中可以享受更多的缓存命中,从而减少对 off-chip 内存的访问次数。
一些基准测试,如 Latency 和 MXM,读请求数量减少相对较小。这是因为它们的访问模式导致了大量的缓存冲突,未能充分受益于大请求尺寸带来的缓存层次结构优势。
6.1.1.2. 最坏情况每请求读延迟 (Worst-Case Per-Request Read Latency)
下图(原文 Figure 10)展示了 DDR4 与 HBM2 在 EEMBC 基准测试(左图)以及合成和 MXM 基准测试(右图)中观察到的最坏情况延迟。
图 10: DDR4 与 HBM2 在 EEMBC 基准测试(左图)、合成和 MXM 基准测试(右图)中的最坏读请求延迟。
Figure 10 显示 HBM 始终比 DDR4 带来更低的 WCL。HBM 的 WCL 范围在 周期,而 DDR4 的 WCL 范围在 周期。无论是控制型基准测试 (EEMBC) 还是负载型基准测试 (MXM 和 BW、Latency),这种行为都一致。这表明,尽管应用程序访问内存的激进程度不同,HBM2 仍能提供更低的每请求 WCL。论文还评估了 DDR4 使用 512B 缓存行(带 64B 扇区按需请求)的情况,结果确认 DRAM 请求数量和每请求延迟基本不受影响。
6.1.2. 内存隔离机会 (Memory Isolation Opportunities)
在上述实验中,HBM 请求在所有通道中交错以利用 1024 比特宽接口,从而每次请求传输 512B。这是高性能系统中增加 off-chip 内存带宽的常见方法。然而,实时系统中的常见方法是通过分区 off-chip 内存来最小化内存干扰,从而实现隔离 [8]。如 Section III-A 所述,HBM 提供了不同程度的隔离。虽然 HBM 可以调和隔离与带宽之间的权衡(如 Section III-B 所述),但这种权衡仍未从根本上解决。
下图(原文 Figure 11)展示了 HBM2 中通道分区与交织在 EEMBC 基准测试(左图)以及合成和 MXM 基准测试(右图)中的影响。请注意,两图的 Y 轴刻度不同。
图 11: HBM2 中通道分区与交织在 EEMBC 基准测试(左图)、合成与 MXM 基准测试(右图)中的影响。请注意刻度不同。
从 Figure 11 可以看出,实现隔离需要付出带宽下降的代价:EEMBC 基准测试的带宽下降了 (平均 ),带宽密集型合成基准测试下降了 (平均 )。带宽-延迟权衡是依赖于具体用例的,因此取决于运行的应用程序集。例如,如果竞争请求者的数量少于可用通道的数量,通过分配多个(但互斥的)通道可以提高带宽。确定此权衡的精确理想折衷点并非本文的重点。
6.1.3. 平均性能 (Average-Case Performance)
HBM 在实时系统中的潜在应用目标是那些既需要保障又需要相当平均性能的领域。论文比较了 HBM2 和 DDR4 的平均性能。
下图(原文 Figure 12)展示了使用 DDR4 和 HBM 的所有基准测试的执行周期。
图 12: DDR4 与 HBM2 在 EEMBC 基准测试(左图)、合成和 MXM 基准测试(右图)中的执行周期。请注意刻度不同。
尽管 Figure 12(左图)中展示的 EEMBC 基准测试并非内存密集型,HBM2 仍显示出优于 DDR4 的性能,平均提升了 。另一方面,对于内存压力较大的合成基准测试 (Figure 12 (右图)),HBM2 和 DDR4 之间的性能差距更为明显,BW_write 基准测试的性能提升高达 。Latency 基准测试显示 HBM2 和 DDR4 性能相当,HBM2 的执行时间仅好 。对于 MXM,性能提升为 。
正如预期,对于内存利用率有限或局部性较低的基准测试,内存性能不是应用程序性能的关键因素。例如,Latency 基准测试具有随机指针追逐 (pointer-chasing-like) 模式,由于局部性非常低,因此未能从 HBM 的高带宽中受益。
为了评估内存行为,下图(原文 Figure 13)展示了不同基准测试访问 off-chip 内存所花费的总内存时间。
图 13: DDR4 与 HBM2 在 EEMBC 基准测试(左图)、合成和 MXM 基准测试(右图)中的总片外内存时间。请注意刻度不同。
从 Figure 13 可以看出,HBM2 和 DDR4 之间的差距相比 Figure 12 显著增大。例如,HBM 在 EEMBC 基准测试中显示出平均 的内存时间少于 DDR4。在 EEMBC 和 MXM 基准测试中,这一差距高达 ,在 BW_write 合成基准测试中,甚至高达 。这证实了 HBM2 持续改进 DDR4 的内存性能,而这种益处的大小取决于程序性能对内存性能的依赖程度。
6.2. 消融实验/参数分析
论文指出,现有的内存模拟器(包括 DRAMSim3 [10]、RAMulator [33] 和 GEM5 [34])主要用于评估高性能系统的技术,并自然地建模影响平均性能的元素,而忽略了一些可能影响最坏情况延迟的特性细节。例如,论文发现伪通道模式要么根本不支持,要么只是部分(抽象地)实现。抽象化 HBM 特性可以支持平均情况行为的研究;然而,对实时系统的分析要求对 HBM 的时序行为进行完整且准确的建模。此外,尽管近期有一个针对实时系统的 DRAM 模拟器 [35],但其当前版本不支持 HBM。
为此,作者们开发了一个基于 JEDEC 标准的 HBM2 和 DDR4 的 仿真模型,并将其开源 [14]。该模型实现了两种协议的各种时序约束的状态机,考虑了论文中涵盖的所有特性,包括 HBM2 的最新伪通道特性。一个重要的说明是,Section IV-B 和 IV-C 中展示的所有结果不受 DRAMSim3 中 HBM2 伪通道建模缺失的影响,因为所有实验都假设 HBM2 在传统模式下使用,其中请求在所有通道中交错,并访问每个通道的 16 个逻辑银行。
除了开发的仿真模型,作者们还开发了专门的测试来强调每个涵盖的特性,并将这些测试输入到模拟器中以评估两种协议的行为。他们为四种不同的特性开发了四种不同的合成测试,如 Figure 14 所示:Dual_CMD、partition、Reduced_tCCD 和 tFAW。每个测试执行 1,024,000 次读访问。
- 1)
Dual_CMD(双命令):- 测试目的: 测量双命令特性(Section II-D)的影响。
- 测试方法: 向一个银行发送一系列开行请求(主要由
CAS命令组成)。同时,构造一个干扰性ACT命令流到其他银行,使得在每个CAS命令的同一周期内,总有一个准备好的干扰命令。
- 2)
Partition(分区):- 测试目的: 研究
HBM宽数据总线宽度对延迟的影响(Section III-B)。 - 测试方法: 模拟运行轨迹的核心被分配一个单独的银行,每个请求的数据大小为 64B。
- 测试目的: 研究
- 3)
Reduced_tCCD(缩短tCCD):- 测试目的: 专注于
HBM的缩短tCCD特性(Section III-C)。 - 测试方法: 一系列针对同一行的打开请求,主要由
CAS命令组成。与Dual_CMD不同,没有干扰流以避免总线冲突。
- 测试目的: 专注于
- 4)
tFAW:-
测试目的: 强调
tFAW约束(Section III-E),评估伪通道特性。 -
测试方法: 向不同银行发出关行请求(包含
ACT命令)。下图(原文 Figure 14)展示了不同
HBM特性(单独和组合)对平均请求延迟(左图)和整体带宽(右图)的影响:
图 14: 不同 HBM 特性(单独和组合)对平均请求延迟(左图)和整体带宽(右图)的影响。
-
对于每个测试,作者使用了两种不同的 HBM 模型:
-
HBM_one_feature: 仅模拟了相应测试中考虑的特定特性,而所有其他属性与DRAM完全相同。这旨在孤立研究特定特性的影响。 -
HBM_all_features(或简称为HBM): 捕获了常规HBM的所有特性,无论测试如何。从 Figure 14 可以得出以下结论:
-
1)
Dual_CMD(双命令) 和Reduced_tCCD(缩短tCCD): 这些特性显著有助于带宽的提升,这与 Section III-D 和 III-C 的分析一致。由于Dual_CMD特性,HBM可以并行发出ACT和CAS命令,有效消除总线冲突,从而减少停滞周期并提高持续带宽。此特性还略微改善了HBM的执行时间。Reduced_tCCD也允许HBM在更短的时间内发出连续的CAS命令,从而提高吞吐量,并有助于实现更短的执行时间。 -
2)
Partition(银行分区): 银行分区特性(Section III-B 中分析)使HBM能够每次访问提供 32B 数据,因此只需两个CAS命令即可填充一个 64B 缓存行,而DRAM则需要四个CAS命令,从而大大减少了执行时间。此特性也显著提高了带宽。 -
3)
tFAW:tFAW特性指的是在特定时间窗内最多激活四个银行的时序要求(Section III-E)。由于HBM改进了这一要求,因此其相对于DRAM实现了更高的带宽和更短的执行时间。结合 Section III 的分析,这些结果提供了对所有
HBM特性(包括HBM2中最近引入的特性)优势的深入见解。
7. 总结与思考
7.1. 结论总结
本论文对 HBM (High-Bandwidth Memory) 在实时系统中的应用进行了开创性的时序分析。作者们深入剖析了 HBM 独特的结构和功能特性,并揭示了这些特性如何能够显著提升内存访问的可预测性、增强任务隔离性以及降低最坏情况内存延迟 (WCL)。
具体来说,论文的主要结论包括:
-
结构优势对隔离性与延迟的积极影响:
HBM的多通道独立性、伪通道模式、更宽的数据总线、双命令接口和隐式预充电等特性,为实时系统提供了前所未有的隔离能力和降低WCL的潜力。通过银行分区和伪通道机制,HBM能有效减少任务间的竞争干扰,提高内存访问的确定性。 -
量化可预测性改进: 论文通过理论分析和数学公式(如
WCD_DRAM和WCD_HBM的推导),量化了HBM在减少最坏情况内存延迟方面的优势,表明其在处理相同数据量时所需的内存访问次数显著少于DRAM。 -
实证性能验证: 通过与
DDR4的对比实验,论文展示了HBM2在平均性能和最坏情况性能方面的显著优势。在EEMBC和合成基准测试中,HBM2普遍表现出更低的读请求数量、更低的最坏情况每请求延迟,以及更短的执行周期和总off-chip内存时间。 -
定制化模拟模型与开源贡献: 针对现有模拟器对
HBM关键特性建模不足的问题,作者开发了一个符合JEDEC标准的HBM2和DDR4时序模拟模型,并将其开源,为未来更精确的实时性研究提供了重要工具。 -
特性对性能的综合影响: 消融实验表明,
Dual_CMD、Reduced_tCCD、银行分区和tFAW等HBM特性都能独立地促进带宽提升和执行时间缩短,并在综合作用下带来显著的整体性能优势。总而言之,这项工作为理解
HBM相对于DRAM在实时系统最坏情况性能和隔离性方面的优势提供了坚实的基础,并为未来在实时系统中充分利用HBM的技术奠定了坚实的基础。
7.2. 局限性与未来工作
论文作者在结论部分指出了本工作的方向和意义,但并未明确列出自身的局限性或具体的未来工作。然而,从论文内容和实时系统研究的普遍挑战来看,可以推断出一些潜在的局限性和未来的研究方向:
潜在局限性:
- 内存控制器 (Memory Controller) 的影响: 论文主要关注
HBM设备本身的特性,但内存控制器在管理访问、调度请求和实现隔离方面扮演着关键角色。虽然论文指出其分析是通用的且不限于特定调度技术,但一个不可预测的内存控制器仍可能抵消HBM设备的优点。 - 复杂系统集成: 论文的实验主要基于模拟环境。在真实的复杂
SoC(System-on-Chip) 或多核处理器系统中,HBM的性能和可预测性可能受到更广泛的系统级竞争(如互连网络、共享缓存等)的影响。 - 功耗分析的缺失: 尽管
HBM以低功耗为特性,且论文承认功耗在嵌入式系统中的重要性,但本工作主要侧重于时序可预测性,未对功耗进行深入分析。 - 软件-硬件协同设计: 论文提到可以从软件层面利用
HBM的隔离特性,但并未详细探讨具体的软件策略、编程模型或工具如何与HBM的硬件特性协同工作,以实现最佳的实时性能。 HBM版本的演进: 论文主要基于HBM2标准进行分析,但HBM技术仍在不断发展(例如HBM3),新的版本可能会引入新的特性,也可能带来新的挑战。
未来研究方向:
- 可预测的
HBM内存控制器设计: 鉴于HBM设备本身具有良好的可预测潜力,未来的工作可以专注于设计高度可预测的HBM内存控制器,以充分利用这些特性,并解决系统级竞争问题。 - 系统级
HBM实时分析: 将HBM设备分析扩展到整个系统层面,包括CPU、GPU、网络接口、NoC(Network-on-Chip) 等组件,研究它们与HBM交互时对实时性能的影响。 - 功耗与实时性的权衡: 探索如何在满足实时性要求的同时,优化
HBM系统的功耗,特别是在能耗敏感的嵌入式和移动设备中。 - 软件调度与内存分配策略: 开发针对
HBM独特结构(如伪通道)优化的实时操作系统调度器和内存分配器,以最大化任务隔离和WCL降低。 - 对新型
HBM标准的分析: 随着HBM技术的发展,对后续HBM版本(如HBM3)的实时性特性进行及时分析和评估。
7.3. 个人启发与批判
这篇论文为理解 HBM 在实时系统领域的潜力提供了非常重要的基础。它打破了 HBM 仅适用于高性能计算的固有印象,并通过严谨的分析和实验,展示了其在满足关键嵌入式系统时序要求方面的独特优势。
个人启发:
- 硬件特性与实时性的桥梁: 论文的分析方法非常具有启发性,它没有停留在简单比较
HBM和DRAM的平均性能,而是深入挖掘HBM的底层硬件特性(如伪通道、双命令接口)如何直接转化为实时系统所需的隔离性和可预测性。这种将硬件微观特性映射到系统宏观行为的思路,对于其他新型硬件技术在实时领域的应用分析也具有借鉴意义。 - 开源工具的重要性: 作者开源了
HBM2和DDR4的JEDEC标准时序模拟模型,这对于社区而言是一个巨大的贡献。在缺乏成熟、精确模拟工具的领域,自建并开源工具能够极大地推动后续研究,降低研究门槛。 - 内存墙的缓解: 在
AI和大数据时代,内存带宽已成为主要的系统瓶颈。HBM的引入,加上其在实时性方面的潜力,为未来高性能实时系统设计提供了新的希望,有望在保证时间约束的同时,处理更复杂的AI工作负载。 - 跨领域融合: 论文将计算机体系结构 (内存技术) 和实时系统这两个领域紧密结合,展示了多学科交叉研究的巨大价值。
潜在问题、未经验证的假设或可改进的地方(批判):
-
内存控制器模型: 尽管论文通过定制化模拟模型弥补了
DRAMSim3的不足,但实验中的内存控制器模型可能仍是简化的。在实际实时系统中,内存控制器(尤其是在多核、多GPU异构场景下)的复杂调度策略和仲裁机制可能会引入额外的不可预测性。未来的研究可以更详细地建模和分析内存控制器的行为。 -
负载特性: 论文使用的
EEMBC基准测试相对轻量级,MXM和合成基准测试虽然内存密集,但其访问模式可能相对规整。真实的AI实时应用,尤其是结合了复杂感知和决策逻辑的场景,可能会产生更加动态、不规则且难以预测的内存访问模式,这可能对HBM的隔离和可预测性提出新的挑战。 -
过分乐观的假设: 在分析每个特性时,论文假设该特性是
HBM和DRAM之间的唯一区别。虽然这有助于独立分析,但在实际系统中,所有特性是同时存在的,它们的相互作用可能比简单的叠加更复杂,甚至可能存在某些负面影响(例如双周期ACT命令)。最终的HBM_all_features模型虽然解决了这一点,但在理论分析阶段如果能更早地讨论这些交互,可能会更全面。 -
安全关键认证: 对于汽车、航空航天等安全关键领域,任何新技术的引入都需要极其严格的认证过程。论文虽然提供了初步的
WCL分析,但要真正被这些领域接受,还需要更深入的故障模式分析、容错机制和形式化验证。 -
HBM成本和热管理:HBM的制造成本和 3D 堆叠带来的热管理挑战在论文中未被讨论。这些实际因素对于其在更广泛的嵌入式系统中的应用具有重要影响。总的来说,这篇论文是一项严谨而重要的初步研究,为
HBM在实时系统中的应用铺平了道路。它不仅提供了深入的理论分析,还通过定制化的仿真验证了其潜力。未来的研究应在此基础上,进一步探索在真实复杂系统和更激进的负载下HBM的行为,并开发出能够充分利用其优势的软硬件协同设计方案。
相似论文推荐
基于向量语义检索推荐的相关论文。