【DDR 内存学习专栏 1.3.1 -- DDR 的 Bank 及 burst 访问】

DDR Rank

电脑内存条,也被称为DIMM条,是由多个电路板和芯片组成,这些组件被设计成可以通过内存通道与内存控制器进行连接。在一组可以被一个内存通道同时访问的芯片中,我们称之为一个 rank。如下图所示,北桥芯片(总线互联) 上接了两个 DDRC(Channel),每个 DDRC 控制两个内存插槽 DIMM,每个内存插槽上 可插入一个带两个 Rank 的 DDR(DDR 正面和背面都有DDR 颗粒)。

在这里插入图片描述

在 Rank 中,每个芯片(内存颗粒) 都共享内存通道的地址线、控制线和数据线,同时每个芯片(内存颗粒)还提供一组输出线,这些输出线汇聚成内存条的总输出线。

以一个包含8个 DDR 颗粒 的 DIMM 条为例,这8 个 DDR颗粒 被一个内存通道同时访问,因此它们共同构成一个rank。

值得注意的是,有些DIMM条的设计是双面的,即每面都布有内存芯片,这样的DIMM条就拥有两个rank。

在这里插入图片描述

假设每个DDR 颗粒 都包含 8个bank,每个 bank 又包含 8个阵列,那么这条内存条就可以在一次操作中读写多达 64 bits 的数据。这是因为在这种设计中,每个DDR颗粒可以输出 8bit 数据,而这个Rank总共有8颗这样的芯片,所以它们被同时访问的bank以及bank内的行地址和列地址都是完全一致的。这种高效的设计使得内存条能够在一次操作中处理大量数据。

Rank 读写

随着电脑内存容量的提升,我们有时会插入多条内存条。然而,这并不总是意味着电脑速度的提升。电脑的速度受到 “内存通道” 数量的限制。例如,如果电脑仅有四个插槽却只有一个内存通道,那么CPU仍只能逐个访问rank。但倘若电脑拥有四个插槽和四个内存通道,CPU便能同时访问四个rank,显著提高效率。假设每个rank能输出64比特,那么四通道一次便能处理 4×64=256比特的数据,远超单通道的64比特。

访问加速

Burst 模式

现代处理器与DDR之间通常配备cache。当CPU访问内存中的单个字时,它不仅需要该字,还需要将包含该字的整个缓存行搬入cache。因此,内存必须一次性提供整个缓存行的数据。缓存行通常较大,例如包含8个64比特,这意味着内存需提供8×64=512比特的数据。然而,常规访问方式每次仅能提取64比特,即一个字,这显然不足以满足缓存行的需求。为此,我们引入了“burst模式”来优化内存访问。

由于缓存行内的字在内存中是连续紧邻的,我们可以充分利用cell阵列中的行缓存。在burst模式下,当读取cell阵列中的某个比特时,不仅该比特会被送到输出缓存,而且其所在缓存行的其他比特也会被连续读出并送至输出缓存。这样,我们便能高效地完成一次burst操作,即连续读出目标比特周围的多个比特。

推荐阅读
https://baijiahao.baidu.com/s?id=1821754560739771827&wfr=spider&for=pc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

主公讲 ARM

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值