从CPU、内存和I/O深度理解IA架构服务器
ECC和Chipkill
数据完整性是服务器架构最关注的一个点,很多时候需要安装额外的DIMM检测和恢复内存错误,最常见的办法是增加8位ECC(纠错码),将存储字从64位扩大到72位,就象海明码一样,允许纠正一位错误,检测两位错误,它们也被称作SEC(Single Error Correction,单纠错)/DED(Double Error Detection,双检错)。
先组织存储字再写入到内存芯片中,EEC可以用于保护任一内存芯片的失效,以及单内存芯片的任意多位错误,这些功能有几个不同的名字。
①. Chipkill是IBM的商标
②. Oracle称之为扩展EEC
③. 惠普称之为Chipspare
④. 英特尔有一个类似的功能叫做x4单设备数据校正(Intel x4 SDDC)
Chipkill通过跨多个内存芯片位散射EEC字的位实现这个功能,任一内存芯片失效只会影响到一个ECC位,它允许重建内存中的内容。
下图了显示了一个读和写128位数据的内存控制器,增加EEC后就变成144位了,144位分成4个36位的存储字,每个存储字将是SEC/DED。如果使用两个DIMM,每个包含18个4位芯片,可以按照下图所示的方法重组位,如果芯片失效,每4个字中只会有一个错误,但因为字是SEC/DED的,每4个字可以纠正一个错误,因此所有错误都可以被纠正过来。

图 18 Chipkill示例
5
第1页:一、处理器子系统第2页:核心第3页:线程第4页:前端总线第5页:双独立总线第6页:专用高速互联第7页:英特尔QuickPath互联第8页:二、内存子系统第9页:SRAM、DRAM和SDRAM第10页:DIMM第11页:ECC和Chipkill第12页:内存Rank第13页:UDIMM和RDIMM第14页:DDR2和DDR3第15页:三、I/O子系统第16页:四、英特尔微架构第17页:集成内存控制器(IMC)第18页:英特尔QuickPath互联(QPI)第19页:CPU架构第20页:英特尔超线程技术第21页:缓存分级第22页:集成功率门控第23页:电源管理第24页:英特尔Turbo Boost技术第25页:四、硬件辅助虚拟化第26页:VT Flex Migration和扩展页表(EPT)第27页:虚拟处理器ID(VPID)第28页:RAS高级可靠性第29页:高级加密标准和可信执行技术第30页:芯片设计第31页:芯片组虚拟化支持与直接I/O虚拟化第32页:VT-c for Connectivity第33页:VMDq第34页:NetQueue
相关文章