简介
本文档介绍软奇偶校验错误和硬奇偶校验错误,解释常见错误消息,并推荐有助于避免或最小化奇偶校验错误的方法。
背景信息
最近的硬件和软件设计改进也减少了奇偶校验问题。
什么是处理器或内存奇偶校验错误?
奇偶校验是额外一个二进制数字(位)的存储,用于表示少量的计算机数据(通常为一个字节)的奇偶校验(奇数或偶数),而数据存储在内存中。然后,将从存储数据计算的奇偶校验值与最终奇偶校验值进行比较。如果这两个值不同,则表明存在数据错误,并且由于数据损坏,必须更改至少一个位。
在计算机系统中,来自内部或外部原因的电或磁干扰会导致单个内存位自动翻转成相反的状态。此事件使原始数据位无效,称为奇偶校验错误。
此类内存错误如果未被检测到,则可能产生无法检测和无意义的结果,或者可能导致存储数据的永久损坏或计算机崩溃。
导致内存奇偶校验错误的原因很多,可分为软奇偶校验错误或硬奇偶校验错误。
软错误
大多数奇偶校验错误是由静电或磁相关的环境条件引起的。
内存芯片中的大多数单事件错误是由背景辐射(如宇宙线中的中子)、电磁干扰(EMI)或静电放电(ESD)引起的。 这些事件可以随机改变一个或多个存储单元的电状态,或者可以干扰用于读取和写入存储单元的电路。
这些事件称为软奇偶校验错误,通常为临时或随机事件,通常发生一次。软错误可能是轻微或严重的:
- 可在不重置组件的情况下更正的次要软错误是单事件重置(SEU)。
- 需要组件或系统重置的严重软错误是单事件闩锁(SEL)。
软错误不是由硬件故障引起的;它们是暂时的,且很少发生,很可能是SEU,并且由内存数据的环境破坏所导致。
如果遇到软奇偶校验错误,请分析受影响系统位置最近发生的环境变化。导致软奇偶校验错误的常见ESD和EMI源包括:
- 电源线及电源
- 配电装置
- 通用电源
- 照明系统
- 发电机
- 核设施(辐射)
- 太阳耀斑(辐射)
硬错误
其它奇偶校验错误是由存储器硬件的物理故障或用于读取和写入存储器单元的电路引起的。
硬件制造商会采取各种措施来预防和测试硬件缺陷。然而,缺陷还是有可能存在的。例如,如果用于存储数据位的任何存储单元格式不正确,它们可能无法容纳电荷,或者更容易受到环境条件的影响。
类似地,虽然存储器本身可以正常工作,但是对用于读取和写入存储器单元的电路的任何物理或电损坏也可能导致数据位在传输期间发生改变,从而导致奇偶校验错误。
称为硬奇偶校验错误,这些事件通常非常频繁和重复,并且每当使用受影响的内存或电路时都会发生。准确的频率取决于故障程度和使用损坏设备的频率。
请记住,硬奇偶校验错误是硬件故障导致的,只要使用受影响的组件,就会再次出现硬奇偶校验错误。
如果遇到硬奇偶校验错误,请分析受影响系统位置发生的物理更改。导致硬奇偶校验错误的常见硬件故障源包括:
- 电源浪涌(无接地)
- ESD
- 过热或冷却
- 安装不正确或不完整
- 组件不兼容
- 制造缺陷
常见错误消息
Cisco IOS®软件提供多种奇偶校验错误消息,这些消息因受影响的组件及其对系统的相对影响而异。
处理器
|
检测到缓存错误! CP0_CAUSE(reg 13/0):0x00000400 CPO_ECC(reg 26/0):0x000000B3 CPO_BUSERRDPA(注册号26/1):0x000000B3 CPO_CACHERI(REG 27/0):0x20000000
检测到实际缓存错误。 系统可以暂停。
Error:主安装缓存,字段: 数据 , 实际物理地址0x00000000, 虚拟地址不准确。
不精确的数据奇偶校验错误
|
|
说明
|
这是多层交换功能卡3(MSFC3)的路由处理器(RP)或交换机处理器(SP)CPU使用的2级(L2)缓存(静态随机访问内存或SRAM)中的奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请申请退货许可(RMA)以更换Supervisor引擎,并标记设备故障分析(EFA)模块。
|
|
%SYSTEM_CONTROLLER-3-ERROR:Error condition detected:SYSAD_PARITY_ERROR
|
|
说明
|
这是MSFC3的带内控制器(IBC)使用的系统地址(数据总线)中奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以更换Supervisor引擎,并标记模块以执行EFA。
|
|
%SYSTEM_CONTROLLER-3-ERROR:Error condition detected:TM_DATA_PARITY_ERROR
|
|
说明
|
这是MSFC3的IBC使用的表管理器数据中出现奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以更换Supervisor引擎,并标记模块以执行EFA。
|
|
%SYSTEM_CONTROLLER-3-ERROR:Error condition detected:TM_NPP_PARITY_ERROR
|
|
说明
|
这是MSFC3的IBC使用的表管理器“下一页指针”中出现奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以替换Supervisor引擎,并标记EFA模块。在12.1(8)E和12.2(33)SXI3之间的Cisco IOS软件版本中,响应SYSTEM_CONTROLLER-3-ERROR事件的默认行为是重置IBC并记录错误消息。但是,此纠正操作导致某些已记录的IBC(因而导致CPU)无法再传输或接收数据。因此,在12.2(33)SXI4以上的Cisco IOS软件版本中更改了行为,以记录错误消息并重置系统;请参阅Cisco Bug ID CSCtf51541。
|
|
中断异常,CPU信号20,PC = 0x[dec]
|
|
说明
|
这是Cisco Catalyst 6700系列模块使用的CPU二级缓存(SRAM)中出现一位奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以更换6700模块,并标记EFA模块。
在早于12.2(33)SXI5的Cisco IOS软件版本中,软件Bug(Cisco Bug ID CSCtj06411)甚至会导致单比特奇偶校验错误以重置6700模块。在Supervisor引擎720的12.2(33)SXI6和12.2(33)SXJ版本以及Supervisor引擎2T的15.0SY版本中已解决了此问题。
|
RAM
|
%SYSTEM_CONTROLLER-3-ERROR:Error condition detected:SYSDRAM_PARITY_ERROR
|
|
说明
|
这是由MSFC3使用的同步DRAM(SDRAM)内存模块(DIMM)中出现不可纠正的奇偶校验错误造成的。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果经常发生错误,请清洁并重新拔插DIMM,然后继续监控。如果错误仍然存在,请请求RMA以更换或升级DIMM。
|
|
%SYSTEM_CONTROLLER-3-COR_MEM_ERR:可更正的DRAM内存错误。计数[dec],记录[hex]
|
|
说明
|
这是MSFC3使用的SDRAM(DIMM)中可纠正的奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果经常发生错误,请清洁并重新拔插DIMM,然后继续监控。如果错误仍然存在,请请求RMA以更换或升级DIMM。
|
|
%MWAM-DFC[dec]-0-CORRECTABLE_ECC_ERR:出现可更正的ECC错误,A_BUS_L2_ERRORS:0x10000、A_BUS_MEMIO_ERRORS:0x0、A_SCD_BUS_ERR_STATUS:0x80983000
|
|
说明
|
这是6700系列模块使用的DRAM中一位奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果经常发生错误,请清洁并重新拔插DIMM,然后继续监控。如果错误仍然存在,请请求RMA以更换或升级DIMM。
|
|
%PM_SCP-SP-2-LCP_FW_ERR_INFORM:模块[dec]遇到此错误:在Coil #[dec]上检测到LTL奇偶校验错误。
|
|
说明
|
这是Cisco Catalyst 6100和Cisco Catalyst 6300系列模块使用的SRAM中的奇偶校验错误所导致的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以更换6100或6300模块,并标记该模块以执行EFA。
|
|
%SYS-4-SYS_LCPERR4:Module [dec]:在线圈#[dec]上检测到LTL奇偶校验错误
|
|
说明
|
这是6100和6300系列模块使用的SRAM中的奇偶校验错误造成的。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以更换6100或6300模块,并标记该模块以执行EFA。
|
ASIC
|
%PM_SCP-SP-2-LCP_FW_ERR_INFORM:模块[dec]遇到此错误:在端口[dec]上检测到端口ASIC([name])数据包缓冲区故障
|
|
说明
|
这是Cisco Catalyst 6148A系列以太网模块使用的端口ASIC数据包缓冲区(SRAM)中的奇偶校验错误的结果。
|
|
建议
|
定期监视系统以便重现。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以更换6148A模块,并标记EFA模块。
|
|
%LTL-SP-2-LTL_PARITY_CHECK:0x[hex]的LTL奇偶校验检查
|
|
说明
|
这是Catalyst 6100-6500和6700系列模块使用的端口ASIC端口索引表(SRAM)中的奇偶校验错误的结果。
|
|
建议
|
定期监视系统以备再次发生。如果未观察到其他事件,则为软错误。如果错误频繁发生,请请求RMA以替换模块,并标记EFA模块。
|
有关错误消息的综合列表,请参阅以下Cisco IOS软件文档:
命令输出解释程序工具(仅限注册用户)支持某些 show 命令。使用输出解释器工具来查看 show 命令输出的分析。
最新进展
奇偶校验错误领域的研究正在进行,并非每个场景都可以解决,但Cisco Catalyst 6500硬件和软件开发组织继续引入新的方法(如纠错码(ECC)保护),以最大限度地减少并缓解奇偶校验错误的发生。
虽然本文档从讨论Catalyst 6500产品的第三代(WS-XSUP720和6700早期系列)开始,但本节总结了第四代(VS-S720-10G和更高版本6700系列)和第五代(VS-SUP2T-10G和6900系列)引入的改进。
处理器
VS-S720-10G模块采用较新的MSFC3子板,具有新的IBC和更新的SR7010A精简指令集计算(RISC)RP和SP CPU,各自以600Mhz运行。第1级(L1)、第2级和第3级(L3)缓存能够检测奇偶校验。较新的IBC具有上一代的所有功能,并为连接的SRAM添加了ECC保护(单比特校正、多位检测)。
6700系列模块支持具有ECC保护的L2缓存的CPU(L1缓存支持奇偶校验检测),可纠正单比特奇偶校验错误,而无需重置。但是,由于Cisco Bug ID CSCsz39222,如果出现单位CPU缓存奇偶校验错误,Cisco IOS软件(Supervisor引擎720)的12.2SXI版本会重置模块。在Cisco IOS软件版本12.2SXJ(Supervisor引擎720)和15.0SY(Supervisor引擎2T)中已解决此问题。
VS-SUP2T-10G采用带集成IBC的全新MSFC5子板和新的单双核MPC8572 PPC RP CPU(具有ECC保护的L2和L3缓存,L1缓存支持奇偶校验检测),每个内核的运行速度为1.5Ghz。它还提供一个新的独立带外连接管理处理器(CMP)CPU和ECC保护的DRAM,即使RP CPU当前不可用,DRAM仍可用。
新的IBC具有早期版本的所有功能,并支持对连接的SRAM进行ECC保护,并改进奇偶校验错误处理。新的MSFC5还具有板载故障记录(OBFL)ROM,它存储所有模块初始化和诊断事件。新的单CPU设计还降低了奇偶校验错误事件的统计可能性。
6900系列模块支持具有受ECC保护的L1和L2缓存的较新CPU,能够纠正单比特奇偶校验错误,而无需重置。新一代支持同一IBC,并且已经融入了单比特奇偶校验纠错的软件处理。
RAM
带MSFC3的VS-S720-10G采用双数据速率(DDR)SDRAM,具有ECC保护,工作频率为266Mhz。
6700系列模块支持带ECC保护的DDR SDRAM,工作频率为266Mhz。
与单数据速率(SDR)SDRAM相比,DDR SDRAM接口通过更严格地控制电子数据和时钟信号的定时来实现更高的传输速率。DDR接口使用双抽运(时钟信号的上升沿和下降沿上的数据传输)来降低时钟频率。较低的时钟频率降低了将内存连接到控制器的电路板上的信号完整性要求。
带MSFC5的VS-SUP2T-10G具有带ECC保护的DDR3 SDRAM,工作频率为667Mhz。
6900系列模块支持带ECC保护的DDR3 SDRAM,工作频率为667Mhz。
DDR3 SDRAM的主要优势在于能够以两倍速率(八倍于其内存阵列速度)传输数据,从而实现更高的带宽或峰值数据速率。尽管DDR3内存使用与DDR和DDR2相同的电信号标准,其功耗也降低了30%。
ASIC
带PFC3C的VS-S720-10G具有带ECC保护的SRAM数据包缓冲区。这提供了不重置模块的单位奇偶校验纠错,以及多位奇偶校验错误检测。
带DFC3C的6700系列具有带ECC保护的SRAM数据包缓冲区。这提供了不重置模块的单位奇偶校验纠错,以及多位奇偶校验错误检测。
带PFC4的VS-SUP2T-10G具有带ECC保护的SRAM数据包缓冲区。这提供了不重置模块的单位奇偶校验纠错,以及多位奇偶校验错误检测。
带DFC4的6900系列具有带ECC保护的SRAM数据包缓冲区。这提供了不重置模块的单位奇偶校验纠错,以及多位奇偶校验错误检测。
软件
Cisco IOS软件旨在支持ECC保护。如果支持ECC保护的硬件组件经历了SEU,代码可以纠正损坏的数据或重置受影响的组件,并且不需要对受影响的模块进行完全硬件重置。
但是,在Cisco IOS软件的早期版本中,有一些例外情况是行为被有意更改或由于软件Bug而发生故障。以下是两个值得注意的例外。
MSFC IBC重置
在12.1(8)E和12.2(33)SXI3之间的Cisco IOS软件版本中,响应SEU SYSTEM_CONTROLLER-3-ERROR事件的默认行为是重置IBC并记录错误消息。但是,此纠正措施导致一些已记录的IBC(以及CPU)不能再传输或接收数据的案例。
因此,在12.2(33)SXI4(Cisco Bug ID CSCtf51541)版本之后,行为发生了更改,以记录错误消息并重置系统。虽然这种反应可能看起来更严重,但与无反应系统相比,最好重置系统和更正内存结构。
目前正在开发的一项功能(Cisco bug ID CSCtr89859)添加了一个新的命令行界面(CLI)命令,该命令可用于切换默认行为。此增强功能最适用于使用单个Supervisor,因此没有任何Supervisor冗余的系统。
6700系列“单比特奇偶校验错误”重置
在早于12.2(33)SXI5的Cisco IOS软件版本中,软件Bug(Cisco Bug ID CSCtj06411)甚至会导致单比特奇偶校验错误以重置6700模块。这通常是一个可纠正的奇偶校验错误,不需要重置模块。
在Supervisor引擎720的12.2(33)SXI6+和12.2SXJ版本以及Supervisor引擎2T的15.0SY版本中已解决了此Bug。升级到适当的版本后,6700模块仅记录错误消息并继续运行。
建议
此时,您可能已经确定您遇到了软奇偶校验错误还是硬奇偶校验错误。虽然这可以解决单个事件,但其他奇偶校验错误漏洞仍可能存在,因此您可以对整个网络采取更全面的方法。
因此,思科和Catalyst 6500业务部门建议您审核这些缓解程序并采取适当的纠正措施以消除或减少将来的奇偶校验错误。
软错误(SEU)
单事件(软)奇偶校验错误由环境条件引起,仅出现一次(SEU)或极少发生,如每月或每年。虽然您不需要更换硬件,但确实希望减少将来发生的情况。
这些最佳实践显着降低了软奇偶校验错误的可能性。
环境审计
思科建议您对受影响的网络位置执行环境审计。您可以亲自执行此审计,也可以与思科代表协调、与思科团队(如思科高级服务)协调,或通过第三方顾问执行。
环境审计的确切覆盖范围和复杂性取决于许多不同的变量,如地理位置、建筑和房间大小和设计、电气设计和布局以及其他相关因素。
考虑您的网络中或网络周围可能存在ESD和EMI的环境来源。以下是可能导致软奇偶校验错误的常见干扰源:
- 电源线及电源
- 配电装置
- 通用电源
- 照明系统
- 发电机
- 核设施(辐射)
- 太阳耀斑(辐射)
机箱位置
如果配电装置、发电机或照明系统离机箱太近,或者机箱上或机箱旁有多根电源线,则可能会发生SEU。
在Catalyst 6500机箱与这些电源和磁源之间提供足够距离非常重要。建议的距离因组件而异,可从组件产品手册中获取。
一般而言,思科建议您确定系统的位置,使其与常见的电磁干扰源至少相隔3到6英寸。电源线可以尽可能向下敷设并远离机箱,并且无法在机箱上方或旁边以紧密包装的捆绑包或大量敷设。
接地
电源波动和电源浪涌相对常见,Catalyst 6500电源设计用于适应电压电流的微小变化。
但是,为机箱和机架提供正确的电接地,以便从系统抽取多余的电压,这一点至关重要。如果没有适当的接地,电源浪涌可能导致各种ASIC和内存组件损坏或故障。有关详细信息,请参阅Catalyst 6500系列交换机安装指南,安装交换机,建立系统接地。
ESD
ESD很容易损坏关键组件,而不会造成任何明显损害。适当的预防措施可以纳入实验室操作政策中,但是由于权宜之计和监督的有限性,这些措施经常而且令人遗憾地被忽视。
思科建议您的实验室操作管理团队与思科系统团队一起对所有网络区域执行环境审计,或者至少对出现硬件故障或被指定为关键任务的所有区域执行环境审计。审计完成后,思科建议您对所有新安装的系统实施标准化的环境检查表,以避免将来发生SEU奇偶校验事件。
最新固件(Rommon)
Catalyst硬件组件使用固件(也称为Rommon)代码初始化、通信和运行诊断。完成这些功能后,系统操作将转到Cisco IOS软件。出现固件问题的情况并不常见,但如果您为管理引擎和模块使用不同版本的固件代码,则可能会出现问题。
因此,最佳实践是确保所有组件使用最新的固件代码,以确保正确的模块初始化和通信。思科建议您的运营管理执行网络审核,并升级所有具有最新固件版本的硬件组件。
有关已知固件问题和升级过程的说明,请参阅:
从思科网站下载最新的固件版本:
拇指螺钉
所有模块化网络系统都设计为通过一组物理接口引脚插入机箱背板。机箱背板本身实质上是一系列互连电线。每个机箱插槽中的引脚形成管理引擎和以太网模块之间的物理数据连接。因此,正确插入和对准这些引脚至关重要。
Catalyst 6500提供有助于在机箱中安装的导轨和定位销。插槽引脚(插座)和模块连接器设计用于轻松接合,并提供高带宽的电连接。插入机箱后,模块两侧都有拇指螺钉,可与背板引脚完全接合。请参阅Catalyst 6500系列交换机模块安装说明。
如果已将模块正确插入插槽并已正确拧紧拇指螺钉,则预计不会出现通信问题。但是,模块日常插入中可能会出现以下几种情况,可能导致不正确甚至不完整的引脚插入:
- 插入力不足 — 如果模块在未使用拇指螺钉的情况下部分插入,可能会导致总线停止,并且模块无法与其他模块通信。根据插入级别(例如,如果存在有限的物理接触),模块可以传输和接收数据,但可能会遇到导致损坏数据包的比特错误。
- 垂直失准 — 当只有模块的一面位于导轨上时,会发生此情况。这很容易识别,因为模块在对角线出现,并且通常不与背板引脚连接。
- 水平未对齐 — 如果仅在一侧使用拇指螺钉,则某些针脚不能正确接合。这是一个常见问题,因为模块可能看起来已正确插入。水平不对准实际上是插入力不足的一种形式。
思科建议您实施操作管理流程,强制在生产环境中的所有Catalyst 6500模块上使用翼形螺钉。这可确保正确和完全地插入和对准背板引脚,并防止将来由于比特错误和相关通信故障而导致的故障。
硬错误(故障)
频繁或重复的(硬)奇偶校验错误是由用于读写的存储器或电路物理故障造成的。在这种情况下,请更换硬件并请求思科技术支持中心(TAC)或您的思科系统工程师对返回的硬件执行EFA。
这些最佳实践显着降低了硬奇偶校验错误的可能性。
硬件(MTBF和EOL)审核
Cisco建议您对受影响的网络位置执行网络审计。您可以亲自执行此审计,也可以与思科代表协调、与思科团队(如思科高级服务)协调,或通过第三方顾问执行。
所有硬件(来自所有供应商)都可能最终导致物理完整性降低,因此必须跟踪网络中所有硬件组件的生命周期,以便充分了解随着时间的推移组件出现故障的可能性。
硬件可靠性可通过平均无故障时间(MTBF)框架来衡量。由于MTBF只是一个统计平均值,这并不意味着故障肯定可以在MTBF时间段结束时发生。但是,组件故障的可能性和漏洞会增加,因此可以标记此类硬件以进行更新。有关每个Catalyst 6500产品的特定MTBF值,请参阅Cisco Catalyst 6500系列交换机产品手册。
汇总计算的Catalyst 6500系统级MTBF值大于7年。
除MTBF框架外,思科还提供寿命终止(EOL)框架,该框架定义了给定产品的预期生命周期,并提供适用的公告,以帮助您更新旧设备。有关各种传统Catalyst 6500产品,请参阅生命周期终止和销售终止通知。
通过此次硬件审核,思科建议您实施自己的MTBF和EOL流程,以识别和跟踪硬件,以便进行潜在的更新。这可确保最新的硬件正在运行,并将硬件故障的可能性降至最低。
硬件诊断
Catalyst 6500系列和Cisco IOS软件为系统中使用的所有硬件组件提供通用在线诊断(GOLD)和运行状况监控(HM)诊断。可启用的两种基本诊断类型是按需和启动。有关详细信息,请参阅Cisco Catalyst 6500系列交换机的通用在线诊断。
Cisco建议为所有硬件组件启用完整的启动诊断,以确保执行所有诊断测试,并确认所有硬件组件在启动时均按预期运行。
思科还建议您安排每天或每周定期对关键基础设施组件进行按需诊断。除了仅在初始化期间发生的启动诊断之外,按需诊断还可确保硬件继续按预期运行。有关详细信息,请参阅Catalyst 6500版本12.2SX软件配置指南、接口和硬件组件、在线诊断。
除了默认的按需诊断测试,思科建议您启用这些按需诊断测试,以便主动识别可能故障的内存组件:
- TestLinecardMemory
- TestAsicMemory
相关信息