PCIe设备在位检测方法和PCIe设备的制作方法

文档序号:7774533阅读:606来源:国知局
PCIe设备在位检测方法和PCIe设备的制作方法
【专利摘要】本发明实施例提供一种PCIe设备在位检测方法和PCIe设备。其中,方法包括:第一PCIe设备检测第一光模块接收到第二光模块发送的M路光信号;其中,所述第一光模块与所述第一PCIe设备连接,所述第二光模块与第二PCIe设备连接,所述第一光模块与所述第二光模块通过光纤连接;所述第一PCIe设备根据接收到的M路光信号,确定所述第二PCIe设备在位,其中,M为正整数。
【专利说明】 PC I e设备在位检测方法和PCI e设备
【技术领域】
[0001]本发明实施例涉及通信技术,尤其涉及一种PCIe设备在位检测方法和PCIe设备。【背景技术】
[0002]光纤传输具有传输带宽高、传输距离长,布线灵活等优点,目前已经应用于多种高速总线。外部部件互连通路(Peripheral Component Interconnect Express,简称:PCIe)信号是一种主流的高速信号,将光纤传输应用于PCIe信号是本领域发展的趋势。PCIe的接收器或发送器每个端口一般由一个或多个通路(Lane)组成,根据当前的PCIe标准,一个端口最多可以包括32个Lane,描述为:PCIe Xn,其中,X代表“乘”,η代表Lane的个数,常见的PCIe 芯片一般为 PCIe XI,PCIe Χ2, PCIe Χ4, PCIe Χ8, PCIe Χ16, PCIe Χ32。根据现有的PCIe协议,通过对PCIe接收器所连接的链路的充电时间来检测对端PCIe芯片的Lane是否可用的状况。然而由于米用光纤传输PCIe信号时,由于有光模块和光纤的介入,与PCIe接收器连接的是光模块,接收器通过充放电时间检测到的只是和其对接的光模块是否可用,而不能真正检测到对端PCIe设备的接收器是否在位。
[0003]现有技术中,通过在PCIe芯片与光模块之间连接一个现场可编程门阵列(FieldProgrammable Gate Array简称,FPGA)芯片,用于模拟PCIe逻辑,以将PCIe芯片的检测(Detect)状态机关闭,或利用某些PCIe芯片支持将Detect状态机关闭的特性,将PCIe协商流程中的主动检测(Detect.Active)状态跳过,即跳过PCIe在位检测的过程,执行非标准的PCIe协商流程。
[0004]因此现有技术需要额外芯片,实现复杂,成本较高。

【发明内容】

[0005]本发明实施例提供一种PCIe设备在位检测方法和PCIe设备。
[0006]第一方面,本发明实施例提供一种PCIe设备在位检测方法,包括:
[0007]第一 PCIe设备检测第一光模块接收到第二光模块发送的M路光信号;其中,所述第一光模块与所述第一 PCIe设备连接,所述第二光模块与第二 PCIe设备连接,所述第一光模块与所述第二光模块通过光纤连接;
[0008]所述第一 PCIe设备根据接收到的M路光信号,确定所述第二 PCIe设备在位,其中,M为正整数。
[0009]在第一方面的第一种可能的实现方式中,还包括:
[0010]所述第一 PCIe设备根据所述M路光信号确定所述第二 PCIe设备有M路可用通路;
[0011]所述第一 PCIe设备根据所述M路可用通路确定所述第二 PCIe设备的标准通路数。
[0012]根据第一方面的第一种可能的实现方式,在第二种可能的实现方式中,当2n< M< 2n+1时,所述根据所述M路可用通路确定所述第二 PCIe设备的标准通路数,具体为,确定所述第二 PCIe设备的标准通路数为2n,其中,η为整数,并且η≥O。
[0013]根据第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述根据所述M路可用通路确定所述第二 PCIe设备的标准通路数之后,还包括:
[0014]所述第一 PCIe设备根据所述第二 PCIe设备的标准通路数与所述第二 PCIe设备通信。
[0015]根据第一方面的第二种或第三种可能的实现方式,在第四种可能的实现方式中,所述第一 PCIe设备的标准通路数为2%其中r为整数,r≥0,并且2r≥M,所述方法还包括:当Z大于M时,将所述第一 PCIe设备的(Ζ-2η)路通路置为电气空闲状态。
[0016]根据第一方面、第一方面的第一种至第四种可能的实现方式中的任意一种,在第五种可能的实现方式中,所述第二光模块发送M路光信号是由所述第二 PCIe设备触发的。
[0017]第二方面,本发明实施例提供一种外围部件互联通路PCIe设备,包括:
[0018]光信号检测模块,用于检测第一光模块接收到第二光模块发送的M路光信号;其中,所述第一光模块与第一 PCIe设备连接,所述第二光模块与第二 PCIe设备连接,所述第一光模块与所述第二光模块通过光纤连接;
[0019]处理模块,用于根据接收到的M路光信号,确定所述第二PCIe设备在位,其中,M为正整数。
[0020]在第二方面的第一种可能的实现方式中,所述处理模块还用于:
[0021]根据所述M路光信号确定所述第二 PCIe设备有M路可用通路;
[0022]根据所述M路可用通路确定所述第二 PCIe设备的标准通路数。
[0023]根据第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理模块具体用于:
[0024]当2η≤M < 2η+1时,确定所述第二 PCIe设备的标准通路数为2η,其中,η为整数,并且η≥O。
[0025]根据第二方面的第二种可能的实现方式,在第三种可能的实现方式中,所述通路还包括:
[0026]收发模块,用于在所述处理模块根据所述M路可用通路确定所述第二PCIe设备的标准通路数之后,根据所述第二 PCIe设备的标准通路数与所述第二 PCIe设备通信。
[0027]根据第二方面的第二种或第三种可能的实现方式,在第四种可能的实现方式中,所述第一 PCIe设备的标准通路数为2r,其中r为整数,r≥0,并且Z≥M,所述处理模块还用于:当Z大于M时,将所述第一 PCIe设备的(Ζ-2η)路通路置为电气空闲状态。
[0028]根据第二方面、第二方面的第一种至第四种可能的实现方式中的任意一种,在第五种可能的实现方式中,所述第二光模块发送M路光信号是由所述第二 PCIe设备触发的。
[0029]本发明实施例提供的PCIe设备在位检测方法和PCIe设备,通过第一 PCIe设备检测第一光模块接收到第二光模块发送的M路光信号,确定所述第二 PCIe设备在位,实现方式简单,从而解决了现有技术进行第二 PCIe设备在位检测需要额外芯片,实现复杂,成本较高的问题。
【专利附图】

【附图说明】
[0030]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0031]图1为米用光纤传输的PCIe系统的结构不意图;
[0032]图2为本发明PCIe设备负载检测方法实施例一的流程图;
[0033]图3为本发明PCIe设备负载检测方法实施例二的流程图;
[0034]图4为本发明PCIe设备实施例一的结构示意图;
[0035]图5为本发明PCIe设备负载检测系统实施例的结构示意图。
【具体实施方式】
[0036]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0037]在本发明各个实施例中,PCIe设备可以为PCIe交换器(PCIe Switch),也可以为其他的PCIe设备。
[0038]由于PCIe设备是标准设备,通常PCIe的通路(Lane)个数为标准通路个数,也即PCIe设备的规格为标准规格,通常PCIe设备的标准规格表示为XI,X2,X4,X8,X16,X32,分别表示PCIe设备的标准通路个数为1,2,4,8,16,32,PCIe设备的I个通路包括发送逻辑(发送链路,表示为Tx)和接收逻辑(接收链路,表示为Rx),I个通路也可以称为一个PCIe资源。另外,本发明实施例中,PCIe设备的可用通路及标准通路个数不作具体限定,但是具体个数遵循PCIe标准规范。PCIe设备使用标准规格进行通信,也即PCIe设备使用标准通路进行通信。图1为采用光纤传输的PCIe系统的结构示意图,为了描述方便,在图1中将本端PCIe设备(图1左边的PCIe设备)称为第一 PCIe设备,将对端PCIe设备(图1右边的PCIe设备)称为第二 PCIe设备。
[0039]第一 PCIe设备需要检测第二 PCIe设备是否在位,由于PCIe设备使用标准通路进行通信,因此当本端PCIe设备检测到对端PCIe设备在位时,协商本端PCIe设备与对端PCIe设备通信使用的标准通路个数,要确定对端PCIe设备的标准通路,也即对端PCIe设备的标准规格。
[0040]如图1所不,第一 PCIe设备的通路与一个光模块(称为第一光模块)连接,对端PCIe设备的通路也与一个光模块(称为第二光模块)连接,第一光模块与第二光模块之间通过光纤连接。
[0041]图2为本发明PCIe设备在位检测方法实施例一的流程图,本实施例的方法对应于图1所示的PCIe系统。在本实施例中,描述第一 PCIe设备对第二 PCIe设备在位检测方法,本实施例的方法可以包括:
[0042]步骤201、第一 PCIe设备检测第一光模块接收到第二光模块发送的M路光信号;其中,所述第一光模块与所述第一 PCIe设备连接,所述第二光模块与第二 PCIe设备连接,所述第一光模块与所述第二光模块通过光纤连接。
[0043]其中,一种实现方式,所述第二光模块发送M路光信号是由所述第二 PCIe设备触发的。
[0044]具体地,一种实施情况,第一 PCIe设备与第一光模块之间以η个通路(PCIelLaneO?PCIelLane η_1,)相连,第一光模块和第二光模块之间的光信号为也为η路,其中η为大于O的整数。
[0045]具体地,步骤301可以由集成在第一 PCIe设备中的检测逻辑实现,在具体实现时,也可以由独立于所述第一 PCIe设备的主电路之外的单片机,这时该单片机需要与所述第一 PCIe设备的主电路以及与第一光模块连接。
[0046]以下将具体执行步骤301的单片机或第一PCIe设备中的检测逻辑称为检测模块。
[0047]一种实施方式,第一光模块具有指示接收到第二光模块发送的光信号的个数的功能,例如第一光模块可以向检测模块发送一个指示信息,使检测模块读取该指示信息后确定第一光模块接收到M路光信号。
[0048]—种实施方式,第一光模块还具有光丢失检测功能和光丢失指功能,具体地,第一光模块的光丢失检测方法例如包括:
[0049]第一光模块的接收器可以输出一个电信号,其电位高低反映出所接收的光信号强度是否足够,第一光模块将该电位与预设电位进行比较以判定光信号是否丢失。其中电位比较可以采用具有一定回滞效应的比较器实现。
[0050]根据第一光模块所采用的光模块的类型,第一光模块的光丢失指示的方式可以为硬件信号指示,也可以为其他的总线检测信号指示,例如I2C (Inter-1ntegratedCircuit)信号指示。例如,若该第一光模块为四信道小型可插拨(Quad Small Form FactorPluggable,简称:QSFP)接口的光模块,则采用I2C信号进行光丢失指示,相应地,检测模块采用I2C信号去读取第一光模块发出的光丢失指示;若该第一光模块为小型可插拨(SmallForm Factor Pluggable,简称:SFP)接口的光模块,则采用硬件信号进行光丢失指示,相应地,检测模块可以通过硬件信号读取第一光模块发出的光丢失指示。
[0051]步骤202、所述第一 PCIe设备根据接收到的M路光信号,确定所述第二 PCIe设备在位,其中,M为正整数。
[0052]本实施例,第一 PCIe设备通过检测第一光模块是否接收到第二光模块发送的光信号判断第二 PCIe设备在位情况,具体第一 PCIe设备检测第一光模块接收到第二光模块发送的M路光信号,确定所述第二 PCIe设备在位,从而完成对米用了光纤传输PCIe信号时的第二 PCIe设备在位检测,实现方式简单,从而解决了现有技术进行第二 PCIe设备在位检测需要额外芯片,实现复杂,成本较高的问题。
[0053]图3为本发明PCIe设备在位检测方法实施例二的流程图,本实施例的方法也对应于图1所不的PCIe系统。在本实施例在图2所不实施例的基础上增加了第一 PCIe设备对第二PCIe设备的可用通路数和标准通路数的确定过程,以及后续的通信过程。如图3所示,本实施例的方法可以包括:
[0054]步骤301、第一 PCIe设备检测第一光模块接收到第二光模块发送的M路光信号。
[0055]步骤302、所述第一 PCIe设备根据接收到的M路光信号,确定所述第二 PCIe设备在位。
[0056]步骤303、所述第一 PCIe设备根据所述M路光信号确定所述第二 PCIe设备有M路可用通路。[0057]步骤304、所述第一 PCIe设备根据所述M路可用通路确定所述第二 PCIe设备的标准通路数。
[0058]基中,可用通路是指PCIe设备能够进行通信的通路。
[0059]进一步具体地,当2n≤M < 2n+1时,所述第一 PCIe设备确定所述第二 PCIe设备的标准通路数为2n,其中,η为整数,并且η ≥ O。因为PCIe设备之间需要根据标准通路进行通信,因此,当PCIe设备的可用通路数不是标准通路时,需要确定PCIe可进行通信的标准通路个数。
[0060]目前PCIe芯片的标准通路数为1、2、4、8、16、32,对应11的取值为0、1、2、3、4、5,随着PCIe标准规范的发展,以及技术进步,η也可能取更大的整数值。例如,当M为6时,所述第一 PCIe设备根据所述6路光信号确定所述第二 PCIe设备有6路可用通路,由于6大于4而小于8,因此第一 PCIe设备可以确定所述第二 PCIe设备的可用的标准通路数为4。
[0061]步骤305、所述第一 PCIe设备根据所述第二 PCIe设备的标准通路数与所述第二PCIe设备通信。
[0062]需要说明的是,所述第一 PCIe设备的标准通路数为2%其中r为整数,r ≥ O,并且2r ≥ M,则所述方法还包括以下的步骤406或者步骤407。
[0063]步骤306、当2^大于M时,将所述第一 PCIe设备的(2^211)路通路置为电气空闲状态。
[0064]步骤307、当21大于M时,将所述第一 PCIe设备的(2^-211)路通路用于与另一 PCIe设备通过光模块连接,并进行本发明实施例所述的检测。
[0065]其中,步骤306和步骤307为并列的两种处理方式,在实际执行时仅需要选择其中一种。
[0066]例如r=3,即所述第一 PCIe设备的标准通路数为8,由于在步骤404中所述第一PCIe设备可以确定所述第二 PCIe设备的可用的标准通路数为4,所述第一 PCIe设备需要使用的通路数为4,这时,需要将所述第一 PCIe设备的另外4个通路置为电气空闲状态或设置为与另一 PCIe设备通过光模块连接。
[0067]本实施例,第一 PCIe设备根据所述M路光信号确定所述第二 PCIe设备有M路可用通路,并根据所述M路可用通路确定所述第二 PCIe设备的标准通路数,从而确定第一 PCIe设备本身也需要使用的标准通路数,根据所述标准通路数与所述第二 PCIe设备通信,实现方式简单,从而解决了现有技术进行第二 PCIe设备在位检测需要额外芯片,实现复杂,成本较高的问题;同时可以完成第一 PCIe设备与第二 PCIe设备之间标准通路的协商,实现第
一PCIe设备与第二 PCIe设备通信。另外,通过将第一 PCIe设备的(2〔2η)路通路置为电气空闲状态或设置与另一 PCIe设备通过光模块连接,从而完成对第一 PCIe设备在本次通信过程中不需使用的通路的处理。
[0068]图4为本发明PCIe设备实施例一的结构示意图,如图4所示,本实施例的PCIe设备400可以包括:光信号检测模块401、处理模块402,还包括收发模块403,其中,
[0069]光信号检测模块401,用于检测第一光模块接收到第二光模块发送的M路光信号;其中,所述第一光模块与第一 PCIe设备连接,所述第二光模块与第二 PCIe设备连接,所述第一光模块与所述第二光模块通过光纤连接;
[0070]处理模块402,用于根据接收到的M路光信号,确定所述第二 PCIe设备在位,其中,M为正整数。
[0071]其中,所述第二光模块发送的M路光信号是由所述第二 PCIe设备触发的。
[0072]需要说明的是,光信号检测模块401可以为集成在第一 PCIe设备中的检测逻辑,在具体实现时,也可以为独立于所述第一 PCIe设备的主电路之外的单片机,这时该单片机需要与所述第一 PCIe设备的主电路以及与第一光模块连接。
[0073]第一光模块具有指示接收到第二光模块发送的光信号的个数的功能,例如第一光模块可以向光信号检测模块401发送一个指示信息,使光信号检测模块401读取该指示信息后确定第一光模块接收到M路光信号。
[0074]本实施的PCIe设备可以作为图1所示实施例的第一 PCIe设备,用于执行图2或3所示方法实施例的技术方案,其实现原理类似,此处不再赘述。
[0075]本实施例,具体通过第一 PCIe设备检测第一光模块接收到第二光模块发送的M路光信号,确定所述第二 PCIe设备在位,实现方式简单,从而解决了现有技术进行第二 PCIe设备在位检测需要额外芯片,实现复杂,成本较高的问题。
[0076]进一步地,所述处理模块402还可以用于:
[0077]根据所述M路光信号确定所述第二 PCIe设备有M路可用通路;
[0078]根据所述M路可用通路确定所述第二 PCIe设备的标准通路数。
[0079]进一步地,所述处理模块402还可以用于:
[0080]当2n≤M < 2n+1时,确定所述第二 PCIe设备的标准通路数为2n,其中,η为整数,并且η≥O。
[0081]进一步地,所述收发模块403,可以用于在所述处理模块根据所述M路可用通路确定所述第二 PCIe设备的标准通路数之后,根据所述第二 PCIe设备的标准通路数与所述第
二PCIe设备通信。从而完成第一 PCIe设备与第二 PCIe设备之间标准通路的协商,实现第一 PCIe设备与第二 PCIe设备通信。
[0082]进一步地,所述第一 PCIe设备的标准通路数为其中r为整数,r≥0,并且2r≥M,所述处理模块402还用于:当Z大于M时,将所述第一 PCIe设备的(Zln)路通路置为电气空闲状态;或者,所述处理模块402还用于:当2r大于M时,将所述第一 PCIe设备的(f-2n)路通路设置与另一 PCIe设备通过光模块连接,进行上述在位检测步骤及标准通路协商步骤,从而完成对第一 PCIe设备在本次通信过程中不需使用的通路的处理
[0083]图5为本发明PCIe设备在位检测系统实施例的结构示意图,如图5所示,本实施例的系统500包括:第一 PCIe设备501、第一光模块502和第二 PCIe设备503和第二光模块504,其中,第一 PCIe设备501可以采用图4所示的PCIe设备,所述第二 PCIe设备503也可以采用图4所示的PCIe设备,(所述第二 PCIe设备503也可以采用现有技术的PCIe设备,本实施例的系统的第一 PCIe设备501和第二 PCIe设备503只需要其中一个采用图4所示的PCIe设备即可),所述第一 PCIe设备501与所述第一光模块502连接,所述第二PCIe设备503与所述第二光模块504连接,所述第二光模块504通过光纤与所述第一光模块502连接。
[0084]对应地,本实施例的PCIe负载检测系统可以执行图2或图3所示方法实施例的技术方案,其实现原理类似,此处不再赘述。
[0085]本实施例的PCIe负载检测系统,第一 PCIe设备通过第一光模块接收光信号来判断第二 PCIe设备在位,实现方式简单,从而解决了现有技术进行第二 PCIe设备在位检测需要额外芯片,实现复杂,成本较高的问题;同时可以完成第一 PCIe设备与第二 PCIe设备之间标准通路的协商,实现第一 PCIe设备与第二 PCIe设备通信。
[0086]本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0087]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种外围部件互联通路PCIe设备在位检测方法,其特征在于,包括: 第一 PCIe设备检测第一光模块接收到第二光模块发送的M路光信号;其中,所述第一光模块与所述第一 PCle设备连接,所述第二光模块与第二 PCIe设备连接,所述第一光模块与所述第二光模块通过光纤连接; 所述第一 PCIe设备根据接收到的M路光信号,确定所述第二 PCIe设备在位,其中,M为正整数。
2.根据权利要求1所述的方法,其特征在于,还包括: 所述第一 PCIe设备根据所述M路光信号确定所述第二 PCIe设备有M路可用通路; 所述第一 PCIe设备根据所述M路可用通路确定所述第二 PCIe设备的标准通路数。
3.根据权利要求2所述的方法,其特征在于, 当2n < M < 2n+1时,所述根据所述M路可用通路确定所述第二 PCIe设备的标准通路数,具体为,确定所述第二 PCIe设备的标准通路数为2n,其中,n为整数,并且n > O。
4.根据权利要求3所述的方法,其特征在于,所述根据所述M路可用通路确定所述第二PCIe设备的标准通路数之后,还包括: 所述第一 PCIe设备根据所述第二 PCIe设备的标准通路数与所述第二 PCIe设备通信。
5.根据权利要求3或4所述的方法,其特征在于,所述第一PCIe设备的标准通路数为2'其中r为整数,r≥O,并且Z≥M,所述方法还包括:当Z大于M时,将所述第一 PCIe设备的(2r-2n)路通路置为电气空闲状态。
6.根据权利要求1至5任一所述的方法,其特征在于,所述第二光模块发送M路光信号是由所述第二 PCIe设备触发的。
7.一种外围部件互联通路PCIe设备,其特征在于,包括: 光信号检测模块,用于检测第一光模块接收到第二光模块发送的M路光信号;其中,所述第一光模块与第一 PCIe设备连接,所述第二光模块与第二 PCIe设备连接,所述第一光模块与所述第二光模块通过光纤连接; 处理模块,用于根据接收到的M路光信号,确定所述第二 PCIe设备在位,其中,M为正整数。
8.根据权利要求7所述的PCIe设备,其特征在于,所述处理模块还用于: 根据所述M路光信号确定所述第二 PCIe设备有M路可用通路; 根据所述M路可用通路确定所述第二 PCIe设备的标准通路数。
9.根据权利要求8所述的PCIe设备,其特征在于,所述处理模块具体用于: 当2n≥M < 2n+1时,确定所述第二 PCIe设备的标准通路数为2n,其中,η为整数,并且η > O。
10.根据权利要求9所述的PCIe设备,其特征在于,所述通路还包括: 收发模块,用于在所述处理模块根据所述M路可用通路确定所述第二PCIe设备的标准通路数之后,根据所述第二 PCIe设备的标准通路数与所述第二 PCIe设备通信。
11.根据权利要求9或10所述的PCIe设备,其特征在于,所述第一PCIe设备的标准通路数为2%其中r为整数,r≥O,并且Z≥M,所述处理模块还用于:当Z大于M时,将所述第一 PCIe设备的(Ζ-2η)路通路置为电气空闲状态。
12.根据权利要求7至11任一所述的PCIe设备,其特征在于,所述第二光模块发送M路光 信号是由所述第二 PCIe设备触发的。
【文档编号】H04B10/075GK103532621SQ201310512122
【公开日】2014年1月22日 申请日期:2013年10月25日 优先权日:2013年10月25日
【发明者】邹雨 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1