DDR的Controller、Channel、Chip、Rank、Bank、Row、Column、Sided

简介: DDR的Controller、Channel、Chip、Rank、Bank、Row、Column、Sided

1.概览    

        先从半导体生产开始,生产出来还没切割的叫晶圆(wafer)。切割出来还没封装的叫裸die(bare die)。封装好的叫颗粒(component)。做成内存条后叫模组(module)。下文我们也会按这样的称呼去区分。


微信图片_20230117220137.png微信图片_20230117220142.png


2.Controller(内存控制器)

       一开始内存控制器在主板上有独立的芯片;在英特尔微处理器的传统电脑上,其功能被集成在主板北桥上;但i7、i5等中央处理器上集成了内存控制器,以减少内存延迟。上面我们都是说cpu,当然也可以是fpga或者asic芯片。内存控制器可以通过phy与ddr相连,当然这些都有标准,可以看下面。关键是一个内存控制器也可以支持多个通道(所谓通道,其实是是正对cpu数据位宽而言的,你的cpu是64位数据线,那我这个ddr颗粒或者内存条也是64位,那就是单通道,如果,cpu是64位数据线,但是ddr颗粒或者内存条可以支持128位,那就是双通道。这里要注意俩个点:1.单个颗粒往往做不到64位那么大,所以需要内存条上多个颗粒,2.cpu总线就现在而言也没有128位那么多。)。


控制器和 PHY 通过称为 DFI 接口的标准接口相互通信。您可以从这里下载 DFI 规范。

然后 PHY 执行所有较低级别的信令并驱动到 DRAM 的物理接口。

JEDEC 标准JESD79-49B 规范中规定了 PHY 和存储器之间的这种接口



3.Channel  (通道)

      通道的概念主要是针对单次传输数据量而言的,其实上面也提到,现在的cpu一般也就64位,那么双通道的内存条(128位)有什么价值,其实主要是通道间的interleave(乒乓效果、减少等待,一次还是传输64位,但是在传输第一个64位后,第二个64位已经可以准备好)。


4.Chip (ddr芯片、ddr颗粒)



5.Rank(Dual Rank vs Single Rank)

       Rank也叫物理bank。Rank表达的是级联的概念,特别需要强调,rank这个概念在网上好多是错误和不准确的,由于半导体技术发展,可以在一个芯片里面就实现多个rank,所以区分rank不要以内存芯片的数量来区分rank。换句话说,如果一个内存条在PCB的两面都有芯片(双面贴片)他就一定是双rank吗,它仍然可以是单级、双级或四级的,这取决于这些芯片是如何设计的,下面是一个内存手册截图,他可以再一个内存芯片(chip)里面实现双rank,什么rank层级大于chip(Rank > Chip ),其实这种排序是不准确的,理解片面了。


      当然站在内存条角度,也可以把凑成64位数据线所需要的内存颗粒叫做一个rank,如果一个内存条可以支持128位数据线带宽,那就叫


image.png


根据各种测试,我们发现单列内存和双列内存没有明显的区别。关键是与双列内存相比,单列内存配置上的 CPU 使用率总是更高 (10-25%)。如果使用较少的 CPU,那是因为 CPU 在等待 RAM 上浪费了一些时间。由于双列存储器需要两个地址周期来读取整个模块,因此它本质上较慢。


6.Bank

Bank


7.Sided(Dual Sided vs Single Sided)

双面”和“单面”有什么区别,纯粹的物理结构就是颗粒贴到几个面


微信图片_20230117220309.png


8.Dimm(双列直插内存模块)

      DIMM是Dual In-Line Memory Module的缩写。意思是内存条印刷电路板正反面均有金手指与主板上的内存条槽接触,这种结构被称为DIMM。于是内存条也有人叫DIMM条,主板上的内存槽也有人称为DIMM槽。

目录
相关文章
|
7月前
|
SQL Oracle 关系型数据库
实时计算 Flink版操作报错之遇到 "The column 'AdminCode' is referenced as PRIMARY KEY, but a matching column is not defined in table 'tx.dbo.MS_tkBa'!" 是什么情况
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
7月前
|
索引 Python
row[i] = col[j] = TrueIndexError: list assignment index out of range
row[i] = col[j] = TrueIndexError: list assignment index out of range
|
存储 机器学习/深度学习 计算机视觉
行主映射 (row-major mapping)
行主映射 (row-major mapping) 是一种数据结构,用于将多维数组中的元素映射到内存中的连续存储位置。在行主映射中,数组的每一行都按顺序存储在内存中的连续块中,每个块包含数组的一行元素。 行主映射通常用于多维数组和矩阵运算中,因为它们可以高效地访问和操作数组元素。行主映射在科学计算、图像处理、机器学习等领域中得到广泛应用。
104 8
NR PDSCH(六) DL data operation
NR中,网络端会根据UE业务动态的调整BWP,进而改变频域资源范围;不同的BWP会配置CORESET/Searchspace确定不同的时频域资源,让UE在对应的资源上进行盲检接收DCI;通过DCI获得调度信息后,再去PDSCH对应的时域资源和频域资源上 decode data。
|
编解码 算法 测试技术
[译]Page Multiplexing and Ordering in a Physical Ogg Stream
Ogg容器格式的设计和排列受几个高级设计决策支配,这些决策构成了特定的低级设计决策的依据。
86 0
Media change: please insert the disc labeled
Media change: please insert the disc labeled
113 0
SAP RETAIL WA03 基于分配表创建PO报错 - No work list could be selected –
SAP RETAIL WA03 基于分配表创建PO报错 - No work list could be selected –
SAP RETAIL WA03 基于分配表创建PO报错 - No work list could be selected –
下一篇
DataWorks