学院首页>服务器专区>服务器配件>[内存]带你全方位了解服务器内存产品

[内存]带你全方位了解服务器内存产品

作者: 来源: 添加时间:2006-5-23 13:13:11
二、内存技术篇

  如今大容量高速度的内存技术已经相当成熟了,但对于服务器而言,稳定性胜过一切,然而服务器内存之所以能承担服务器稳定性的重任,其中之一的关键技术就是“内存查纠错技术”。服务器中的内存我们都知道一般采用带有ECC技术的(ECC的英文全称是“ Error Checking and Correcting”,中文名为“错误检查和纠正”),从这个名称就可以看出它的主要功能就是“发现并纠正错误”。ECC比以前的奇偶校正技术更先进的方面体现在它不仅能发现错误,而且能纠正这些错误。但ECC技术只能纠正单比特的内存错误, 当有多比特错误发生的时候,ECC内存会生成一个不可隐藏(non-maskable interrupt)的中断 (NMI),系统会中止运行。IBM还有一种更先进的特殊内存纠错技术,那就是ChipKill内存技术。

  看完了上面的文章后,我相信我们对服务器内存已经有了个大概的认识,或许你认为内存已经为服务器提供了很大的保险了,但面临着一些意外的内存错误,有另外一种技术比内存错误纠正技术有效得多。IBM的内存保护技术就是保护由于意外的内存错误而带来的损失,它使用的是标准的ECC 168内存。它的工作方式有点像在Windows NT的NTFS文件系统下的在线备份磁盘扇区一样,当操作系统在磁盘上检测到坏的磁盘扇区时,它将在另外的扇区中写下这些数据放一边留作备用,我们可以认为内存保护就是提供在线备份数据位。这内存错误的纠正是通过内存控制器来完成的,所以不会增加操作系统的工作量,也不需要操作系统来提供支持,完全与操作系统无关。因为这是在标准的ECC 168线内存起作用的,无需为这种保护增加另外的开支。

  内存保护(在其它系统中也有称“多余的数据位”)技术最初的发展是在IBM大型机上,而且在Z系列和I系列服务器上使用了许多年。在一个2路交叉存取的内存系统中,每2片168线ECC内存包含144位,但是只有140位是用于数据存取和校验的。余下的4位是没有用上的,标准的ECC内存可以检测出2位的数据错误,但它只能纠正一位错误。如果在同时内存上有多位出错,那么这整个内存读取就失败了,此时唯有使系统临时挂起来,以尽量减少内存容量的需求,直到这个节点被更换。如果具有内存保护,那么就可以立即隔离这个失效的内存,重写数据在空余的数据位。通过这种方法可以在每4对(1个内存控制器,有的服务器不止包括一个内存控制器)168线内存中修复4个4位连续的内存错误。当服务器下次重启就会重新检查内存的状态,如果是内存软错误(临时的),系统重启后内存的这些用于在线数据备份的数据位就重新释放了,恢复空的状态。如果是属于硬故障,这些在线备份数据位还会继续用来备份,直到更换为止。这种先进技术可以使减少停机机时间,使服务器持续保持高效的计算平台。这对于大型的数据库系统中尤其重要。

  前面提到的在线内存备份是另一种更高级别的内存保护。需要注意的是由于系统使用了双路交叉(2-way Interleaving)访问技术,所以必须成对安装双列直插式内存模块(Dual In-line Memory Module,DIMM)的内存条。每个DIMM必须是同一型号的,而且容量相同,否则内存系统的性能会受到影响。如果一共有三组内存条组,把C组作为在线备份内存,其内存容量总合要是A、B两组的容量总合之和。这种技术特别适用于没有足够的计算机系统维护后人员或者手头没有多余的内存可以方便替换的场所,像HP ProLiant服务器的ML 370、DL 380系列产品均采用在线备份模式。

  另一种防止服务器因内存错误的发生而导致整个服务器不稳定性事件发生的措施就是内存镜像和内存热备份(Memory ProteXion)。在线备份内存模式只能对发生单比特错误的数据提供保护,像镜像内存方式还可以用来保护发生多比特错误的数据。正因为如此,内存镜像和内存热备份很适合于商业应用,因为它除了正常维护之外,不需要在内存检修上花费额外的时间。这种技术的出现,是由于随着服务器系统总线提高,内存传输的数据陪增,会出现不知什么原因遇到了许多内存保护和Chipkill修复技术都不能完全修复的情况。内存镜像和内存热备都属于内存冗余技术,是内存热插拔不可缺少的技术成分,诸如其他还有热更换热添加、热插拔RAID内存,这些就相当好理解 ,不过需要注意的一点是,许多企业实际上实现的只是有限的内存热插拔,只能拔掉特定的内存条,而不能随意拔掉其他内存条。

  以上这些技术,在高端服务器已经得到充分应用,而且这些技术更多是根据企业应用的需求,有针对性的选择 。可以这么说,它们是一层又一层的保护屏障。至于使用到那一层,因异而异……

内存相关名字解释

1、Buffer和Unbuffer

Buffer即缓存器,也可理解成高速缓存,在服务器及图形工作站内存有较多应用,容量多为64K,但随着内存容量的不断增大,其容量也不断增加,具有Buffer的内存将对内存的读写速度有较大提高,象早期168芯EDO ECC服务器内存大多都带Buffer,Unbuffer表示不具有高速缓存。有Buffer的内存几乎都带ECC功能,Unbuffer内存只有少数带ECC功能。其在内存编号上也有较明显特征,以维京内存PC133 128M为例,其编号为ME16641U4SS3-CL3,其中的字母U就代表Unbuffer。

2、Register

Register即寄存器或目录寄存器,在内存上的作用我们可以把它理解成书的目录,有了它,当内存接到读写指令时,会先检索此目录,然后再进行读写操作,这将大大提高服务器内存工作效率。带有Register的内存一定带Buffer,并且目前能见到的Register内存也都具有ECC功能,其主要应用在中高端服务器及图形工作站上,如IBM Netfinity 5000。

3、SDRAM

即同步动态随机存储器(Synchronous Dynamic RAM)内存。该内存历史较长,它的特点是让所有的输入输出信号保持与系统时钟同步,内存就是工作在系统的外部频率下。工作电压3.3V。

4、DDR SDRAM

双倍数据速率(Double Data Rate,DDR)SDRAM是一种以SDRAM为基础发展而来的内存技术。因此,DDR内存加倍了内存的频宽,提高了数据的传输量。DDR内存工作电压为2.5V。 由于DDR内存比SDRAM能增加更多的效能,并且能降低成本,而且DDR内存晶片能用现有的SDRAM设备制造及测试,不必再投资大量资金用于设备及生产上。此外DDR内存增加了内存频宽及效率,因此广泛使用在许多商业、多媒体及娱乐相关产品上,将逐渐取代SDRAM。

5、DIMM(Dual-In line Memory Module)-双边接触内存模组

形象的说:内存条正反两面金手指是不导通的,如常见的有100线、168线、200线内存(long Dimm)和72线、144线(SO-Dimm)。DIMM一般有64位带宽,并且正反面相同位置的引脚不同;而SIMM一般只有32位带宽,需要两条两条同时使用,一般通过72线金手指与主板相连。

第 2 页,共 2 页 [1] [2]
站内搜索