用于检测具有宽端口的存储子系统中电缆长度的设备和方法

文档序号:6477870阅读:182来源:国知局
专利名称:用于检测具有宽端口的存储子系统中电缆长度的设备和方法
技术领域
本申请总体上涉及改进的数据处理系统和方法。更具体地说,本申请涉及用于检 测具有宽端口的存储子系统中电缆长度的设备和方法。
背景技术
在存储网络系统中,高速串行差分接口被用于互连多个存储部件。例如,在来自 IBM公司的BiadeGenter 产品中,串行连接SCSI(SAS)交换机可以被用于将刀片服务器 互连到诸如典型存储机箱的外部存储器。可以经由内部高速结构将刀片服务器直接连接到 SAS交换机。SAS交换机经由外部SAS电缆被连接到外部存储器。通常,需要多个电缆长度,用于从SAS交换机连接在不同距离处的存储器。第一 BladeCenter 存储产品的最初版本可以要求诸如3米的“短”电缆和诸如Ii米的“长” 电缆。不久之后,存储产品可能会要求诸如20米的更长的电缆。随着数据速率中高速接口的增长,需要选择性地调整发射机/接收机特性,诸如 预加重和去加重。由于显著不同的电缆长度,难于优化短和长电缆的高速接口。因此,需要 确定连接到SAS交换机的每个端口的电缆长度。此外,可能发生其中短电缆被不经意地或 者可能故意地由长电缆代替的某些场景。为了适应通过统计上预先规划的布线过程或通过在顾客位置动态交换电缆创建 的不同电缆长度,需要动态地确定SAS交换机和外部存储器之间的电缆长度。现有技术已 经建议和实现了多种方法。例如,某些光纤通道电缆实现包括电缆长度信息的嵌入VPD (重 要产品数据)电路。这已经仅仅利用电缆使用小形状因子可插入(SFP)连接实现。不管电 缆是光学的还是铜的,仍需使用仅仅经由嵌入在高速电缆内的某种带外接口可访问的某种 类型的电缆VPD实现必要的电缆长度信息。此外,最近的SAS布线技术使用“宽”端口的概念。宽端口由多个通道或物理收发 机元件(PHY)组成。今天,SFP被设计用于单个端口。为光学端口提供宽SFP是不现实的。 例如,4个宽端口将需要4个激光发射机和4个接收机。更有可能使用宽SFP用于铜缆布线, 但是将需要非常大的成本增加。应该注意,不论是光学的还是铜的SFP都需要带外接口,这 些是至今没有标准化或实现的。高速串行接口的通常接受的比特误码率(BER)是1X10_12 (被传送的每IO12比特 发生一个错误)。可能影响高速信令的一些情况包括由沿传输路径的不期望的电连接断开、 高速驱动器/接收机电路缺陷导致的阻抗变化,由弯曲或损坏的连接器管脚导致的不合适 的配合接触,由机械或安装问题导致的不完整的连接器配合以及相邻信号路径之间的信号 耦合。在性能范围内测试单个部件,但是容差构造可能导致超出标称设计目标的衰减。通 常,通过制造过程控制和非100%测试保证性能参数。因此,会遭遇单独的缺陷。理想地,由互连和子系统制造商测试和验证所有上述问题。然而,通常不是 这样的,并且这种缺陷被引入到最终系统集成过程中。可以充分地测试所有低速电路(<lGHz)。必须仔细地验证高速电路。常规技术是使用电缆回绕高速接口,或者回绕子系 统外部的路径;然而,当系统集成时,这没有覆盖实际的接口连接。当子系统部件被集成到系统中时,与标称情形的参数变化可能导致高速接口上的 通信故障。恶化因素可能包括顾客数据模式、印刷电路变化和寄生、连接器寄生、电缆长度 或电缆断开和系统环境。当检测到通信故障时,系统可尝试重新发送数据或可能使用纠错 方案。实现传输恢复的代价可能表现为性能损失。可以以比特误码率(BER)衡量性能退化。

发明内容
因此,本发明在第一方面提供了一种用于在计算装置中检测电缆长度的方法,该方法包括在计算装置中设置至少一个发射机参数和至少一个接收机参数并且记录误码 率;调整至少一个发射机参数和至少一个接收机参数并且记录误码率,直到所述至少一个 发射机参数和至少一个接收机参数从最小值变为最大值;比较所记录的误码率和针对已知 电缆长度的误码率;并基于比较结果确定电缆长度。该方法还可包括在终端装置处配置发射机/接收机对,用于诊断回送。优选地,计算装置是串行连接SCSI交换机模块。优选地,串行连接SCSI交换机模块包括交换机处理器。优选地,串行连接SCSI交换机模块包括数据处理器。优选地,数据处理器包括循环冗余检验模块、模式发生器/检验模块、数据缓冲 器、包控制器或协议控制器中的至少一个。优选地,串行连接SCSI交换机模块包括串行连接SCSI交换机。优选地,终端装置是串行连接SCSI终端装置。优选地,误码率是比特误码率。优选地,至少一个发射机参数包括发射机幅值。优选地,至少一个接收机参数包括接收机均衡。在一个实施例中,可以提供用于在计算装置中检测电缆长度的方法,该方法包括 在计算装置中设置至少一个发射机参数和至少一个接收机参数并且记录误码率;调整所述 至少一个发射机参数和至少一个接收机参数并且记录误码率,直到所述至少一个发射机参 数和至少一个接收机参数从最小值变为最大值;比较所记录的误码率和针对已知电缆长度 的误码率;并基于比较结果确定电缆长度,其中所述计算装置包括多个发射机/接收机对, 并且通过宽端口电缆连接到终端装置。优选地,设置至少一个发射机参数和至少一个接收机参数并且记录误码率包括在 多个发射机/接收机对内建立命令发射机/接收机对,用于宽端口电缆上的通信。优选地,终端装置包括多个发射机/接收机对,该方法还包括使用命令发射机/ 接收机对来配置终端装置处的用于诊断回送的多个发射机/接收机对内的下一个发射机/ 接收机对。优选地,调整至少一个发射机参数和至少一个接收机参数包括重复地调整用于下 一个发射机/接收机对的至少一个发射机参数和至少一个接收机参数,直到多个发射机/ 接收机对内所有发射机/接收机对的至少一个发射机参数和至少一个接收机参数从最小 值变为最大值。
优选地,重复地调整至少一个发射机参数和至少一个接收机参数包括将发射机 参数设置为最小值;将接收机参数设置为标称值;计算误码率;记录计算出的误码率;以及 重复地递增发射机参数,计算误码率,并记录计算出的误码率,直到发射机参数达到最大 值。优选地,重复地调整至少一个发射机参数和至少一个接收机参数还包括将发射 机参数设置为标称值;将接收机参数设置为最小值;计算误码率;记录计算出的误码率;以 及重复地递增接收机参数,计算误码率,并记录计算出的误码率,直到接收机参数达到最大
值。该方法还可以包括对于多个发射机/接收机对的误码率求平均。优选地,至少一个发射机参数包括发射机幅值。优选地,至少一个接收机参数包括接收机均衡。在第二方面中,提供了一种设备,包括至少一个发射机/接收机对;以及处理器, 其中该处理器被配置为在计算装置中设置至少一个发射机参数和至少一个接收机参数并 记录误码率;调整至少一个发射机参数和至少一个接收机参数并记录误码率,直到至少一 个发射机参数和至少一个接收机参数从最小值变为最大值;比较所记录的误码率和针对已 知电缆长度的误码率;并且基于比较结果确定电缆长度。优选地,计算装置是通过外部电缆连接到终端装置的交换机模块。优选地,在终端装置处的发射机/接收机对被配置为用于诊断回送。优选地,至少一个发射机/接收机对包括多个发射机/接收机对,并且是通过宽端 口电缆连接到终端装置的交换机模块。优选地,设置至少一个发射机参数和至少一个接收机参数并记录误码率包括在多 个发射机/接收机对内建立命令发射机/接收机对,用于宽端口电缆上的通信。优选地,终端装置包括多个发射机/接收机对,其中处理器被配置为使用命令发 射机/接收机对来配置终端装置处的用于诊断回送的多个发射机/接收机对内的下一个发 射机/接收机对。优选地,调整至少一个发射机参数和至少一个接收机参数包括重复地调整用于下 一个发射机/接收机对的至少一个发射机参数和至少一个接收机参数,直到多个发射机/ 接收机对内的所有发射机/接收机对的至少一个发射机参数和至少一个接收机参数从最 小值变为最大值。优选地,重复地调整至少一个发射机参数和至少一个接收机参数包括将发射机 参数设置为最小值;将接收机参数设置为标称值;计算误码率;记录计算出的误码率;以及 重复地递增发射机参数,计算误码率,并且记录计算的误码率,直到发射机参数达到最大 值。优选地,重复地调整至少一个发射机参数和至少一个接收机参数还包括将发射 机参数设置为标称值;将接收机参数设置为最小值;计算误码率;记录计算出的误码率;以 及重复地递增接收机参数,计算误码率,并且记录计算出的误码率,直到接收机参数达到最 大值。优选地,比较所记录的误码率和针对已知电缆长度的误码率包括对于多个发射 机/接收机对的所记录的误码率求平均。
示例性的实施例认识到了现有技术中的缺点,并且提供了一种用于检测具有宽端 口的存储子系统中电缆长度的机制和过程。该机制可以使用现场双向电缆回绕用于确定不 同的电缆长度。对于每个外部端口和甚至对于每个在宽端口内的PHY,该机制将发射机输出 的限度下降到故障。基于从“好”回绕到“坏”回绕的转变点,可以确定电缆长度。这假设 存在固定数量的预定电缆长度,诸如“长”和“短”。转变点识别电缆是长的还是短的,在转 变点,可以据此设置最优调谐参数。示例性的实施例还提供了一种机制以校准高速发射机/接收机对特性,并且从而 优化子系统之间的传输性能。该机制减轻了对于频繁纠错的需要,并且没有招致与纠错技 术相关联的性能退化。在一个示例性实施例中,计算机程序产品包括具有计算机可读程序的计算机可用 介质。当在计算装置上执行计算机可读程序时,使得计算装置在计算装置中设置至少一个 发射机参数和至少一个接收机参数并记录误码率,调整至少一个发射机参数和至少一个接 收机参数并记录误码率,直到至少一个发射机参数和至少一个接收机参数从最小值变为最 大值,比较记录的误码率和已知电缆长度的误码率;以及基于比较确定电缆长度。在一个示例性实施例中,计算装置是通过外部电缆连接到终端装置的交换机模 块。在另一个示例性实施例中,在终端装置处的发射机/接收机对被配置为用于诊断回送。在另一个示例性实施例中,计算装置包括多个发射机/接收机对,并且是通过宽 端口电缆连接到终端装置的交换机模块。在另一个实施例中,设置至少一个发射机参数和 至少一个接收机参数并记录误码率包括在多个发射机/接收机对内建立命令发射机/接收 机对,用于宽端口电缆上的通信。在另一个示例性实施例中,终端装置包括多个发射机/接收机对。当在计算装置 上执行计算机可读程序时,还使得计算装置使用命令发射机/接收机对来配置终端装置处 的用于诊断回送的多个发射机/接收机对内的下一个发射机/接收机对。在另一个示例性实施例中,调整至少一个发射机参数和至少一个接收机参数包括 重复地调整用于下一个发射机/接收机对的至少一个发射机参数和至少一个接收机参数, 直到多个发射机/接收机对内所有发射机/接收机对的至少一个发射机参数和至少一个接 收机参数从最小值变为最大值。在另一个示例性实施例中,重复地调整至少一个发射机参数和至少一个接收机参 数包括将发射机参数设置为最小值,将接收机参数设置为标称值,计算误码率,记录计算出 的误码率,以及重复地递增发射机参数,计算误码率并记录计算出的误码率,直到发射机参 数达到最大值。在另一个示例性实施例中,调整至少一个发射机参数和至少一个接收机参数还包 括将发射机参数设置为标称值,将接收机参数设置为最小值,计算误码率,记录计算出的误 码率,以及重复地递增接收机参数、计算误码率并记录计算出的误码率,直到接收机参数达 到最大值。在另一个示例性实施例中,当在计算装置上执行计算机可读程序时,计算机可读 程序还使得计算装置对于多个发射机/接收机对的误码率求平均。在另一个示例性实施例中,计算装置包括至少一个发射机/接收机对和处理器。 该处理器被配置为在计算装置中设置至少一个发射机参数和至少一个接收机参数并记录误码率,调整至少一个发射机参数和至少一个接收机参数并记录误码率,直到至少一个发 射机参数和至少一个接收机参数从最小值变为最大值,比较所记录的误码率和针对已知电 缆长度的误码率,并且基于比较结果确定电缆长度。在一个示例性实施例中,计算装置是通过外部电缆连接到终端装置的交换机模 块。在另一个示例性实施例中,在终端装置处的发射机/接收机对被配置为用于诊断回送。在另一个示例性实施例中,至少一个发射机/接收机对包括多个发射机/接收机 对,并且是通过宽端口电缆连接到终端装置的交换机模块。在另一个示例性实施例中,设置 至少一个发射机参数和至少一个接收机参数并记录误码率包括在多个发射机/接收机对 内建立命令发射机/接收机对,用于宽端口电缆上的通信。在另一个示例性实施例中,终端装置包括多个发射机/接收机对。该处理器被配 置为使用命令发射机/接收机对来配置终端装置处用于诊断回送的多个发射机/接收机对 内的下一个发射机/接收机对。在另一个示例性实施例中,调整至少一个发射机参数和至少一个接收机参数包括 重复地调整用于下一个发射机/接收机的至少一个发射机参数和至少一个接收机参数,直 到多个发射机/接收机对内所有发射机/接收机对的至少一个发射机参数和至少一个接收 机参数从最小值变为最大值。在另一个示例性实施例中,重复地调整至少一个发射机参数和至少一个接收机参 数包括将发射机参数设置为最小值,将接收机参数设置为标称值,计算误码率,记录计算出 的误码率,以及重复地递增发射机参数,计算误码率和记录计算出的误码率,直到发射机参 数达到最大值。在另一个示例性实施例中,重复地调整至少一个发射机参数和至少一个接收机参 数还包括将发射机参数设置为标称值,将接收机参数设置为最小值,计算误码率,记录所计 算的误码率,以及重复地递增接收机参数,计算误码率和记录计算出的误码率,直到接收机 参数达到最大值。在另一个示例性实施例中,比较所记录的误码率和针对已知电缆长度的误码率包括对于多个发射机/接收机对的记录的误码率求平均。对于本领域的技术人员来说,参考本发明的示例性实施例的以下详细描述,本发 明的这些和其它特征和优点将变得明显。


现在将仅仅通过例子的方式,参考附图描述本发明的优选实施例,其中图1A-1C是根据本发明的示例性实施例的存储网络中的窄端口的框图;图2A-2C是根据本发明的示例性实施例的存储网络中的宽端口的框图;图3是示出根据本发明的示例性实施例的用于检测具有宽端口的存储子系统中 电缆长度的机制的操作的流程图;图4是示出其中可以实现示例性实施例的各个方面的示例系统环境的框图;图5是示出其中可以实现示例性实施例的各个方面的子系统接口环境的框图;图6是示出根据本发明的示例性实施例的高速点到点校准过程的框图;图7是示出根据本发明的示例性实施例的点到点校准机制的操作的流程图;和
图8是示出根据本发明的示例性实施例的系统校准的流程图。
具体实施例方式参考附图,图1A-1C是根据一个示例性实施例的存储网络中的窄端口的框图。更 特别地参考图1A,交换机模块110具有处理器112和交换机专用集成电路(ASIC) 114。交 换机ASIC 114具有物理收发机元件(PHY) 116。PHY包括发射机和接收机对。终端装置120 具有处理器122和终端装置ASIC 124。终端装置ASIC 124具有PHY126。PHY 116经由用 于正常数据传输的外部电缆连接到PHY 126。在一个示例性实施例中,交换机模块110可以 是串行连接的SCSI (SAS)交换机模块,且终端装置120可以是SAS终端装置。
现在参考图1B,交换机ASIC 114中的PHY 116和终端装置ASIC124中的PHY 126 被配置为用于在每端处的诊断内部回送。根据示例性实施例,PHY 116和PHY 126具有将 发射机连接到接收机以形成内部回送的能力。图IB示出怎样在外部接口的诊断验证期间 配置SAS网络。在用电缆连接的接口的每端处的SAS装置执行内部回绕以考验每个相应装 置的窄端口。转到图1C,在终端装置ASIC 124中的PHY 126被配置为用于在终端装置处的诊断 回送。PHY 126具有将发射机连接到接收机以形成外部回送的能力。图IC示出提供针对电 缆长度检测机制的基础和针对将在以下详细描述的窄端口的过程的配置。图2A-2C是根据一个示例性实施例的存储网络中的宽端口的框图。更特别地参考 图2A,交换机模块210包括交换机ASIC 220,其具有交换机处理器222、数据处理器224、交 换机226和PHY 0-N212-216。每个PHY包括一个发射机和接收机对。数据处理器224包括 循环冗余检验模块、模式生成器/检验模块、数据缓冲器、包控制器或协议控制器中的至少 一个。终端装置230包括终端装置ASIC 240,其具有目标处理器242、数据处理器244、交换 机246和PHY 0-N232-236。PHY 212-216经由用于正常数据传输的宽端口外部电缆连接到 相应的PHY 232-236。在一个示例性实施例中,交换机模块210可以是串行连接SCSI (SAS) 交换机模块,并且终端装置230可以是SAS终端装置。现在参考图2B,交换机ASIC 220中的PHY 212-216和终端装置ASIC 240中的PHY 232-236被配置为用于在每端处的诊断内部回送。根据示例性实施例,PHY 212-216和PHY 232-236具有将发射机连接接收机以形成内部回送的能力。图2B示出怎样在外部接口的诊 断验证期间配置宽端口 SAS网络。在电缆连接的接口的每端处的SAS装置执行内部回绕以 考查每个相应装置的窄端口。转到图2C,在交换机ASIC 220中的PHY 212和在终端装置ASIC 240中的PHY 232 被配置为用于正常数据传输。在所描述的例子中,PHY 0212是命令PHY。在终端装置ASIC 240中的PHY1-N234-236被配置为用于在终端装置处的诊断回送。图2C示出提供针对电缆 长度检测机制的基础和针对将在以下详细描述的示例性实施例的宽端口的过程的配置。本领域的技术人员应该理解,在图1A-1C和图2A-2C中描述的硬件可以变化。例 如,图1A-1C中的交换机模块110可以包括多于一个的窄端口,图2A-2C中的交换机模块 210可以包括多于一个的宽端口。如本领域技术人员清楚的,可以进行对存储区域网络配置 的其它修改。根据示例性实施例,提供了用于检测具有宽端口的存储子系统中电缆长度的机制和过程。该机制可以使用现场双向电缆回绕,用于确定不同电缆长度。注意到,高速差分接 口通常实现发射机和接收机电路,也已知为并串行转换/串并行转换(SERDES)电路,其允 许调整发射机幅值以及接收机均衡。以下参考图4-8将更加详细地描述用于调整发射机幅 值和接收机均衡的机制和过程。在正常操作期间,期望最优地调谐这些参数以提供最可靠 的系统电气性能。为了确定任何连接电缆的长度,诊断过程被定义为对于每个外部端口甚至对于在 宽端口内的每个PHY将发射机输出的限度下降到并且将接收机的输入失调到接口发生故障的点。基于转变点从“成功”回绕变为“故障”回绕,可以确定电缆长度。这假设存在固定 数量的预定电缆长度,诸如“长”电缆和“短”电缆。转变点可以识别电缆是短的还是长的, 在该点处,可以在正常操作期间据此确定和编程最优调谐参数。图3是示出根据示例性实施例的用于检测具有宽端口的存储子系统中电缆长度 的机制的操作的流程图。应该理解,流程图所示的每个框和流程图中所示的框的组合可以 由计算机程序指令实现。这些计算机程序指令可以被提供给处理器或其它可编程数据处理 设备,以生成机器,使得在处理器或其它可编程数据处理设备上执行的指令创建用于实现 在流程框中指定的功能的装置。这些计算机程序指令也可以被存储在计算机可读存储器或 存储介质上,其可以指令处理器或其它可编程数据处理设备以特定方式工作,使得存储在计算机可读存储器或存储介质中的指令产生包括实现在流程框中指定的功能的指令装置 的产品。因此,流程图所示的框支持用于执行指定功能的装置的组合、用于执行指定功能 的步骤的组合和用于执行指定功能的程序指令装置。还应该理解,流程图所示的每个框和 流程图中所示的框的组合可以由执行指定功能或步骤的专用的基于硬件的计算机系统、或 者由专用硬件和计算机指令的组合实现。此外,提供了流程图以表明在示例性实施例中执行的操作。该流程图没有试图阐 述或暗示关于指定操作或更特别地关于操作顺序的限制。可以修改流程图的操作以适应特 定实施方式。现在参考图3,当连接到宽端口的电缆长度未知时操作开始。该机制调用诊断电缆 回绕例程以配置每端上的PHY用于电缆长度检测(框302)。然后,该机制建立用于在宽端 口上通信的命令PHY (框304)。该机制通过配置PHY将发射机连接到接收机以形成外部回送来回绕在宽端口中 的下一个PHY(框306)。该机制将发射机和接收机参数调整到最小,并且记录误码率(框 308)。然后该机制将发射机和接收机参数调整到下一步并且记录误码率(框310)。该机制 确定是否所有调整均已完成(框312)。如果完成了所有调整,操作返回框310,以将发射机 和接收机参数调整到下一步并且记录误码率。如果在框312完成对于PHY的所有调整,该机制确定是否已经测试了最后的 PHY (框314)。如果还没有测试最后的PHY,操作返回框306以回绕在宽端口中的下一个 PHY。然而,如果已经在框314测试了最后的PHY,该机制比较针对每个PHY所记录的数 据以确定值表(框316)。该机制对已回绕的PHY的数据求平均(框318)。然后该机制基 于已回绕的PHY的平均值来确定电缆长度。此后,操作结束。
在产品测试期间,可以连接多个电缆长度,从而每个指定电缆长度的特征在于当回绕被失调为故障时采集一组数据点。图3示出了特征化数据怎样反映关于最优性能和故 障的数据点的范围。这些特征化值表可以在回绕测试期间使用,以识别连接的是长电缆还 是短电缆,或者其它预定的长度。换句话说,针对已知长度可以记录误码率。然后该机制可 以将来自框308和310的记录值或者来自框318的平均数据与针对已知长度所记录的误码 率进行比较。当特征化宽端口时,存在被测试的多个链接回绕。这提供了多个数据点用于 所连接的电缆的更加颗粒化的长度确定。注意,图3的流程图可以对于针对窄端口电缆的 单个PHY进行操作。根据一个示例性实施例,可以动态地使在高频应用中使用的高速串行接口的限度 超出正常极限以确定最优性能设置。所获得的设置代表针对每个物理路径的系统校准点。 每个系统可以存储针对串行接口连接的相应点到点节点的校准数据。高速差分接口可以由四条导线组成。两条导线差分地用于代表单个信号,诸如发 射信号。类似地,两条导线差分地用于代表第二个信号,诸如接收信号。通过这种方式,实 现了发射和接收信号。根据示例性实施例,提供了一种机制以优化在高速接口上子系统之 间的数据传输的性能。该机制可以以加强通信接口传输功能的方式改变激励的参数和响应机制。然后该 机制可以确定测试下的指定硬件的设计/保护频带限度。然后所得到的信息可以用作针对 指定硬件配置的校准因子。对于高速SAS交换机,该机制可以使用预加重/输入补偿以测试限度。在这种情 况下,焦点是在通信接口上从发射机到接收机的点到点通信。这可以例如覆盖刀片插槽、内 部高速结构和外部布线。在过去,单个校准因子可用于系统或有限的电缆长度组。作为各个点到点校准的 结果,该示例性实施例的机制覆盖了无限数量的电缆长度和路径(可变宽度电缆)。注意到 还可以将该示例性实施例的机制应用到内部化的高速结构,与电缆连接的接口相反。作为 标称参数组的替代,可以针对每条路径优化系统。常常,由于连接上的寄生现象,电缆或路 径的电气长度可能与物理长度不密切相关。该校准机制可以针对物理和电气差别来优化系 统。校准可以应用于每个点到点连接,诸如电缆连接在一起的子系统的相容组。作为 另一个例子,校准可以应用到子系统的变化组,诸如系统重新配置、电缆连接的子系统的附 加或减少,或者由于时间或环境引起的子系统退化。性能校准可以通过上电复位、通知硬件 变化或重新配置或者纠错率增大到设定的极限之上来启动。图4是示出其中可以实现示例性实施例的各个方面的示例系统环境的框图。高速 子系统410经由子系统外部布线连接到高速子系统430。高速子系统410包括PHY和链路 层412,其通过并串行转换/串并行转换(SERDES)电路416连接到发射机/接收机对。高 速子系统410还包括PHY和链路层414,其通过并串行转换/串并行转换(SERDES)电路418 连接到发射机/接收机对。高速子系统410中的发射机/接收机对通过连接器420连接到 子系统外部布线。高速子系统430包括PHY和链路层432,其通过并串行转换/串并行转换 (SERDES)电路436连接到发射机/接收机对。高速子系统430还包括PHY和链路层434, 其通过并串行转换/串并行转换(SERDES)电路438连接到发射机/接收机对。高速子系统430中的发射机/接收机对通过连接器440连接到子系统外部布线。在图4中描述的例子中,高速子系统410中的PHY和链路层412、414以及SERDES 电路416、418代表激励(发射机)452。高速子系统430中的PHY和链路层432、434以及 SERDES电路436、438代表响应(接收器)456。收发机对,连接器420、440和子系统外部布 线代表复杂接口传输功能454。根据示例性实施例,该机制改变激励和响应参数。功能性的 范围确定了针对外部电缆连接子系统的给定组的性能限度。
图5是示出其中可以实现示例性实施例的各个方面的子系统接口环境的框图。主 机系统510包括内部应用处理器512-516,其在内部端口处连接到SAS交换机518。存储子 系统522-526经由高速SAS电缆在外部端口处连接到SAS交换机518。该示例性实施例的 机制可以界定每个点到点连接以找到最优性能设置。然后该机制可以校准为每个点到点连 接所存储的数据。图6是示出根据示例性实施例的高速点到点校准过程的框图。子系统610包括PHY 和链路层612,其经由SERDES 616连接到发射机/接收机对。子系统630包括PHY和链路 层632,其经由SERDES 636连接到发射机/接收机对。通过外部电缆650将子系统610的 发射机/接收机对连接到子系统630的发射机/接收机对。节点到节点连接包括输出发射机、印刷电路板路径、连接器、内部高速结构、外部 电缆和输入接收机。该示例性实施例的校准机制将发射机和接收机参数设置为标称设计值。然后该机制确定针对点到点外部连接的一端(节点A)的发射设定点。该机制在源 交换机处生成自测试模式,并且监视在外部连接的另一端(节点B)处的接收交换机处的期 望的数据。该机制衡量的参数是比特误码率(BER)。在一个示例性实施例中,BER的单位是 每兆接收数据一个错误。然后该校准机制使发射设置的限度从最小(min)变为最大(max) 范围。节点A的发射设定点对应于在接收机,即节点B处达到最大BER的发射设定点。然后该校准机制确定针对点到点外部连接的另一端(节点B)的接收机设定点。该 机制在源交换机处生成自测试模式,并且在接收交换机、即外部连接的节点B处监视期望 的数据。该校准机制使接收机设置的限度从最小变为最大范围。节点B的接收机设定点对 应于在接收机处达到最大BER的接收机设定点。然后该校准机制针对外部电缆节点C和节点D重复以上校准序列。图7是示出根据一个示例性实施例的点到点校准机制的操作的流程图。操作开 始,并且校准机制在发射一侧设定自测试模式(框702)。该校准机制将发射SAS参数设定 为最小值(框704),并将接收SAS参数设定为标称值(框706)。校准机制计算比特误码率(BER)(框708)。然后该机制确定发射参数是否等于最 大值(框710)。如果发射参数不等于最大值,则校准机制递增发射SAS参数(框712),并 且操作返回框708以计算针对递增了的发射参数的BER。随着校准机制使发射SAS参数从 最小值变为最大值,该机制记录针对每个参数值的BER,如在框714中所示的。如果在框710中发射参数等于最大值,则该校准机制计算发射计算值(框716)。 接着,该校准机制将接收SAS参数设定为最小值(框718),并将发射SAS参数设定为标称值 (框 720)。该校准机制计算BER(框722)。然后该机制确定接收参数是否等于最大值(框724)。如果接收参数不等于最大值,则该校准机制递增接收SAS参数(框726),并且操作返 回框722,以计算针对递增的接收参数的BER。随着校准机制使接收SAS参数从最小值变为 最大值,机制记录针对每个参数值的BER,如在框728中所示的。
如果在框724中接收参数等于最大值,则该校准机制计算接收校准值(框730)。 此后,操作结束。图8是示出根据示例性实施例的系统校准的流程图。操作响应于多个启动条件之 一开始,包括上电复位(框802)、系统重新配置(框804)、增加或减少电缆连接的子系统 (框806)或者SAS比特误码率接口退化(框808)。响应于启动条件,该校准机制针对受 影响的高速接口执行点到点校准(框810)。然后,该校准机制更新系统固件内的校准参数 (框812)。此后,完成系统校准(框814),并且操作结束。因此,示例性实施例通过提供一种用于检测具有宽端口的存储子系统中的电缆长 度的机制和过程解决了现有技术的缺点。该机制可以使用现场双向电缆回绕用于确定不同 电缆长度。对于每个外部端口和甚至对于每个在宽端口内的PHY,该机制将发射机输出的限 度下降到故障。基于从“好”回绕到“坏”回绕的转变点,可以确定电缆长度。这假设存在 固定数量的预定电缆长度,诸如“长”和“短”。转变点识别电缆是否是长的还是短的,在转 变点,可以据此设置最优调谐参数示例性的实施例还提供了一种机制以校准高速发射机/接收机对特性,并且从而 优化子系统之间的传输性能。该机制减轻了对于频繁纠错的需要,并且没有招致与纠错技 术相关联的性能退化。应该理解,这些示例性实施例可以采取完全硬件实施例、完全软件实施例或者包 含硬件和软件元素两者的实施例的形式。在一个示例性实施例中,示例性实施例的机制以 软件形式实现,其包括但不限于固件、驻留软件、微代码等。此外,示例性实施例可以采取从提供程序代码的计算机可用或计算机可读介质可 获得的计算机程序产品的形式,用于由计算机或任何指令执行系统使用或者与其联系。为 了描述的目的,所述计算机可用或计算机可读介质可以是能够包含、存储、通信、传播或传 送用于由指令执行系统、设备或装置使用或者与其联系的程序的任何设备。该介质可以是电的、磁的、光的、电磁的、红外的或半导体的系统(或者设备或装 置)或者传播介质。计算机可读介质的例子包括半导体或固态存储器、磁带、可移动计算机 软盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘和光盘。光盘的现有例子包括光盘 只读存储器(CD-ROM)、读/写光盘(CD-R/W)和DVD。适用于存储和/或执行程序代码的数据处理系统将包括通过系统总线直接或间 接耦合到存储元件的至少一个处理器。存储器元件可以包括在程序代码的实际执行期间使 用的本地存储器、大容量存储器和高速缓冲存储器,高速缓冲存储器提供至少某些程序代 码的暂存,以便减少执行期间代码必须从大容量存储器提取的次数。输入/输出或I/O装置(包括但不限于键盘、显示器、指向装置等)可以直接或通 过插入I/O控制器耦合到系统。还可以将网络适配器耦合到系统,使得数据处理系统能够 变为通过介入私有或公共网络耦合到其它数据处理系统或者远程打印机或存储装置。调制 解调器、线缆调制解调器和以太网卡仅仅是网络适配器当前可获得的类型中的几种。
权利要求
一种用于在计算装置中检测电缆长度的方法,所述方法包括在计算装置中设置至少一个发射机参数和至少一个接收机参数并记录误码率;调整至少一个发射机参数和至少一个接收机参数并记录误码率,直到至少一个发射机参数和至少一个接收机参数从最小值变为最大值;比较所记录的误码率和针对已知电缆长度的误码率;以及基于比较结果确定电缆长度。
2.根据权利要求1所述的方法,还包括在终端装置处配置发射机/接收机对,用于诊断回送。
3.根据权利要求1或2所述的方法,其中计算装置包括多个发射机/接收机对,并且通 过宽端口电缆连接到终端装置。
4.根据上述权利要求之一所述的方法,其中调整至少一个发射机参数和至少一个接收 机参数包括重复地调整用于下一个发射机/接收机对的至少一个发射机参数和至少一个 接收机参数,直到多个发射机/接收机对内所有发射机/接收机对的至少一个发射机参数 和至少一个接收机参数从最小值变为最大值。
5.根据权利要求4所述的方法,重复地调整至少一个发射机参数和至少一个接收机参 数包括以下步骤之一将发射机参数设置为最小值;将接收机参数设置为标称值;计算误码率;记录计算出 的误码率;以及重复地递增发射机参数,计算误码率,并记录计算出的误码率,直到发射机 参数达到最大值;或者将发射机参数设置为标称值;将接收机参数设置为最小值;计算误码率;记录计算出 的误码率;以及重复地递增接收机参数,计算误码率,并记录计算出的误码率,直到接收机 参数达到最大值。
6.一种装置,包括至少一个发射机/接收机对;和 处理器,其中所述处理器被配置为在计算装置中设置至少一个发射机参数和至少一个接收机参数并且记录误码率; 调整至少一个发射机参数和至少一个接收机参数并且记录误码率,直到至少一个发射 机参数和至少一个接收机参数从最小值变为最大值;比较所记录的误码率和针对已知电缆长度的误码率;以及 基于比较结果确定电缆长度。
7.根据权利要求6所述的装置,其中至少一个发射机/接收机对包括多个发射机/接 收机对,并且所述装置是通过宽端口电缆连接到终端装置的交换机模块。
8.根据权利要求6或7所述的装置,其中调整至少一个发射机参数和至少一个接收机 参数包括重复地调整用于下一个发射机/接收机对的至少一个发射机参数和至少一个接 收机参数,直到多个发射机/接收机对内所有发射机/接收机对的至少一个发射机参数和 至少一个接收机参数从最小值变为最大值。
9.根据权利要求8所述的装置,其中重复地调整至少一个发射机参数和至少一个接收 机参数包括以下步骤之一将发射机参数设置为最小值;将接收机参数设置为标称值;计算误码率;记录计算出的误码率;以及重复地递增发射机参数,计算误码率,并记录计算出的误码率,直到发射机 参数达到最大值;或者将发射机参数设置为标称值;将接收机参数设置为最小值;计算误码率;记录计算出 的误码率;以及重复地递增接收机参数,计算误码率,并且记录计算出的误码率,直到接收 机参数达到最大值。
10.根据权利要求9所述的装置,其中比较所记录的误码率和已知电缆长度的误码率 包括对于多个发射机/接收机对的所记录的误码率求平均。
全文摘要
检测具有宽端口的存储子系统中电缆长度的机制。该机制使用现场双向电缆回绕用于确定不同的电缆长度。对于每个外部端口和甚至对于每个在宽端口内的PHY,该机制将发射机输出的限度下降到故障。基于从“好”回绕到“坏”回绕的转变点,可以确定电缆长度。转变点识别电缆是否是长的还是或短的,在转变点,可以据此设置最优调谐参数。一种校准机制校准高速发射机/接收机对特性,并且从而优化子系统之间的传输性能。该校准机制减轻了对于频繁纠错的需要,并且没有招致与纠错技术相关联的性能退化。
文档编号G06F13/40GK101802799SQ200880025588
公开日2010年8月11日 申请日期2008年6月18日 优先权日2007年7月26日
发明者B·J·卡格诺, G·S·卢卡斯, T·S·特鲁曼 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1