CN103384204B - 串行并行转换电路故障的处理方法及装置 - Google Patents

串行并行转换电路故障的处理方法及装置 Download PDF

Info

Publication number
CN103384204B
CN103384204B CN201110459903.2A CN201110459903A CN103384204B CN 103384204 B CN103384204 B CN 103384204B CN 201110459903 A CN201110459903 A CN 201110459903A CN 103384204 B CN103384204 B CN 103384204B
Authority
CN
China
Prior art keywords
conversion circuit
numbering
concurrent conversion
serial concurrent
serial
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110459903.2A
Other languages
English (en)
Other versions
CN103384204A (zh
Inventor
杜阁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Huawei Technology Co Ltd
Original Assignee
Huawei Symantec Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN201110459903.2A priority Critical patent/CN103384204B/zh
Priority to PCT/CN2012/086477 priority patent/WO2013097604A1/zh
Publication of CN103384204A publication Critical patent/CN103384204A/zh
Application granted granted Critical
Publication of CN103384204B publication Critical patent/CN103384204B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明公开了一种串行并行转换电路故障的处理方法及装置,该方法能够根据PCIe设备上报的错误报告确定出现故障的串行并行转换电路的Lane编号,并根据所述Lane编号确定处于正常状态的串行并行转换电路第一集合及第二集合,再根据所述第一集合和所述第二集合中串行并行转换电路个数的多少,进行不同原则的链路协商,以保证所述PCIe设备上任意一个或多个串行并行转换电路出现故障的情况下,都能够达到重新协商链路的最优效果。通过本发明实施例公开的串行并行转换电路的故障处理方法及装置,大大减小了在重新进行链路协商时,来自于出现故障的串行并行转换电路编号的限制,使得重新协商后的链路宽度能够达到最佳宽度。

Description

串行并行转换电路故障的处理方法及装置
技术领域
本发明涉及数据传输技术领域,更具体的说,是涉及一种串行并行转换电路故障的处理方法及装置。
背景技术
目前,在数据传输技术领域中,PCIE(PeripheralComponentInterconnectExpress外设部件互连标准扩展)已得到了广泛的应用,其应用于系统中时,都是以点对点的形式进行数据的传输。在系统中,两个PCIE设备间能够通过1条或多条串行并行转换电路根据协商的速率来进行数据传输。此处的多条为2、4、8或16条,这些串行并行转换电路采用由小到大不同的编号来表示;协商的速率分为GEN1(2.5Gb/T)、GEN2(5.0Gb/T)和GEN3(8.0Gb/T)三种,分别表示了1条串行并行转换电路在1秒钟内能够传输的数据容量。那么,两个PCIE设备间数据传输的带宽(W)就等于串行并行转换电路的数量(N)和协商的速率(S)的乘积,即带宽公式W=N×S。
通常来说,一个设备支持协商的最大速率(S)是固定的,在这种情况下,为了满足用户对通信带宽(W)越来越高的要求,就只能通过提高串行并行转换电路的数量(N)来提高带宽。
在利用PCIE设备传输一个数据时,需要同时用到连接于其上的所有串行并行转换电路,如果其中的一条串行并行转换电路出现故障,整体上就会影响数据的传输。现有技术中,当连接于PCIE设备上的某一条或多条串行并行转换电路出现故障时,PCIE设备就会根据PCIE协议的重协商机制,从Lane(通道)编号低的串行并行转换电路开始,连续向上重新进行链路协商,以完成数据传输链路的重连接。如:一个原本需要协商到速率为GEN2、链路宽度为16(PCIE2.0×16)的设备的2号串行并行转换电路出现故障时,根据PCIE协议从0号串行并行转换电路开始连续向上进行链路协商,由于2号串行并行转换电路故障,因此这种情况下只能从0号串行并行转换电路协商至1号串行并行转换电路,这样协商的链路宽度就是2,即2条串行并行转换电路,那么此时带宽公式中的16变为2,PCIE设备的性能就只有原来性能的1/8;当1号串行并行转换电路出现故障时,根据PCIE协议只能与0号串行并行转换电路进行正常协商,即只能协商到1条串行并行转换电路,则性能就只有原来性能的1/16。
由此可见,现有技术中出现串行并行转换电路故障时,重新协商链路宽度时会受到出现故障的串行并行转换电路编号的很大限制,从而可能导致重新协商的链路宽度大大减小,存在不确定性。
发明内容
有鉴于此,本发明提供了一种串行并行转换电路故障的处理方法及装置,以克服现有技术中由于受到出现故障的串行并行转换电路编号的限制过大而可能导致的重新协商的链路宽度过小的问题。
为实现上述目的,本发明提供如下技术方案:
一种串行并行转换电路故障的处理方法,包括:
接收外设部件互连标准扩展PCIE设备上报的错误报告;
分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的通道Lane编号;
确定处于正常状态的串行并行转换电路第一集合,该集合中的各个串行并行转换电路的编号均小于所述Lane编号且各个串行并行转换电路编号连续,该第一集合中至少包括编号最小的串行并行转换电路,且所述编号最小的串行并行转换电路处于正常状态;并确定处于正常状态的串行并行转换电路第二集合,该集合中的各个串行并行转换电路的编号均大于所述Lane编号且各个串行并行转换电路编号连续,该第二集合中至少包括编号最大的串行并行转换电路,且所述编号最大的串行并行转换电路处于正常状态;
如果第一集合中串行并行转换电路个数大于所述第二集合中串行并行转换电路个数,则从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商;
否则,从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商;
根据所述链路协商的结果确定数据传输链路的宽度。
其中,在所述Lane编号的个数为一个的情况下,所述确定处于正常状态的串行并行转换电路第一集合包括:
确定处于正常状态的,编号小于所述Lane编号的串行并行转换电路组成的集合为第一集合;
所述确定处于正常状态的串行并行转换电路第二集合包括:
确定处于正常状态的,编号大于所述Lane编号的串行并行转换电路组成的集合为第二集合。
其中,在所述Lane编号的个数为两个或两个以上的情况下,所述获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号包括:
确定所述Lane编号中编号最小的编号为最小Lane编号;和确定所述Lane编号中编号最大的编号为最大Lane编号;
所述确定处于正常状态的串行并行转换电路第一集合包括:
确定处于正常状态的,编号小于所述最小Lane编号的串行并行转换电路组成的集合为第一集合;
所述确定处于正常状态的串行并行转换电路第二集合包括:
确定处于正常状态的,编号大于所述最大Lane编号的串行并行转换电路组成的集合为第二集合。
优选的,还包括:
在所述Lane编号的个数为一个的情况下:
判断所述Lane编号是否小于预设的重协商宽度要求的串行并行转换电路的个数;
如果是,执行所述从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商的步骤,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止;
如果否,执行所述从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商的步骤,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止。
其中,所述分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号,具体包括:
注册中断处理函数;
驱动所述中断处理函数对所述错误报告进行分析,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号。
一种串行并行转换电路故障的处理装置,包括:
报告接收模块,用于接收PCIE设备上报的错误报告;
编号确定模块,用于分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号;
集合确定模块,用于确定处于正常状态的串行并行转换电路第一集合,该集合中的各个串行并行转换电路的编号均小于所述Lane编号且各个串行并行转换电路编号连续,该第一集合中至少包括编号最小的串行并行转换电路,且所述编号最小的串行并行转换电路处于正常状态;并确定处于正常状态的串行并行转换电路第二集合,该集合中的各个串行并行转换电路的编号均大于所述Lane编号且各个串行并行转换电路编号连续,该第二集合中至少包括编号最大的串行并行转换电路,且所述编号最大的串行并行转换电路处于正常状态;
集合判断模块,用于判断所述第一集合与所述第二集合中串行并行转换电路个数的大小;
协商执行模块,用于在第一集合中串行并行转换电路个数大于所述第二集合中串行并行转换电路个数时,从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商;在第一集合中串行并行转换电路个数小于所述第二集合中串行并行转换电路个数时,从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商;
宽度确定模块,用于根据所述链路协商的结果确定数据传输链路的宽度。
其中,在所述Lane编号的个数为一个的情况下,所述集合确定模块具体用于:
确定处于正常状态的,编号小于所述Lane编号的串行并行转换电路组成的集合为第一集合;并确定处于正常状态的,编号大于所述Lane编号的串行并行转换电路组成的集合为第二集合。
其中,在所述Lane编号的个数为两个的情况下,所述编号确定模块具体用于:
确定所述Lane编号中编号最小的编号为最小Lane编号;并确定所述Lane编号中编号最大的编号为最大Lane编号;
则所述集合确定模块具体用于:确定处于正常状态的,编号小于所述最小Lane编号的串行并行转换电路组成的集合为第一集合;并确定处于正常状态的,编号大于所述最大Lane编号的串行并行转换电路组成的集合为第二集合。
优选的,在所述Lane编号的个数为一个的情况下,所述集合判断模块还用于:
判断所述Lane编号是否小于预设的重协商宽度;
则所述协商执行模块还用于在上述判断结果为是时,执行所述从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商的动作,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止;
在上述判断结果为否时,执行所述从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商的动作,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止。
其中,所述编号确定模块具体包括:
注册函数模块,用于注册中断处理函数;
编号获取模块,用于驱动所述中断处理函数对所述错误报告进行分析,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号。
经由上述的技术方案可知,与现有技术相比,本发明公开了一种串行并行转换电路故障的处理方法及装置,该方法能够根据PCIE设备上报的错误报告确定出现故障的串行并行转换电路的Lane编号,并根据所述Lane编号确定处于正常状态的串行并行转换电路第一集合和确定处于正常状态的串行并行转换电路第二集合,再根据所述第一集合和所述第二集合中串行并行转换电路个数的多少,进行不同原则的链路协商,以保证所述PCIE设备上任意一个或多个串行并行转换电路出现故障的情况下,都能够达到重新协商链路的最优效果。通过本发明公开的串行并行转换电路的故障处理方法及装置,大大减小了在重新进行链路协商时,来自于出现故障的串行并行转换电路编号的限制,使得重新协商后的链路宽度能够达到最佳宽度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例公开的串行并行转换电路故障第一处理方法流程图;
图2为本发明实施例公开的获取故障串行并行转换电路编号的流程图;
图3为本发明实施例公开的串行并行转换电路故障第二处理方法流程图;
图4为本发明实施例公开的串行并行转换电路故障处理装置的结构示意图;
图5为本发明实施例公开的编号确定模块的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例公开的串行并行转换电路故障处理方法的流程图,参见图1所示,所述串行并行转换电路故障的处理方法可以包括:
步骤101:接收PCIE设备上报的错误报告;
由于数据在PCIE链路上传输数据会用到连接于其上的所有串行并行转换电路,因此当连接于PCIE设备上的任一条或多条串行并行转换电路出现故障时,整条PCIE链路就会断开,进入linkdown状态,此时系统检测到出现linkdown的端口,并产生一个对应的错误报告,此错误报告包含能够指示出现故障串行并行转换电路编号的信息,如PCIE端口的B:D:F(总线号:设备号:编号);
步骤102:分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号;
其中,所述Lane编号可以为一个,也可以为多个;
在所述Lane编号的个数为一个的情况下,确定处于正常状态的,编号小于所述Lane编号的串行并行转换电路组成的集合为第一集合;并确定处于正常状态的,编号大于所述Lane编号的串行并行转换电路组成的集合为第二集合;
在所述Lane编号的个数为两个或两个以上的情况下,确定所述Lane编号中编号最小的编号为最小Lane编号;并确定所述Lane编号中编号最大的编号为最大Lane编号;确定处于正常状态的,编号小于所述最小Lane编号的串行并行转换电路组成的集合为第一集合;并确定处于正常状态的,编号大于所述最大Lane编号的串行并行转换电路组成的集合为第二集合;
步骤102的具体步骤可以参见图2,图2为本发明实施例公开的获取故障串行并行转换电路编号的流程图,如图所示,可以包括:
步骤201:注册中断处理函数;
中断处理函数可以预先就注册在系统中,也可以在发现错误报告时立即注册;
步骤202:驱动所述中断处理函数对所述错误报告进行分析,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号;
根据所述错误报告携带的有用信息获取出现故障的串行并行转换电路的编号;
在步骤102后,进入步骤103;
步骤103:确定没有出现故障的串行并行转换电路第一集合和第二集合;
所述第一集合中的各个串行并行转换电路的编号均小于所述Lane编号且各个串行并行转换电路编号连续,该第一集合中至少包括编号最小的串行并行转换电路,且所述编号最小的串行并行转换电路处于正常状态;所述第二集合中的各个串行并行转换电路的编号均大于所述Lane编号且各个串行并行转换电路编号连续,该第二集合中至少包括编号最大的串行并行转换电路,且所述编号最大的串行并行转换电路处于正常状态;
步骤104:判断第一集合中串行并行转换电路的个数是否大于第二集合中串行并行转换电路的个数,如果是,进入步骤105,如果否,进入步骤106;
步骤105:从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商;
在判断出编号小于所有Lane编号的串行并行转换电路的个数,多于编号大于所有Lane编号的串行并行转换电路的个数时,即从第一集合中编号最小的串行并行转换电路连续向上协商能够正常协商的串行并行转换电路个数多时,确定从最小编号的串行并行转换电路连续向上协商;
步骤106:从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商;
在判断出编号小于所有Lane编号的串行并行转换电路的个数,少于编号大于所有Lane编号的串行并行转换电路的个数时,即从第二集合中编号最大的串行并行转换电路连续向下协商能够正常协商的串行并行转换电路个数多时,确定从最大编号的串行并行转换电路连续向下协商;
步骤107:根据所述链路协商的结果确定数据传输链路的宽度;
根据PCIE协议,PCIE链路数量只能为1、2、4、8或16条,因此,无论最后协商的串行并行转换电路的数量为多少,确定的链路宽度只能为上述几个数字之一。
本实施例中,所述串行并行转换电路故障的处理方法,首先能够根据PCIE设备上报的错误报告确定出现故障的串行并行转换电路的Lane编号,并根据所述Lane编号确定处于正常状态的串行并行转换电路第一集合和确定处于正常状态的串行并行转换电路第二集合,再根据所述第一集合和所述第二集合中串行并行转换电路个数的多少,进行不同原则的链路协商,以保证所述PCIE设备上任意一个或多个串行并行转换电路出现故障的情况下,都能够达到重新协商能取得链路的最大宽度。
实施例二
本实施例是在PCIE设备上只有1条串行并行转换电路出现故障的情况下的一个可能的实施例,图3为本发明实施例公开的串行并行转换电路故障第二处理方法的流程图,参见图3所示,所述串行并行转换电路故障的处理方法可以包括:
步骤301:接收PCIE设备上报的错误报告;
步骤302:分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号;
此处,所述Lane编号为PCIE设备上唯一出现故障的串行并行转换电路的编号;
步骤303:确定没有出现故障的串行并行转换电路第一集合和第二集合;
步骤304:判断所述Lane编号是否小于预设的重协商宽度要求的串行并行转换电路的个数,如果是,进入步骤305,如果否,进入步骤306;
由于PCIE协议规定PCIE设备上的串行并行转换电路的的个数只能是1、2、4、8或16,因此,所述预设的重协商宽度只能为所述PCIE设备支持的最大宽度的1/2、1/4、1/8或1/16;所述预设的重协商宽度代表了用户要求的,重协商的串行并行转换电路的个数,如:预设的重协商宽度为8,即代表重协商的串行并行转换电路的个数需要达到8;所述预设的重协商宽度为用户在串行并行转换电路没有出现故障时设定的,要求串行并行转换电路出现故障时重新协商要保证的链路宽度;
步骤305:从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止;
在所述Lane编号小于预设的重协商宽度的情况下,即从最小编号的串行并行转换电路连续向上协商不能够协商到所述预设的重协商宽度要求的宽度时,就从最大编号的串行并行转换电路连续向下进行链路协商,直到满足所述预设的重协商宽度要求的宽度为止;
步骤306:从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止;
在所述Lane编号大于预设的重协商宽度的情况下,即从最小编号的串行并行转换电路连续向上协商能够协商到所述预设的重协商宽度要求的宽度时,就从最小编号的串行并行转换电路连续向上进行链路协商,直到满足所述预设的重协商宽度要求的宽度为止;
步骤307:根据所述链路协商的结果确定数据传输链路的宽度。
本实施例中,所述串行并行转换电路故障的处理方法,首先能够根据PCIE设备上报的错误报告确定出现故障的串行并行转换电路的Lane编号,并根据所述Lane编号和预设的重协商宽度的大小关系进行不同原则的链路协商,以保证所述PCIE设备上任意一个串行并行转换电路出现故障的情况下,重协商都能够达到预设的重协商宽度要求的宽度。
上述本发明公开的实施例中详细描述了方法,对于本发明的方法可采用多种形式的装置实现,因此本发明还公开了一种装置,下面给出具体的实施例进行详细说明。
实施例三
图4为本发明实施例公开的串行并行转换电路故障处理装置的结构示意图,参见图4所示,所述串行并行转换电路故障的处理装置40可以包括:
报告接收模块401,用于接收PCIE设备上报的错误报告;
编号确定模块402,用于分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号;
其中,所述Lane编号可以为一个,也可以为多个;
所述编号确定模块402具体结构可参见图5,可以包括:
注册函数模块4021,用于注册中断处理函数;
编号获取模块4022,用于驱动所述中断处理函数对所述错误报告进行分析,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号;
集合确定模块403,用于确定处于正常状态的串行并行转换电路第一集合,该集合中的各个串行并行转换电路的编号均小于所述Lane编号且各个串行并行转换电路编号连续,该第一集合中至少包括编号最小的串行并行转换电路,且所述编号最小的串行并行转换电路处于正常状态;并确定处于正常状态的串行并行转换电路第二集合,该集合中的各个串行并行转换电路的编号均大于所述Lane编号且各个串行并行转换电路编号连续,该第二集合中至少包括编号最大的串行并行转换电路,且所述编号最大的串行并行转换电路处于正常状态;
集合判断模块404,用于判断所述第一集合与所述第二集合中串行并行转换电路个数的大小;
协商执行模块405,用于在第一集合中串行并行转换电路个数大于所述第二集合中串行并行转换电路个数时,从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商;在第一集合中串行并行转换电路个数小于所述第二集合中串行并行转换电路个数时,从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商;
宽度确定模块406,用于根据所述链路协商的结果确定数据传输链路的宽度。
需要说明的是,本发明实施例串行并行转换电路故障的处理装置,并不仅局限于上述一种结构,比如,上述编号确定模块402和集合确定模块403也可以是集成于一体的一个独立模块,完成所述串行并行转换电路故障的串行并行转换电路编号的确定及第一集合与第二集合的确定。
在其他的实施例中,用户可以在串行并行转换电路没有出现故障的情况下,预先设定一个在串行并行转换电路出现故障后重协商的链路宽度,在仅有一条串行并行转换电路出现故障的情况下,通过集合判断模块404将编号确定模块402确定的,出现故障串行并行转换电路的编号与预设的重协商宽度进行比较,在所述Lane编号小于预设的重协商宽度时,协商执行模块405从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止;在所述Lane编号大于预设的重协商宽度时,协商执行模块405从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止。
本实施例中,所述串行并行转换电路故障的处理装置,首先能够根据PCIE设备上报的错误报告确定出现故障的串行并行转换电路的Lane编号,并根据所述Lane编号确定处于正常状态的串行并行转换电路第一集合和确定处于正常状态的串行并行转换电路第二集合,再根据所述第一集合和所述第二集合中串行并行转换电路个数的多少,进行不同原则的链路协商,以保证所述PCIE设备上任意一个或多个串行并行转换电路出现故障的情况下,都能够达到重新协商能取得链路的最大宽度。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种串行并行转换电路故障的处理方法,其特征在于,包括:
接收外设部件互连标准扩展PCIE设备上报的错误报告;
分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的通道Lane编号;
确定处于正常状态的串行并行转换电路第一集合,该集合中的各个串行并行转换电路的编号均小于所述Lane编号且各个串行并行转换电路编号连续,该第一集合中至少包括编号最小的串行并行转换电路,且所述编号最小的串行并行转换电路处于正常状态;并确定处于正常状态的串行并行转换电路第二集合,该集合中的各个串行并行转换电路的编号均大于所述Lane编号且各个串行并行转换电路编号连续,该第二集合中至少包括编号最大的串行并行转换电路,且所述编号最大的串行并行转换电路处于正常状态;
如果第一集合中串行并行转换电路个数大于所述第二集合中串行并行转换电路个数,则从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商;
否则,从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商;
根据所述链路协商的结果确定数据传输链路的宽度。
2.根据权利要求1所述的方法,其特征在于,在所述Lane编号的个数为一个的情况下,所述确定处于正常状态的串行并行转换电路第一集合包括:
确定处于正常状态的,编号小于所述Lane编号的串行并行转换电路组成的集合为第一集合;
所述确定处于正常状态的串行并行转换电路第二集合包括:
确定处于正常状态的,编号大于所述Lane编号的串行并行转换电路组成的集合为第二集合。
3.根据权利要求1所述的方法,其特征在于,在所述Lane编号的个数为两个或两个以上的情况下,所述获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号包括:
确定所述Lane编号中编号最小的编号为最小Lane编号;和确定所述Lane编号中编号最大的编号为最大Lane编号;
所述确定处于正常状态的串行并行转换电路第一集合包括:
确定处于正常状态的,编号小于所述最小Lane编号的串行并行转换电路组成的集合为第一集合;
所述确定处于正常状态的串行并行转换电路第二集合包括:
确定处于正常状态的,编号大于所述最大Lane编号的串行并行转换电路组成的集合为第二集合。
4.根据权利要求1所述的方法,其特征在于,还包括:
在所述Lane编号的个数为一个的情况下:
判断所述Lane编号是否小于预设的重协商宽度要求的串行并行转换电路的个数;
如果是,执行所述从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商的步骤,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止;
如果否,执行所述从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商的步骤,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止。
5.根据权利要求1所述的方法,其特征在于,所述分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号,具体包括:
注册中断处理函数;
驱动所述中断处理函数对所述错误报告进行分析,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号。
6.一种串行并行转换电路故障的处理装置,其特征在于,包括:
报告接收模块,用于接收PCIE设备上报的错误报告;
编号确定模块,用于分析所述错误报告,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号;
集合确定模块,用于确定处于正常状态的串行并行转换电路第一集合,该集合中的各个串行并行转换电路的编号均小于所述Lane编号且各个串行并行转换电路编号连续,该第一集合中至少包括编号最小的串行并行转换电路,且所述编号最小的串行并行转换电路处于正常状态;并确定处于正常状态的串行并行转换电路第二集合,该集合中的各个串行并行转换电路的编号均大于所述Lane编号且各个串行并行转换电路编号连续,该第二集合中至少包括编号最大的串行并行转换电路,且所述编号最大的串行并行转换电路处于正常状态;
集合判断模块,用于判断所述第一集合与所述第二集合中串行并行转换电路个数的大小;
协商执行模块,用于在第一集合中串行并行转换电路个数大于所述第二集合中串行并行转换电路个数时,从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商;在第一集合中串行并行转换电路个数小于所述第二集合中串行并行转换电路个数时,从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商;
宽度确定模块,用于根据所述链路协商的结果确定数据传输链路的宽度。
7.根据权利要求6所述的装置,其特征在于,在所述Lane编号的个数为一个的情况下,所述集合确定模块具体用于:
确定处于正常状态的,编号小于所述Lane编号的串行并行转换电路组成的集合为第一集合;并确定处于正常状态的,编号大于所述Lane编号的串行并行转换电路组成的集合为第二集合。
8.根据权利要求6所述的装置,其特征在于,在所述Lane编号的个数为两个的情况下,所述编号确定模块具体用于:
确定所述Lane编号中编号最小的编号为最小Lane编号;并确定所述Lane编号中编号最大的编号为最大Lane编号;
则所述集合确定模块具体用于:确定处于正常状态的,编号小于所述最小Lane编号的串行并行转换电路组成的集合为第一集合;并确定处于正常状态的,编号大于所述最大Lane编号的串行并行转换电路组成的集合为第二集合。
9.根据权利要求6所述的装置,其特征在于,在所述Lane编号的个数为一个的情况下,所述集合判断模块还用于:
判断所述Lane编号是否小于预设的重协商宽度;
则所述协商执行模块还用于在上述判断结果为是时,执行所述从第二集合中编号最大的串行并行转换电路开始连续向下进行链路协商的动作,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止;
在上述判断结果为否时,执行所述从第一集合中编号最小的串行并行转换电路开始连续向上进行链路协商的动作,协商至已协商串行并行转换电路的个数等于所述预设的重协商宽度为止。
10.根据权利要求6所述的装置,其特征在于,所述编号确定模块具体包括:
注册函数模块,用于注册中断处理函数;
编号获取模块,用于驱动所述中断处理函数对所述错误报告进行分析,获取所述PCIE设备上出现故障的串行并行转换电路的Lane编号。
CN201110459903.2A 2011-12-31 2011-12-31 串行并行转换电路故障的处理方法及装置 Active CN103384204B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110459903.2A CN103384204B (zh) 2011-12-31 2011-12-31 串行并行转换电路故障的处理方法及装置
PCT/CN2012/086477 WO2013097604A1 (zh) 2011-12-31 2012-12-13 串行并行转换电路故障的处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110459903.2A CN103384204B (zh) 2011-12-31 2011-12-31 串行并行转换电路故障的处理方法及装置

Publications (2)

Publication Number Publication Date
CN103384204A CN103384204A (zh) 2013-11-06
CN103384204B true CN103384204B (zh) 2016-03-30

Family

ID=48696324

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110459903.2A Active CN103384204B (zh) 2011-12-31 2011-12-31 串行并行转换电路故障的处理方法及装置

Country Status (2)

Country Link
CN (1) CN103384204B (zh)
WO (1) WO2013097604A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110968443B (zh) * 2018-09-28 2023-04-11 阿里巴巴集团控股有限公司 设备异常的检测方法及装置
CN109495463B (zh) * 2018-11-02 2021-06-29 郑州云海信息技术有限公司 一种链路宽度协商方法、装置及计算机可读存储介质
CN109815043B (zh) 2019-01-25 2022-04-05 华为云计算技术有限公司 故障处理方法、相关设备及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859155A (zh) * 2005-07-02 2006-11-08 华为技术有限公司 链路状态自协商方法
CN1885750A (zh) * 2005-06-23 2006-12-27 上海华为技术有限公司 远端射频模块及其传输信号的方法
CN1972143A (zh) * 2006-12-13 2007-05-30 中兴通讯股份有限公司 通讯设备单板主备倒换装置及实现方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7353443B2 (en) * 2005-06-24 2008-04-01 Intel Corporation Providing high availability in a PCI-Express link in the presence of lane faults
US7536490B2 (en) * 2006-07-20 2009-05-19 Via Technologies, Inc. Method for link bandwidth management
CN101604299B (zh) * 2009-07-13 2011-04-20 成都市华为赛门铁克科技有限公司 一种访问pcie ram的方法、存储控制器和存储系统
CN101631083B (zh) * 2009-08-07 2012-04-04 成都市华为赛门铁克科技有限公司 设备接管方法和装置及双控系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1885750A (zh) * 2005-06-23 2006-12-27 上海华为技术有限公司 远端射频模块及其传输信号的方法
CN1859155A (zh) * 2005-07-02 2006-11-08 华为技术有限公司 链路状态自协商方法
CN1972143A (zh) * 2006-12-13 2007-05-30 中兴通讯股份有限公司 通讯设备单板主备倒换装置及实现方法

Also Published As

Publication number Publication date
WO2013097604A1 (zh) 2013-07-04
CN103384204A (zh) 2013-11-06

Similar Documents

Publication Publication Date Title
US9785530B2 (en) Method, device, and system for processing PCIe link fault
CN102857397B (zh) 一种多主异步双工差分总线及通讯方法
CN103384204B (zh) 串行并行转换电路故障的处理方法及装置
US9141463B2 (en) Error location specification method, error location specification apparatus and computer-readable recording medium in which error location specification program is recorded
CN102495920A (zh) 一种FPGA用基于PCIe的集成化逻辑分析模块
CN107592250B (zh) 基于航空fc总线多速率自适应测试设备
CN114048164A (zh) 芯片互联方法、系统、设备及可读存储介质
CN102449621A (zh) 一种节点控制器链路的切换方法、处理器系统和节点
CN102629968A (zh) 一种图像处理装置、方法及系统
CN106155826B (zh) 用于在总线结构中检测及处理错误的方法和系统
CN108924325B (zh) 数据处理方法及相关装置
CN111274193A (zh) 数据处理装置及方法
CN115883340B (zh) 一种基于hplc和hrf双模通信故障处理方法和设备
CN102684942A (zh) 网络设备的性能测试方法
CN102594616B (zh) 网络安全检测方法及装置
CN101534313B (zh) 实现电子设备连接拓扑安全控制的方法
CN111740881B (zh) 一种网卡链路检测方法、系统、设备及计算机存储介质
CN104065664A (zh) 一种云服务器验证系统
CN210721160U (zh) 温控电路及温控装置
CN101807173A (zh) 快速烧写两个以上spi设备的方法
CN107977334B (zh) 电子卡及其检测方法
CN104424137A (zh) 服务器单元与虚拟媒体装置及其存取方法数据
CN220894887U (zh) Usb测试电路及测试系统
CN113485957B (zh) 适用于工业级应用场景的用于物理层的多协议系统控制装置和多协议系统控制方法
US20170302528A1 (en) System & method for automatically determining the optimal topology for multiple networked devices

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220921

Address after: No. 1899 Xiyuan Avenue, high tech Zone (West District), Chengdu, Sichuan 610041

Patentee after: Chengdu Huawei Technologies Co.,Ltd.

Address before: 611731 Qingshui River District, Chengdu hi tech Zone, Sichuan, China

Patentee before: HUAWEI DIGITAL TECHNOLOGIES (CHENG DU) Co.,Ltd.