CN117909273A - 一种计算设备 - Google Patents
一种计算设备 Download PDFInfo
- Publication number
- CN117909273A CN117909273A CN202311841697.0A CN202311841697A CN117909273A CN 117909273 A CN117909273 A CN 117909273A CN 202311841697 A CN202311841697 A CN 202311841697A CN 117909273 A CN117909273 A CN 117909273A
- Authority
- CN
- China
- Prior art keywords
- memory
- interface
- memory module
- cpu
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000015654 memory Effects 0.000 claims abstract description 581
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 claims description 22
- 230000009977 dual effect Effects 0.000 claims description 5
- 230000005540 biological transmission Effects 0.000 abstract description 40
- 230000003993 interaction Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 8
- 230000006854 communication Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 238000000034 method Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 6
- 239000002184 metal Substances 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7803—System on board, i.e. computer system on one or more PCB, e.g. motherboards, daughterboards or blades
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Multi Processors (AREA)
Abstract
一种计算设备,包括主板、第一内存扩展板、第一内存模块、第二内存扩展板以及第二内存模块;主板上设置有第一CPU,第一CPU中包括第一接口以及第二接口,第一接口与第二接口为内存接口,属于所述第一CPU的同一接口分组;第一内存扩展板上设置有第一内存扩展控制器,第二内存扩展板上设置有第二内存扩展控制器;第一接口经第一内存扩展控制器与第一内存模块电连接,第二接口经第二内存扩展控制器与第二内存模块电连接。这样一来,由于第一CPU的第一接口与第二接口属于同一接口分组,第一CPU在访问第一内存模块以及第二内存模块时,无需跨组访问,可以缩短访问路径,因此可以提高数据传输速度。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种计算设备。
背景技术
计算设备(例如服务器)中可以包括主板,主板上可以设置有一个或者多个中央处理器CPU。每个CPU可以通过内存扩展控制器与内存模块电连接,这样CPU可与内存模块进行数据交互。例如,CPU可以将数据写入到内存模块中,也可以从内存模块中读取数据。
随着数据存储量越来越大,CPU与内存模块进行数据交互的速度至关重要。但是,当前主板上的CPU在与内存模块进行数据传输时,存在着数据传输速度较慢这一技术问题。
因此,如何提高CPU与内存模块之间的数据传输速度成为了当前亟待解决的技术问题。
发明内容
本申请提供了一种计算设备,能够提高CPU与内存模块之间的数据传输速度。
第一方面,本申请提供一种计算设备,所述计算设备包括主板、第一内存扩展板、第一内存模块、第二内存扩展板以及第二内存模块;所述主板上设置有第一CPU,所述第一CPU中包括第一接口以及第二接口,所述第一接口与所述第二接口为内存接口,属于所述第一CPU的同一接口分组;所述第一内存扩展板上设置有第一内存扩展控制器,所述第二内存扩展板上设置有第二内存扩展控制器;所述第一内存扩展控制器分别与所述第一接口和所述第一内存模块电连接,所述第二内存扩展控制器分别与所述第二接口和所述第二内存模块电连接。这样一来,由于第一CPU的第一接口与第二接口属于同一接口分组,第一CPU在访问第一内存模块以及第二内存模块时,无需跨组访问,可以缩短访问路径,因此可以提高数据传输速度。
在一种可能的实现方式中,所述计算设备还包括第三内存模块以及第四内存模块;所述第一内存扩展板上还设置有第三内存扩展控制器,所述第二内存扩展板上还设置有第四内存扩展控制器;所述第一接口经第三内存扩展控制器与第三内存模块电连接,所述第二接口经第四内存扩展控制器与第四内存模块电连接。这样,由于第一CPU的第一接口与第二接口属于同一接口分组,第一CPU在访问第一内存模块、第二内存模块、第三内存模块以及第四内存模块时,无需跨组访问,可以缩短访问路径,因此可以提高数据传输速度。
在一种可能的实现方式中,所述计算设备还包括第三内存扩展板、第四内存扩展板、第五内存模块以及第六内存模块;所述主板上还设置有第二CPU,所述第二CPU中包括第三接口以及第四接口,所述第三接口与所述第四接口为内存接口,属于所述第二CPU的同一接口分组;所述第二CPU与所述第一CPU经xGMI总线电连接;所述第五内存扩展控制器分别与所述第三接口和所述第五内存模块电连接,所述第六内存扩展控制器分别与所述第四接口和所述第六内存模块电连接。这样,由于第二CPU的第三接口与第四接口属于同一接口分组,第一CPU或者第二CPU在访问第五内存模块以及第六内存模块时,无需跨组访问,可以缩短访问路径,因此可以提高数据传输速度。此外,第二CPU在访问第一CPU的第一接口以及第二接口所连接的内存模块时,也可以提高数据传输速度。
在一种可能的实现方式中,所述计算设备还包括第七内存模块以及第八内存模块;所述第三内存扩展板上还设置有第七内存扩展控制器,所述第四内存扩展板上还设置有第八内存扩展控制器;所述第七内存扩展控制器分别与所述第三接口和所述第七内存模块电连接,所述第八内存扩展控制器分别与所述第四接口和所述第八内存模块电连接因此,第一CPU或者第二CPU在访问第五内存模块、第六内存模块、第七内存模块以及第八内存模块时,无需跨组访问,可以缩短访问路径,因此可以提高数据传输速度。
在一种可能的实现方式中,所述第一接口与所述第二接口为快速计算链路CXL接口。这样,内存接口具体为快速计算链路CXL接口。
在一种可能的实现方式中,所述第一CPU采用内存交织方式访问所述第一内存模块以及第二内存模块。这样,第一CPU采用内存交织方式访问所述第一内存模块以及第二内存模块,以向第一内存模块以及第二内存模块中写入(或者读取)数据。
在一种可能的实现方式中,所述主板上设置有第一电源模块;所述第一电源模块的输出端与所述第一内存扩展板以及所述第二内存扩展板电连接。这样,主板上的第一电源模块可以向第一内存扩展板供电,还可以向第二内存扩展板供电。
在一种可能的实现方式中,所述第一内存模块包括至少一个双列直插式存储模块DIMM,所述第二内存模块包括至少一个双列直插式存储模块DIMM;所述第一内存模块插设于所述第一内存扩展板上,所述第二内存模块插设于所述第二内存扩展板上。。这样,第一内存模块的具体形式可以为至少一个双列直插式存储模块DIMM。
在一种可能的实现方式中,其特征在于,所述第一内存扩展板上设置有第一连接器,所述主板上设置有第二连接器,所述第二内存扩展板上设置有第三连接器;所述第一内存扩展板通过所述第一连接器和所述第二连接器与所述第一接口电连接,所述第二内存扩展板通过所述第三连接器和所述第二连接器和所述第二接口电连接。这样,第一接口经过第一连接器、第二连接器与内存扩展板电连接,从而使得第一CPU可以通过第一接口与内存扩展板的DIMM进行数据交互。
在一种可能的实现方式中,所述第一内存模块为DDR4内存或者DDR5内存,所述第二内存模块为DDR4内存或者DDR5内存。这样,第一内存模块既可以采用DDR4内存,也可以采用DDR5内存。第二内存模块亦是如此。
附图说明
图1是本申请实施例提供的一种计算设备的结构示意图;
图2是本申请实施例中的一种CPU的结构示意图;
图3是本申请实施例提供的一种内存扩展板的结构示意图;
图4是本申请实施例提供的另一种计算设备的结构示意图;
图5是本申请实施例提供的又一种计算设备的结构示意图;
图6是本申请实施例提供的又一种计算设备的结构示意图;
图7是本申请实施例提供的又一种计算设备的结构示意图;
图8是本申请实施例提供的又一种计算设备的结构示意图。
具体实施方式
本文中术语“和/或”,是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。本文中符号“/”表示关联对象是或者的关系,例如A/B表示A或者B。
本文中的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一响应消息和第二响应消息等是用于区别不同的响应消息,而不是用于描述响应消息的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或者两个以上,例如,多个处理单元是指两个或者两个以上的处理单元等;多个元件是指两个或者两个以上的元件等。
计算快速链路(compute express link,CXL)协议是一种高速串行协议,它允许在计算机系统内部的不同组件之间进行快速、可靠的数据传输。它旨在解决高性能计算中的瓶颈问题,包括内存容量、内存带宽和输入输出延迟等问题。CXL协议还可以实现内存扩展和内存共享,并且可与计算加速器(如图形处理器GPU以及现场可编程门阵列芯片FPGA)等外部设备通信,提供更快、更灵活的数据传输方式。
CXL协议是基于PCIE5.0协议发展而来的。CXL协议依托于第五代外围组件快速互连(peripheral component interconnect express 5,PCIE5.0)的物理层,针对缓存和内存优化的一个新协议。CXL协议与PCIE5.0协议具有相同的电气特性。CXL功能需要使用一个灵活的接口(例如,CXL接口),这个接口可以根据链路层协商决定是采用PCIE协议还是CXL协议。
计算设备中可以包括主板,主板上设置有CPU,CPU可以包括多个内存接口。计算设备还包括内存扩展板,内存扩展板上设置有内存扩展控制器(memory expandercontroller,MXC)。
在相关技术中,内存扩展控制器可以与CPU的内存接口(例如CXL接口)相连接,同时,内存扩展控制器还可以与内存模块相连接。这样一来,CPU可以通过内存扩展控制器与内存模块进行数据交互。具体的,CPU可以通过内存扩展控制器从内存模块中读取数据,也可以通过内存扩展控制器向内存模块中写入数据。但是,当CPU与内存模块进行数据交互时,往往会出现CPU与内存模块之间的数据传输速率较低的技术问题。
为便于理解本申请实施例的技术方案,下面对本申请实施例中涉及的术语进行解释。
双倍数据率同步动态随机存取存储器DDR SDRAM(Double Data RateSynchronous Dynamic Random Access Memory,DDR SDRAM)为具有双倍资料传输速率的SDRAM,其资料传输速度为系统主频的两倍,由于速度增加,其传输性能优于传统的SDRAM(Synchronous Dynamic Random Access Memory,SDRAM),DDR SDRAM在系统时钟的上升沿和下降沿都可以进行数据传输。为了简化表述,以下将DDR SDRAM简称为DDR。DDR内存通常用于计算机、服务器、路由器等设备中,是一种高性能、低功耗的内存技术,它可以提高系统的性能和带宽,满足不同设备的存储需求。
目前DDR已经发展到第五代DDR5,与DDR4相比,DDR5标准性更强,功耗更低,并且所有的DDR5芯片都具有ECC(Error Checking and Correcting,ECC)功能,可以在数据发送到CPU之前检测并纠正错误。本申请实施例内存模块中的内存芯片以DDR5为例,但不局限于DDR5,也可以是其他内存芯片。
不同代次的DDR内存的接口不同,第一代DDR包括DDR接口、第二代DDR2包括DDR2接口、第三代DDR3包括DDR3接口、第四代DDR4包括DDR4接口以及第五代DDR5包括DDR5接口,接口用于传输高速信号,每种接口都有不同的规格和性能。DDR接口的主要特点是高速传输和低功耗,它可以在同样的频率下传输更多的数据,从而提高系统的性能。
DDR内存的接口的主要包括以下优点:
1.高速传输:DDR内存可以在每个时钟周期内传输两次数据,因此比SDR内存更快。
2.低功耗:DDR内存使用低电压,因此功耗更低。
3.更高的带宽:DDR内存可以在同样的频率下传输更多的数据,从而提高系统的带宽。
4.更大的容量:DDR内存可以支持更大的容量,从而满足更高的存储需求。
内存交织是指不同内存上的交错访问来提高内存访问性能的技术。CPU中的内存控制器以交替模式在不同的内存模块之间分配数据,允许内存控制器访问每个内存模块来获取较小的数据位,而不是访问单个内存模块来获取整个数据块,为内存控制器提供了更多带宽用于跨通道(内存通道)访问相同的数据量,而不是遍历单个通道将所有数据存储到单个内存模块中。
接下来,对本申请实施例提供的计算设备进行详细介绍。
示例性的,本申请实施例提供的一种计算设备1,如图1所示。其中,计算设备1为具有数据处理能力的装置、设备或平台。在一个例子中,计算设备1可以为服务器。
计算设备1可以包括主板11,主板11上设置有CPU111。CPU111中包括多个内存接口。内存接口具体可以为PCIE接口或者CXL接口,也就是通过PCIE协议或者CXL协议与内存模块进行通信的接口。。例如,4个CXL接口,分别为接口P0、接口P1、接口P2以及接口P3。其中,接口P0与接口P1属于同一接口分组,接口P2和接口P3属于同一接口分组,同一接口分组即为同一corner。
此处的corner是指芯片的角落,如图2所示,本申请实施例的接口P0和接口P1属于corner1,接口P2和接口P3属于corner2。
计算设备1还包括内存扩展板A以及内存扩展板B,内存扩展板A上设置有内存扩展控制器MXC0,内存扩展板B上设置有内存扩展控制器MXC1。
内存扩展控制器MXC0的接口支持连接DDR5或者DDR4,可以使其与DDR4或者DDR5采用CXL或者PCIE协议进行通信,且MXC0与CPU111之间也可以通过CXL协议或者PCIE协议进行通信。示例性的,当采用CXL协议时,可以将MXCO分别与CPU111和内存模块a进行连接的接口称为第一CXL接口和第二CXL接口;本申请实施例以内存扩展控制器MXCO与CPU和内存模块a之间采用CXL协议进行通信为例,内存扩展控制器MXC1的协议与MXCO相同,在此不再赘述。内存扩展控制器MXC0的第一CXL接口可以与CPU的接口P0相连接,内存扩展控制器MXC0的第二CXL接口可以与内存模块a电连接。其中,内存模块a为DDR5内存模块或者DDR4内存模块。
这样一来,CPU111可以通过内存扩展控制器MXC0与内存模块a进行数据交互。具体的,CPU111可以通过接口P0以及内存扩展控制器MXC0从内存模块a中读取数据,也可以通过接口P0以及内存扩展控制器MXC0向内存模块a中写入数据。
同理,内存扩展控制器MXC1的第一CXL接口可以与CPU的接口P1相连接,内存扩展控制器MXC1的第二CXL接口可以与内存模块b电连接。这样,CPU111可以通过接口P1以及内存扩展控制器MXC1从内存模块b中读取数据,也可以通过接口P1以及内存扩展控制器MXC1向内存模块b中写入数据。
在采用内存交织技术的情况下,可以以统一的间隔将连续的内存地址映射到不同的CXL设备,具体可以为内存模块a以及内存模块b。若内存模块a连接CPU111的接口P0,内存模块b连接CPU111的接口P2,由于接口P0和接口P2不属于同一接口分组,因此CPU111在访问内存模块a和内存模块b时存在访问路径太长,数据传输速度较慢的技术问题。
相比之下,本申请实施例中的CPU111的接口P0与接口P1属于CPU111接口的同一接口分组(同一group),该接口分组是超威半导体(AMD)公司的CPU的产品手册上定义的,接口P0和接口P1属于同一接口分组,接口P2和接口P3属于另一接口分组,且P0-P3接口的功能相同,均用于与内存条或者内存扩展板连接,以从内存条读取或写入数据,其中内存条可以是DDR4,DDR5,内存扩展板可以是CXL扩展板。因此,CPU111在访问内存模块a以及内存模块b时,无需跨组访问,可以缩短访问路径,因此可以提高数据传输速度。
需要说明的是,CPU的同一接口分组分别所连接的CXL扩展板上的内存条可以应用内存交织技术,也可以不应用内存交织技术,在此不做具体限定。
此外,在CPU111访问内存模块a时,实质上是CPU111的内核通过接口P0对应的CXL控制器访问内存模块a。同理,在CPU111访问内存模块b时,实质上是CPU111的内核通过接口P1对应的CXL控制器访问内存模块b。
需要说明的是,内存交织(memory interleaving)是AMD CPU用于增加应用程序可用内存带宽的一种技术。在没有内存交织的情况下,连续的内存块都是从同一物理内存,例如同一个内存通道的内存条上读取的,CPU通过访问一个内存条上连续的内存块,从而来获取整个数据块。在采用内存交织的情况下,连续的内存块可位于不同内存通道的内存条上,CPU可以并发访问不同通道的内存条上的连续的内存块,从而获取整个数据块,因此有利于提升应用可用内存带宽,并降低内存延迟。
示例性的,上述的内存模块a具体可以为DIMM(dual-inline-memory-modules,双列直插式存储模块),DIMM的数量根据内存扩展控制器的第二CXL接口的数量以及内存扩展板的尺寸确定,每个第二CXL接口可以连接1个或2个DIMM。内存模块b的结构与内存模块a相同,在此不再详述。
以下对DIMM的结构进行详细描述。
在DIMM的内部,内存的数据是以位(bit)为单位写入一张大的存储单元矩阵中。只要指定一个行(Row),再指定一个列(Column),就可以准确地定位到某个存储单元,这就是内存芯片寻址的基本原理。这样的一个阵列我们就叫它内存的逻辑Bank(Logical Bank)。
由于工艺上的原因,这个存储单元阵列不可能做得太大,所以一般DIMM中都是将内存容量分成几个阵列来制造,也就是说在DIMM中存在多个逻辑Bank。随着芯片容量的不断增加,逻辑Bank数量也在不断增加。逻辑Bank的地址线是通用的,利用逻辑Bank的编号可以对不同Bank进行区分。例如,一个DIMM中包括4个逻辑Bank,各Bank的编号分别为Bank0到Bank3,每一Bank包括8M个存储单元。那么一个逻辑Bank的存储容量就是64Mbit(8M×8bit),4个逻辑Bank的总存储容量为256Mbit(32MB)。
此外,本申请实施例中的接口P0以及接口P1仅为示例性说明。本申请实施例中的内存扩展板A可以与接口P2相连接,内存扩展板B可以与接口P3相连接,其实现方式与前面的描述内容相同,在此不再详述。
以下对内存扩展板A的具体结构进行示例性介绍。如图3所示,内存扩展板A上可以设置有UBC连接器0,内存扩展控制器MXC0,DIMM插槽1以及DIMM插槽2。UBC连接器0的各引脚可以通过金属走线与MXC0电连接。MXC0可以经过金属走线与DIMM插槽1的引脚以及DIMM插槽2的引脚电连接。内存模块a可以包括两个DIMM。CPU111的P0接口可以连接至主板上的另一UBC连接器,当用户将该UBC连接器通过线缆连接UBC连接器0,且将两个DIMM插置到DIMM插槽1以及DIMM插槽2中时,CPU111即可通过接口P0与两个DIMM进行数据交互。
需要说明的是,上述举例仅为示例性说明。UBC连接器0也可以被替换为其他形式的连接器,DIMM插槽的数量也可以为1个。
此外,内存扩展板B的结构与内存扩展A相同,在此不再详述。
在本申请的第二实施例中,基于本申请第一实施例,内存扩展板A上还可以设置有内存扩展控制器MXC2,内存扩展板B上还可以设置有内存扩展控制器MXC3,如图4所示。
内存扩展控制器MXC2的接口支持连接DDR5或者DDR4,可以使其与DDR4或者DDR5采用CXL或者PCIE协议进行通信,且MXC0与CPU111之间也可以通过CXL协议或者PCIE协议进行通信,且将MXC2分别与CPU111和内存模块a进行连接的接口称为MXC2的第一CXL接口和第二CXL接口;本申请实施例以内存扩展控制器MXC2与CPU和内存模块a之间采用CXL协议进行通信为例,内存扩展控制器MXC3的协议与MXC2相同,在此不再赘述。内存扩展控制器MXC2的第一CXL接口可以与CPU的接口P0相连接,内存扩展控制器MXC2的第二CXL接口可以与内存模块c电连接。其中,内存模块c为DDR5内存模块或者DDR4内存模块。这样一来,CPU111可以通过接口P0以及内存扩展控制器MXC2与内存模块c进行数据交互。
类似的,内存扩展控制器MXC3的第一CXL接口可以与CPU的接口P1相连接,内存扩展控制器MXC3的第二CXL接口可以与内存模块d电连接。这样一来,CPU111可以通过接口P1以及内存扩展控制器MXC3与内存模块d进行数据交互。
其中,内存模块c和内存模块d的结构与前述内存模块a相同,本申请内存扩展板的结构也可以参考第一实施例中的内存扩展板的结构,在此不再详述。
由于本申请实施例中的CPU111的接口P0与接口P1属于同一接口分组,CPU111在访问内存模块a、内存模块b、内存模块c以及内存模块d时,无需跨组访问,可以缩短访问路径,因此可以提高数据传输速度。
在本申请的第三实施例中,基于本申请第一实施例,计算设备1还可以包括内存扩展板C以及内存扩展板D,内存扩展板C上设置有内存扩展控制器MXC4,内存扩展板D上设置有内存扩展控制器MXC5,如图5所示。
内存扩展控制器MXC4的接口支持连接DDR5或者DDR4,可以使其与DDR4或者DDR5采用CXL或者PCIE协议进行通信,且MXC4与CPU111之间也可以通过CXL协议或者PCIE协议进行通信,且将MXC4分别与CPU112和内存模块a进行连接的接口称为MXC4的第一CXL接口和第二CXL接口;本申请实施例以内存扩展控制器MXC4与CPU和内存模块a之间采用CXL协议进行通信为例,内存扩展控制器MXC5的协议与MXC4相同,在此不再赘述。
主板1上还设置有CPU112,CPU112与CPU111之间采用插槽/芯片间全局内存互连(socket/inter-chip global memory interconnect,xGMI)总线相连接,以使得两者能够进行数据交互。
需要说明的是,xGMI总线作为AMD平台(核心架构Zen平台)推出的一种全新的socket与socket之间相互通讯的高速互联总线,由4组x16的链路(link)组成,每组链路包含16个通道(lane),每个通道包含2对双向的高速差分对。其中,通过双向的通信连接实现数据交换的两端,该通信连接的一端称为一个socket。
CPU112的结构可以与CPU111相同。CPU112上可以设置有多个CXL接口,例如4个CXL接口,分别为接口P0、接口P1、接口P2以及接口P3。其中接口P0与接口P1属于同一接口分组,接口P2和接口P3属于同一接口分组。
内存扩展控制器MXC4的第一CXL接口可以与CPU112的接口P0相连接,内存扩展控制器MXC4的第二CXL接口可以与内存模块e电连接。其中,内存模块e为DDR5内存模块或者DDR4内存模块。这样一来,CPU112可以通过接口P0以及内存扩展控制器MXC4与内存模块e进行数据交互。
同理,内存扩展控制器MXC5的第一CXL接口可以与CPU112的接口P1相连接,内存扩展控制器MXC5的第二CXL接口可以与内存模块f电连接。这样一来,CPU112可以通过接口P1以及内存扩展控制器MXC5与内存模块f进行数据交互。
其中,内存模块e和内存模块f的结构与前述内存模块a相同,本申请内存扩展板的结构也可以参考第一实施例中的内存扩展板的结构,在此不再详述。
由于本申请实施例中的CPU112的接口P0与接口P1属于同一接口分组,CPU112在访问内存模块e以及内存模块f时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与内存模块e以及内存模块f之间的数据传输速度。
同理,CPU111在访问内存模块e以及内存模块f时,可以经过xGMI总线与CPU112进行数据交互,然后CPU112再与内存模块e以及内存模块f进行数据交互。CPU112在访问内存模块e以及内存模块f时,无需跨组访问,可以缩短访问路径,因此可以提高CPU111与内存模块e以及内存模块f之间的数据传输速度。
同理,CPU112在访问内存模块a以及内存模块b时,可以经过xGMI总线与CPU111进行数据交互,然后CPU111再与内存模块a以及内存模块b进行数据交互,CPU111在访问内存模块a以及内存模块b时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与内存模块a以及内存模块b之间的数据传输速度。
在本申请的第四实施例中,本申请施例中的CPU111所连接的内存扩展板与内存模块与本申请第二实施例中相同,本申请实施例中的CPU112所连接的内存扩展板与内存模块与本申请第三实施例中相同,如图6所示。
这样一来,由于本申请实施例中的CPU111的接口P0与接口P1属于同一接口分组,CPU111在访问内存模块a、内存模块b、内存模块c以及内存模块d时,无需跨组访问,可以缩短访问路径,因此可以提高CPU111与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度。
同理,CPU112在访问内存模块e以及内存模块f时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与内存模块e以及内存模块f之间的数据传输速度。
同理,CPU111在访问内存模块e以及内存模块f时,可以经过xGMI总线与CPU112进行数据交互,然后CPU112再与内存模块e以及内存模块f进行数据交互。CPU112在访问内存模块e以及内存模块f时,无需跨组访问,可以缩短访问路径,因此可以提高CPU111与内存模块e以及内存模块f之间的数据传输速度。
同理,CPU112在访问内存模块a、内存模块b、内存模块c以及内存模块d时,可以经过xGMI总线与CPU111进行数据交互,然后CPU111再与内存模块a、内存模块b、内存模块c以及内存模块d进行数据交互。CPU111在访问内存模块a、内存模块b、内存模块c以及内存模块d时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度。
在本申请的第五实施例中,本申请施例中的CPU111所连接的内存扩展板与内存模块与本申请第二实施例中相同。对于CPU112所连接的内存扩展板与内存模块而言,相比于第三实施例中的CPU112及其所连接的内存扩展板与内存模块,本申请实施例中的内存扩展板C上还可以设置有内存扩展控制器MXC6,内存扩展板D上还可以设置有内存扩展控制器MXC7,如图7所示。
内存扩展控制器MXC6的接口支持连接DDR5或者DDR4,可以使其与DDR4或者DDR5采用CXL或者PCIE协议进行通信,且MXC4与CPU111之间也可以通过CXL协议或者PCIE协议进行通信,且将MXC6分别与CPU112和内存模块a进行连接的接口称为MXC6的第一CXL接口和第二CXL接口;本申请实施例以内存扩展控制器MXC6与CPU和内存模块a之间采用CXL协议进行通信为例,内存扩展控制器MXC7的协议与MXC6相同,在此不再赘述。
内存扩展控制器MXC6的第一CXL接口可以与CPU112的接口P0相连接,内存扩展控制器MXC6的第二CXL接口可以与内存模块g电连接。其中,内存模块g为DDR5内存模块或者DDR4内存模块。这样一来,CPU112可以通过接口P0以及内存扩展控制器MXC6与内存模块g进行数据交互。
同理,内存扩展控制器MXC7的第一CXL接口可以与CPU112的接口P1相连接,内存扩展控制器MXC7的第二CXL接口可以与内存模块h电连接。其中,内存模块h为DDR5内存模块或者DDR4内存模块。这样一来,CPU112可以通过接口P1以及内存扩展控制器MXC7与内存模块h进行数据交互。
其中,内存模块g和内存模块h的结构与前述内存模块a相同,本申请内存扩展板的结构也可以参考第一实施例中的内存扩展板的结构,在此不再详述。
这样一来,由于本申请实施例中的CPU111的接口P0与接口P1属于同一接口分组,CPU111在访问内存模块a、内存模块b、内存模块c以及内存模块d时,无需跨组访问,可以缩短访问路径,因此可以提高CPU111与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度。
同理,CPU112在访问内存模块e、内存模块f、内存模块g以及内存模块h时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与内存模块e、内存模块f、内存模块g以及内存模块h之间的数据传输速度。
同理,CPU111在访问内存模块e、内存模块f、内存模块g以及内存模块h时,可以经过xGMI总线与CPU112进行数据交互,然后CPU112再与内存模块e、内存模块f、内存模块g以及内存模块h进行数据交互。CPU112在访问内存模块e、内存模块f、内存模块g以及内存模块h时,无需跨组访问,可以缩短访问路径,因此可以提高CPU111与内存模块e、内存模块f、内存模块g以及内存模块h之间的数据传输速度。
同理,CPU112在访问内存模块a、内存模块b、内存模块c以及内存模块d时,可以经过xGMI总线与CPU111进行数据交互,然后CPU111再与内存模块a、内存模块b、内存模块c以及内存模块d进行数据交互。CPU111在访问内存模块a、内存模块b、内存模块c以及内存模块d时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度。
本申请第六实施例为第五实施例的一种具体实现方式。具体的,如图8所示,主板11上设置有电源模块1,具体的,该电源模块1可以为开关电源。相应的,内存扩展板A上设置有供电连接器1,内存扩展板B上设置有供电连接器2。当用户需要使用内存扩展板A和B时,可以采用线缆将电源模块1的输出端与供电连接器1以及供电连接器2相连接,以使得电源模块1能够对内存扩展板A和B进行供电。
类似的,主板11上的电源模块2的输出端可以经供电连接器3对内存扩展板C进行供电,还可以经供电连接器4对内存扩展板D进行供电。在图8所示的连接方式中,一个内存通道连接两个内存条;例如,DIMM1和DIMM2通过同一个内存通道连接MXC1,DIMM3和DIMM4通过同一个内存通道连接MXC2……其他内存条的连接方式与DIMM1和DIMM2的连接方式相同,不再赘述。
主板11中包括UBC连接器A0,且接口P0经主板1上的金属走线与UBC连接器A0电连接。
内存扩展板A上设置有UBC连接器B0以及UBC连接器B1。且UBC连接器B0经金属走线与MXC0电连接,UBC连接器B1经金属走线与MXC2电连接。MXC0的一个内存通道可以与DIMM插槽1以及DIMM插槽2相连接。内存模块a可以包括DIMM1以及DIMM2,DIMM插槽1中可以插置DIMM1,DIMM插槽2也可以插置DIMM2。
当用户用线缆将UBC连接器A0与UBC连接器B0以及UBC连接器B1相连接时,CPU111即可通过接口P0以及MXC0,与DIMM1和DIMM2进行数据交互,CPU111还可以通过接口P0以及MXC2,与DIMM3和DIMM4进行数据交互。
同理,内存扩展板B的结构与内存扩展板A的结构相同。当用户用线缆将UBC连接器A1与UBC连接器B2以及UBC连接器B3相连接时,CPU111即可通过接口P1以及MXC1,与DIMM5和DIMM6进行数据交互,CPU111还可以通过接口P1以及MXC3,与DIMM7和DIMM8进行数据交互。
由于本申请实施例中的CPU111的接口P0与接口P1属于同一接口分组,CPU111在访问DIMM1至DIMM8时,无需跨组访问,可以缩短访问路径,因此可以提高CPU111与DIMM1至DIMM8之间的数据传输速度。
类似的,内存扩展板C和D的结构与内存扩展板A的结构相同。当用户用线缆将UBC连接器A2与UBC连接器B4以及UBC连接器B5相连接时,CPU112即可通过接口P0以及MXC4,与DIMM9和DIMM10进行数据交互,CPU112还可以通过接口P0以及MXC6,与DIMM11和DIMM12进行数据交互。同理,当用户用线缆将UBC连接器A3与UBC连接器B6以及UBC连接器B7相连接时,CPU112即可通过接口P1以及MXC5,与DIMM13和DIMM14进行数据交互,CPU112还可以通过接口P1以及MXC7,与DIMM15和DIMM16进行数据交互。
由于本申请实施例中的CPU112的接口P0与接口P1属于同一接口分组,CPU112在访问DIMM9至DIMM16时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与DIMM9至DIMM16之间的数据传输速度。
同理,CPU111在访问DIMM9至DIMM16时,可以经过xGMI总线与CPU112进行数据交互,然后CPU112再与DIMM9至DIMM16进行数据交互。CPU112在访问DIMM9至DIMM16时,无需跨组访问,可以缩短访问路径,因此可以提高CPU111与DIMM9至DIMM16之间的数据传输速度。
CPU112在访问DIMM1至DIMM8时,可以经过xGMI总线与CPU111进行数据交互,然后CPU111再与DIMM1至DIMM8进行数据交互。CPU111在访问DIMM1至DIMM8时,无需跨组访问,可以缩短访问路径,因此可以提高CPU112与DIMM1至DIMM8之间的数据传输速度。
发明人利用第六实施例提供的计算设备,对CPU与内存模块之间的数据传输速度进行了测试。以下通过实际测试数据,对本申请实施例所产生的技术效果进行具体说明。
在现有技术中,本领域技术人员可能将内存模块连接在不属于同一接口分组的CXL接口上。在一个例子中,CPU111中的接口P2(而非接口P0)通过内存扩展板A连接内存模块a和内存模块c,CPU111的接口P1的连接关系如图8所示。在采用这种连接关系时,内存模块a与内存模块c所连接的CXL接口为接口P2,内存模块b与内存模块d所连接的CXL接口为接口P1,接口P1和接口P2不属于同一接口分组。
发明人在实际测试中发现,CPU111与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度为60G/s,CPU112与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度同样为60G/s。
相比之下,在CPU111采用第六实施例中的连接关系时,接口P0和接口P1属于同一接口分组。发明人在实际测试中发现,CPU111与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度提升至80G/s,CPU112与内存模块a、内存模块b、内存模块c以及内存模块d之间的数据传输速度提升至80G/s。
类似的,在一个例子中,CPU112的接口P2(而非接口P0)通过内存扩展板C连接内存模块e和内存模块g,而CPU112的接口P1的连接关系如图8所示。此时,CPU111与内存模块e、内存模块f、内存模块g以及内存模块h之间的数据传输速度为60G/s,CPU112与内存模块e、内存模块f、内存模块g以及内存模块h之间的数据传输速度同样为60G/s。在CPU112采用第六实施例中的连接关系时,上述两项数据传输速度均提升至80G/s。
可以理解的是,本申请实施例示意的计算设备1的结构并不构成对计算设备1的具体限定。在本申请另一些实施例中,计算设备1可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
此外,在本申请的实施例中涉及的各种数字编号仅为描述方便进行的区分,并不用来限制本申请的实施例的范围。
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请实施例揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请实施例的保护范围之内。
Claims (10)
1.一种计算设备,其特征在于,所述计算设备包括主板、第一内存扩展板、第一内存模块、第二内存扩展板以及第二内存模块;所述主板上设置有第一CPU,所述第一CPU中包括第一接口以及第二接口,所述第一接口与所述第二接口为内存接口,属于所述第一CPU的同一接口分组;
所述第一内存扩展板上设置有第一内存扩展控制器,所述第二内存扩展板上设置有第二内存扩展控制器;
所述第一内存扩展控制器分别与所述第一接口和所述第一内存模块电连接,所述第二内存扩展控制器分别与所述第二接口和所述第二内存模块电连接。
2.根据权利要求1所述的计算设备,其特征在于,所述计算设备还包括第三内存模块以及第四内存模块;
所述第一内存扩展板上还设置有第三内存扩展控制器,所述第二内存扩展板上还设置有第四内存扩展控制器;
所述第三内存扩展控制器分别与所述第一接口和所述第三内存模块电连接,所述第四内存扩展控制器分别与所述第二接口和所述第四内存模块电连接。
3.根据权利要求1或者2所述的计算设备,其特征在于,所述计算设备还包括第三内存扩展板、第四内存扩展板、第五内存模块以及第六内存模块;
所述主板上还设置有第二CPU,所述第二CPU中包括第三接口以及第四接口,所述第三接口与所述第四接口为内存接口,属于所述第二CPU的同一接口分组;所述第二CPU与所述第一CPU通过xGMI总线电连接;
所述第五内存扩展控制器分别与所述第三接口和所述第五内存模块电连接,所述第六内存扩展控制器分别与所述第四接口和所述第六内存模块电连接。
4.根据权利要求3所述的计算设备,其特征在于,所述计算设备还包括第七内存模块以及第八内存模块;
所述第三内存扩展板上还设置有第七内存扩展控制器,所述第四内存扩展板上还设置有第八内存扩展控制器;
所述第七内存扩展控制器分别与所述第三接口和所述第七内存模块电连接,所述第八内存扩展控制器分别与所述第四接口和所述第八内存模块电连接。
5.根据权利要求1至4中任一项所述的计算设备,其特征在于,所述第一接口与所述第二接口为快速计算链路CXL接口。
6.根据权利要求1至5中任一项所述的计算设备,其特征在于,所述第一CPU采用内存交织方式访问所述第一内存模块以及第二内存模块。
7.根据权利要求1至6中任一项所述的计算设备,其特征在于,所述主板上设置有第一电源模块;
所述第一电源模块的输出端与所述第一内存扩展板以及第二内存扩展板电连接。
8.根据权利要求1所述的计算设备,其特征在于,所述第一内存模块包括至少一个双列直插式存储模块DIMM,所述第二内存模块包括至少一个双列直插式存储模块DIMM;所述第一内存模块插设于所述第一内存扩展板上,所述第二内存模块插设于所述第二内存扩展板上。
9.根据权利要求1-8中任一项所述的计算设备,其特征在于,所述第一内存扩展板上设置有第一连接器,所述主板上设置有第二连接器,,所述第二内存扩展板上设置有第三连接器;所述第一内存扩展板通过所述第一连接器和所述第二连接器与所述第一接口电连接,所述第二内存扩展板通过所述第三连接器和所述第二连接器和所述第二接口电连接。与所述第二连接器电连接。
10.根据权利要求1至9中任一项所述的计算设备,其特征在于,所述第一内存模块为DDR4内存或者DDR5内存,所述第二内存模块为DDR4内存或者DDR5内存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311841697.0A CN117909273A (zh) | 2023-12-28 | 2023-12-28 | 一种计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311841697.0A CN117909273A (zh) | 2023-12-28 | 2023-12-28 | 一种计算设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117909273A true CN117909273A (zh) | 2024-04-19 |
Family
ID=90691509
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311841697.0A Pending CN117909273A (zh) | 2023-12-28 | 2023-12-28 | 一种计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117909273A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118467182A (zh) * | 2024-07-10 | 2024-08-09 | 苏州元脑智能科技有限公司 | 内存访问方法、计算机程序产品、电子设备及介质 |
-
2023
- 2023-12-28 CN CN202311841697.0A patent/CN117909273A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118467182A (zh) * | 2024-07-10 | 2024-08-09 | 苏州元脑智能科技有限公司 | 内存访问方法、计算机程序产品、电子设备及介质 |
CN118467182B (zh) * | 2024-07-10 | 2024-10-01 | 苏州元脑智能科技有限公司 | 内存访问方法、计算机程序产品、电子设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11963299B2 (en) | Load reduced memory module | |
EP3447770B1 (en) | High capacity memory system using standard controller component | |
US7464225B2 (en) | Memory module including a plurality of integrated circuit memory devices and a plurality of buffer devices in a matrix topology | |
US20180225235A1 (en) | Systems and methods for utilizing ddr4-dram chips in hybrid ddr5-dimms and for cascading ddr5-dimms | |
US7640386B2 (en) | Systems and methods for providing memory modules with multiple hub devices | |
US7895374B2 (en) | Dynamic segment sparing and repair in a memory system | |
US20100005212A1 (en) | Providing a variable frame format protocol in a cascade interconnected memory system | |
US20080091888A1 (en) | Memory system having baseboard located memory buffer unit | |
US9916873B2 (en) | Extended capacity memory module with dynamic data buffers | |
US8559190B2 (en) | Memory systems and method for coupling memory chips | |
CN117909273A (zh) | 一种计算设备 | |
US20160217839A1 (en) | High capacity memory system | |
KR20030085134A (ko) | 복수의 메모리 모듈들의 배열을 사용한 멀티-뱅크 메모리서브시스템 | |
US20220413768A1 (en) | Memory module with double data rate command and data interfaces supporting two-channel and four-channel modes | |
CN216527166U (zh) | 一种大容量存储系统 | |
KR101526318B1 (ko) | 메인 보드 상에 스터브 저항이 형성된 메모리 보드를 포함하는 메모리 시스템 | |
US20220229790A1 (en) | Buffer communication for data buffers supporting multiple pseudo channels | |
US20230044892A1 (en) | Multi-channel memory module | |
US20230071117A1 (en) | Multiplexed ranks (mr) with pseudo burst length 32 (bl32) | |
US20240080988A1 (en) | High density interposers with modular memory units | |
US20240170091A1 (en) | System Error Correction Code (ECC) Circuitry Routing | |
US20230385208A1 (en) | Accelerated memory training through in-band configuration register update mode |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |