2024年6月6日发(作者:南门松)
服务器内存本身是内存(RAM),具有一些特有的技术(ECC、REG、FBD、ChipKill、
热插拔技术)从而有着极高的稳定性和纠错性能。目前在内存技术方面除了一些通用的内
存技术外,另外还有像HP的“在线备份内存”和热插拔镜像内存;IBM的ChipKill内存
技术和热更换和热增加内存技术和Intel这样的巨头所推出的专用服务器内存技术。
主要技术
一:Parity
奇偶校验技术,比特是通过“1”和“0”来表示数据高、低电平信号的。在数字电路中将
8个连续的比特叫做一个字节(byte),在不带“奇偶校验”的内存中的每字节只有8位,
若它的某一位存储出了错误,就会使其中存储的相应数据发生改变而导致应用程序发生错
误。而带有“奇偶校验”的内存在每一字节(8位)外又额外增加了一位来进行错误检测。
对于奇偶校验位的电平值可以通过下面的例子来说明。比如,一字节中存储了某一数值(1,
0,1,0,1,0,1,1),把这每一位相加起来(1+0+1+0+1+0+1+1=5),若其结果是
奇数,校验位就定义为1,反之则为0。当CPU返回读取的存储数据时,它会再次检测前
8位中存储的数据的计算结果是否与校验位相一致。当CPU发现两者不同时,就试图纠正
这些错误。这种同位检查码(Parity check codes)被广泛地使用在侦错码(error
detectioncodes)上,它们增加一个检查位给每个资料的字元(或字节),并且能够侦测
到一个字符中所有奇(偶)同位的错误,但并不能确定错误在哪一个位,也就无法修正错
误。这种内存技术最早应用于72线EDO内存时代。ECC内存却能实实在在地起到纠错的
作用,比奇偶校验内存更先进。
二:ECC
ECC的英文全称是“Error Checking and Correcting”,对应的中文名称就叫做
“错误检查和纠正”; 它比奇偶校正技术Parity更先进的方面主要在于它不仅能发现错
误,而且能纠正这些错误,确保服务器的正常运行。ECC本身并不是一种内存型号,而是
一种影响内存结构和存储速度的技术,广泛应用于各种领域的计算机指令中,是一种指令
纠错技术。
与奇偶校验技术一样,ECC纠错技术也需要额外的空间来存储校正码,但其占用的位
数跟数据的长度并非成线性关系。具体来说,它是以8位数据、5位ECC码为基准,随后
每增加一个8位数据只需另增加一位ECC码即可。通俗地讲,就是一个8位的数据产生的
ECC码要占用5位的空间;一个16位数据的ECC码只需在原来基础上再增加一位,也就
是6位;而32位的数据则只需在原来基础上增加一位,即7位的ECC码即可,依次类推。
ECC可以从逻辑上分离错误并通知系统。当只出现单比特错误的时候,ECC可以把错
误改正过来而不影响系统运行。
三:Chipkill
Chipkill技术是IBM公司为解决服务器内存中ECC技术的不足而开发的,是一种新的
ECC内存保护标准。ECC内存只能同时检测和纠正单一比特错误,但不能同时检测出两个
或以上比特的数据有错误;这样就很可能造成全部比特数据的丢失,系统就很快崩溃。IBM
的Chipkill技术是利用内存的子结构方法来解决这一难题。内存子系统的设计原理是这样
的,单一芯片,无论数据宽度是多少,只对于一个给定的ECC识别码,它的影响最多为一
比特。比如: 4比特的DRAM中的每一位的奇偶性将分别组成不同的ECC识别码,这个
ECC识别码是用单独一个数据位来保存的,即保存在不同的内存空间地址,因此即使整个
内存芯片出了故障,每个ECC识别码也将最多出现一比特坏数据。这种情况完全可以通过
ECC逻辑修复,从而保证内存子系统的容错性,保证了服务器在出现故障时,有强大的自
我恢复能力。
目前ECC技术之所以在服务器内存中广泛采用,一是在此之前的新内存技术还不成熟,
二是目前的服务器中系统速度还是很高,在这种频率上一般来说同时出现多比特错误的现
象很少发生,才使得ECC内存技术成为几乎所有服务器上的内存标准。
四:Register
Register即寄存器或目录寄存器,在内存上的作用我们可以把它理解成书的目录,有
了它,当内存接到读写指令时,会先检索此目录,然后再进行读写操作,这将大大提高服
务器内存工作效率。带有Register的内存一定带Buffer(缓冲),并且目前能见到的Register
内存也都具有ECC功能,其主要应用在中高端服务器及图形工作站上。
五:FB-DIMM
FB-DIMM(Fully Buffered-DIMM,全缓冲内存模组)是Intel在DDR2、DDR3的基
础上发展出来的一种新型内存模组与互联架构,既可以搭配现在的DDR2内存芯片,也可
以搭配未来的DDR3内存芯片。FB-DIMM可以极大地提升系统内存带宽并且极大地增加
内存最大容量。
FB-DIMM技术是Intel为解决内存性能对系统整体性能的制约而发展出来的,在现有
技术基础上实现了跨越式的性能提升,同时成本也相对低廉。当前对于多路的服务器来说,
由于是多处理器系统,其对内存带宽和内存容量是极度渴求的,传统的内存技术已经无法
满足其需求了。这是因为目前的普通DIMM采用的是一种“短线连接”(Stub-bus)的拓扑
结构,这种结构中,每个芯片与内存控制器的数据总线都有一个短小的线路相连,这样会
造成电阻抗的不继续性,从而影响信号的稳定与完整,频率越高或芯片数据越多,影响也
就越大。虽而FB-DIMM技术的出现正好解决了这个问题,既能提供更大的内存容量和较
理想的内存带宽,也能保持相对低廉的成本。FB-DIMM与XDR相比较,虽然性能不及全
新架构的XDR,但成本却比XDR要低廉得多。
FB-DIMM技术优势:在内存频率相同的情况下目前能提供四倍于普通内存的带宽,并
且能支持的最大内存容量也达到了普通内存的24倍,系统最大能支持192GB内存。
FB-DIMM最大的特点就是采用已有的DDR2、DDR3内存芯片,借助内存PCB上的一个
缓冲芯片AMB(Advanced Memory Buffer,高级内存缓冲)将并行数据转换为串行数据
流,并经由类似PCI Express(串行接口多路并联设计)的点对点高速串行总线将数据传
输给处理器。
通用典型类型
1、ECC 内存,“Error Checking and Correcting”的简写,中文名称是“错误检查
和纠正”。
2、Reg-DIMM 带寄存器Register芯片和unbuffered ECC不带缓存
带有Register的内存一定带Buffer(缓冲),并且目前能见到的Register内存也都具有
ECC功能,其主要应用在中高端服务器及图形工作站上
3、Fully Buffered DIMM,全缓冲内存模组内存
FB-DIMM另一特点是增加了一块称为“Advanced Memory Buffer,简称AMB”的
缓冲芯片。这款AMB芯片是集数据传输控制、并—串数据互换和芯片而FB-DIMM实行
串行通讯呈多路并行主要靠AMB芯片来实现。
2024年6月6日发(作者:南门松)
服务器内存本身是内存(RAM),具有一些特有的技术(ECC、REG、FBD、ChipKill、
热插拔技术)从而有着极高的稳定性和纠错性能。目前在内存技术方面除了一些通用的内
存技术外,另外还有像HP的“在线备份内存”和热插拔镜像内存;IBM的ChipKill内存
技术和热更换和热增加内存技术和Intel这样的巨头所推出的专用服务器内存技术。
主要技术
一:Parity
奇偶校验技术,比特是通过“1”和“0”来表示数据高、低电平信号的。在数字电路中将
8个连续的比特叫做一个字节(byte),在不带“奇偶校验”的内存中的每字节只有8位,
若它的某一位存储出了错误,就会使其中存储的相应数据发生改变而导致应用程序发生错
误。而带有“奇偶校验”的内存在每一字节(8位)外又额外增加了一位来进行错误检测。
对于奇偶校验位的电平值可以通过下面的例子来说明。比如,一字节中存储了某一数值(1,
0,1,0,1,0,1,1),把这每一位相加起来(1+0+1+0+1+0+1+1=5),若其结果是
奇数,校验位就定义为1,反之则为0。当CPU返回读取的存储数据时,它会再次检测前
8位中存储的数据的计算结果是否与校验位相一致。当CPU发现两者不同时,就试图纠正
这些错误。这种同位检查码(Parity check codes)被广泛地使用在侦错码(error
detectioncodes)上,它们增加一个检查位给每个资料的字元(或字节),并且能够侦测
到一个字符中所有奇(偶)同位的错误,但并不能确定错误在哪一个位,也就无法修正错
误。这种内存技术最早应用于72线EDO内存时代。ECC内存却能实实在在地起到纠错的
作用,比奇偶校验内存更先进。
二:ECC
ECC的英文全称是“Error Checking and Correcting”,对应的中文名称就叫做
“错误检查和纠正”; 它比奇偶校正技术Parity更先进的方面主要在于它不仅能发现错
误,而且能纠正这些错误,确保服务器的正常运行。ECC本身并不是一种内存型号,而是
一种影响内存结构和存储速度的技术,广泛应用于各种领域的计算机指令中,是一种指令
纠错技术。
与奇偶校验技术一样,ECC纠错技术也需要额外的空间来存储校正码,但其占用的位
数跟数据的长度并非成线性关系。具体来说,它是以8位数据、5位ECC码为基准,随后
每增加一个8位数据只需另增加一位ECC码即可。通俗地讲,就是一个8位的数据产生的
ECC码要占用5位的空间;一个16位数据的ECC码只需在原来基础上再增加一位,也就
是6位;而32位的数据则只需在原来基础上增加一位,即7位的ECC码即可,依次类推。
ECC可以从逻辑上分离错误并通知系统。当只出现单比特错误的时候,ECC可以把错
误改正过来而不影响系统运行。
三:Chipkill
Chipkill技术是IBM公司为解决服务器内存中ECC技术的不足而开发的,是一种新的
ECC内存保护标准。ECC内存只能同时检测和纠正单一比特错误,但不能同时检测出两个
或以上比特的数据有错误;这样就很可能造成全部比特数据的丢失,系统就很快崩溃。IBM
的Chipkill技术是利用内存的子结构方法来解决这一难题。内存子系统的设计原理是这样
的,单一芯片,无论数据宽度是多少,只对于一个给定的ECC识别码,它的影响最多为一
比特。比如: 4比特的DRAM中的每一位的奇偶性将分别组成不同的ECC识别码,这个
ECC识别码是用单独一个数据位来保存的,即保存在不同的内存空间地址,因此即使整个
内存芯片出了故障,每个ECC识别码也将最多出现一比特坏数据。这种情况完全可以通过
ECC逻辑修复,从而保证内存子系统的容错性,保证了服务器在出现故障时,有强大的自
我恢复能力。
目前ECC技术之所以在服务器内存中广泛采用,一是在此之前的新内存技术还不成熟,
二是目前的服务器中系统速度还是很高,在这种频率上一般来说同时出现多比特错误的现
象很少发生,才使得ECC内存技术成为几乎所有服务器上的内存标准。
四:Register
Register即寄存器或目录寄存器,在内存上的作用我们可以把它理解成书的目录,有
了它,当内存接到读写指令时,会先检索此目录,然后再进行读写操作,这将大大提高服
务器内存工作效率。带有Register的内存一定带Buffer(缓冲),并且目前能见到的Register
内存也都具有ECC功能,其主要应用在中高端服务器及图形工作站上。
五:FB-DIMM
FB-DIMM(Fully Buffered-DIMM,全缓冲内存模组)是Intel在DDR2、DDR3的基
础上发展出来的一种新型内存模组与互联架构,既可以搭配现在的DDR2内存芯片,也可
以搭配未来的DDR3内存芯片。FB-DIMM可以极大地提升系统内存带宽并且极大地增加
内存最大容量。
FB-DIMM技术是Intel为解决内存性能对系统整体性能的制约而发展出来的,在现有
技术基础上实现了跨越式的性能提升,同时成本也相对低廉。当前对于多路的服务器来说,
由于是多处理器系统,其对内存带宽和内存容量是极度渴求的,传统的内存技术已经无法
满足其需求了。这是因为目前的普通DIMM采用的是一种“短线连接”(Stub-bus)的拓扑
结构,这种结构中,每个芯片与内存控制器的数据总线都有一个短小的线路相连,这样会
造成电阻抗的不继续性,从而影响信号的稳定与完整,频率越高或芯片数据越多,影响也
就越大。虽而FB-DIMM技术的出现正好解决了这个问题,既能提供更大的内存容量和较
理想的内存带宽,也能保持相对低廉的成本。FB-DIMM与XDR相比较,虽然性能不及全
新架构的XDR,但成本却比XDR要低廉得多。
FB-DIMM技术优势:在内存频率相同的情况下目前能提供四倍于普通内存的带宽,并
且能支持的最大内存容量也达到了普通内存的24倍,系统最大能支持192GB内存。
FB-DIMM最大的特点就是采用已有的DDR2、DDR3内存芯片,借助内存PCB上的一个
缓冲芯片AMB(Advanced Memory Buffer,高级内存缓冲)将并行数据转换为串行数据
流,并经由类似PCI Express(串行接口多路并联设计)的点对点高速串行总线将数据传
输给处理器。
通用典型类型
1、ECC 内存,“Error Checking and Correcting”的简写,中文名称是“错误检查
和纠正”。
2、Reg-DIMM 带寄存器Register芯片和unbuffered ECC不带缓存
带有Register的内存一定带Buffer(缓冲),并且目前能见到的Register内存也都具有
ECC功能,其主要应用在中高端服务器及图形工作站上
3、Fully Buffered DIMM,全缓冲内存模组内存
FB-DIMM另一特点是增加了一块称为“Advanced Memory Buffer,简称AMB”的
缓冲芯片。这款AMB芯片是集数据传输控制、并—串数据互换和芯片而FB-DIMM实行
串行通讯呈多路并行主要靠AMB芯片来实现。